Remix.run Logo
arp242 7 months 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 months 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 months 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 months ago | parent | prev | next [-]

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

jmathai 7 months ago | parent | next [-]

Just avoid JavaScript frameworks altogether.

7 months ago | parent | prev [-]
[deleted]
otabdeveloper4 7 months 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 months 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 months 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 months 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 months ago | parent [-]

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

Aeolun 7 months ago | parent | prev [-]

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

segfaltnh 7 months ago | parent [-]

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

fredrikholm 7 months 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 months 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 months ago | parent [-]

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

thrw42A8N 7 months ago | parent [-]

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

Aeolun 7 months 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.