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

"Very smart" probably means different things to different people, but, for me, it means proactive laziness: the ability to foresee anything that might create repetitive work in the future, and work now to prevent that from happening.

So I can't regard a programmer as being "very smart" if he or she doesn't have the ability to abstract over every recurring pattern in his code, and turn it into a nice reusable library. And I also can't regard a programmer as being "very smart" if he or she designs abstractions that leak: in my experience, abstraction leaks create more work than anything else.



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

Search: