Live data from Hacker News

So You Want To Be A Ruby Dev

kevingisi.com

1–10 of 46 posts

Re: So You Want To Be A Ruby Dev

#2
Yup. That's pretty much it. I remember jumping on a Ruby project and having to install 50 (not exaggerating at all) gem dependencies. A handful of them didn't build because of my version of (Ruby|GCC|Rails|OS X|MySQL) and of course nobody else knew how to fix it.

I still love Ruby, but now I use it almost exclusively for sysadmin/build type stuff with Rake.

Re: So You Want To Be A Ruby Dev

#3
Wow, that's an insanely brilliant thump against Ruby and the community.

As a born Rubyist (That is I started programming with Ruby) hopefully this article will get enough traction to make people start looking into having Ruby be as easy as it should be to start with.

Re: So You Want To Be A Ruby Dev

#4
This post strikes me as not really about Ruby but about software development in general and specifically developing web apps. There isn't much insight here, of course it is hard and the language and framework don't matter much.

Re: So You Want To Be A Ruby Dev

#5
It's important to distinguish between Ruby and Rails. The setup and configuration of Ruby hasn't increased in complexity much over the last few years. (Keep in mind you don't have to use Bundler to use Ruby; Bundler is used in Rails 3).

Back in 2005/2006, it was easier to install Rails. There were less choices which made configuration and setup easier (but which also meant you could do less).

Now Rails has matured and has a large community. There are more features, more Rails-related gems, and the architecture has more choices and moving parts. As a result, you can do more with Rails now, but the learning curve and setup costs are stiffer.

Back in 2005/2006, Rails had a reputation of being easy to set up and dive into. Even though that's no longer true in 2010, the reputation for being easy to pick up has stuck.

Here's a glimpse of how it was "back in the day": http://www.garbett.org/blog/?p=88

Re: So You Want To Be A Ruby Dev

#6
While I don't _disagree_ with this... it's the place the Ruby community has chosen among the 'stability vs. innovation' continuum. The Ruby community may be a bit chaotic, but it also innovates and iterates really fast.

I also choose to use Arch and not Debian on my computers. Such is life.

Re: So You Want To Be A Ruby Dev

#7

Wow, that's an insanely brilliant thump against Ruby and the community. As a born Rubyist (That is I started programming with Ruby) hopefully this article will get enough traction to make people start looking into having Ruby be as easy as it should be to start with.

I wouldn't call it "brilliant"; it's a rant. Not that there's anything wrong with rants. This is a frustrating moment in Rails history, a two-fold version transition; a little cursing is to be expected.

Ruby is transitioning to 1.9. Rails is transitioning to version 3. These things are always painful. Some platforms try to rip off the band aid; others try to step slowly and carefully from one version to another. Then there are the platforms that just stop shipping new versions for a decade or so.

It's not unique to Ruby. The Drupal community is struggling to transition to Drupal 7, while legacy sites must negotiate the transition from Drupal 5 or Drupal 4.x, as well as the PHP 5.2/5.3 transition (or even a transition from PHP4), and the MySQL 5.0/5.1 transition -- or maybe the future of MySQL is MariaDB or Drizzle, or maybe we should pay more attention to good old Postgres, and then there's the team that insists that MongoDB is the future.

The web evolves. It is barely old enough to vote. It is unlike anything we have had before. If you don't like negotiating a blizzard of loosely-connected impermanent pieces you need to work on something else.

Or you need a better strategy. Many of the complaints in this rant are self-inflicted. Pick one text editor and stick with it. Pick one database and stick with it. Pick the Ruby version that DHH uses and stick with it. Don't agonize over every option. There are lots of ways to build a web page, and almost all of them work.

Re: So You Want To Be A Ruby Dev

#8

It's important to distinguish between Ruby and Rails. The setup and configuration of Ruby hasn't increased in complexity much over the last few years. (Keep in mind you don't have to use Bundler to use Ruby; Bundler is used in Rails 3). Back in 2005/2006, it was easier to install Rails. There were less choices which made configuration and setup easier (but which also meant you could do less). Now Rails has matured an…

Back in 2005/2006, Rails had a reputation of being easy to set up and dive into

Almost entirely based on DHH's 15-minute scaffolding/TextMate blog demo. It was a brilliant marketing move that arguably put Rails on the map, but the problem was that it gave the impression that Rails was somehow "easy" like PHP and suitable for casual web tinkerers.

The fact that things are more complex now tells a truer story: if you want to do any serious work with Rails you need to be prepared to dive deep into Ruby. When a meta-programming bug strikes you can't hide behind even the most elegant DSL.

Re: So You Want To Be A Ruby Dev

#9

While I don't _disagree_ with this... it's the place the Ruby community has chosen among the 'stability vs. innovation' continuum. The Ruby community may be a bit chaotic, but it also innovates and iterates really fast. I also choose to use Arch and not Debian on my computers. Such is life.

Also it's worth noting that the core ruby language moves quite slowly. It's just Rails and the gem ecosystem that moves a maddening pace.

Re: So You Want To Be A Ruby Dev

#10

Yup. That's pretty much it. I remember jumping on a Ruby project and having to install 50 (not exaggerating at all) gem dependencies. A handful of them didn't build because of my version of (Ruby|GCC|Rails|OS X|MySQL) and of course nobody else knew how to fix it. I still love Ruby, but now I use it almost exclusively for sysadmin/build type stuff with Rake.

That's the fault of the project for not specifying a Ruby version. In fact any project that is bringing new people on on a regular basis should have a standard environment setup documentation/wiki.

I admit it's pretty dicey with Windows, but between Linux/OS X things are usually pretty manageable.

Post reply on HN