Tuesday morning I held a webinar on Java mobile development using Codename One. First of all, I’d like to thank all who signed up and attended. Unfortunately there were some technical difficulties with the Webinar software that caused some major glitches. Double thanks to those who endured and stayed to the end. We’ve learned from this experience and we will do better in future webinars.
Since most of the people who signed up for the webinar indicated that they had no experience with Codename One, I spent the first 10 minutes or so introducing the framework, and showing some demos of some existing apps to give participants an idea of the possibilities.
The rest of the presentation was spent building custom social media app similar to facebook. I created a simple PHP/MySQL server-side application before hand and deployed it on the internet so that the mobile app would be able to connect to it from anywhere in the world. Therefore, the finished result, is actually a usable social network - though it is only "demo" grade, and I’ll probably take it down in a few months.
Here are some screenshots of the app:
The tutorial was structured like a cooking show, where I break the development of the app down into 12 "steps". By the end of it we have a working app.
Since there were technical difficulties with the actual webinar, I "refilmed" it afterwards using Screenflow, and I am quite happy with the results. It has been posted on YouTube here.
And you can access the source of the app (both client and server) here.
Finally, you can try out the app on Android here.
The Next Webinar
In the next session, we will take this bare-bones, yet functional, social mobile app as a starting point and discuss ways to make it better. Since this is literally an app that was built in a day, there are obviously lots of low-hanging fruit that we can pick on. The agenda hasn’t been finalized, and the date isn’t set in stone, but it will be within the next two weeks, and some of the potential agenda items may include:
Improving look and feel using styles, borders, and icons.
Adding Push support so users will be notified when news is posted, or when they receive friend requests.
Improving performance using various techniques including image compression, pre-sizing of images, network threads, and sprites.
Introducing Local storage for offline support.
Adding chat support
If there are particular issues you would like to cover in the next webinar, please post them in the comments below, and I’ll see if I can incorporate them.
The Webinar Software
For this webinar, I used GotoWebinar because I was familiar with GotoMeeting. Unfortunately there were some issues that make it less than a perfect fit for our needs. I’ve been reviewing Google Hangouts, and may try that out for the next one. If you have suggestions, I’m also interested in hearing what solutions you have used.
Happy coding, and hope to see you all in the next session!