4 ms·
A few things I would suggest to anyone learning to program: 1. Seek out peers to learn with. You don't need to go to school to find this, but it is a great pla
by joncalhoun 11y ago
A few things I would suggest to anyone learning to program:
1. Seek out peers to learn with. You don't need to go to school to find this, but it is a great place to start. Reddit, forums, local meetups, etc are all also good places to look.
The one thing I want to stress here is that you want quality over quantity. If you can find 1-3 people who you work with on a regular basis, that will have a much larger impact than meeting with 100 programmers. You generally want to find people who are around the same level as you are so that you can all learn together and teach one another. This is actually the most valuable aspect of college in my opinion - you start off with a group of peers who are (for the most part) at about the same level as you are, you make friends, and you progress at roughly the same rate. In doing that, you learn to teach one another, learn from each other, and you end up teaching each other nearly as much as the professor teaches.
If you do absolutely nothing else I mention, just do this. Find people to learn with.
2. Learn from as many sources as you can. You already read LPTHW, so now go to codecademy and try the python track, look for (and attempt to solve) more daily challenges on reddit, go to https://projecteuler.net/ https://projecteuler.net/ and spoj.com to find problems and attempt to solve them. When you run into trouble, use those peers from (1), or if you don't have any yet, post to reddit explaining where you got stuck.
You can even try doing different things - you can try creating a website and follow tutorials on that. The point is you shouldn't read a single book, but you should read everything you can get your hands on.
3. Program constantly. Even if it seems like something you already know how to do, do it anyway. Make sure you can write that code without referencing a single book or snippet of code. If you have that, look for something else to code and see if you can do it. Tweak your code to see if you can solve the problem in another way.
My guess is if you aren't coding at least 15 hrs per week, you likely aren't coding enough. Programming isn't something you can do 1 day a week and get great at. People who get great at programming get consumed by it. Every great programmer I know spent 10+ hours every week working on side projects, learning new things, and simply coding. The bad programmers I know are the ones who only coded when they had homework or some other assignment, and the difference is astonishing.
4. Don't just program mundane things (eg formatting HTML and CSS), but try to solve new problems. This is why I mentioned spoj, project euler, and suggested learning from as many sources as you can. Solving new problems will teach you how to be a better problem solver, and you also need to practice expressing your solutions to a problem in code.
Now if you truly want to solve that problem, feel free to email me - my HN username @ gmail.com - and I will be happy to try to help you break it into smaller parts and solve it.