4 ms·
Although these types of sites (Codecademy, etc) are great and teach absolute beginners all the basics of programming, they've left me lost as to how to continue
by kyro 14y ago
Although these types of sites (Codecademy, etc) are great and teach absolute beginners all the basics of programming, they've left me lost as to how to continue developing my skill set. I've hit a wall for some time and am stuck in this strange better-than-a-beginner-but-still-terribly-amateur middleground where the resources I keep coming across are either tailored for fresh beginners or more advanced programmers.
Does anyone have any suggestions or good resources that are tailored to my level?
- teamls 14y agoWe're coming out with some "intermediate" level content soon ;)
- allsystemsgo 14y agoI'm not quite at your point yet, but I'm getting close. I've taken a class in Java, built some simple programs like an address book etc. Then I journeyed into python, ruby etc. Nothing really struck a chord with me until python. In any case, I'm still plugging away, but I have learned about doing basic math, variables, etc etc quite a lot. I'll keep going but, in the end, what I want to make is a fully functioning and actually USEFUL web app that LOOKS and FEELS professional. So many of these online resource just take you half way. They try to be SO user friendly and approachable, but in doing so the tutorials are filled with too much useless fluff. "We are different because we make learning FUN!" Or, the tutorials are just far too advanced.
- pendext 14y agoThis might be an obvious suggestion, but have you tried building something useful? I have found myself in that strange in between space before when learning a new language, and by starting to build something I am able to quickly move past that middle ground.
- allsystemsgo 14y agoI think that's part of the problem though. These courses really don't give me the confidence or the framework to develop projects around. That said, I'm just doing a bunch of different courses until I get that AHA moment.
- tsunamifury 14y agoYou won't progress to the next stage until you marry your practice knowledge with real world requirements. Just start building it and learn along the way. Seriously -- you wont reach some magical point where you are officially good enough to make software. The only thing you need to do (for now) build something is get it to work.
- chudi 14y agoIf you want to go out and try some more mathematical approach use the exercises on http://projecteuler.net/ http://projecteuler.net/ to improve a little on the math side If you want to understand what the computers does and on what level you just need to start reading books or going to courses Books about algorithms and data structures (Cormen et al) Any book introductory to Operating Systems is a must (Tanenbaum or Silberschatz operating systems)
- habosa 14y agoThis. I learned to program just by reading a book to get basic syntax and then doing as many Project Euler problems as I could. I got to about 60 and by that point I was ready to try some cool things like making my first app.
- nicolethenerd 14y agoI'm not a Rails dev, and I admittedly never made it all the way through this book (more out of lack of time than lack of interest, though), but I was very impressed with the first few chapters of http://ruby.railstutorial.org/ruby-on-rails-tutorial-book http://ruby.railstutorial.org/ruby-on-rails-tutorial-book It manages to cover material fairly quickly and talk you through getting a working webapp up and running (and deployed!) while still taking the time to explain the little things that a more experienced dev might find obvious.
- skyhook_mockups 14y agoEveryone is different. Speaking for myself, I never found books or tutorials useful. My mind simply balks at the prospect of doing exercises for the sake of it. Instead what worked really well for me is to find a practical problem that I wanted to solve (maybe with the goal of making money from it). It turns out that just about any interesting project that you dream up for yourself will have aspects that are outside of your current knowledge/ability. Then as soon as you hit these parts start looking for reference materials, documentation or tutorials specifically related to this problem. Before you know it you're learning new stuff. And the upshot of this approach is, that if you stick with it you may end up with a functional product at the end, which you can sell. Also read other people's code. I find it really humbling to read well crafted code. It also motivates me to continue refining my own code.
- RegEx 14y agoAnd I'm the exact opposite. I love exercises. You should find what works for you and stick with it until it doesn't work for you! For a while, I would read a section out of a programming book, think to myself "Could I explain this better?", and if I could, I'd write an article. If I came across an exercise in a book, I'd think to myself "What if these requirements had to be met? What if this needs to be read in from a keyboard? A database?", and I'd expand the exercise into a full fledged project. Just do your best to keep yourself interested. Find a reason to stay excited.
- crntaylor 14y agoGet a copy of Structure and Interpretation of Computer Programs [1] and read it beginning to end. It won't teach you how to use any frameworks. It won't teach you how to write a particular language (well, you'll learn a bit of Scheme, but that's a by-product). Instead, it will teach you to think computationally, which is a far more valuable skill. I can't emphasise enough how much that book improved my programming. Everyone should read it. If you read that book beginning to end and do all the exercises, I don't think it's an exaggeration to say that you will instantly be in the top 1-10% of programmers worldwide. [1] http://mitpress.mit.edu/sicp/full-text/book/book.html http://mitpress.mit.edu/sicp/full-text/book/book.html