4 ms·
Django aside, I think this is a really important point: Being able to abandon a project for months or years and then come back to it is really important to
by interroboink 8mo ago
Django aside, I think this is a really important point:
Being able to abandon a project for months or years and then come back
to it is really important to me (that’s how all my projects work!) ...
It's perhaps especially true for a hobbyist situation, but even in a bigger environment, there is a cost to keeping people on hand who understand how XYZ works, getting new people up to speed, etc.
I, too, have found found that my interactions with past versions of myself across decades has been a nice way to learn good habits that also benefit me professionally.
- simonw 8mo agoThis is the main reason I'm extremely disciplined about making sure all of my personal projects have automated tests (configure to run in CI) and decent documentation. It makes it so much easier to pick them up again in the future when enough time has passed that I've forgotten almost everything about them.
- sriram_malhar 8mo agoI'm finding that in this build fast and break things culture, it is hard to revisit a project that is more than 3 years old. I have a couple of android projects that are four years old. I have the architecture documented, my notes (to self) about some important details that I thought I was liable to forget, a raft of tests. Now I can't even get it to load inside the new version of Android Studio or to build it. There's a ton of indirection between different components spread over properties, xml, kotlin but what makes it worse is that any attempt to upgrade is a delicate dance between different versions and working one's ways around deprecated APIs. It isn't just the mobile ecosystem.
- alansaber 8mo agoBuild fast and break things works great if you're the consumer, not the dev polishing the dark side of the monolith (helps if you're getting paid well though)
- dotancohen 8mo agoAs a consumer, I can not remember any feature that I was so enamored about having a week earlier than I otherwise would have, at the expense of breaking things.
- alansaber 8mo agoThe point is that companies don't actually know what consumers want so a volume / meandering approach is required
- wink 8mo agoI have relatively good experience with both Rust and Go here. It still works and maybe you need update 2-3 dependencies that released an incompatible version, but it's not all completely falling apart just because you went on a vacation (looking at you npm)
- appplication 8mo agoTotally relate. My main project lately is for my wife, and it’s absolutely rock solid from a testing/automation standpoint. The last thing I want to do is accidentally break something and give her a headache when i’m just trying to build her a nice thing that brings her joy.
- agumonkey 8mo agoDo you preemptively force yourself to allocate time for documentation maintenance ?
- simonw 8mo agoNot really. I have a rule that any commit which changes the implementation has to include the documentation update at the same time. Most of these documentation updates are a sentence or two, or maybe a paragraph. The overhead of incremental documentation updates like that is tiny enough that I don't really think about assigning extra time for them.
- agumonkey 8mo agoAlright, thanks a lot. Gonna help me improve my workflow :)
- perrygeo 8mo ago> (configure to run in CI) Every time I've believed this, I came back to broken CI. Depending on your language ecosystem, your CI workflows and build deps stand a greater chance to break than your code.
- simonw 8mo agoThe main thing that breaks for me is that GitHub Actions drops support for Python versions that are EOL, but usually I can fix that with a change like this one: https://github.com/simonw/datasette-scale-to-zero/commit/1ae0ed2771e9a1a490f857cbaccd049586d9697e https://github.com/simonw/datasette-scale-to-zero/commit/1ae...
- dgroshev 8mo ago"Cold-blooded software" is a great term for that https://dubroy.com/blog/cold-blooded-software/ https://dubroy.com/blog/cold-blooded-software/ (HN: https://news.ycombinator.com/item?id=46488261 https://news.ycombinator.com/item?id=46488261 )
- skylurk 8mo agoIf you know what you are doing, you can hibernate other kinds of tortoises by placing them in a fridge (as opposed to a freezer). One of my friends does this with their Russian tortoise. If you need to travel, make sure you have someone reliable who can check on them, in case of a power outage.
- bigbuppo 8mo agoThis is also why I write a formal requirements document for all but the smallest throw-away projects. Much easier to know wtf you were thinking 18 months ago if you write down wtf you were thinking at the time.