Monthly Archives: January 2011

Not So Foul Bay

Sunrise at Foul Bay, Barbados
Camera: Canon EOS 40D | Lens: EF-S17-85mm f/4-5.6 IS USM | Date: 16-04-2010 10:55 | ISO: 200 | Exp. bias: 0 EV | Exp. Time: 1/200s | Aperture: 7.1 | Focal Length: 35.0mm (~56.8mm) | Lens: Canon EF-S 17-85mm f4-5.6 IS USM

I just realised I haven’t posted anything to my photoblog recently, so here’s one I’ve just processed from Barbados last year. I’ve never worked out why Foul Bay has its name – it’s a lovely long stretch of clean unbroken sand, and often almost empty. However, at 6am on the morning I took this it was buzzing with people out for their morning exercise. Odd…

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

Beauty is Only Skin Deep

I’m currently reading a book called “Beautiful Architecture“. This has at its core the concept that some software structures are inherently elegant, things of beauty as well as great function, like many of our greatest buildings.

The trouble is that for every St. Paul’s there must be a Bletchley Park – an architectural mish-mash which while possibly important, successful or even revered is inherently inelegant, or even downright ugly.
My analysis is that behind the glossy facade, the iPad software architecture has to be the best current example of “Ugly Architecture”.

In many ways it’s strongly reminiscent of PCs in the days of DOS, or maybe Windows 3.0, before the emergence of strong component-based architectures and unifying design standards in Windows 95 and NT.
The fundamental problem is the application-centric model, in which each application is a stand-alone combination of code and data, with very few shared services or components. This naturally leads each application developer to “do their own thing”, implementing separate, widely varying solutions for communications, document storage, printing support and so on. Apart from a token “open in another app…” supported by some applications, there’s effectively no cross-application linking, leading to massive duplication of functionality and data, and some significant functional limitations, for example the inability to directly open a URL embedded in a document.

Each application has its own data area, which may or may not interact with iTunes, web sites or a PC via FTP, websites via WebDAV or various different cloud storage services. Data which should arguably be general visible just isn’t – you can upload video files to the photos area, but they won’t be visible in the videos list. To test a variety of editors with a document you need to deliver a different copy of the document to each app.

Each application supports different models for document exchange, and different cloud stores, so a user potentially has to have multiple separate cloud accounts. While “public” cloud storage may be fine for individuals’ personal data (although individuals may still have valid security and privacy concerns), it is a real concern if used for corporate information. In corporate contexts, connectivity, security, copyright, access rights, service levels, data protection and privacy obligations, regulatory and legal constraints may all be compromised or complicated by cloud use, and become significant issues.

There’s also an interesting security implication to this which you don’t often see discussed. Because there’s no accessible file system, and no extensibility model for the application filing model, there’s nowhere for anti-virus solutions to run, and as of today iPhones and iPads are effectively unprotected devices. There are probably numerous iPads in the wild acting as festering reservoirs of infected documents. Those who are security conscious can’t be happy about this, and I know that many corporate security departments are making moves to ban connectivity to corporate services for that reason.

Even if an application interacts with the host PC more directly, you get multiple copies of documents, typically the original, a copy in iTunes and one on the device, with no mechanism to synchronise them or compare version information. Apple’s own applications such as Pages are even worse, with a completely separate iTunes space from their own “My Documents” spaces, and an additional copy step in each direction. This is a version control and management nightmare!

Why could the iPad not support a simple shared filing area with proper two-way synchronisation to the host PC, as the Pocket PC has had from day 1?

The communications architecture is a similar mess. The only application which can communicate with the host PC over USB is iTunes, but iTunes can’t use WiFi. All other apps have to use WiFi, but there’s no real shared comms application infrastructure, so the result is another diverse and fragmented “roll your own” free for all. The most obvious way for a companion device to talk to its host PC, BlueTooth, isn’t supported at all!

The WiFi only design works fine in the confines of, say, a small home office. Elsewhere it’s problematic at best. Paid WiFi (e.g. in a hotel) is typically limited to a single device, so you’ll end up paying twice if you want to connect both devices. Corporate WiFi systems are typically similar, and you may not be allowed to connect the iPad directly. Even if you do get connectivity, these networks are often set up to prevent routing between devices, as a security measure, so that’s that, then.

The alternative is to set up either the PC or iPad as a hot-spot itself. On the iPad, this is only possible on jailbroken devices. On the PC, it can be complicated and opens up potential security issues. Neither is ideal.

