Non-industrial software
In today's world "software" has become synonymous with "software product". But this is a misleading conflation, sort of like equating suits and cocktail dresses with all of fashion or thinking pop music is all modern music. Software that has to be a commercial product is subject to a lot of really gnarly constraints:
- It has to be built by teams of people with different ideas and goals and skill levels
- It has to scale to thousands or millions of users to make money
- It has to build in mechanisms for billing and payments, analytics, and "growth"
- It has to be easily learnable by new users
These constraints make the modern concept of "software product" a kind of monster of industrial baggage, and while it leads to impressive feats like Google's engineering infrastructure, other worlds are possible.
I think the ideal technology (technology writ large, even beyond computers and electronics) feels like the stuff in your kitchen. They are familiar and become part of your life, adding to the way you experience your every day. They can be simple or they can be sharp expensive pro tools. They move around and mold to how you like to hold them and use them. They are there when you need it, reliably. They help sustain you and last for a long time. There are professional kitchenware but most people don't need the industrial-grade stuff.
Most of modern software is industrially produced for mass-market use, so people get used to lazily thinking that is all that is possible. If you can write software, you can build your own kitchen where you can cook your own food. You can host your friends and feed them too. Maybe it will inspire your friends to cook for themselves and invest in their own metaphorical kitchens, too. Hopefully it can be something that grows with you and becomes a part of your every day.
I guess what I'm saying is: don't succumb to the industrial, mass-market aesthetic of what scaled up software looks like, and don't take for granted what other people tell you computers are for and how they should feel to use. Learn to really deeply understand what computers can do for you and build out of them something that you can say feels like a reflection of you.
Build things that you are proud of, not just because it is valuable, but because you are proud to sign your name on it and invite it into your home.
Always so perspective-forming to read standards discussions in the open like per W3C/ECMA/ISO. More than any single piece of software or design, standards engineering feels like contributing to a civilizational superobject, an intrigate megastructure that will outlast any individual contributor and shape the future in sweeping chaotic and unpredictable ways.
Standards discussions are the epitome of "programming is about computers; engineering is about humans". Engineering standards are so influential and riddled with adversarial nth-order effects at the intersection of human nature, behavioral economics, and obviously technological progress. Can't take efforts of domain experts (often working in a pro bono capacity) and dispassionate debate for granted.
Texture of neural media
Could a generative image model, never having seen Voyager 1's Pale Blue Dot, have been used to create such beauty? Can a neural generative model imagine beyond its own world model? How can we build models that can help imagine new worlds, not just permutations of the one we know?
Neural generation has its own creative texture just as acrylic on canvas and film and glass and steel and violin and on and on and on. The message can't escape the medium. There is no textureless transmission modality, and there is no textureless creative tool. We should approach any young dogmatic view of artistic creation, especially one that claims to be all-containing and all-enabling, with trepidation.
There is no ultimate media. There is only the next one.
On craft and automation
excerpted from an email conversation about creating with LLM-enabled tools
I think there is probably a different kind of enjoyment that we could learn to feel when creating with such a heavy level of intermediation.
As I've gotten later in my (still pretty short) career I've gotten a deeper understanding of what some of my founder/leader friends call "physics of business". In the same way that building software is about organizing software abstractions in just the right arrangement to make it easy to reason about and improve, there's a skill to organizing people, economic incentives, communications, and networks of trust in a way that makes the whole people system (companies, partnerships) possible to debug and predict and improve.
Just as good software engineers seem to find deep craft in designing elegant software systems that hum and perform reliably, I've found good people-systems-organizers can find similar craft in designing people systems / companies that hum along to do big things in the world. There is a kind of elegant physics to teams that are working really really well, and that physics is often carefully balanced by a system designer or many.
So, I guess what I'm saying is that there may be a craft to building software at a distance, with things like LLM agents chugging along beneath your hands, but that feels to me like a distinct kind of joy from working directly in the medium of code. And just as we shouldn't expect the same people to enjoy both coding and managing all of the time, we shouldn't expect people to enjoy doing both coding "by themselves" and coding "with a team of agents" the same. And I think that is OK. And I think the people like you and me who like the craft of working directly with the system will find ways to accelerate ourselves in our craft.
I was joking with a friend earlier today that, if you can't work as fast as the best "agent-using" engineers using just code autocomplete, your codebase probably needs to be better designed. I kind of do mean it though — in well written codebases you can say a lot with a few words. Similarly, good writers don't need an LLM to write hundreds of words quickly because they know how to say the same in a dozen perfect words.
Maybe the question I'll leave here at the end is: how can we better organize our creative environments so we can say a lot with a few movements of our hands?
A founder friend of mine working on Flora told me about a mission statement I always found really inspiring — he wants to allow artists to "speak beauty into existence." I love this phrase because all of the focus here on about the precision of the words, and the ease with which the words can conjure ideas into being. There has got to be a way to get there by finding better ways to speak of beauty, rather than by mechanizing the means of beauty-production. It is a harder problem; language and culture moves at the speed of people rather than of computers. But I think it is what really yields new understanding about the world, and where real progress as a culture is made.
I would love to see fewer developer tools pitch "set up in minutes" and more of them pitch "we stay available and when things break we will be observable and debuggable".
Tragically rare priorities for modern software infrastructure products.
Problems of search and problems of learning, as far and wide as the eye can see.
And all this land, for the taking, if you are bright-eyed enough to see it and to seize it.
AI systems with research taste
How might we design an AI system skilled at asking questions whose verifiable answers/rewards are maximally useful for RL?
This would be like a "good research question taste" model which would allow us to assemble a training set of more sample-efficient Qs w/ verifiable answers. Like a teacher who guides a student by asking the right questions at the right time, a system optimized for good research taste would help humanity advance the frontier of unsolved problems as efficiently as possible, especially when paired with "good problem-solving taste" AI systems.
Good question taste feels like it may be a much harder technical accomplishment than good problem-solving taste, but feels much more fundamental to creating intelligence that meaningfully reduces the cost of new science.