Last night we held a jclouds meetup at Cloudera offices in San Francisco. It was a well attended meetup and there were a number of new faces along with our more regular group of attendees. We recorded the whole thing with Google Hangouts on Air and you can get to know everyone in the first 5 minutes!
I kicked things off with an introduction to jclouds at 0:04 of the meetup. I'll be giving this presentation at ApacheCon on April 7, 2014 and wanted to take this opportunity to practice it in front of a captive audience. You can find my presentation slides at Introduction to Apache jclouds.
Next up was Andrew Gaul from Maginatics with an informative presentation at 0:40 of the meetup on Apache jclouds at Maginatics. I personally learned a lot from Andrew's presentation like the wide variety of differences amongst object storage providers. The engineering work that Gaul and the team from Maginatics have done around the BlobStore portable API in jclouds is impressive.
At 1:09 of the meetup we made a toast to Ignasi Barrera for his work in kicking off the jclouds website redesign. Thanks Ignasi! And thanks to everyone who helped make it a reality!
Then we had a good talk about the future of jclouds. A few interesting points came out of the discussion.
It's time to seriously considering dropping support for Java 6. Java 6 is officially end-of-life and has been a security bug ridden mess for Java. It's time to move on. We agreed on a rough plan of action to move forward.
Reach out to users. A blog post dedicated to the topic and sending out an email and tweets to get user feedback.
The last branch to have support for Java 1.6 will be a long lived branch, effectively indefinite. We will backport crucial bug fixes and do releases on the branch but no new features will be added to it.
The exact timing and releases in which these things happen have yet to be decided on.
There was concern expressed by the Maginatics team over the performance impact of the RestAnnotationProcessor for BlobStore intensive work.
In his presentation, Gaul mentioned that Maginatics had discovered that the overhead of reflection call in the RestAnnotationProcessor were causing what should have been I/O intensive work to also be CPU bound.
The Maginatics team was interested in experimenting with alternatives to the RestAnnotationProcessor.
This experimentation could be achieved by supporting a new BlobStore provider or altering a seldom used BlobStore provider with a new way of making the HTTP calls.
There was also some interest in creating a compatibility matrix of what features cloud providers offer and what subset of those features jclouds supported.
Andrew Gaul offered to create such a matrix for BlobStore providers.
Andrew Bayer offered to create such a matrix for ComputeService providers.