Apple’s policies effectively put software development back in the Stone Age, in the particular sense that “monolithic” means “single lump of rock”. Each application has to be “stand alone”, implementing many things which should arguably be shared. For example, each file management application implements its own storage management dialogs, its own comms model, its own browser, its own PDF and Word file viewers, each with their own subset of functionality, dialogs and gesture support, and so forth. There simply doesn’t seem to be any real concept of shared components or companion applications. Let’s be clear: I’m not criticising the application developers for trying their best to provide a comprehensive solution – my criticism is directed squarely at the crass architecture through which Apple force such an approach.

Even those applications which implement the “open in another app…” capability to open documents in other viewers suffer two common problems: you frequently have to open the document natively before you can send it elsewhere, and the act of doing so usually creates yet another copy of the document to manage separately! 🙁

Ironically, where there are shared components they impose significant constraints and limitations. The most obvious is the keyboard. Essentially there’s only one way to get text directly into any application, and that’s to use the on-screen keyboard configured exactly as the application developer decides. It’s “my way or the highway”. This is a dramatic contrast with the Microsoft world, where even a humble 2003-era Pocket PC supports not only a variety of built-in and third-party on-screen keyboards, but also handwriting recognition, character recognition (like the Palm Pilot), Swype, and even limited voice recognition. Importantly, these are all user-selectable at any time text input is required. On the iPad you can buy an app with a different keyboard layout, or dictation capability, but you have to cut and paste the raw text into your target application and typically reformat it to suit. This is simply primitive.

What makes all this worse is that the iPad application approval/delivery model makes it unlikely that anyone will innovate a better solution. No approved application can have legal access to another app’s or central iTunes data. Without approval, you won’t appear in the App Store or run on non-jailbroken devices, so Apple simply impose their will, whether good or bad.

OK. I am starting to love my iPad, but the software architect within me is incredibly frustrated. This great hardware is hamstrung by a clumsy, unimaginative, software architecture and oppressive centralist control by those who worship according to The Book of Jobs. It could be so much better.

</rant>

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

Some Good News

I’ve just had a bit of excellent news – my submission for the 2011 Enterprise Architecture Conference in London has been accepted. The provisional title is “Practical Enterprise Integration – Realising the Benefits of a Strong Canonical Architecture” and I’m going to tell the story of the evolution and benefits of a strong Enterprise Integration Architecture at National Grid with which I’ve been closely involved over several years.

Interestingly, a very similar submission last year didn’t make the cut. Whether the change is due to an increase in the quality of my submission, or a decrease in that of the competition, only time will tell… 🙂

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

The Y2KXI Bug

I don’t know whether I’m alone, but I’ve had two separate problems with computer systems which didn’t survive the transition from 2010 to 2011, making me wonder if there’s a more generic “Y2KXI” bug, like the famous Y2K bug, only more subtle…

On New Year’s Eve, my X10 home automation stuff was all working. On the 1st, the lights failed to come on at the appropriate time. After a bit of investigation, I checked the clocks in the two timer/controller units, both of which now showed a date in 2012. Clocks reset to the right time, things returned to normal.

Then last week I had a problem where I discovered my PDA was corrupting appointment times, converting the vast majority of my appointments to an all-day slot a day after the original date. This was clearly happening a few minutes to a few hours after synchronisation, and the original appointments in Outlook on the laptop were OK. At first I blamed the iPad (well you would, wouldn’t you), or maybe a component of Office 2010, which I have now partially installed on my PCs, but some testing confirmed that the problem was occurring even when neither of these had had a chance to affect the data. I then realised that QuickAgenda, which I had installed to show my diary on my PDA’s home screen was running very slowly, almost as if it was processing something…

Gotcha! With QuickAgenda removed not only has the corrupt appointment problem gone, but I’m also finding synchronisation much quicker and less prone to duplicate appointments. However, this wasn’t a problem in 2010.

Has anyone else noticed this?

Posted in Thoughts on the World | Leave a comment

Death and Service

My brand new iPad died today. One minute I was taking notes on it. Next minute, dead as the proverbial fat bird with a big beak, or the Norwegian Blue (lovely plumage).

There are three theories which fit the available data:

  1. This was a typical failure on the leading edge of the bathtub curve, and I was just unlucky.
  2. iPads are unreliable, and I am going to learn some new swearwords when the process repeats.
  3. Steve Jobs’ spyware installed on all iPads to monitor for uncomplimentary content detected my draft post on the shortcomings of the iPad’s software architecture, and Apple took pre-emptive action.

