The Clean Coder: Opinion
Source: Dev.to
Work Ethic
“You should plan working 60 hours a week. The first 40 hours are for your employer. This time you should just spend on your employer’s problems, not on your problems. The remaining 20 hours are for you. During this remaining 20 hours you should be reading, practicing, learning, and otherwise enhancing your career.”
We have 168 hours in a week: 56 hours for sleep, 40 hours for work, 20 hours for self‑development (and fun), leaving 52 hours for everything else. The key is not to stress about those 20 hours; use them for activities that keep you passionate and motivated.
Know Your Domain
“When starting a project in a new domain, read a book or two on the topic. Interview your customer and users about the foundation and basics of the domain. Spend some time with the experts, and try to understand their principles and values.”
Even if you didn’t land your dream job, investing time to understand the company’s products and services helps you bring real value. It’s not just about coding well; it’s about aligning with the business you serve.
Saying No – Trying
“By promising to try you are promising to change your plans. After all, the plans you had were insufficient. By promising to try, you are saying that you have a new plan. What is the new plan? What change will you make to your behavior? What different things are you going to do because now you are ‘trying’?”
Promising to “try” without a concrete plan is essentially a lie that postpones uncomfortable conversations about missed deadlines.
Saying Yes – A Language of Commitment
By Roy Osherove
- Say you’ll do it.
- Mean it.
- Do it.
Understanding this three‑step commitment helps you assess whether estimates, deadlines, or communications are at risk. Use it wisely to avoid micromanagement.
Coding – Flow Zone & Writer’s Block
Don’t chase hyper‑focus at the expense of teamwork. Pair programming can clear doubts and unblock you. Listening to music (e.g., Hans Zimmer, Ludovico Einaudi) can help you enter a productive “zone,” but remember that collaboration often trumps solitary flow.
Practicing – Practice Ethics
“Professional programmers practice on their own time. It is not your employer’s job to keep your skills sharp or your résumé tuned. … Employers of programmers don’t have to pay you for your practice time.”
The book draws stark analogies (doctors, football players, musicians) to emphasize that skill development is a personal responsibility. If you struggle to carve out the 20 hours a week for learning, let this be a motivating reminder.
Time Management – Stand‑Up Meetings & Focus‑Manna
“Each participant takes a turn to answer three questions:
- What did I do yesterday?
- What am I going to do today?
- What’s in my way?
Each answer should require no more than 20 seconds.”
Keep stand‑ups concise; if deeper discussion is needed, schedule a short follow‑up call.
For focus breaks, experiment with the Pomodoro technique, adjustable‑height desks, or brief walks to the window. Share your own recharge strategies in the comments!
Collaboration
“I learned something that day. It is good to be passionate about what we do. But it’s also good to keep your eye on the goals of the people who pay you.”
Passion matters, but aligning with the client’s objectives is essential.
Mentoring, Apprenticeship, and Craftsmanship
“School can teach the theory of computer programming, but it cannot teach the discipline, practice, and skill of being a craftsman. Those things are acquired through years of personal tutelage and mentoring. … It is time for us to adopt a program of apprenticeship, internship, and long‑term guidance.”
Encourage knowledge sharing within teams—whether through informal sessions, mentorship, or structured apprenticeship programs.
Tooling – UML/MDA
(Section placeholder – the original article ended abruptly here.)
For more details on the book, see the Amazon listing: Clean Code – Handbook of Agile Software Craftsmanship.