We have so much critical infrastructure, for example, that still runs on Cobalt, that about
five humans around the world really understand truly deeply that there's
a lot it's possible for society to lose, a competence it still needs because
it's chasing the future. Cobalt is still with us.
This is one of the things I think about with, with programming. Ruby on Rails
is at such a level now that in 50 years from now, it's extremely,
exceedingly likely that there's still a ton of Ruby on Rail systems running around
now. Very hard to predict what that exact world is going to be like.
But yesterday's weather tells us that if there's still Cobalt code
from the 70s Operating Social Security today, and we haven't
figured out a clean way to convert that, let alone understand it,
we should certainly be humble about predicting the future.
I don't think any of the programmers who wrote that Cobalt code back in the
70s had any damn idea that in 2025 checks were still
being cut off the business that they had encoded back then.
But that just brings me to the conclusion on the question for
what should a young programmer do? You're not going to be able to predict the
future. No one's going to be able to predict the future. If you like programming,
you should learn programming now. Is that going to be a career forever? I don't
know. But what's going to be a career forever? Who knows? Like a
second ago, we thought that it was the blue collar labor
that was going to be abstracted. First it was the robots that were going to
take over. Then Gen AI comes out and then all the artists suddenly
look like, holy shit, is this gonna do all animation now? It's gonna do all
music now they get real scared. And now I see the latest Tesla
robot going like, oh, maybe we're back now to blue collar being in trouble.
Because if it can dance like that, it can probably fix a toilet.
So no one knows anything. And you have
to then position yourself for the future in such a way that it
doesn't matter that you pick a profession or path
where if it turns out that you have to retool and reskill,
you're not going to regret the path you took. That's a general life
principle for me. How I look at all endeavors I involve myself in
is I want to be content with all outcomes. When we
start working on a new product at 37signals, I set up my mental model
for its success and I go, do you know what? If no one wants
this, I will have had another opportunity to write beautiful
Ruby code to explore a greenfield domain, to learn something new,
to build a system I want, even if no one else wants it. What a
blessing. What a privilege. If a bunch of
people want it, that's great. We can pay some salaries, we can keep
the business running and if it's a blow weight success. Wonderful. I get to impact
a bunch of people.