This weekend I participated in the Google GovDev Challenge. This was a civic hackathon sponsored by Google, the state of Colorado, and the state of Wyoming. Our team built GovSafe.org, and took home first place for Challenge #1!
Challenge #1 required hackers to improve the frustrating and tedious paperwork process survivors must go through when they arrive at a disaster assistance center (DAC). Survivors may have to fill out up to 30 different forms, much of which is redundant information (name, phone, etc). The thing that really got me was when Brandon Williams with the CO Govenor’s Office of IT mentioned the emotional impact of writing your address 30 times… for a home you just lost. Ugh. So sad.
GovSafe.org allows survivors to pre-fill out the redundant parts of the paper work via a mobile site on their phone as they are waiting in line at the DAC, or at a regular computer at the DAC. They can then print out all forms that they might need, with the common info pre-populated. This solution allows Colorado to provide a more efficient and less stressful process for survivors, while continuing to uphold the paper trail that the other organizations require. The solution also allows for flexibility; depending on the situation, the DAC can decide to use it or not. The GovSafe web code can be found on GitHub here.
I ended up working on a Python image processing script for our final solution, which you can find on GitHub here. The problem with most government PDFs is that they actually are just images that have been scanned and saved as PDFs. This means we couldn’t programmatically jump from field to field. Bummer! So I decided to write a Python script that read values from our user bank (google docs spreadsheet), create a little image out of each word, and then overlay these words on the appropriate government assistance form.
I hit a few sticking points along the way with the Python image processing library. I started off using PIL, the Python Image Library, but I kept running into problems. Turns out it is no longer supported, and most people use a forked version of PIL called Pillow. Good to know!
Overall it was a great weekend and I learned a TON!