Monday Links: Monday Links: Passions, Estimates, and Methodologies23 Jan 2023 #mondaylinks
Welcome to the first Monday Links of 2023. These are five reads I found interesting last month. This time, I found software methodologies was a recurring theme these days.
Why I’m Glad I Lack Passion to BE a Programmer
After a couple of years of working as a software engineer, I started to embrace simplicity. Software exists to satisfy a business need. Perfect software only exists in books. That’s why I started to see the big goal and only use libraries/tools/concepts when there’s a compelling reason to do so. Not all applications need to use Domain-Driven Design with Event Sourcing.
I liked this one: My ideal for software development is to find the simplest solution to the practical problem. I’m not a passionate programmer anymore either.
11 Laws of Software Estimation for Complex Work
I can relate to this story. It happens to a friend of a friend of mine. One day his CEO came saying he just closed a really big deal but he didn’t know what they were going to do. Arrrggg!
Apart from a relatable story, this post contains 11 rules about estimations. Like all estimations are simply guesses and by the time developers have enough information to give more accurate estimations, close to the end of a project, it’s already too late.
User Interface Design: 5 Rules of Thumb
This article contains some basic principles to design good UI. I don’t like those “are you sure you want to do something?” messages. It’s not a good idea based on this article.
Why Do Many Developers Consider Scrum to Be an Evil Scam?
Like any widespread idea, it gets perverted over time. I’ve been in teams where SCRUM is only adopted to micromanage developers using daily meetings. And the next thing you know is that daily meetings become a narrative of how busy developers are to avoid getting fired.
Why don’t software development methodologies work?
This is an old article I found on Hacker News front page. It showed, years ago, what everybody is complaining about these days. You only need to visit Hacker News or r/programming once every month.
I’ve been in small projects with no methodologies to larger projects with SCRUM as religion. I’ve been there.
I like this paragraph from the article: “My own experience, validated by Cockburn’s thesis and Frederick Brooks in No Silver Bullet, is that software development projects succeed when the key people on the team share a common vision, what Brooks calls ‘conceptual integrity.’“
Apart from the main article, it has really good comments. This is one that resonates with me about the one methodology:
“A single technical lead with full authority to make decisions, with a next tier assistant, associated technical staff, and a non-technical support person. the achievement of the team is then determined by the leadership of the team. the size of the team and project complexity is then limited by the leader and her ability to understand the problem and assign tasks.”
For me, the most successful project are the ones with a small team who knows each other, and everyone knows the main goal and what to do.
Voilà! Another Monday Links. Do you consider yourself a passionate developer? What’s your experience with software methodologies?
In the meantime, don’t miss the previous Monday Links on 40-year Programmer, Work and Burnout.