Classic SE Mistakes (1996)
cs.nmsu.edu
cs.nmsu.edu
Can we change the (2021) to (1996) please?
“Classic Mistakes”, Steve McConnell https://stevemcconnell.com/articles/classic-mistakes/
> Please submit the original source. If a post reports on something found on another site, submit the latter.
(I also didn’t realize that the content didn’t match. Mea culpa.)
> Here are my nominations for software’s top 12 classic mistakes.
Additionally:
> To make the list of classic mistakes even more useful, in 2007 Construx consultants update the list of Classic Mistakes based on Construx’s work with hundreds of clients since 1996. The following mistakes were added:
- Confusing estimates with targets
- Excessive multi-tasking
- Assuming global development has a negligible impact on total effort
- Unclear project vision
- Trusting the map more than the terrain
- Outsourcing to reduce cost
- Letting a team go dark (replaces the previous “lack of management controls”)
These additions and changes produced a total of 42 classic mistakes.
Construx then conducted a survey to determine how frequent and how serious these classic mistakes are.
“Software Development’s Classic Mistakes 2008”. (PDF) https://www.construx.com/wp-content/uploads/2020/04/CxWhiteP...
I really do wonder why this point hasn't led to outright abolishment of open-plan offices.
Their entire job revolves around communication with various different people around the office. Rarely ever does such a job demand focus time.
They are also typically extroverts who feel energized in a bustling office.
I assume that if you are coming from Computer Science background you are not so caught up on making everyone aware that what you're doing is Engineering, so Software suffices.
> #34: Overestimated savings from new tools or methods
Yep, time and time again.
https://web.archive.org/web/20021231112332/http://www.stevem...
Employee A: Yes sir! I'll get right on it!
Employee B: I don't know, boss. This is basically a pretty well studied problem called the halting problem, and I'm not sure we'll be able to build this all too easily even if we try really hard...
I think most real-world business processes can be proven to halt, assuming inputs are finite.
(When was the last time you wrote a while or repeat until loop, or a recursive function that didn’t iterate over an input?
Iterating until a convergence criteria is met is fairly common in numerical calculations.
It's also fairly common when dealing with graphs that may not have a beginning or an end in a conventional sense. PageRank does both of these things, for example.
My current hobby horse/reductionist take on almost everything in life is that we are great at identifying problems and trash at fixing them.
Every single one of these points is still incredibly relevant today.