Showing posts with label Apple. Show all posts
Showing posts with label Apple. Show all posts

Sunday, January 05, 2014

Hacking the CES Scavenger Hunt

This post was originally publish on the MAKE Blog 
and co-authored with Sandeep Mistry.

It has just been announced that at this year's Consumer Electronics Show (CES) will feature a promotional scavenger hunt based around Apple's iBeacon technology. What if you could win the hunt, without ever having to go to CES? 
What if you could win the hunt, without ever having to go to CES?
Quietly introduced by Apple at WWDC last year, iBeacon is a technology that allows you to add real world context to smart phone applications. Based around Bluetooth LE—part of the new Bluetooth 4.0 standard—it’s a way to provide basic indoor navigation and proximity detection. As we talked about when we reverse engineered the Estimote beacons, there are three properties of an iBeacon that work together to create the beacon’s identity. These are:
  • UUID — This is a property which is unique to each company, in most use cases the same UUID would be given to all beacons deployed by a company (or group).
  • Major — The property that you use to specify a related set of beacons, e.g. in a retail setting all the beacons in one store would share the same Major value.
  • Minor — The property that you use to specify a particular beacon in a location.
The scavenger hunt is therefore a hunt for a number of beacons that will probably all share the same UUID and Major numbers, but will have different Minor numbers. Effectively, we're looking for a set of beacons. However wandering the hallways at CES hoping to get into the—approximate 100 foot range—of all of the iBeacons they've scattered across the show floor sounds like a lot of work. CES has teamed up with Radius Networks who are providing the iBeacon hardware, and Marc Wallace—CEO and cofounder of Radius Networks—has this to say about the hunt,
This is one of the coolest proximity-aware apps we have worked on. This is also one of the first, tangible applications that leverages iBeacon technology. And it is a great example of how iBeacon technology is not just about advertising as it is about bringing new and innovative solutions to the marketplace. We are very excited to be a part of it.
Since they're using hardware from Radius Networks we can't just assume—as we could with the Estimote hardware—that we know the UUID of the beacons. However the identities of the beacons—all of the beacons—are somewhere where we can easily get our hands on them, the CES mobile app. Sure enough looking at the CES Android application—it's fairly easy just to download the APK without having to install—there are some hints there for us and using a decompiler it was fairly easy to find the details of the target beacons. 
The Minor numbers of the nine target beacons in the code of the CES mobile application.
The Minor numbers of the nine target beacons in the code of the CES mobile application.
The iBeacon UUID we're looking for is 842AF9C4-08F51-1E39-282F-23C91AEC05E, while the Major number—interestingly not actually needed and just ignored by the Android application—is 65000, while the nine beacons scattered throughout the CES venue have Minor numbers from 65001 to 65009.
The completed scavenger hunt—all nine beacons.
An almost completed scavenger hunt—with eight of the nine beacons already "found."
Since we now know the identities of the beacons, it's trivial to finish the scavenger hunt without ever going to CES as it's actually fairly simple to build your own iBeacon hardware and "fake" the app into thinking you've found the beacons. To do that you can either use a Raspberry Pi, or a Bluetooth LE board like the Red Bear Labs BLE Mini board—Radius Networks, the people supplying the hardware to CES, is even selling a "iBeacon Development Kit" which would work just fine for our purposes. 

At which point—now you have your own iBeacon hardware—you can just go ahead and set the UUID, Major and Minor numbers of your beacon to each of the CES scavenger hunt beacon identities in turn, and then bring your beacon into range of your cell phone running which should be running the CES mobile app. Once you've shown the app all of the beacons, you'll have "finished" the scavenger hunt and can claim your prize. Of course doing that isn't legal. It's called fraud and will probably land you in serious trouble. 

Of course it could be worse. If they are using Estimote hardware it'd be easy for someone to make the hunt impossible to complete. Because as we've shown, anyone with the Estimote SDK can modify the UUID, Major and Minor number of the Estimote beacons in the field. Which would have meant that the beacons deployed across the CES floor didn't work for the scavenger hunt anymore. 

