To be honest I find entire DS field so vague that I can't find actual roadmap of learning. I am actually a programmer for 10+ years and pretty much interested to get into Data related field. My stats and math suck at this moment.

My question is, is it Ok that I use my programming skills and jump right onto Machine Learning/Analysis tools like WEKA, Python Scikit etc and use their algorithm for understanding and keep studying/learning theory in parallel. Right now in terms of Data, I am already involved in:

  • Data Processing(RDBMS)
  • Data Scrapping(Python)

What I am thinking the logical steps are:

  • Data Mining
  • Data Analysis (sentiment analysis etc)
  • Data Presentation/Visualization( D3 etc?)
  • Machine Learning Kit/Libraries

I have given myself a 6 month time to get into this field.


  • $\begingroup$ A very nice non-technichal book is Data Science for Business, by Foster Provost and Tom Fawcett. I think it's an excellent start. $\endgroup$ Apr 10 '16 at 13:49
  • $\begingroup$ What as a programmer? $\endgroup$
    – Volatil3
    Apr 10 '16 at 18:52
  • $\begingroup$ As anyone interested in getting into data science. $\endgroup$ Apr 10 '16 at 19:31
  • $\begingroup$ You guys rocks. For somebody who is com?g afresh in afresh into data science, I am doing home study with Python until I am reading your answers today. Then should I stop this exercise for major programming course like Oracle 11g. Looking out there for your help on this. $\endgroup$
    – user17826
    Apr 12 '16 at 20:23

I would suggest you taking a Machine Learning and Statistics (Coursera, Udacity etc.) course straight away, since you have a profound experience in programming, so mastering any library wouldn't be of a big issue. Understanding of theoretical approaches is way more important than a particular library.

Main reason for that is the fact, that tutors of courses usually provide you with data big enough to understand the purpose of each algorithm/approach in the session/assignment so you will not only become proficient in some ML approach, but also understand which type of data can be then handled by a particular algorithm.

Also, I suggest you select a particular field of data science / machine learning, since data science, machine learning, statistics and so on, are just powerful tools and their application in computer vision, statistical modelling, natural language processing, fraud detection and other fields share something in common, but focusing on one field will allow you to progress faster.

  • $\begingroup$ I tool ML course from Cousera, due to lack of expertise in Maths and Stats, it did no go well. $\endgroup$
    – Volatil3
    Apr 11 '16 at 17:12
  • $\begingroup$ I had no Math or Stats background when I took one from Andrew Ng, but I did not find it really depressing to cover unknown terms using Wikipedia. Coursera won't give you fundamental understanding which is mostly up to you to the limits you want to dig into abstract concepts. $\endgroup$ Apr 12 '16 at 9:03

Given your programming exposure, You can jump into machine learning directly, However, here are some resources that will help you in getting started with data science:

An edX course that will help you start out in data science :- The Analytics Edge You could try Machine learning for data science at a later stage, there's a fabulous coursera course for the same as well. Apart from that, 'Data science from scratch' is a good book to start with! You might also want to read a few non-technical books explaining the applications of data science so that you could choose a field and focus on it.


'Data mining: Concepts and Techniques' is a great book to start learning data mining and then gradually you can go deeper(This book goes pretty deep although).


Jump right in by joining a Kaggle competition: https://www.kaggle.com/. You'll learn a lot by doing, and the most valuable skills are those that you can apply. The theory will come naturally from experience. Also, if you do well enough in Kaggle, you can win some serious money.

If not Kaggle, I recommend finding some personal project that interests you and will keep you motivated enough to get through the tough parts. For example, I'm building a self driving remote control car so that I can learn more about convoluted neural nets. The car is cool, but the neural nets are difficult.

In any case, it will probably take you 3-4 years to be truly comfortable with machine learning. The 6 month estimate you've provided sounds good for one project though.

  • $\begingroup$ Sounds a good idea. $\endgroup$
    – Volatil3
    Apr 11 '16 at 17:19

According to me, learning data science involves weaving your way through these three:

  1. Business domain knowledge
  2. Math
  3. Technology

Going through each of these in detail:

  1. Business domain knowledge - There is no 'given way' of going about gaining this. This will come to you as you solve a given problem and try to understand the business around it to be able to better understand the problem you are solving.

  2. Math - I believe 'Elements of statistical learning' by Hastie et. all is a very good place to begin. The same authors have a less math intensive version of the same book called ' Introduction to statistical learning' with R.

  3. Technology - This comes as a personal choice, how many tools and what kind of tools do you want to have under your skill set. R and python are most popular now, but you can see what suits you the best


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.