David Heinemeier Hansson

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

June 3, 2021

We're hiring!

In the past few weeks, we've filled a bunch of vacancies at Basecamp with wonderful new coworkers. People we mainly found through our personal networks and other informal channels. But now it's time for the first big open call. We always do these with a bit of trepidation, because it's a lot of work. We usually get hundreds of applicat...
Read more

See more posts »