We talked about both of the ability to configure "fake" beacons, and the ability to disable beacon in the field—in our discussion of our reverse engineering of the Estimote iBeacon hardware. However, we didn't think we'd see something like this quite as soon.

Sunday, January 06, 2013

The fifth horseman never gets invited to the good parties

This article was originally posted on Google+.

Yesterday +MG Siegler argued on +TechCrunch that Samsung is the fifth horseman of technology, filling in for the ailing Microsoft, when the four horsemen: Amazon, Apple, Facebook and Google go riding.

I have to disagree with the underlying assumptions. We're at yet another tipping point in technology. A few years ago we moved from the beige box to the black rectangle, but the black rectangle won't be with us for as long as the beige box.

That black rectangle, the ubiquitous form factor of today's smart phone, is a transition device and it's going to disappear quickly as the speed of technological change is accelerating rapidly. Of the four horsemen only Google seems to be working on alternatives with +Project Glass. It's possible the others, including Samsung, have working hardware, but the successor to today's smart phone is going to be all about context and user interaction.

I've stood up in front of audiences before and argued that our smart phones have our lives on them, the next generation of mobile technology is going to stand between us and our lives and add context. It's hard to do that without a lot of information about the user.

It's also going to be a big leap for the horsemen to make. Despite getting into hardware recently Amazon is about selling content, Facebook has never done hardware and I don't think have this sort of paradigm shift in their corporate bones, Apple has, but without Steve Jobs I don't think they'll have the guts to kill the iPhone and innovate. Samsung, the fifth horsemen that never gets invited to the good parties, is a box shifter. They know hardware, but they don't know design, and they don't know anything about their end users. Their customers are other companies, like Amazon, not you and me, the eventual consumers.

So out of all of them Google  seems to be the only one positioned to move forward, and it'll be a big leap for them even so. The developer release of +Project Glass later this year is going to be crucial. If I had the money to lose making a wager, I'd wager that it'll be some startup you or I haven't heard of yet that makes the leap to the next ubiquitous form factor.

Either way, it's going to be an interesting year...

Saturday, March 31, 2012

iOS5 Week at O'Reilly

It's #iOS5 week at O'Reilly Media, and they're offering 50% off most of their iOS titles in ebook, including my own Learning iOS Programming (2nd Edition) and Basic Sensors in iOS.

If you've been thinking about picking up some #iOS5 goodness from O'Reilly, then now is probably as good a time as any...

Wednesday, February 15, 2012

Teardown of BiKN

A couple of days ago I received a BiKN for iPhone case and tags, with just over a week between ordering and it arriving on my desk, considering the big body of water in the way, I was pretty impressed by the rapid delivery.


BiKN is advertised as a smart case that allows you to "Find your stuff". Effectively it's a wireless based sensor network which makes use of tags and uses your iPhone as the hub of the network.
 
BiKN for iPhone.
I was also fairly impressed with the packaging, which had be designed so that the instructions on how to charge and use the tags and case were just there. You didn't have to go looking. Everything also seemed to come fully charged, which is always nice.

The inside of the box cover has the instructions.
Plugging my iPhone into the case the standard iOS prompt to download the app associated with the accessory from the App Store popped up. Clicking on it took be directly to the BiKN app as you'd expect. It all worked as advertised.

However there is very little information about how the system works on the BiKN site, so I took one of my tags apart to find out. I was curious about whether they were using an 802.15.4 mesh network, active RFID, or something else. It turned out my hunch was correct and BiKN are using a 802.15.4 network between the tags and the phone case. For those of you in the Maker world, that's the same underlying protocol as  the Digi XBee chips use. However BiKN us using a Jennic chipset instead of the, almost ubiquitous, Digi one.

Taking a BiKN tag apart.
There are really only two identifiable ICs on the tag's board. The first is a 4MB MXIC MX25V4006E Serial Flash package, providing a Standard Serial Interface x1 or x2 I/O, Single I/O or Dual I/O, at single 3V or 2.5V power-supply voltage.

One side of the BiKN board.

