Many aspects of computer science are fundamental to data science. A good data scientist has to be able to transform/extract/manipulate lots of data. Computer programming is the main technique for such operations. Here are numerous resources to help you learn the fundamentals of computer science.
Online Computer Science Courses: Introductory Level
If you are not familiar with computer programming, this list is a good place to start.
Online Computer Science Courses: More Advanced
Two More Helpful Resources
Stack Overflow is a great site for answering all of your programming questions. It is good for beginners as well as more advanced programmers. Also, if you start writing a lot of code, Github is a great place to store that code.
Coding (a.k.a. computer programming) is not the primary function of a data scientist, but some coding skills are necessary. Modifying machine learning algorithms or scaling/altering data are both good examples of when writing a few lines of code could be very beneficial. Well, if you have desire to learn to code, then there is no time better than the present. A handful of companies have recently launched products that will help with just that task.
- Udemy – not specific to coding, but there are many computer programming classes available
- Code School – The courses here are focused on web development. If you want to learn the ruby programming language and eventually Rails, this may be a good place to start. Plus, you can currently get access to all courses for $25 per month.
- Code Lesson – Courses are not free, but the range of courses is nice. Also, the courses are structured to fit the evening/weekend schedule. Update: CodeLesson does offer free courses, see here.
- Codecademy – Probably the most interesting site on the list. If I did not know how to code, I would probably start here.
- Coursera – Soon they will be offering CS 101. I have not seen a syllabus, but it may serve as a good resource for learning to code.
- Of course, there is always the option to go to college. Nearly every college or university offers at least a class or two about programming. This is probably the most expensive route, but if you thrive in a classroom setting, then this is a good option.
With all the options available, there are others too, 2012 might be the best year ever for learning to code.
Are you aware of other sites devoted to helping people learn how to program?