Abstract from the Erg Chebbi

Abstract, Erg Chebbi, Sahara
Camera: Canon EOS 7D | Lens: EF-S15-85mm f/3.5-5.6 IS USM | Date: 17-11-2013 15:59 | Resolution: 4557 x 3418 | ISO: 200 | Exp. bias: 0 EV | Exp. Time: 1/125s | Aperture: 11.0 | Focal Length: 70.0mm (~113.4mm) | State/Province: Meknès-Tafilalet | See map | Lens: Canon EF-S 15-85mm f3.5-5.6 IS USM
View featured image in Album
Posted in Morocco Travel Blog, Travel | Leave a comment

Dark Shadows

Rock formation in the Dades Gorge, Morocco
Camera: Panasonic DMC-GX7 | Date: 15-11-2013 16:30 | Resolution: 4594 x 2871 | ISO: 1600 | Exp. bias: 0 EV | Exp. Time: 1/320s | Aperture: 8.0 | Focal Length: 175.0mm | See map | Lens: LUMIX G VARIO PZ 45-175/F4.0-5.6

I’m finally getting around to processing the remaining shots from my Morocco trip in 2013!

I had parked a number of shots from the Dades Gorge, because we were shooting almost into the setting sun, and they were either hazy, or very low in contrast and the in-camera JPEGs look almost "blown out". However it was right to hold these back until I could exert the full capability of Capture One on the RAW files. Here is one where to get the best effect I’ve really had to deepen the shadows, but I think it works, bringing out not only the shapes of the rocks, but also their shadows on one another.

Let me know what you think.

View featured image in Album
Posted in Morocco Travel Blog, Photography, Travel | Leave a comment

It’s Not the Camera, It’s the Photographer… Well, Sort Of…

Example of the rather uneven focal plane of the Canon 15-85mm lens
Camera: Canon EOS 7D | Lens: EF-S15-85mm f/3.5-5.6 IS USM | Date: 13-11-2011 15:41 | Resolution: 5184 x 2916 | ISO: 200 | Exp. bias: -2/3 EV | Exp. Time: 1/6s | Aperture: 10.0 | Focal Length: 65.0mm (~105.3mm) | See map | Lens: Canon EF-S 15-85mm f3.5-5.6 IS USM

There’s a frequently made assertion in photography books and blogs that the choice of kit doesn’t really matter, and a good photographer will make great images regardless. I don’t altogether agree. While I think it’s laudable to encourage photographers to focus on their images rather than gear acquisition, I also think this is quite misleading.

For all that’s written, you won’t find many professionals using low-end cameras to do their serious, paying work. There’s a reason why a hairdresser’s scissors cost £200, and I’m perfectly happy with a pair which costs £10. At the same time the hairdresser is probably perfectly happy with a laptop costing £200, while I expect to pay more like £2,000 for my main professional tool as a roving computer consultant, plus I’ll always have a spare of similar spec.

If you’re earning a living from photography (or doing expensive trips/shoots even on an enthusiast basis) there are some of the same considerations. One dimension is simply the durability of the more substantially-built models – you need a device which will just go on shooting after, to take my example, being bashed on a rock, in a bog, in the middle of nowhere, in Iceland. In some cases it’s about capability. OK, if you’re Jaques Lartigue you can get decent sports photographs with a view camera, but if you’re a mere mortal then you’ll get a substantially higher hit rate with the lightning autofocus and high frame rate of a Canon 7D. I love my little Panasonic GX7, but it doesn’t do action, and it doesn’t do getting wet!

Of course, there’s no guarantee that by spending more money you are getting a better tool for your work. My counter-example is, ironically, the same Canon kit. I’m becoming more and more aware of just how ghastly a lens the Canon 15-85mm is/was. Take a look at the shot above. Even at web resolutions you can see that the reflection of the house’s roof in the pond is sharp, but the roof itself, optically at the same distance and without water in the way, is blurred. The results from my newer Panasonic cameras, even with the inexpensive, diminutive 14-42mm power zoom lens, are just consistently sharper than than those from Canon even with a good, sharp, lens on it. And of course the 15-85mm died dramatically on the Iceland trip even before the incident where I knocked the 7D on a rock.

In a very real way the Canon 7D & 15-85mm combination actively held back my photography. I got into the bad habit of relying on the long zoom range, I got tired of carrying the weight, so didn’t use it as much as I should, and I’m now seeing from straightforward back to back comparisons from my Morocco trip that the image quality was definitely poorer, visible even in web-resolution versions, let alone pixel peeping at 100%. I’m coming to the conclusion that it’s either not possible to build a good zoom lens for APS-C with a good zoom range, or Canon can’t be bothered to do so.

I think, therefore, that the right way to view the camera/photographer equation is as a combination of two components. Both must exceed a certain minimum: a brilliant photographer may struggle with a very poor camera, and a poor photographer will not achieve much with an expensive camera. Beyond that, it’s a sum but where the photographer’s skill probably has a greater weight.

In terms of "what camera should I buy", the first thing to understand is that equipment purchases won’t compensate for your skill deficiencies. A camera purchase is also an engineering compromise. You need to understand your requirements (in particular what subjects and working style you want to follow), and choose kit which best fits that scope. If you really want to work without changing lenses, for example, buy a fixed lens superzoom! A little while ago I found the following wonderful decision tree. It’s designed to some extent for laughs, but there’s also a lot a truth in it. And without any cheating, it says I should go Micro Four Thirds, so it works!

https://www.andrewj.com/blog/2014/what-camera-should-i-buy/

View featured image in Album
Posted in Photography | Leave a comment

Into the (Infra)Red

From The Crane, Barbados. Taken with the infrared-converted Panasonic GX3
Camera: Panasonic DMC-GF3 | Date: 15-04-2015 14:33 | Resolution: 4202 x 2626 | ISO: 160 | Exp. bias: 0 EV | Exp. Time: 1/4000s | Aperture: 3.5 | Focal Length: 14.0mm | State/Province: Christ Church | See map | Lens: LUMIX G VARIO PZ 14-42/F3.5-5.6

Last Summer I purchased a Panasonic GF3 which had been converted to infrared photography. Like with many gadgets, there’s a period where you play with the funky effects, and I quite like the way you can get a really deep blue sky if you do a "channel swap" on the processed image. However I have now established its milieu, and that’s dramatic black and white shots of either partially cloudy skies, or graphic vegetation.

To help with this, I now have it set up to record RAW+JPG, with the picture style set to monochrome. The in-camera results may be slightly different from where the processed image ends up, but they are a decent guide.

Processing is very simple: you just use the "Color Sensitivity" mode of Capture One’s Black & White tool. This is a classic channel mixer, but one in which the channels have a dramatically different effect to on a full-spectrum original. Red affects sky shadows and midtones. Yellow controls the sky and reflected highlights. Blue controls the tone of foliage with some effect from Cyan. Counter-intuitively the green and magenta mixers have almost no effect whatsoever! I now have a sensible starting point for images like the above set up as a preset, but the sliders will usually need a tweak to get the tonal balance right, and some global levels and curves tweaks may also sometimes be needed.

I’m very pleased with the image quality. The image is lower resolution than some of my others for two practical reasons: the GF3 only has a 12MP sensor, and that an older design, and infrared light simply can’t resolve the same detail as blue with its much shorter wavelengths. In practice, however, neither of these are an issue. I bought the camera after reading an article by Ctein, who complained about "hot spotting" through some Micro Four Thirds lenses. I’ll accept that I’m not as critical as he is, but I’m extremely pleased with the results from the inexpensive Panasonic 14-42mm power zoom lens. There’s slightly more visible vignetting at the widest setting than in a colour picture, but otherwise I can’t see much wrong with this.

Now I just need some more "graphic vegetation"!

View featured image in Album
Posted in Barbados, Photography, Travel | Leave a comment

Can No-One Write A Good Book About Oracle SOA?

I’m frustrated. I’ve just read a couple of good, if somewhat repetitive, design pattern books: one on SOA design with a resolutely platform-neutral stance, and another on architecting for the cloud, with a Microsoft Azure bent but which struck an admirable balance between generic advice and Microsoft specific examples.

