4 ms·
Ask YC: How to learn the most programming possible in 9 months?
What advice would you give to someone thinking of spending 9 months learning programming full time.
- aristus 16y agoFirst off, good luck! I would pick a language like Python or Javascript, and start reading code. diveintopython is very good. Once you are familiar with little bits of code, pick something big that you want to make. My first big program was a metasearch engine (given a search query, issue queries to several search engines, parse the results, and combine them into one set). Once you are happy with it, maybe 5-6 months in, write the same program in another language, say Ruby or Javascript. This is now called a "kata", I think. I wrote the same metasearcher in 5 different languages over the course of about 14 months. Attacking the same problem gives you a good vantage point from which to compare languages and techniques.
- deleted 16y ago[deleted]
- throwaway121 16y agoI am planning on focusing on CSS/Javascript and I have a simple browser extension that I want to make at some point and will be focusing on learning the skills necessary to make the add on. I will definitely take a look at other languages as well and I already know some basic Java but in the beginning I plan on focusing on Javascript.
- nickknw 16y agoIt's probably good to note there are some differing opinions on diveintopython, (well, mostly zed shaw's opinion). Here is his rant about it: http://oppugn.us/posts/1272050135.html http://oppugn.us/posts/1272050135.html Here is the hn discussion of his rant: http://news.ycombinator.com/item?id=1289186 http://news.ycombinator.com/item?id=1289186
- gerakinis 16y agoSpend 9 months working on something and learn via the work. Don't spend 9 months simply studying programming information. ( Bonus points if you are getting paid by someone else while you are learning... but be clear about that upfront. ) Pick a problem, a tool set and get experienced. You will not gain as much if you simply read across multiple applications and disciplines. For a focus on the academics, and not the practical, I would not suggest going it alone unless you are really that strange type of person that gets math intuitively.
- deleted 16y ago[deleted]
- throwaway121 16y agoThanks for the advice. I completely agree on picking a problem and a toolset. I really want to focus on the practical aspects of "web development" Do you have any advice on what type of "environment would be ideal for learning programming?
- gilaniali 16y agoYou need to read this essay by Peter Norvig: http://norvig.com/21-days.html http://norvig.com/21-days.html Its very easy to learn the syntax of any language, you can probably do 5-10 a day. But to really learn a language, you must use it. Try to solve problems and try reinventing the wheel a couple of times.
- LeBlanc 16y agoMake sure whatever you work on is something you are passionate about. Something you think is the coolest thing ever. Doesn't matter if it is useful or if it is something people will pay for. It could also be something really ambitious; don't limit yourself by what you think you can do. If you don't pick a project you really really care about then learning programming and finishing your project is going to be twice as difficult. Good luck! Check back in in a couple months to let us know how it went!
- ayb 16y agoDo whatever it takes to program every day. Either build a few apps for yourself, work on a new app/business you plan to launch, or try to extend open source projects. The important thing is trying. Like an writer or a painter, the best way to learn programming is to learn by doing. It does help to work with others, so find a friend and work on a project with them and try to learn as much as possible if you can. Regardless of how you do it, you will be blown away by how much your skills improve after 270 days.
- malandrew 16y agoIt would help us immensely if you tell us why 9 months and what you hope to be able to accomplish after 9 months. That will help us point you in the right direction.
- icey 16y agoStart writing code as soon as possible. The earlier you start writing it, the earlier you'll actually understand what you're doing. Even typing in examples verbatim from books will force you to start paying at least a little attention to what the code is doing. If that's too boring, try re-implementing examples without referring back to how they did it in the book.
- rdw20101009 16y agoMay I please suggest that your question fundamentally mistakes the journey. Programming is applied thinking--it is not about the tools. Maybe you already know how to think in ways useful to programming, or maybe you don't. Either way, nine months out of a lifetime is not much. If you already know how to program, then nine months might be a decent timeframe for adding a new tool (or two) to your toolbelt. If you do not already know how to program, then nine months will be just enough to make you dangerous.