Topic: My top 5 Rails Tips for newbies (now with bonus tip!)

I originally started using Ruby on Rails a couple of years ago after seeing the "create a blog in 20 minutes" screencast. At the time I was pretty experienced with PHP and basically figured there was a bunch of stuff going on behind the scenes that DHH wasn't showing us, so I put it on the back burner for a few months. I'm glad I got back to it, and wish I had checked it out sooner, but at least I did get back to it (eventually). While I found many great and useful resources, in many ways that was sort of the problem. I found far too many, most of which covered the same thing. So I'm putting this list together to (hopefully) help out someone else who might just be trying to get a handle on Rails. These are the things I wish someone had told me about, and the order I'd suggest going through them, if I were just starting out right now, as well as my reasoning for the choices.

1. Peepcode screencasts and PDFs at www.peepcode.com Well worth the price, and they cover everything from just getting started (on all three platforms) to more specific things like ActiveMerchant. They cost a little, but for what goes into each one (you get tons of source code as well as the actual screencast. A very good place to start out, and always evolving.

2. Railscasts.com has great, concise screencasts, and best of all they are free. Note I don't suggest this one first because it really does help if you have a moderate amount of knowledge about Rails before you check them out. Since they are shorter than the Peepcode ones it is usually easier to find just the tidbit you were looking for than it is in the Peepcode, and they don't cover exactly the same things, so I really do suggest both.

3. http://api.rubyonrails.org/ is great once you have the basics down and just need a bit of help on a particular method. Unless you have an idea of what you are looking for, however, it can be a bit of information overload. There are often good examples for each command, but sometimes they can be a bit hard to parse if you don't understand the Ruby language very well. Don't worry, that knowledge will come with time.

4. http://www.railsenvy.com These guys are very funny, and they serve up some great information every week. I find them a great place to go to find out what's new in the Rails world. It's easy to miss things because they move so darn fast in the Rails world, but it is really helpful to know about them sometimes. From a new plugin to what's going on in Edge Rails, these guys cover all of it (well, a lot of it) in about 10 to 15 minutes each week.

5. This is the most important tip. Make something with Rails. It doesn't matter what, but if you are not actually using it, if you are anything like me you will forget things, and you will not be able to keep up with all the information. Rails makes prototyping an application very easy, and since some of the more advanced Rails features (Many-to-Many relationships and join tables for example) can get quite complicated it can be really hard to recall what you can do without the experience of actually making something, and failing because you misunderstood something, and then figuring it out (usually by looking through one of the first 4 tips above).

6. (bonus tip). If you need space to try some things out (and don't want to use your own box for some reason) I'd suggest http://heroku.com/   Note, they didn't make it into my top 5 because I really think you should learn how to set up a rails app on your own hardware (you'll learn more that way) but once you have that knowledge from doing it a couple of times, it's pretty nice to not have to deal with that anymore for something quick and dirty. In Norse mythology, Odin hung upon the world tree for nine days pierced by his own spear for knowledge of 9 songs and 18 runes. I think he must have been the first programmer, for sometimes I think I know how that would feel, but when I find the next rune, or learn the next song, it makes it all worth it.