JavaOne 2014 App – the anti-pattern to mobile development

The JavaOne conference, held annually in San Francisco is a shining beacon of everything good and wonderful in the Java space.   What was once the main event, JavaOne is now a side show to the massively large OracleOpenWorld, which takes over all of the Moscone halls, streets and a number of hotels.  There was a time JavaOne was that big – but Java has fallen and if this years conference app is any indication, then we have much to rebuild.   More on that in an upcoming blog post.

There is a huge amount of sessions to choose from, lots of rich content and spread over 5 days you want to get the most out of it.   Perfect opportunity to install a mobile application to help pick, schedule and even rate the sessions.  An app that was in your pocket never being too far away from everything you need to make the most out of this unique experience.

Freely available from the app store, installation was relatively straight forward.  I say “relatively” because, the first thing the app does when it boots up is to download an update for itself, inside the app!   That isn’t the usual app design pattern.   But wait the crimes-against-app just get better.

On the first blush, the app runs up (very sluggish I will say, even though I am on a Samsung S5 and full bars on 4G) and asks for your username and password.   A pain, but Oracle needs to know who you are so they can sync up your schedule.  No problems, a common pattern here for any app to ask you to login.  A once pain to endue you would think.  Not on the JavaOne app.  Oh no, this bad boy will ask you at least once a day, if not more.   I don’t know about you, but I don’t know my passwords, I outsource that to LastPass.   So typing that big long obscure password in multiple times has already raised my annoyance factor big time.

The app displays all your schedule, in a standard looking mobile view.  Scrolling done with the usual swipe actions.  Again, feels very sluggish, feels like this is a web page being rendered instead of the instant feedback you get from a local app.   Hitting a session, takes a good 1-2 seconds before its displayed.

Once the session has loaded, all the content is there.  But again, look closely the app doesn’t feel native.  It feels like a rendered page with the tabs etc just feeling a little off.  Clicking on the tabs, takes another 1-2 seconds before the content is loaded up.  

No matter what you do really, you are greeted with the waiting feedback, and you see your network icon showing that data is being moved around somewhere.  The app feels like a very thin layer to an HTML site.  That is not what we demand from an app from the worlds largest software company aimed at the very demographic that is there to design and build the next generation of software.

As I noted before, the app crashes a lot.  I mean a lot.  So maybe this isn’t an HTML facade, but just a poorly design and built app.  As a user you get to know which areas you stay away from because when it does crash, you guessed it, you have to run it up, wait for the updates, login again and navigate yourself to the app.  Ridiculous.

The app is a train wreck.  Sucking away your battery, continually crashing, slow, poor rendered content, continually notifying you it has updated, the app is the perfect anti-pattern for mobile development.

A huge wasted opportunity to really show that Java and Oracle were back at the forefront of cutting edge technology and demonstrate that even though Java celebrates its 20th year next year, there is still life in this young dog yet.

This app was cutting edge 5 years ago.  Even then, only to those that see past the issues and marvel what could be when it evolves past the point of a proof-of-concept.  This app shouldn’t even get the alpha tag assigned to it, let alone released to the community at large.

JaveOne is a great conference, just don’t rely on the app to help you navigate it all.