So far so good. However although the Microsoft Azure information may come in handy for my next role, what I really need is some good quality, easy to read guidance on how current generic guidance relates to the Oracle SOA/Fusion Suite. I identified four candidates, but none of them seem worth completing:

  • Thomas Erl’s SOA Design Patterns. This is very expensive (more than £40 even in Kindle format), gets a lot of relatively poor reviews, and I didn’t much like the last book I read by the same author.
  • Sergey Popov’s Applied SOA Patterns on the Oracle Platform. This is another expensive book, but at least you can read a decent-length Kindle sample. However doing so has somewhat put me off. There are pages upon pages upon pages of front-matter. Do I really want to read about reviewers thanking their mothers for having them before I get to the first real content? Fortunately even with that issue the sample gets as far as an introductory chapter, but this makes two things apparent. Firstly, the author has quite a wordy and academic style, but more importantly he has re-defined the well-established term "pattern" to mean either "design rule" or "Oracle example", neither of which works for me. However I really parted company when I got to a section which states "… security … is nothing more than pure money, as almost no one these days seeks fun in simple informational vandalism", and then went off into a discussion of development costs. If this "expert" has such a poor understanding of cyber-security it doesn’t bode well…
  • Harish Gaur’s Oracle Fusion Middleware Patterns. Again, this appears to have redefined "pattern" as "Opportunity to show a good Oracle example", but that might be valid in my current position. Unfortunately I can’t tell you much more as the Kindle sample finished in the middle of "about the co-authors", before we get to any substantive content at all. As it’s another relatively expensive book with quite a few poor reviews I’m not sure whether it’s worth proceeding.
  • Kathiravan Udayakumar’s Oracle SOA Patterns. Although only published in 2012, this appears to already be out of print. It has two reviews on Amazon, one at one-star (from someone who did try and read it) and one at three stars (from someone who didn’t!).

In the meantime I’ve started what looks like a much more promising book, David Chappell’s Enterprise Service Bus. This appears to be well-written, well-reviewed and reasonably priced. What really attracts me is that he’s attempted to extend the "Gregorgram" visual design language invented for Enterprise Integration Patterns to service bus architectures, which was in many ways the missing piece from the Service Design Patterns book. Unfortunately the book may be a bit out of date and Java-focused to give me an up-to-date technical briefing, but as it’s fairly short that’s not an issue.

After that it’s back to trying to find a decent book which links all this to the Oracle platform. If anyone would like to recommend one please let me know.

Posted in Agile & Architecture, Reviews, Thoughts on the World | Leave a comment

Review: Cloud Design Patterns

Prescriptive Architecture Guidance for Cloud Applications , By Alex Homer, John Sharp, Larry Brader, Masashi Narumoto, Trent Swanson

Good book let down by poor high-level structure

This is a very useful introduction to key cloud concepts and how common challenges can be met. It’s also a good overview of how Microsoft technologies may fit into these solutions, but avoids becoming so Microsoft-centric that it becomes useless in other contexts. Unfortunately, however, the overall structure means that this is not a book designed for easy end to end reading. It may work better as a reference work, but that reduces what should have been its primary value.

The book starts with a good introduction and list of the patterns and supporting "guidance" sections, and is then followed first by the patterns, and then the guidance sections (useful technology primers). This is where things break down a bit, as the patterns are presented in alphabetical order, which means a somewhat random mix of topics, followed by the same again for the guidance sections. I attempted to read the book cover to cover over about a week and I found the constant jumping about between topics extremely confusing, and the constant repetition of common content very wearing. In addition by presenting the guidance material at the end it is arguably of less value as most of the concepts have already been covered in related patterns. Ultimately the differentiation between the two is very arbitrary and not helpful. For example is "throttling" really a pattern or a core concept? If "throttling" is a pattern why is "autoscaling" not described as a pattern?

The book would be about 10 times better if it were re-organised into half a dozen "topics" (for example data management, compute resource management, integration, security…), with the relevant guidance and overviews first in each topic, followed by the related patterns which could then be stripped of a lot of repetitive content, and topped off with common cross-reference and further reading material.

This is not just a book about cloud specifics. A lot of the material reflects general good practice building and integrating large systems, even for on-premise deployment, and reinforces my view that "Cloud" is just a special case of this established body of practice. As a result there’s quite a lot of overlap with older pattern books especially Enterprise Integration Patterns, which is also directly referenced. The surprisingly substantial content related to message-based integration, confirms my view that this is still the best model for loosely coupled extended portfolios, but I would have appreciated more on the overlap with service technologies.

