Hacker News new | past | comments | ask | show | jobs | submit login

It could also be inexperience.

If your experience is limited to academic projects, grinding leetcode, even competitive programming, you've done things where first one is nearly always optimal.

Once you are on a team optimizing for continued feature delivery over time, the cognitive load of picking up and understanding old code full of raw maps and strings starts to justify the overhead of a bit more semantic scaffolding in places.

IMO the necessary judgment has to be learned even by smart, academically talented people.




As someone getting close to 50, inexperience also seems to correlate with the ability to hold more in short term memory.


Agreed. Same age, same experience.

I'm also finding myself more allergic to unnecessary code complexity / non-standard designs, because they impede my ability to work with the code base.

It's still a little painful to no longer be the smartest person in the room, but I think it makes me a better champion for regular programmers who will need to touch the code.


I may not be the "smartest" in the room in terms of raw compute power of my brain, but as a result I'll write better code (more maintainable, easier for the next dev to understand). I want my code to be easy to follow. One of my personal rules I have through experience, is if I revisit a bit of code that I wrote a while ago, and I can't understand it easily, it's probably time to refactor it.


I've rarely worked in a team where the extra scaffolding was ever worth it. In fact chasing the scaffolding scattered through varied files through the filesystem was a lot trickier usually than fixing the actual bug I was trying to fix.


Design pattern spaghetti is absolutely a thing.

I feel like self-contained, self-describing, potentially self-validating data types like in the parent comment would tend to be complexity-reducing as long as they don't mix in control flow or deep deep inheritance hierarchies, though.




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

Search: