Hacker News new | ask | show | jobs
by digisign 1510 days ago
Ruby has been on the downswing for a while, getting squeezed from all sides from the meteoric rise of Python on one side, JS/Typescript on the other, to higher performing static languages on another:

https://octoverse.github.com/#top-languages-over-the-years

It also has a funky syntax, while not a big deal, doesn't do it any favors in a C --> Javascript world. Django, golang, etc. are free. I don't recommend starting new projects in ruby, but as always YMMV.

3 comments

Your comment about "funky syntax" is meaningful.

I have found that people from the world of Java and similar c-style syntaxes, and especially strongly typed languages, have a sort of allergic reaction to Ruby. The reverse is also often true.

This is a matter of personal preference that actually tells nothing about what any of those languages might be good for.

Ruby/rails is less popular than it once was but it's still pretty popular. It's worth considering if you are open to the style of programming it uses. But if you love the c-style syntax, yes, you'll have problems getting used to Ruby and should try something else.

This is the right answer. Yes people still write on rails but in my experience it’s because they haven’t used other tools.

I had a couple die hard rails members at my last company who claimed nothing was better. We made them write Go for a year and now they are die hard Go fans.

If I were writing a web app I would start with Go. It’s a great language that’s easy to learn and fast to write, with all the security of static compilation. It scales exceptionally well with large teams

I've never understood the Go / RoR comparisons. If someone goes from being a die-hard Rails fan to a die-hard Go fan, that feels very much like they're choosing their tools based on fashion / fandom vs. picking the right tool for the job.

Go and RoR couldn't be more dissimilar from each other. One is a relatively slow language with one of the most full-featured and robust frameworks available today, and one is a very fast language with relatively minimal tools for building web applications. The types of projects they're suitable for are completely different

I'm a die hard Ruby guy and now writing some Go and I pretty much hate it. I don't really care for performance or compile speed, I could barely care less. I want a good web framework with tons of community support and a language that lets me easily express my thoughts into code. I'm not getting that with Go.
Well said. I've been a great fan of Clojure for a long time but what stops me from using it for clients is the attitude in the Clojure community that libraries are favoured over frameworks. That's not to say there aren't a few web/REST frameworks in Clojure-land but they are invariably the product of a few individuals with no community support. And they wonder why Clojure has negligible adoption.
Go is great until you need to interface with a C library via cgo then you are in a world of pain with segfaults and the general mismatch between goroutines and C's ideas about concurrency.
I think the server side rendering part of rails has largely become obsolete but the api backend side of rails is still going strong. Some day other things like rust might replace it but I don’t see that happening any time soon.
Hmm, SSR is used quite often, it has just reached the boring stage. Also, rust is too BDSM for rapid CRUD building needs.
Obsolete is probably an overstatement but its in decline IMO. The last few companies I have worked at have moved away from SSR which seems to reflect a wider industry trend. I have worked mostly in enterprise web apps which client side rendering suits better which might have some bias.
If anything, I've seen the start of the reverse happening. The warts are starting to show on the pure SPA approach, and people are either finding ways to do more SSR with the SPA tools, or taking new approaches like LiveView in Phoenix or Hotwire in Rails to provide richer experiences while still generating HTML on the server.

The heyday of "SPA is the right approach for everything" feels like it peaked at least a few years ago.

Your sample is hardly representative. The big-league Node frameworks are all SSR-based due to the problem presented by pure front-end SPAs. Have a look at Next.js and Remix.