iPhone Application Development

Most of us can't get a seat in Stanford's popular iPhone and iPad application development course, but luckily the open side of courseware allows anyone with app dreams to follow online. 

Stanford has released the iOS 5 version of their "iPhone Application Development" on iTunes U. You can download course lectures and slides for free. The obvious audience is students of all ages interested in developing apps, but if you are teaching or planning to teach such a course yourself, it would make sense to take a look.

Stanford offered an iPhone apps course online in 2009 and it made some history by scoring a million downloads in its first seven weeks. The instructor is Paul Hegarty and he teaches students how to program apps for iPads and iPhones. It is the most popular download on
Stanford's iTunes U site, with more than 10 million views.

It is no small task to learn to create apps. Unofficial prerequisites: If you are unfamiliar with Apple's operating systems, you need to learn Objective-C.  If you were a Stanford student, you would have taken a year of computer science classes and had object-oriented programming before taking the apps course. Two Stanford prerequisite courses, Programming Methodology and Programming Abstractions, are also available on iTunes U.







Disrupting Education With Apps

Tomorrow, I am giving a keynote for faculty at Bloomfield College. It's about how software apps and mobile computing in general is impacting teaching. "Educating in an App World" is still to come for most classrooms.

Sure, "There's an app for that" has gone from being an advertising tagline to being a solution for many software needs. Apps – small, easy to download software for mobile devices – are definitely changing how students at all level are using technology.

Watch pre-schoolers playing with their parents phones and tablets. Have you seen a 3 year old go up to a TV screen and try to drag or pinch an image? It's how they expect to interact with technology.

I have found more apps available for the K-12 world than for higher education. But, we limit the use of mobile devices in classrooms, especially in the lower grades. Teachers are more likely to ban phones than make use of them.

But that IS changing. Apps are changing the way colleges design and deploy software and it is moving into classrooms.

The idea of "disruptive innovation" (which was coined by Clayton Christensen) is that a product or service takes root initially in simple applications at the bottom of a market but then moves “up market" and eventually displaces the established competitors.

Disruptive innovation: cellular phones disrupted fixed line telephony; traditional full-service department stores have been disrupted by online and discount retailers; doctor’s offices are being displaced by medical clinics. Maybe the traditional four-year college experience is being displaced in degrees by community colleges, online learning and school 2.0.

The problem is that education isn't business, no matter how much politicians and critics want it to be.

Take innovation. Companies tend to innovate faster than their customers’ lives change. There are newer phones but customers who don't want to upgrade yet. The company ends up producing products or services that are actually too good and too expensive for many of their customers. But in education, those "customers" that we prefer to call students innovate faster than the schools. Students probably have the technology in their hands before we can offer it or have a way to use it in our classrooms.

What is changing in higher ed? Firts, is how students use technology with or without our guidance. That is driving changes in the way colleges design or purchase websites and software. Go back more than a decade and a school had to get a website. Then they had to get a better website. Now, you better have some apps. 

The ways colleges deploy software is also changing. Did your school offer software on CDs? Did it move to downloads? Did it move away from even supplying software or requiring a computer? Will it offer apps?

The greatest change comes when educators can implement apps for teaching. Initially, colleges use it for campus-wide initiatives like admissions, but we are seeing it begin to move into classroom use.

Do you agree with this critic? “For this invention will produce forgetfulness in the minds of those who learn to use it, because they will not practice their memory. You have invented an elixir not of memory, but of reminding; and you offer your pupils the appearance of wisdom, not true wisdom, for they will read many things without instruction and will therefore seem to know many things, when they are for the most part ignorant and hard to get along with, since they are not wise, but only appear wise.”   That was Socrates on the written word, see Phaedrus, 340 BC.

Welcome to the app world.


Android 4 Schools

Here's a pointer to a new site from Richard Byrne, author of Free Technology for Teachers. Android 4 Schools will look at resources and reviews of apps (mostly free) for educatots with a focus on K-12 schools.

Though that focus is K-12, I wouldn't dismiss the site if you are in higher education (particularly if you prepare K-12 teachers!) as it promises to include some pedagogy too, and includes apps for teachers, students, and administrators.

Decoding the (United Kingdom) Lottery

Ok, so we all don't live in Great Britain, but the available space to get an iPhone App reviewed is so limited that Ian Bruce of The Lottery Company sent his iPhone app information overseas to get a little cyberspace notice.

First, let me say that I am no participant in gambling of any sort.  I don't have any deep belief (other than considering them potential metaphysical evils) about games of chance  --they just don't interest me.  My only visit to a casino was in Atlantic City in 1995 and that was only because that was where I took the Jeopardy contestant tests (I went 2 and out).

