Heading to HEB

I’m happy to share the news that I’ll soon be starting a new role at HEB, the much-loved Texas grocery chain, as a Sr. Developer on their Curbside team. While I’ve really enjoyed and appreciated my time with some outstanding and amazing human beings at Handsome, I’m excited about this new professional chapter for a couple of reasons:

First off, I find the craft of software development — building intricate, beautiful mechanisms out of logic and aether — to be deeply engaging and interesting. I will be able to focus on that aspect of my work more squarely here than has been the case since I started taking on management roles several years back.

I am also a great fan of having the centers of one’s professional and personal lives close to one another. Being able to invite colleagues over for dinner, avoiding endless hours on the interstate, and burning less fossil fuel merely to be places are all important to me. Since we moved to San Antonio this year, working 10 minutes away feels like a big quality of life improvement.

In addition to being close, I’m excited about the specific location where I’ll be working: the headquarters campus is a lovely site of an old arsenal that was founded in 1859 to supply the forts on the Texas frontier. It’s along the San Antonio River, downstream a bit from the main segment of the Riverwalk, along a boating-friendly stretch that will allow me to toss a kayak in the water and go paddling after work. And HEB has plans for a beautiful, expansive tech center on campus to open in a couple of years.

Finally, the company has a tremendous reputation for being a great place to work. I’ve long appreciated their commitment to serving the communities in which they operate, donating more than 5% of their gross earnings, helping food banks, etc. I’m glad to see that they have a similarly good reputation as an employer, and are investing deeply in building their technology capabilities and team.

I’ll be starting on February 10; I’m eager to invest my professional energies in service of a company for which I have respect and high expectations for its future, in the city that I grew up in, love, and still feels like home.

Impressions of Dan Carlin’s “War Remains”

This afternoon, I went to visit War Remains, Dan Carlin’s VR Theater experience focused on World War I. Dan is, of course, the voice of the immensely popular podcast “Hardcore History,” in which he recounts historical events with unparalleled approachability and empathy. While he has previously shared remarkable accounts of “The War to End All Wars” in his podcast, his latest endeavor brings parts of that era to life in a more visceral way than he’s ever managed before.

Carlin narrates the whole experience, which starts with the viewer being teleported to a gondola hanging beneath an observation balloon while aircraft wheel around and anti-aircraft fire erupts. In addition to the immersive audio and video one expects with VR, the viewer is also treated to a breeze whipping by while the floor wobbles beneath.

From there, we move to a trench on the front lines, where you watch a group of soldiers succumb to the “meat grinder” of incoming fire. We take shelter in a bunker, where we can see (and feel) medical bags, a morse radio, and various other bits of paraphernalia while shells burst around, shaking the floor and the walls. Passing through a door and pushing the dangling hand of a corpse aside yields another segment in the trenches, rounding out the experience while tanks roll past and shells crash around. Finally, poison gas begins to fill the trench and the scene fades, yielding to Carlin’s meditation on the modern-day world as a product of a battle-scarred generation while stylized bombs descend in slow motion all around.

From a storytelling perspective, the experience is remarkable. VR is often called an “empathy engine,” and this was one of the most effective uses of that capacity I have seen. The physical augmentation — wobbly floors, props, shuddering walls, the feel of the breeze playing across your face — engages the whole brain in a way that merely audio/visual VR cannot. And recruitment posters along with the scale and eye chart one would find in a recruitment office all get visitors into the appropriate mindset before they even enter VR.

My only complaint was that the experience felt about half the length I would have liked, both from a storytelling perspective and from a “getting your $45 worth” point of view. There was little narrative arc beyond “Holy moley, World War I was scary.” But given that it is genuinely pushing the boundaries of digitally augmented media and puts its brief message across with unparalleled force, the brevity is forgivable.

One change that would have made the experience even more immersive would have been meaningful interaction with the scenes. In each portion of the experience, the viewer is merely an observer: not quite a disembodied ghost, but not able to affect the scene in any meaningful way. Imagine adding a tracked gun that would allow the visitor to engage some of the advancing infantry lines, or a grenade being tossed into the trench that you would have to pick up and throw back before it detonates. VR allows for rich, non-linear storytelling, so having the experience be essentially “on rails” is something of a missed opportunity.

From a technical standpoint, the experience was fascinating. While the whole physical space was a square about 25 feet on a side, the creators use that real estate very effectively; the only time one feels particularly constrained is in the bunker, where it’s absolutely appropriate. The experience relied on a Vive headset with a PC in a satchel slung over the visitor’s shoulder and the 2.0 version of the Vive Trackers. There were no controllers in use — all of the interactions were done physically with props that were secured in place at various places around the set.

If you’re a fan of VR, Dan Carlin, or World War I, I would highly recommend the experience as a unique way to feel what it was like to fight in The Great War. War Remains is available for viewing in downtown Austin through the end of the month. Buy tickets here: https://www.warremains.com

A Few Thoughts on Basecamp’s Shape Up Methodology

These are my first-blush reflections on BaseCamp’s Shape Up methodology:

  • The six weeks of focused burn/two weeks of cool down and clean up sounds delightful, but also seems like it works best with an established product to which a team is adding pretty meaty features. (Some of our entire implementation projects are 8 weeks front-to-back, so it would be hard to work this way there.)
  • Using very low-fi models (“breadboarding”/”fat marker diagrams”) for initial exploration of the idea seems an excellent practice, both to minimize initial effort and to keep ideas high-level and abstract.
  • I love the idea that the designer and developer are actively working together to create a feature within the pretty broad bounds that the author of that feature establishes. It does, however, require that the designer can actually create the necessary code/files for UI herself. This might be HTML/CSS/JS for web, Scenes for Unity, or Storyboards/SwiftUI code for iOS. Many designers I’ve worked with wouldn’t have been comfortable with this, but it seems like a really efficient way to work if you can get over that barrier.
  • Scoping and hill charts seem like a great way to be able to talk about a feature and to communicate status and progress. I’ll probably steal the idea of hill charts immediately for progress discussions.
  • Handling “shaping” asynchronously with a touchpoint at the betting table also sounds very sensible, though it requires a high level of trust that the folks who will be making bets proactively read and understand the pitches in advance. Thinking through and identifying potential pitfalls in advance is also a useful practice.
  • The idea of not maintaining a backlog is a fascinating one. Since the backlog can become the dumping ground for every idea that anyone has ever had, this seems both liberating and scary, as it seems to open the door for something important to slip by. But as they point out, if it’s really important, it’s probably on someone’s mind enough to champion.
  • This process is different enough from other methodologies and infrequently enough used that it will probably work best with a persistent team, rather than rotating contractors.
  • In short, this seems like a process I would love to work with, but which is best suited to long-running, ongoing products, which most of my work currently is not.

New Home in San Antonio

Over Memorial Day weekend, Kris and Sean moved to our new home in San Antonio!

There were a number of reasons for this move: lots of Sean’s family is down in San Antonio, and he has long loved the idea of being closer to them. Maggie has just graduated from High School and plans to take classes down in San Antonio this fall, so we’ll be able to provide a base of operations for her. And as much as we love San Marcos and will miss it fiercely, we also are excited to be back in a big city with everything it has to offer.

We’re also particularly keen on the neighborhood we’ve ended up in. About 100 years old, Beacon Hill was one of the first subdivisions in San Antonio; it has evolved into an ethnically and economically mixed community with a very active neighborhood association, lots of artists and musicians, and a good deal of personality. Within a five minute walk of the quirky, charming, Craftsman-style house are a terrific little restaurant run by an expat Frenchman, an Ice Cream Parlor/Fruteria/Ceviche purveyor with a great array of delicious treats, a gift store, an artist collective, a Mexican restaurant (life and breath to Sean), and a community garden. Close enough for an easy bike ride are one of Sean’s brothers, his wife, and their daughter, a mini golf course, two huge and beautiful municipal parks, a board gaming cafe, two theaters with a regular lineup of high quality productions, and two public libraries. Further, our decision to land here seems to have been confirmed repeatedly in a variety of interesting ways. (Ask us about our PorchFest experience sometime!)

Amid the excitement over our new digs, we’re also both feeling a measure of sadness about no longer living in San Marcos. Sean came to this beautiful hill country town in 2000, and has lived there longer than any other city in his life — raising kids, hiking its trails, swimming the river, and seeing it grow. When we got married, Kris quickly made it her home too; Sean half-joked that after a month living there, she had made more friends than he had in 16 years. She has been particularly enamored with the wildlife, especially the skunks, possums, raccoons, and birds of all stripes that have become regular visitors to our backyard. And we’ll both keenly miss being close to our community of friends there, particularly those at St. Mark’s Episcopal Church and those from the University.

But blessings abound as we look forward to this new chapter. We’ll be setting up a home together for the first time. (Which sounds more cheerful than “Oh my goodness, there are SO MANY BOXES!”) We will be close to much of Sean’s extended family and to his goddaughter. He will be both helping Handsome, where he works, to define its remote work policies and at the same time will be a guinea pig for them, working remote about 60% of the time. While Kris continues her work at St. Mark’s through the fall, San Antonio has broader career opportunities for her as she considers what her professional life should look like in the future. And once the dust settles, we are very much looking forward to having friends and family come visit in this new part of Texas that we’re already enjoying a ton!

Huge thanks to all of the folks who pitched in on move day or leading up to it to make it a success: Ian, Emily, Adam, Cheryl, Liam, Alex, Bob, Nick, Mike, Tami, Chris, Becky, Ron, Marti, Jeff, Fazia, Michael, Diane, Bill, Abigail, Brian, Bridgette, Finn, Brooklyn, Ken, Tanya, and Maggie. We seriously could not have done it without your help. Many, many thanks.

Ad urbem!

Welcome Home Chalk Drawing in Front of House

Can Laziness Be a Virtue?


Early on in my career, I worked at Motorola doing desktop support for the 800 people in their Paging Products Group in Fort Worth, Texas. Our team was responsible for the care and feeding of hundreds of Macintoshes, including keeping their anti-virus software up to date. This normally happened automatically over the network, but for one particular update, we were going to need to push an installation package out to all of the machines individually. That job fell to me and my friend Rich.

“Ugh,” I said to Rich. “We’re going to have to pull up our central management console, go down our entire list of machines, and one by one, send them this update. That’s going to take hours of seriously tedious work.”

“No way!” Rich responded. “We don’t have to do all of that boring work ourselves; we can automate it with a macro engine!”

“But Rich, it’ll take longer to build that script that it would take just to do this manually. And we’re on a deadline here.”

o “How about this?” he rejoined. “We split the job up. You do half of the updates manually. I’ll write the automation. And we’ll see who gets done first.”

This sounded fun (and meant I would only have to do half of the updates myself), so I quickly agreed to his scheme.

The next few hours saw a titanic struggle. I busily banged through the long list of machines, triggering the updates, waiting for them to complete, going on to the next, and thinking about how to minimize my keystrokes and do things most efficiently. (After all, my geek cred was on the line.) At the same time, Rich was building and refining his script, going down blind alleys once in a while but generally making solid progress while steadily throwing good-natured barbs my way.

As I approached the end of my list, I looked over to see that Rich finally seemed to have his script in good working order. He kicked it off, and it began chewing through his list at an impressive rate. I redoubled my efforts, doing my best to beat the machine, feeling like the modern equivalent of John Henry, the steel-driving man. (Though I was more a steel-rimmed glasses-driving man.)

At the end of that struggle, we finished up our respective lists within minutes of each other. Rich and I laughingly conceded that it was, for all practical purposes, a tie.

But…

In my heart of hearts, I knew that Rich had really won. Why? For a few reasons:

  • Rich’s solution scaled better. Once he had his script built, he could have tackled my list too with little additional effort or time.
  • The next time we needed to do a similar update, Rich’s work would allow us to accomplish it much more easily.
  • Rich had done more interesting work. There’s nothing fun about doing the same series of a few keystrokes 800 times consecutively. But building a tool to do the same task is comparatively fascinating brainwork.

I kind of proved my point, but Rich equally proved his, and had way more fun doing so.


Traditionally, Sloth is considered one of the deadly sins. There’s much to this; if we are unwilling to work hard at things, we are considerably less likely to get far in life. But there’s a flip side to this, which is that working hard at the wrong things is even more ineffective.

All the vigor you pour into straightening up your desk doesn’t count for much when you’re supposed to be getting your homework done. If you need a hole for a swimming pool dug in your yard, you might be impressed with the industry of the guy who shows up in your yard with nothing but a stout garden trowel. But you won’t hire him for the job, because he’s not working on the right thing. I have a friend whose personal mantra is “Work smarter, not harder.” Sage advice.

