I’ve been thinking about this a lot in the context of building cloud-based software, as I’m working on a product specifically to drastically improve developer productivity in backend development.
There’s an almost endless amount of improvements we could make to the developer experience. I think the real question is: why haven’t we? I think the answer comes down to this: our tools are too general-purpose. The big players are cloud providers, that want to support any application regardless how it’s built. As a result we end up with innovations like containers that further push us towards the “applications are black boxes” end of the spectrum.
I think we could 10x the developer experience if we started from the opposite end: if we built our developer experience around purpose-built tooling (backend development in my case), and we added constraints to how you write your application, we could infer so much more about the application than what is possible today.
For example, all of these things you should get for free, with no work needed other than writing your business logic:
I could go on :)
I’m with you on that one :)
Very cool, I hadn’t seen that one! Will have a look, thanks for sharing!