David Heinemeier Hansson

Made Basecamp and HEY for the underdogs as co-owner and CTO of 37signals. Created Ruby on Rails. Wrote REWORK, It Doesn't Have to Be Crazy at Work, and REMOTE. Won at Le Mans as a racing driver. Fought the big tech monopolies as an antitrust advocate. Invested in Danish startups.
December 21, 2021

Email is the antidote

It's easy to get down on the internet as a medium for reasoned debate. Every discussion on social media that touch controversial topics seems to descent into the depths of hell in less than sixty seconds. But social media is not the internet. It's merely one distorted expression of it. There are other ways to connect, to reason, to lea...
Read more
December 21, 2021

Are we past peak "woke"?

Could John McWhorter have gone on MSNBC or The View or PBS or NPR a year ago to talk about a new book called Woke Racism? Would a book with a title like that even have been welcome at that moment in such chambers? I doubt it. But now it is. McWhorter has not only written an important book that's rightfully garnering broad attention, he...
Read more
December 17, 2021

That shipping feeling

"Real artists ship" was one of Steve Jobs' mottos. You can clearly see that ethos still in present-day Apple. There are no far-future tech demos from things in the R&D lab at Apple keynotes. While their car project is the perhaps one of the worst kept secrets in company history, they aren't deliberately trying to flaunt it. Because a t...
Read more
December 16, 2021

The One Person Framework

Seven is the version of Rails I've been longing for. The one where all the cards are on the table. No more tricks up our sleeves. The culmination of years of progress on five different fronts at once. The backend gets some really nice upgrades, especially with the encryption work that we did for HEY, so your data can be encrypted while...
Read more
December 15, 2021

The art of not having a take

The most liberating aspect for me of writing emails rather than tweets is the natural limit on topics I might be tempted to have a take on. When I was primarily writing tweets, I could easily involve myself in a dozen topics in a day. HERE'S A TAKE, THERE'S A TAKE, TAKE THAT! With email, it's a sliver of that. But it goes even deeper t...
Read more
December 13, 2021

Heaven is hazy

In trying to understand the ideology of The Elect, as John McWorter calls them, I've found a historical dive into the late 60s and early 70s tremendously productive. The echoes of history provide a strange comfort: We are not the first people to be struggling with this. I don't just mean that in a general sense. That other peoples at o...
Read more
December 13, 2021

I won't let you pay me for my open source

In Debt: The First 5,000 Years, anthropologist David Graeber explores the fascinating history of debt and economies. It starts out by debunking the common myth that prior to coinage, everyone were trapped in this inefficient mode of barter. If you had a chicken to give and wanted sugar from Gandalf, but Gandalf was a vegetarian, you ha...
Read more
December 10, 2021

Everything popular is problematic

I can completely see why Joe Rogan's podcast has become so popular. I've listened to maybe a dozen shows, and the way he lets his guests talk, at length, feels like a throwback. It doesn't have the intellectualism of a Bryan Magee or the inquisitiveness of a William Buckley, but it does have the spirit of letting people – with whom he,...
Read more
December 7, 2021

The time is right for Hotwire

It's not exactly been a big secret that I've harbored a fair skepticism towards single-page applications over the years. Not because of some innate animosity with JavaScript, at least not the modern variety, which we first tasted in the form of CoffeeScript, then as transpiled ES Next. But because writing and updating HTML like that ne...
Read more
December 2, 2021

Worrying yourself into excess

When we were developing this HEY World system in the beginning of the year, we ended up spending a very considerable amount of time worrying about and discussing all the ways it might be abused. This is the internet after all! Full of savage trolls! Surely we must fortify lest we be overrun? But the trolls never came. Since we launched...
Read more
December 1, 2021

Books that bust bubbles

It's a disorientating time in America. So many societal seams are unraveling simultaneously. So few ideas for how to stitch those seams back together find common cause. No wonder despair and anger comes so easy to so many right now. These dark emotions are then propelled by the particle accelerator that is Twitter into super-charged ta...
Read more
November 25, 2021

Programmers should stop celebrating incompetence

In the valiant effort to combat imposter syndrome and gatekeeping, the programming world has taken a bad turn down a blind alley by celebrating incompetence. You don't have to reduce an entire profession to a clueless gang of copy-pasta pirates to make new recruits feel welcome. It undermines the aspiration to improve. It reduces the w...
Read more
November 22, 2021

Authoritarian hippie parents

There was a time when liberal ideals of self-determination, self-regulation, and free-range independence naturally extended to parenting as well. Such ideals were seen in stark opposition to conservative parenting based on obedience, discipline, and reverence. Today it seems like these roles are often reversed. The strictest parents I ...
Read more
November 17, 2021

It must be worth it even if it doesn't work

The way to work without regrets is to pursue projects that'll have been worth your time even if they don't pan out. Projects that'll tickle your curiosity, flex your competency, and teach you something new regardless of where they ultimately end up. Projects that leave you better off, as a person, despite not being a commercial or crit...
Read more
October 6, 2021

How do you know what people have been working on?

Losing the sense of being in the know about what's going on at the company is one of the most common concerns I hear regarding working remotely. Both at the managerial level and between coworkers. There's a real fear that staying remote for too long will eventually lead to nobody really knowing what's going on, and thus the organizatio...
Read more
September 24, 2021

