Django 1.1 is out! We're big fans of Django.
Continue readingX-UA-Compatible Django Middleware
Microsoft's Internet Explorer 8 may choose to display your site using an older, less compliant rendering engine. Take control and tell IE which engine to use with our Django middleware and decorator.
Continue readingDownloading House Lobbying Disclosures
The Lobbying Disclosure Act of 1995 mandates that lobbyist that meet specific requirements are to register with Clerk of the House of Representatives and the Secretary of the Senate. Being the great body that they are, the House provides a searchable database and bulk download of the registration forms. Sure a searchable database is nice, but we can have the most fun with access to the entire data set. The disclosure forms are provided in XML format, divided by year and reporting period (quarerly, semi-annually, annually), and archived.
In order to download the disclosure archives, an HTML form must be submitted for each file. This can be a huge pain as the files are large and involves non-trivial human effort whenever files are released or updated. We've written a Python script that simulates the form submissions and automatically downloads all of the archives. In addition to the script, we've uploaded a recent download of the archives to Amazon S3 for easier distribution.
The simple download script can be found on GitHub and the archives can be downloaded from S3.
Continue readingSimplifying web development with django-mediasync
One of the more frustrating aspects of programming for the web is managing the development and deployment of static assets. Everything is fine until your site goes live... then you have to deal with images, CSS, and JavaScript staying in sync and being called correctly from either the dev or production instance. We've developed django-mediasync to rid ourselves of the headaches.
Continue readingSection 508 compliance is easier than you think
Worried about having to comply with Section 508 accessiblity standards? Don't! 80% of the work is done for you if you follow web standards when developing a site. Part one of a two-part series.
Continue readingUnder the hood of the DNC and RNC convention sites
I took a few minutes this morning to look at the technology that powers the DNC and RNC convention web sites. It is always interesting to see what technological decisions different organizations take when they are trying to accomplish similar goals.
Continue readingFrom Idea to Production in Six Hours
We recently decided to launch a petition-like site that uses Twitter as the organizing method; using one of the very technologies that are impacted by Congressional Web use restrictions. We knew this had to be timely to have an impact, so the decision was made to have the Web site completed by the end of the day. That gave Kerry Mitchell, our fearless Creative Director, and I about six hours to get the site completed.
Continue readingSunlight API Development Kit
When working on a prototype, it is often necessary to get a REST web service up and running quickly. It's easy enough to do, but the amount of code that is duplicated for each service can really increase the time to completion. To make the development of REST web services quicker and easier, we have developed the Sunlight API Development Kit or, as we affectionately call it, the Sunlight ADK. The ADK is a PHP framework that assists in the rapid development of REST web services. We've released the code under the LGPL license.
Continue readingSunlight Labs API changes
Recent updates to the Sunlight API data.
Continue readingMashup the web
One of our focuses here at Sunlight Labs is to demonstrate how open data enables citizens to be engaged and informed on how Congress works. We do this by creating mashups that make information from a variety of sources easy to manipulate and understand. I recently gave a talk at a CARR Boot Camp on using the web to work with data. While not directly related to Congressional transparency, the following example from the talk is a good demonstration of how an end user can work with open data without the assistance of software developers.
Continue reading