For the last few years, I’ve occasionally “dabbled” with Ruby on Rails, even spoken about it at conferences, but never really stuck with it to any real extent. I’d always be catching glimpses of the supposed unicorns and rainbows, but would then get tripped up on some trivial syntax thing, and spend and hour Googling, and then bail and revert to .NET because it was just easier.
Given that I’d likely have an aneurysm if I paid any attention to the electoral insanity of the next 11 months, I’m opting to spend my evenings and weekends getting real with Rails. And I’ll be blogging about my adventures along the way.
What about .NET and Esri? Are you going all FOSS?
In a word no. DTS is and will remain a .NET shop, and we’ll still be cooking ASP.NET MVC apps backed with Esri technology, and I’ll still be blogging and speaking about that stack (some cool stuff is coming at 10.1 but can’t talk about it yet!). My interest in Rails is mainly to get another perspective on web development, and to see how well it works. I’ve got a few non-spatial ideas kicking around, and I want to use them as a platform for learning Rails. There may come a time when we start doing project work on Rails, but that will be a ways out.
That said, if I could avoid the hell that is the Microsoft Volume Licensing site, I’d be more than a little happy
“Getting Started With Rails” Resources
There are a ton of resources out there to get you going – here are some that I found useful:
Glenn Goodrich (@ruprictgeek) has an on-going series at RubySource.com – I literally got my Mac setup with Rails using this post on RVM. His series continues and is integrating Backbone.js and some geospatial flair using leaflet, but I had to take a side journey into Ruby 101 and Rails.
The day after I got RVM setup, Rob Conery tweeted about $100 off an annual subscription to Tekpub.com. I love love love the This Developers Life podcast which Rob edits, and I knew that Tekpub had a Rails 3 series ($28 if you just want that series), so it was an easy sale. Over the break I managed to watch 9 of the 11 videos in that series, and I have to say they are really good in terms of giving you a mix of theory and practice. Rob shows how to use scaffolders, and then how to do it “better”. There is quite a bit on testing in here, using the built in test tools as well as rspec. Other goodies covered include generators, haml, factory_girl, cheat, devise and autotest. Rob also mixes it up doing some episodes using VIM, others in Textmate, and others in RubyMine. Some on Linux and some on Mac. Quality work sir!
I really enjoyed a NetTuts video called “The Intro to Rails Screencast I Wish I Had” and is presented by Jeffery Way. Once you have a general understanding of Rails 3, this is a great 45 minute overview of how it all goes together, doing TDD and not using any scaffolding. It also goes into Capybara, which is wicked slick if you’ve ever tried to do any front-end testing. I’m definitely going to check out more NetTuts Rails stuff.
I also got the Kindle version of “The Ruby Programming Language” book for the whopping sum of $5.98. I’ve been reading this in chunks mainly as a means to get my mind into reading ruby code, and thus “knowing” how to express my intent in the language.
While I strive to be “all digital”, having cheat-sheets lying around is always helpful, so I’m compiling a list of useful ones that I’ll post sometime soon.
So that’s it for now. I’ve got a lot of ideas on things I want to built, and at this point I merely have an idea of how much I don’t know (linux, nginx, postgres), but I think it’s gonna be a fun journey!
Coming from a world of GIS and Python, I have followed you on twitter for some time now. I am happy to see that you are trying out Ruby on Rails.
I have NOT tried out the Geo-Rails gem yet but I plan to try it in the future. There is a nice writeup for it at http://www.daniel-azuma.com/blog/archives/60
As another coming from GIS into .NET and using Rails in my spare time, I am also happy (like Bob) to see this. I too found Rob Conery’s screencasts very useful.
If your are interested, I can recommend https://www.destroyallsoftware.com/screencasts, the host Gary Bernhardt came from Python to Ruby, and his skills in VIM are phenomenal. They are nice and short, and pack a LOT in. All TDD showing him developing or fixing stuff. I don’t watch them just to learn, but as something to aspire to.
Thanks for the link to those screencasts – I’ll check them out.
Watching VIM guru’s is truly awe inspiring! I’d love to start with VIM, but from what I’ve seen, you need to really know the framework so you know exactly where you want to go next… and I’m certainly not there yet!
Cheers,
Dave
Maybe a way to dip your toe in is to use the VsVim plugin for Visual Studio 2010. You can get used to the key bindings and general movements in your everyday environment, then practice and hone your VIM fu on the rails projects in spare time. VsVim still has intellisense support, so the learning curve is pretty low.
I bit the bullet with VIM because I was sick of playing on a Linux server and not being able edit anything. Personally, I don’t regret it for a second.
In addition to what Bob has mentioned, try http://vimcasts.org/episodes/archive for a lot of easy to digest stuff for free, very much like http://railscasts.com/
Yes it is a royal PITA to learn VIM. I will say though, that from using VIM I ‘learned’ the framework better than searching with TextMate.
If you want to learn VIM, I found http://www.derekwyatt.org/vim/vim-tutorial-videos/vim-novice-tutorial-videos/ to be an awesome set of tutes.
BR