App Development for Android platform #1

In today’s blog post I am going to share my first impressions on app development for Android devices, the basics you need to start developing your own apps for Android devices, and the pitfalls I’ve encountered.

Earlier this year I began to investigate iPod development. I own an iPod Touch and as an ever increasing number of students are bringing iPods or iPhones to school I felt that developing a series of educational apps to help prepare these students for their exams or assessments would be beneficial and motivating. I’m a Computing teacher and it would be a major draw to students to eventually have some form of iPod app development in the course, but even in the short term I know that I am going to encounter a pupil who IS developing for a mobile device – and they are going to ask me a to help them solve a problem!

However it transpires that developing for iPod is a convoluted process: you need an SDK (the easiest part), an Apple Mac, a licence to sell your app on iTunes, knowledge of another programming language (C#, or Objective C). These are summountable problems but the kids are using these devices NOW. Therefore I want to help them now. Windows based solutions like Airplay SDK or Dragonfire SDK are promising but inevitably put more hurdles into play. I recently concluded that I didn’t have the funds to follow through with my original plan, it just wasn’t feasible at this time. So I am now looking at alternatives.

Android is a Google-developed mobile device operating system which has been based on Linux. It is open source as opposed to the closed nature of iOS. Developers can create applications in Java by importing the Android module libraries into their projects. These libraries are available from the link below – and regularly updated!

The software packages needed to begin coding Android apps are all freely available. I downloaded and installed Eclipse, an open source Java IDE for Windows. The tutorial I found also suggested that I install the ADT plugin to enable the creation of Android apps. I had previously downloaded the May version of the Android SDK but when I installed it it immediately upgraded to v8 from v6.

Although installation took a long time, especially when Android SDK updated itself I found myself able to navigate the Eclipse IDE easily. A programmer friend of mine recommended NetBeans as an alternative but I’ve had no experience of using that IDE. Any comments about NetBeans would be appreciated. I had to go back to the online documentation a few times to install the ADT plugin, and starting the Android service via the command line was an unncessary hassle – surely there is a GUI tool out there that can manage this?

I worked through the provided Hello Android example quickly though and as I’ve used Java in the past the syntax didn’t phase me as much as Objective C! However Ive found a common issue occurs when attempting to run the example in the Android simulator. I currently get a lovely, meaningful error message:

“Waiting for HOME (android.process.acore)”

while the Android simulator displays first a retro 1980s text screen with a spaced out A.  N.   D.   R.   O.   I.   D. message then a more 1990s graphical logo. After that, nothing else happens until I get frustrated and shut down the simulator. Instantly Eclipse displays an error message stating that the simulator has been shut down so it hasn’t crashed!

My next step is to trawl support forums to get round this issue then I’ll post a step by step guide to beginning Android development.

Using GoogleDocs with Computing classes

I have been experimenting with GoogleDocs since my colleague Linzie Stephenson introduced me to them late last year. As I’ve tried out forms as a method of gathering feedback from my classes, then later in the session the other types of documents available within GoogleDocs I wanted to share the benefits of using this collaborative tool with your own classes.

Signing up for GoogleDocs

This can’t be easier. To access GoogleDocs and 1Gb of file storage space all you need is a GoogleMail or GMail account. As I use this with my classes and wanted to keep contact strictly formal I set up an account for education only. This allows me to keep my work and friends & family separate!

email

Once you have your mail account simply go to http://docs.google.com and get started!

Forms for feedback

Since I started teaching I’ve been careful to get the students’ feedback to improve the course. I began with ‘rant sheets’ which were anonymous scraps of paper where each pupil had the chance to comment on lesson enjoyment, teaching style, environment and finally a free rant which usually resulted in complaints about air conditioning or seats. Every term there was at least one suggestion that was actioned and this gave pupils encouragement to carefully consider their feedback. The one drawback with the paper based rant sheets was the admin time collating and categorising, so I felt this was something which could be improved through use of GoogleDocs.

coursefeedback

Forms have very basic but useful aggregation tools which create pie charts from multiple choice questions. During last session I was involved in helping turn a 20 yo bullying questionnaire into an online version using Google Forms. Used with every S1 pupil at the school this change has saved duplication costs as well as increased the number of usable returns.

aggregation

These forms can also be embedded in websites and blog posts. When my S3 classes started in June I used a Google Form to survey their S1/2 ICT experiences as well as quickly find out which teachers to approach regarding their individual progress.

s3survey

Uploading files and sharing

In June this year I asked all S5/6 Computing pupils to sign up for a GMail account and then begin to upload all their classwork to GoogleDocs. The aim of this was simple, reduction of paperwork for the pupil AND the teacher! At the moment the pupils type up their work in Microsoft Word, then upload the file which is converted to Google’s Word Processor file type. They then choose to share their work with me on a view or edit permission basis.

sharing

I can instantly see a list of files shared with me during that lesson and during the summary call up examples of pupil answers instead of taking answers from the floor. I don’t think I’ll always make use of this but it is nice to have an alternative when classes turn shy.

I can also provide computer-based 1:1 feedback in two ways. If the pupil has allowed me edit privaledges on their file I can add comments straight into their document which they can instantly see on their computer. If the pupil only lets me view their file I can still provide feedback via GMail.

The added benefit to pupils is that if they can access a computer with an Internet connection they can use their GoogleDocs account for revision. As well as sharing files with me I can also share files with them including sample exam answers and collaborative revision notes.

You will find that your GoogleDocs account fills up very quickly with pupil files so I spent some time setting up folder structures for each class. The interface doesn’t make it easy but it is possible with perseverence. Now when a pupil shares a file with me I move it to their named folder and at a click can see a record of their work.

folders

I also asked pupils to document their Visual Basic programming tasks via GoogleDocs and share with me, the progress of the class helps me plan next steps or interventions and already it has resulted in investigating user interface design more closely.

I’m really intersted in hearing how other educators use GoogleDocs with their own classes. Please post a comment below, via Twitter (@familysimpson) or why not share a GoogleDoc?