EMC has a lot to offer developers. Whether you are building a web, thick client, RIA or mobile app, EMC offers multiple building blocks for you to use in your application. This post summarizes some of the developer resources available from EMC.


Lets start with cloud and storage.



Any application you build will need some storage. Now with Atmos cloud storage you can have enterprise class storage available to you almost immediately without any hardware or datacenter setup. Once signed up, getting started with building an app on Atmos using its simple REST APIs and language bindings should take less than an hour. We have great starter code for you and one that even shows how to encrypt data using RSA BSAFE before putting it in the cloud.


Atmos Online is a unique storage system in that in addition to providing the traditional storage functionality, it is accessible over HTTP and able to participate directly in applications over HTTP.


I particularly like the potential of Atmos Online for mobile devices. Mobile devices are not the most reliable place for storing your precious data. Solutions typically rely on physically attaching and synching your mobile. However, with cloud storage its possible to put data directly into storage without waiting for a physical sync. In addition to putting the data, it is ofcourse possible to access data from it anytime / anyplace unlike waiting for a physical sync..



In addition to cloud storage, we also have Celerra (NAS) and Centera (content addressed storage) available from EDN. A complete Celerra simulator is available from the EDN. XAM SDKs used for development on Centera are also available and you can use the online clusters for development. You don't need physical storage systems to begin development on either Celerra or Centera.


Content, Process, Case Management

If you are looking for pre built information management technology, EMC has plenty of that too.


Documentum xCP is taking a new approach to "development" by making applications more configurable. The Documentum developer community even ran a "code free" challenge. If you are building anything that has the words "Business Process" or "Case Management" head over to the Documentum community. Take Documentum xCP for a spin and let us know how much code you actually wrote. Here is an introductory video for you.


Apart from xCP, the core Documentum platform itself offers a solid object based approach to information management. It allows you to treat each piece of content (a file, image, ...) as an object that has rich set of metadata attached to it including the ability to create your own object types and metadata. Each object can further be versioned, participate in lifecycle and business process. The complete Documentum platform is available for free download from the community with a developer license.



Now adding cryptography in your applications is even simpler. RSA BSAFE, which is one of the most widely deployed pieces of software (a billion apps!) is available in a no-cost (free) download available on the EDN. There are some great articles on using toolkits to get you started including one that shows how to encrypt files and store them into Atmos Online cloud storage.


Database and XML

Almost, all apps design their datamodel as Objects and then try to force fit that object structure into tables in a RDBMS. The structure of XML allows more natural definition of an Object with its internal object tree and multi-valued attributes. That way you are not trying to force fit an object structure to tables. Using an XML database like xDB, you can now model objects and persist them into an XML database. Objects can be easily queried on their various properties using xQuery. You could have a no-SQL option for your database applications. We have  experimented with this on EDN - xDB Desktop App & Persisting POJOs in xDB


Lets take this a step further. Almost all web apps are now adopting AJAX. The most common data interchange format between the browser and web app is XML. This XML data is further obtained from the database. In today's apps, this data is obtained from RDBMS and then converted to XML. But if  your data is stored as XML, its a more natural fit for AJAX applications. Dynamic Delivery Services (DDS) offers an application framework that provides all the functionality to build your web apps on.


Document Imaging

Last but not the least, we have some scanning toolkits also available for free download from the ISIS Document Imaging community.


Closing Remarks

There is a lot here - storage, information management, security, database and even ingesting physical data. You can choose one or more of these building blocks for use in your applications. To learn more visit each community from the EDN Home page or here are some quick links.


We hosted a Developer Challenge to combine two or more of EMC technologies and any other industry technology.
The Monster Mash was a huge success - check out the winning entries and download all the code here - http://developer.emc.com/monstermash