Rails is Definitely Not for Beginners
rob.yurkowski.net
Rails is Definitely Not for Beginners
1–10 of 45 posts
Re: Rails is Definitely Not for Beginners
#2Re: Rails is Definitely Not for Beginners
#3But learning to become a professional programmer isn't most people's goal. Rails is the fastest way to go from "I want a webapp that..." to "I have a webapp that sorta..." and it is that ability to build useful, visible things very quickly (even if they have lots of bugs and problems) that gets people interested enough in programming to actually sit down and learn the hard parts.
Re: Rails is Definitely Not for Beginners
#4not for beginners? how come one start with it?... I have tried it once and found it very easy to use and setup website.
1. How much programming had you done before trying it? 2. How complicated was your application?
Re: Rails is Definitely Not for Beginners
#5I then took a step back and went to MIT's OCW courses that use Python to teach the basics of CS. None of the lectures introduced Django or other web frameworks, rather, they used Python as a means to teach core CS concepts. From there, I used the basics of what I learned to create simple scripts and conceptually understand what I was coding.
Then, I slowly ventured into Django tutorials. But even with the Django tutorials, I'm taking a step back because I'm having difficulty wrapping my head around databases, structuring data models, and basically, learning how to PLAN an app before I write code.
At the end of the day, I think it is really difficult to learn how to code on your own because it is so much more than learning syntax. This is where mentors and the community comes in. Mentors matter a whole lot more than great tutorials and working on a real project with other, more seasoned developers (basically, an apprenticeship) completes the circle of going from complete newbie to "entry level programmer".
Re: Rails is Definitely Not for Beginners
#6But I could still see it being something for programmers trying out web-app development. It's convention and opinions is kind of helpful in showing how things could be organized.
Re: Rails is Definitely Not for Beginners
#7Re: Rails is Definitely Not for Beginners
#8I had done a ton of OO PHP and MVC stuff on Zend Framework, so I quickly grasped the questions around what code goes where.
The hardest parts for me to understand was the ways you could redefine classes on the fly, modules, blocks and closures. For a self-taught programmer coming form PHP-land those are all new concepts.
(Though I had a smidgen of experience with closures via JavaScript, I don't recall any tutorials making a direct comparison. It was only later one that I saw the similarities.)
Re: Rails is Definitely Not for Beginners
#9But at the same time, you are expected to develop for multiple platforms (desktops, mobile devices), to understand how to integrate with a wide variety of other services and APIs (Facebook, Twitter, S3, payment gateways), to know how to measure and optimize performance and other factors like conversion rates, and to understand SEO (which, just on its own, has a much larger learning curve than it did a few years ago), and that's just a limited selection.
There is, of course, one standard way to gain all of this knowledge: go and get a formal education in the field. But if you want to just dive in without that, these days that approach requires remarkable dedication and discipline, even if years ago it was a reasonable approach to learning.
Re: Rails is Definitely Not for Beginners
#10These theories all miss the basic point. Yes, Rails is not a good way for a beginner to learn proper professional programming. The proper way to do that is to write nice, fairly-mathematical code in Scheme or Python until you understand recursion, algorithms, etc. But learning to become a professional programmer isn't most people's goal. Rails is the fastest way to go from "I want a webapp that..." to "I have a webap…
I'm not even interested in people becoming good programmers. My point is that people who will spend the time to learn the hard parts will benefit more from learning from the lowest level that makes sense to them, rather than trying to learn Ruby and the CLI alongside Rails as they muddle through an app. We'll see better conversion rates if we encourage beginners to start from the beginning, and to spend even a modicum of time learning those technologies.