Ruby on Rails < First Impressions

July 23rd, 2005

I am sitting here at my desk in awe. Never have I developed an application so quickly and easily in a language I don’t even know. Earlier tonight, around 7PM I visited Ruby on Rails website for the 20th or so time. I like the site, but I already know PHP and Coldfusion so I am not in the market for learning a new language. I was browsing around when I saw the link to the 15 minute intro video. I thought what the heck, I’ll give it a looksie and see what all the Rails hype is about.

Giggles and Snorts Ensue

Within three to four minutes of viewing the intro, my jaw had dropped and I was beginning to giggle and snort as only a geek can. My mind began to race and when I say race, I mean I almost had a melt down. It looked so easy. I cleared my already empty Friday night schedule (Steph was shopping with her mom) and decided to go through a tutorial and give RoR a shot.

So Easy I Taught My Stupid Cat Bob

Within 1 hour I had written my first (very simple) RoR app. I have never understood Model-View-Controller frameworks, nor have I taken the time to understand them. Upon completion of the tutorial, I not only understood the basics of RoR, I also began to grasp the ideas behind MVC’s. My mind is officially spinning and I am thinking how I can start using this on a daily basis. The funny thing is that I do not even know the half of it. I created a basic recipe thingy and I was blown away. I cannot imagine how fun and rewarding it would be developing something of substantial size.

A Few Features

The first awesome feature of Rails is the scripts which create all your files for you.

  • rails project_name - bing bang boom you have a project and all the directories and files are set up for you.
  • ruby server\start - starts the server so you can begin to test and code your project.
  • ruby script\generate controller controller_name - a new controller is created and ready to edit.
  • ruby script\generate model model_name - a new model is created and with a bit of configuration you can now hammer away on a database.

Not only does RoR generate files for you, it does all the basic CRUD operations too (second awesome feature). All that is necessary to create an admin area for a table is to create the table, set up a model, view, and controller for the table, and put scaffold :model_name in your controller.rb file. I know that sounds way to easy, but that is because it is. Anyway…I have ranted (in a good way) enough. I’ll just say, that if you are a programmer of any sorts you have to check Ruby on Rails out. I know I will be over the next few months.

7 Responses to “Ruby on Rails < First Impressions”

  1. avatar Marlon July 24th, 2005 2:44 pm

    Do yourself a favor and get the book “Agile Development with Rails”. Your jaw will drop even farther. I can verify the reaction as I’m a CF developer too.

  2. Yeah, I saw it and almost purchased it the same night. I noticed that it is only pre-order on Amazon.com right now. As soon as I can actually order it and get it I will be buying it.

  3. avatar Jason July 25th, 2005 1:03 am

    Forget waiting for the dead tree version, buy the PDF/dead tree combo and get the PDF version now. If you’re just starting out with Rails it’s worth the dough. 500+ pages of tutorial, reference, and best practices.

    http://www.pragmaticprogrammer.com/

    See ‘Beta Book: Agile Web Development with Rails: A Pragmatic Guide + Buy now (BETA PDF + Paper book when released). See BETA Book Faq.’

    It’s not actually in BETA any longer.

  4. I tried going through the Rails tutorial once and got stuck with installing MySQL on my PowerBook. I plan to give it another go when I have a spare minute again.

    Also, you might be interested in checking out the Django Framework. It’s not a clone of Rails but from what I hear it has a lot of similar ideas with some things that Rails doesn’t have. Django is appealing to me a little more since the language it uses is Python. Python is one of the main languages that Google uses for all their websites. Ruby from what I hear is like Perl and has about 100 different ways of doing the same thing. Python on the other hand is more structured and therefore produces cleaner code. All of this is from what I’ve read so far, so none of it comes from my actual experience.

    Anyway, thanks for the reminder that I’m falling behind in what’s hot in the coding seen! :)

  5. Jason: I just purchased the pdf/dead tree combo last night. I cannot wait to go through it. When I first commented I didn’t realize that the pdf version was available. Thanks for the reassurance on my purchase though.

    Brent: Yes, I saw that the other day. I am going to give it a go with RoR and if it doesn’t work out (yeah right!) then I will check out Django more closely.

  6. [...] John Nunemaker’s Ruby on Rails < First Impressions was a very interesting read. [...]

  7. I’m captivated by Ruby and Rails, and have both books. Whilst they taught me everything I know, they most certainly did not teach me everything they know. I’ve huge resepct for Dave Thomas and co but they do skim every now and again. I do get the impression that they more than occasionally suggest we RTFM and in come cases RTFS. In an instructional book, that’s not ideal. Things like the iterator & yeild, probably one of the most fundamental and nouanced areas of ruby; or the Date selector form helper in Rails. Both skimmed over a (in record time for iterator). Nevertheless the books, language and framework are absolutely amazing. I learned Ruby first – i reccomend people do too. Not only does it help with ‘getting’ rails but you might miss out on some amazing things otherwise..

About This Site

Addicted to New is the personal website of John Nunemaker (Noo-neh-maker), a Web Developer enamored of Ruby on Rails and a wide-eyed fan of all things new and cool.