📖The Case for 'Developer Experience'
“Developers work in messy, complex environments”
Developers do much more than just reading and writing code. But most of other activities are ignored because they are messy and complex, and don’t have “silver bullet” solutions.
We concentrate on how to make it easier to write new code in a vacuum, yet most developers work with existing code
There are two types of tools:
abstraction tools assume we code in a vacuum
complexity-exploring tools assume we work in complex environments
Developers work in rainforests, not planned gardens. Existing software systems are too big to be planned gardens—they are messy and complex, with multiple components interacting. They are organically evolving systems.
software is heterogenous—it always involves multiple languages and runtimes
the rise of APIs has led to more testing in production
software development lifecycle (SDLC) is no longer linear and organized
monitoring / observability
observability is about building models of your software, so you can build software more quickly
1. Focus on the problem being solved
2. Focus on fitting into existing workflows
3. Focus on packaging and prioritization