When Rich and I had our contest, I was working on a first-order problem: how to update all of these machines. Rich was working on a second-order problem: how to automate a process to update all of those machines. In general, the further up you can go on that sort of hierarchy of abstraction, the more interesting the problems become, and the more effective the solutions are. I worked harder, but Rich worked smarter.

I’m not much of a woodworker, but one of the things I’ve picked up from my friends who are good at it is the importance of making jigs. Jigs are job-specific tools a woodworker creates to make the task at hand easier. If you need to make a series of identical cuts to 100 boards, you can do all of those individually. Or you can first build a little jig that will guide your saw to the right place, making those cuts easier, faster, and more consistent. Good woodworkers will create a variety of jigs as they create a piece of furniture. And as I’ve gotten better as a developer, I’ve found myself writing more and more tools to automate tedious or error-prone parts of my work, creating code that writes other code, rather than writing everything directly.

This is, I’m convinced, the reason that some developers won’t stop using the highly-customizable text editor emacs until you pry it from their cold, dead fingers. Once they have invested sufficiently in automating and customizing the task of editing text or source code, going back to doing it without all of their purpose-built tools becomes slow, inefficient, and error-prone.

Archimedes asserts that with a fulcrum and a large enough lever, he could move the world. So as a developer, you have a choice when you have giant rocks to move: you can push really hard on that rock, pushing on evenings and weekends to get it where it needs to be on schedule. Or you can learn to make levers. (And, because this is software, levers that push other levers.) You can build at a low level of abstraction, or you can learn how to build tools, how to build tests, how to do meta-programming, and when you do something more than twice, stepping back to figure out if you can automate that task.

Let’s stop pushing on rocks, and start building levers. This is how we can use our natural tendencies to be lazy to actually get more accomplished that we would by simply throwing ourselves into a task. And as a bonus, it’s not only more productive but a lot more fun too.

Clarity as Kindness

Every time we speak, we ask something of the people with whom we’re talking. We ask for their attention, for space in the conversation, for them to think about what we have to say. For most of us, the cost to attend to someone is fairly small. For some — the hard of hearing, individuals with learning disabilities, the extremely introverted — the price of attention is higher. But in no case does it cost our listeners nothing.

In addition, we often make choices that are obstacles to effective communication. Our diction isn’t clear. We don’t think out what we are saying before we say it. We speak too softly. We don’t provide our listeners with the context they need. Our words are poorly chosen or don’t mean what we are trying to say. In these cases, the person to whom we’re speaking must ask us to repeat ourselves, to clarify a point, or to elaborate. None of these are inherently bad things. But all of them do increase the cost of communication.

Thus, taking the time to consider and craft one’s words is an act of generosity. Speaking clearly and well is a way to say “I value your time and attention and want to use them well.” Thinking before we speak puts a little more of the work of communication back on us. And all of these are ways of giving, of tacitly caring for the person with whom we speak.

In addition, putting this care into our talk has another benefit: our words are ultimately more likely to be heard. We all know people who speak much but say little. And we also know those who are often quiet, but when they do choose to share it is with just the right word. Knowing this, we often attend more closely to the speaker whose utterances are more consistently valuable.

Think before you speak. Be clear in meaning and diction. Consider what background your listeners need. While the process of good communication doesn’t rest solely on your shoulders, it can’t happen without you.

Starting at Handsome

I’m delighted to share the news that I’ve started at Handsome this week! Handsome is an Austin-based Holistic Experience Design Agency that conceives and develops beautiful, integrated, thoughtful brand experiences, services, mobile apps, websites, VR experiences, and more.

I’m particularly excited about the Technical Director role I’ve taken on because it will allow me to straddle the discipline of creating software, which I love, and building and supporting a team, which I enjoy and feels valuable to me. I’ll also be building support for a more distributed talent team, allowing the company to benefit not only from the brilliant designers and developers that Austin enjoys, but others from around the country and the world.

The people at Handsome are thinkers, dreamers, capable, diverse, interesting, and gracious human beings. (And a few are folks I know from previous roles and already think very highly of.) The offices are beautiful. And the work is satisfying, both creatively and as an opportunity to do something meaningful.

I’m excited about this next chapter of my professional life, and as time goes on, look forward to sharing more of the things we build together.

Five Stories, Four Walls, One of them Broken

I love a good story. I especially love a good story when it’s really well told. But I get the most excited when I encounter a good story that’s told well in a way that’s new to me.