The overlap with other standard pattern books might have been managed just by referencing them, but this would play against Microsoft’s objective of making this material readily available to all readers at low cost.

The book is spectacularly good value for money, especially as you can download it free from Microsoft if you are prepared to do a bit of juggling with document formats. That it forms part of a series also available under similar options is even better. This perpetuates Microsoft’s tradition of providing cheap, high-quality guidance to developers and sits in sharp contrast with the high costs of comparable works from not only independent publishers (which may be understandable) but other technology vendors.

The book does assume some familiarity with Windows Server concepts, for example worker roles vs machine or application instances, and doesn’t always explain these terms. A glossary or an clear reference to a suitable external source would have been useful.

At a practical level I’m pleased to see that the Kindle version works well, with internal links hyperlinked and clear diagrams, plus access to each pattern directly from the menu in the Android Kindle app. Offset against this are a few cases of poor proofreading related to problems with document format conversions, in particular with characters like apostrophes turned into garbage character strings.

Overall I found this a useful book, and I’m sure it will become a valuable reference work, but I just wish the authors and editors had paid more attention to the high-level structure for those trying to read it like a traditional book.

Categories: Agile & Architecture and Reviews. Content Types: Book, Computing, and Software Architecture.
Posted in Agile & Architecture, Reviews | Leave a comment

Things Which Really Bug Me About the Kindle

I  read a lot using the Kindle applications for Android and PC. While there’s a lot which is good about that process there are a number of things which really bug me. Some of these look incredibly simple to resolve, from my standpoint as a competent software developer, and I have to question whether Amazon actually care about getting the user experience right…

Changing Font Size

The current behaviour of the font selection option is completely brain-dead, especially when switching between documents. Suppose I open one book which has been composed using a large base font. The text comes up very large and I set my font size to 2. I then open a second book, which has been composed using a smaller base font, and I have to change the font setting to 4 to get back to a size I’m comfortable with. Open the first document and the text is now enormous!

The application should actually work as follows. I would set a preferred font face and size and that would just be used automatically for all the bulk text in all documents. Anything styled with style tags like normal,  body text,  list,  should just use my selected font and size. Automatically. Paragraphs with heading styles would use progressively larger fonts, and the style might change to an author preference, although I should be able to over-ride that.

If that’s not possible, although I really don’t understand why not, then any change I make to my settings should apply only for a single document, and my settings for each document should be remembered if I switch between them. If I have to set size 2 in one document and size 4 in another to get a consistent reading experience the app should remember that.

Have the developers ever actually used the devices and apps with real eBooks?

Collections and Tagging

When,  early on, you have half a dozen books in your Kindle account, the lack of effective library management tools is not too much of an issue. When, like us, that library has grown to several hundred titles this starts to be a major problem.

Amazon allege that the solution is to use collections. That might help, if it weren’t for another brain-dead implementation. Collections on the physical Kindle are a local data structure, effectively invisible to other devices. In the Android app they are quite a usable feature, and sync with other Android devices, but not other platforms. On the PC you can create local collections, and allegedly import collections from physical Kindles (although I haven’t got that to work) but the collections are then completely independent of all other devices.

Is this really the best that can be achieved by one of the leading cloud services companies? Surely it’s not rocket science to come up with an architecture for collections / lists and tags, which is synchronised with the cloud account from and to all devices on the account? (And I note that there can’t possibly be any real technical issue, because notes and highlights synchronise perfectly across all my devices…)

Again, this looks like the developers are either stupid, or lazy, or completely indifferent to the implications of their substandard work.

Book Descriptions

If you are reading a book on the Kindle, you can quickly pop up some key descriptive details. Relatively recently Amazon have supported the same feature in the Android app, although it doesn’t work for books which aren’t open. On the PC it’s not supported at all.

There are three sets of books for which I would like to be able to quickly access descriptive details, ideally on- and off-line:

  • Books I have downloaded to my device, but which I’m not currently reading
  • Books in my archive, to remember which is which
  • Books which are being recommended by Amazon within my mobile reading experience, e.g. the recommendations panel on the home page of the Kindle app.

