I know it’s been a long time even by SIGAVDI standards. I’ve been busy. Let’s do bullet points, and then if you want you can stick around for some catching-up.
- Amy Newell: Some Notes on Doublethink. Like a bitter herbal healing tea, if this piece makes you uncomfortable, that means it’s working.
- When it comes to software delivery, the most significant perspective-shift I’ve experienced in the last couple of years is the understanding that we don’t deliver features at all. We carry capabilities. At long last, Jessica Kerr has a concise article explaining this concept.
- Shortly pre-pandemic, I gave a rough version of a talk about the myth of ruggedly individualist yeoman farming in America, and how that myth has influenced Silicon Valley tech culture. Sarah Mock has an article in the The Counter, summarizing her book on why everything you think you know about “family farms” is wrong: I tried to prove that small family farms are the future. I couldn’t do it.
- Speaking of the history of tech culture, A People’s History of Computing in the United States is pretty mind-blowing. In the 1970s, before the Internet, there were federated university-based systems like PLATO where thousands of people got online, traded software and emails, played games, chatted, and developed a rich culture of digital citizenry. All while using flat-panel plasma-display terminals with audio, video, and touch-screen(!) inputs. Computing-as-utility for the people was a widely discussed, obvious future. This book makes a compelling case that far from “liberating us from the mainframes”, the heroically individualist garagepreneurs of the PC revolution (and arguably also the nuclear-decentralized ARPAnet) in fact ushered in a decades-long technological and cultural ice age.
- Chelsea Troy: A Rubric for Evaluating Team Members’ Contributions to a Maintainable Code Base.
OMG SO MUCH.
So, for Reasons (I may get to that later), I’ve been spending a lot of time on my own “banana stand” lately. The biggest piece of news to come out of that is this: I am very, very excited to tell you that my new site Graceful.Dev is officially open for business!
Graceful.Dev is the new, combined home of both RubyTapas and the courses formerly hosted at learn.avdi.codes. It reconceptualizes both of those sites as a unified garden of living courses for deepening your software practice. Always growing, always expanding, with organization progressively groomed and refined. A focus on ongoing membership and community, but still providing courses-as-products for those who prefer it (or organizations where expensing a membership is complicated).
This site is the culmination of years of conceptualization, planning, and labor. I’ve been inching steadily closer to it in fits and starts, whenever I could squeeze in some work between consulting, content creation, and family commitments. It answers a lot of nagging questions, like: What does my post-Ruby-centric content stream look like? How can I bring one-off courses and a stream of content (back) together? How can I move beyond the aging, fragile RubyTapas infrastructure in a non-disruptive way? How can I provide both courses-as-products and a membership community on a unified site? If you’re curious, I’ve written up more about the history and the whys and wherefores in an article on Graceful.Dev.
Anyway I’m super super excited to finally bring this thing to fruition. If you’re a RubyTapas member or a course owner, you’ve already received invitations to the site and hopefully you’re already happily using it. If you’re not… why not check it out!
As far as specific content goes, there’s really been too much new to list since my last SIGAVDI. Some highlights:
- I’ve made a lot of episodes about developing inside containers (“devcontainers”). Now combined into an 18-topic-and-growing course on Graceful.Dev: Reproducible Development with Containers.
- Working on the next iteration of my content offerings has occasioned some reflections on what I’ve learned a decade+ into creating digital products. Beginning with: There’s Always Money in the Banana Stand, Your Mailing List, Your Newsletter, The Tote Bag Economy, and On Piracy.
- As part of the Graceful.Dev rollout, I’ve retained assistance in getting some of my backlogged video content edited and out the door. As a result, the Master the Object-Oriented Mindset course has been steadily expanding with recorded-but-never-aired pair-programming videos of Betsy Haibel and I from our “Capacitor Sessions”.
What’s in my head
Death, in finite play, is the triumph of the past over the future, a condition in which no surprise is possible.James Carse – Finite and Infinite Games
I sold my house in Eastern Tennessee, pulled up stakes, and moved household to St. Louis. This brings to a close a narrative I’ve told in talk form: a finite game I played, won, and then lost in a surprise upset. For the last few years that mountain house was like a gameboard never boxed back up after the game ended: the pawns collecting dust; stray dice kicking around the floor.
The weird pandemic housing boom provided an opportunity to pack it up once and for all, and I took it. So no more epic pics from my deck, I’m afraid. Onwards into the infinite game, where the only thing predictable is surprise. Surprise the first: me, living in the Midwest!
So much has changed. I live in the suburbs again, after many, many years spent trying to get away from them. But these suburbs are different: there are good cafes within walking distance. Dozens of wonderful museums, parks, bars, restaurants, and international food stores within 10 minutes drive. I visit the botanical gardens once a week. Why not, when it’s practically around the corner?
One thing that the pandemic revealed: soaring open-plan houses are less exciting when everyone spends all their time at home. You’re effectively sharing one room with everyone in the kitchen and the great room and the loft and dining room. The house I’m renting now is small, and unexciting, and it has actual rooms. It’s great.
It is in the garden that we discover what travel truly is.James Carse – Finite and Infinite Games
I moved to St. Louis to be with the person who has become my partner and playmate in all things. Realizing this dream–and rather sooner than expected!–is a source of unspeakable joy every day.
But all moves have baggage. While I still lived among the shell of my old, dead dreams, I was in a kind of limbo. I owned land, but I was landless: I existed at the cusp of many possible futures.
Once I picked a path forwards, those futures collapsed into a single reality. In my decision, in my newfound domesticity, I acquired an address. And my demons caught up and came calling: anxiety, despair, and rage.
I don’t think most people around me realize how much of my life has been powered by rage: rage at the childhood indoctrination that guided some of my early life-choices. Rage at the systems of callous individualist thought that ensnared me for so many years. Rage at an industry shot-through with doublethink and obsessed with poison baubles.
Rage is zip fuel: it burns hot, produces immense quantities of energy, contaminates the atmosphere behind it, and corrodes the engine it feeds. I could be thankful to my anger for getting me as far as it had. But I was also confronting the unavoidable realization that progress out of wrath contains the seeds of the very systems it seeks to destroy. And I could feel its toxins building up in my blood.
I found myself in internal crisis: how to be the Avdi I missed, the Avdi I knew I wanted to see in the world. A playful, ecstatic soul; a boy with flowers in his hair, inviting you to dance. How to be this person when I had become so consumed with anger towards the bigotry, oppression, exploitation, and indifference I saw every day in my chosen industry and in the larger world?
Something deep inside whispered: You know you need to switch fuels, from rage to joy. But you can’t just wait for joy, or discover it. You have to cultivate it. You have to practice it. OK, I said, but how the hell do I practice that? And my soul replied: You have to practice at practice first. You have to practice nurturing and sustaining. You have to practice cultivation. So I picked up a book, and my soul smacked it out of my hand and said no, dumbass, I meant literally.
And that’s how I started gardening.
The former owners of my suburban house left several lovely gardens full of native plants, growing in rich black Missouri soil. A legacy system. So I have an opportunity to practice truest kind of cultivation: not an imposition of new order, but a dance with what is already there.
I won’t say it has cured my existential crisis. But the gardening, plus a deepened spiritual practice, has given me a thread to pull when I feel consumed by anxiety and despair and anger. A way to come back to my underground spring. And little by little I think I’m learning what it feels like to practice the long game, the infinite game.
This sensibility has helped with the work on Graceful.Dev too. I feel like I finally understand what I’m building. A garden, guided by the tastes of myself and a few of my closest colleagues. Constantly growing and tended. One that, like my beloved Missouri Botanical Gardens, is supported by the folks who benefit from it.
There is another story I want to tell, or maybe a few stories, about my abortive quest to get a Real Job, and what I’ve learned from that absolute horrorshow of an experience. But! This has already taken me half a day to write. So let’s tie it off here, for now.
A quick reminder: my ability to take half a day to write this missive is made possible by my generous supporters on Patreon. Everyone who becomes a supporter at any level gets an invite to join Jessitron and me in our private “Tensegrity” Discord server!
As always, if this letter inspired any thoughts or reactions, feel free to hit reply–I’d love to hear from you.
Thanks for reading,