Hacker News new | ask | show | jobs
by about3fitty 265 days ago
To add to this, engineers consider tradeoffs.

You might choose to add comments and let the logic unfold in a less succinct way in order to improve readability and understandability.

You might also consider your colleagues’ limited cognitive reserves, some of which could be spent on more important issues.

1 comments

100% this. I'm increasingly of the opinion that "ability to evaluate how often/extensively a chunk of logic may need to be changed in the future; and to design accordingly" is one of the most underrated skills in software development:

* If it's "write once, run a few times, discard", go ahead and throw together whatever you want

* If it's "write once, run a bazillion times at the very core of your logic with very few changes over time", optimize for efficiency over legibility

* If it's going to be written and rewritten and evolved and tweaked many times, optimize for readability and flexibility