There’s always more work to do, and there’s never enough time to do it: more code to write, more features to add, more bugs to fix.
Even under normal circumstances there’s only so much time in the day. During a pandemic, when you’re stressed and distracted, there’s even less time where you can stay focused. And if you’re taking care of children at the same time, good luck!
But if you were productive enough, you could:
How do you become more productive as a programmer? By creating more value with the fixed time you have.
This might seem a like truism, so let’s dig a little deeper and see where the value you produce really comes from.
Let’s say you’ve been asked to code a specific implementation of a specific feature: it should take you five business days to implement. If you get distracted, spin your wheels, or notice a bad assumption too late, you might end up taking two weeks instead of one: you’ve cut the amount of value you produced in half.
So obviously, you want to avoid wasting time while you’re coding.
But what if you came up with a better and faster implementation strategy, that took only one day to code? You’d be producing the same amount of value in one day instead of five: you’d be operating at 5× the productivity.
Coming up with good solutions is what senior software engineers do, and that’s a big improvement in productivity over just coding what you’re told to code. But even here you’re still dependent on someone else to come up with valuable problems to solve: if you’re given a low-value problem, your productivity will be low no matter how good your solution is.
When you take the next step and start identifying problems, when you can go to your boss and say “I’ve noticed this bug that’s losing users to the tune of $3 million a year, shall I go fix it?”, that’s when you’re really providing value. The key to productivity is learning how to identify and solve problems—before you ever start coding.
Unfortunately, most discussions of programming productivity end up focusing purely on technology and skip over these necessary problem-solving skills. That’s why they’re “secret”: unless you have a really good manager you’re expected to somehow figure them out on your own.
Knowing these problem-solving skills can be the difference between working overtime and getting a raise, between taking months to find a new job and quickly getting a job you love.
I’ve learned these skills over the course of 20 years, but you can learn them far faster by reading my new book, The Secret Skills of Productive Programmers.
The book covers over 30 different skills and techniques, including:
The book’s is now available in draft form. Instead of waiting, you can get productive faster, and get all future updates to this edition (delivered via email).
The book is currently over 140 pages, and I’m still adding content (see the changelog below). Other planned improvements include:
Across the US, people are protesting ongoing police violence and brutality towards Black people, and in particular the ongoing murders of Black people by police. The police have responded with more violence and brutality, ranging from shooting chunks of rubber at people’s faces, to teargas and mace, to driving into crowds with police cars, and beatings and mass arrests.
The protests continue, as do killings of Black people by police, and the violent police response to protests.
One thing you can do to help support the protests is donate money:
I will then email you a free copy of the book. As is the case when you buy the book, you will also get future updates to the 1st edition (via email).
In the month of June, readers have donated over $3600 as part of this fundraiser. Why not join them in taking a small, easy step to make the world a better place?
Alternatively, you can just buy the book—unless you were offended by the above, in which case I’d prefer not to take your money.
|Buy the book|
US$19 + taxes
Buy now ($19)
Hi! I’m Itamar. I’ve been writing software since 1995 or so. As an employee I’ve worked for companies small and big, ranging from 8-person startups to a year at Google as a product manager (my previous employer got acquired). And as a consultant I’ve written software for a similarly broad range of companies.
I wrote this book in the hopes of helping you and other programmers learn the productivity skills that took me decades to learn.
Want to learn more about me? I write a weekly newsletter sharing my past programming and career mistakes, and how you can avoid them.