Ask HN: Is it true good programmers are "lazy"?
8 comments
Yes, but in a more holistic way than we normally use the word.
Good programmers will minimize the time they spend over the lifetime of a project. This is why you don't optimize prematurely, to avoid wasting time when you already have a solution that is good enough. However, the same programmer will then be diligent about writing modular, easy-to-read code, so that editing and refactoring will be as simple as possible.
Relevant - http://paulgraham.com/goodart.html
Good programmers will minimize the time they spend over the lifetime of a project. This is why you don't optimize prematurely, to avoid wasting time when you already have a solution that is good enough. However, the same programmer will then be diligent about writing modular, easy-to-read code, so that editing and refactoring will be as simple as possible.
Relevant - http://paulgraham.com/goodart.html
No. I work a lot, but I make sure to automate a lot of work. Basically, just automate what you can, look for ways to automate what you can't, and keep working towards automating everything. :)
The best programmers are quick, efficient and clean. Work smart not hard I say. There's a great Tim Ferriss quote: 'Being busy is a form of laziness - lazy thinking and indiscriminate action.'
Lazy is never a word I would associate with someone who is motivated enough to be a good programmer in the first place.
The best programmers are lazy, because they spent a lot of time on their life thinking how they could automate things.
They don't just accept how algoritms from life are. They think how they could improve all the time, that is more than a normal programmer will think just while in the work in optimization
They don't just accept how algoritms from life are. They think how they could improve all the time, that is more than a normal programmer will think just while in the work in optimization
What he meant is that lazy programmers will make the effort in the short term to make their work more accurate (as in meeting the requirements), more bug-free, more robust and more scalable in the long term. So over time they end up doing less work and far less drudge work. So he was talking about a rather creative form of laziness.
Some of the useful techniques I learnt were like writing scripts to automate tedious steps. Writing macros to render the code clearer. Writing small DSLs (mostly a *nix concept) to raise the levels of abstraction to better align with the domain.