This is why tiny software companies are often much better than large software companies at delivering software: it doesn’t matter that the large company is throwing ten times the number of engineers at the problem if the small company is twenty times more efficient.
Why don’t large companies react to this by doing away with all of their processes? Are they stupid? No. The processes that slow engineers down are the same processes that make their work legible to the rest of the company. And that legibility (in dollar terms) is more valuable than being able to produce software more efficiently.
If you want a high retention product, you need to pick a category that is high retention already.
You need to pick a product category where you already use an existing product every day.
You’re going to build something that directly competes against that.
If you win, then you’ll stop using that other product and use your product instead.
That’s a high bar, but I think it’s a good start.
…
This is why I don’t blame folks who have a “Cursor for X” idea, or “Figma for X,” just like the “Uber for X” ideas of the past generation. They’re trying to piggy off some existing markets and behavior so that they don’t have to take crazy market risk.
Well worth a read for those in the tech product subscription business.
Our focus for PDFs is to make them more readable, especially on mobile devices, and bring the suite of Instapaper tools to PDFs including highlighting, notes, text-to-speech, etc.
Maybe now I’ll make a dent in my folder of unread PDFs.
I bring up this recent history because it shows a pattern. Whenever there is a new competitor with a new online and social behavior, Meta management views it as a systemic risk to its attention-based economy. Instead of trying to reinvent, it simply copies and rolls out those features to its massive audience. Thanks to its large audience scale and massive infrastructure, it leaves the smaller rivals and original innovators as nothing more than mere footnotes.
Finally finished this long-gestating essay about Highlander. Obviously, there will be spoilers ahead. Since everyone loves talking about the mismatched accents and there was no place in the essay to insert this information seamlessly, I wanted to mention that no one involved in the production seemed to give a shit. They weren’t exactly aiming for realism. Although Christopher Lambert’s complete inability to speak English was shocking to the filmmakers — they didn’t meet him until after they cast him — but everyone had fun with it.
In a company like Anthropic, excellent project management is an extremely high-leverage skill, and not just during crises: our work has tons of moving parts with complex, non-obvious interdependencies and hard schedule constraints, which means organizing them is a huge job, and can save weeks of delays if done right. Although a lot of the examples here come from crisis projects, most of the principles here are also the way I try to run any project, just more-so.
As Gen AI programming tools continue to develop, I’m wondering what things will look like when we remove the human from the loop.
At that point, all the code that’s generated is solely for the AI. All the human-focused concerns we care about in code disappear—it becomes a black box. The code effectively becomes another intermediate language for a new layer on the stack.
As long as the solution fulfils its requirements and fits within the constraints of security and cost for the necessary performance, we’re happy.
Code structures and data schemas don’t matter—so long as the AI can refactor them to meet new requirements as they emerge.
It reminds me of stories of when assembly programmers first saw these flash new C compilers arrive on the scene and generate all this assembly code that no human had directly written.
A model I’ve long been interested in is the Corporation as a stand in for AGI. We need some non-human autonomous legal and economic entity. A corporation is just that. The Fortune 500 are already non-human super-intelligence. They operate 24/7/365 according to inscrutable internal logic, routinely execute feats of production unthinkable for any human or other biological organism, often outlive humans, can exist in multiple places at once, etc etc.
The key is that you engage with your daily activities mindfully in a way that keeps your weekly update in mind. What I mean by this is that you are always on the lookout for:
Direct experiences that you have had that would be valuable to share with the team. This could be anything from conversations with customers to shareable summaries of closed-door meetings such as executive reviews.
Events that can be celebrated, such as a big project shipping, a long-standing bug being resolved, or performance improvements that have been rolled out.
Things that could be improved, such as an incident that happened, an inefficient process that is causing friction, or data that highlights a problem that needs to be fixed (e.g. a drop in performance or an unexpected increase in infrastructure costs).
Events that are happening in the near future that you want to remind people about.
Our legacy Things Cloud service was built on Python 2 and Google App Engine. While it was stable, it suffered from a growing list of limitations. In particular, slow response times impacted the user experience, high memory usage drove up infrastructure costs, and Python’s lack of static typing made every change risky. For our push notification system to be fast, we even had to develop a custom C-based service. As these issues accumulated and several deprecations loomed, we realized we needed a change.