Perhaps we’re living through a time when the very concept of success is being redefined in a completely different way. Until quite recently, a successful person was considered to be someone who had amassed a great fortune or wealth (regardless of how); a successful company was one that grew by double-digit percentages year after year (regardless of the job satisfaction of its executives, employees, and customers); and a successful family was one surrounded by comforts and wonderful all-inclusive hotel vacations (regardless of how disconnected its members might be), to give a few examples. At the same time, workplace downshifting is becoming an increasingly common phenomenon.
And what the hell does this have to do with software development?
As in any other profession, we bring to our work many of the flaws and virtues we inherit from everyday life, even if we don’t see the connection directly.
Recently, The Programmer’s Black Book received a very complimentary review on Amazon.com. With the author’s permission (for which I’m deeply grateful), I’m copying and pasting it below:
“Indispensable reading for those of us who work in programming, because it covers essential topics such as productivity, efficiency, software quality, and time management. The great advantage of this book is that it isn’t just another book on software engineering theory: the author draws on his extensive experience and gets to the heart of the problems developers face when taking on development projects. He explains in detail the bad practices that lead projects to fail and offers effective solutions. A key point the author makes is the importance of our profession in today’s world, showing the advantages of being a good development professional and presenting a very positive outlook with great prospects in the productive environment.”
To me, success is wrongly associated more with the effect than with the cause that produces it. That’s why we repeatedly make the mistake of taking on a project only for the money (okay, okay, I know money matters, but it’s far from everything), being nice to someone to get something from them, or signing up for an intense exercise program to lose those extra pounds, and so on.
That’s not how it works at all: first you have to be (this is getting pretty mystical, isn’t it?), then you have to do, and as a result of all that comes having: be - do - have. That’s the inevitable order, and it never fails.
Only when a project is useful to other people will it lead to financial success; only when we genuinely like someone and treat them with respect will that kindness come back to us; and only when we enjoy exercise and make it a regular part of our lives will we stay in shape over the long term.
People tend to talk about success only from an economic point of view, but that’s far too narrow and simplistic a view of reality. Nothing satisfies me more than having one of my works, such as The Programmer’s Black Book, considered useful to other people. If this project has improved the lives and career prospects of some people, helped them improve their careers, even just a little, or helped them avoid some of the most common and recurring mistakes in software, only then will I consider The Programmer’s Black Book a successful work—and only then might some royalties come my way…
That review fills me with satisfaction and encouragement for the simple reason that it shows me the book is useful. That’s really the essence of any project through which we hope to achieve something. Any kind of work is headed for success if it identifies unmet needs and ultimately proves useful to a group of people willing to pay for it. It’s that simple—and yet it’s so difficult to keep in mind in all our decisions.
In software, we sometimes forget that what we make—the code we write and the user interfaces we design—isn’t for us, but for the end customer. We also forget that we should write code so anyone who takes over the project in the future can understand it without having to unravel an application with a cryptic, incomprehensible design.
I’m afraid I meet people who boast about working for a large, international company, while also complaining that they have to travel so often they can’t spend as much time with their families as they’d like. Maybe they have an excellent bank balance, but what kind of success keeps us from something essential, like being with our children, in exchange for a high salary? From the outside they may look like people who have succeeded, but on the inside it may be very different. It’s just one example of how success has many faces, lights, and shadows.
People who enter our profession solely as a way to earn a living have little chance of finding a place in this demanding field over the long term. Of course, it’s legitimate to make the best living you can, but the demands inherent in our profession are something you can only handle if you truly enjoy it.
The best professionals I know are those who genuinely enjoy what they do, love their work, and sometimes confuse it with their favorite hobby. One unmistakable sign that we’re passionate about what we do is reaching that flow state where time simply ceases to exist and tiredness becomes little more than an afterthought. If this state I’m talking about sounds completely foreign to you, then you’ve never been so absorbed in a task that nothing else mattered.
Only these people can endure moments of crisis and the tension that builds as delivery dates approach dangerously close, because deep down they know they’re looking forward to that wonderful, addictive feeling of delivering good work and going home with the sense that they deserve the money they earn for it.
Utopian? Not at all. I know people like this: when you’re around them, they radiate energy from head to toe, speak about what they do with visceral enthusiasm, and bring that passion into everything they do. That’s what success means to me: the tremendous good fortune of making a living from what you’re passionate about, rather than mercenarily working for others in exchange for a paycheck. Of course we have to make a living, but what would the world be like if we embraced a concept of success more closely tied to quality of life, well-being and peace of mind, satisfaction with who we are and what we have, harmonious relationships, a lack of stress, and, naturally, the fulfillment that comes from contributing and giving for its own sake? I’m sure GDP would look very different then…