A history of this site

Lead Developer: John Dwyer
Email: johnd2i@yahoo.com

I moved the site away from being just static html to a full application. The site now stores everything in a MySql database. The site uses Java Servlet Pages and runs on a Tomcat web server. Up until November 8th, 2005 I was hosting the site on Lunarpages in California. On that day they decided to shut us down without telling us. The site has continued to get more popular over the year with up to 500,000 hits a month. According to Lunarpages support our site was taking too much resources. Unfortunately they gave us no warning and no other options. They offer dedicated servers but after 3 days of email tag they told me there wasn't any available. Bottom line: Don't use Lunarpages. Our site is now hosted at Aplus in San Diego.

Thanks goes to David Pierce and Shandra Morton for getting this site off the ground. I took over this site in March of 2004. The first order of business was to move the site to a provider with technical support. We had a version of formmail to email dog applications. Hackers were using this vulnerability to spam people. People would apply for a dog and submit the application. This application would rarely if ever get sent.

Up until recently most of the time has been spent writing the software to manage the pictures and applications which are now all stored in a database.

Background

My name is John Dwyer. I write software for a living. Click here for my resume. Gary Ormsby who is also a software developer gave me a hand by writing the original Events application. I've since taken it and added a new look and feel and email notifications(reminders, add/drop notifications).

Goal

The number one goal was to provide a site whereby the data was fresh and didn't require a person to copy and paste html all over the place. I wanted to provide the ability when we get a new dog one of our volunteers can log into the site, upload the dog picture and description and instantly the main site will show the new dog for adoption. Having only one person to update the site isn't scalable. The other more immediate goal was to shut down the security hole and remove the old formmail application. I wanted to move to using pure Java, Java Servlet Pages and a real database so that no applications were lost.

The Future

Adding style sheets to the site was a big improvement. The future goal is to have more people use the lab site as an application for signing up to events, changing the info and pictures for the dogs they are fostering, and continually move to having all data be dynamic. New technologies that I'll be implementing:

The lab website uses the following technologies:

The site uses Log4J for logging. I wrote an article on how to configure Log4J with Resin which was published at Lunarpages. My philosopy on logging is that it is vitally important to log any error conditions that occur in the system. Debug statements are extremely helpful in debugging runtime problems. Another programming philosophy is to NEVER eat exceptions. Instead log them.

Site Statistics as of July 20th, 2005

Number of java classes: 48
Lines of JSP code: 7246
Lines of source code: 8039
Size of war file: 4,486,325 bytes

Site Statistics as of December 28th, 2005

total line count: 25484
jsp count: 7525
java count: 11032
xml count: 449
javascript count: 2417
css count: 877
html count: 1943
tld count: 765
properties count: 306
Size of war file: 5,241,778 bytes