Podcast Squares Project
Last edited September 6, 2006
More by Harry »
www.podcastsquares.com
Podcast Entertainment System 
written by Harry B. Garland
About Podcast Squares

Podcast Squares is...
...a combination discovery and entertainment tool: Putting the "fun" back into "functional".
...a tool for discovering podcasts FAST through a userpath of organized chaos. 
...module-based instead of page based; creates a unique pageless web experience.
...an asynchronous XML communication and streaming MP3 application.
...kept up to date automatically with frequent podcast updates from indiepodder.org.
...a complete podcast entertainment system that requires no software downloads to enjoy!
Unique aspects of podcast squares:
* podcast selection method is fun for the user.
   - discovery through selecting a random square, like playing podcast roulette
* easy to get started.
* integrated connection between discovery and entertainment
   - user can listen to one podcast while exploring other podcasts
   - single user interface solution.
      - no need to switch back and forth between the discovery site and your mp3 player application.
      - does not "hand the user off" to a separate media player after the discovery.

If you are not a technologist, doing the whole podcast thing on the web can be intimidating because of all the technology and jargon of podcast hobbyists.  With Podcast Squares, you don't have to understand XML data feeds, MP3 downloads, or aggrigator software.  Podcast Squares handles all of those things behind the scenes, so you have one single and smooth podcast enjoyment experience.
Technology

Database and List-Data:
- Updated frequently from indiepodder.org list feed.  Downloads local cache copy of all podcast xml files.  Keeps up with new podcast information.
- audio files are hosted by podcaster's hosted server.  podcastsquares.com is not an mp3 server.
- Keyword indexes will be updated once keyword-searching is implemented
100% Flash Client-Side Application
Flash is used for all aspects of visual and application design.  Asynchronous XML, streaming media, user controls and animations are all controled by a single Flash application.  This maximizes user interface integration abilities, producing a killer user experience.
Unique "Pageless" Web Interface

Most of the popular podcast directory and portal sites are purposed for discovery, while the playing and entertainment part seems to be handled as an afterthought.  Many of these sites are structured so that the entertainment part of the user experience is "handed off" to your mp3 player application, or an embeded player that loses state when you go to a different in-site page.
Podcast Squares uses modules, not pages.

By using modular components instead of web "pages", we can integrate 2 independantly operating components of the user entertainment system: discovery tool and player in one.
"Random 900" Feature

What is Random 900
- random instead of rated results.  all podcasts have an equal opportunity to appear, so therefore you end up with a different list every time.  this randomness could be replaced by various sort options in future versions.
- blind-eye for popularity and rank.  there are plenty of sites that already have system for determining the rank and popularity.  Consequently you've probably already discovered most of the popular podcasts.  by replacing ranking algorythms with randomness, we maximize the chance of discovering something new, different, and unexpected.
The idea behind Random 900:
- "Random 900" is perfect for discovering a hidden gem.  Its unique interface is based on the idea that "chance" discoveries are a valuable part of the podcast exploration experience.
- keywords and categories are useful for finding podcasts that you know you are looking for, but is not ideal for finding podcasts that you wouldn't know to look for.
- rating and popularity, and "top" lists are useful for finding podcasts that everybody else thinks is cool, but you will never find your niche if all you do is explore top rated podcasts.. use Random 900 to find those interesting podcasts that will always remain below the popular/mainstream level.
Why use Random 900:
- To discover interesting podcasts that you never guessed you would have otherwise discovered.
- To discover interesting podcasts from a blissfully chaotic assortment.
- To break away from the familiar podcasts that you've already discovered from a podcast "portal" website.
Podcast Squares List Source: indiepodder.org

About indiepodder.org
- contains both independant and commercial podcasts that anybody has freely submitted to the list.
- podcasts can never be removed from the master list by anybody unless the xml is malformed (technical problem).
iPodder.org : About the iPodder.org Directory
www.ipodder.org/aboutTheDirectory
A decentralized, categorized directory of links to podcast feeds
The Podcast Squares Spider

Podcast Spider is a single Perl script that executes frequently throughout the day as a cron job
- receives updates from indiepodder.org
- downloads each podcast xml file from each podcaster when new updates are disclosed by indiepodder.org
- includes "freshness" filter that requires that podcast is consistantly updated at least once per month to be included
   - the idea is that fresh content will encourage repeated visits to the site
