White Paper: Web-Centric Photo Albums
June 1999

Putting Photo Albums on the Web

It's a sign of the times -- families are scattered across the country and so are their pictures. As a result, it is estimated that for each family member or friend that enjoys paging through a traditional photo album, roughly 9 more miss out! This is the situation professional photographers face today when covering events like weddings and graduations. Since limited exposure translates directly into lost revenue due to fewer reprint or enlargement orders, finding a solution to this problem makes economic sense. Because the number of US households with Internet access is at 60% and climbing, it is no surprise that the solution of choice is to upload pictures to the web and provide seamless e-commerce order processing.

However, because photo labs with limited web experience are doing most of the development, initial offerings in this area will be limited. Once the basic web-based proofing service is up and running, there are a number of additional services that can be added. For example, besides generating revenue from online orders, it is interesting to explore ways in which the web-based album itself can be customized to an individual's style. Doing so creates a product that a families will cherish for years. Figures 1 and 2 show just one possible look of such an album.

Wedding Home Page
Figure 1: Album Home Page
(click image to view web page)

Moorea Images
Figure 3: Moorea Pictures
(click image to view web page)

Problems to be Solved

Powerful image editing tools like Adobe Photoshop, combined with great WYSIWYG HTML tools like Macromedia Dreamweaver, provide most of the pieces needed to manage the process of putting photo albums online. This said, two problems must be solved before the web becomes a truly viable alternative to the traditional photo album. They are:

  • After a big event like a wedding, most people are confronted with the task of sorting through hundreds of pictures -- layout and categorization alone can be a monumental task. Putting pictures online must make this process easier, not harder.
  • To get pictures on the web, they must first be digitized and saved in one of the many web formats. This is no small task.

The tools that I mentioned above can help with the second problem but they weren't designed for the novice. There are tools like Adobe PhotoDeluxe that are designed for the novice, however, these tools weren't designed to process of hundreds of pictures. Besides, even for a professional, digitizing hundreds of pictures is a big job. The solution here is to find a way of delivering pictures digitally to people in the first place. This is not as far off as it may sound at first. Companies like Kodak have numerous services that produce digital images and the increasing quality of digital cameras may do away with the film which is at the root of this problem.

That leaves the first problem....

Clients don't care about underlying technologies such as HTML. They are trying to accomplish two basic tasks: categorization and layout. What they want is a tool that lets them do just that. This is where my Web Photo Viewer prototype fits in.

The Web Photo Viewer is just the front end to a complete service provided to clients after the event being covered by a professional photographer is over. Instead of receiving proof books and contact sheets, the client (or photographer) logs on to the web and uses the Web Photo Viewer to sort through the pictures. This tool allows them to categorize and arrange the pictures as they wish. Because the web site is updated continuously as changes are made, friends and family can view the results in their favorite web browser at any time. To tailor the overall look of the site, the client can choose from several templates designed by professional artists to provide a full range of expression.

At the end of this process, the client may also choose to get a traditional photo album which, most likely, will include only a fraction of the pictures available on their web site due to the high cost of photo-finishing.

The Prototype Explored

Putting pictures online just got easier. What used to be a time consuming process of laying out dozens of pages by hand (either physically or electronically) has been replaced by the user-friendly Web Photo Viewer. This application works in concert with a database on the server to dynamically generate the necessary web pages on the fly!

Figure 3 shows the log-in dialog that the photographer or client would see when accessing the system. Besides the user name and password fields, there are several fields which allow the prototype to connect to any database on any server (provided they have the correct JDBC driver, see the Technical Details.... for an explanation) and will be removed in a future release as the application is tailored to a particular service.

Log-in Dialog
Figure 3: Log-in Dialog
(click image to enlarge)

After logging in, the window shown in Figure 4 appears on the screen.

The first task is to categorize the pictures. This is done by checking the Category checkboxes while scrolling through the pictures. (Note: the process of creating the categories in the first place is not shown)

Select Categories Panel
Figure 4: Select Categories Panel
(click image to enlarge)

Figure 5 shows the process of rearranging images. The category to view is chosen from the popup in the upper left-hand corner. Pictures can be reordered using the up and down buttons and re-sized using the popup menus. At any time, the photographers name and a description can be added in the text boxes to the left. In a future release, drag-and-drop editing will also be possible.

Change Order Panel
Figure 5: Change Order Panel
(click image to enlarge)

Technical Details....

The Web Photo Viewer application shown above is written entirely in Java using Sun's Swing Components to create the user interface (UI). Although these UI components are part of the Java 2 Platform, they are themselves written in Java and are compatible with any Virtual Machine (VM) supporting the older 1.1 specification (good news -- this is the VM running on most of today's computers!). On the performance front, I have been quite pleased with Java and find the only bottlenecks are database transactions and web downloads. With Java's native thread support even these limitations don't slow the user down as creating new threads to handle lengthy transactions is simple. The result is an application written in Java which in indistinguishable from one written in C/C++. On the back-end, I am running PostgreSQL and Red Hat Linux on an old Compaq Presario 7180 connected to the Internet via DSL. Apache serves up the web site.

This said, these details don't matter much as nothing I have written depends on them....

The result of this is a portable production environment designed to make creating virtual photo albums of all sorts fun and easy.



Back to Cover Letter
Copyright © 1999 by Tim Nufire, tnufire@ibink.com. All Rights Reserved.
Last updated: 6/99