Top of Mind No. 2
How I work: what might “pairing” with a language model-based assistant (e.g. GPT-3) look like?
How I build: the tension between the web platform being more capable than ever versus the difficulty of standing up many kinds of “basic” applications. e.g. animation is better/more sophisticated than ever, but skipping ahead with building web/database applications requires expertise and a few hours to get something up and running.
How I collaborate: encouraging teams to work in issue threads, thereby improving the quality of thinking (via writing) and building ambient, asynchronous awareness amongst teammates.
An ideal weekend
Nothing, nothing, nothing makеs me happy
Nothing brings me nothing but joy
So if you haven’t tried nada
I really think you oughta
— C. Fischoeder, Bob’s Burgers
On minor funks, needing a reset, and indeed doing nothing.
The Reset. Occasionally, the things I do stop doing it for me. Games, shows, books, magazines, etc. I pick them up and realize I’m bored with all of them. I require a break from my breaks.
Oddly enough, taking a vacation or extended weekend with too little purpose or purpose too close to routine seems to generate the same response.
The Reset almost always involves going offline, to some extent. Not like Craig Mod hiking through rural Japan1. It sometimes involves catching up on chores, tidying up the house, or extremely low-key home improvement2.
Related: YouTube could use a function for this. “All my subscriptions & recommendations aren’t doing it, we need to go weirder/normal-er”.
Doing absolutely nothing is an option, but ends up feeling a little more hollow than free-ing.
More often, rebelling against my routines and script-following tendencies works. Binge-watching, grinding a game, ignoring diet, etc. sometimes get me clear.
The trickiest bit is when I’m in An Indefinite Funk. Hobbies seem shallow or meant to impress others or not fulfilling anymore or too much like work or too expensive/intensive to maintain.
So far, I don’t have a great antidote for that. Last time it happened to me, I reverted two decades to making music, decided it still wasn’t for me, and went back to enjoying and sometimes studying/pontificating on music.
Going offline is in some ways a luxurious and nice way to reset. We so rarely allow ourselves a moment or location of offline-ness. If you have to book a flight or outfit your Porsche 911 for camping, so be it. It’s fine to just put your online devices in another room, too.
Recommended: do yourself an Ideal Weekend 3:
- Get coffee
- Go for a walk in a nice park
- Take a nap
- Read a book
- Go for a swim
- Stroll through the vibrant part of your town
Any weekend that includes most of those is likely to give me a reset such that any funk that is imminent or currently occurring goes away.
One thing at a time, incrementally
Only Solve One New Problem At A Time, Ben Nadel:
The example he gives in the episode is "learning Golang". Understanding how to use Golang was a new problem for the company. As such, in order to start integrating Golang into their work, they applied it in the context of an already-solved problem: sending emails. This way, Golang was the "one thing" they were solving—the email-sending logic already existed in Ruby; and, they just had to port it over to a new application server.
Good advice for any developer at any experience level1!
The ability to focus on one concern at a time is possibly the mark of a senior developer. It takes experience to ignore other factors as noise. It takes time to learn how to avoid tripping on distractions/side-quests. Distinguishing useful, new information from distraction and noise is the mark of a focused senior developer.
The trick for juniors, is they’re always learning more than one thing at a time, often on accident. They want to build a feature, but it requires a new library, and it requires learning the library. They went to start up my development server, but then something weird happens with Unix. It's the essential challenge of being a junior – they’re just getting started, so they’re always learning a couple of things at a time2.
If I could be so bold as to add a corollary to the rule of "one new problem at a time", I'd suggest that if it can't be done incrementally, don't do it. Over the last 6-years, feature flags have revolutionized the way that I work. And, a majority-stake in that change is the fact that everything I do is now built and integrated incrementally. Until you've worked this way, it's hard to even articulate why this is so powerful. But, I literally can't imagine building anything of any significance without an incremental path forward.
Working incrementally: absolutely, more people should do this. Even seniors. Especially myself!
Now, the tables can turn. I’ve observed juniors who are more adept at working incrementally than seniors. Because they’re tripping over other tasks all the time, the junior has to work in smaller increments to make progress.
Perversely, a senior who can see the whole feature/change in their head is sometimes tempted to push the whole thing through in one (large) change. Developers who have learned3 to avoid pitfalls and gotchas sometimes have to relearn how to work incrementally.
I speak from experience! Working incrementally is something I consciously have to work towards. Conjuring a masterpiece into existence in a fury of git pushes and one pristine pull request feels good. On net, a big bang of development is a detriment to my team. An early pull request, small tactical commits, and a write-up to describe why and how I got there are more useful to align the team and spread ideas.
Previously: one priority is like wind in the sails.
- I’m looking a this sentence again, double checking it, and yes this is a global pronouncement about programming and developers and yes I think it carries its weight↩
- Or even worse, accidentally learning things that aren’t relevant to what they’re trying to tackle. Sometime, ask me how excited I was about Tcl/Tk in 1998, arguably several years past the apex of that language/toolkit. ↩
- Often through the luck/privilege of having lots of time to practice/tinker at programming outside the job! ↩
How I would explain music to an alien
Were I faced with an intelligence not of this earth, but one that shares our understanding of what music is/for, these are the exemplars I would hold up for them to understand our cultures through my favorites:
- Hip-hop: “So whatcha want”, The Beastie Boys
- Rock and roll: “Highway to Hell”, AC/DC
- Symphonies: “Symphony No. 7”, Beethoven
- Pop: “Walkin' on Sunshine”, Katrina and the Waves
- Jazz: “Giant Steps”, John Coltrane
- Funk: “Mothership Connection”, Parliament
Dilla Time
Dilla Time is a great book for music history enthusiasts. If you’re at all interested in hip-hop, music production, or sample culture, it’s a must-read. The references to lesser-known hip-hop are worth the time investment alone.
I saw a critique of the book saying it is a 200-page book hiding in 400 pages[1]. I think Dilla Time justifies its page count in a pleasingly clever way. The book overlays the biography of James Yancey with the innovations of J Dilla in much the same way. Chapters on Yancey and Dilla alternate, taking turns. A little bit about Yancey’s musical life, a little bit about his nonmusical life. Once I realized Dilla’s music was about overlaying ideas at odds and the book was about overlaying the man and the music, I was a little giddy and a lot jealous that I hadn’t thought of something like that.
The book is basically two story lines: a biography of James Yancey and the story of his musical innovations and influences as J Dilla. The latter is, in a nutshell, a great explanation of how Dilla programmed electronics (drum machines, samplers, etc.) to overlay musical patterns that had not gone together previously.
Let’s assume it’s safe to say that Stravinsky was the master of (riotously) dissonant harmonies. He put notes that should not go together right on top of each other! In the same way, we’d have to say that J Dilla was the master of wielding time in a way that was not previously accepted in musical rhythm. Stravinsky overlaid perfect fifths (good) and tritones (bad!). Dilla overlaid straight (classical) and swung rhythms (jazz) and even moved notes around the beat, to similar effect.
The tricky thing about listening to J Dilla, as a modern listener, is that it doesn’t sound as drastic as it did fifteen years ago. Similarly, Stravinsky doesn’t sound revolutionary to our ears, one hundred years on. They both “just” sound like how music is made these days. Dilla Time does an outstanding job putting his innovations in context and particularly visualizing how his musical constructs stood apart from what came before him.
Obviously, I enjoyed this book a lot. Check it out.
-
To be fair, most books could stand to lose a third or more of their page count. ↩
Get professional value out of the next Twitter-like thing
The Bird hit another inflection point on Friday. Now, many people, myself included, are looking at alternatives or actively decamping1. It was quite a thing to experience.
Several days before, I read a post about the value one can potentially get out of Twitter. On one hand, it may not age well2. Network-effects will cause Twitter to lose “value” faster than it loses daily/weekly/monthly active users. On the other hand, thinking about how I might get tremendous value out of the next network is a useful thought experiment.
Herein, allow me to riff on how to get a surprising amount of professional value out of publishing to and participating in Twitter-like3 social networks.
The value proposition is two-fold:
- the ability to publish into other folks' attention streams (i.e., reputation building)
- a high-quality stream of information to adjust my own world view/model
On the publishing/write side: note that folks like Patrick, Simon, and Laura are Very Good at Twitter. They’ve been writing there for years, building a reputation. In particular, they form thoughts such that they travel and evolve well on Twitter in particular.
With a lot of practice, I could reach this level of operation. Building the reputation, of course, is about showing up consistently for months and years. A few months of rebuilding my Twitter routine and ‘practice’ and I’m out networking with the best.
In other words, use Twitter as a big professional networking tool4. Instead, the networking happens at the idea level. Contribute and participate in developing ideas and the network comes to you.
On the read side: I'm guessing anyone who enjoyed Twitter in 2022 and gets useful signal out of it is equipped with:
- a well-curated list of mute-words5
- bespoke user lists which focus the valuable discussion and reduce the din of a global social/information network
Throughout its history, Twitter was often adversarial. There’s a “main character” of the day. Many folks come solely to build them up or tear them down. Disagreeing parties come to dunk on each other. Occasionally, they directly engage, but social bubbles/fortifications are the norm.
Anyone who gets professional value out of Twitter ignores that aspect. 🤷🏻♂️ In particular, they are using Twitter itself (or well-considered 3rd party applications) to automate filtering out the noise6.
I’ve dabbled in setting up mute-words and curated, high-signal lists. It worked pretty well at various points in Twitter’s history, particularly in combination. Perversely, now that we’re possibly in the waning days of Twitter’s influence, I’ve got a pretty good setup for finding interesting, new-to-me ideas. Sometimes those ideas put my work, or even the world, in a better perspective. That’s valuable!
Bottom line: you get out of Twitter-like networks what you put into it. The better I write, work the network, choose your sources, and manage the flood of information, the more likely interesting/valuable things will come my way.
- I feel like this happened at least twice before, probably circa 2015 and 2018? ↩
- This started off as a thread that ended with this caveat: “Assuming that Twitter doesn't drastically regress under New Management.” Reader, it did indeed regress. ↩
- Tumblr, Mastodon, Micro.blog, Cohost, Fediverse, etc. ↩
- Not in the way LinkedIn aims to do that around the resume. ↩
- I started with this list, which is unfortunately paywalled now ↩
- Mastodon in particular has community conventions around content warnings and requiring consent to see upsetting images or even posts about ongoing dramas. By social convention rather than software or regulation, this makes it a much better place for human brains to hang out. ↩
Currently digging
Listening: Afrobeat, e.g. Fela Kuti
Best musical discovery this week: an excellent Apple Music playlist Shapeshifting, catalogs jazz fusion with indie, hip-hop, electronic; all the modern genres
Watching: Jon Hamm easily steps into the title character of an apparent Fletch reboot in Confess, Fletch; sharp humor, well written, way better than I expected!
Playing: Marvel SNAP - every few years, I end up playing a card game for a few months 🤷🏻♂️
Reading: Rhodes/The Making of the Atomic Bomb + Gleick/Genius + Wellerstein/Restricted Data: The History of Nuclear Secrecy in the United States - I’m trying reading in clusters. It’s slow going, but I’ve wanted to go deeper on the Manhattan Project for years. Now’s the time!
Last Bob’s episode watched: “Full bars”
I’m rapper slash actor Queen Latifah in her U.N.I.T.Y. phase.
– Gene in Halloween costume
Updating Eisenhower on planning
Previously: a long time ago, Dwight Eisenhower probably said something to the effect of: “Plans are useless, but planning is essential”.
Today, software development (and knowledge work writ large) are largely about speed in the service of more. Iterate faster, ask more questions, get more feedback, deliver more often. Success is less likely about having a good or well-formed idea from the outset, and more about how the idea evolves in the hands of people/customers.1
Let’s update Eisenhower’s insight on planning to harmonize with speed and quantity of iteration:
Static plans are useless, but dynamic plans, developed and iterated as information arrives, are the essence of leadership.
You have to plan. Stopping to think a multi-week project through isn't Waterfall or a slow, bureaucratic process. It's how you get your head into a project.
Lacking a plan isn’t an option2. If you choose not to have a plan, you’ll likely end up part of someone else’s plan. Their plan may not have the same outcomes or parameters in mind as you do. Better to have a plan.
Planning with your team is how you get everyone aligned and pulling in the same direction. The worst cases for a plan, that it’s tragically incomplete or wholly invalid, have a silver lining wherein the team that plans together pulls together. In the best case, you’ve front-loaded a bunch of coordination and collaboration, allowing teammates can work autonomously and efficiently.
The initial plan you or your team come up with is very much a rough draft. Surely risks will make themselves known and areas of unknown complexity/scope will present themselves. Don't worry about rigorously adhering to the plan once you're a few weeks into the project. Iterate and add to the plan until you’ve done all the useful work, and it's time to start planning the next project.
- There is something to say about slowing down, seeking quality at every turn, and delivering a great, monolithic thing. Usually that involves some combination of internal iteration, auteur mindset, a strong creative scene, or harnessing lightning in a bottle. Everyone wants to fall in this category but counting on that is an unhedged risk. ↩
- With apologies to Rush: “If you choose not to decide, you still have made a choice”. ↩
Mastodon & Me, 2nd Edition
A few years ago, I set up a Mastodon account on a now-defunct instance. It didn’t scare me away, is kinda neat in some ways, the Bird has gone chaotic, and so I’m at it again. Like many folks the past few days, I’m setting up a Mastodon presence mostly from scratch.
If you’re on the fence about Mastodon, here’s how to speed-run it:
- skim Simon Willison’s post and follow as many links as you like
- find an instance (i.e. a community/home-room) that suits you and join it
- use Debirdify to find and follow folks who have advertised a Mastodon presence
- start posting to Mastodon; ideally, get as weird as your web presence was before global social networks were a thing
This brings my web presence to at least four interesting locales. Which raises the question, “hey Adam, why do you have so many websites”. Herein, I will answer that with the question they’re intended to answer 🧠 👴🏻:
- My original-ish blog (RSS), answering “hey Adam, what are you thinking about or building?”
- This blog (RSS, @adam@short.therealadam.com), answering “hey Adam, what’s currently intriguing you?”
- Mastodon (RSS, @therealadam@ruby.social), answering “hey Adam, tell me your best one-liners and weirdest hot-takes?”
- Twitter, answering “hey Adam, what are you thinking about, but in a punchier format?”
Sketching yields quantity yields quality
The Art of Sketching: Strategies for Getting Started:
Edouard Manet, the French modernist painter, once gave a still-life painting lesson to another French impressionist, Eva Gonzales. His directions for capturing the moment could be taken as instruction for sketching in any creative discipline; “Get it down quickly. Don’t worry about the background. Just go for the tonal values. See?”
It’s about making music (ostensibly with Ableton), but applies to any creative endeavor. Coding, writing, whatever!
Sketching with regularity can help you let go of the pressure of perfectionism, and arrive at a place of more casual creativity. Simply start, then sift through your sketches to find the gems later. Raúl Sotomayor has found that aiming for quantity tends to result in quality ideas to build from; “I used to make a beat every morning, spending 10 minutes to an hour, and then go on with my day. That was really helpful, because at the end of a week, I’ll have seven beats and most of the time, at least one of them would be useful.”
As a creative principle, “quantity creates quality” has served me well over the past several years. You can’t create quality if you don’t have 1) a starting point and 2) freedom to throw away the lowest quality 90% of the work!
Certified Jams
- “Rhythm Nation”, Janet Jackson
- “Holding Out For a Hero”, Bonnie Tyler
- “Footloose”, Kenny Loggins
- “Partyman”, Prince
Top of Mind No. 1
Delegating: supporting teammates, delivering the right context, setting good outcomes/goals.
Not delegating: managing/mitigating risk, resolving unknowns. “Delegate downhill work, tackle uphill work.”
🤔 Compilers are at once magic and the closest thing to mechanical tools in a software developer’s experience.
✍🏻 Reflecting on using Shape Up for the past few years…
Programming excellence: a small matter of practice
The key is deliberative practice: not just doing it again and again, but challenging yourself with a task that is just beyond your current ability, trying it, analyzing your performance while and after doing it, and correcting any mistakes. Then repeat. And repeat again. There appear to be no real shortcuts: even Mozart, who was a musical prodigy at age 4, took 13 more years before he began to produce world-class music.
Peter Norvig, Teach Yourself Programming in Ten Years
Norvig's recipe, paraphrased:
- get interested and program because it's fun and continues to be fun
- learn by doing
- talk with other programmers, read other programs ("This is more important than any book or training course")
- work with other programmers and after other programmers
- learn several languages with diverse capabilities and philosophies
- learn the "computer" in "computer science"
And here I am, twenty-five years in, wishing I'd practiced more 🤷🏻♂️😆
Currently digging
Obsession: Ferraris - they’re at a whole other level.
Listening: Ramsey Lewis, “Japanese ambient”
Watching: Andor, She-Hulk
Reading: Welcome to the Monkey House - Vonnegut short stories.
I wonder now what Ernest Hemingway’s dictionary looked like, since he got along so well with dinky words that everyone can spell and truly understand.
Last episode of Bob’s Burgers watched (again): “Bad Tina”.
Mommy doesn’t get drunk, she just has fun.
Write more, coder inspiration, queryable coding environments
Simon Willison on writing about one's work:
A tip for writing more: expand your definition of completing a project (any project, no matter how small) to include writing a blog post (or README or similar) that explains that project
Without this you're skipping a relatively small step that unlocks a huge chunk of the value in the work that you have just completed!
This advice goes for internal company work too
I set up an internal blog at a previous employer using Confluence (because it was already available and has a good-enough blogging feature), but even something as simple as a dedicated Slack channel can work well for this purpose
And, writing more by lowering standards 😮
And as always: one big secret to writing more is to lower your standards
Published but "could have been better" is massively more valuable than something that eternally sits in your drafts
One of the biggest productivity improvements I ever made to my blogging was when I gave up on my desire to finish everything with a sparkling conclusion that ties together the whole post
Now I embrace abruptly ending when I've run out of things to say instead
Spoiler: I’m following this advice right now! 📈
---
Thorsten Ball collects greatest hits by Steve Yegge (who coincidentally just joined Sourcegraph):
- Rich Programmer Food, on compilers
- Notes from the Mystery Machine Bus, on the political philosophy of software engineering
- The Google Platforms Rant
- Execution in the Kingdom of Nouns, on the ills of typical mid-2000s Java/OO design trends
- Bonus: I had no idea Steve Yegge has an active YouTube channel.
And, on books/screencasts/blogs that have influenced him most as a programmer. A few that have influenced me too:
- Destroy All Software
- PeepCode Play by Play
- Pragmatic Progammer
- Practical Object-Oriented Design in Ruby
- Agile Web Dev with Rails
- Rands in Repose
- Code Complete
- 37signals' books
---
Codebase as Database: Turning the IDE Inside Out with Datalog:
I’ve been wondering: what if this codebase model was as queryable as a database is? What new questions would we ask of our codebases, and what new ways would we find to visualize them? Furthermore, what if the language semantics themselves — types, completions, errors, etc — were specified as queries, which were also introspectable?
I believe that the design of languages and programming environments should not just be the province of a small priesthood of elite developers. Everyone should be able to look under the hood of their IDE, and be free to push its boundaries: embed it in a different context, create a domain-specific language with rich editor support, fork an existing language to play with its semantics, etc.
The opacity of the IDE’s inner model — and the rules by which that inner model is updated — are barriers to this being a reality. For IDEs to be introspectable and hackable, we must first expose this model and these rules: we must turn the IDE inside out.
Sign me up for queryable, malleable IDEs. I like RubyMine and JetBrains' development products a lot. But, I often pine for the speed and low-ceremony extensibility of Sublime Text (or TextMate, back in the day). So let's through "as easily queried as a database" on the pile while we're at it. 😆
See also: Sourcegraph, language servers. (Someone in the back is yelling Lisp, the "Freebird!" of software development.) Furthermore, I wish Jetbrains' MPS was less Java-centric and more tractable.
Peak Aerosmith
Permanent Vacation, Pump, Get a Grip, Nine Lives. That’s an excellent run of albums. It was considered a renaissance at the time. IMO, it’s their best stuff1.
Moreover, the peak of their MTV-generated fame. Source material for the videos that put Alicia Silverstone and Liv Tyler on the map.
I’m feeling very 90’s kid right now 😆
Anti-favorite: “Jamie’s Got a Gun” – I’ve heard it too many times.
Favorites: “F.I.N.E”, “Hangman Jury”, “Shut up and Dance”, “Pink”.
-
Caveat: nostalgia ↩︎
The Flipping Table(s)
This is a story about a tiny toy table. Well, a couple of them.
Courtney and I play pub quiz, a lot. We play with a regular group of people at a couple of venues across town. We aim to take a “podium place” home. We come up with a fresh, topical team name every week. We are a bit competitive. It’s a thing.
One of our team rules is: avoid second-guessing ourselves1. The first reasonably confident person to provide the answer to our “quiz scribe” holds sway. Typically, they’re right or confident enough that no further discussion is needed and the answer is scribed to the answer sheet. A terrible way to run a company or government, but an okay way to run a quiz team.
Occasionally, it happens, during a quiz, that two folks will feel that the answer to a question must or must not be something. For instance, there are very frequently questions on the numerically outstanding planets in our solar system. It’s almost always Jupiter or Saturn, but it’s hard to say which. “It’s Jupiter because it has a ton of moons” or “it can’t be Jupiter because Saturn has even more moons”! Well, given the no-second-guessing rule, now we have a pickle. Two conflicting answers, or a non-answer, and what to do about it?
Regardless of how we arrive at it, we can only write one answer. This leaves the door open for us to have the right answer, but write down the wrong answer. Little indignations in jest. We are a bit competitive.
Enter the flipping table
Possibly, you’ve seen the table-flip “emoji”: (┛◉Д◉)┛彡┻━┻. It’s a shorthand for “this makes me have a big, not-good feeling” in online conversation. If not, here’s the late, great Alan Rickman “performing it”:
That’s how it feels when you suggested the right answer and your quiz team went with the wrong answer anyway. Actually flipping tables would get us kicked out and banned from the venues we frequent, so that’s not an option. However, it happens, tables come in all sizes. Including, very tiny simulacrum of tables.
So one night after quiz, I scoured the internet for tiny tables that we could flip. Once I dialed in the search (there are many ways to search for “toy table” on Amazon that will not yield tables that are toys or tables that are flippable amongst polite company), a table was ordered. A few days later, thanks to the magic of just-in-time supply chain logistics2, we had a toy table. So it came that every night, as we were preparing for the quiz, we set out our little (toy) table on top of the (actual) table in case there was a moment of indignation.
Our reputation precedes us
Turns out, flipping a tiny table with your finger is pretty cathartic. The tiny table got a lot of use. We really liked our tiny table.
Even better, a table of adults with a tiny toy table in the center of them is a curious thing. Other teams and quiz hosts inquired about our table. We explained it, let them flip the table. People liked it.
Word of our flipping table spread amongst the Austin pub-quiz community. When new hosts would fill in for our normal quiz host, they would introduce themselves and ask to see our flipping table.
Our reputation for flipping tables preceded us. One could have a worse reputation!
Epilogue for a tiny toy table
As is common of tiny toys delivered by a logistics machine optimized for low cost, the flipping table was not particularly strong. Eventually, we lost or broke it, I don’t remember which.
In any case, a second, slightly larger and fancier flipping table was provisioned. This one even had place settings. Fast-forward a few months, it too broke. One of our quiz teammates took it upon themselves to repair said table. At this point, we had a very robust flipping table, and some of its place settings remaining.
Sadly, our regular quizzing was curtailed by the pandemic, shutting down basically all bars wherein one would play pub quiz. I’m not sure where the flipping table ended up; we haven’t used it in the year since we started quizzing again.
But those months we had a flipping table; glory days!
Onboarding when you don't have access to the team
Mitchell Hashimoto, Contributing to Complex Projects:
The first step to understanding the internals of any project is to become a user of the project. You do not have to become an expert user, but my personal graduation criteria for this step is to try to build something real using the project, even if it is small or simple.
Analog: here's a functional area. Set it up for yourself or on your localhost. Now, make a small, well-contained change.
Learn how to build the project and get a working binary (or equivalent). Don’t bother with understanding the build system, the dependencies, etc. Just cargo cult guides, websites, whatever you need to reliably and repeatedly go from source code to runnable binary on your system.
Analog: get to the point you can run the app, run (focused) tests, and see changes in the app. Then start trying to make functional changes.
To learn the internals, I like to use an approach I call “trace down, learn up.”
Analog: for your first several changes, read from the top of the call stack down as far as you can. Don't try to make changes, but do try to note all the landmarks (files) you visit and how they relate to each other. Note “side quests” to investigate later as you go.
Don’t be afraid of complexity. I think too many engineers look at stereotypically complex projects such as programming languages, browsers, databases, etc. as magic or as destined for higher-beings. I like to remember that all projects were started by other humans. If they could do it, I can do it too. And so can you.
You, too, can gain enough understanding of an eight-year-old system to work on it as though you were around when some of it was written. In fact, your effort will compound: the longer you're around, the more you will find curious code that, it turns out, you added in the first place. 😆
Great Albums: Little Rock
Or: Texas, the Good Parts. (Despite the title!)
Or: it sounds like Texas, to me. (Again, despite the title.)
Hayes Carll is my favorite under-the-radar, “this is what country music should sound like” musician. Wit, remorse, nostalgia. Storytelling, quirky characters, relatable characters. Little bit of rock, little bit of western. An ideal Americana mix. It’s all there.
Plus, at 40 minutes, it’s a perfect road trip selection. Always moving forward, but never long-winded.
An un-conference appears
I jumped into a short un-conference organized/hosted by Andy Matuschak last weekend. Within this humble Gather, I came across lots of intriguing people and energizing ideas. Some notes and a few follow-up ideas:
Napkin is space for ideas and not, it seems, about note capture as an end. Rather, it’s about throwing ideas or quotes at the (metaphorical) wall and letting the system organize them into clusters or connections. If you like some of those idea, you organize the ideas into a linear outline and export that to whatever you like to write with.
Nutshell is about adding an extra dimension to documents on the web. The creator, Nicky Case, described it as a “tool for expandable explanation”. Those explanations take the form of popovers that may contain a bit of text (like a footnote/annotation), a scraped reference to another page (transclusion), or a fully interactive gizmo to explore an idea in a more tactile manner.
Excitement about applying language models (e.g. GPT-3 or DALL-E) to generative creativity came up a few times. Some of the applications demoed were already using language models to augment insight or obviate manual human organization. Using models to ‘read between the lines’ of captured notes/human input and generate new ideas came up as well.
Dissatisfaction with some current PKM tools came up a couple times. In particular, seeking note capture or memory recall as a (customer) engagement end rather than as a means to thinking more/better thoughts. I think I heard a couple criticisms that some tool was “too IT”, but I’m not sure I even heard it correctly or what that would even mean! 😆
Overall: highly recommend seeking folks using computers to augment their ability to create and remember instead of stopping at “finally got my notes app just the way I like it”!