The big news is that Google has released its cloud storage product - one of the worse kept secrets of recent days. However, Google Drive also comes with an API and this brings opportunities to build cloud storage apps.
Users of Google Drive will be allocated an initial free 5GBytes of storage, which can be expanded at a cost of $2.49 per month for 25GBytes with 1TBytes on offer for $49.99 per month.
Google Drive integrates with Google Docs in the sense that it is used for document storage and also integrates with existing Google services such as Gmail and Google+. Currently it works with PC, Mac and Android with iOS coming soon.
One small problem is that Google Drive isn't available for every user just at the moment. If you try and make use of it then you stand a chance of encountering the message "Your Google Drive is not ready yet", and your only option is to sign up to be informed when it is ready.
In theory the largest single file that you can store is 10Gbytes which should be enough for most applications.
The new API gives you access to file creation and manipulation, but only with some user intervention and this rules out some types of app.
You have to list your app in the Chrome Web Store before it will work. This is because authorization for your app to use the files is conditional on having been installed from the Chrome Web Store. This means you have to list and install from the Web Store even during development.
Users also have to authorize file access just to files that the app creates or that the user opens via the app.
Your app has to make use of the Drive UI to show the user a file manager type view of their files, which allows them to manipulate the files. A user can open a file with a specific app or create a file for a specific app. The app is then passed an authorization token, which then allows it to create or download the file.You can also update a file's metadata or content. The same mechanism works to create a folder, which is treated as a special type of file.
What you can't seem to do programmatically is to create or open a file without the user's input and this restricts the type of app that you can create. There is little scope for creating file management or clever synchronization apps because the user has to be involved in the creation or opening of files.
The Drive API is welcome, but it is very restricted. The restrictions are necessary to an extent to ensure the security of the users' data, but they also serve to limit the potential to misuse Google's cloud storage. For example, if fast programmatic access was possible you could create an app that automatically merged a number of Drive accounts together to provide (potentially free) aggregated storage. The limitations seem to restrict you to creating web apps that use Drive as their document storage, and don't allow you to build storage utilities, which is where there is scope for real innovation.
You can see a very short presentation video on the API below:
Now in its 5th year Google Code-In is an opportunity for pre-university students aged between 13 and 17 to have an experience of real world coding and making a contribution to an open source proj [ ... ]