3 ms·
For what purpose are you writing software, and what is your desired destination? Do you want to program something interesting for you? (then figure out what yo
by DrJosiah 14y ago
For what purpose are you writing software, and what is your desired destination?
Do you want to program something interesting for you? (then figure out what you want to program, figure out the technologies it would take to make it happen, then learn them, and do it)
Do you want to get better at the trade so that at some point someone will pay you to program? (then go through MIT's OpenCourseWare: http://ocw.mit.edu/index.htm http://ocw.mit.edu/index.htm on CS topics to build up your fundamentals, then start reviewing/helping/hacking on open source for a while)
Do you want to use programming as a tool to do other things that you are interested in? (look around at what topics are necessary to understand, learn more about those topics, and go for it)
Personally, I knew when I was young that I would be into programming; when I was 5-7, we did LOGO in school, but there weren't really any programming courses worth anything in my high school (Cobol, Fortran, Hypercard, and Pascal), and I took the two electronics courses that were offered. I held myself back until college, where I did my best to learn and program as much as possible. After college, I went to grad school, continued programming as much as I could (I wrote an editor in Python for Python, dozens of data compression libraries, several distinct MUDs, ...), and got a PhD in theoretical computer science. Since then, I've been working in industry (because the academic market is crappy right now).
So I again ask; what is your destination? If you don't know yet, that's okay. You can improve your skills, your fundamental knowledge, and your technique without taking formal classes (see my link to MIT's OpenCourseWare). Heck, you may even be able to do so without talking with others (though it is hard). Once you do figure out your destination, it's a lot easier to ask for directions to get there.