Skip to content

Instantly share code, notes, and snippets.

@solnic
Created October 15, 2013 17:48
Show Gist options
  • Save solnic/6995639 to your computer and use it in GitHub Desktop.
Save solnic/6995639 to your computer and use it in GitHub Desktop.

Too long for a tweet...so, I tweeted this:

"One trend I'm observing is a lot of rubyists being fed up with messy ruby ecosystem are getting excited or even switch to clojure."

People asked me to comment further, so here it goes. First of all I said I'm seeing a trend, which is a fact. I know people who are learning Clojure (and other languages like some people pointed out) hoping to switch from Ruby or they even already left Ruby. Those people got tired of something I called "a messy ecosystem". Maybe not the best selection of words, I dunno. I meant that some people, myself included, find ruby ecosystem - which consists of multiple VMs, practically one web framework and a gazillion of libraries from which huge amount are only semi-working - to be a mess where it's hard to pick up a solid stack to solve bigger problems.

I really don't have time (which is a shame) to come up with some specific details. I could maybe only quickly describe what we're dealing with now at gitorious.org which is being upgraded to rails 3 and ruby 1.9. Guess what, MAJOR issues with encoding. Suddenly we need to find all the places where some string has to be force-encoded to utf8. It used to just work™. Now it doesn't. What gives? I dunno, it's a mess.

It's probably not the best example I could come up with but it is our current struggle. I'm pretty sure a lot of people are having all sorts of problems because of the messy tools/libraries/frameworks that they decided to use.

That's why I'm excited about Rubinius (X or not, doesn't matter) because I hope to see a rock solid ruby vm that doesn't have the problems we've been facing when using MRI. I also hope to see a more reliable "stdlib". I also hope to see more small libraries that are used to build rock solid tech-stacks that is not called Rails.

I would love to write more but I gotta go :)

We can continue in comments if you want.

@ku1ik
Copy link

ku1ik commented Oct 16, 2013

@skade we're dealing with messy data in Gitorious, that's exactly the case. And 1.8 wasn't giving a shit about it, so there's that.

The mess can also be observed by the amount of people failing to setup simple Rails apps on their servers. During last week I've seen 2 cases of a Linux admin (a decent ones) trying to do that and they both failed. The app was reasonable simple with almost no moving parts. But they were struggling with bundler, missing libraries/headers (for native extensions), unicorn/passenger etc. I don't have problems with setting up any Rails app because I'm in it for 7 years now. But it amazes me that the skilled administrator who has installed and configured hundreds/thousands of apps in his live struggles with running Rails in 2013.

Re python2 -> python3. It's not the same situation as ruby 1.8 -> 1.9. Python3 is a separate language. At least they announced it as a "new, non-backwards compatible language". While the 90% of the syntax is the same the stdlib changed in a major way. And the fact the migration takes so long is probably because they are not in a rush to migrate (python2 isn't going anywhere yet afaik).

@skade
Copy link

skade commented Oct 16, 2013

@solnic I agree with Rails getting more and more unwieldy. It requires a lot of deep knowledge to push and turn the right buttos and knobs and implicitely relies on a lot of things nowadays.

On python2->3. Let's frame it another way: Ruby has been a surprisingly stable language, conceptually. Any concept (and almost all syntax) you learned in Ruby 1.8 is still valid today in 2.0. So I wouldn't even accept that Ruby 1.8 and 1.9 are incompatible in all regards.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment