Remix.run Logo
arp242 7 days ago

Well, the "solution" ended up as "I gave up and just installed an old Node version and called it a day". So those 2 hours weren't even enough.

I've been using Jekyll/Ruby since 2014 for my website, with a few custom plugins I wrote myself. And I've never really needed to do anything like this. It "just works".

My Go and C programs are the same: "just works". I have some that are close to a decade old.

pzmarzly 7 days ago | parent | next [-]

Good for you, my experience with Jekyll is closer to OP's experience with Node. I have a big website that I built in 2014, with tons of custom plugins, that is now stuck on Jekyll 2.x and Ruby 2.x, and has a ton of hidden C++ dependencies. The way I build it now is using a Dockerfile with Ubuntu 18.04. I probably could update it given enough effort, but I was rather thinking of rewriting it in Astro.js or Next.js.

rahoulb 7 days ago | parent | next [-]

This is the issue I have with the "build vs buy (or import)" aspect of today's programming.

There are countless gems, libraries or packages out there that make your life easier and development so much faster.

But software (in my experience) always lives longer than you expect it to, so you need to be sure that your dependencies will be maintained for that lifetime (or have enough time to do the maintenance or plug in the replacements yourself).

ohthatsnotright 7 days ago | parent | prev | next [-]

If you're looking for a stable target you should not even consider Next.

jmathai 5 days ago | parent | next [-]

Just avoid JavaScript frameworks altogether.

7 days ago | parent | prev [-]
[deleted]
otabdeveloper4 3 days ago | parent | prev [-]

Yes indeed, that is the solution to modern IT problems - never update your Ubuntu 18 containers and you're set.

(Wish I was joking, but sadly I'm serious.)

jeberle 7 days ago | parent | prev | next [-]

Not sure if I'd call out Jekyll as a paragon of stability. The last time I touched it, I made sure to write up detailed notes. In fairness, it's the only time I interact w/ Ruby.

https://jeberle.github.io/jekyll-setup

arp242 7 days ago | parent [-]

Those mostly seem the standard Ruby/Jekyll/GitHub Pages setup instructions?

I don't love how bundler works by the way; I think it should/could be a lot better in many different ways. Same for Jekyll. But once it works, it generally keeps working.

I don't think Jekyll (or Ruby) are a paragon of stability. I'm sure some stuff has broken over the years. It just seems to break a lot less than the JS/Node ecosystems.

wink 7 days ago | parent | prev | next [-]

I dug out a small Rust project from 2016 and with edition = 2018 I got it running again in under 30 minutes, I was kinda surprised. 8 years is ancient in terms of Rust. I have had more problems with certain other crates. But yeah, C/C++ usually don't really compare. 5 years is nothing, it should just work. For Go the big breaking moment was modules. All my pre - 2016?ish code would need some work.

c0balt 7 days ago | parent [-]

Rust is kinda like c++ here, it's easy until you have a library that has external, non-vendored dependencies.

Aeolun 7 days ago | parent | prev [-]

Every single time I clone anything Go, I first spend a few hours sorting out dependency issues.

segfaltnh 7 days ago | parent [-]

This shocks me, what sort of issues do you hit?

fredrikholm 7 days ago | parent | next [-]

+1 on this. I've been using Go almost exclusively for the last 5 ish years partly because this sort of thing never happens.

thrw42A8N 7 days ago | parent [-]

You lucked into the period when they solved the issues. If you need to work with older projects and can't easily convert them, you're going to have a bad time.

popcalc 7 days ago | parent [-]

I open up random Go projects from a decade+ ago every week with no issues.

thrw42A8N 7 days ago | parent [-]

Lucky you, then. I open them every week too, but definitely not without issues.

Aeolun 7 days ago | parent | prev [-]

Mainly weird issues of incompatible dependencies, maybe sometimes something that won’t compile because it’s missing a system dependency? I also feel like it sometimes pulls a newer or older dependency that is the missing some used module.