Skip to content

{ Author Archives }

Orange lines

A few evenings ago I looked out of my kitchen window and saw an airplane’s vapor trail in the sunset – a beautiful, bright, clean, orange line cutting through the clouds. At that moment I had brief but unmistakable feeling of optimism about the human race.

Slimmer, trimmer messaging from Google

Google’s Protocol Buffers offer lightweight, language-independent object serialization. I love the design, especially as I’m increasingly seeing enterprise networks clogged with hordes of oversized XML messages. Protocol buffer bindings are available for C++, Java, and Python, but not C# yet. Once there is support for .NET, I think this could be a really interesting technology […]

Developing Web applications with Maven and Eclipse: You *can* have it all

When developing applications using Eclipse or a similar IDE, you quickly get used to being able to test your software immediately after making a change. Plugins like MyEclipseIDE enable that kind of instant edit/compile/test cycle for web applications as well. But if you’re building web applications with Maven, it’s not so easy. Maven is a […]

Tagged , ,

A virtuous pairing

I ran across the following comments on an El Reg article about virtualization: Comments about “Virtualization: Nothing New”. He’s right, isn’t he? Having the same company offer both virtualization and grid solutions is a truly virtuous pairing. First you tell people they need a grid solution to make a huge pool of computers look like […]

My new favorite ISP

My new favorite web hosting provider is A Small Orange. Their pricing is competitive, and their tech support is unbelievably quick and clueful.

Understanding Java5 Generics

Good article on Java5 Generics by Martin Wolf: http://blogs.infosupport.com/martinw/articles/generics.aspx It seems many programmers are confused about generics, in particular the use of the ? extends … notation. The question mark is called a type wildcard, and is typically used as the value of a type parameter in a generic method. It means that wherever the […]

The US airline industry and the prisoner’s dilemma

The US airline industry is a national embarrassment. I’m writing from Tampa, Florida where I just spent the night because of a flight delay which caused me to miss the last connecting flight of the day. I’ve flown about a dozen times in the last two years, and I can’t remember a single domestic flight […]

The network is the network, the computer is the computer – sorry about the confusion

This post continues my ongoing theme: That networks are great as long as software doesn’t pretend they are perfect. (I can’t take credit for the title – it’s been floating around for a long time.) Increasingly, software is being designed based on the idea of treating network resources as local. The practice of generating proxy […]

Ten meta-requirements for enterprise software development

When you start a project to build a custom application for an enterprise customer, there are always universal requirements the customer doesn’t tell you about. These are things you have to do in order to implement the stated requirements, so I call them meta-requirements. It’s helpful to keep a checklist of these and review them […]

Protecting your SOA application (and your job) from remote failures

SOA – for Service Oriented Architecture – is the buzzword du jour. Organizations in all industries want to realize its promises, which include sharing information more openly and coherently across the enterprise and increasing organizational agility by making it easier to assemble new applications from existing components. Although there are fierce debates about the details […]