So, I start this new blog to relate my awesome experience in India. I had the chance to be invited to speak at the third edition of JUDCon India, speaking about Mobile and AeroGear of course !
Let me sum up here the different interventions I made during the conference.
I had a great opportunity to give some Mobile love during the keynote, after the usual welcome message, Bruno Georges started to explain how important Mobile was for Red Hat and to give a more concrete picture of that he gave me 20 minutes to make the audience excited about Mobile.
Just before the Conference, I created a Mobile Application called JUDCon Cricket. People here in India really love cricket, so I thought it could be cool to make an app on that theme rather than the usual TODO or Twitter clone demo. The concept of the app is very simple : you can retrieves cricket scores from a Webservice, add your own scores and be able to comment on each of these scores. Additionally, when someone comment a score, a Push notification is sent to other users.
So I give a short demo of the app, explaining that this was a concentrate of JBoss/Red Hat love, using the Four Fantastic : AeroGear, Forge, OpenShift and WildFly.
Using my point-to-view camera, I showed them the same app running on Android, iOS and FireFox OS.
Bruno then used the web variant of the app to add a comment and by doing this, a Push Notification was sent on the devices (including the web page, using Simple Push).
After the demo I told the audience that if the attend my sessions in the afternoon, I will show them how to create from scratch this Cricket App, that was a good teaser
Finally, to show how easy it is to bootstrap an Hybrid App, I told them that I will now create in 2 minutes an iOS Keynote app called nammadJUDCon (#nammaJUDCon was the hashtag for the conf) .
So I switched to a terminal and typed the following Cordova commands :
cordova create nammajudcon
cordova platform add ios
Then I asked to a technical staff to turn the light on in order to take a picture of the audience.
I made a funny, a bit psychedelic, picture of the audience, integrated it into the index.html of the Cordova app.
And then the magic :
cordova emulate ios
After a few seconds, the app showed up on the ios emulator and I told the audience that we could put that on the different stores and start making money .
AeroGear – An Introduction talk
In the afternoon, I gave 2 talks about AeroGear, the first one was a general talk, explaining exactly what the project was. The slides are available here and the sources of it are there , feel free to fork and submit PRs if you find any typos.
I finished my talk by presenting the UnifiedPush Server , there was a lot of interest for it and the audience asked really smart questions. It’s also noticeable, that people are really curious about Mozilla’s Simple Push Protocol and our implementation of it.
AeroGear – Get your hands dirty !
Right after the first talk, I had a second one. This time, no slides, just coding !
I have to say the Demo Gods in India are quite powerful, I ran into small issues but fortunately I had prepared some backups
So, the idea was to build the Cricket App I showed them during the Keynote. I started with an introduction of Forge , an awesome RAD tool that will help you to bootstrap quickly an JEE application and scaffold the client part.
Scaffold All The Things
The first step was explaining the Forge Script that will scaffold the whole app :
- Generating the JEE App skeleton
- Setting up the persistence
- Generating the entities, including relations between them
- Generating the REST Endpoints
- Scaffolding the HTML5 Client
After that I deployed the app on a running WildFly instance and showed the CRUD pages that were scaffolded.
Go ! Cordova ! Go !
The second step was creating the Cordova app. Like during the Keynote, I used a terminal to quickly create a empty Cordova app and copy the content of my JEE Webapp folder to the Cordova’s WWW folder, that’s literally 2 commands
After updating some small things, like pointing to the correct remote backend I deployed the app on my Android Device just by running :
cordova run android
Push All The Things
The third a final step was to integrate the Push feature to the app. To be honest, I was running out of time, so instead of live coding, I did a walk-through of my backup app that had already the push integrated.
I started by showing them the UnfiedPush Console and how to register a new Application and its Android Variant.
The next step was showing how to “connect” our backend application with the UnifiedPush Server. I made a quick intro to the UnifiedPush Java Client and explaining that it was really a matter of 2 steps :
- Add the dependency to your pom file.
- Create an UnifiedPush Message and send it !
The last step is to integrate the Push into the Mobile Application. Since we are building an Hybrid App, I showed them our UnfiedPush Cordova Plugin which will handle for you the registration to the UnfiedPush Server and handling the incoming messages both for Android and iOS. Installing the plugin is just a matter of typing :
cordova plugin add https://github.com/aerogear/aerogear-pushplugin-cordova.git
That ended my talk and after 2 hours of speaking and live coding I was exhausted but the enthusiastic and full of question audience kept me awake !
AeroGear – Gearing Up for Mobile Development
At the end of the day, I attended another AeroGear talk, given by Prajod Vettiyattil and Naveen Raj Balasubramaniam, both working for Wipro. They gave an awesome presentation with really nice slides , be sure to take a look at it.
I was really happy to see people, outside from the team, giving an AeroGear presentation.
JBoss Mobile Tools, Vert.x and Push
The second day, I co-presented with Ray Ploski another talk about Mobile. Ray showed the audience all the mobile tooling that is available in Jboss Tools like the Hybrid Project Creation Wizard and the jQuery Mobile Palette.
From scratch, he created a quite simple Cordova App and using the palette he dragged and dropped some widgets on page creation editor. We were also able to see the Cordova simulator and the very useful live reloading feature.
Then, he made an introduction to the Push Notification and I took it over. Basically, I did a recap of what I told in my talks the day before but since the audience was not the same, it gave a chance to “evangelize” even more people .
JUDCon India was really a great experience, I really appreciated the audience, always really focused on your talk, asking questions that really make sense.