Live data from Hacker News

Rails Has Turned into Java

discursive.com

81–90 of 160 posts

Re: Rails Has Turned into Java

#81
Cheapshot: Rails HAS turned into Java, in so much both are riddled with security holes.

Longer-term view: Rails mocked the Java web eco-system in the early days because it was 'Enterprise', and Rails was the scrappy upstart with magic commands to scaffold a blog in 5 mins and show screencasts to the world. This sold a lot of books (without it would Pragmatic Programmer have even had a book store?). Slowly, the rot set it, and the once light and nimble Rails become bloated as everyone added their pet features, their design pattersn (even though they would never call them that - that is so Java!), and the too-many-cooks-in-the-code-kitchen sprinkling so much magic and syntactic sugar around the codebase it practically causes diabetes.

Rails solved a problem for the company that wrote it. Since then people have been trying to shoe-horn it work with their business problem, and then found once they now have two problems.

The rest of us moved on.

Re: Rails Has Turned into Java

#82

The pushback against Ruby/Rails has been building for a long time. There's always been jokes about Ruby being slow: http://harmful.cat-v.org/software/ruby/ But there was a stretch from around 2005 to maybe 2008 where Rails seemed to defy criticism. It grew and grew, despite the criticism. I tried it for a project in 2006 and I became a fan. The easy use of 3rd party code, via gems, was much easier than anything I had…

Uhm.

We deployed a new server last night.

`cap staging deploy:setup` `cap staging deploy` `cap staging deploy:migrate`

You do have to know how to setup Unicorn but…

Re: Rails Has Turned into Java

#83
You're doing it wrong! Do not slap frameworks and complexity on top of Rails. Rails' strength has been unchanged from day 1 - "favoring convention over configuration".

Rails is for building web apps. 99% of the world's web apps will work fine with Rails, an RDMBS, a web server. That's about all you need. Anything else is probably just developers wanting to play with the latest toys.

So yes, if you try to avoid Rails' conventions, you will have trouble. But it's not Rails' fault.

Re: Rails Has Turned into Java

#84
post #2

In the year 2013 it is difficult to remember why Rails was such an explosive breath of fresh air, back when it burst onto the mainstage in 2004/2005. The essay that I think best captured the switch in popularity, from Java (and EJBs and Struts, etc) to Rails, was "The departure of the hyper-enthusiasts" by Bruce Eckel, written in December of 2005. He wrote: "One of the basic tenets of the Python language has been tha…

The thing that struck me the most at the time was scaffolding. In the original Rails demo they essentially said, "make me a todo list" and poof, there it was. All you had to do was customize two snippets. It really was amazing.

By Rails 2, they were already saying you shouldn't be using scaffolding. I had sort of realized that scaffolding "wouldn't scale," to misuse the expression; by your second or third app you usually didn't bother with it, instead generating a migration and a model and doing the rest by hand.

I wasn't using Java prior to Rails, but I am using Java now and I would say the essentially disparity between the two at the outset was simply maintenance. Rails didn't have a past to worry about back then. My impression is that it still does a lousy job of handling upgrades—though at least with bundler et. al. they have finally achieved a semblance of stability. I suppose I should be able to check out code written 9 months ago and arrive at a working Rails app. There was a time during Rails 1 and 2 when you experienced real fear that running "gem install" might hose something, or that on a new machine the gems you needed might not even be "out there" on the internet to be installed. Java still goes further on these fronts, and probably always will, since "corporate" technologies will always be about retaining as much of the investment as possible.

Re: Rails Has Turned into Java

#85
post #42

Earlier quoted context omitted.

I think the point is, other systems have now emerged that can reasonably claim to represent the cutting edge of simplicity and ease. Rails held that distinction for several years, it was the reference point people used to criticize or praise other systems. But Rails is no longer the clear leader in ease of use or sophistication of 3rd party libraries. In response to Rails, lots of new languages and frameworks emerged…

Curious, what other web dev frameworks offer a unified stack (ORM, deployment, dependency management, testing, project structuring)?

Offering all of those things is nice, but tightly coupling them all together is where Rails goes wrong many/much of the time.

Re: Rails Has Turned into Java

#86
Actually what's happening is that Rails is turning into MS Access. Access is a product that famously makes 80% of what you want to do incredibly easy, and the last 20% impossible. The Rails ecosystem is growing so that you can, essentially, deploy your own MS Access, with exactly the same trade-offs.

Re: Rails Has Turned into Java

#87
post #36

Flame-bait title if I've ever seen one. Let's see an actual comparison with some numbers: * Lines of code, and number of tasks necessary to get a development environment set up. * Memory used with one client accessing the system, and with, say, 10 clients accessing it. * Some performance benchmarks. I keep my ear to the ground, and have used enough languages in my time that jumping to a new one isn't that big a deal,…

If those are the metrics you care about, then I think you should go with PHP.

Re: Rails Has Turned into Java

#88
post #27
post #7

Earlier quoted context omitted.

"... Java, have you learned to easy yet?" Try Play, Grails, Vert.X. And you know what it isn't easy. Having to deal with Ruby's dependency nightmares.

Right, and I'm calling Grails, Play, Scala, Vert.x Java in that article I wrote. I think a lot of Rails folks walked into a closed box in 2008, and they should have. Rails was hugely different from the alternatives back then. The world has caught up. That's one of the points I didn't quite make very well. Ugh.

That makes sense. The landscape has definitely changed, and you're right, there are alternatives now that didn't exist when Rails was just starting.

I think Rails still has some advantages, and a head start in both development concepts and supporting libraries and frameworks. My point wasn't that Java and its kin are necessarily incapable of these things, just that Rails has had that mindset from the start, and as such deserves the mindshare that it receives.

Re: Rails Has Turned into Java

#89
post #70
post #58

Earlier quoted context omitted.

That's not Bundler's fault. It's the fault of the person who made the versionless Gemfile. There's really no comparison between using Bundler and mucking around with JAR files or Ant scripts in Java. I've even seen Python codebases with a Java-esque rats nest of dependencies that are just as painful to get setup correctly. Bundler is way easier. I've never been on a Rails project where it took more than 30 minutes to…

Hey, don't forget Gradle - http://www.gradle.org - Gradle syntax for declaring dependencies is similar to Maven. But there's a very close comparison between Bundler and managing dependencies with Maven or Gradle. And there's a huge difference. Maven Central has never been compromised because they have a secure method for deploying artifacts, RubyGems? You've had a fun month with RubyGems, right?

If you are going to base your argument on a one-time security vulnerability in RubyGems, then I'm just going to get out of your way and let you troll on.

Re: Rails Has Turned into Java

#90
post #59
post #34

Earlier quoted context omitted.

The whole point of rails is not to build massive projects. If you're building massive projects with thousands of classes on rails then you should be all means switch to J2EE.

This needs to be repeated over and over. We see so many pundits pushing the "right" way to build Rails applications now. Rails was a reaction against large applications. The major use case is to build CRUDs in front of a db. If your application out grows Rails, it's not a condemnation about Rails, or your team, or an earlier choice. If you're Twitter or Facebook, don’t use Rails out of the box. For the rest of us who…

Fully agree, the next boogey man against rails is performance which again is quite a silly argument when you have customers and servers cost $5 / month.
Post reply on HN