Back in 2008 I did a special segment in my “Secrets In Websites” series for the 2008 Presidential Elections. It was quite popular (almost crashed the server). I decided to do it again, but slightly revised for 2012.
My observations/conclusions/insights (if you can call it that) can be found after the raw data.
This is just a list of data I collected as described at the bottom of the page and empirical observations. This site is not an endorsement for or against any candidate or party by myself or my employer.
Backend
Candidate | Server/OS | CMS | Host | CDN |
---|---|---|---|---|
Barack Obama (D) | Apache on Unknown | Unknown | Level3 (CDN) | Google CDN, Level3 (footprint.net for assets.bostatic.com) |
Michele Bachmann (R) | Apache on Unknown | WordPress | Smartech | No |
Herman Cain (R) | Apache on Unknown | WordPress | GoDaddy | No |
Newt Gingrich (R) | Apache on Unknown | Drupal | Smartech | No |
Jon Huntsman, Jr. (R) | Apache on Unknown | Drupal | Rackspace Cloud | No |
Gary Johnson (R) | Apache on Unknown | WordPress | Media Temple | No |
Fred Karger (R) | Apache on Unknown | Drupal | Slicehost / Rackspace Cloud | No |
Andy Martin (R} | Apache on Unknown | Appears to be static files | GoDaddy | No |
Thaddeus McCotter (R) | Apache on Unknown | WordPress | Rackspace | No |
Jimmy McMillan (R) | Nginx / Varnish | Trellix Site Builder | IPOWERWEB | No |
Roy Moore (R) | Nginx / Varnish, Apache | Unknown | IPOWERWEB | Cotendo |
Ron Paul (R) | Apache on Unix | WordPress | Rackspace | Rackspace Cloud Files (Akamai) |
Rick Perry (R) | Apache on Unknown | WordPress | Slicehost / Rackspace Cloud | Google CDN |
Buddy Roemer (R) | Apache on Unknown | WordPress | Smartech | No |
Mitt Romney (R) | Nginx, Varnish on Unknown | Drupal | Amazon Cloud | No |
Rick Santorum (R) | Apache on Ubuntu | Drupal | Slicehost / Rackspace Cloud | No |
Jonathon Sharkey (R) | GSE (Google) | Blogspot | Google Hosted | |
Tim Pawlenty (R) | Varnish/Apache on Red Hat | Drupal | Rackspace via Freedom First PAC | No |
Frontend
Candidate | Markup | # Validation Errors | Layout | Charset | HTTP Compression |
---|---|---|---|---|---|
Barack Obama (D) | HTML5 | 72 Errors, 4 warning(s) | CSS | UTF-8 | Yes (~75%) |
Michele Bachmann (R) | HTML5 | 27 Errors, 5 warning(s) | CSS | UTF-8 | Yes (~65%) |
Herman Cain (R) | HTML5 | 24 Errors, 2 warning(s) | CSS | UTF-8 | No |
Newt Gingrich (R) | XHTML 1.0 | 14 Errors, 3 warning(s) | CSS | UTF-8 | No |
Jon Huntsman, Jr. (R) | XHTML 1.0 | 364 Errors | CSS | UTF-8 | Yes (~75%) |
Gary Johnson (R) | HTML5 | 15 Errors, 1 warning(s) | CSS | UTF-8 | No |
Fred Karger (R) | XHTML 1.0 | 6 Errors, 6 warning(s) | CSS | UTF-8 | Yes (~76%) |
Andy Martin (R) | No Doctype | 45 Errors, 2 warning(s) as HTML4 Trans | Table | windows-1252 | No |
Thaddeus McCotter (R) | HTML5 | 50 Errors, 2 warning(s) | CSS | UTF-8 | No |
Jimmy McMillan (R) | No Doctype | 27 Errors, 10 warning(s) | Table | iso-8859-1 | Yes (~88%) |
Roy Moore (R)* | XHTML 1.0 | 3 Errors, 6 warning(s) | Flash, Tables | UTF-8 | Yes (~65%) |
Ron Paul (R) | XHTML 1.0 Strict | 34 Errors, 19 warning(s) | CSS | UTF-8 | No |
Rick Perry (R) | HTML5 | 6 Errors, 3 warning(s) | CSS | UTF-8 | Yes (~73%) |
Buddy Roemer (R) | XHTML 1.0 | 23 Errors, 7 warning(s) | CSS | UTF-8 | No |
Mitt Romney (R) | XHTML 1.0 Strict | 5 Errors, 4 warning(s) | CSS | UTF-8 | Yes (~77%) |
Rick Santorum (R) | XHTML 1.0 Strict | 22 Errors | CSS | UTF-8 | Yes (~74%) |
Jonathon Sharkey (R) | XHTML 1.0 Strict | 158 Errors, 199 warning(s) | CSS | UTF-8 | No |
Tim Pawlenty ® | XHTML 1.0 Strict | 42 Errors | CSS | UTF-8 | Yes (~83%) |
Frontend (cont)
Candidate | apple-touch-icon | Syndication Format | Framework/Libraries | Social Networks | Analytics | Misc. |
---|---|---|---|---|---|---|
Barack Obama (D) | Yes | RSS 2.0 | jQuery | Facebook, Twitter, YouTube | Google Analytics | Chrome IE Frame, Viewport Meta tags |
Michele Bachmann (R) | No | Feedburner/RSS2 | jQuery,Yahoo Base CSS, SWFObject | Facebook, Twitter, YouTube, Flickr | Google Analytics | FB OpenGraph, lots of WordPress Plugins |
Herman Cain (R) | No | No | jQuery | Facebook, TWitter | Google Analytics | ShareThis, Some WordPress Plugins |
Newt Gingrich (R) | No | RSS | jQuery | Facebook, Twitter, YouTube | Google Analytics, Omniture | Has separate mobile site. Short domain. |
Jon Huntsman, Jr. (R) | No | RSS 2.0 | jQuery | Facebook, Twitter, YouTube, Vimeo | Google Analytics | ShareThis |
Gary Johnson (R) | No | RSS 2.0 | jQuery | Facebook, Twitter, Google+, Flickr, LinkedIn, YouTube | Google Analytics, KISSmetrics | Web Fonts |
Fred Karger (R) | No | RSS | jQuery | Facebook, Twitter, Flickr, YouTube | Google Analytics | NetBoots Powered |
Andy Martin (R) | No | Atom/RSS via Blogspot blog | No | Facebook, Twitter | – | Font tag |
Thaddeus McCotter (R) | No | RSS 2.0 | jQuery, jQuery UI | Facebook, Twitter, YouTube | Google Analytics, Chartbeat | Multilingual (xili-language powered) |
Jimmy McMillan (R) | No | No | – | – | Hit Counter by Digits | The rent is too damn high |
Roy Moore (R) | No | No | SwfObject | Facebook, YouTube | Google Analytics | iframed flash site. Likely to prevent spidering / caching content. |
Ron Paul (R) | No | RSS 2.0 | jQuery | Twitter, Facebook, YouTube | Google Analytics, Chartbeat | W3 Total Cache |
Rick Perry (R) | Yes | RSS 2.0 | html5 boilerplate/modernizr, jQuery | Facebook, Twitter | ChartBeat, Google Analytics | @media print |
Buddy Roemer (R) | No | RSS (via FeedBurner) | jQuery | Facebook, Twitter, YouTube | Google Analytics | All in One SEO Pack |
Mitt Romney (R) | Yes | RSS 2.0 | jQuery, Typekit, Gigya | Facebook, Twitter, YouTube, Flickr | Google Analytics, Omniture, Lotame, NewRelic, Compete, Clickable | Analytics! |
Rick Santorum (R) | No | RSS | jQuery, TypeKit | Facebook YouTube, Twitter, Flickr | Google Analytics | That Google bomb is still working wonders on his name |
Jonathon Sharkey (R) | No | Atom/RSS 2.0 | – | – | Doesn’t own a .com? | |
Tim Pawlenty (R) | No | No | jQuery | Twitter, YouTube, Flickr, Facebook | GoSquared, ChartBeat, DoubleClick Floodlight, Google Analytics | Ended campaign |
Observations
I retooled this for 2012 based on how web development and the internet has changed as well as the data that’s available. The most noteworthy thing is that EVERY campaign uses open source. Perhaps it’s saving money in this economy? Windows Server isn’t free after all. Most use it extensively. Regardless who wins, that candidate would be very hypocritical to support the (unlikely regardless) “open source is communism” mantra. If this isn’t proof that open source is as mainstream as ever in America, I don’t know what is. Apache is a huge winner. So is jQuery, WordPress, Drupal, even Nginx and Varnish made a showing (they weren’t even on the radar in 2008).
Lots of websites are using the HTML5 doctype now. That doesn’t mean they are using HTML5, but many are moving in that direction. Web Fonts were spotted. Tables were very rare.
Shockingly, CDN usage and HTTP compression were pretty rare. Given Google will host popular javascript frameworks (jQuery for example), if you can’t afford the CPU to gzip data you could let Google host it for free. Lots of cloud hosting though.
Between popular CMS’s, and popular plugins/modules for those CMS’s, there’s little diversity in these sites this time around. It was obvious last time, it’s much more obvious this time. Mono-culture has set in regarding the technicals of these sites.
One thing that really stood out is the amount of analytics on each site. This election is really a data war. Knowing as much as possible about voters and the candidates base. Clearly this is an escalation from 2008. There is also a proliferation of real-time analytics usage this time around. Data is everything in the business world, it’s becoming that way in campaign websites as well.
Misc Notes
Data collection method: The data for this blog post was mostly done on the evening of August 30, 2011 and August 31, 2011 by myself. The character set was however Firefox 6.0 interprets the page. HTML validation was checked by submitting to the W3C validator. All other analysis was done by eye and using tools like cURL. Some things were a little bit of a judgment call, such as CSS layout. I didn’t generally penalize if a table was used, it depends how it was used, and the context. I viewed source on all of them, and spent some time looking around while collecting data. I didn’t view every page on every site, since that would drive me insane. The data is based on the homepage of the site however I did make a brief attempt to hunt for feeds since some only include a link on a “news” page. If I couldn’t find it quick enough, it doesn’t exist.
Secrets In Websites III?: Yes there will likely be a third installment. I don’t know when, I don’t know what will be included. I do have some ideas and notes. It takes time to put these together, and I’m not exactly drowning in free time these days.
* Roy Moore’s website is Flash in an iframe. For purposes of this analysis I’m using the page containing the flash object.
2 replies on “2012 Presidential Candidate Websites”
[…] developer e contribuidor do projeto Mozilla publicou há algum tempo uma interessante pesquisa sobre as plataformas de software utilizadas pelos candidatos as eleições americanas de 2012, […]
[…] developer e contribuidor do projeto Mozilla publicou há algum tempo uma interessante pesquisa sobre as plataformas de software utilizadas pelos candidatos as eleições americanas de 2012, […]