3 ms·
When I first started with Rails the biggest problem for me was that I didn't know Ruby. Taking the time to learn Ruby before diving into Rails will make a huge
by bradly 16y ago
When I first started with Rails the biggest problem for me was that I didn't know Ruby.
Taking the time to learn Ruby before diving into Rails will make a huge difference. And if Rails doesn't turn out to be your thing, you still have your knowledge of Ruby for Sinatra or scripting.
- cheald 16y agoI learned Ruby while learning Rails, and I don't think it was necessarily a bad thing. I mostly just needed help over a few humps ("What are these symbol things? How do blocks work? Wait, you mean everything is an object?"), and then it started to come together pretty nicely. The biggest hurdle in learning Rails, IMO, is that it is such opinionated software. It does so much for you if you follow convention, and the newbie follows conventions because the tutorial says to, and has this holy pogo-sticking africanized honey bees, what the dong just happened? experience. Rails is fantastic because it does so much of the groundwork for you, but it also means that there are a lot of conventions to learn, and a lot of magic that happens that can be exceptionally confusing to the beginner.
- slantyyz 16y agoI'm learning Ruby while learning Rails also. I didn't find the Ruby syntax very confusing, but the humps for me are "How do I make sure I'm doing this the right way even though I'm a n00b? How do I get over being a database control freak and give in to db management using ActiveRecord?" I came from using CodeIgniter, which is a Rails-esque framework for PHP. Fortunately, the "opinonated" structure etc. made a whole lot of sense to me, and in retrospect makes me wonder why I didn't jump into Rails sooner.
- cheald 16y agoAs far as DB management, I don't buy the whole Rails kool-aid as far as DB constraints go. I still develop constraints, set up foreign keys, and hack around AR when it's expedient to do so. AR is marvelous at solving 90% of the standard boring CRUD without any headache, but it isn't a silver bullet, and you can still shoot yourself in the face performance-wise with it. Don't be afraid to overstep its bounds when necessary, but don't prematurely optimize, either. I've worked in CakePHP since learning Rails, and I have to say that more than anything, it makes me really dislike PHP as a language. The framework is pretty decent, but Ruby is so flexible and malleable that it really makes working in PHP painful.
- wrs 16y agoIf you've already done this backwards, there is a book called Ruby for Rails that teaches advanced Ruby from the point of view that you already use Rails but haven't been able to get very far into the source. A bit outdated, but still pretty good stuff. (http://www.manning.com/black/ http://www.manning.com/black/)
- mechanical_fish 16y agoThe book has been updated but with a different title that I currently forget. :)