Hello friends,

Before I get into this week fortnight’s newsletter, a quick note: I have immediate availability to take on a new consulting client! I’m particularly good with gnarly gnarly Ruby/Rails codebases, as well as coaching/mentoring junior and midlevel engineers, helping to evolve technical architecture, and facilitating the spread of healthy practices within your organization. More info here!

I also remain available for one-off Rubber Duck Sessions. These sessions are half price if I can stream and/or record them for other devs to watch and benefit from!

I'll Trade Ya!

Hey there! Archived SIGAVDI letters are for newsletter subscribers only. All it costs to join (and unlock this post) is an email address! I'll write to you weekly-ish with a few interesting links, some updates, and some reflections on the intersection of software and life. And I'll respond to your replies! Whattya say?

A photo of Avdi Grimm

What’s good

I switched to a different system for keeping track of links I wanted to share here, so apologies if any of these are duplicates.

What’s new

What I’m reading

(Shameless Amazon affiliate links ahead…)

Where to find me

  • GOTO Chicago is doing some awesome work re-imagining what it means for a conference to be online. I’ll be speaking “there” at the end of the month!

I was oddly reticent to write this issue, and I’m still not sure why. I’m not sure what to write about this time around.

I spend a lot of time thinking about the problem of disembodiment in the software development industry. I worry these days that the COVID-19 lockdowns will only make this worse. Suddenly we’re all brains in jars, whether we like it or not.

Or maybe, just maybe, we can use this moment to get better at acknowledging our own embodied selves despite physical separation. I’ve been posting a lot of selfies; I’m not sure what else I can do.

For the sake of centering in my own body, I bought myself a set of poi and I’ve been practicing with them. Something I notice about spinning poi is that while instructional videos can give you all kinds of useful mental models to understand tricks (“think of moving the poi from two tracks to a single track”), the models are really just a temporary bridge.

Once you accomplish the trick a couple of times, you can feel the rightness of the movements. You don’t need the mental model anymore. The knowledge moves into your fingers and your body.

Something that makes programming hard is that there is very little feel to rightness. We talk about a design feeling right sometimes, but it’s a very rarified and abstract kind of feeling. And coarse-grained too: you might not get that sense of rightness until weeks into a design when a refinement seems to come naturally.

I used to have a sense for what my computer was up to, back when it had a spinning hard drive. Those subliminal grumblings worked their way into my psyche below the level of consciousness. I knew instantly and innately when a lack of response was because the machine was working hard, and when it meant something had gone badly wrong. A few moments later that bodily understanding, based on the presence or absence of a quiet background murmur, would work its way to the conscious, rational level.

Occasionally someone has chutzpah to try to shift what it means to program in a way that exploits natural human cognitive proclivities. For instance, Dark hooks into our highly-developed sense of placement by positioning code on a scrollable virtual canvas. Mostly, though, we just insist that humans serve the machine.


OK, let’s do the rituals…

Last Week

I neglected to set any goals in the last SIGAVDI, but some of the things I accomplished include:

  • ✔ Finish $client_video_project (!)
  • ✔ RubyTapas episodes
  • ✔ Learn a ton about about automatable serverless deployment using AWS SAM
  • ✔ Stream with Jess
  • ✔ Start serializing one of my old talks in blog article form
  • ✔ Act as interviewer for Jess’ PhillyETE talk

This week

  • Catch up on my email
  • Shake some trees for consulting work
  • Spend at least four hours paying down WIP
  • Spend at least four hours adapting a talk for GOTO

Threat board:

  • GOTO talk prep
  • Becoming revenue-positive.
  • WIP.
  • Fixing my house.

WIP:

  • Client Video Project: ~90% .
  • Robust Ruby: 25%.
  • MOOM: 91%
  • The Rake Field Manual: 10%.
  • AsyncJS Course: ~50%.
  • Patreon improvements.

Thanks for reading. Feel free to practice some virtual social close-ening and reply!

Cheers,

Avdi

Published by Avdi Grimm