Discover more from Matt Rickard
Frustrations of Modern Development
Here's something different for a Sunday post. Software has changed, but with it, so have our frustrations. 13 pain points that developers run into today.
Setting up a new developer environment. Even the most declarative and reproducible environments have leaky abstractions.
Writing Dynamic SQL or using an ORM (Object-Relational Mapping) library. Both are bad solutions to a necessary problem.
Debugging anything that's cached. Now, we have multiple layers of caching – Cloudfront, S3, and web servers have their own caching rules.
Adding or updating a new dependency. See Nine Circles of Dependency Hell.
Managing changes across multiple repositories.
On the flip side, making tools work with a monorepo.
Tracing requests across microservices.
Sharing a development database.
Running your code through CI/CD and diagnosing real errors vs. flakes.
Managing differences between development and production. (Development/Production parity).
Learning differences across clouds – Identity, APIs, and products.
We've always had to wait for our code to compile. Now we need to wait for the Docker container to be built, pushed to a registry, pulled down by Kubernetes, and everything else too.
What else did I miss? Tweet the most annoying thing about programming @mattrickard