Under the hood with Adobe TV

by Kush Amerasinghe

A few months ago, while the fog covered the top half of the Golden Gate Bridge, a group of us went out on the town to celebrate the launch of Adobe TV 3.0. Among the participants was Edge Managing Editor Julie Campagna, who — in between toasts and singing along to '80s rock — asked if I would write an article about Adobe TV for the Edge newsletter. As a producer and all-around go-to guy on the Adobe TV team, I was happy to oblige. So I contacted a few of the key people involved in the project and conducted some interviews to give you a behind-the-scenes look at how Adobe TV 3.0 was born.

What is Adobe TV?

Adobe TV is Adobe's online TV network, offering free training, inspiration, and information about the latest Adobe products and services. With Adobe TV, you can watch videos online or offline (via Adobe Media Player), save episodes, subscribe to your favorite channel, and embed videos within your blog or website. Adobe TV is produced and delivered using Adobe products and technologies. Many Adobe employees (including myself) present and/or produce shows for Adobe TV, and we also offer content from our training partners. Adobe TV currently has a catalog of more than 6,000 videos in four languages.

The sample movie listing application.

Adobe 3.0 goals and challenges

We had several objectives for Adobe TV 3.0, including:

As with any project, we were faced with several challenges, including:

Under the hood

To complete this project, we used a variety of technologies, including:

How we did it

For this article, I interviewed Bob Donlon, general manager of Adobe TV, as well as Joseph Princz and James Brown of Wrecking Ball Media Group, the interactive agency that — along with several groups at Adobe — was responsible for designing, developing, and architecting Adobe TV 3.0. Princz and Brown were heavily involved in all aspects of site architecture and development:

Amerasinghe: Bob, can you take our readers back down memory lane and tell us a bit about the pre–3.0 era of Adobe TV?

Donlon: Adobe TV began as a very small seed project. I was the only person dedicated to it at the time. I had a very small budget. I worked with video producers within the company to acquire content in time for launch and worked with engineers overseas to get the site built. We launched Adobe TV 1.0 on April 8, 2008 — and over time, as the site started to attract users, we learned very quickly what was and wasn't working from visitors as well as colleagues at Adobe.

Amerasinghe: Were there any big surprises once the site was launched?

Donlon: Yes. The flood of content. When we launched Adobe TV 1.0, we had about 200 videos in English only. In less than a year, we had grown to more than 3,000 videos in four languages. Needless to say, we quickly outgrew our initial architecture.

Amerasinghe: How did you go about solving that problem?

Donlon: I immediately started to look at off-the-shelf offerings, but not a single one could meet our requirements without a significant number of extensions and modifications. So we decided the best approach was to have something built to our specifications that would serve our specific business and technical needs.

Amerasinghe: Why did you choose Wrecking Ball Media for the job?

Donlon: Wrecking Ball had recently completed a web video portal for a major cable TV network, a project that was similar in scope to Adobe TV. Plus, Wrecking Ball likes to push the boundaries and is a long-time participant in Adobe beta programs. I felt Wrecking Ball was right for the job.

Amerasinghe: Now let's get into the guts of the site. I understand we have a rich blend of homegrown technologies, including OSMF, which was formerly known as Strobe; ColdFusion 9; and of course Flash. I know it makes sense to use Adobe tools to make a major Adobe site, but what other factors went into the decision?

Donlon: It made sense to use these technologies, regardless of the fact that Adobe develops them. As for building the site on ColdFusion 9, Wrecking Ball made that decision.

Amerasinghe: James, why ColdFusion?

Brown: I've been using ColdFusion since it was an Allaire product, so it was an easy choice for me. But aside from being familiar with it, the biggest factor was that it enabled us to rapidly build and deploy a large-scale, data-driven website. I honestly don't think we would have met our deadline if we were using any other technology.

Amerasinghe: Tell us more about what goes on under the hood of Adobe TV 3.0.

Brown: The site runs on ColdFusion with an Oracle database. When someone visits a page on Adobe TV:

  1. The request is made to the ColdFusion server.
  2. ColdFusion gets the information from Oracle and generates the page.
  3. ColdFusion sends the page back to the visitor.
  4. The code is sent to Adobe Flash Player. When it loads, Flash Player makes a remoting call back to ColdFusion, and ColdFusion returns all the information about the video.
  5. Using that information, Flash Player streams the video from our content delivery network (CDN).

It's a simple process, but with the complexity of the site and all the customization going on, it does get complex.

Princz: We also use jQuery, which is a lightweight but powerful framework that enables rapid application development and fixes several cross-browser issues that would normally arise in coding JavaScript. jQuery handles most of the heavy lifting, enabling us to focus on design, and it simplifies the implementation of features such as the scrolling flexible messaging area (FMA).

