Are You Ready For Mobile Development?

Of the ten students in my most recent mobile software development course, two work directly in software development.  The remaining eight are either marketers or have executive responsibilities in their company.  This mix of skills and responsibilities, a little different from the norm for a hands-on course like this, generated an interesting combination of points of views and expectations.

It is not possible to deeply study the iPhone/iPad, Android and BlackBerry platforms in only five days.  In order to get the most value out of the class, we worked out a nice flow that started with discussing the foundations of these mobile platforms and their similarities, followed by an examination of their differences.  We also wrote a BlackBerry application, and reviewed the code for an iPhone and an Android application.

The transition from coding on one platform to coding on another platform was not smooth.  The programmers in the class told me they had expected to work on simple ‘Hello World”-type examples, and they were surprised that I brought a whole end-to-end application they would need to code from scratch.  They said this was arduous at times, but also rewarding because they worked on something that contained real-world solutions they can apply to their own applications.

Mobile software development is challenging

It was interesting to observe fellow technologists realize the magnitude of the challenge in developing products that target more than one mobile platform.  For example, how difficult it is to find expert leaders and programmers that can be effective on iPhone, Android, Nokia, BlackBerry and Windows mobile.  Or how difficult it is, even for teams with a clear vision of the systems’ goals, to create satisfying designs for each platform.

The situation is similar in the tools arena.  Only a few viable cross-platform development tools exist today, while many problem domains require a level of access to device capabilities, performance and other features only achievable by native applications written with the platform’s development tools.

It takes a committed team

The active participation of company leaders was another interesting highlight of the course.  I’m happy they signed up.  I think it is important for them to know how their products will work, and what it takes to build them.  This is a responsibility they share with their colleagues from the software development department.

A great experience this class.  Wouldn’t you agree?

BlackBerry Development Class

Are you or your team interested in BlackBerry development?  I will start teaching a BlackBerry development class in June 2010 and I want to share some preliminary details with you.

What This Class Is About

This will not be your typical class, plagued with slides, with few and short exercises.  This class will consist of a number of hands-on labs where you will build an entire real-world BlackBerry application from scratch.

Along the way, you will learn the main concepts, principles and practices that apply to BlackBerry development.

When you finish this class, you will be able to answer the following questions:

  • What is a BlackBerry application? What are my options if I want to develop BlackBerry applications?
  • How do I create the look of my application?  What is the best way to use the available UI elements to create a great experience for my users?
  • How can my application save information on the BlackBerry Smartphone?
  • How can it connect to internet services, for example, Twitter?  What if it needs to talk to my enterprise applications behind a firewall?
  • Can my application interact with other applications and the hardware in the Smartphone?  How do I write applications that take advantage of the camera, GPS and phone on the device?
  • How do I debug my application?
  • What are the best practices for creating a great BlackBerry application?  What are the gotchas?
  • How do I make it easy for people to install my application?

Who Is This Class For?

This class is for any software craftsperson with an interest in building BlackBerry applications.

If you run a software development team and are interested in the BlackBerry platform, this class will definitely help your team.

Stay Tuned

I will be posting updates with more details about this class in the near future.

If you are curious about this class or have any suggestions, I’d love to hear from you.  Please get in touch.