No, I do NOT want to "view in store", especially if it’s a book I’ve already downloaded and I’m just not 100% which is which from the cover image, and I’m offline. And I don’t really want to have to open up a book to see it’s description. Surely it wouldn’t be rocket science (again) to download the key descriptive details for all the books in the above categories at every sync, and have those details available via a long press from the overview pages just like they would be from within an open book?

Position References

Some books insist on referring internally by using a page number from the printed edition. If you’re referring to a specific position in a book in the outside world, this is also still a common practice (and probably the only viable one unless the book has quite a fine-grained and well-numbered heading structure). Kindle insists on referring to and navigating locations using an internal "position" reference, which not only has zero relationship to the outside world, but can change from time to time depending on font choice and other settings. Therefore unless you have access to the physical edition as well as the eBook, you’re stuffed. It’s not even easy if you have a relative reference (e.g. page 200 of 300), because you have to get the calculator out to work out that this is equivalent to "position 3400 of 5393".

It would undoubtedly be better if authors creating Kindle versions of technical and reference books made sure all internal references were simply hyperlinks to the right point in the document. However I’m sure Amazon could help as well. How about, for example, holding the page count of the physical edition(s) against the Kindle version, and modifying the "Go To" dialog so that I can specify the target position as a percentage, or as a page number relative to the page count for the physical edition?

The Back Button

The physical Kindle and all Android devices have a "back" button, which should take you back steadily through your work contexts, like the back button on a browser. On the Kindle, or the PC app, this behaves as you’d expect. If you follow a link within a book, then it takes you to a new page, but the back button takes you back to the page you were previously reading. Only when you get back to your first context does it take you right out to the menu. Not on Android. Click on a link to an external source, and the back button takes you back into Kindle at the right point. So far so good. Click on an internal link, and the back button takes you right out of the book. To make matters worse it has now remembered the location you navigated to as your "current" location, so to get back to where you were previously you have to navigate manually. Completely useless, and presumably about 1 line of code to fix properly.

Conclusions

I don’t think I’m being unreasonable here. Amazon make a vast amount of money out of the Kindle platform, and could make more if it is a sound platform for reference books as well as novels and the like. None of these issues would take a vast amount of effort to fix, just the will to be bothered and do a professional job. Amazon’s persistent indifference on these points reveals an attitude which bugs me even more than the issues themselves.

Posted in Agile & Architecture, Thoughts on the World | Leave a comment

Review: Service Design Patterns

Fundamental Design Solutions for SOAP/ WSDL and RESTful Web Services, By Robert Daigneau

Good book, but some practical annoyances

One of the most influential architecture books of the early 00s was Enterprise Integration Patterns by Gregor Hohpe and Bobby Woolf. That book not only provided far and away the best set of patterns and supporting explanations for designers of message-based integration, but it also introduced the concept of a visual pattern language allowing an architecture (or other patterns) to be described as assemblies of existing patterns. While this concept had been in existence for some time, I’m not aware of any other patterns book which realises it so well or consistently. The EIP book became very much my Bible for integration design, but technology has moved on an service-based integration is now the dominant paradigm, and in need of a similar reference work.

The Service Design Patterns is in the same series as the EIP book (and the closely related Patterns of Enterprise Application Architecture), and overtly takes the earlier books as a baseline to build an additional set of patterns more directly related to Service-oriented integration. Where the earlier books’ content is relevant, it is just referred to. This helps to build a strong library of patterns, but also actively reinforces the important message that designers of newer integration architectures will do well to heed the lessons of previous generations.

The pattern structure is very similar to the one used in the EIP book, which is helpful. The "Headline" context description is occasionally a bit cryptic, but is usually followed by a very comprehensive section which describes the problem in sufficient detail, with an explanation of why and when alternative approaches may or may not work, and the role of other patterns in the solution. The text can be a little repetitive, especially as the authors try to deliver the specifics of each pattern explicitly for each of three key web service styles, but it’s well written and easily readable.

This is not a very graphical book. Each pattern usually has one or two explanatory diagrams, but they vary in style and usefulness. I was rather sad that the book didn’t try to extend the original EIP concept and try to show the more complex patterns as assemblies of icons representing the simpler ones. I think there may be value in exploring this in later work.

