Monthly Archives: April 2013

Mobile Apps

I’ve recently updated the mobile sight word apps to be native applications. I developed the first version of these apps using PhoneGap and JQuery Mobile and while they were functional I never really liked the way they looked or performed. They just didn’t have the polish and responsiveness. But the main issue that really pushed me over the edge is when I started to build some apps that needed text input. I wanted a specific keyboard to show and then I wanted exact control over where the cursor is positioned in the textbox. I found that I needed to write plugin’s to PhoneGap to get this functionality. At this point it became a no brainer to go all out native.

My original decision to use HTML + JavaScript was largely based on time v effort, I thought it would be quicker and easier to build it with HTML + JS.
What I found was that it was easier and just as quick to release the app as a native app, I didn’t have to fuss around with performance issues or quirky style issues.

I did loose the ability to simultaneously release the app across platforms, but given my needs around keyboard input I probably would have had the same issue anyway.

I find it interesting that companies like LinkedIn, Xero and Facebook have all had a crack at HTML + JS and have come away and headed down the native path. I thought for sure my simple apps could be done in a nice way with HTML5, but after looking at the completed native app and comparing the effort, there is no question I’ll be looking at native as the first option from here onwards especially for consumer apps, I’m sure there is a place for HTML + JS for boring corporate forms over data style apps.

Backchannel Chat Integration

Continuing on the integration theme of my last post where I showed how I integrated Backchannel Chat into Office 365 I thought it might be interesting to talk about some other integration work that I’ve done recently.

Backchannel Chat for Google Apps: This integration brings Backchannel into the Google apps world. A large number of schools are now using Google apps, so it makes sense that teachers and students would want single sign on. But we can take it further than this, since most schools will setup groups that denote teachers and students we can leverage this to apply security across the tool.

Setting up the manifest xml file which is submitted to the Google Apps store is the most important aspect of the integration. You need be sure that you set the OpenID realm correctly. When this is setup properly your domain will be added to the whitelist and will be allowed to make queries to the users domain without the user needing to select ‘allow’ (this isn’t needed since the domain admin installed the app and is managing the ‘allow’ permission from the Google apps console).

From a technical perspective, integration is pretty easy, Google have provided nice client libraries that help you work with the Google Apps Provisioning API, this can give you access to the groups of the domain. Performing the OAuth dance with Google apps is actually pretty straight forward given the above whitelisted approach.

Backchannel Chat asks the admin user during setup to select the groups that contain teachers. Then when a teacher comes into the system they will see all of the tools to create a new backchannel. The teacher can select a list of groups that can be used to access the discussion.

When a student comes to Backchannel, we look up their groups and select the Backchannels that have been marked for them.

We provide a raft of reporting options for teachers and domain admins, this makes grading or troubleshooting a particular student easy. It also means the school has all of the discussions in one single place.

Checkout a video of the process:

The application then goes to Google for approval, this process takes about a week. Once its been approved potential users can install your app directly from the marketplace.