Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I try really hard to not take a left vs right view in software design.

I sometimes build systems that are overengineered and I sometimes build systems that are underengineered.

I do believe that every line of code, every function, every class, every comment, every test, everything, is like a puppy that you have to take care of.

If a team adds a "dependency injection framework" that adds a parameter to each and every constructor in a system that has 800 classes, which that's a real cost that's going to make doing anything with that system harder.

I'm a big believer in "cogs bad" because I've seen large teams live the lesson.

From my viewpoint the perfect system is as simple as possible, but well engineered.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: