Hacker News new | ask | show | jobs
by jerf 1051 days ago
Yes. Everything like that now that can just run whatever it wants I run in Docker. May not be perfect but it'll defend against most of what I've seen.

Also a decent solution to this problem, it turns out.

1 comments

I'm of a similar mindset... Docker dev environments are only slightly inconvenient, but much like a full VM, having exactly what you need, and the versions is kind of nice sometimes... especially working on differing projects.

Aside: it's a blessing and a curse how many projects don't get curated/groomed regularly for updates/upgrades. I think it should be a day or two a month to update dependencies and runtimes to current. I've now been on a handful of projects in the past year with versions of resources pinned from 3+ years ago. It's disturbing.

> I think it should be a day or two a month to update dependencies and runtimes to current.

And how long to validate the updated dependencies don't break anything?

Usually have pretty good test coverage, I've tended to suggest setting aside one day a month to update all project(s) and dependencies, much like Systems Admins will often do the same (more) for system updates.

Most of the time, the updates don't require code changes, so it's maybe an hour, then tests, smoke tests, test/uat pass and release, like any other more significant frequent release ci/cd cycle. About twice a year, it may be deferred for a couple days, if there's a major library update with breaking changes. In those cases, new story(ies) go into the top of the backlog to handle it as a higher pointed change.

Not every environment will follow the above... which is how you see projects with multi-year old dependencies, sometimes 2+ major releases behind. IMO, it should be considered the same as ceremonies and planning, it's just part of the lifecycle. That it doesn't get treated as such is the issue.