However the really interesting find is visible when you lift the battery. The tag is running from an Jennic JN5148-001 wireless micro-controller. It is a 32-bit RISC processor, with both 128kB of ROM and RAM onboard to support the 802.15.4 networking stack an on-chip user applications. It looks like the BiKN uses a JenNet-IP based networking solution. This is essentially a enhanced 6LoWPAN network so it's extremely generic. I'm going to be surprised if tags are the only hardware to get BiKN-enabled in the future. This is a serious bid to build an (at least semi-) standards-based Internet of Things from Treehouse Labs.

The other side of the BiKN board.
It's a nicely set out board and interestingly, if you look at the side holding the flash package, there seems to be exposed Rx and Tx lines on the board. Which sort of hints that some sort of serial access might be available. I'm presuming these are going to be a serial pass-through for the micro-controller, but I could be wrong.

The only real criticism I have at this point is the build quality. In fact I'm very disappointed with the quality of the materials that they've used. The case feels cheap and plastic, and the tags are bulky and likewise have a cheaply-made plastic feel. These don't measure up the iPhone build quality at all. I was expecting a much nicer rubberised look-and-feel.

I don't normally use a case with my iPhone, the phone itself is very hard to scratch and lives in my pocket with my loose change without any (well much to speak of) damage. I was hopefully I could live with the BiKN case well enough so I could leave it on my phone all the time, but it's bulky and cheap plastic feel has ruled that out. The case will have to live on my desk and that means I'll have to swap the phone in and out of it when I want to use BiKN. Which probably means I'll use it a lot less that I otherwise would have done.

My only other problem at this point is that, about two times in five, when I open the BiKN app it fails to register the presence of the hardware case. Those times it does register, the case battery life shows to be fairly healthy, so despite the suggestion to charge the case to rectify this, I don't think that's the problem.  I've been in touch with the company and they're suggesting this might be a general problem that they're going to address with a forthcoming firmware update, so hopefully that's just an initial teething problem that's going to go away.

Their choice of micro-USB connector for the case, rather than a 30-pin pass-through, is also a bit irritating. I can see why they did it, having been involved around the edges of Apple's MFi programme in the past, I'm presuming using the patent laden 30-pin connection could seriously reduce their margins. But I've got lots of spare 30-pin cables around, and not many micro-USB ones. Charging the phone, and the case, is therefore somewhat problematic.

Finally then, I'm going to be really interested to see if they come out with a publicly available SDK, as I think that'll be the make-or-break for the product. It's moderately interesting without it, but with a decent SDK so developers can integrate it into their own apps? That's much more interesting. At this stage of the product they should be looking for network effects, but they should be looking for them from the developer community, not end-users. A public SDK would go a long way towards filling what seems to be a gaping hole in the product right now.

Wednesday, August 03, 2011

The reality distortion effect, 3 months on...

One of the things I've never talked about in this blog, mainly because I talked about it enough elsewhere, is the iPhone Tracking scandal and the bizarre reality distortion effect that went on during those couple of weeks back in April.

Mac Slocum finally managed to corner me at OSCON last week and got me to talk about things now everything has settled down.


Interview with Mac Slocum at OSCON

One of the things I mentioned during the interview as one of the really positive things to come out of the iPhone Tracking debacle is the visualisations from the crowdflow.net group. If you haven't already seen them, I'd encourage you to take a look at what they've managed to pull out of the data.

CREDIT: Crowdflow.net
The movements of 880 iPhones in Europe during April 2011

Talking about connecting iOS to the real world

I seemed to spent a lot of time in front of the camera while I was at OSCON last week, amongst other things I talked about connecting iOS devices to the real world using the new Redpark serial cable for iOS.


Demonstration of the cable


Interview with Mac Slocum talking about the implications

Tuesday, July 26, 2011

OSCON 2011

This week I'm in Portland OSCON 2011 along with OSCON Data and OSCON Java. If you're not here in person O'Reilly is streaming keynotes and interviews live from the conference floor.

The Live Stream Schedule

But if you are around, come see me talk on Thursday when I'll be discussing connecting iOS to the real world and the Internet of Things.

