Uploader Design

What I am doing is designing every window/screen of the Ambisonia Uploader. I am defining the complete user experience _prior_ to writing any code (well, I have already written some code to proof the technology I have chosen).

I have designed  around 12 screens. There are many use-cases to cover such as alerting for wrong logins, warning about duplicate names, etc. etc.

The screen  below is the principle screen. I am going to keep the recording details form (order, capsule type, mic,  calibration details etc.) on a different page because for most contributors, those details will always be the same.  The uploader will only  need to fill in the details form once, and its contents will be saved and auto-filed  for the next time.uploader_design.png

The uploader is not an easy project, however, because it has to be cross-platform, there has to be installer, software upgrades, bug reports etc. etc. etc.  Little by little, step by step, I will get there.

This entry was posted in Uncategorized. Bookmark the permalink.

4 Responses to Uploader Design

  1. Steve says:

    Couldn’t you avoid the cross-platform/download/install/update issues by making this a web based tool?

    What limitations made you decide that a web-based tool is not good enough?

  2. Hi Steve,

    Each of the Ambisonic files can be up to 600MB big.

    Currently, the contributor can not upload to Ambisonia just with a Browser. They have to install a bittorrent client, then create a torrent configured with the Ambisonia tracker, then ‘seed’ the torrent, then submit the torrent to Ambisonia. They have to keep seeding the torrent until at least 1 other person has the whole file.

    This process is a multi-step process fraught with potential errors. And errors do occur all the time.

    I have also had feedback from several contributors who have asked for an easier way to upload.

    Ideally, I could just do an HTTP post of the actual Ambisonic file .. but for large files this will fail often.

    When we move to compressed Ogg files (instead of uncompressed *.amb files), it might be possible to do straight HTTP posts.

    Both FLickr.com and youtube.com offer “uploaders” to take the difficulty out of web based HTTP posting. So the pattern of offering downloadable “uploaders” has been somewhat validated.

  3. Steve says:

    Thanks. I didn’t know all the details of uploading.

    So does Ambisonia store a copy of the full file or just the .torrent? Are contributors required to keep seeding for the files to be available?

    From my (ignorant, outsider) point of view, I’d just want to upload the .amb file and be done. Ambisonia should take care of making the .torrent and seeding. But maybe that’s just not possible because of bandwidth or disk space or something else I don’t know about.

  4. Steve,

    Yes, Ambisonia takes care of both the seed AND the torrent. In other words, it is both a Tracker AND a seeder.

    Most of the download bandwidth doesn’t actually come from Ambisonia however. There are currently around 5 or 6 ‘friends of ambisonia’ who seed the entire collection. Which is why downloads are so fast.

    It is actually easy to seed new torrents that are submitted because there are podcasts which contain the torrent files. Azeurus and other software is capable of subscribing to the podcast and automagically launching any torrents found. Thereby making it very easy for others to get and seed any new ambisonic files submitted.

    Amazon S3 will now act as the tracker. But S3 can be configured to only seed the files if there are no other seeds. In other words. The ‘friends of ambisonia’ can continue to seed the torrents thereby drmatically reducing ambisonia’s bandwidth costs.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s