I would like to announce yet another way to browse the FIRST website. I have often wished that I could have a Windows Gadget or a Dashboard widget that I could configure to scroll the schedule, or the rankings, or the match results. The problem has always been getting the data. I assume that Gameday has the data, and I know that TBA also has a wonderful API but I am not sure how often their data is updated. As a result I decided to pull data directly from the FIRST site and give it back out as XML. Enter
http://frcfeed.appspot.com/ The goal of this site (also built on the Google App Engine) is to enable us to develop all sorts of applications without first having to deal with the hassle that is FIRST's website (anyone who has ever looked at the website's html will agree that a lot of it is ugly)
This site will return XML. For example the Awards for the 2009 Greater Toronto regional can be accessed at,
http://frcfeed.appspot.com/2009/Grea...Toronto/awards upon viewing source you will see:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<Award>
<Home Town> Port Perry, ON, Canada</Home Town>
<Name> Bill Holtby</Name>
<Award>Outstanding Volunteer Award</Award>
<Team> 1006</Team>
</Award>
<Award>
<Home Town> Mississauga, ON, Canada</Home Town>
<Name> General Motors of Canada & Rick Hansen Secondary School</Name>
<Award>Imagery Award</Award>
<Team> 1241</Team>
</Award>
<Award>
<Home Town> Whitby, ON, Canada</Home Town>
<Name> MTC/Ontario Power Generation</Name>
<Award>Rockwell Automation Innovation in Control Award</Award>
<Team> 1075</Team>
</Award>
<Award>
<Home Town> Webster, NY, USA</Home Town>
<Name> Xerox Corporation & Webster High Schools</Name>
<Award>Xerox Creativity Award</Award>
<Team> 1126</Team>
</Award>
<Award>
<Home Town> Toronto, ON, Canada</Home Town>
<Name> TDSB & Martingrove C. I.</Name>
<Award>Delphi "Driving Tomorrow's Technology" Award</Award>
<Team> 854</Team>
</Award>
<Award>
<Home Town> Oakville, ON, Canada</Home Town>
<Name> St. Mildred's Lightbourn Parent Association / Ford Motor Co. of Canada, Limited & St. Mildred's-Lightbourn School</Name>
<Award>Kleiner Perkins Caufield & Byers Entrepreneurship Award</Award>
<Team> 771</Team>
</Award>
<Award>
<Home Town> Sarnia, ON, Canada</Home Town>
<Name> Mellon/Ontario Power Generation/Research In Motion & Conseil scolaire des écoles catholiques du Sud-Ouest & Saint-Francois-Xavier High School</Name>
<Award>Judges Award</Award>
<Team> 1846</Team>
</Award>
<Award>
<Home Town> St. Catharines, ON, Canada</Home Town>
<Name> General Motors - St. Catharines Powertrain & Governor Simcoe Secondary School</Name>
<Award>Website Award</Award>
<Team> 1114</Team>
</Award>
<Award>
<Home Town> Calgary, AB, Canada</Home Town>
<Name> Dean Weisensel</Name>
<Award>Woodie Flowers Award</Award>
<Team> 1482</Team>
</Award>
<Award>
<Home Town> Mississauga, ON, Canada</Home Town>
<Name> BAE Systems/Promation Engineering Ltd. & Gordon Graydon Memorial SS</Name>
<Award>Autodesk Visualization Award</Award>
<Team> 1325</Team>
</Award>
<Award>
<Home Town> Toronto, ON, Canada</Home Town>
<Name> Scotiabank/Bell Canada/Toronto District School Board & Woburn Collegiate Institute</Name>
<Award>General Motors Industrial Design Award</Award>
<Team> 188</Team>
</Award>
<Award>
<Home Town> Stoney Creek, ON, Canada</Home Town>
<Name> CNC Woodcraft & HWDSB & Orchard Park Secondary School</Name>
<Award>Motorola Quality Award</Award>
<Team> 2056</Team>
</Award>
<Award>
<Home Town> Kincardine, ON, Canada</Home Town>
<Name> Bruce Power/Power Workers' Union & Kincardine District Secondary School</Name>
<Award>Johnson & Johnson Gracious Professionalism</Award>
<Team> 781</Team>
</Award>
<Award>
<Home Town> Whitby, ON, Canada</Home Town>
<Name> MTC/Ontario Power Generation</Name>
<Award>Chrysler Team Spirit Award</Award>
<Team> 1075</Team>
</Award>
<Award>
<Home Town> Sherbrooke, QC, Canada</Home Town>
<Name> Bombardier Aéronautique/Uiversité de sherbrooke & École du Triolet High School Centre 24 Juin</Name>
<Award>Judge's Award</Award>
<Team> 3117</Team>
</Award>
<Award>
<Home Town> </Home Town>
<Name> </Name>
<Award>Judge's Award</Award>
<Team> </Team>
</Award>
<Award>
<Home Town> St. Catharines, ON, Canada</Home Town>
<Name> ASECO Integrated Systems / Sherrard Kuzz LLP / St. Catharines Corrugated Containers / GM Canada & Denis Morris High School</Name>
<Award>Rookie Inspiration Award</Award>
<Team> 2852</Team>
</Award>
<Award>
<Home Town> Kingston, ON, Canada</Home Town>
<Name> Queen's University/Science '82 and '78/Queen's Engineering Society/Transformix Engineering & Kingston Collegiate Vocational Institute High School</Name>
<Award>Rookie All Star Award</Award>
<Team> 2809</Team>
</Award>
<Award>
<Home Town> St. Catharines, ON, Canada</Home Town>
<Name> ASECO Integrated Systems / Sherrard Kuzz LLP / St. Catharines Corrugated Containers / GM Canada & Denis Morris High School</Name>
<Award>Highest Rookie Seed Award</Award>
<Team> 2852</Team>
</Award>
<Award>
<Home Town> Peterborough, ON, Canada</Home Town>
<Name> G.E. Volunteers & Thomas A. Stewart High School</Name>
<Award>Underwriters Laboratories Industrial Safety Award</Award>
<Team> 1141</Team>
</Award>
<Award>
<Home Town> Toronto, ON, Canada</Home Town>
<Name> Scotiabank/Bell Canada/Toronto District School Board & Woburn Collegiate Institute</Name>
<Award>Regional Finalist #1</Award>
<Team> 188</Team>
</Award>
<Award>
<Home Town> Toronto, ON, Canada</Home Town>
<Name> Corporate Pharmacy/Bangor Metals/Diteba Research Laboratories Inc./Extrude-A-Trim Aluminum Warehouse & Crescent School</Name>
<Award>Regional Finalist #2</Award>
<Team> 610</Team>
</Award>
<Award>
<Home Town> North Bay, ON, Canada</Home Town>
<Name> Near North Student Robotics Initiative</Name>
<Award>Regional Finalist #3</Award>
<Team> 1305</Team>
</Award>
<Award>
<Home Town> </Home Town>
<Name> </Name>
<Award>Regional Finalist #4</Award>
<Team> </Team>
</Award>
<Award>
<Home Town> Stoney Creek, ON, Canada</Home Town>
<Name> CNC Woodcraft & HWDSB & Orchard Park Secondary School</Name>
<Award>Regional Winner #1</Award>
<Team> 2056</Team>
</Award>
<Award>
<Home Town> St. Catharines, ON, Canada</Home Town>
<Name> General Motors - St. Catharines Powertrain & Governor Simcoe Secondary School</Name>
<Award>Regional Winner #2</Award>
<Team> 1114</Team>
</Award>
<Award>
<Home Town> Toronto, ON, Canada</Home Town>
<Name> Etobicoke Collegiate Institute & TDSB</Name>
<Award>Regional Winner #3</Award>
<Team> 2185</Team>
</Award>
<Award>
<Home Town> </Home Town>
<Name> </Name>
<Award>Regional Winner #4</Award>
<Team> </Team>
</Award>
<Award>
<Home Town> Sault Ste Marie, ON, Canada</Home Town>
<Name> Tenaris Algoma Tubes / EPOH & Algoma District School Board</Name>
<Award>Regional Engineering Inspiration Award</Award>
<Team> 1535</Team>
</Award>
<Award>
<Home Town> St. Catharines, ON, Canada</Home Town>
<Name> General Motors - St. Catharines Powertrain & Governor Simcoe Secondary School</Name>
<Award>Regional Chairman's Award</Award>
<Team> 1114</Team>
</Award>
Accessing this for different things is very simple, use the base url
http://frcfeed.appspot.com/[year optional]/[Event name OR code]/[qualification OR elimination if applicable]/[results OR standings OR schedule OR awards]
Results and Schedule require either qualification or elimination be specified but the other two don't need it, adding it won't hurt anything though.
A word on the event name or code, FIRST specifies a bunch of codes for events, (ex: dt for Detroit) I hate remembering those, I assume that everyone hates remembering those. I decided that I would rather specify an event by its official name (removing the words regional, mi district, division, and field to save typing) However, I realize that some people would prefer to use a code, this supports BOTH, if you specify something it doesn't recognize as an event name it will assume you know what you are doing and treat it as an event code. It will return nothing if you get the wrong name or code.
Currently it defaults to 2010 for the year if you don't specify a year, there is no data for these events so you should probably specify 2009 as the year.
Enjoy!
ps: This is not to step on the feet of any of the other great services out there, TBA is amazing and I have heard great things about Gameday. If they offer a similar services consider this an alternative.