Learning Rails+ExtJS from scratch: what to start with?


I decided to start learning to develop rich internet applicatons
little by little. I mean applicatons that copy desktop-like interface,
not jquery/prototype-powered websites.

After a lot of thought and googling i came to ExtJS. It appeared to be
THE frontend for my purpose: popular, full-featured, well-documented.

I found out that there is no backend developed specially for ExtJS (or
at least with ExtJS in mind). ExtJS suggests developers to take care
of the backend on their own — reasonable for an experienced web
developer, but not for a newbie.

And i found no tutorials or guides that would teach building a backend
based on any server-side language/framework.

Of course, all server-side frameworks like Zend, Yii, CakePHP, Django,
Rails are ExtJS-capable. But all of them require some (or many) effort
to pair with ExtJS: write helper functions and classes, overcome
differences in conventions and concepts. Because all of server-side
frameworks are designed for usual html/css sites and JSON/REST is only
a side-feature. :frowning:

But after some investigation i learned that Rails is much easier to
work with ExtJS out of the box than any other framework! Yay! But
still it's going to be a lot of pain for me: i'm scared that i'll have
to learn two totally separate technologies based on two different
languages i'm absolutely not familiar with.

MY QUESTION IS: what should i start with on my way of learning the
development of rich internet applications with Rails+ExtJS?

PS As for my level of noobieness, i have very little experience in
coding but i had some fun with PHP. But i have a good understanding of
MVC, of using abstractions. I'm also familiar HTML/CSS (though it
seems i'm not going to need that with ExtJS) and a little Linux
administration (i'm hosting my own Drupal sites on a dedicated Linux

PPS ExtJS supposes using Eclipse as an IDE. Does Ruby/Rails have full-
featured support in Eclipse? Don't want to use two IDEs...

You might want to start here.

make sure you have gone through some rails basics, this article
assumes a decent understanding of rails, if not more.