Project Chadwick is a set of sabermetric/baseball statistics formulas I am using to learn a few new programming languages: Erlang, F#, Objective-C and Ruby. This project was inspired by Project Euler which is a series of math problems designed to keep your math and computer skills sharp.
Why Baseball Statistics?
Because I’m a baseball fan. As a kid I spent many hours reading box scores and whatever other stats the papers would publish. I have been curious about these languages so I thought I would use something I enjoy to learn a these programming languages.
How it will work
I will present the problem and formula I am solving/using and then give a walk through of the code. For the smaller/easier problems I will show multiple languages at once. When the code gets long or the formulas are more involved I’ll have a post per language.
Remember, I’m doing this to learn these languages so if you have any tips and/or hints please feel free to pass them along
Why is it called Project Chadwick?
It is named after the person who created the baseball box score. Henry Chadwick was born in England and was a Cricket report who started reporting on baseball in 1857. For more information on Henry Chadwick check out his wiki page or for more history on baseball statistics check out The Numbers Game by Alan Schwartz.
One of the main sources I have for my formulas is the book Baseball Hacks by Joseph Adler. The statistical data I will use comes from the http://www.baseball-databank.org/. It contains statistics from 1871 to 2009. You can download a MySQL database or files to load into Excel from the databank site. If you do not wish to store the data yourself you can view the data at http://www.baseball-reference.com/.
If you want to use the same languages I am you can download and install them from the following places:
- Ruby: http://www.ruby-lang.org/en/downloads/
- Objective-C: I’m not sure if its possible to run it on windows. I will be writing my objective-c code on Ubuntu. Here are the instructions for setting up Ubuntu for Objective-C.
- Erlang: http://www.erlang.org/download.html
- F# http://msdn.microsoft.com/en-us/fsharp/cc835251.aspx
I have the first problem posted here http://rob-rowe.blogspot.com/p/project-chadwick-problems.html. Over the next few days I will be adding the problems and my solutions. This should be a fun process I hope you join me in this project.