Tuesday, April 08, 2008

Google App Engine

Over the last couple of weeks there have been rumours running around that Google would be launching something to directly compete with Amazon's AWS suite, and embed themselves even further into the Cloud. Sure enough, while I was asleep, Google announced a preview release of Google App Engine at Campfire One.


But what Google has done is take a totally different approach to Amazon. The Google App Engine is basically a platform for producing and deploying (robust and scalable) webservices, where as Amazon's offering is a more pick and mix affair with storage (S3) and compute (EC2) and databases (SimpleDB) being offered as components rather than being integrated into a single platform.

However, one of the reasons why Amazon's S3 storage service has taken off so rapidly is the fact that it can be viewed as a component, and startups (and much larger firms) can use it transparently. So long as you wrap the service sensibly, if Amazon went bust tomorrow (unlikely) or the service became unavailable or unreliable (slightly more likely, but still unlikely) you wouldn't have to rewrite your entire code base. You buy a whole bunch of servers, assuming you can afford it, rewrite the low level library that handles storage, and you're set. You still maintain control.

Google isn't offering as much control as Amazon, if you build your business on Google's platform you're relying on Google to support your business. It's an interesting choice from Google's point of view, and it'll be interesting to see whether people will bet on Google. It looks like a sure bet, but if I was investing a lot of money into a business I must admit that it would probably make me rather nervous to leave so much control in the hands of another company who of course have their own objectives.

It seems very clear that, unlike Amazon's EC2, the App Engine doesn't have the potential (at least in its current incarnation) to be a general computing platform, it seems to be specifically built to be request driven, and that's okay.

Google's choice of Python as its runtime is probably fairly predictable, when you work for Google you have to use one of the four allowed languages, at least for deployable code, those being C++, Java, Python or JavaScript. Of the four Python is the obvious choice...

While I'm not a Python person, my language of choice to get things done is Perl, due to circumstance I've actually had to write a bunch of Python before. So while I'm not a guru, I can get things done in Python, abet slowly, all the while muttering that I'd get it done faster if I was writing in Perl. So I've put myself into the wait list for a slot in the preview release. I'll let you know if get accepted before they open the doors properly, I guess it'll take a while though...


However the release of Google's App Engine does mean that I'm even more annoyed than I already was, which was fairly, that my travel budget won't quite stretch to a trip out to San Francisco for Google I/O. I've already had to shelf plans to head out for Where 2.0 due to the budget squeeze here in the UK, although since I've already been out to ETech this year and will be heading to OSCON in July maybe I shouldn't complain? My a Dopplr trips list is still looking fairly full after all...

Update: There is some good discussion of Google's new App Engine by Richard MacManus over at Read/Write Web and by Brady Forrest on the O'Reilly Radar, and TechCrunch have had a go at building and launching an application using the new framework.

Update: Guido van Rossum talking about Google App Engine at it's release via Robert Scoble (and QIK) in two parts...

I'd have loved to have seen Larry Wall doing one of his typical off the wall talks at the launch of Google App Engine with a Perl run time. But I guess you can't have everything...

Update: Show your support for Perl as the next language runtime to be added to the App Engine. Right now (10/Apr) this is the second most highly ranked support request, just behind support for urllib and urllib2 interfaces in Python. Surely we can do better than that?

Update: Well, so much for the lock in arguement (via Daring Fireball and the O'Reilly Radar)

Saturday, April 05, 2008

Twittering transient event messages

After sitting through Jesse Robbins and Mikel Maron's talk on Disaster Tech at ETech last month in San Diego, and listening to them talk about Twitter, I finally 'got it'.

The currently supported protocols for VOEvent clients. Roughly divided into the push protocols; vanilla TCP and Jabber, and the pull protocols; RSS and KML. Twitter sits somewhere in between these two classes, as it can be used in both push mode via a mobile device, or in pull mode via the website.

So to go along with the TCP and RSS and KML event feeds, I'd like to point people at the new eSTAR Twitter feed. Right now the feed is only carrying automatically generated tweets alerting you to new transient events such as Gamma Ray Bursts, Microlensing Events and SNe Candidates. But I'm going to be plumbing Twitter into the heart of eSTAR over the next week or so, soon you'll be able to know not only when interesting things are happening, but also what telescopes are responding to those events, and what they're seeing. All in real time...

Tuesday, April 01, 2008

The April Internet

Ever year the Internet is choked with April Fools jokes. Paging through my RSS feeds there are some obvious jokes and some less obvious jokes. There are things that might be jokes, but aren't. There are things that at first look might be true, but aren't, and there are some things that it would be handy if they were true. The troubling thing is it's getting hard to tell which is which, and that means that you have to take virtually everything with a pinch of salt. It's bad enough trying to avoid having your office being the one filled with balls (you have no idea how carefully I thought about the Google search to find that image) but every year I basically have to spend the day disbelieving every word people say to me...

...actually thinking about it, why was I trying to avoid having my office filled with balls?

Monday, March 24, 2008

UAV flights in Antarctica

The British Antarctic Survey has just completed a series of test flights of autonomous unmanned aerial vehicles (UAVs) in Antarctica.


I know one of the people involved and this is a cool project, with a lot of potential for interesting bits of computer science and engineering, as well as climate science, to get done. I've been meaning to write it up properly since Phil's press release came out, but time is passing and it's been sitting in my edit queue the entire Easter weekend, so I'll just point you to the release about the test flights and leave it at that.

I've also been meaning to write up my own playing around, although only in software at the moment, where I've been investigating flocking and cooperative behaviors for autonomous UAVs, which is something that's come out of my work on autonomous agents for the eSTAR Project. Hopefully I'm going to break out the Arduino boards, and my soldering iron, and find the time to do some basic hardware demos soon. So perhaps I'll write it up then. Until then, go look at Phil's project, it's worth your while...

Tuesday, March 18, 2008

More on the iPhone SDK

So it turns out that, despite what Apple insisted, the iPhone SDK works pretty much out of the box on PowerPC based machines, and you don't have to be a member of the iPhone Developer Program to download the SDK. Both these things are good news, because as a Brit, I don't get to be part of the developer program, and I still don't have an Intel machine running Leopard.

So I've downloaded and installed the SDK on my G5 iMac, and it seems to work okay...


The problem? Like others I'm suffering under the frustration of Error (34) which means than, presumably due to the lack of a signing certificate, I can't even upload my applications to my own iPod to test them.

Interestingly when building for Aspen, rather than the Aspen simulator, and unlike others, I'm not getting any complaints about my missing signing certificate, just the predictable warning about target architectures.

My initial reaction is to guess that the mysterious Error (34) is probably down to the fact my iPod touch is running firmware 1.1.4, rather than the new revision 2.0 which won't as far as I know be available till June. Or possibly it's something to do with the apparent problems with 64-bit architectures and the new SDK. Who knows, Error (34) is a bit opaque after all...


Suffice to say I've gone back to working with the rather less friendly hacker SDK, at least till Apple gets its act together. There isn't a lot of point writing applications if I can't upload them to actual test hardware.

Update: So you don't need firmware 2.0, but you do need the signing key? Wonder how long the developer program will take to roll out to the UK?

Update: Okay, that's interesting. Despite Error (34), the applications are uploaded to the iPod, but rather than ending up the /Applications/ directory, they end up in /var/mobile/Media/PublicStaging/. Moving one of these applications from PublicStaging to Applications and restarting SpringBoard drops the uploaded application onto the SpringBoard display. But, it has a default icon rather than the icon that's included in the package. Not a good sign. SSH'ing into the iPod and poking around inside the application bundle, shows that the binary doesn't have its execute bit set. Setting the application so that it can actually be executed, and clicking on the icon on SpringBoard, does actually get us somewhere. The Default.png background image opens, but then the application crashes.

At this point I think I've demonstrated, at least to my own satisfaction, that all that's missing here is a signing certificate. I just wish Apple had provided a more understandable error message to tell us this, you'd think it wouldn't have been that much more effort? and it would have saved a lot of people, a lot of trouble.

Update: Ah now that's interesting as well. After plugging my iPod back into my development machine I get a pop-up to say that the iPod contains diagnostic information that might be useful to Apple. Clicking on further details, and it's the crash logs from my test applications...

Friday, March 14, 2008

The "official" Google Sky Maps

So we've been playing around with Google Maps for Sky, as opposed to Google Earth for Sky which has been around a few months longer, since December last year. But yesterday Google got round to releasing the 'official' Sky Maps site. It's pretty cool, and I'm glad I never got round to fiddling with opacity sliders for multiple wavelengths, because they've done it better than I would have done.

Thursday, March 06, 2008

ETech: Closing Keynote

I'm in the closing keynote of ETech. First up is Alex Steffen talking about Building a Bright Green Future.


If those 4 billion people on their way out of poverty in the third world adopt our life style, we're 'all cooked'. We need sustainable development.

Interestingly, Alex is arguing that one of the key ways to encourage sustainable development is the education of women. That the example of the first world shows that giving women rights, and choices, means that less children are born.

He's also arguing that out small steps at home, like recycling, aren't going to help. We need systematic change. We tend to think the way to solve cars' ecological problems is to invent better cars. But the big problems with cars aren't under the hood.

Vancouver car ownership is down by 40% and 70% of the trips made are by foot. It is possible to build livable downtown communities, the Pearl District in Portland, Oregon.

But density also allows us to think about how we deliver goods, webfronts like Nau, and delivery companies like City Cargo, a pilot project in Amsterdam to test whether using cargo trams to deliver goods in the inner city is viable.

Just by showing people the effect of their actions, then people's actions change. Cars that have real time mileage meters get better gas mileage than the same model car where the only difference is that it doesn't have the meter.

Update: Next up is Lew Tucker talking about Twine and the Social Graph Meets the Semantic Web. I'm really surprised that people are still talking about social graphs so much, especially here which is supposed to be an emerging technology conference.


Lew is giving a demo of Twine, which is an invite only social network. Looks pretty cool, but it also doesn't look such a big step change to Facebook that someone on the street with be able to tell the difference. I can see the difference, I can see how semantic tagging is a step forward, but I can tell you straight off that people who aren't alpha geeks won't be able to...

The interface is also way, way, too complicated. I'm sure it's going to be really popular with the Silicon Valley crowd, but the outside world? Anyway, social networks are well, over. They aren't particularly interesting anymore, geeks might not be bored of them yet, but the rest of the world is getting tired. They'd rather go down the pub and talk to people...

Update: Next up is Micah Sifry talking about Digital Democracy, and using technology to engage with the democratic process. Maybe it's just me being cynical, but is anyone engaged in the democratic process these days?

Update: The final talk of the conference is by Timothy Ferriss talking about his 4-hour Work Week.

I don't trust an inbox in my pocket in the same way I don't trust dark chocolate in my house, I don't have good enough impulse control


Interestingly he came up with the title of his book by running a Google AdSense campaign, with the suggested titles are the text. He went with the highest click through rate.

...we're done. Time to head to the bar.

The iPhone SDK is here, or not?

So Steve Jobs did indeed announce the iPhone SDK this morning. Things are better, and at the same time worse, than I feared. You can sign up for the developer programme for only US$99, the bad news, you have to be running Leopard on an Intel Mac for the SDK to run. My problem, I've got a Mac running Leopard, but it's PPC. I've got an Intel Mac, but it's running Tiger. I really don't want to upgrade the machine running Tiger right now.

However, it doesn't look like it's going to be a problem, because I'm the wrong type of developer anyway. In a totally insane move Apple have restricted the programme to developers in the US only. What's going on here? What happened to globalisation?

Unlike the licensing restrictions which lead to the iTunes divide, there is absolutely no legal reason that I can think of that would prevent Apple rolling out the SDK to 'the rest of us'... so why restrict it to the US?

Update: So things turn out to be at the same time better and at the same time worse that I initially thought...

ETech: A Bomb Shelter for the Climate Crisis

I picked the next talk just based on the title, there wasn't an abstract, so it's touch and go. I'm in A Bomb Shelter for the Climate Crisis given by Natalie Jeremijenko.

She's talking about translating global problems into locally actionable items. We're faced with a global climate destabilisation, at other times (for instance during the cold war) we mobilised on a local level to build shelters. Natalie is advocating building Urban Space Station, an optimised urban greenhouse...

ETech: DIY Survival Projects

I'm in DIY Survival Projects for the Apocalypse with Bre Pettis.


There are number of realistic ideas about the end of the world; nuclear blast, warfare, fire, volcano, tsunami, hurricane or earthquake, robot uprising.

You need to have a plan. You need to get used to making things, because you won't be able to go down to the corner store and buy a biege box any more.

It's really important to buy beer and condoms, disaster preparedness can get really boring in hour seventeen... but don't buy beer, buy pop tarts

Bre is arguing that it's really important for survival to have a community and that everyone should start or join their local hacker space. Communication is also really important, get your ham radio license.

But most of all you need to know how to make things, and getting into the habit of learning how things work, attempting to fix things that are broken and making things from scratch.

Post-apocalypse currency, gold are more likely t maintain value than the US dollar, you can't get to safe deposit boxes, so bury it in your back yard. But it won't hurt to carry a thousand dollars in your wallet. If your airlifted out a disaster, your in a better situation that you would be otherwise.

You have tools handy, right?