Channels ▼
RSS

Design

Cloud Computing and Content Sharing


As cloud-based computing resources continue to grow in acceptance and importance, new applications and services built on these resouces are cropping up everywhere. Drop.io, a new content-sharing system that bills itself as a kind of "digital switchboard" debuted in July. Recently, Drop.io moved to a cloud-based infrastructure, and last week saw the introduction of an API that allows developers to build their own apps on top of Drop.io's functionality. We asked Jake Good, evangelist for Drop.io and one of its lead developers, what the new functionality means for developers.

DDJ: What is Drop.io in a nutshell?

JG: Drop.io is the simplest place to share files online. Privately share what you want, how you want, with who you want... Our main goal is to provide the most streamlined, stress free ways to push digital content around on the web. There are no accounts and files are easily converted (if we can) to a web friendly format, so no extra software to install and convenient access to files any time you want.

DDJ: Drop.io's API is built on RESTful prinicples (interfaced components with clearly defined methods and uniquely identified by a URL). But so are Amazon's storage services, some of which Drop.io's functionality is built upon. What's the advantage for developers of using Drop.io's API instead of going directly to a service like Amazon S3?

JG: The advantage for developers using Drop.io's API instead of another storage service, such as Amazon S3, is that we have other unique services on top of our storage that makes content simple to share. For example, if a developer uploads an image to S3, it's just on S3. With Drop.io, if a developer uploads an image, there are thumbnails created, built in commenting system, and an authorization system in which you can share your image with whomever you want (with our without divulging the location). It would be comparable to a VAR for S3...

Since Drop.io is all about simple private sharing, we take advantage of S3 for raw storage, but we provide many mechanisms on top of S3 that make sharing privately simple. Conversion to web friendly formats, authorization system (through passwords or obscurity on 2 levels**), and a distribution platform (fax, email, sms, twitter) are some of the great features that put us above other simple storage solutions. And now with the API, we'll start to see a VERY powerful and simple ecosystem on top of the API with many different inputs and outputs. We have developers that are already thinking about using the iPhone and other popular services, like Gmail, to provide users with the capability to easily store and share their content. It seems simple at first, but when you start searching for other content to remix, the possibilities are endless.

** The obscurity on two levels starts with Drops not being indexable by search engines. From there, you can choose (authenticate) people who you want to view the drop OR the asset. Then you can pass them a url and/or password (authorization) or pass them a hidden url to the asset (the 2nd level of obscurity).

DDJ: How well do you envision it scaling? How big of an app or system could you build with it?

JG: Since our entire ecosystem is in the cloud, it gives us the unique ability to scale "at will". Traditional services that need to scale have to go through an expensive (time & money) procurement procedure before they can get extra hardware. Or they have to buy extra hardware up front. Currently our API is rate limited (250 API calls per minute) but when applications want to get large, we can disable the rate limit at a cost... This will ensure that we should be able to scale drastically to fit our customers needs. It's been fantastic so far and a great move from our physical hardware setup that we had before.

We have customers out there with thousands of assets in Drops and we expect that with the API, more customers will start storing more content. We aim to be able to handle whatever application comes along. Our entire goal is to get people to share their content, so the more applications and people using our service, the better off we are!

DDJ: What do you envision for the future of Drop.io? Is there a strategy for growing it?

JG: The overall vision for the future of Drop.io is to ensure that we continue to provide a simple way to privately share files online. As our product grows, as well as our user base, we'll continue our efforts to provide a robust platform with just the right mix of features. With our latest announcements, the API and "cloudification" of Drop.io, we don't want it to seem as though we are done. We have plenty more to show and a have a very talented team.

As far as the vision for the API... Typically, when given an API, developers tend to build products that are composed of mostly what the API provides, and in our case, what Drop.io provides. We like to think of our API as a digital switchboard, allowing multiple inputs and outputs and pushing content through our Drop.io ecosystem. A large portion of our product is about simple sharing of digital content and while we offer plenty of ways to get content in and out of our system (SMS, email, file upload, twitter), but we are going to push developers to create applications that are focused on alternative inputs and outputs. We like to call it "remixing digital content on the internet's switchboard."

DDJ: Where can readers look for more information?

JG: They can check out the Drop.io API Quick Start Guide, and these sample applications:

http://usend.io
http://collab.io
http://hahayoureinaphoto.com


Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.
 

Video