On a recent family trip, we stopped to visit Meow Wolf in Santa Fe. I had lobbied to make it a point of call for us on the strength of a scant few facts: it had enlisted dozens of artists to create a fun house for adults, and it had $3.5 million of George RR Martin’s “Game of Thrones” fortune behind it. The nutritious vegetables of art combined with the delicious cheese sauce of lasers, arduinos, and black lights? Yes, please.

What I didn’t realize until we arrived and began exploring was that there’s a coherent narrative that underlies all of the mad, divergent installations that fill the House of Eternal Return’s 20,000 square feet. The story of an Orwellian totalitarian society, a family of experimenters, and an immortal hamster is told by means of pictures, a clothes dryer you crawl through, interactive exhibits, diaries and notebooks, and newspaper articles. Exploring the vast, dizzying space while stumbling across clues as to what happened to this family and where it lead them was one of the most engaging narrative experiences I’ve had in a long time. (Caveat: when at peak capacity, it becomes tough to fend off the jostling crowds enough to dig into the storyline. The “Blue Man Group has a rap battle with Burning Man while Tim Burton judges” vibe is still terrific, though.)

While not everyone has a taste for this sort of creative weirdness, I love it when storytellers try new things. If you’re a fan of this sort of thing, here for you are a few of my other favorite stories told in unusual ways:

The Skin of Our Teeth

Thornton Wilder’s “The Skin of our Teeth” was the first play I remember seeing where the characters of the play address the audience directly, and the world of the story gets thoroughly mixed with the world of the play’s production. It blends the silly, serious, and sublime irresistibly. When I saw it for the first time in High School, it was one of the most emotionally affecting experiences I’d had up to then, even 40 years after it won its Pulitzer Prize. It gets produced from time to time on both amateur and professional stages; keep your eyes open for it!

Device 6

Device 6” is a narrative game that runs on iOS devices. While largely prose based and story driven, it does weird and wonderful things with the text that wouldn’t be possible in a more traditional medium: turning words of the story itself into a map of the protagonist’s travels, blending beautifully-produced audio into the game’s puzzles, and having the soundtrack’s composer make an appearance in-game. It’s well worth the purchase if only to see the fascinating narrative devices that Simogo uses to tell its tale; the fact that it’s actually a good story is lagniappe.

S (Ship of Theseus)

Doug Dorset and J.J. Abrams, the same fellow who brought us “Lost” and some of the recent “Star Trek” and “Star Wars” films, also penned “S” (also known as “Ship of Theseus”), a terrifically interesting experiment in narrative in novel form. There are several parallel stories going on as you read through S: one is the text of the book itself. Another is a dialogue in the margins, purportedly left by readers of this copy of the book who wrote back to forth to each other in marginalia. Additional depth comes through other “real world” items — postcards, newspaper articles, ticket stubs — stuck in the book. Reading through all of these things and piecing together how the disparate parts fit together provides a wonderful sense of being “in on it,” of having stumbled across a rich, private world by accident.

Majestic

Back in 2001, when I was working for Electronic Arts, that company launched Neil Young’s “Majestic,” a groundbreaking Alternate Reality Game. At its heart, Majestic was a conspiracy-theory riddled science fiction thriller. The storyline itself wasn’t particularly novel, but the way it was played was different than anything that preceded it. Rather than launching a game on the computer, players interacted with the narrative using all of the tools of real life: they received emails and faxes from characters in the game, got chat messages, scoured real websites for clues, and fielded phone calls and voice mails that advanced the plot. This blurring of the lines between real life and the game was fascinating and made for a really compelling narrative experience, and increased my disappointment when the game was cancelled around a year after its launch.

Each of these experiences tried something new and made their stories richer. They are some of my very favorite storytelling experiences as a result. What are some of your favorites that have tried new things and pushed the boundaries of the form?

Crested Hens Chart

After we were having some trouble with the chart we had for it at rehearsal tonight, I worked out a new chart for the beautiful Gilles Chabenat tune Crested Hens. Grab the chart right here if you’d like to add it to your songbook.

ML Nexus

Howdy folks! I’ve been thinking about and studying Machine Learning off and on for a year or more now, and have recently started writing another blog covering my thoughts on that subject. If you’re interested in that sort of thing and would like to follow along, come join me at ML Nexus! I’d be glad to have your perspective on the things I’m covering there.