-
-
Save sspencer/309044 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
I'm Lloyd Hilaiel from BrowserPlus. `[show the yahoo cow, moo]` | |
This screencast explores the question, *how do we make uploading from the Browser, better?* `[textual question | |
showing on screen]` | |
What does better mean? | |
* Better means *easier* for the user to select the content they wish to upload `[easier floats in lower left | |
portion of screen]` | |
* Better also means the selected content should transfer *faster*. `[faster floats in lower | |
right portion of screen]` and `[easier animates to takes up whole screen and push off other text]` | |
Lots of people have been building features to support **easier** uploads: | |
[fast flipping through screenshots of: | |
facebook uploader, ffx 3.6 image uploader, gears logo, plupload, and landing on Y! mail] | |
We've organically agreed that there are six key elements to a good upload experience: `[zoom into attachment area]` | |
1. Drag and Drop `[show DnD onto yahoo mail]` | |
2. Multi-file selection `[yahoo mail, selection of multiple files]` | |
3. Folder Selection | |
4. Content Type filtering | |
5. Inline Image Editing | |
6. Rich Visual Feedback | |
These six ideas compose *easy* - a smoother user experience, but it only answers half the question. | |
## What about faster? ## | |
It turns out that making content go faster is *complicated* and varies based on a numbe of factors: | |
1. Bandwidth | |
2. Content-Type | |
3. Number of files | |
4. Processor Speed | |
5. User's intentions | |
So building a faster upload can be *difficult*. Our approach in BrowserPlus has been to expose tools that can | |
be combined in different ways to attack the problem at the web application level. These tools include: | |
1. combination - BrowserPlus today supports combining multiple files into one using either tar or zip | |
2. compression - different services available in production now provide gzip, bzip2, and LZMA compression, each | |
having different compression characteristics at different costs | |
3. content specific optimization - today we support high-quality image down-sampling | |
4. parallelism - upload multiple files at once | |
## Pulling it all together ## | |
In order to see a number of different tactics and their relative performance, we put together this | |
uploading demo: | |
[show demo during upload] | |
Here you can viscerally see the different tradeoffs associated with different tactics in different environments. | |
Some interesting conclusions emerge, like: | |
1. Over a very fat pipe gzip compression is generally the best choice | |
2. parallelism alone can half the time it takes to upload several small files | |
3. LZMA compression can half that again when files are amenable to compression. | |
Ultimately,to speed uploads you need to send fewer bits. And BrowserPlus gives you a loaded tool chest | |
offering image resizing, file archiving and three different types of compression - GZIP, BZIP2 and LZMA. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment