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.
8 comments
Spend 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.
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]
You need to read this essay by Peter Norvig: 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.
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.
First 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.
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.
It'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
Here is the hn discussion of his rant: http://news.ycombinator.com/item?id=1289186
Here is his rant about it: http://oppugn.us/posts/1272050135.html
Here is the hn discussion of his rant: http://news.ycombinator.com/item?id=1289186
[deleted]
Do 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.
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.
May 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.
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.
Make 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!
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!
Start 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.
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.
It 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.