Monday, July 18, 2011

Connect your iPhone to the real world

The arrival of Google's Accessory Development Kit (ADK) for Android, which allows you to connect your Android handset to an Arduino-based development board was seen by some as the beginning of the end for Apple's restrictive Made for iPod (MFi) program.

Today we discovered Apple's response to Google's ADK, and while it's still inside a crunchy MFi wrapper, the program is now a bit gooey in the middle, as today saw the release of the Serial Cable for iOS from Redpark.

The cable is a fully MFi approved external accessory that allows home-hobbiests to talk to external hardware, no jailbreak required. On one end of the cable is a dock connector that plugs directly into your iOS device. On the other, is an RS-232 serial port that you can easily connect to anything that speaks a serial protocol.

Suddenly connecting your iPhone to the real world became a lot easier, easier in fact than using Google's ADK.

I've been working with the pre-release version of the cable for a couple of months now and I've put up some sample code to get you started. Including a rather nifty Universal application for the iPhone and iPad which will let you directly control an Arduino board. I've dubbed it the "Paduino."

The "Paduino" application.

Because someone had to...?

 
A simple "Push the Button" example.

Also in the works, but not quite ready yet, is a book which will walk you through how to use the cable and how to integrate your iPhone or iPad into the Internet of Things.

Finally if you're at OSCON next week I'll be talking about the cable and how to use it on Thursday. We're hoping to have an early-release copy of the book ready by then.

I can't wait to see what people can do with this...

Thursday, June 16, 2011

Apple and the Web Free Cloud

This article was originally published on the O'Reilly Radar.

The nature of Apple's new iCloud service, announced at WWDC, is perhaps more interesting than it seems. It hints very firmly at the company's longer-term strategy; a strategy that doesn't involve the web.

Apple will join Google and Amazon as a major player in cloud computing. The 200 million iTunes users Apple brings with them puts the company on the same level as those other platforms. Despite that, the three companies obviously see the cloud in very different ways, and as a result have very different strategies.

Amazon is the odd man out. Their cloud offering is bare metal, contrasting sharply with Google, and now Apple's, document-based model. To be fair, Amazon's target market is very different, with their focus on service providers. If you're a Valley start-up looking for storage and servers, you need look no further than Amazon's Web Services platform.

Google and Apple's document model contrasts sharply with Amazon's service-stack approach. Both Google and Apple have attempted to abstract away things, like the file system, which stand between the end user and their data. An unsurprising difference perhaps, Google and Apple are consumer-facing companies that are marketing to the final end user rather than the people and companies who aim to provide services for those users.

But that's where the similarity between Google and Apple breaks down. Google sees the cloud as a way to deprecate general purpose computers in the hands of their users. In the same way that their new Chromium OS is built for the web, their cloud strategy is an attempt to move Google's users away from native applications so that their applications and data live in Google's cloud of services. Perhaps coincidentally, this also gives Google the chance to display and target their advertising even more cleverly.

Apple's approach is almost entirely the opposite. They see the cloud as a way to keep the general purpose computer on life support for a few more years until touch-based hardware is really ready to take over. Apple's new cloud platform is built for native applications, in an attempt to pull users into native apps designed for their platforms. This method also gives Apple the chance to sell hardware, applications, and content that will lock users into their platform even more firmly. This is the basis of the often remarked "halo effect."

At least on the surface things seem to be simple — the "why" of the thing is not in question. However it's what hasn't been said, at least openly, that raises the most interesting questions.

Web 2.0 Summit, being held October 17-19 in San Francisco, will examine "The Data Frame" — focusing on the impact of data in today's networked economy.

Save $300 on registration with the code RADAR

Apple is fundamentally platform orientated. It's deep in their company genetics. The ill-fated official cloning program from the mid-'90s, which was brought to a screeching halt by the return of Steve Jobs, seems to have set a deep fear inside the company about letting someone else control anything that might stand between the company and direct access to their customers.

At least to me, nothing confirms that mindset more than Apple's return to designing their own processors in-house in Cupertino. Apple has a long history of using its own custom silicon, but it's been more than five years since Apple has done so. With the move to Intel, the hope was to delegate nearly all of Apple's custom chip development. Unfortunately, that proved to be a stumbling block when Apple built the first generation iPhone. The Samsung H1 processor in the original model wasn't quite what Apple wanted, even though it was what had been asked for, and I think the return to custom silicon probably brought a sigh of relief in some corners of the company.

The link between custom chips and the cloud may seem tenuous at first glance, but I think Apple's return to designing their own silicon is telling. Almost as telling as spending half a billion dollars on a custom data center to support their new iCloud service. Both moves show the company is now committed more than ever to controlling the verticals. From the chips inside the devices to the data centers their customers' data ultimately resides on, Apple is committed to controlling the user experience, and the web has no place in that.

You might argue that this is because the web is "too open" and that threatens Apple's platform. However, the continuing argument over openness, or lack there of, isn't really relevant. Despite Google's protestations to the contrary, neither of these two companies is particularly open. The very document-based model they're both advocating in their cloud architectures precludes a truly open system. It's such an obvious straw man argument that it's not actually that interesting.

What is interesting is that there was little or no mention of the web, or HTML5, during Apple's WWDC keynote. I think you'll see far less emphasis on HTML5 from Apple in the future, unless someone asks to do something with Apple's platform the company disapproves of, and then the traditional answer of "Well, you can always do that in HTML5" will be rolled out again.

Apple has finally put their cards on the table. They have not yet bet the company on iCloud, but it's telling how deep the integration into both iOS and OS X appears to be. They have for too much invested in iCloud for it to fail, if only in reputation. Whether the first incarnation lives up to its promises out of the box is still to be seen, but success isn't out of the question. Despite MobileMe, Apple does know how to build large-scale reliable backend services. You only have to look at the App Store itself for an example.

So in the future don't be too surprised to see Apple integrate iCloud even more tightly with both iOS and OS X. For the same strategic reasons, don't be shocked to see more custom chips appear — I expect to see the arrival of ARM-based MacBooks and the transition away from Intel for Apple's laptops. That's because for Apple, It's all about the platform.

Tuesday, March 22, 2011

Thursday, November 04, 2010

Cloud Status v4, for the iPhone

It has been a while since the last release of Cloud Status, my Cloud Computing monitoring application for the iPhone and iPod touch. So I'm really happy to announce a new release, version 4.

Predictably with such a long time between updates there have been major changes. Along with a number of minor bug fixes, and an updated UI, the application has been fully updated to support iOS4 and the iPhone 4's retina display.


Reporting for MS Azure and the Rackspace Cloud has been added in addition to the existing status reporting for Google App Engine, Google Apps and Amazon Web Services.

The best part? This new release of Cloud Status is now available for free thanks to the generous support of WatchMouse, the application and website monitoring people.

Friday, April 02, 2010

An iPhone Book by an Open Hardware Advocate

I was surprised a few days ago when someone pointed out that as an open hardware advocate it might be viewed as, well, odd for me to write a book on iPhone programming.
Intrigued by a open hardware advocate that has written an O'Reilly iPhone book: @aallan
@erikevenson via Tweetie in reply to @aallan
A couple of years ago there was a great hue and cry about the death of the desktop, and the end of the Internet. Mostly brought on by Johnathan Zittrain's book, "The Future of the Internet: And How to Stop It."

Jonathan argued that today's technological market is dominated by two contrasting business models: the generative and the non-generative. The first model, general purpose computers, allow third parties to build upon and share through them. The second, non-generative model, is more restricted, with appliances that can only be modified by the vendor. He is very much afraid that the second model, where we are locked in by vendors is coming to predominate.

I don't think my opinions on this have changed much in the last two years. The iPhone, and now the iPad, are held up as being evil for being closed platforms. I don't think that's a problem. There is plenty of room for closed platforms.

Cory Doctorow argues that the next generation of kids won't be able to grow up and become programmers. That buying an iPad sends the wrong message to your kid, that the world isn't yours, it's something you have to leave to professionals.
Buying an iPad for your kids isn't a means of jump-starting the realization that the world is yours to take apart and reassemble; it's a way of telling your offspring that even changing the batteries is something you have to leave to the professionals. - Cory Doctorow
I think he's dead wrong. Technology has moved on, and the world is changing. What is changing is that we’re in the transition phase away from one model of computing and towards another. I’d argue that the underlying trend is towards more openness, not less. It's just the things that are open and the things that are closed are changing, and with that the skills you need to work with the technology.

We're moving away from general purpose computers towards more purpose specific devices. Amoung these are the iPhone and the iPad. However the passing of the desktop computer, and the Web, is not the problem people should be worrying about. The important thing for people to hang onto is the infrastructure, the pipes themselves. The Web isn't the Internet, the Internet existed before the Web and it'll be around a long time afterwards. So long as we have the pipes the content flowing across them is really rather irrelevant. I'm far more worried by threats to network neutrality than I am by the death of the general purpose computer.

The only thing that's changing here is that the tools and skills you need to play with the next generation of technology; ubiquitous computing, embedded devices, mobile devices. So you'll need different skills than you might have used to play with the last generation of technology? The fact that you have to go out and learn some electronics to take part in the next big thing isn't such a big deal. You're supposed to like learning new things. Go buy a soldering iron and stop worrying about vendor lock-in so much...

...and even if you don't believe me? Stop worrying, the kids are going to be just fine.

Tuesday, August 25, 2009

The (lost?) Android Opportunity

At the time Apple initially released the native SDK for the iPhone some people argued that Objective-C was a poor choice as a development language. I'd now argue that either they picked the right language, or more probably (at least within reason) the platform was good enough, attractive enough to developers, that the language they chose didn't matter all that much. Developers were willing to spend the time learning Objective-C just so they could write code for the iPhone.

I wasn't a long time Mac developer when the iPhone appeared. I learned Objective-C because I wanted to develop for the iPhone, not because it was widespread, or particular popular.
What's the difference between a Cocoa developer and a large pizza? A large pizza can still feed a family of four. - Mike Lee

Although its popularity is now on the rise; the language jumped 22 places in the TIOBE index in the last year, entering the top 20 "most popular" languages for the first time.


The popularity of Objective-C as measured by its TIOBE index. Climbing from 40th position in the rankings in 2002 to 19th position this month, with almost all of that growth in popularity being since the release of the iPhone.

After learning the language I found I actually quite liked it, it was powerful, and because it allows dynamic typing and binding it was flexible. Something I'd grown used to after years of using loosely-typed languages to get things done.

The development environment Apple provide, Xcode and Interface Builder, is the best I've come across. Perhaps not the most powerful, but they're the easiest to use, and because of the late object binding that Objective-C allows the heavy integration of Interface Builder into the development process hugely simplifies creating user interfaces. It also removes large chunks of glue code that, in other languages, you'd have to sit down and write yourself.

However while I downloaded the Android SDK from Google, I've done little with it. Despite the fact that Google picked Java as their development language for Android, a language I already knew fairly well. I even had a couple of ideas for the first Android Developer Challenge, and a couple of people were interested in working on them with me, but in the end I didn't bother.

The Android platform isn't that exciting, and until recently I couldn't pin down why. John Gruber writes in the Daring Fireball about the Android Opportunity complaining that the Android state-of-the-art is even further behind the iPhone than when the G1 was announced back in 2008.

The reason I wanted to develop for the iPhone was that is was so much better than the competition. Regretfully the Android handsets that the manufacturers have produced so far just, well, aren't.

Tuesday, August 04, 2009

The year of the tablet?

Wired has decided that 2010 will be the year of the tablet, and it's arguable that the multi-touch additions to upcoming Snow Leopard make a tablet an obvious step for Apple. Despite that, others are claiming that after seven years of torturous rumours and speculation the predicted tablet from Apple just doesn't exist. Whatever the truth of the thing we can confidently predict that over the next few months the rumour mill will be running at high speed.

Sitting on the sidelines, nobody tells me anything. But something is up. The rumours surrounding the Apple tablet have a curious firmness about them, much like the later part of the two years of rumours leading up to the original iPhone launch back at the start of 2007.

However having used a tablet to try and do actual work, I tend to agree that tablets aren't mainstream. But then netbooks aren't mainstream and they're selling rather well, even I bought one, or as it happens two of them.

Dell at least may be deliberately targeting their rumoured tablet at the niche e-book reader market, and may well even offer their tablet for free with a contract for "one or more digital media subscriptions", which would be interesting. The Kindle is selling well, so perhaps it's even a sustainable model. Although Amazon at least aren't giving away the hardware as a loss leader.

When it comes down to it I'd be less interested in the rumours of an Apple tablet if it wasn't for the iPhone. The iPhone was the first mobile device I've ever owned, and I've owned a fair few, where I could check my email comfortably. That's made a big difference, and it's because the iPhone is not a phone, it just happens to be able to make phone calls. So maybe what I really need is a well designed tablet?

Update: Of course there are some people that are just pulling figures out of the air when it comes to the rumoured Apple tablet...

Monday, June 08, 2009

Apple WWDC 2009

I'm currently in San Francisco for this years Apple World Wide Developer Conference (WWDC). However, unlike a lot of the big conferences I attend, I won't be blogging this one live. Apart from the Keynote on Monday morning, and the party on Thursday night, everything else going on here, including most of the content of the conversations going on in the hallway track, are under a non-disclosure agreement (NDA) with Apple.

Published by aallan on Flickr.
Moscone West

However if Twitter manages to stay up under the onslaught I'll be tweeting during the Keynote. I'm currently trying to figure out when I should start lining up outside the Moscone Center. Knowing this barmy lot, there's probably already half a dozen people standing outside the doors already...

Tuesday, May 26, 2009

The Emperor has no clothes

The number of people publishing sales statistics for their iPhone applications are few and far between. Apart from people like Pinch Media, who still really only have a skewed sample, the only people with a real overview of what's going on are Apple themselves. The rest of us just have to rely on our own experience, and anecdotal evidence like the recent post by iPhone developer Rick Strom.

Perhaps we're going to see a bit more transparency now that TechCrunch picked up Rick's post and ran with it, or at least some sort of acknowledgement that the App Store isn't going make developer's rich overnight.

I'm building applications for the store not because it's going to pay my mortgage any time soon, but because at last I have a mobile platform where I can "scratch my own itch". After years of pushing the boulder uphill on the on Series 60 platform, and before that on the Palm, the iPhone and Apple's SDK is a welcome breeze in an otherwise desolate wasteland of overly complicated development environments. The barrier for entry is just that much lower and, despite not really being viewed as a mainstream language, I've always had a soft spot for Objective-C. It fits the way I think about things...

...unlike Java. I've never really gotten on with Java. Despite dire warnings to the contrary I haven't missed not having it on my iPhone, the lack of Flash support is by far the more noticeable.

I was disappointed, although not terribly unsurprised, to learn that Google had gone with Java as their development platform and Eclipse as their IDE of choice for Android applications. Despite that I'm looking forward to getting my hands on a G1 so that I can play around with the hardware, which allows you to do some cool things you can't yet do with the iPhone.

As Russell Beatie said back in 2005,

If someone's using a PC to demo the next big thing, then it's not the next big thing...

Despite the iPhone I consider the mobile web as still born. I rarely use the "real" web on my iPhone, instead the information is brought to me by those native applications that Apple didn't initially think were a good idea. The next big thing isn't going to be the Web, the last big thing was the Web, it's not going to be the next big thing as well.

Using the new iPhone SDK 3.0 your application can communicate with accessories attached to the phone, and rumours suggest that the next generation iPhone will have a magnetometer plugging the gap between the iPhone and the G1. Sensing is coming to your phone, and it's not just accelerometers anymore...

The signs of the next big thing; in the mainstream with devices like the iPhone and the G1, in academia with projects like Siftables and Google's PowerMeter, and out on the open-hardware fringes with things like the Arduino, are everywhere.

