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

I think it is laziness, but the appropriate kind. I am willing to work harder now, in order to be lazy later. I am so lazy, I do not ever want to manually test a function. Therefore, I write automated tests to enable my laziness. I am so lazy, I do not want to remember caveats on how a function works. Therefore, I do my best to make an interface be hard to use incorrectly.


Well this kind of laziness seldom comes at an advantage in the modern workplace? I mean there's always more work so working hard now doesn't equate to working less later. Unless you're an entrepreneur building your own product.


Sure it does. If you work with people who don't automate then every time you finish a piece of automation you can slow down your pace a little and still be faster than the people doing stuff manually.


The reward of work well done is more work and shorter deadlines, something well known as early as 1987.

At some point you stop trusting that you can spend time on making better tools and just surrender to the tedium.


The thing with tests is that the effect is indirect, and you won't really realize how much time is not wasted down the line.

That time could apply to your whole department / the people you work with. In worst cases, that time is saved by there not being a rewrite of the application down the line.

(disclaimer: I'm currently rebuilding an application because the existing codebase is a mess, a web-based UI built in mid-2000's technology in the 2010's by a C developer who never seems to have learned basic code quality / craftsmanship or web development practices. It can probably be salvaged but it'd a lot of work (160KLOC) with little gains compared to rebuilding it in a modern stack)


This is the correct sort of laziness.




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

Search: