Live data from Hacker News

Rails is Definitely Not for Beginners

rob.yurkowski.net

11–20 of 45 posts

Re: Rails is Definitely Not for Beginners

#11
I think the ideal person who starts learning Rails from scratch is somebody who already has a strong familiarity with concepts of database design and object-oriented programming but is not necessarily greatly experienced in setting up web applications.

Rails takes the underlying concepts of database design and the client/server relationship and makes them very easy to implement. That should not be confused with making the process of learning how to program very easy. For now, there really aren't any shortcuts to learning the old-fashioned way.

Re: Rails is Definitely Not for Beginners

#12
post #9

I think part of the problem for beginners is that both the breadth and depth of the skills required for web development have increased so much. This post focuses on the depth required to learn Rails properly: you must understand Ruby (which is much more sophisticated than, say, PHP 3) as well as MVC, REST, and so on. But at the same time, you are expected to develop for multiple platforms (desktops, mobile devices),…

I have yet to hear of a formal education which will teach REST, APIs, payment gateways, metrics tracking, and performance optimizations.

The only way to acquire these (and many other skills) is experience.

Re: Rails is Definitely Not for Beginners

#13
post #5

As a n00b trying to learn how to program, I completely agree with your points about Ruby on Rails. After getting in over my head going through a few rails tutorials, I took a step back and realized that while I could create really basic web apps and go through the keystrokes to write code and commit to Git, I didn't understand what the hell I was doing from a conceptual level. It was rote code copying from a tutorial…

FWIW - I'm looking for an apprenticeship type of project. If you code in Python and want to deal w the headache of a newbie, I'd love to talk!

Re: Rails is Definitely Not for Beginners

#14
post #12
post #9

I think part of the problem for beginners is that both the breadth and depth of the skills required for web development have increased so much. This post focuses on the depth required to learn Rails properly: you must understand Ruby (which is much more sophisticated than, say, PHP 3) as well as MVC, REST, and so on. But at the same time, you are expected to develop for multiple platforms (desktops, mobile devices),…

I have yet to hear of a formal education which will teach REST, APIs, payment gateways, metrics tracking, and performance optimizations. The only way to acquire these (and many other skills) is experience.

Exactly my thoughts. I'm close to finishing a formal CS education and I've been working on learning Rails (off and on) over the last couple of months. Granted, I'm a full-time student with a close to full-time development internship, so I don't have a ton of time, but I've found a pretty steep learning curve on Rails. There's so many concepts that I haven't and won't be exposed to in my CS education that I have to learn on my own. I'm pretty good at Ruby, but beyond that, I've got a huge list of topics I need to dive into before I feel I could be a good Rails developer.

Re: Rails is Definitely Not for Beginners

#16
It might not be designed with the beginner in mind, but I can easily say that Rails has been my entry to web programming and Rails has been very helpful in that regard. Have I understood all the concepts in the first place? Probably not. Did I need to? Not really.

I am a big fan of learning by doing and Rails gives the beginner a very quick, gratifying experience, and I believe that is one of the reasons why Rails is so popular among beginners

Re: Rails is Definitely Not for Beginners

#18
•He uses Windows, or if he uses Mac or Linux, it’s without any working understanding of how the system works.

Aww. I know he isn't really knocking windows users. But using windows doesn't limit your ability to learn how to program.

Re: Rails is Definitely Not for Beginners

#19
I am learning rails only 4 months after my first code line in html(your typical Joe Beginner), knowing absolutely nothing prior to that exept cracking a game or unzipping a file.

I found myself able to do very basic stuff and advancing at somewhat tollerable pace, but I figured derailing a bit and learning the core basics is essential for any meaningful progress. Frustration for me comes from not knowing what happens under the hood and why the particular commands are the way they are. I see what they do, but I dont understand where they come from, nor their potential, nor their proper usage.

So I started to watch Harvard cs50 course online as well as getting my hands on anything that can help me better understand the underlaying architecture of hardware and software.

Allthough not sexy, imho, this decision is the best a beginner can make. Yes it will take you longer to make something concrete. Yes, you will find yourself touching languages you will seldom (if ever) use afterwards. But understanding the roots is essential and pays in the long run much more than hacking your knowledge learning rails immediately. Remember it is a marathon, not a sprint. Bet on deeper understanding and you will win.

PS paralel with essentials, I am learning linux (so far I have only used windows) and vim. Yeah, learning curve is rediculous. Any learning tips and resources are more than welcome. :)

Re: Rails is Definitely Not for Beginners

#20
post #5

As a n00b trying to learn how to program, I completely agree with your points about Ruby on Rails. After getting in over my head going through a few rails tutorials, I took a step back and realized that while I could create really basic web apps and go through the keystrokes to write code and commit to Git, I didn't understand what the hell I was doing from a conceptual level. It was rote code copying from a tutorial…

First: Good for you going through the process of learning stuff The Hard Way.

I know exactly what you mean about the databases and proper modeling. I ended up reading through a basic book[1] and it really gave me a good perspective on how to decide what objects in your model will have database tables, which ones should have foreign keys into others, how to think of the relationships involved, etc.

I think you're right that you need to have some understanding of these concepts before you can build a web app. But fortunately, it's not that tricky! Keep at it, you're almost there. :)

[1]http://www.apress.com/9781590597699

Post reply on HN