Pandora.com sings with OpenLaszlo

13.02.2006
In ancient Greek mythology, Pandora, whose name means "all gifted," received many gifts from the gods, including the gift of music from Apollo. She was also very curious. Unlike those gods of old, who were displeased with Pandora's curiosity, the developers of Pandora.com say they celebrate that trait and have made it their mission to reward the musically curious with a never-ending experience of musical discovery.

Launched on Sept. 1, 2005, Pandora is a service designed to help users find and enjoy music that they'll love, says Tom Conrad, chief technical officer at Pandora Media Inc. in Oakland, Calif. The site, built using open-source software, is powered by what the company calls the Music Genome Project, which gives users an analysis of the musical characteristics of individual songs. To build Pandora, Conrad says, developers used OpenLaszlo, an open-source development platform for building rich, interactive Web applications, from Laszlo Systems Inc. in San Mateo, Calif.

On Pandora.com, a user enters the name of an artist or a song, and the service instantly creates a radio station that plays songs that share musical characteristics associated with the artist or song provided. From there, the user can fine-tune the station to his taste by giving Pandora feedback on the songs it plays. A user can make up to 100 unique stations that play all kinds of music -- pop, rock, jazz, electronica, hip-hop, old and new -- from a library of more than 300,000 songs from over 10,000 artists. Because Pandora is entirely Web-based, users don't need to install any software to start listening, Conrad says.

"We wanted to build an experience that was fundamentally about audio, not about hundreds of thousands of artists' pages and recommendation pages and lots of hyperlinking and this big Web site you come to," Conrad says. "Lots of other people have already done that. We wanted to build something that was really, really simple -- sort of a one-click radio [station]."

To do that, Pandora's developers wanted to have a rich, dynamic, engaging user experience that responded quickly to user input, played high-quality audio to the PC immediately and did not require the installation of an application or a bunch of plug-ins, Conrad says. So when the developers sat down to figure out how they would build it, they contemplated two options: the Dynamic HTML approach of Asynchronous JavaScript and XML (AJAX), or Macromedia Inc.'s Flash, which pointed them toward Laszlo, he says.

The AJAX approach, which is how Google Maps and Gmail are built, is an application development technique that lets the programmer get a more dynamic, rich-client kind of experience out of a Web browser. It allows the developer to build applications that have the interactive character of a desktop application but run in the Web browser, Conrad says. The other approach is to use Flash for the user interactions. Like AJAX, Flash has a high level of interactivity, as well as an experience that's more like a desktop application and less like the "point, click and wait" Web, says Conrad.