Hacker News new | ask | show | jobs
by Deestan 5949 days ago
This is a project management problem, not a problem with too smart developers.

The problematic activities described here, overgeneralization and solving imaginary problems (aka Coding for A Rainy Day), are simply typical newbie mistakes.

Otherwise highly competent developers almost always fall into this trap early in their careers, so the important thing is to have someone experienced in charge of the project who can veto their weirder ideas until they mature.

I think every software company should hand out a copy of "The Pragmatic Programmer" to all new hires. It gives much good advice on how to not overcomplicate things.

2 comments

Three of the Stages Of Programmer:

- Designing too much flexibility at the start of a project and regretting it when it takes ten weeks to build a prototype.

- Designing too little flexibility at the start of the project and ending up living with unmaintainable cruft.

- Realizing that all projects are hell and planning on a rethink/rewrite/refactor when the real requirements become clear because no one can predict the future, so why not hold some contingency for the inevitable.

Actually, EC had a couple of rather sharp project managers who unfortunately were never really given enough authority to overrule the bulk of the engineering team. EC as a company was the poster-child for "too many mad scientists, not enough hunchbacks." The items Chip describes as being worthwhile Ph.D. thesis projects had their own color on the PERT chart (purple I think...) -- if that is not a sign of impending doom I don't know what is. OTOH, it was great to work with a huge collection of smart folks valiantly trying to impose their vision on the world.