As I write this I’m back in the home office. It’s been an adjustment, but so far so good. “Crash-ins” from the kids are obviously more common now but so far they’ve been tolerable. Compared to the beginning of the summer when I was last here, the kids are much more content to play with LEGOs or LOLs quietly on the floor.

Moving offices has left me a bit introspective. I’ve been mindfully reading a lot more blog posts than I usually do and over the last few weeks. I also managed to finish up over 5 books (some of them I just needed to sit down and finish):

… And I’ve already picked up some more. I keep wondering if this book wave will stop, but so far it hasn’t and I’ve added dozens of books to Libby (my library’s app) and my Amazon wishlist. I have the next 32 years of books queued up, but I think this brings some happiness.

I do feel a bit of a tip towards productivity as well. Not sure if it’s the office relocation and familiarity or what, but when I have ideas and I’ve been able to sit down and execute them in a minimal timeframe and see if they have any mettle. This is good for me and brings some joy as well.

Pulling a page from Resilient Management, when I ask myself the question “What am I optimizing for?” I think the answer is: Feeling Productive. That’s a good thing to know about myself. Does that qualify as an OKR? We’ll discuss it next quarter.


I’ve broken up my reading list into a few sub-sections this time. Reading all of these is mandatory and you will be quizzed on them at the end of the semester.


Metaphysics and JavaScript
Slides from Rich Harris as he talks about “UI is a function of state”. It’s important to read the notes on each slide as you make your way through the talk. It’s funny, has some history and philosophy, but also enforces the idea that UIs aren’t just state functions, they also exist over time. I like these kinds of conversations that challenge common choruses. UI = f(state) was already top of mind for me these last few weeks, so this has been a lot to think about and Rich’s talk led me down a few rabbit holes:

  • Thoughts on Rich Harris’ “Metaphysics and JavaScript” by Jim Nielsen highlights a lot of what was going on in my brain and expounds more on some of the “mismatches” between ideology and real world application building. I love the frequency and depth of Jim’s thoughts, he uses his blog really well.
  • Pure UI by Guillermo Rauch was referenced in Rich’s talk and it gives a great overview of how much state impacts and dictates UI and looks at some of the challenges around that.
  • Why React is a response from React core member Sebastian Markbåge to Rich’s talk. It’s well reasoned and gives some of the nuance behind React’s decision making that Rich’s talk maybe blanketed under the idea of a pursuit of “purity”.

Google says it’s making Chrome more private, but advertisers will still track you (recode)
In the face of demand for increased privacy on the Web, Chrome and Google are doing some intellectual gymnastics to justify the degree to which they and their browser track users in order to serve advertisements. It’s a sticky situation for them and their real users (the advertisers).

Command palettes for the web
Rob Dodson ponder one of the affordances that native apps have that web apps do not: menu bars. Native apps can bury settings, shortcuts, and accessibility features inside menu bars, whereas web apps have to homeroll their own (different) user interface. I’m curious what could be done (like a programmable bookmarks bar?), but I’d also settle for being able to extend right-click context menus.

Sailing the Seas with Vue - My Take on Taipan
Loved this post by Raymond Camden on recreating the classic Apple 2 game Taipan! in Vue. I loved the behind the scenes look, I played the game for far too long, and it reminded me of all the time I wasted playing Drug Wars on my TI-82 in high school.


E.T.: Why it was a victim of its own schedule (Wireframe)
A retrospective by Howard Warshaw on how his Atari game E.T. (a notoriously bad game) actually met all of its design goals…. and therein lies the problem. It highlights the costs of short schedules in software development and allowing time for projects to sit, so your perception and thinking can grow as you understand the problem. And his strategy for game design is similar to my own prototyping ethos: Get to First Playable as quickly as possible, enter the Tuning Phase to fix and improve the product, then the Rumination phase. “Try not to deliver your concept. Deliver the sum of your concept plus tuning plus rumination.

The Door Problem of Combat Design
Andrew Yoder shows a simple example of how to improve the level design of a situation where a player walks into a room with a bunch of enemies. The concept of meaningful choice gets explored, how you can invite players further into a level with what essentially amounts to “safe spaces” for the player to take cover or see ahead.

The Tech Industry

How Amazon and Silicon Valley Seduced the Pentagon (
Fascinating and scary look at how Silicon Valley is influencing the Department of Defense.

WeWork isn’t a tech company; it’s a soap opera (The Verge)
This piece gave me mixed feelings. There’s a bit of schadenfreude reading about a company that is most certainly a scam (e.g., the cult-like reality-distorted leadership, the husband-wife executive team, paying the owners’ other company $5.9 million for the “we” trademark). However, at the same time I want the broader concept of remote work to succeed. So when a major player like WeWork (and Slack) lose in the stock market, that’s potentially a bad sign for something I champion.

A belief in meritocracy is not only false: it’s bad for you (
A convincing read from Clifton Mark where the data shows that success has more to do with luck rather than ability and the fallout of believing meritocracy is a valid belief system. “In companies that explicitly held meritocracy as a core value, managers assigned greater rewards to male employees over female employees with identical performance evaluations. This preference disappeared where meritocracy was not explicitly adopted as a value.”


Bryan Stevenson — We need to talk about injustice (TED2016)
I watched this video a few times over the last few weeks in anticipation of getting the audiobook from the library. My viewpoints are starting to be informed and shaped by Bryan Stevenson’s passion for fixing injustice in the criminal justice system. In the talk he offers a world-changing viewpoint that the opposite of poverty is not wealth, it’s justice.


JS Party
JS Party is a podcast with a large pool of diverse panelists and guests. With how they rotate the hosts, nearly early no two shows are the exactly the same. I really like that. I was pointed to their new “Yep? Nope?” series where they use the high school debate format to randomly assign sides and argue for or against contentious JS Twitter issues. It’s good content. There was also an honest conversation on burnout, that sort of maps to

Ladybug Podcast
I listened to a lot of the Ladybug Podcast last weekend. I was sad to learn one of their four co-hosts stepped down over the last week recently. I’m sorry to hear that but hope the show continues and grows. They do a good show with great practical advice and informed discussions. My favorite episodes so far were: