How should a math-paranoid programmer learn stats? (this is the opposite of "introduction to statistics for mathematicians")
I'm a programmer who loves writing logic and even a libsvm vector embedding library to my name. Now I'm getting asked questions about:


*

*"exogenous factors"

*"sample randomness"

*distributions, confidence intervals, etc.


There are plenty of self-taught programmers, so how should I self-teach statistics?
 A: My background is programming myself - I have a degree in bioinformatics and computational biology and spent most of my time doing things like text mining and such. Perl was/is my jam, and I spent more time in computer science classes than I like to think about.
But now being in education policy, I find that the core of my thinking has had to shift from programming to math.
Here are some of my tips, then:


*

*Find a topic you care about, with data you can find, and a question for which you want to know an answer. I found that having a focus like that gives my math-learning a real point (which I personally feel is a weakness of a lot of math education).

*If you like the programming, stepping through some of the data analyses done in R or Stata, I think, can really help you wrap your head around what's going on.

*Get a good book. There are lots out there, but I would say that which one you get (as well as which language you work on most) depends on what field you're in. 

*Talk to people. I find it really hard to understand a statistics concept unless I can talk it out with people.

*Go down the rabbit hole. If you have a problem, start with the simplest solution you can think of. Then ask people why it might be wrong, and go from there.


I really think the biggest thing is to find a project you care about. I used to gloss over the math-y sections of things and skip right to programming, but once I found questions where it was important to me to get the right (or very close to right) answer, it made it much easier.
A: The book by Wasserman, All of Statistics: A Concise Course in Statistical Inference, is a great introductory reading for hackers.
A: There are several free textbooks for programmers who want to learn stats, all of which are reputed to be good:
Think Stats. There is also Think Bayes by the same author. The examples are in Python. This might be a good place to start.
Matloff's Book. (The link is to the pdf.) Very explicitly aimed at computer programmers who want to learn statistics. Has examples from programming etc. I haven't read it but Matloff is a very good author and he started out as a programmer, then learned stats. Goes into quite a lot more depth than the previous book. The examples are in R.
Modeling with Data. This one uses C with the gsl and also a library called apophenia written by the author of the book. Rather ambitious.