Stimulus 3 + Turbo 7 = Hotwire 1.0

For so long, it felt like I could only tell half the story of how we make software for the web at Basecamp. Too many of the chapters about our front-end approach were missing key pages. Sure, we had some of it out there. Turbolinks, for example, hark back to 2012, when I was inspired by Chris Wanstrath's ideas in pjax, and took them fu...
Read more
September 20, 2021

Conceptual compression is lossy (and loss hurts)

To make things simpler, you have to take something away. That means giving up something of real value to get something else of greater value still. You can't counter complexity without being willing to sacrifice. That is the nature of conceptual compression. It's why it's so hard to do. People become attached to the choices and advanta...
Read more
September 16, 2021

Your likes, hearts, and flattering comments are bad for my brain

I’ve been publishing controversial thoughts, essays, books and software for half my life. It has endowed me with a thick skin to repel the haters, and kept me going whatever they said. But after close to two decades of having my work often judged favorably, I’m still no better at dealing with gestures of adoration. In fact, I think it’...
Read more
September 14, 2021

Apple's forced IAP is either dead, a joke, or illegal

I can understand Epic's disappointment with the verdict in their trial against Apple. They sought to have the iPhone recognized as the pocket computer it is. One where consumers should have the right to install the applications of their choice, like with any other general-purpose computer, and where developers should be free from extor...
Read more
September 6, 2021

Rails 7 will have three great answers to JavaScript in 2021+

Rails has been unapologetically full stack since the beginning. We've continuously sought to include ever-more default answers to all the major infrastructure questions posed by modern web development. From talking to a database, to sending and receiving emails, to connecting web sockets, to rendering HTML, to integrating with JavaScri...
Read more
September 3, 2021

No one wants to be a code monkey

So many software companies these days are stuck on a ticket treadmill, working a never-ending backlog. When those companies look at Basecamp, they think "this can't work for software development?!", because it's not a ticket feeder. Heads explode when I tell them we do everything in Basecamp. That's the challenge of selling software ou...
Read more
September 2, 2021

Japan bends Apple another inch on the App Store

Is there a country anywhere in the world without an open investigation into Apple's monopoly abuses with the App Store? It seems like we can barely go a month, let alone a week, between announcements of new inquiries, new laws, new settlements, new scrutiny. Change comes slowly, then all at once, eh? Now it's Japan's turn. The Japanese...
Read more
August 31, 2021

South Korea just killed the 30% app-store cut

Apple and Google knew from the start of this fight that they couldn't afford to lose even once. That's why they pulled out all the stops stops to intimidate the Senate in North Dakota. That's why they spared no expense on the backroom deal to kill the Arizona bill. But now they've finally met a legislature they couldn't bully or buy: T...
Read more
August 27, 2021

Apple's new settlement is a corrupt joke

There's this iconic scene in the movie Fight Club where Edward Norton's character is sitting together with his boss, and they're negotiating some enterprise software sales deal on a dreary Monday morning. The boss is being dazzled with the usual, trite spiel that enterprise sales people lay on middle managers, like "waste is a thief". ...
Read more
August 12, 2021

Modern web apps without JavaScript bundling or transpiling

I didn't much care for vanilla JavaScript prior to ES6. Through all of the 2000s, I chased different approaches to avoid writing too much of it. First there was RJS (Ruby-to-JavaScript). Then there was CoffeeScript. Both transpiling approaches that turned more enjoyable-to-write source code into the kind of JavaScript that browsers wou...
Read more
August 11, 2021

Too many fights on too many fronts

Compared to its big tech compatriots, Apple has only recently reached Grand Scrutiny Station. The place where everything you do is met first with skepticism and scrutiny – by an influential segment of the masses and the media – more so than courtesy or curiosity. That's undoubtedly a foreign place for Apple, after so many years of unad...
Read more
July 1, 2021

Broken software invites collaboration

After two decades of open source participation, I’ve found it easier to cultivate community collaboration around software that’s obviously a little broken. Waiting until the project is pristine before sharing it with the world creates an aura of perfection that intimidates and alienates. So releasing before every bug has been squashed,...
Read more
June 23, 2021

Here comes the law

It always seems impossible until it’s done. And few fights have demonstrated this more than that against the monopoly abuses of big tech. For over a decade, the likes of Google, Apple, Amazon, and Facebook have been able to get away with murder in digital markets without fear of consequences. Wrapping their tentacles ever more forceful...
Read more
June 15, 2021

Bringing Hotwire to Basecamp

Hotwire is now powering Basecamp 3 on the alpha version we're running internally, and I thought it'd be helpful to document the upgrade process. Although upgrading is perhaps a big word. It's not like we rewrote all the JavaScript we have to make this happen. Coexisting is probably a better term. While existing JavaScript code stays as...
Read more
June 8, 2021

Email spy pixels are dead now that Apple will follow HEY

There's no advocacy as effective as competition. I could have yelled and screamed about email spy pixels till I was blue in the face, but it was building a serious set of defenses into HEY that turned the argument into action. And now the entire email tracking industry is about to be turned upside down, as Apple has announced they'll f...
Read more

See more posts »