Live data from Hacker News

So You Want To Be A Ruby Dev

kevingisi.com

11–20 of 46 posts

Re: So You Want To Be A Ruby Dev

#11
Unnecessarily critical and not amusing. To bring up jruby and rubinius for someone starting out in ruby??? Why not also confuse him with Macruby ?

I develop more for fun .. i develop in ruby 1.9 and test to see it works in 1.8.7 also. No big deal!

I use "gem" for installing gems. Not bundler. No need to confuse someone new with RVM and ask him to play with all versions of ruby till he finds the one that suits him.

Its like asking a Java developer to try out all versions of Java starting with the 1.0 version, or asking a python developer to try jython and IronPython in addition to the 2 or 3 current versions.

What about perl. Should a new developer try out perl 4 and perl 6 too first ?

Re: So You Want To Be A Ruby Dev

#12

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.

Ruby is a hacker's paradise. The reason things are so chaotic is because people are doing so many cool things independently. It's impossible for someone to step in and impose order for the benefit of beginners, and even if it were possible it would diminish the value of Ruby.

The greatest opportunity for improvement is in the documentation arena, since blog posts are a huge part of the Rails documentation ecosystem, and because they tend to go stale and clog up Google with misinformation. Rails Guides are a really nice addition, but a meta-source that provided staleness information and list of preferred resources for various things would go a long way towards guiding newbies to a sane stating point (hmm, wheels turning in head).

Re: So You Want To Be A Ruby Dev

#13
Hey guys, I really want to learn ruby for web development, but without rails or sinatra or any framework. I want to start from zero and go all the way up.

I want my first app to be:

    puts "Hello world"
and I'll take it from there.

Any good tutorials or docs?

Re: So You Want To Be A Ruby Dev

#14

Hey guys, I really want to learn ruby for web development, but without rails or sinatra or any framework. I want to start from zero and go all the way up. I want my first app to be: puts " Hello world " and I'll take it from there. Any good tutorials or docs?

Well, you're going to want to look into Rack.

Really, you should just check out Sinatra. The whole 'framework' is like a thousand lines (or maybe two) of Ruby, and it's a pretty thin wrapper over Rack.

... any particular reason I'm at 0? Rack is the absolute minimum you're going to need to get Ruby to serve up dynamic pages, and Sinatra is an extremely minimal framework, to the point where it almost doesn't really deserve the term.

Re: So You Want To Be A Ruby Dev

#15
You could write the same article for most in-depth subjects.

Want to try model airplanes ? Get ready to spend a couple of days just to figure out the various materials, radios etc

Want to try computer assisted music ? Which plugin ? Which host ? How do I write music with this, etc ?

You could even rewrite the article for Java a few years back at least (should I go WebLogic ? WebSphere ? TomCat ? Struts or something else ?).

Re: So You Want To Be A Ruby Dev

#17
I actually think this is a little unfair.

Yes, the number of choices in Rails has proliferated, but a new user can easily ignore these choices. I don't think the situation is at all equivalent to the Java stack (which is the only other one I can comment on).

To use Java, you probably want to use Maven, Spring for dependency injection, an MVC framework (Struts 2, Spring, Tapestry, etc...), an ORM framework (probably Hibernate, probably with JPA?), though there are other choices.

This blog lists a bunch or Rails/Ruby choices. However, it's important to keep in mind that essentially all of the things a newbie needs to get started with Rails are in a single, self contained framework that is (in my opinion) incredibly easy to use.

I had well over five years of Java experience when I took on the latest in Java-based web framework. A book on Struts 2 covered Spring, but not Maven. A book on Maven covered MVC, but used Spring's MVC. A book on Spring MVC used Ant for the build, not Maven. Ultimately, I had to spend a great deal of time researching these technologies to just get my first simple app up and running. You should spend some time getting to know your framework and not just rely on magic. But should you have to do this for weeks or even months before you can write a simple webapp?

For rails... well, there's absolutely no need to worry about JRuby, IronRuby, or Ruby Enterprise, and whatever tutorial you're doing on Rails will tell you what version of Ruby you need. You don't need to download any of that windows crap mentioned here. You can ignore Sinatra for the time being. Gems are utterly simple to use (try adding a Maven dependency some time, especially one that doesn't have a public repo). You don't have to download any database to get started with rails, but you will have to spend a lot of time figuring out how to configure applicationContext.xml in Spring (or however you decided to go about it).

In fact, I think you can be a successful web apps developer with Rails and never bother with anything other than the basic defaults (ok, you'll want to use a different database).

Ok, I realize I've been ranting. But there's a huge difference between a proliferation of choices that can be ignored, and a proliferation of choices that have to be understood and dealt with before you can write your first app.

Re: So You Want To Be A Ruby Dev

#18
post #17

I actually think this is a little unfair. Yes, the number of choices in Rails has proliferated, but a new user can easily ignore these choices. I don't think the situation is at all equivalent to the Java stack (which is the only other one I can comment on). To use Java, you probably want to use Maven, Spring for dependency injection, an MVC framework (Struts 2, Spring, Tapestry, etc...), an ORM framework (probably H…

It's easy to paint everyone's experience with your own isn't it?

I answer questions from people new to Ruby a lot (given that I wrote one of the few and the earliest introductory books for Ruby that's free) and they are VERY often the exact questions he mentions here. Maybe people are too lazy to find the answers. Maybe they're utterly immobilized by a new tech stack that has a lot of choices. Maybe they just aren't as smart as you are. Whatever it is, we really need to find a simple way to address these questions. I think a lot of them are already addresses through blog posts, and as you mentioned, through the tutorial you're following, but a lot of them aren't (and sometimes they're answered incorrectly due to the age of the content or simple ignorance on the author's part).

Let's not pretend these people don't exist just because you aren't one of them. Many people do have to deal with this stuff up front due to the nature of the work they plan to do with it, and if the information isn't accessible, they'll just move on to somewhere it is.

Re: So You Want To Be A Ruby Dev

#19

Hey guys, I really want to learn ruby for web development, but without rails or sinatra or any framework. I want to start from zero and go all the way up. I want my first app to be: puts " Hello world " and I'll take it from there. Any good tutorials or docs?

Http:ruby-doc.org/q/cgi

Then go dig into Ramaze. Strong helpful community around a durable, lightweight web framework that works as well for single-file web apps as it does for anything large and sophisticated.

Re: So You Want To Be A Ruby Dev

#20

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…

You hit the nail on the head. The simultaneous push from Ruby 1.8 to 1.9 and the upgrade of Rails from 2 to 3 is ripe for turbulence. Rails 3 is a major upgrade and the supporting gems also need to simultaneously be upgraded as well. This upgrade is no small feat.
Post reply on HN