Lights, DV, Action!

My annual scuba trip to the Caribbean left me in the unexpected role of content developer. Normally I go on these trips with the hope of seeing a few interesting fish, drinking a couple of margaritas and catching up with friends. On this trip, however, I also brought an engagement ring. To capture any once-in-a-lifetime fireworks, I brought along Binary Solution’s digital video camera. The proposal to my longtime girlfriend Felicia went better than expected: In fact, it quickly spiraled into an amazing wedding on a beach in Cayman Brac.

As you might guess, getting married without inviting your parents, family and nonscuba-diving friends has repercussions. To make everyone feel as though they’d been to the wedding, we wanted to create a tightly edited video of the event. I had used the digital video camera for capturing still photos, but I had never used the digital video suite that came with my new machine.

For those unfamiliar with the digital video (DV) standard, DV cameras shoot 720x480 pixel frames at 30 frames-per-second. DV cameras are equipped with a Firewire connection, which allows the computer to control the camera and to transfer data at fantastic rates. Once the video stream is captured on a computer, you can perform any imaginable edit, transition or transformation. At the consumer level, the final "build" of the video project is done in batch, not unlike building compiled software. Finally, the finished project can be saved -- with no loss of original quality -- back to the camera’s DV tape for playback and archival storage.

As I performed the fifth nightly build of my video project, I started thinking about the convergence of programming software and authoring software. Creating a video project was not significantly different from creating a software product from off-the-shelf components. You basically have to determine the desired effect, look at the available components, hook them together in the desired fashion and, finally, debug the result. Yeah, you have to debug your digital video project, at least with the software I used -- Asymetrix Digital Video Producer 5.0. Certain combinations of filters and transitions cause digital artifacts to appear in the final product. Scenes may fade too early, auxiliary audio may mask a speaker’s voice, or titles may not pause long enough to read. But even if the editing software were bug-free, the results would still require debugging for professional results.

Similar to programmers, dynamic content developers must consider resource issues and execution speed, especially when the content includes graphics and video for the Web. Creating a great video clip generates little excitement for a Web developer because even DSL subscribers don’t have the bandwidth to view anything close to broadcast quality video. To simulate a television-style experience on the Web, more and more content developers are turning to products such as Macromedia’s ( Flash. Flash brings video-style motion to Web sites without a massive bandwidth requirement. Flash uses vector models of text and other objects. Vector models can be transformed without loss of quality, so they can automatically take advantage of the display characteristics of the target machine.

Despite the similarities between programmers and creators of dynamic visual Web pages, there is one drastic difference. Viewers decide if a dynamic visual page is "correct" based on subjective analysis. If they like the appearance and activity on the page, they consider it correct. Even if they don’t care for the layout and movement, they may not consider the page buggy. For a programmer, however, the tiniest bug can jeopardize an entire project. The other day I tried to order some printer cartridges from an online site. The site was well-conceived and had excellent prices, but it also had a bug. It was impossible to checkout. Whenever you requested to pay for your products, the site informed you that your shopping cart was empty. This one bug absolutely compromised the site, and could destroy the online business behind it.

Dynamic authoring environments and programming environments are converging, and the resulting mixture can be confusing to those looking for Web services. Web page designers are not necessarily programmers, nor are programmers necessarily graphic/video/vector artists. Although the look and style of your site has a substantial affect on return business, the programming side ensures that the site can do business. When you choose your Web tools, or a provider for your Web services, be sure you understand both sides of the coin. --Eric Binary Anderson is a development manager at PeopleSoft's PeopleTools division (Pleasanton, Calif.) and has his own consulting business, Binary Solutions. Contact him at