Showing posts with label Objective-C. Show all posts
Showing posts with label Objective-C. Show all posts

Sunday, August 26, 2012

Now with added Beagle Bone

After the last couple of days my workshop in London on the 8th of October, at the Hoxton Hotel, now has added BeagleBone and Raspberry Pi.

Blinking the BeagleBone's heartbeat LED using the iPhone

We're going top go hands on in a small class setting, deep diving into the iOS internal sensors and how to connect your iPhone or iPad to external hardware. Everyone will get their hands dirty, and everyone will come away knowing more about both the iPhone hardware and how to work with external accessories. So come along and get your hands dirty playing with iPhone, Arduino and now the BeagleBone and Raspberry Pi and get 10% off the Early Bird ticket price today only with code BEAGLE10.


Register
Monday 8th October 2012
Hoxton Hotel, London
Early Bird Price: £499 (until 1st Sept.)
Normal Price: £699
Save 10% with code BEAGLE10

Thursday, August 16, 2012

iOS Sensors and External Hardware Masterclass

I'm going to be down in London for O'Reilly's Strata conference in October, key-noting on the Tuesday morning, talking about the hidden data that follows us around and how I've leveraged that for my own advantage. I'll also be talking, along with my colleague Zena Wood from Exeter, about People Watching with Machine Learning and using modern smart phones, like the iPhone, to do interesting sociology. It should be good.

However I'll be kicking around town for most of the following week afterwards, talking to various people. But I had a gap, a big gap, at the beginning of that week. So I've decided to try and interesting experiment...

I've often argued that both the increasingly rich sensor suite and the ability to easily connect today's smart phones to external hardware, and sensors, make them an amazing lever on the world. It's something I've focused on a lot over the last year or so.

A conversation with Dale Dougherty and Alasdair Allan

While I've run a lot of conferences and workshops over the years, it's always been on someone else's dime. Time to put my money where my mouth is, I'm going to run a workshop.

In fact I'm going to run a master-class on iOS Sensors and External Hardware. This is going to be hardware hacking for iOS programmers. It's going to be hands on, bring your Mac, bring your iPhone and make sure you've got Xcode set up so that you can deploy apps onto your device. It'll be a small group, no more than twenty, and I'll be doing a bunch of live coding.

We'll start the day talking about the internal sensors: the accelerometer, magnetometer, gyroscope and how to combine these into sophisticated applications. Here you'll really get the benefit of my physics background, because I can take you under the user friendly skin Apple have put on top of these sensors as part of the iOS SDK and hopefully give you a decent idea of what their limitations are and how they work.

Then we'll move on to talk about how to extend the reach of the on-board sensors by connecting your iPhone to external hardware. We'll look at how to connect the Arduino micro-controller platform to your iOS device, and build simple applications to control the board and gather measurements from sensors connected to it, directly from iOS. This course will give you the background to build your own applications independently, using the hottest location-aware technology yet for any mobile platform.

iPad controlling an Arduino board via the Redpark cable
You'll take away with you an Arduino Uno board, a Redpark TTL Serial Cable for iOS, and everything you need to connect your iPhone to your new micro-controller. You'll also receive a copy of my books Basic Sensors in iOS and iOS Sensor Apps with Arduino.

The workshop will be on Monday the 8th of October at the Hoxton Hotel right next to London's Silicon Roundabout. I've opened registration and I'm offering 30% off the ticket price until the 1st of September. Sign up early, and sign up often.

More about exactly what I'm going to be talking about on the workshop's own website. I've done similar things on smaller scales in the past, but this should be a lot of fun. Hope to see at least some of you there...

Register
Monday 8th October 2012
Hoxton Hotel, London
Early Bird Price: £499 (until 1st Sept.)
Normal Price: £699

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.

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.

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, 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.

Monday, January 19, 2009

New for the iPhone, Cloud Status

Paul Graham, one of my favourite dispensers of wisdom, argues that the arrival of web based software has changed not just the user experience, but the developer experience as well.
One of the most important changes in this new world is the way you do releases. In the desktop software business, doing a release is a huge trauma, in which the whole company sweats and strains to push out a single, giant piece of code. Obvious comparisons suggest themselves, both to the process and the resulting product. - "The Other Road Ahead", Paul Graham

Which is exactly right. Working in the cloud you rarely make a software release in the old sense of the word. Despite the benefits I must admit I actually somewhat miss the "big push" where, usually with a great deal of trepidation, you roll out a new improved version of a piece of software.

So it's with a certain sense of nostalgia, about the days before web applications started killing off the desktop, that I'd like to announce the release of my first iPhone application onto the App Store...


Cloud Status for the iPhone 3G and iPod touch.

Cloud computing makes it easy to build applications that run reliably, even under heavy loads. However as a developer you need to know if and when the cloud, and hence your application, is having problems.

Cloud Status allows you to monitor the status of Google App Engine, Amazon Web Services and Twitter in real time. When they know they have problems, you are the next to know.