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

My only issue with this idea is "till it hurts" or "until it becomes unworkable" may be a threshold that's hard to notice. If you're building a website just by copying and pasting html as described in the article rather than say using a simple template system you may introduce typos, lose sync between changes across pages, etc. without realizing. "Automating" copying, for example, your header html across pages isn't just about convenience, it's about consistency.


It's true. And, the sweat-hours poured into doing things "manually" might all be wasted once you automate.

Worse, you might literally doom your project -- once you're doing things the "painful, manual" way for too long, the effort required to correct course might be too great for the project to survive.

And yet...

I still think simplicity is worth striving for. "Manual till it hurts", radical simplicity, YAGNI, etc. All of it.

There are paths to failure there, but there are plenty of paths to failure when we overcomplicate/overautomate from the start too.


Yeah, I think this is a real problem for developers. Nobody gets into software development without a pretty high pain tolerance. I think the tricks here are a) developing a sensitivity to particular kinds of pain (e.g., duplication), and b) accepting that you'll have to push through a different sort of discomfort (e.g., refactoring toward DRY code) to avoid it in the long term.


you shouldn't have to copy paste html. any backend language you use probably has templates


FWIW, templates imply generation, which implies a build system (even if it's as simple as make or even a bash script).

At least that's how I interpret the lack.


No, there are tons of PHP/ERB/etc style templates that do dynamic server-side rendering at request time.

There are obvious tradeoffs involved there, but I suspect the majority of web traffic is still served that way.




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

Search: