New bits of kit

After the purchase of the 400D, I’ve invested a few more coins in some extra bits of photographic kit.

Firstly, and after a number of recommendations, I’ve bought the Canon 50mm f1.8 prime lens. First impressions are that it lives up to the expectations and the large aperture really benefits indoor photographs without flash. The shallow depth of field makes it great for portraits. I’m going to a christening in a few weeks so I’ll hopefully get to give it a good run out. I picked it up for £75 from the Southampton branch of London Camera Exchange.

Next up was the Canon BG-E3 battery grip. This attaches to the bottom of the camera and bulks it out a bit, as well as taking two batteries. Not an essential purchase, but it does make the camera a bit more weighty and comfortable in my hands, and really helps with portrait shots thanks to the additional shutter release button. Price was a very reasonable £89 again from London Camera Exchange. This beats the best online price I could find (that actually has stock) by a good £30.

To go with the above I purchased a second Canon NB-2LH battery from Amazon for £34.41. I decided not to go for a 3rd party battery, though they are much cheaper. At the same time I bought a 2GB Sandisk Extreme III compact flash card for £46.21 which was around the same price as, but with free postage.

For my forthcoming attempt to take some photos of the Hursley fireworks this Friday I hit eBay, and bought a 3rd party remote shutter release from a seller in Germany. It is essentially the same as the Canon RS-60E3, but at a much lower price of £5.99 including postage. The build quality isn’t as good, but it works and even has an extra feature for controlling two cameras from the same shutter release switch, which the official Canon one can’t do I believe (not that I will have a use for this particular function I’d imagine.)

Finally, and also from eBay, I purchased a Manfrotto 390RB tripod and 390 quick release head as a second hand purchase from a private seller. This turned up this morning and looks in great nick. I used to own a Manfrotto mount and suction cup for an abortive attempt to take some video on a car track day, and their build quality is excellent. I look forward to trying it out in anger. I won the auction at £59 which was a little more than I wanted to pay, but is cheaper than an equivalent new Manfrotto tripod and head would cost.

It’s fair to say that I’m not planning to splurge much more cash in the near future. This should be enough kit to keep me going, and to allow me to capture the pictures I want to get. The only possible exception is a slightly larger bag to keep it all in! In any case, it’s now time to concentrate on producing some end results.

WebSphere ESB 602: Administrative dynamicity

In WebSphere ESB 6.0.1, the amount of post-deployment administration you could carry out was limited to the ability to view module import and export details, and the capability to modify the target of an import with an SCA binding. Within WebSphere ESB 6.0.2 we have greatly improved the influence the administrator can have on a deployed mediation flow in two ways.

The first of these is to extend the ability to re-target endpoints to include Web Services endpoints. Thus, an administrator can override the endpoint URL for SOAP/HTTP and SOAP/JMS endpoints. This administrative capability is in addition to the new dynamic endpoint selection functionality I’ve already talked about and is more static in nature. You might ask which one takes precedence and the answer is any endpoint dynamically selected by the mediation flow.

More significantly, we’ve introduced the concept of module properties. An Integration Developer can now opt to promote certain properties of primitives within the mediation flow up to the module, where they will be exposed for viewing and modification by the administrator post-deployment. This leads to a number of interesting possibilities, from being able to make small changes to the behaviour of the flow such as whether or not a Message Logger logs within a global or local transaction, to more creative uses which can have an effect on the outcome of the flow. The combination of administrative properties, the Message Element Setter and a Message Filter primitive is a prime example of a possible application of the latter.

WebSphere ESB 602: Dynamic Endpoint Selection

Apologies for the delay in producing the next in this series of posts outlining the new functionality coming up in WebSphere ESB 6.0.2. However, I’ve got a few cycles to spare so I’m going to try and get the rest of them done in short order.

One of the big questions we get on WebSphere ESB is how can you dynamically select the endpoint to invoke from within a mediation flow? In 601 you are limited to defining imports for all the endpoints you may wish to invoke and then using the Message Filter primitive to route to one of them. Whilst this works, it isn’t very dynamic. If you want to add an endpoint then you need to go back to tooling and then redeploy.

Re-tooling and deployment may be acceptable if the interface of an endpoint has changed as you may well need to update the contents of the flow accordingly (for example by changing a transformation) but is overkill in the simpler case whereby the interface remains the same but you just want to change the endpoint the message is sent to. Just such a scenario was the basis for a Developerworks article by Greg Flurry.

The dynamic endpoint selection capability in WebSphere ESB 6.0.2 will solve this issue by allowing you to augment the Service Message Object during mediation with information on the endpoint that you want to invoke. So the next question is then how do you determine the endpoint?

Well, you could use the existing Database Lookup primitive or a custom mediation, but more interestingly you can also use a new primitive available in 6.0.2, funnily enough titled Endpoint Lookup. The interesting thing about the Endpoint Lookup primitive is that it interfaces with the WebSphere Service Registry and Repository. As such, you can configure the primitive to look up endpoints based on port types, versions and even perform more complex queries based on the ontology you’ve defined within your registry. The registry may return zero, one or more results which you can then select from using a variety of methods, for instance a combination of Message Filter and Message Element Setter.

All this works for endpoints using the SCA native bindings or SOAP/HTTP and SOAP/JMS.

First efforts with the 400D

Winch and lines

I worked from home today, and a mid-afternoon glance out of the window showed some nice light outside so I took the 400D out for it’s first proper play. The location being just outside our flat in Ocean Village. I spent an hour and a half wondering around trying to find compositions that wouldn’t appear too snappy, and playing around with the camera settings. I shot mainly in aperture priority using both lenses, and had my first taste of RAW processing using Adobe Lightroom on the iBook. Processing-wise my experimentation was limited to the presets – I need to do a lot more reading up on the various controls and the effect they will have.

