Live data from Hacker News

Twitter survives election after Ruby-to-JVM move

theregister.co.uk

21–30 of 179 posts

Re: Twitter survives election after Ruby-to-JVM move

#21
post #20

This move marks the beginning of the end of a four year long effort for Twitter to rid themselves of Ruby. History will remember the entire Ruby industry as a series of compounding failures. The de facto formalisation and specifications. The black-box behaviour of core development. The broken-linked, un-versioned docs. The rampant cargo-cult mentality. The arcane exceptions. The meta-frameworks. Gem hell. 1.9/2.0 Rai…

> History will remember the entire Ruby industry as a series of compounding failures. This is a bit dramatic. Despite its faults, the language and community around it have been quite a success story. It's had a huge and positive influence on the web development world.

[deleted]

Re: Twitter survives election after Ruby-to-JVM move

#22
While I can agree that scala/java/jvm deserve some credit for this (typing, concurrency support), I think stories like this do a disservice in that they underestimate the importance of building a system a second time with all the lessons learned the first time around.

This is not unlike those stories where a developer writes a trivial program in a new language that is similar to a trivial program they wrote in another language 1+ years prior and compare the results. "I wrote program foo in 30 lines of code in language X, which is much better than the 120 lines of code it took me in language Y two years ago". It's natural for a developer to write a shorter program two years later since they have 2 more years under their belt. In fact I'd expect the same program to be much better two years later even if written in the same language.

Re: Twitter survives election after Ruby-to-JVM move

#23

Would have been nice if the title was "Twitter survives election after Ruby-to-Scala move", since that's what actually happened. (They do use a bit of regular Java, but the majority of the core code is Scala, and it's Scala that should be getting the top line credit here, not Java.)

No. It is the JVM that should be getting the credit.

If that were the case, they could have just run JRuby and avoided rewriting a bunch of code.

The truth is, Scala is actually helpful with the architecture they came up with AND its great that it runs on the JVM.

Re: Twitter survives election after Ruby-to-JVM move

#24

The novice programmer says: "My language is better than yours." The wise programmer says: "Use the right tool for the job." Please HN, we're wiser than trending stories would suggest.

The wise programmer rewrites his stack in another language to scale right?

Re: Twitter survives election after Ruby-to-JVM move

#25

This move marks the beginning of the end of a four year long effort for Twitter to rid themselves of Ruby. History will remember the entire Ruby industry as a series of compounding failures. The de facto formalisation and specifications. The black-box behaviour of core development. The broken-linked, un-versioned docs. The rampant cargo-cult mentality. The arcane exceptions. The meta-frameworks. Gem hell. 1.9/2.0 Rai…

I'm not a Ruby developer, but I still can't help thinking, "WTF". No technology stack is perfect, but I've yet to meet a stack that was pure evil. There may be some cargo-cult personalities in the Ruby community, but, if there is, it's only because there is value in it. An infinitesimal number of sites have to deal with Twitter's scale problems. The rest can work on getting crap done instead of worrying about Maserat…

Allow me to be withering in my criticism of GP.

Cargo-culting is what you accuse others of when they are learning and you do not like them.

The appropriate way to deal with newbies who do not fully understand the consequences of the decisions they have made (perhaps even while they are advocating others join them), is to explain their rhetorical and technological shortcomings in a way that others can learn from. Accusing someone of "cargo-culting" is just unhelpful character assassination.

Also, weak-sauce.

Re: Twitter survives election after Ruby-to-JVM move

#27
post #9

Twitter's better performance is because of a better architecture than Java language. Further, the performance is from JVM, so you can use any of the JVM language including JRuby to get similar effects. This articles seems more like link-bait to me.

I agree. I think I could write a scalable Twitter in mostly Ruby. And I've never written a line of Ruby in my life.

Have you worked on other sites with a similar scale to Twitter? If not, how would you know?

Re: Twitter survives election after Ruby-to-JVM move

#28
...I never get it why scaling is seen as such a "hot" problem and everybody seems inclined to make language and technology choices based on it ...I bet Twitter could have scaled well keeping Ruby and rewriting performance critical parts in C and maybe keep tweaking and tuning the Ruby interpreter, much along the way the Youtube team did with Python and C and now some Go I hear...

I think their decision was more influenced by the experience of their team of programmers or by employable talent pool - they went the JVM|Java|Scala route because they had people with experience in high level languages and the JVM. If they happened to start with a team with "C hackers" background they would've gone the Ruby|C way and it would've worked as well.

...I think almost any language and technology can (be made to) scale, even to Twitter scale, at least if it's open-source and you have people with the required technology to hack around the internals and recode performance critical parts in lower level languages (basically C, C++ or Go nowadays)

Re: Twitter survives election after Ruby-to-JVM move

#29
post #20

This move marks the beginning of the end of a four year long effort for Twitter to rid themselves of Ruby. History will remember the entire Ruby industry as a series of compounding failures. The de facto formalisation and specifications. The black-box behaviour of core development. The broken-linked, un-versioned docs. The rampant cargo-cult mentality. The arcane exceptions. The meta-frameworks. Gem hell. 1.9/2.0 Rai…

> History will remember the entire Ruby industry as a series of compounding failures. This is a bit dramatic. Despite its faults, the language and community around it have been quite a success story. It's had a huge and positive influence on the web development world.

It's also worth rebutting douchebag trolling with the Ruby community's actual merits.

The Ruby community, really really cares about developer tooling and teaching others. Ruby is also one of the nice places where object oriented programming touches metaprogramming.

Don't forget that a lot of sysadmin work is done in Ruby now. Both Puppet and Chef are written in Ruby, and that Github and Heroku both came up out of the Ruby community.

Re: Twitter survives election after Ruby-to-JVM move

#30
post #24

The novice programmer says: "My language is better than yours." The wise programmer says: "Use the right tool for the job." Please HN, we're wiser than trending stories would suggest.

The wise programmer rewrites his stack in another language to scale right?

The wise programmer does not write programs. Therefore, the wise programmer does not exist.
Post reply on HN