It's OK to Care
It’s OK to care about programming. It’s OK not to care much about what your company is trying to accomplish. No, really, I’m serious.
Don’t get me wrong. The Manifesto1 calls for frequent collaboration with the business-side people, and for a successful product and a successful relationship, that’s truly important. It’s our best shot at keeping them happy, and our best shot at staying employed.
But don’t listen to the people who want to tell you that the product is more important, or that selling is more important, or any other bad-blamed thing is more important than what’s important to you. They’re not more important.
Now again, don’t get me wrong. If your product is distributing insulin to needy folks in remote villages, it’s more important than Python or Kotlin or your favorite refactoring technique. But even then, I don’t think it has to be more important to you.
Most of us never get a chance to work on a product that’s really important, like delivering medication to those in need. Mostly we get to work on Yet Another Marketing Site, or Yet Another Auto Configurator or Yet Another Insurance Application. Those things are important to the company, if we’re lucky, and maybe it’s even really good insurance or has free shipping, but if you don’t really give a rat’s about it, I think that’s OK.
And as you work on YAMS or YAAC or YAIA, if what you really care about is feeling the code take shape under your hands, feeling it improve as you test and nurture it, feeling the pleasure of having made a really nice improvement to that object that has always been a thorn in your side, if what you care about is the pure craft of programming, that’s OK with me.
Most probably, you work for a company whose true purpose is to turn your labor into money for some billionaire. Or some non-profit whose true purpose is to turn your labor into money for the people who administer it, with a little left over for the doctors and you. Or some governmental agency, don’t even get me started.
Your job, almost every job, is a necessary evil in the eyes of the organization you work for. If they didn’t need you to do it, you’d be gone. If it could be done more cheaply in a different company, you’d be eating delicious foreign delicacies right now. If it could be done by a Google or Amazon AI program, you’d be looking for work right now.
It is, in my view, good to understand what your organization needs, what it will pay for, and to deliver that. But to care about what your organization wants is quite likely to care about replacing people like you with cheaper components, ideally components that don’t expect health care and a living wage. It would be unsuitable to feel engaged in getting rid of yourself.
Most of us will never be able to sit at home, exercising our skills, creating things of value that keep food on the table. Most of us will at best have to sit at home, exercising our skills on behalf of some behemoth that would ditch us the first chance it got. And many of us will have to go into the office to get that level of caring love from Behemoth Inc.
But … but … but if we can do our work in a way that directly brings us joy, from the sheer pleasure of doing it well, we can at least experience some pleasure during the work time, rather than having to try to catch up with joy by spending the money they give us to do something we don’t care about.
If you can identify with some higher goal, that’s great. And some of us are lucky enough to work on things where that’s possible. But if not …
It’s OK to care about what you do. If programming is what you do, it is OK to care about programming.
-
Manifesto for Agile Software Development, accept no substitutes ↩