I’m pretty pleased with the results though, for a first go anyway. I accidentally left the camera on ISO 400 for a few of them which has left them a little noisy. Some choice ones are up on flickr, any comments and constructive criticism welcome!

v4 firmware for Orange Nokia N80s available

Further to my previous blog about Orange UK and their apparant lack of regard for Nokia N80 owners, it seems that the Orange approved version of the N80 v4 firmware is now available via the Nokia Phone Software Update site. I’ve just performed the update, and all went well. It is a 70MB or so download and about five minutes to install. Remember to back up your phone memory to either the memory card or PC beforehand so you can restore all your information afterwards as it resets the phone to factory settings.

The *#0000# command now displays:

V 4.0623.0.41
Nokia N80 (31.04)

On top of the v4 firmware contents, two new applications appear to be installed: OrangeTV and Orange Music Player. The former is the client for a streaming TV service which Orange have offered on other handsets for a while now, and the latter appears to be an iTunes type download store for music. A quick peek at the latter showed you get three songs for free, and then have to pay per download. The range was rather limited and they cannot be transferred from the phone.

The inclusion of these two applications (presumably rewritten for Series 60 3rd edition) suggests that the release of this firmware has not been a  knee-jerk reaction to customer pressure but something that’s always been in the pipeline. As such, the inability for Orange Customer Services to either know this or at least communicate something to their customers to appease the disquiet is worrying. A classic case of the left hand not knowing what the right is doing. Still, they’ve come through in the end so well done Orange, now keep it up.

New Toy!

After months of talking myself out of it, I’ve finally joined the DSLR owners club!

As a birthday present to myself and also partly funded by Lana, I’ve become the proud owner of a Canon EOS400D. A weekend trip up to London gave me the chance to shop around a bit and eventually I plumped for the 400D and 18-55 kit lens, along with a Tamron 55-200, 1GB CF card and a LowePro bag for a total of £650 from Ask Direct on Tottenham Court Road. Not a bad deal I feel. WarehouseExpress came out a big cheaper, but not by much, and I was able to check that the unit I got is a kosher UK one.

The decision process behind the purchase was a long and difficult one. Initially I favoured getting a Nikon, but the D80 was a little too expensive. During the week I had a wavering thought that maybe I should not get a DSLR, but instead purchase a bridge camera such as the Panasonic Lumix Fz7 which would give me the extra zoom range that I get annoyed without on a compact digital, but in a small and self-contained unit. Lana thankfully and correctly set me straight in that I’d probably regret that decision in very short order. After handling both the D80 and 400D and feeling comfortable with both, the dust removal facility and cheaper price of the 400D swung it that way. The Tamron lens whilst not being the most capable glass will give me a bit of reach until I can afford to get something better, probably when we visit Japan next year.

All that’s needed now is a bit of online shopping for a couple of bigger CF cards. Any other purchases will have to wait a fair while! Though I am still tempted by a battery grip to make it a bit more weighty in the hand.

Unfortunately the weather today was rather inclement so it didn’t get a run in London. I’ve been playing with it this evening back at home, and a handful of photos are now up on flickr. Of course, the long learning curve now starts in earnest as I try to get to grips with both the camera and the theory. It will be fun practising.

Dilbert and caffeine

My caffeine withdrawal is going well, the main benefit being that I have stopped drinking Coca Cola. The decaf coffee at work is nice enough. Interesting to see that Andrew has joined me in quitting as well. All of this makes today’s Dilbert especially funny. Hopefully we will see the effects of withdrawal over the next few strips!

WebSphere ESB 602: Event Emitter

Event Emitter primitive

The Common Event Infrastructure is a core part of the runtime that WebSphere ESB and WebSphere Process Server are based on. The CEI runtime allows you to generate business or IT level events and persistently store then for consumption by monitoring tools such as WebSphere Business Monitor. The event format is defined by the Common Base Event model.

Currently in WebSphere ESB 6.0.1 you can generate CEI events when exports and imports are invoked. With the Event Emitter primitive in 6.0.2 you will be able to generate your own events from within a mediation flow, which can embed any information from within the Service Message Object.

A typical use of the Event Emitter primitive would be in conjunction with the Message Filter primitive to generate a business event when an exceptional situation is discovered based on the content of the message being mediated.

WebSphere ESB 602: Message Element Setter

Message Element Setter icon

In the first of a series of posts on the new functionality coming up in WebSphere Enterprise Service Bus 6.0.2, I’d like to introduce one of our new mediation primitives: the Message Element Setter.

The job of this primitive is to provide you with an easy way to set a particular part of the message with a value. Previously, the only way to do this would be to utilise the XSLT primitive with a very simple XSLT function, or to use a custom mediation primitive. Both of these are pretty heavyweight for such a simple job, and so the Message Element Setter was born.

Very simply, you can configure the primitive to set any part of the Service Message Object, specified via an XPath, with a value of a particular type. In addition, there are two special types of setter: the copy and delete. Copy allows you to copy part of the SMO from one place to another, and delete obviously allows you to delete the value of the part of the SMO you specify.


Currently at Heathrow terminal 4 waiting for Lana to arrive back from Canada. I am using my Nokia N80 to surf the web read my email and post this picture to flickr and write this blog entry all over BT openzone wi-fi. Why Orange dont think this phone is worth selling anymore is beyond me.