I'm currently teaching an iPhone Application Development class online and I have a great bunch of fully engaged students and, like many an instructor before me, I took a task and turned it into an opportunity for students to provide their feedback.  My thanks to the students who allowed me to use their submissions, here.

From Maria:
Concept - The idea for this application is very good – it tells you the last results of the lotto, as well as past results. You can even check your numbers against older lottery results. Other features include a random ticket generator and an archive of results since 1994.
It is a very good concept, and would translate very well to the iPhone, however the design has many flaws:
- Starting with the icon – this is something very small, a detail, but in a way it can be very important when designing an app. The name of the program, when purchased from the App store, is “National Lottery – Lotto”; the icon says “Lottery”; once you open the app, the title says “Lottry.co.uk”. The author will want to standardize the title of the app.
- The main menu has a good design, but the font chosen is very small for the buttons. Also, it is important to use the iPhone patterns (navigation bar, arrows, etc), in order to facilitate the user interaction. People are used to those patterns, so it makes learning a new app much easier.
- Throughout the whole app, the font has to be made bigger. The results are very small, very difficult to read.
- Under “check my ticket” is where most improvement is needed. It is very difficult and irritating to enter the numbers one by one, waiting for the keyboard to pop, close, click on an other field, etc. A use of the slot-machine pattern here would be ideal.
- When you check the archived results, it needs to be organized better. If I want to see the results from January of 2000, I have to click through 27 pages.
Overall, fixing those little design flaws would make a much stronger app, and it could become very useful for British iPhone owners.
From Drew:
I did a walkthrough of the screens and features and found the following:
- Under Check My Ticket when I go to input my numbers it gives me the ascii keyboard with the letters (and not numbers) displayed. I would recommend setting this to number input (for keyboard type). For each lottery number field the keyboard changes back to letters so it's an extra button for each number you enter.
If I hit "go" without specifying any numbers I get errors telling me that each field is empty. But then after I touch "ok" to acknowledge this, the app crashes.
Other than this, things worked great. The user interface was easy and straightforward to use. And it seemed like a very useful app for lottery lovers.
I would definitely recommend it.
The only idea for an enhancement that might be nice is when going back to results of previous years you could perhaps index the results by month so that to get to January you don't have to go back through the other 11 months of results (unless I missed the way to go in both directions). But this is a small point given that I don't imagine people do historical research on a daily basis or anything.
I'm a function-over-form kind of guy and I care less about the appearance of a program than I do about how it works, and using that "function" judgment, this seems as though it is a very capable iPhone app.  For those interested in details from the provider, you can visit: http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=313319153&mt=8   (It will open in iTunes) or you can get it directly from Apple's AppStore.  The Lottery Checker is free for the first 6 months you have it.  Further details are available on their web site.

Reviewing iPhone App Reviews

I want Your iPhone apps to review!
Like the scary guy at the left (the NJIT mascot, the Highlander) is demanding, we want to review new iPhone applications.  The explosion of new apps in Apple's iPhone store has left one developer to comment as a guest lecturer in class:
"In order to get new iPhone applications reviewed, developers often now have to pay a site to review their software"

Paying to get anything reviewed is fundamentally appalling. The notion that fledgling (or veteran) application entrepreneurs have to shell out cash to get someone to evaluate their efforts is an unmitigated affront. It is also a POLA violation to the spirit of independent open source developers

Okay, so Apple's development/deployment process for iPhone applications is a far cast from real open source software development, but the process does intersect at points with the open source model:
  • The iPhone operating system is partly BSD based and inherits that open source license
  • The Software Development Kit (SDK) from Apple is free to download and use
  • Apple includes the iPhone Simulator to test features (not all) during development
  • It isn't the Free Software foundation's approach, but it certainly isn't Microsoft's approach, either.

    Apple does, however, require that developers register (currently $99) if they want the ability to deploy their apps on real hardware devices.  Along with a rigorous review of candidate apps designed to ensure that uploaded software meets the Apple standards, Apple also requires a single point of sale for developed applications (the AppStore), a 30% cut of the gross sales, and a Spring blizzard of paperwork to participate in the for-profit distribution of applications.

    Though it is relatively easy to jailbreak your device and bypass Apple's restrictions and use third party means to deploy and distribute applications, that ability hasn't slowed the deluge of apps that developers submit to Apple.  Foundering in that flood are developers who can't get their software reviewed on its merits by independent third parties.

    It is time to change that.

    Developers in search of a review may submit their apps to Serendipity35 for review, sans payola.  We have the necessary credentials to install applications on devices and publish honest reviews.  Interested developers can contact us at iReview at serendipity35.net.