Where to Start in Computer Science?
There are a few things that I have little interest in, like OS, Game Development, and AI. However, Software development, Database design/management, Server administration, Data communication... and that's just what is coming off the top of my head. I've been floundering and flailing around aimlessly in the world of computer science for a few months now, with some prior experience in very minor things like HTML, JScript, PHP (very little) and other web design related things. I am a 24 year old business student with only a semester to go before graduation and have come to the conclusion that if I could do it all over again, I would definitely be doing something computer science related instead.
I have access to resources like Lynda.com for free through my university, and know about MIT OpenCourseWare, but I sort of feel like a kid in a candy store being overwhelmed with everything when trying navigate through all the possibilities. It's simply overwhelming.
In your experience and knowledge in the field, what was the best way you found to progress step by step from one subject to the next in a productive manner? What are the things that you know that you consider abso-freakin-lutely vital to your arsenal of knowledge and skills?
I don't know really where to start exactly. I feel like I have the basic ideas of the abstraction of programming understood, but now that I'm here I don't know where to go next and what would be the most useful. The area is simply far too complex and diverse and I am simply far too beginner to try to decipher it all.
Please help. Thanks.
18 comments
[ 5.3 ms ] story [ 68.5 ms ] thread~50 1-2 hour lectures starting from machine code all the way up to software engineering, told by a genial, honest, and passionate man with a likable accent.
Not only will you want to continually keep watching them (because they are compelling), but you will probably watch some of them more than once (because they cover the fundamentals in a way that you really only get in a classroom).
On a related note Hackerspaces tend to be great places to meet other programmers and many of them have quite active Adruino communities. http://hackerspaces.org/wiki/List_of_Hacker_Spaces
EDIT: grammer
The Arduino board has a lot of support and following, so that is why I recommended it, and it supports other languages as well so as you grow and learn new languages you can use your knowledge of the board to learn new languages on. If you find a different board that you like though and it has a C compiler then it will suffice, but Arduino does have a huge community that tend to help each other out.
Since you're still in school it might be worthwhile to see if you could sneak into an intro to programming class for your last semester.
Note that the class is taught in 2.x so if you're running 3.x then the example code won't run. IIRC, updating the print statements for the new version was the only change required to make them work.
Check out Udacity too. I've been using it for about the past week or two and I refer it so much I'm starting to feel like I work for them.
The way it works is that if your final grade is higher without incorporating your homework grades, they just take your final exam as your grade for the class. This is nice because I'm turning in every homework late and getting a 0.
I don't care about the grades anyways. I like the structure of the instruction for learning. You should sign up and just rock through Unit 1 and see what you think of it. It goes fast at the beginning.