Warning: include(/home/mwooldridge/wooldridge.net/profiles/minimal/config.php): failed to open stream: Permission denied in /home/mwooldridge/wooldridge.net/index.php on line 3

Warning: include(): Failed opening '/home/mwooldridge/wooldridge.net/profiles/minimal/config.php' for inclusion (include_path='.:/usr/local/lib/php:/usr/local/php5/lib/pear') in /home/mwooldridge/wooldridge.net/index.php on line 3
Warning: include(/home/mwooldridge/wooldridge.net/profiles/minimal/translations/diff.php): failed to open stream: Permission denied in /home/mwooldridge/wooldridge.net/includes/errors.inc on line 26 Warning: include(): Failed opening '/home/mwooldridge/wooldridge.net/profiles/minimal/translations/diff.php' for inclusion (include_path='.:/usr/local/lib/php:/usr/local/php5/lib/pear') in /home/mwooldridge/wooldridge.net/includes/errors.inc on line 26 Work | Mike Wooldridge

Error message

  • Warning: Cannot modify header information - headers already sent by (output started at /home/mwooldridge/wooldridge.net/index.php:3) in drupal_send_headers() (line 1052 of /home/mwooldridge/wooldridge.net/includes/bootstrap.inc).
  • Warning: Cannot modify header information - headers already sent by (output started at /home/mwooldridge/wooldridge.net/index.php:3) in drupal_send_headers() (line 1052 of /home/mwooldridge/wooldridge.net/includes/bootstrap.inc).
  • Warning: Cannot modify header information - headers already sent by (output started at /home/mwooldridge/wooldridge.net/index.php:3) in drupal_send_headers() (line 1052 of /home/mwooldridge/wooldridge.net/includes/bootstrap.inc).
  • Warning: Cannot modify header information - headers already sent by (output started at /home/mwooldridge/wooldridge.net/index.php:3) in drupal_send_headers() (line 1052 of /home/mwooldridge/wooldridge.net/includes/bootstrap.inc).
  • Warning: Illegal string offset 'field' in DatabaseCondition->__clone() (line 1424 of /home/mwooldridge/wooldridge.net/includes/database/query.inc).
  • Warning: Illegal string offset 'field' in DatabaseCondition->__clone() (line 1424 of /home/mwooldridge/wooldridge.net/includes/database/query.inc).
  • Warning: Illegal string offset 'field' in DatabaseCondition->__clone() (line 1424 of /home/mwooldridge/wooldridge.net/includes/database/query.inc).
  • Warning: Illegal string offset 'field' in DatabaseCondition->__clone() (line 1424 of /home/mwooldridge/wooldridge.net/includes/database/query.inc).
  • Warning: Cannot modify header information - headers already sent by (output started at /home/mwooldridge/wooldridge.net/index.php:3) in drupal_send_headers() (line 1052 of /home/mwooldridge/wooldridge.net/includes/bootstrap.inc).

Work

Below are recent projects I've worked on as a programmer, designer, and writer. You can view a list of clients, other examples of my writing, and scientific papers I've published. For more about my services, contact me.
Web Site for Analyzing Political Contributions
MAPLight.org
2009-Present

At MAPLight.org, I build online tools that enable users to examine the political contributions that companies make and how the interests of the companies align with lawmaker votes. The site lets you analyze contributions to US Congress and to the California lawmakers.

  • Working with the Drupal Web framework, created an automated system that regularly downloads California state legislative data, transforms the data for storage in a MySQL database, and displays the data on the MAPLight.org Web site.
  • Developed Web-based research tools used by MAPLight.org staff for investigating the companies and industries that support or oppose important legislation.
  • Wrote code to analyze the geographic distribution of political donation and specifically how much financial support politicians receive from interests outside their districts. The results were featured on SFGate.com.
  • Created a custom data feed for Wired magazine to support their Political-Influence Tracker, an interactive tool that shows the source of political contribution to federal lawmakers.
    Web Archiving Service for Libraries
    California Digital Library
    2006-2008

    I designed and implemented the user interface for a Web-archiving system. The system allows libraries and academic researchers to capture and preserve Web-based information. Users can define Web sites of interest and have content from the sites regularly captured, indexed, and archived. The service has been used to create important collections of online material for local goverments and events such as the swine flu outbreak,

    • Designed interfaces for specifying sites to be captured, executing those captures, and reviewing the resulting content and metadata.
    • Developed novel methods for visualizing the changes in site content between captures and the geographic distribution of captured content.
    • Spearheaded a migration from Java Struts to Ruby on Rails as the UI platform to speed development.
    • As a proof of concept, managed the capture of hundreds of sites related to the 2007 California wildfires by archivists across the U.S.
    Search Engine for Bioscience Articles
    UC Berkeley BioText Project
    2006-2009

    I designed and implemented a search engine for viewing bioscience articles. The search engine was used to evaluate different user-interface designs for search—for example, interfaces that enabled scientists to view images and tables from articles in the results as well as text snippets. The system indexes articles from the National Institues of Health's PubMed repository.

    • Managed a back end comprised of a number of platforms: PHP for page display, Lucene for indexing and search, Python scripts for processing newly published articles, and Java servlets for suggesting related query terms.
    • Created interactive wireframes of design options for team evaluation and user testing.
    • Built a separate version of the interface that allowed the collaborative tagging of article figure captions.
    • Coauthored academic papers that studied how scientists used different versions of the search engine.
    Domain Name Registration Web site
    NameSecure.com
    2000-2005

    As the Director of Content Development at NameSecure.com, I managed the front-end design of NameSecure.com’s e-commerce Web site. At the time, NameSecure.com was a top-ten domain name registrar with more than 200,000 customers.

    • Designed interfaces to enable customers to register domain names, purchase accessory products such as e-mail and Web hosting, and securely manage registrations.
    • Developed extensive supporting content to educate customers about technical terminology and how the domain name system works.
    • Created a prototype of a browser-based, patent-pending tool for managing domain names.
    • Managed content translation to create a Spanish-language version of the NameSecure.com site.
    Computer Books
    Wiley Publishing
    1999-Present

    I’ve written more than two dozen books on a variety of popular computer subjects including software applications such as Photoshop, Photoshop Elements, and Dreamweaver; Web sites such as eBay and Facebook; and Web-publishing technologies such as HTML and CSS. You can view some of my books here.

    Web Design Classes for Kids
    2007-Present

    I teach computer classes to elementary school students. In the classes, students learn to write HTML, design Web pages, and use social networking tools such as blogs. My lessons focus on writing code by hand in a text editor to give students a strong foundation for how computers and the Internet work "under the hood." I also teach using software that comes standard on all computers so that students can easily practice what they've learned at home without extra expense. I've taught hundreds of students—some as young as second grade—how to code Web pages.