Live data from Hacker News

Went Off The Rails: Why I'm Rebuilding Archaeopteryx In CoffeeScript

gilesbowkett.blogspot.in

21–30 of 143 posts

Re: Went Off The Rails: Why I'm Rebuilding Archaeopteryx In CoffeeScript

#21
Recently, I actually started to learn the Ruby spec because I was offered a well paid work in Ruby for many months to come, and I thought it would be cool to work in something new. Besides web dev, my past is C/C++, then many years of Java, and recently Node.js. I turned the Ruby project down because very early down the spec I realized that I don't want to work with technology belonging to 5 (or at least 2) years ago, language design-wise. I'm now on Node and I have great fun. The JS community is great, the Node.js subset even greater. The NPM repository is exploding with new libraries. You can see a new framework literally every week, but you also have tested ones to rely on. Good patterns are taken from anywhere, anytime, and new ones are being created. I'm not saying this to bash Ruby, it's just my personal story. I approached Ruby with optimism, but what I saw was a badly designed language. I can understand it being so popular compared to Java, I know I would be Ruby coder today had I discovered it during my Java days. But today I have Node.

Re: Went Off The Rails: Why I'm Rebuilding Archaeopteryx In CoffeeScript

#22

tl/dr Rails is not the new hotness anymore, the Rails 3 rewrite was a waste of time and it's strayed far from its initial ease of use. Node & Coffeescript, the new hotness, are awesome, here's my new video series, the first one's free.

Thanks for the tl/dr, that post certainly needed one.

Re: Went Off The Rails: Why I'm Rebuilding Archaeopteryx In CoffeeScript

#24
post #14

I love Giles. His first Archaeopteryx talk was one of the best Ruby-related talks of all time. He's way too harsh on Rails though. The original "blog in 15 minutes" demos that catapulted Rails into the limelight are still possible with Rails 3. Things like 'gem install rails' still work. If you are determined to skip bundler, you can do that too. What's more, unlike 2005, in the 15 minutes it takes to build a Rails b…

I'd go further and say, that it will be very hard to have a good MVC framework with Node before the async callback mess is brought under control. Maybe we'll even need something like Iced CoffeeScript for this.

The async callback mess is not really a problem, there is about zillion patterns and libraries to handle it. The problem is error handling in callbacks, capturing stack traces from the async parent callers, and generally not crashing Node if you forget to try/catch your async handler. However, this problem is known, and this is being worked on in the form of "domains". Btw. Iced CoffeeScript doesn't solve this a single bit.

Re: Went Off The Rails: Why I'm Rebuilding Archaeopteryx In CoffeeScript

#25
post #5

Rails is very suited to big API projects now - but there is no escaping the fact that all the action is moving clientside. The Rails learning curve is now very steep for new users and the accusation that it has become all it set out to solve is a fair one. For me it's a mature/stable framework and ripe for using commercially now, but I can understand the new kids gravitating to something more disruptive.

agree plus add Rails is very well suited for the client side hotness with the asset pipeline in Rails 3.

However I just tossed Rails after many years for 2 primary reasons:

1) Anything that might take a sec or more has to be moved out of the request cycle and into a background process. That just gets annoying after a bit. Node.js can serve requests, grab data from to world's slowest API's, send emails, etc, all from a single process.

2) Although I think Ruby's strong point is readability and succinct LOC, it's hard to beat using the same language for everything and not context switching. Maybe my brain is broken, but I used to drive myself nuts writing client js and using Ruby's nil instead of null and Object.new instead of new Object.

For the project I'm working on now, I had to make my own asset pipeline. It uses less for css (and bootstrap), precompiles handlebar templates and concats all the js into a single file and uglifies it. Cost me 2-3 hours, about the same time it took me to learn Rails asset pipeline and was about 10x more fun.

Last point I'll add is when Rails was a baby it made fun of all the xml configs etc that other frameworks bogged developers down with. Now it's grown up a little, and although sprocket and yaml files aren't xml, the concept is the same. If you've been around Rails for awhile and dive through the code of project like Spree, you just scratch your head and little simple things like node appear shimmering sexy!

Re: Went Off The Rails: Why I'm Rebuilding Archaeopteryx In CoffeeScript

#26
post #21

Recently, I actually started to learn the Ruby spec because I was offered a well paid work in Ruby for many months to come, and I thought it would be cool to work in something new. Besides web dev, my past is C/C++, then many years of Java, and recently Node.js. I turned the Ruby project down because very early down the spec I realized that I don't want to work with technology belonging to 5 (or at least 2) years ago…

Sorry, one thing I do not get.

You refused a ruby job because the language (Ruby) was "5 (or at least 2) years old language design wise" and instead you went for.... node.js? Technology based on a language designed...17 years ago!? (God that makes me feel old)

I feel there is a flaw in your reasoning, or at least other reasons which you are not going into.

EDIT: I know ruby has been around a long time. Just found it first appeared around the same time as JavaScript.

Re: Went Off The Rails: Why I'm Rebuilding Archaeopteryx In CoffeeScript

#27
post #24

Earlier quoted context omitted.

I'd go further and say, that it will be very hard to have a good MVC framework with Node before the async callback mess is brought under control. Maybe we'll even need something like Iced CoffeeScript for this.

The async callback mess is not really a problem, there is about zillion patterns and libraries to handle it. The problem is error handling in callbacks, capturing stack traces from the async parent callers, and generally not crashing Node if you forget to try/catch your async handler. However, this problem is known, and this is being worked on in the form of "domains". Btw. Iced CoffeeScript doesn't solve this a sing…

> The async callback mess is not really a problem, there is about zillion patterns and libraries to handle it.

Doesn't that seem to imply that it is such a problem that people have come up with a myriad of disparate solutions to try to solve it?

Re: Went Off The Rails: Why I'm Rebuilding Archaeopteryx In CoffeeScript

#28
That's called throwing the baby out with the bathwater.

There might be a few issues when your newbie & want to kickstart a rails app, but they're easily overcome with a good template.rb (the later being as small as possible, many of them are bloated).

Also I find the Rails 3.0 bashing cheap and unfair since it's a huge step forward in terms of robustness, modularity & coherence.

But yes I agree the fine tuning you need to get your quicky rails app up & running with your special flavor (eg: rspec, haml, inherited_resources etc) should be better advertised & explained.

I also spend more time on js nowadays but with backbone.js, throwing out the legacy of rails on the server seems a huge waste of time at this stage.

Re: Went Off The Rails: Why I'm Rebuilding Archaeopteryx In CoffeeScript

#29
post #11

This came across to me as a long rambling rant which amongst other things interchangeably referred to ruby as both "ruby" and "rails", but i got the feeling it was more about bashing rails. Rebuilding something because the older stuff is is "bloated" and the new stuff is somehow superior always seems like a weak excuse to me. The new stuff quickly becomes the old "bloated" stuff and you're back to square 1. In fact I…

In fact I have no doubt that within 5 years something else new will come along and perhaps Giles will be writing another article about "Node Went Off The Script: Why I'm Rebuilding Clyde In TheNextBestThing"

Which possibillity he mentions in TFA.

But this is what we call progress (or, to a more bitter viewpoint) change. It doesn't stop.

Re: Went Off The Rails: Why I'm Rebuilding Archaeopteryx In CoffeeScript

#30
Now it is risky to bet on Node.js. Especially for bigger projects. I'll wait two years and see how Node.js evolves. For now I'll continue to use RoR.

I really would like to see something like Google Dart to succeed. Node.js feels like PHP in early 2000s.

Post reply on HN