Mar 2, 2023
Can I share a little too much with you guys for a second? Sometimes, being around older people (older is relative of course) can make me feel a little anxious. Older parents for example. Or just casual acquaintances in their twilight years. And we all know why this is: they are a reminder of what we know is inevitably coming for us.
I could go on about how knowing nothing lasting forever imbues time with value. But I won’t. This is a software blog, after all. So what’s the point here?
We avoid things we don’t want to think about. And software developers aren’t any different. Consider our desire to test APIs and software. We want to build features. Sure, we unit test and make sure our code is solid. But even though we know a certain percentage of stuff is going to break and come back to us for debugging, we try not to think about it. Even in a magical world, if magical tests existed that let you ensure every microservice you built worked perfectly in the context of the larger app in the context of the larger production environment, you still might not run those tests. Don’t hate me, it’s just the way we’re built.
This is avoidant behavior, the dev edition. So what are some easy ways to change this and, as a result, catch mistakes earlier in the CI CD pipeline? I’m glad you asked:
Make building tests and creating things like REST and gRPC mocks easier
Make tests and mocks easy to share (so that they’re truly reproducible)
Make test results and mock functionality more meaningful re: catching bugs with higher ROI
Automate as much of it as possible so I don’t even notice
Don’t make me spend time learning yet another CI tool, but do give me more free time to code
Hey, we can all dream can’t we?