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

Even as a solo developer, I can swear by decision logs, test and documentation, in that order. I personally keep a "lab notebook" instead of a "decision log" which chronicles the design in real-time, which forms basis of the tests and documentation.

Presence of a lab notebook allows me to write better documentation faster, even if I start late, and tests allow me to verify that the design doesn't drift over time.

Starting blind-mindedly for a one-off tool written in a weekend maybe acceptable, but for anything going to live longer, building the slow foundation allows things built on this foundation to be sound, rational (for the problem at hand) and more importantly understandable/maintainable.

Also, as an unpopular opinion, design on paper first, digitize later.



Right, an important part of keeping in mind other future developers working on your codebase. You 6 months later is that other developer once the immediate context is gone from your head. :)


That's very true. I like to word this a little differently:

> Six months ago, only I and God knew how this code worked. Now, only God knows. :)




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

Search: