Previous Work Experience


This page containts some screengrabs, html page archives, and links, where possible, to a few portions of some of my past work. Please note that many of my projects, most notably the Coastal Services Center (CSC) Management Information System (MIS) and the CSC Information Request Tracking System (IRTS) are intranet sites and are not publicly available.

SQL Sample

I believe it is long enough after working at Blackbaud for me to share this little bit of SQL, especially since it's obsolete with version 7.6. Raiser's Edge (RE), Blackbaud's flagship product, is software that allows non-profits to track donors, sending them mail solicitations, keeping track of what sorts of appeals each donor appreciates, even some support for seating donors attending fundraiser dinners, with the right modules. Of course the amount a donor has given would be an important thing to track, and RE does that well, gift by gift, from first to most recent.

One thing that RE did not do, at least not in any way that was considered viewable, until version 7.6 was keep a historical record of adjustments to those gifts. If someone accidently wrote that Jane Doe had donated $300 when she had donated $3000, after the adjustment to the original gift had been made, the original $300 gift dropped off of the face of the planet.

Raiser's Edge was not designed to be used as a historical financial managment tool; that was what The Financial Edge did and does. Regardless, RE was powerful enough many people wanted to have historical, auditable gift reporting.

That's where these views come in handy. Using them to create a SQL view that replaced one gift table would seamlessly create audit-level historical tracking with RE, something Product Development at Blackbaud said was impossible to do. They did not know they were lying, apparantly, as they changed RE's database schema in version 7.6, not even at a major version change, which added the feature and, well, broke this fix literally a week or so after I made it.

In any event, it does make for interesting SQL, and added historical adjustment reporting to any legacy RE 7.5 or lower report by changing one table name in the report's construction. Very efficient, done in the database as it should have been, and actually pretty quick, too.

Link to developer documentation and the views:
Developer Documentation for Adjustment Views (surprisingly easy reading)
    bbps_vwFirstAdjustmentSplits.sql
    bbps_vwAdjustmentSplits.sql
    bbps_vwNegativeAdjustmentSplits.sql
    bbps_vwFinalAdjustmentSplits.sql
    bbps_vwPreAdjustmentSplits.sql

Internet Mapping Server Projects

Though I have modified and maintained some Internet mapping sites that use ESRI's MapObjects, the vast majority of my experience falls under ESRI's latest IMS technology, ArcIMS.  I have created a reusable template "from scratch" for ArcIMS using ASP. This extensible template sped site development considerably as it was designed to be quite easy to customize. These applications run on Microsoft IIS, and are live on the Internet today.

To date, the most popular site has been the Historical Hurricane Tracks Tool, which allows users to query a system that includes over one-hundred years of tropical storms on the East Coast of the United States to see what storms might have passed through their neighborhood. This site was highlighted at USAToday.com in a weather article.

The most complicated site is the "RAster Data Delivery System" or RADD. This site uses ArcIMS to provide visualization aids to users who want to download C-CAP Data from around the country. My responsibilities included not only the creation of the ArcIMS interface, but also the Java middleware that forwards requests to IMAGINE (a GIS tool suite that can clip raster data), zips the results with customized metadata (also made by the middleware), places the data on a publicly available ftp site, and emails the user that their request is ready.

Links to live sites
Historical Hurricane Tracks Tool
RADD (any email will do)
Coastal Hazards GIS Interactive Tutorial: Ohio Case Study
Protecting Our Ports and Harbors

Build-A-PIVOT (BAP) Visual Basic Application

The BAP application is unique to CSC in that it is the first piece of software designed to be installed on a user's computer. One of CSC's signature product lines is the CD-ROM. When I started at CSC, CD-ROMs released had only static content. They held simple text and images in html format along with some spatial data that people could use only if they had expensive Geographic Information System (GIS) software like ArcView. To get more dynamic content onto CDs, I first helped create dhtml pages with Javascript to include everything from simple mouse-over image swaps -- a "poor man's GIS viewer" -- to a Javascript-powered full-text indexing application that could highlight search terms once the user moved on to an html page with a hit, all from a CD with no software installation.

The browser as a means of delivery, though successful, was fairly limited. The BAP is the culmination of integrating CSC's html skills with truly dynamic content without browser constraints. By moving outside of the browser into Visual Basic, product users could not only read a tutorial of how to foreground their issues on a web site, now they would have their web pages created for them as they followed along and consolidated their information together. By using the Internet Explorer engine in the BAP application, the PIVOT team was able to continue to leverage CSC's html design abilities. The embedded IE engine also allowed simple hyperlink clicks to set off processes, like writing out files or creating html image maps, that could not have been easily done within a traditional browser's security constraints.

BAP was released to a select group of National Estuary Program (NEP) leaders in Summer of 2002, and is set for general release to the public in December 2002.

Description of PIVOT; pages housed at NOAA CSC
PIVOT highlights page (use menu bar to see other pages)
Three minute Flash movie about PIVOT

Screenshots, in jpg format
Checklist Project Entry/Edit page
Project page with review window open
Wizard, "What are we doing?" page
Wizard Finish page with example output in browser

Coastal Services Center Management Information System (MIS)

The MIS assists CSC allot its fifteen-plus million dollar budget and nearly one hundred employees over scores of projects. This application uses Microsoft SQL Server running on Microsoft Internet Information Server (IIS) and creates a web interface using vbscript-powered Active Server Pages (ASP). Javascript is used to ensure data entry meets specific criteria, and server-side processing rechecks before entering data into the MIS database. This project is an intranet-only site.

Screenshots, in png format
Front Page
General Project Information
Project Personnel
Milestone Edit
Project Review
Milestone Report

Information Request Tracking System (IRTS)

CSC solicits online customer information on a voluntary basis and the IRTS collects and reports this information for internal use. The system both requests information from users who are downloading products, including email address and organization type, and reports these variables to the lead webmaster for yearly reporting. The IRTS is also used to create mailing labels when past customers request new products. This site is another MS-SQL Server driven ASP site, and its reporting capabilities are intranet-only.

Screenshots, in png format
Front Page
CSS Mailing Labels
Search Constraint Page
Products by State Report