Archive Page 3

Merry Christmas!

 Merry Christmas

Merry Christmas Everyone!

It’s been a fun family Christmas so far, and I’m looking forward to a few more days off :-)

P.S. No cards this year - climate crisis and all… e-mail all the way

Amazon Web Services Platform - SimpleAtomic please

It’s probably not a good approach for a number of reasons, but every time a new development technology or platform comes along, I first evaluate how I’d develop a theatre ticketing system with it. I reimplemented newts a few times in Java because I didn’t get it remotely correct the first time out, so I know the problem inside and out and it can be extended to an online model for those kinds of technologies. So while it might not be an ideal reference concept, for me it’s a good start.

This past week Amazon announced SimpleDB to extend their web services platform to small, semi-structured, queryable data storage. It really does make you ask the question “What doesn’t their platform provide?”. The answer to that is a transactional data store for non-file data. That’s right, SimpleDB isn’t a database in the currently common understanding of the term. The lack of transactionality and the ‘eventual consistency’ model help hugely in the scaling out methodology used by companies like Amazon, and having seen a couple of presentations about that strategy, I’m a proponent myself.

And for many, many applications which currently use a RDBMS, no transactionality/consistency is fine. In fact, to use my ticketing system example, there’s only one place where I actually need to read and update data atomically, and even that is a single integer associated with each performance. But I really do need it in that one place. I’ve thought about it for a while, and it’s just not optional.

Where does that leave me on the Amazon platform? I think it means I have to install a RDBMS  on a couple of EC2 instances and jump through all the annoying hoops to get that to work and be robust and scale. All that for a single atomic integer update.

What could they do to help with this? Well after a little head scratching, what I’d like is to be able to write some distributed transactional/atomic logic on the Amazon platform for these small cases where it’s actually required, and where I’ve considered the scaling implications.

So I’d like a transaction/atomic primitives service. A SimpleAtomic service which lets me create and access simple Locks, AtomicBooleans and AtomicIntegers (similar to the java.util.concurrent classes).

I’m looking forward to discussing this at work and outside as I’m sure the ideas of (1) moving transactions/atomicity logic explicitly into the application and (2) doing transactional work in a scaling environment will be controversial in each environment respectively.

iPlayer

The BBC unveiled their Mac and Linux friendly version of the iPlayer the other day. It’s streaming only, and apart from the limitation of having to be connected to broadband to view, I’m impressed (though recent BBC tech has lowered expectations somewhat). The quality is ok and it starts quickly. It’s only a beta, and that shows in the reliability. I’ve watched 3 or 4 shows so far and they’ve all stopped in the middle with an unhelpful error message. Reloading the page clears the problem but puts you back to the start of the programme. It’s easy enough to skip through to the right point… if you remember the timestamp from just before it failed. For that situation, I really wish the BBC would track the viewing point and cache it so it could state on the page where in the programme you were when you last left the page.

As I said, I’m impressed, and I look forward to seeing it improve.

Techie humour

The other evening  I was asked about computing/IT humour and I explained that it wasn’t an appropriate discussion for an evening out. Here’s an example of why..

(Dodgy file extension  jokes courtesy of the UK WebSphere App Server and ESB teams)

London

Just a quick note that on my way home from a recruitment event on Friday I stopped off in London for a meal and some drinks to celebrate a birthday… I had a really good time, saw people I hadn’t seen in ages, and really, really do now mean to head up to London and go out drinking with them more often!

Random, unformed thoughts of Clouds and Grids

I’ve been thinking a bit about my final year project recently (which involved Globus Grid technology) and also about Apache Hadoop/MapReduce style processing. The latter seems to be in the category of ‘cloud’ computing, and while suitable for company internal deployments, in comparison to Globus, really doesn’t have any of the security bits you’d want if you were building a resource to share. That strikes me as a little odd because ‘the cloud’ is something that we tend to think of as being a ‘web scale’ thing, not something stuck behind a firewall.

(How) Should we share a cloud? What security is practical (i.e. do we lose capability by adding lots of security)? Should we simply have many single user clouds? Backed by a single secure store?

It’s also particularly interesting to think this week about simple, secure data processing on large data sets, and how much trouble HMG could have avoided if they’d had the capability to easily filter out sensitive information from their dataset…

Telecoms2.0

Paul gave me access to mojo at the end of last week, and since Norm Walsh is blogging about it, I assume I can too…

As one of the 20th Century telecoms monopolies, it’s good to see BT trying to adapt, and fun to imagine the battles Paul must have had to be allowed to expose call management function on the internet over a non ‘enterprise’ transport. etc, etc. I had programmatic access to an SMS gateway a few years ago when working on Extreme Blue, so I’ve thought of some of the possibilities before, but the RESTful HTTP api changes lots and I’m really looking forward to trying to integrate this with my current side project. I also see a facebook app coming on… I sort of ignored the Web21C stuff when it was first launched because it was (I think) .Net only, but now there’s Java APIs and Mojo so I’ll be taking a much closer look.

SemWeb

I’ve been sold on the idea of the Semantic Web for a while, but its because of descriptions like this (however tongue in cheek) that we’ll end up with something labelled Web 3.0.4.11!

all-encompassing ontological wonder of the Semantic Web

RFC5023

AtomPub is now RFC5023 which is very good news. I’ve been waiting for AtomPub and decent libraries for it for a while because it starts to answer one of the main criticisms I have of REST - that there’s no mechanism to build reusable infrastructure pieces. With Atom and AtomPub we finally have that (for the places its needed).

I’ve been playing around with Apache Abdera in the last week or so and while I think the API and samples could do with a bit of work, it’s functionally pretty good. Now, back to that AtomPub based project….

Getting exciting technology out of the labs

There’s lots of exciting work going on in various IBM labs, but much of it doesn’t get noticed by the outside world. This week I’m involved in the Extreme Blue EMEA Expo which is our chance to get the message out about what the Extreme Blue students in the UK and across Europe have been doing over the last few months.

 

It’s also a fun experience to be involved and meet all the incredibly enthusiastic students and hear what they’ve been up to for myself. SiSi, one of the UK projects seems to have been fairly widely reported. There’s a short video below demonstrating the system which translates voice to British Sign Language.

« Previous PageNext Page »


About

I’m David Illsley, I work in Web Services development at IBM Hursley, which involves work on the Apache WS Project, where I am a committer and PMC member. When not working with technology, I spend a lot of time on the backstage aspects of theatre, and a sadly decreasing amount of time reading.

Archives

a

Disclaimer

The postings on this site solely reflect the personal views of the author and do not necessarily represent the views, positions, strategies or opinions of IBM or IBM management.