People won't get rich (re-)writing niche iPhone applications which get lost in the noise of the App Store. I know that, despite enjoying the experience of cranking out software, I'm not going to get rich except by the oddest of chances.

However a bunch of people are going to get rich, and probably fairly soon. We're entering a period of change. The next big thing is ubiquitous computing, and don't let anyone tell you differently.

Compared to a real ubiquitous computing we're at the banging the rocks together stage, but the recent trends towards embedded systems and cloud computing are obvious first steps down the path. The Emperor may have no clothes on, but he's got a good suit waiting in the closet...

Monday, May 25, 2009

CloudStatus on the iPhone

One of the problems writing software that relies on third party APIs is that when that content goes away your application breaks, and that's something that's happened to my Cloud Status application for the iPhone. The service I was relying on to provide real-time information on Twitter went away...


Cloud Status v3.0

Users of the application currently get a blank page when they ask for the status of Twitter, and there isn't an easy way to reproduce the information that I was using from Twitter's own API. So I've gone ahead and removed it from the application, and implemented the most requested feature for this application to replace it. Support for reporting real-time status from Google Apps, as well as Google App Engine...


The new Google Apps support...

Unfortunately you aren't going to be seeing this update on the App Store any time soon, I'm currently developing against the new 3.0 beta SDK which is still under NDA with Apple. However if you're a fellow developer who would like to test out the new Cloud Status application, and already have the new 3.0 OS deployed onto your iPhone or iPod touch, I'm happy to generate a limited number of Ad Hoc distribution copies for interested parties.

Update: You can of course just go an purchase the current version from the App Store. As soon as I can push the new version to the store I will, and you'll get it as a free update when I do...

Thursday, May 07, 2009

New for the iPhone, App Engine Manager

Following on from my previous iPhone applications, Cloud Status and AWS Calc, and continuing with the Cloud Computing theme. I'd like to announce the release of my next iPhone application onto the App Store.


App Engine Manager for the iPhone 3G and iPod touch.

Want to manage your Google App Engine applications from your iPhone? There's an app for that...

The App Engine Manger application allows you to to monitor the status of Google App Engine in real time, estimate your monthly costs based on your current usage levels, then lets you estimate how much a sudden usage spike could cost.

It also allows you to look at the performance of each of your applications individually and examine requests per second, upload and download bandwidth and CPU.

Thursday, April 16, 2009

An iPhone client for LookUP





I'm currently at Mac Developer Network's NSConference. So what better time to sit down and write my next iPhone application? However abandoning the cloud computing theme running through my previous applications, I've gone back to my roots and written something for the astronomers in the audience.

LookUPbeta for the iPhone

Ever since Stuart Lowe released his LookUP service it has been nagging away at the back of my head that it was an obvious candidate for an iPhone application. So tonight I sat down and wrote it...



LookUP for the iPhone and iPod touch.

LookUP is an aggregator service, allowing you to look up the position and details of astronomical objects by name. I've played with things like this in the past, in fact I wrote my own version several years ago. It just wasn't as user friendly as Stuart's...

I'll be submitting the application onto the App Store in the next couple of days as a free application. However if you want to get your hands on it sooner rather than later, after an extended time in the purgatory that is the Apple review process, I'm willing to generate a limited number of Ad Hoc distribution copies for interested parties. First come, first served.

Update: LookUP for iPhone is now available on the App Store.

Tuesday, February 17, 2009

New for the iPhone, AWS Calculate

Following on from my previous iPhone application which allows you to monitor the status of various cloud computing backend services, and continuing with the Cloud Computing themed applications. I'd like to announce the release of my next iPhone application onto the App Store...


AWS Calc for the iPhone 3G and iPod touch.

Cloud Computing makes it easy to build applications that run reliably, even under heavy loads. But the larger the load, the higher your cost.

The AWS Calc application allows you to estimate your monthly costs based on your current Amazon Web Services (AWS) usage levels, and then lets you estimate how much a sudden usage spike could cost.