A few weeks ago, in cooperation with Simon Fraser University’s School for Interactive Arts and Technology COOP office, I held a java mobile development workshop. This was a bit of an experiment to find out whether there was interest – plus it got me out of the code dungeon for a few hours :). As it turns out, SFU students do indeed have an appetite for learning, or for mobile development, or both. The workshop “sold” out within days of the initial email announcement.
Since the workshop was being held in the SIAT (Interactive Arts & Technology) department, I didn’t know what level of Java experience the students would bring to the table, so I designed a program that maximized the use of the WYSIWYG GUI builder, and minimized custom code. As it turns out, nearly everyone that attended was familiar with and experienced with Java. Who knew that SIAT students were so well rounded 🙂
The Format and Content
The workshop followed a strict tutorial format. Once the students were ready, and introductions had been made, we commenced development of a mobile application using Netbeans and Codename One. The source for the app are available on GitHub. It is a simple “tour guide” app for SFU, that allows users to find useful services at SFU.
While the app, in this form, isn't all that useful since the content is hard-coded in Java and not connected to a database, it is a good starting point for developers who want to build this type of app.
What I Learned
As this was the first time doing this type of workshop, I didn’t really know what to expect going in, but I learned a lot from the experience. To anyone who is planning on holding similar workshops at a school or university, here are some suggestions:
Ask questions in the sign-up form to gauge the participants’ experience level in the pertinent technologies. This will help you to customize the workshop content to the audience.
Don’t just jump straight into a tutorial – even if that’s what students came for. Spend 10 minutes first on the big picture. Introducing the technology, showing samples of existing apps, etc. This helps to motivate the students and think beyond the simple introductory project that they will be working on through the rest of the workshop.
Make the workshop as interactive as possible. Computing students don’t want to ask questions unless they absolutely have to. Even if they can’t get something working, they would rather not raise their hand. Do whatever you can throughout the workshop to keep the students engaged and provide them with pain-free ways to interact.
Overbook and use Waiting List. For free tutorials like this everyone signs up, but there is no consequence for not showing up. As such, we sold out very quickly, but during the actual workshop there were empty seats. It is better to overbook, and use a waiting list for when even the “overbooking” gets filled. And make it clear that it will be first come first served. In this workshop, about 60% of people who signed up, actually showed up. I don’t know yet if this is typical, but for the next one I’ll be overbooking by 50%.
Much of the feedback from the first workshop was positive, and we plan to hold more in the future. Once piece of feedback that was common was that the content was “too easy”. I definitely underestimated the audience. Future workshops will therefore be more challenging.
I’m located in the Vancouver, Canada area – which is why I did the workshop at SFU (I’m also an SFU grad, so that is another reason). If you would like me to hold a similar workshop in your school, and you are in the Vancouver area, please drop me a line.
Until then. Happy developing!