What is, however, beyond reproach and the reason I’m writing this post is the absolutely exemplary service provided to me at PC World in Coventry. The young chap quickly established that a straight replacement was appropriate, but because I am away from home he’d have to retrieve my receipt details electronically. This proved rather more difficult than expected, as the original sales assistant in Guildford had somehow bypassed the supposedly mandatory step of capturing my name and postcode. However, the Coventry guys persisted, with searches on multiple back office systems, and eventually tracked my receipt down. The swap was promptly made, and I’m already up and running again.

The quality of customer service at DSG (the company who own Dixons, Curry’s and PC World) used to be a source of jokes. However, the excellent service I received today is not untypical, in my recent expereience. I would like to formally extend my thanks and compliments to them.

Posted in iPad, Personal News, Thoughts on the World | Leave a comment

Keep Taking the Tablets

I’ve recently purchased an iPad, partly to satisfy some unrequited gadget lust, partly to satisfy some real needs for which I hoped it might be a good match, and partly to try and understand what all the fuss is about. As a long-time user of both Tablet PCs and Pocket PC (Windows Mobile) PDAs, I’m in a fairly unique position to judge what works well and what doesn’t. So far, it has to be said, I’m distinctly underwhelmed.

For several years in the mid-noughties, my main laptop was a convertible Tablet PC (actually a succession of Toshiba M-series tablets). I liked these devices with their dual ability to function as a subtle note-taking device in meetings or on the move, and as a fully-fledged laptop most of the time. Ultimately, though, such devices are too great a compromise: too heavy, battery-hungry and stylus-dependent for use as an eReader or travel companion, not powerful enough to meet my demands for a laptop capable of supporting virtualisation, multiple development platforms and heavy duty image processing. My main laptop is now a 15″ Toshiba, and it does the main jobs very well, but I’ve lost my subtle note-taker, unless I want to lug an old tablet PC as well.

Also, since 1999 I’ve always carried a Pocket PC, for the last 5 years a succession of HP iPaq 4700s (sadly, they don’t last forever). My PDA is brilliant for checking my diary, playing games, as a music player and for a variety of other uses. Thanks to the German company SoftMaker I even have a fully-fledged office suite which is absolutely compatible with Office 2003, right down to the menu and options dialog structures. I have composed some quite large documents using it, but unfortunately the screen size makes it just too fiddly for heavy-duty use.

It’s also unfortunate that HP set the bar so high with the iPaq 4700. I should really have been able to update it with a device including a phone, mobile internet connectivity and GPS, but two attempts to do so have ended in frustration (see “Digital Convergence – Still Waiting” and “Annoyance-Based Technology Selection” for details). Even HP haven’t really managed to replace it – their nearest current equivalent is much chunkier and has a much inferior low-contrast screen.

Enter the iPad. Before I start complaining, let’s acknowledge that this is a great piece of hardware design which does some things really well. For a start, it’s a brilliant eReader: clear, light and an ideal size. When I print documents for off-line reading, I usually print two pages to an A4 side. The iPad screen almost exactly matches this A5 preference, but with the great advantage that I can easily zoom in or change fonts and text orientation if required. To read web pages I can either exploit the mobile capabilities, or save them to PDFs on my PC.

As a mobile web browser it generally looks very promising. Again, the size is just right, with none of the compromises of phone/PDA solutions. Apple’s lack of Flash support is an occasional pain, but otherwise no problems so far.

It’s also going to make an excellent portable photographic portfolio. The screen is widely acknowledged as one of the best on any portable device, with wide viewing angles and good colour fidelity, and my photos look great on it. Getting iTunes to show a sensible album structure is a bit of a challenge (of which more later), but I’m now fairly satisfied, although I may end up using third party software which doesn’t insist on renaming my files and hiding the filenames!

Battery life is great when measured by the standards of fully-fledged laptops: at least two days fairly steady use on tasks like document reading, note taking and web browsing. Of course strictly speaking we should measure by the standard of a monotasking PDA  (I assume that “monotasking” is the opposite of “multitasking”, but I may have just made that up :)), and on that basis it’s not so good, but still acceptable.

So the hardware is great, and everyone loves the glossy touch interface. The problem is that, as the saying goes, beauty is only skin deep. The elegant facade hides an astonishingly crude and restrictive software architecture, which puts me strongly in mind of a 1990 DOS computer (albeit with a glossy graphical skin). The problems of that architecture will be the topic of my next post…

Posted in iPad, PCs/Laptops, Reviews, Thoughts on the World | Leave a comment