- keeps relational database with records about each xml podcast file that has been downloaded
Observed Challenges 
Some podcasters keep all previous episodes included in the podcast XML.  Therefore, when episode #120 is released, my spider has to download the first 119 episodes all over again.  Currently, one particular podcast is 300K, and it is on target this year to reach a half a megabyte.  This is a bandwidth concern, and could require the need to add a filter to eschew (blacklist) podcasts that are too large to keep updated.  Of course, this imposes a limitation, and I would rather avoid limitations if possible.

The system is dependant on a single data source, indiepodder.org.  If that source ever goes away, the system will need to be reprogrammed with another data source, or possily modified to crawl the Internet to discover and download podcasts on its own, similar to Googlebot. 
Podcast Squares Asyncronous XML

How it Works
Upon application initialization, a list of 900 locally cached XML Podcasts is sent to the client.  Even though there are 900 items, it is a very small list (only 30KB) and transfers very quickly.

Initially, the client does not have any data about any of the podcasts.  The entire podcast XML file is downloaded in a prefetch sequence when the user hovers over a podcast square.
Model View Controller
 
The future of Podcast Squares

External features for a podcast entertainment system:
- widget to plug into other sites
   - google homepage module
   - myspace widget

- marketing tool for podcasters
   - podcasters put special swf file on their homepage
   - podcasters' listeners can use podcast squares to enjoy, rate, talk back
   - usage tracking

Internal features for a podcast entertainment system:

- podcast playlist for streaming podcasts at home and work.
   - integrated "aggrigator", or "favorite podcasts" tool
   - individual rating system (similar to Launchcast and Tivo)
   - automatically adds new episodes from favorite podcasts to playlist

- a new system of podcast post-discovery organization.
   - a virtual podcast desktop, where you can drag and group your favorites. 

- more "now playing" features:
   - podmail: users can talk back to the podcaster like voicemail using their computer microphone
   - integration with shownotes to allow user to select specific "chapter" (playhead position) of a particular episode.
   - "talkback" comments.  comments will be recorded by listeners.
   - parse and show html from podcast's official website
 
- podcast authoring module
   - podcast recording device
   - upload photos
   - webmail
   - events calendar, announcements can be added to podcast eg: "see us play in golden gate park on March 20."

- enhanced discovery options
   - filtration system, so you can filter out specific categories, keywords, etc.
   - XY grid, where X and Y coordinates represent variabbles such as rating, update frequency, etc.

- improved technology
   - use cookies to cache title and description of thousands of podcasts for instant-results searches.

Research: Example Podcast Portal Sites

PodcastAlley.com
www.podcastalley.com/
Podcast Alley is the podcast lovers portal. Featuring the best Podcast Directory and the Top 10 podcasts (as voted on by the listeners). ...
podOmatic Podcast Portal: Create, Find, Share Podcasts!
www.podomatic.com/
PodOmatic podcast portal: Create, Find, Share Podcasts! Get your free podcast hosting, free podcast creation, podcasting tips, free podcast tools, ...
Yahoo! Podcasts - Discover and enjoy all the best podcasts and vidcasts
podcasts.yahoo.com/
Search through our comprehensive catalog to find the best podcasts on the Web.
Odeo: Listen to Thousands of Podcasts (and more)
www.odeo.com/
Over one million audio files—from podcasts and all over the web. Listen, download, subscribe...
podcast.com - the home of podcasting
podcast.com/home.php
  • browse and graze podcast directories
  • search for podcasts
  • easy one-click subscription
  • Podcast Bunker.com - We only list the very best podcast
    www.podcastbunker.com/
    Directory of high quality podcasts, 30-second previews of podcasts and a podcast quick guide.
    Podcast.net - The Podcast Directory
    www.podcast.net/
    Note: This information is published on the homepage of podcast.net, the first result when googling 'podcast'.  Look at how complicated this site makes it to do the same things that Podcast Squares enables within 15 seconds of your first visit: 
    To fully enjoy what podcasting is all about, you will need to download special software to "tune in" to these podcasts. Links to software for various operating systems can be found below. After installation, come back here to Podcast.net for links to add shows to customize the reception of your personalized podcast station.
    The content on this page is provided by a Google Notebook user, and Google assumes no responsibility for this content.