Formula1 DB The most statistically capable F1 database on the internet

Why I created this

I created this site because I love F1 and wanted to play with databases in a real environment. I have enjoyed the challenge of creating what you see here. I wanted to be able to play with the history of F1, play with the data. The initial question that I wanted to answer, which I still haven't is which driver is the best performer in the rain (I don't yet have data about which races were affected by rain). I have answered many other interesting questions though.

Compared to every other F1 resource on the web, I honestly think that I provide the best analysis and presentation of the data. A good example is the teammate comparator, for those of you unfamiliar with F1, every car is different. The best measure of a driver's performance comes when you compare him to his team mates because they have equal equipment, no other site groups drivers with their team mates.

Site Design

In designing this site I have thought a lot about UI (user interface) issues. Almost every results page has links to other pages, I have tried to minimize the use of drop down boxes (maybe I'll change them to radio buttons). At first I thought of creating a dropdown with drivers, maybe a different dropdown for each season. I decided against that, its tedious and it requires an extra pageview from the urrent method where you first select the season you want, and see the complete result set for that season, then you can click on any driver from that season, I think that makes things faster.

How I created this site

I started with the results of races (finishing position, qaulifying position, driver name, team name). From that data I built every report on this site. Everything after the initial results were entered into the database was done with SQL and python. The site is presented with PHP. I think I may have hand editted 4 or 5 cells in the database, everything else was done programatically

Creating the season summaries was a bit tricky, F1 has used 24 different scoring systems since 1950. Setting the scores for an individual race is easy, but the systems differed in the way they summed the points for the season total, some years the rule will be take the top 5 scores from the first 6 races and the top 4 scores from the last 7 races, sum them and that will be your season total. I ended up creating a spreadsheet with the point system rules and imported that into a table in the database. I then ran update queries from the rule table. Every season on this site is summed correctly (some positions aren't correct because of errors in the data, but every champion is correct, I haven't checked thoroughly below that).

People I would like to thank

  • My parents for supporting me in this endeavour
  • George Mason University Fenwick Library, I have about 20 of their books strewn across my apartment
  • Astewey Gattew for showing me a working database backed website and encouraging me
  • Sainor-caish for creating the stylesheet I use here and making it freely available