Brown: jQuery also enables and assists with Ajax communication with the server. Ajax lets us make additional server requests without reloading the page. For example, when you add an episode to your playlist, jQuery makes an Ajax call to the server to save the episode. Without Ajax, we would have to send the user to another page and then back to the page they were on. This provides a much better user experience and much better use of server resources and bandwidth.

Princz: Also, on the front end — via jQuery libraries — users can customize their home page with the shows they like and rearrange the content on the page to suit their needs best by simply dragging and dropping on the page. We can implement a clean, fast-loading page by not having to load all the content at one time. The use of jQuery accordions allows for secondary content on virtually every page of the site while keeping it hidden and displayed based on user request. Additionally, with the use of accordions, more content can be available instantly at the user's request.

Brown: Other uses of jQuery and Ajax across Adobe TV include:

The sample movie listing application.

Princz: Another important aspect is URL rewriting, which essentially ties into the systems and allows for an easily readable, user- and SEO-friendly link to be automatically generated just by the way the ecosystem was designed. The URL is based on the schema Channel > Show > Episode or Product > Show > Episode, so when the URL is displayed, ColdFusion queries Oracle for the necessary data and builds the URL based on the actual show/episode name so it may look something like this:

Amerasinghe: James, what do you like most about the latest release ColdFusion 9?

Brown: For me, the biggest thing in ColdFusion 9 is object-relational mapping (ORM), where the database treats everything like objects rather than SQL calls. And little features, such as the CF spreadsheet tag for importing spreadsheets, were also helpful. Not having to specify the data source in cfquery is another little thing that really helped speed things up.

Amerasinghe: I understand you created the site while some tools, such as ColdFusion 9 and OSMF, were still under development. What was that like?

Brown: On the ColdFusion side, it wasn't that bad. We started developing on a pre-beta release, and it wasn't long until the public beta came out. Once the beta came out, it was pretty solid. I think we were fortunate. Of course, there were a couple minor things we had to change when the final build was released, and we did hit one obscure bug. But for the most part, it was a good platform, and we even launched the Adobe TV site on a beta release of ColdFusion. ColdFusion 9 wasn't even available yet when Adobe TV went live.

Amerasinghe: Do you think Adobe TV has set a standard for how businesses can use video to reach and support customers?

Donlon: I think we are definitely leading the way. However, I think others will catch up soon, especially since video is becoming a standard for communicating and delivering information to customers.

Princz: I think Adobe TV is a great case study for using ColdFusion Builder and the new tools available in ColdFusion 9 to create an enterprise-grade, database-driven solution.

Brown: Aside from the user experience and site architecture, I think Adobe TV sets a standard in terms of the sheer amount of video content that is available.

Amerasinghe: Bob, what are your thoughts on the final result?

Donlon: From the user-experience side, all the major problems we identified have been fixed. Content is now being exposed to search engines. The site loads faster, performs much better, and is a lot more stable. And the navigation and usability are greatly improved.

Amerasinghe: What kind of feedback are you receiving from users?

Donlon: We've received a ton of positive feedback. While most comments pertain to features and capabilities — the ability to personalize your homepage, comment on videos, navigate the site in a more intuitive manner — many people are surprised by the amount of content we currently deliver. We have some really popular, well-received shows on Adobe TV.

On the client side [internal Adobe folks], our business users are satisfied as well — and that's really important to me, because I have to see them every day! Seriously though, we've been able to greatly streamline the content management and publishing process — and using Omniture, we are able to report metrics and understand key trends. However, there's always room for improvement. We will continue to make improvements and add new features and capabilities to the site.

Amerasinghe: Speaking of metrics, what about traffic?

Donlon: Traffic to Adobe TV has doubled since September 2009 — and that's without any major advertising. So, all in all, things are looking good.

Moving forward

While I can't publicly talk about everything that is planned and happening behind the scenes with Adobe TV, we are continuing to work on the site. In the future, we hope to deliver tighter integration with social media such as Twitter, stream live events, and enable chaptered video within the player. Other than the site infrastructure, the content itself is updated regularly, and the number of videos and the range of subject matter keeps growing.

So continue checking back to see what's new on Adobe TV, and keep your thoughts and suggestions coming by using the feedback form.

Visit Adobe TV ›

‹ Back

Kush Amerasinghe works as a computer scientist for Adobe Systems. He currently wears many hats, including being a video content producer for Adobe TV while hosting his own show Ask the Adobe Ones — a lighthearted, interactive web show where the audience gets to ask him and other Adobe experts questions. Before joining Adobe, Amerasinghe worked in many different fields, including multimedia, web, television, visual effects, and education.