Getting started with ROR when you come from the desktop world with no experience in developing web application

I’m very interested in starting with ROR, however I do not know where
to start, I’ve a background as a developer of desktop application, the
web is new to me, there seems to be a lot of things to master in order
to become an efficient ROR developer, So I’m a bit confuse on what
should I learn first : HTTP,DHTML,XML,DOM,Javascript, CSS and then
Ruby on Rails ?

I’m aware that ROR does many of the low level dirty work for you, so
it hides the complexity from you

So my questions are :

1/ Do you think someone can be a good ROR developer without mastering
the following technologies : HTTP,DHTML,XML,DOM,Javascript, CSS

2/ Which books would you advise me to read (ideally in chronological

3/ Does the learning curve can be pretty steep for someone who do not
come from a web development culture (ie : Java/J2EE)

4/ I would also appreciate book recommendations for :
HTTP,DHTML,XML,DOM,Javascript, CSS, Ruby, Rails

Best Regards from France,
Tarek Demiati


2. I would start with
but wait for the 3td edition...

3. The learning curve is steep for anyone starting a new language
without prior experience...

4. anyone?

I think it should go like this for someone that is blank...

- Ready agile web development and see how you like programming (It is
not for everyone)
- Get a ruby reference book...
- Think about an application NOT in the book that you would like to
create... then create...
- Start learning CSS so that you can make that application look
- Javascript/Ajax is sugar on the cake not something you need..
- XML is most likely something you will not need for a while in you
application .... Good to know what it is but you can create websites
without it...

To become a *web* developer, on whatever platform, I'd recommend
you first learn:

1) HTML and CSS
2) HTTP and the nuts and bolts of how a web server works

Build a few static pages, your own personal site perhaps, to get your
feet wet. You should be able to find some tutorials on the basics, and
use the W3C recommendations as references.

Then start developing a simple RoR app and learn Ruby and Rails.
Once you're somewhat comfortable you can start adding JavaScript
(which will include understanding the DOM).

XML can wait :slight_smile:

HTH, and good luck,

Tarek - I went through what you're about to go through and actually
enjoyed the process :slight_smile: I hadn't programmed anything for 12 years

Buy the Ruby Pickaxe book.
Buy Agile Web Development with Rails (wait for next edition)
Find a hosting company that supports RoR if you need hosting. Use
mod_rails to deploy.

It took me a few iterations to understand the whole Model-View-
Controller idea.

I know zero about HTTP, DHTML, XML, DOM
I know a very, very little about Javascript

You need to start understanding CSS at some point but it comes later
and as you need it, I found.

Work hard to understand Ruby. And just abandon the for loop as quickly
as you can.

The learning curve was steep for me but it's fun to learn new stuff.

Here's what I managed to produce and I started in February 2008. I'm
just starting to experiment with some of the Ajax stuff.

Andy wrote:

Buy the Ruby Pickaxe book.
Buy Agile Web Development with Rails (wait for next edition)
Find a hosting company that supports RoR if you need hosting. Use
mod_rails to deploy.

I bought both of these books as PDF's from the Pragmatic Programmers
site. I have dual monitors so I really liked this setup. Textmate in
one window and my PDF in another.

I also have access to a color printer and a binder at work. So I
printed out the Active Record, Action Controller, and Action View
chapters and bound them into 3 separate little books. They fit nicely
into my laptop case and has been a really neat tool to help me reinforce
what is going on in these 3 important pieces of rails. I have to think
about the MVC design pattern to grab the right book to find what I am
looking for.

The 3rd edition is out in PDF as a beta from their site now if you want
to get started; same with the new Pickaxe book.

Good luck! I'm having a great time. :slight_smile:

2/ Which books would you advise me to read (ideally in chronological

I would read the Pickaxe first and get a good grip on ruby before
moving onto AWDWR

3/ Does the learning curve can be pretty steep for someone who do not
come from a web development culture (ie : Java/J2EE)

I don't think it's as different as you think. I came to Rails with no
web experience.

Part of it depends on where you see yourself going. I personally am
more of a backend programmer whose frontend happens to be the web,
however most of the time I am solving problems that are completely
independent from that front end. I leave the graphical design, css and
that sort of thing to people who care deeply about those things (it
does help to understand what's going on, in particular a healthy
understanding of the DOM and javascript is useful if you want a richer
interaction than a traditional website. CSS selectors and so on are
cool, however I know nothing about making stuff look pretty).
Depending on what you want to do, that may or may not be an option.


If you already have experience with software development and you have
a comfortable work environment (i.e. OS, editor, web browser,...) then
I say go for it. There are so many related protocols dumped
into the interweb (HTML, XHTML, XML, blah blah blah) that if you try
to bone up on all of them before you start you 1) won't start or 2)
will start so far from RoR that you'll likely forget why you wanted to
in the first place.

There is definitely a Unix bias here (read MacOSx and Linux in it's
many flavors) that will give you a slight penalty if you're working in
the MS world (there are those of us who think that's only fair...:wink:

I think there are two ways to approach the learning curve. The first
is to go the study method:

1) Pickaxe ==> AgileWeb ==> AdvancedRailsRecipes => DeployingRailsApps

I would include Obie Fernandez' TheRailsWay in this list.

This is a very good path for the patient and, even if you don't follow
it (the one true way) religiously, the books should be always at hand
in some form for reference.

2) For the impatient, take a look at RailsSpace by Hartl and
Prochazka. You can follow along the development of a fairly simple
project and get a good feel for the way the big ideas (REST, MVC, DRY,
buzz buzz buzzzzzz) look in code.

My guess is that some combination of the two is good for just about

You'll also want to get very familiar with various chat groups - this
is a good one. Just monitoring the conversations will give you a good
idea of what the current active issues are.

One added thing is some kind of IDE or just a smart editor. I've
always found that emacs is a fine tool to have around, NetBeans (by
Sun) provides a fairly full IDE that runs on different platforms.
NetBeans is an active area of development itself with real work being
done to support RoR.

Most important is have fun.

It depends on "what" you have interest in doing.

For my applications, there database focused.

So here is the "getting" something going in the shortest possible

1. Get the "Ruby Cookbook fro Oreilly". (Keep on your desk)
2. ProActive Record is another one I would keep handy.
3. Choose a project.
4. Use the following plugins:
    a. ActiveScaffold
    b. Tabnav/Widgets
5. Use sqlite to start. (I used oracle to start, but I work in a
6. Start your app.

The lovely part of using activescaffold, is its highly customizable.
So you can go
far not "writing" any dhtml/xml/dom/css. Yes your have a "enterprisey"
looking app,
but your have it in short order. I've done apps with 20-30 tables,
write a conversion script
to import the data, write a generator script to generate controllers
and models, and had
it up and running and usable in 4 days.

It all depends on the "type" of applications you want to do.

You might want to look at
lots of experience I've gained in using ruby and rails for large
scale corp applications.

At this point I feel I can do anything from a Stock trading
applications to a MRP/ERP system
using ruby on rails. (And can do it in windows or linux).

If you are more of a "watching/listening" follow-along learner than a
"reading" oriented one, there are some extremely useful screencast/
podcast resources that you may want to plug in to (some free, some for
a modest cost): has a selection of screencasts and PDFs over an
ever-increasing set of topics ($9/each)

Ryan Bates' Railscasts ( and iTunes, free) are
an excellent source of free, very focused screencasts on one technical
topic per episode

Our own course (free, iTunes and,
is a gentle, step by step "class" where we build a _very_ simple CMS-
like app, showing all the behind the scenes nitty-gritty. We provide
linked show notes and articles from that go from
tool installation, Rails programming, testing, and deployment. Some of
the older episodes need a Rails 2.1+ tune-up, but the comments contain
the important pointers.

The Pragmatic Programmer's new screencast series (http://, small fee), has several Rails and Ruby oriented

The RailsEnvy screencasts (as well as Gregg and Jason's news oriented
podcast,, small fee on screencasts), are an
entertaining resource that discusses the latest and greatest in RoR.

Basically, there is a wealth of non-book resources, so worth at least
book-marking as you learn.

Good luck,