One complaint is the difficulty of navigating within the Kindle edition, or in future using it as a reference work. Internal references to patterns are identified by their page number in the physical book, which is of precisely zero use in the Kindle context. In addition the contents structure which is directly accessible via the Kindle menu only goes to chapter level, not to individual patterns. If you can remember which chapter a pattern is in you can get there via the contents section of index, but this is much more difficult than it should be. In other pattern books any internal references in the Kindle edition are hyperlinked, and I don’t understand why this has not been done here.

To add a further annoyance, the only summary listings of the patterns are presented as multiple small bitmapped graphics, so not easily searchable or extractable for external reference. An early hyperlinked text listing with a summary would be much more useful. Please could the publishers have a look at the Kindle versions of recent pattern books from Microsoft Press to see how this should be done?

A final moan is that the book is quite expensive! I want to get all three books in the series in Kindle format (as well as having the hardcover versions of the two earlier books, purchased before ebooks were a practical reality), and it will cost over £70. This may put less pecunious readers off, especially as there’s so much front matter that the Kindle sample ends before you get to the first real pattern. That would be a  shame, as the industry needs less experienced designers to read and absorb these messages.

These practical niggles aside, this is a very good book, and I can recommend it.

Categories: Agile & Architecture and Reviews. Content Types: Book, Computing, and Software Architecture.
Posted in Agile & Architecture, Reviews | Leave a comment

A First Day Mistake I’ve Never Seen on LinkedIn

LinkedIn is full of useful little articles about mistakes not to make in the world of work. However here’s one I’ve never seen mentioned. I’ve just had a kick-off meeting with a new client. In order to appear friendly and unthreatening I dressed in a dark green suit, with a brighter green shirt. Unbeknown to me, the brighter green is not only quite similar to one of the company’s logo colours, it’s also the colour they have chosen for many of the walls and much of the furniture at their offices. Take off my jacket, and I was approaching sniper levels of camouflage. There’s a lesson here somewhere…

Posted in Thoughts on the World | Leave a comment

Scary Format Reversal

My penultimate purchase of music on vinyl was in 1989. I think, if memory at this distance serves, it was Running in the Family by Level 42. In the intervening 26 years I have felt very limited need to use other than CD or purely electronic formats.

That all went out of the window last week, when I tried to track down a particularly arcane track by the King’s Singers (their version of Eurovision winner Ding-a-Dong, if you must know). Despite their enduring popularity their album Lollipops has apparently never been released in a digital format. However a few minutes on eBay and £9 later I tracked down the LP, which turned up a few days ago nicely packed and in good order. Our record deck with a USB output and EZ Vinyl/Tape Convertor made quick work of digitising it, although it did get a bit confused by the track on side 2 with the substantial rests… Makes you wonder why the youth of today are so obsessed with all this downloading business when the alternative is so straightforward Smile

Posted in Thoughts on the World | Leave a comment

Edge of Silence

We’ve just finished our 30th anniversary viewing of Edge of Darkness. I must now have seen the series at least 10 times, but in this case familiarity breeds respect. Like the best Shakespeare play or Verdi opera the series rewards repeated study, and every time we notice something new about the story, the production, or both.

I’ve noticed before how Edge of Darkness has such an unforced pace, with space for the actors just to act. This time I consciously observed the phenomenon. In the first episode, after Emma’s death, there’s a period of about 20 minutes where Craven is grieving and the other policemen trying to help him deal with it. There are perhaps half a dozen lines of dialogue. In the 5th episode, where Craven and Jedburgh break into Northmoor, there are no more than a couple of hundred lines of dialogue in total. In over 50 minutes. Yet in both cases your attention is held completely, and there’s never a sense that the pace should be even slightly quicker.

This was also the first time I had watched it on a big screen, but at its original 3×4 aspect ratio. Now 3×4, especially with 1980s slightly grainy video, doesn’t suit expansive vistas or dramatic special effects. It does suit portraits, much better than wider presentations. What I noticed on this viewing was how Martin Campbell and his team really exploit this, filling the screen from corner to corner with one or two faces. It was powerful in the days of 20" TVs, but really punches through on a 50" set.

