Hacker News new | ask | show | jobs
by bcit-cst 3570 days ago
I think ruby/rails are right there after java.
1 comments

I will never voluntarily allow Ruby into any stack I control or work on ever again.
I would love to hear why. Also, which stack/language would you choose?

Rails left a bad taste on my mouth after using it for one project. Many things about Rails are wonderful, but it feels like the entire project is in shaky ground with so many dependencies. Memory usage and performance aren't nice either.

Python sounds tempting, but I want to avoid dynamic typing if possible. That rules out Node (not that I would like to work with js).

That leaves me with either Java and .NET, which have the taboo of being enterprisey.

Are those the only major players?

These are just my opinions. I tend to state them forcefully, but they're not really anything but my idea.

I don't like Ruby because it hits a sour spot for me. It used to be very cutting edge, but then stagnated. It has all the problems of a dynamic language, but nothing to really offset it. Its tooling is fairly good for assembling new projects, but not maintaining them.

I think if I went somewhere today, on the spot.

1. FSharp & C#. The .NET Core stuff is exciting. I view, "enterprisey" is just, "I have libraries for lots of things I don't want to solve like calendaring." So long as I can quickly develop and deploy code, those kind of social things are immaterial. People worry about .NET core performance even as they ship Node code, so I find that concern somewhat manufactured.

2. OCaml, in the same vein as F#, but I think this lacks a lot of ecosystem stuff so I suspect it will always be secondary.

3. Go or Rust. I could just bite the bullet and do it. It's doable, it just requires a lot of thought.

1. so i love .Net ecosystem and have been using ASP.NET since webforms 3.5. But in no way do I believe microsoft will be supporting dot net core stuff 5+ years down the line. I know its opensource but ms is the only major player that is actively developing it right now and after the Oracle/Android debacle I don't think other big players want to try it.

2/3) I think the communities are way too small.

So if you are in the Linux world and want to work on Back end . Then Java is your only options. You can mix in groovy/kotlin/scala to make dev less painful .Look at dropwizard and play framework the are an improvement on JSF/JSP/Spring mess.

I think the Oracle/Android debacle is why people should move from the Java ecosystem. Oracle has demonstrated that they'll countermand the spirit of the Java ecosystem and license any way they can if they think it's valuable enough.

It's a tax on success they want to impose. They want to turn Java into the same business model as their databases.

pretty much.
One of our systems is based on Ruby/Rails. There are things that I like about it but in general I think there are better alternatives.

Pros:

* Code readability

* Concise syntax

Cons:

* Ruby doesn't perform as well as many other languages.

* There is a cultural tendency among Rails devs to rely on a large number of gems. This creates dependency hell, especially a few years down the line when some libraries are not actively maintained.

* Unicorn is not the easiest server to manage. However I have to admit that I haven't tried any alternative, there might be better servers in the Ruby world.

You accidentally put "readability" in the Pros column, fyi.