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

I find that it comes most from intelligence. I see plenty of super experienced but not very smart engineers design terrible over engineered systems. On the other hand, juniors err in the opposite direction with long functions with deep nested branching and repetition. And the latter is better. Easier to refactor up in abstraction level than down.


the latter is not better though, it's terrible actually, deep nesting is the essence of cognitive load


Perhaps I'm confused, but it seems to me that your examples actually support my point. You're describing experience-based patterns - seniors over-abstracting vs juniors writing tangled code. Neither case is about intelligence; they're about different types of inexperience leading to different design mistakes.




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

Search: