I am a beginner and you are 100% right. I am working my way through learning some Python and when I started to find stuff referring to Django and web frameworks, they all seem to be touted as 'easy'. So, I thought, 'what the hell, let's build a web app'. After installing Django I was totally lost. Sure, I could install the framework and work through the tutorials but I am still miles away from actually building something on my own, because, while I know how to write some lines of code and create some basic tools I still don't know how to BUILD anything.
Yeah, I'm realizing that there isn't a great starting point for someone to get into web development from scratch. I don't think Django or Rails should even factor into it.
I've liked what I've seen of Code Academy, that might be something to look into if you haven't already: http://www.codecademy.com
Thanks, I went through the Code Academy courses and they were fun and helpful, but the biggest strides I've had in programming have been thinking of an idea and then trying to build it from what I know. This way, I am applying what I already know, further cementing it and it forces me to run into problems that I cannot yet solve. I spend up to a week trying to figure out a solution to that problem on my own. If I can't, I'll head to Stackoverflow and ask there. That's been the best way for me so far.
Absolutely. Thinking of an idea and then coding to its realization is a classic method of learning to program. It sounds like you have a great system for learning. I'd only caution that even if you come up with a solution to a problem on your own: do the search engine/stack overflow research anyway to see alternative methods. If you don't find any: blog about it.