Introduction
Welcome to Design View #53.
It's funny how it always seems to be the limitations of a medium that give it
its signature flavor. Take the hiss of AM radio, the staticky snow of TV, or the
scratches on vinyl records.
With
Twitter it seems to be an artificially imposed restriction -- its strict
140-character limit -- that has given it its original but very successful
edge.
We use and love Twitter at SitePoint and, in case you missed it, we're
showing our love with a free book.
Here's the deal:
Now this is a cracker of a book -- less than 18 months old and written by a
dream team of CSS gurus.
If Twitter doesn't appeal, remember that creating an account is free, and
what you do after you receive your book is up to you.
The offer expires on December 9th, so shake a leg!
In this issue, we'll talk about some of the ideas on mobile development I
took away from the Web Directions South conference.
Enjoy,
Alex Walker
Editor
SitePoint Design View
Powerful and straightforward. Ultra-reliable and
cutting edge. Web hosting can be all these things -- and great
value for money.
- 99c domain
name
- 400GB web space
- 50,000GB traffic
- 100
MySQL databases
- 5,000 email boxes
- PHP 4 & 5, Python &
Ruby
We have the complete package: powerful, affordable hosting
that's also easy-to-use and backed by 100% free 24/7/365
support. Get your 99c
domain name now!
Summary
When I Grow Up, I Wanna Be ... a Mobile App Designer
"Aww ... do we have to?"
That
would have been my response to the idea of developing a mobile site for most of
the last 10 years.
To me, developing for mobile always felt like this:
-
take your standard cool site
-
rip all the nice stuff out
-
squash what's left into a chintzy, low-res screen
It was like the Web, but only remotely as good.
Then the Web Directions South
conference, back in September, forced me to reconsider that idea. You see, until
recently the iPhone stood alone. You could build a cool app for it, but porting
your work to a Motorola or Nokia was a waste of time.
With the
October release of the Google phone, G1, we now have the foundations of a brand
new product category to build for.
Tim
Lucas referred to this new class of devices by the rather coarse-sounding
title of SHITDANG phones, or Super Hot Internet
Touchscreen Devices And Next Generation
phones.
In the interests of simplicity and arguably good taste, we might just refer
to them in this article as Mobile 2.0 phones.
So, what do you mean by a Mobile 2.0 phone?
At this moment in time, I'm specifically talking about the iPhone, the G1,
and any upcoming Android-powered device.
Some have included the BlackBerry models Bold and Storm in the category but
personally, I remain unconvinced.
No doubt there'll be some saying "Oh, but what about my Win
Mobile/Nokia E95/other smart phone? That's a Mobile 2.0 phone,
right?"
Sorry. While these are all great phones,
phones are what they are to their core.
With Android and the iPhone OS, we're talking about platforms where
traditional phone, SMS, calendaring, and email services make up only a small
percentage of typical user tasks.
Look on iTunes App Store
and the Android Market and you'll
see most of the development energy is going into apps like games,
location-based services, and social networking -- almost anything apart from
traditional phone services.
So, why should I become excited about Mobile 2.0 development?
Mobile 2.0 phones are changing the idea of what an application
is -- both for us developer/designer types and for
users.
In part, this is because of the improvement of mobile screens and browsers,
which are enabling sites to look and work more like standard desktop web sites.
But mainly this is because the mobile environment itself is arguably a much more
dynamic and interesting arena to build for.
With a desktop/web app, we typically build an application that sits patiently
and waits for the user to engage with the program. A service like eBay or
Facebook is relatively comatose until our valiant user starts consciously
interacting with it via mouse clicks and keyboard taps.
Mobile 2.0 phones offer us a bunch of cool, new input types to work with,
relying on the user to simply just be.
These new input types include:
-
location sensors (GPS)
-
camera/visual sensors
-
accelerometer and spatial position sensors
-
proximity sensors (that is, the iPhone blacks out its screen when you put
it to your face)
-
multi-touch inputs
-
electronic compass (on the G1)
This opens up a bunch of new and really cool possibilities. Gabriel White
gave some nice examples of how this might change the way you build your
applications in his Sensing
Context in Mobile Design presentation. For instance:
-
If your phone knows you're in the office meeting room (using the GPS), it
diverts calls to message bank. (The Locale app performs this task.)
-
If your phone detects that you're walking while texting (using its movement
sensors), it may increase the size and tolerance of the onscreen buttons to
allow easier texting.
-
The G1 currently uses its compass to align Google Maps and Street View with
the real world.
All of a sudden you're making apps that adapt to where they are and what's
happening around them. To me, that idea makes developing for Mobile 2.0 the
most interesting and exciting place to work right now.
This is a new and developing landscape -- in many ways you could compare it
to the Web in 1996. There's every chance that many of the applications that
will be the behemoths of the Mobile Web in 2012 -- the Googles,
Flickrs and eBays of mobile -- have yet to be thought of.
Perhaps one of them is currently just a half-baked idea in the back of your
mind.
Okay, so now you're all inspired to write the next killer iPhone/Android app.
What's next?
Getting Started
Till now, the hardest thing about building native iPhone apps was the
technical demands of writing Cocoa or Objective C -- typically outside the
skill set of the average web developer/designer.
Happily, there are some handy alternatives emerging that tap into some of the
skills more common to us. A couple of weeks ago, Josh wrote about two of those
solutions on the SitePoint News Blog, Big
Five and PhoneGap.
I chose to spend time playing with PhoneGap for a few reasons:
-
It's free and open source, allowing you to learn and experiment without
fear of incurring costs.
-
Its use extends beyond the iPhone. PhoneGap already allows you to port your
iPhone app to Android, and even BlackBerry.
-
PhoneGap uses Safari/WebKit at its core, which most of us are probably
already familiar with.
-
PhoneGap uses plain ol' JavaScript to access the iPhone's GPS, camera, and
vibrations controls -- again, most of us are at least comfortable with this.
In fact, creating a new app is with Phonegap is simple.
After opening Phonegap in xCode you give your app:
-
a name
-
a URL to your web server
-
a 57x57 pixel icon
After hitting Build, you're free to preview it in your
iPhone emulator, where you'll see a new glassy iPhonized icon of your
app waiting on the home screen.
Okay, now a quick reality check.
Although the PhoneGap codebase is developing rapidly, it's still very raw;
currently it only supports a subset of iPhone/G1's functions (GPS, vibration,
accelerometer, and camera). 'Promise' is the word, rather than 'deliver'.
The other unfortunate reality is you're probably going to need a Mac to run
the iPhone emulators and other SDK tools. Android's SDK is
cross-platform, so it will be interesting to see how Apple respond as the
Android market begins to grow.
But make no mistake: there's going to be huge growth in this area over the
next three years, and plenty of demand for developers.
With many of us planning to take breaks in the coming weeks, what better
opportunity to get a box seat on a fun and potentially lucrative ride!
That's all for this issue -- thanks for reading! I'll see you in a few
weeks.
Alex Walker
design@sitepoint.com
Editor,
SitePoint Design View