Yet again our understanding of the politics and personalities deepened. When I first saw the series, I wasn’t sure that Harcourt and Pendleton were the good guys. This time, I started to appreciate some glimmers of humanity in Grogan, the chief villain. Maybe by the 20th viewing we’ll understand him as well.

It’s slightly odd that the BBC chose to repeat the series last year rather than on this anniversary. 30 years on Edge of Darkness is still unmatched as a conspiracy thriller,  and deserves some celebration.

Posted in Photography, Reviews, Thoughts on the World | Leave a comment

Review: Next Generation SOA

A Concise Introduction to Service Technology & Service-Orientation, By Thomas Erl and others

Dry, terse text which misses its mark

This book sets out to provide a concise overview of the current state of, and best practices for, Service Oriented Architecture. While it may achieve that for some managerial readers, it is simultaneously too general for those with more background, and may be too terse for those with less technical understanding.

The authors and editors have clearly set themselves the admirable aim of producing a short and concise overview of the field. Unfortunately in the quest for brevity they have ended up with a terse, dry and dense writing style which is very difficult to read. At times it feels almost like a game of "buzzword bingo". I frequently had to re-read sentences several times to understand the authors’ intended relationships between the elements, and I’m a very experienced integration architect.

At the same time, for a book on architecture there are very few explanatory diagrams, wordy descriptions being used instead. To add insult to injury a few low-value diagrams such as one depicting the cycle of interaction between business and IT change drivers are used repeatedly, when once would be enough.

The first chapter provide a overview of service orientation and its key principles, characteristics, goals and organisational implications.  This is followed by a chapter on service definition and composition. Ironically this part of the book is is quite repetitive, but manages to omit some key concepts. There’s no real concrete explanation of what a service is or does – maybe that’s taken as read, but a formal definition and some examples would go a long way. Likewise there’s nothing at this point on basic concepts such as service contracts and self-description, synchronous vs asynchronous operation or security. The second chapter goes into some detail on the idea of service composition but only really deals with the ideal green-field case where functionality can be developed new aligned exactly to business functions.

The following chapter on the SOA manifesto is better, but again doesn’t recognise the realities of real enterprise portfolios, with legacy systems, package solutions and external elements which must be maintained and exploited, and non-functional priorities which must be met.

Chapter 5 deals with service-related technologies and their potential interactions. This is good, and for me represented the core value of the book, but is crying out for some diagrams to supplement the lengthy text. There are good notes on service definition under Model Driven Service Design, but this key topic should really have been a major section in Chapter 3 in its own right. The statements about technical architecture are rather simplistic, with an overall position of "this is expensive and difficult, or just use the cloud" which is not necessarily right for all organisations.

The next chapter, on business models, is very prescriptive. It is also slightly misleading in some places about the role of IT in transactional services – such services are delivered by a business unit, possibly but not necessarily enabled by and carried through an IT service. It would be perfectly viable in some cases for specific services to have a manual implementation. This is well explained in the case study, but not here or in the Business Process Management section of the previous chapter.

The final chapter of the main text is a "case study" describing the wholesale transformation of a car rental company through adoption of service, agile and cloud approaches. It feels slightly contrived, especially in terms of its timeline, the preponderance of successes, and the surprising lack of resistance to CIO-led business change. However it fills a useful gap by explaining much better than the technologies chapter how the different technologies and approaches fit together and build on one another.

Appendix A is a taster for the other books in the series. Unfortunately the content is presented as small images which cannot be resized and are almost unreadable in the Kindle version. It has also been "summarized", with the result that it appears to add very little meaningful detail to what has already been said.

Appendix B is a useful expansion of the main text regarding organisational preparation, maturity levels and governance for SOA. I would personally have been tempted to merge the first two parts to the main text rather than positioning them as an appendix, where they are necessarily repetitive of some material which has already been read.

Appendix C is another taster for one of the other books in the series, this time with an overview of cloud computing. While this is at a fairly high level, it’s a useful and well-written overview for those unfamiliar with the concepts.

Overall this is a frustrating book. There is some good material, but missing key "reality checks" and presented in a terse, text-heavy style which makes it harder to read than it should be.

Categories: Agile & Architecture and Reviews. Content Types: Book, Computing, and Software Architecture.
Posted in Agile & Architecture, Reviews | Leave a comment