Apple Developer Connection
Advanced Search
Member Login Log In | Not a Member? Contact ADC

MediaBeacon Requires a Robust Toolset: Xcode Delivers
Efficiency and Compatibility

Mac OS X, Xcode Tools, and QuickTime proved an unbeatable combination for BrighTech, Inc. who used them to streamline and simplify product development for MediaBeacon, a digital asset management product originally created on Solaris and Linux.



A Complex Development Scenario

MediaBeacon is a completely Web-based product that can be used and managed through a standard web browser. "Development of MediaBeacon is continuous, and has always reflected our use of the best tools available at the time," explains Jason Bright, BrighTech President and CEO. "We began using Java on Solaris and were one of the first adopters of JavaServer Pages [JSP] to create dynamic content."

Jason continues, "Solaris development was centered around command line tools like vi, gcc, and JDK so that is what we used. Then MediaBeacon was ported to Linux to take advantage of its improved execution environment. At that point we were still using vi but we developed a Quark plugin and integrated desktop applications into the product for use as file manager tools. These were written in CodeWarrior."

It was a complex development scenario. "We ended up with CodeWarrior, vi, JDK, gcc, and shell on Unix/Linux, and of course our developers had to know the Integrated Development Environment [IDE] for all of these in order to write code," says Jason. "We had a separate IDE for each piece of the product."

Mac OS X and Xcode Tools Change Everything

"When Mac OS X was released it was a godsend," says Jason. "Every single tool we needed and had used for four years was part of the basic install. Incredibly, Mac OS X supports JSP, Apache, QuickTime, XML, SOAP, PDF, and of course, Enterprise JavaBeans. We started trying to port MediaBeacon to Mac OS X immediately. It took us three weeks to do it — a psychotically short period of time for a product like ours. We didn't port to Mac OS X; Mac OS X ported to us."

BrighTech also moved all their product development from CodeWarrior and the array of Unix tools to Xcode Tools. "That move provided our most important benefits," Jason says. "Using Xcode for development has made the biggest difference of all — we can use the same IDE for all the separate MediaBeacon pieces so our engineers don't have to learn four different IDEs. Development is now streamlined and efficient."

"I love the fact that Mac OS X and Xcode use open standards," Jason says. "That has really allowed Xcode to outpace CodeWarrior. Now that we can develop using one central IDE for all languages, it means that the client, server, and desktop are all the same technology — and it's such a flexible technology that our users can customize it and change the interface as needed."

Adds Jason, "The simplicity of the system now makes new things possible for us on the development side, and translates into cost savings for both our developers and users."

"An Amazing Development Tool"

The company also wanted their product to install in three minutes or less, so after the initial port to Mac OS X they spent time working on building an installer in Cocoa using Interface Builder (the graphical user interface design tool that is part of the Xcode Tools suite). "When we were done, MediaBeacon installed in a couple of minutes — much faster than we expected — and the interface looks amazing," Jason says.

Xcode Tools do a great job of providing command line tools for developers while giving control of the look and feel to the designers. "It is at once simple enough to be the best interface design tool hands down and powerful enough to take on any compiler in the command line," Jason says.

"Xcode is an amazing development tool," he continues. "Fully thirty percent of MediaBeacon is dedicated to debugging itself, and we have layers of debugging that go on all the time. If we'd been able to develop this originally using Xcode, we could have used its built-in debugger and saved ourselves from writing custom code to do all of it."

Open Standards Make Mac OS X A Perfect Move

The move to Mac OS X was perfect for MediaBeacon. Mac OS X is Unix-based, includes all the relevant shells, and supports Apache, Tomcat, and JBoss — all technologies used by MediaBeacon.

"Mac OS X also includes QuickTime, of course," Jason adds, "and its support of open standards — all our required image formats — is critical because MediaBeacon uses QuickTime for all its image conversion."

With QuickTime as the engine for all of MediaBeacon's image conversion, users get fast, usable libraries and support for every image format they need. Within MediaBeacon, QuickTime creates a set of metadata and preview images to describe and display the original file. After an original file has been organized and given metadata, it is referred to as an asset. All of this is mirrored into an XML database to provide a responsive interface and to enhance searching.

A wide variety of technologies are employed by MediaBeacon. The principal technology that provides the application with its powerful feature set is Enterprise JavaBeans [EJB] from Sun Microsystems, Inc. EJB enables BrighTech to develop platform-independent extensions that can be integrated with a web server and extend the server's functionality within a well-defined framework.

MediaBeacon also uses JSP exclusively to provide the web interface — this extension of Java technology was created to support HTML and XML pages. Its primary benefit is that it makes it easy to combine dynamic content from MediaBeacon with static information within an interface, defining how dynamic content gets introduced in an otherwise fixed template.

With so many technologies in the mix, Mac OS X's robust support of Java and other open standards is critical to BrighTech, enabling them to develop on Mac OS X and run the result on almost any platform. "Mac OS X allows us deploy all the MediaBeacon pieces transparently across all our supported platforms," Jason says. "We can develop on Mac OS X in Xcode and easily port back to our original Linux only because Mac OS X supports open standards."

Asset Management on the Mac

Asset management is critical to many large and small companies where groups of people need to share files and preview files, and need to share message boards, previews, and discussions. MediaBeacon is used by content providers including Web developers, prepress and printing houses, video and medical imaging companies, and advertising agencies. Using MediaBeacon allows such organizations to manage total cost of asset ownership and realize a significant return on investment.

"Companies need asset management," Jason says. "Something like iPhoto on serious steroids. I've been an Apple developer since 1985, and so when I created this product seven years ago I naturally focused on something that would revolve around the innovation of the Apple platform."

It is this continual pursuit of innovative solutions that makes Apple and developers like BrighTech an unbeatable combination.

For more information about BrighTech and their products, visit the website at www.brightech.com.


“We can develop on Mac OS X in Xcode and easily port back to our original Linux because Mac OS X supports open standards.”