Being Right and Proving It

One of the great things about working in IT is that you can often win an argument simply by being right. Not because of who you are or because you are more eloquent than others, but because the facts support your position. Almost every IT person I have ever met respects facts.

In order to win arguments this way, you of course need some facts to work with. And that’s where too many people fail. If the application is running slowly, the Java guys will blame the database and the database guys will blame the application Java code.  But if you don’t have any facts, you can argue until the cows come home without getting any closer to an answer.

The business doesn’t pay you for aimlessly fiddling around with various setting that might have a bearing on the problem. The business pays you to solve their problems. In order to do this effectively, you need to instrument your code properly so that facts are available when you need to troubleshoot something.

Take Self-Absorption to New Lengths

Observing tourists around me, I’ve noticed that the regular selfie doesn’t cut it anymore. The essential travel accessory for the modern self-absorbed traveller is a selfie stick:

Of course, the whole selfie concept is the opposite of a traditional tourist snapshot: Not “see what I saw,” but “see me”. But while you are at it, why not make yourself a spectacle while you take the picture. Hence, the selfie stick.

The picture is pretty much the same whether taken at arms length or at arms length plus two feet, but then a better picture is not the point of the selfie stick anyway. The point is to make people look at you – both on social media and while you are snapping the picture.

In the age of social media, people want to be seen and heard, and will go to ridiculous lengths (about two feet) to achieve that. Do your IT systems have social media features? If you don’t offer them, you are missing out on a lot of potential user engagement.

OK Watch, What’s the Time?

While we’re waiting for the mythical iWatch, Google has already released Android Wear, and the first two Android Wear watches are here.  And they’re ugly.

If I’m going to wear something like that on my wrist, I need a really compelling usecase. I’m not sure that getting even more notifications and reacting 0.8 seconds faster is what I’m looking for.

When my latest Nike FuelBand eventually dies (they seem to last about a year, which is possibly why Nike fired the entire FuelBand team), I think I’ll pick up a Withings Activate. It does activity tracking like my FuelBand and has a new, innovative user interface not seen on a smart watch before: It looks like a watch.

Debugging Faulty Assumptions

I wanted to install Oracle JDevelper 12.1.3 – a version that I had been eagerly awaiting. Since my primary machine is a MacBook, I wanted to install it on OS X 10.9.3.

I downloaded the generic installer and found that the install didn’t run. Since OS X had disappeared from the documentation, I assumed that I would have to fiddle around until I found a combination of JDK and OS X that worked. However, Shay Shmeltzer from Oracle assured me that OS X was indeed supported, and many friends and colleagues weighed in with OSX/Java combinations that worked for them.

I was pulling my few remaining hairs trying to get the thing running when Chris Muir helpfully provided a SHA checksum to validate my JAR file. And sure enough, the  download was corrupted. It’s been ages since I last had a download complete successfully and still be corrupted, but that doesn’t mean that it will never happen again. Just like it will sometimes be true that it’s a hardware problem.

Lessons learned:

  1. Don’t fall prey to false assumptions. Because the problem looked like something I knew (the JDeveloper/OSX/Java combo has historically been temperamental), I erroneously assumed this was an instance of a specific problem.
  2. Ask for help. Lots of people have contributed their running environments and suggestions, which pushed me out of the wrong direction I was looking.



Incompetence or Malice?

We’ve just had a leak of 900,000 national identifier numbers here in Denmark. That’s about 16% of the total population, so it’s pretty big. These numbers are unique identifiers for a person (similar to Social Security Numbers) and are a good starting point for identity theft.

Never ascribe to malice that which can adequately be explained by incompetence.

Napoleon Bonaparte


So how did these numbers leak? Through plain incompetence and lack of procedures. It seems that someone at “A global leader in providing technology enabled business solutions and services” was behind schedule, so they published an intermediate file that hadn’t been completely processed (the confidential personal identifiers had not been stripped out). And nobody cared to check the file before it was published.

Your problem might not be malicious insiders, but simply sloppy operators and poor procedures. Do you have manual, unverified workflows where one person can make your company the laughing-stock of a country?

They Took Away My Cloud

On Monday, a U.S. judge gave Microsoft control of 22 domains owned by domain hosting service Microsoft intended to filter out some domains used by malware, but promptly screwed up. The result was that millions of legitimate users could not access their servers.

This will happen again and again as infrastructure moves to centralized cloud providers. What do you think will happen if the server just above yours in the server rack is running malware? Do you think the cops will just take that one server down? No, they will take the whole rack, or the whole server room.

Cloud has new vulnerabilities, and you need to be prepared for the situation where over-zealous law enforcement grabs your server. Do you have a plan B?

Development Platform Disconnect

Each year at the annual Oracle ACE Director briefing, I look around at the laptops my fellow ACE Directors are carrying. More and more of them are MacBooks – I think we were up to around 50% last year.

That makes it all the more puzzling that the installation guide for the latest version of Oracle JDeveloper (12.1.3) does not mention OS X installs at all. The 12.1.2 version had sections on how to install JDeveloper on Windows, Linux and OS X, but the 12.1.3 version only talks about Windows and Linux.

Seems like an area where Oracle isn’t noticing what’s happening in the world outside Redwood Shores.

Citizen + Open Data = $55,000 savings

Big Data is not necessarily about crunching massive amounts of data – it’s about finding unrealized value in a data set. This might be done on huge sets of billions of records, using Map/Reduce running on thousands of servers. But it might also be done at a smaller scale by a concerned citizen.

More and more data is being made available by municipalities and countries. These are typical “big data” collections: Just a bunch of data of varying quality with very little associated metadata explaining what the data is about. And one professor in New York has shown what can be achieved with open data and careful analysis.

He discovered that just two fire hydrant generated $55,000 of parking tickets per year. Of course it is illegal to park in front of a fire hydrant, but a quick look at Google Streetview revealed that motorists were highly unlikely to notice these hydrants. After the professor’s analysis made it onto Reddit and then into the New York Post, the Department of Transportation changed the street marking to make it clear that these spaces were illegal. Consequently, New Yorkers are likely to save $55,000 a year (plus some frustration).

Let’s set more data free and see where it takes us.

Poor Usability Puts Dangerous Criminals on the Street

Good usability is often seen as optional – something we can include in a system if we have the time and the resources for it. But sometimes, bad usability can cause economic damage. A couple of years ago, here in Denmark, a large, well-respected organization had to write manual checks for months to avoid having their phones cut off. The reason: Their new ERP system was so hard to use that invoices were not getting entered or approved. Consequently, no money went out.

But the citizens of Dallas, Texas are about to experience that bad usability can actually be dangerous. Because of their new records management system, police officers are unable to complete the necessary paperwork in time. And of course the state cannot hold people incarcerated without the proper paperwork. So after three days, the judge has to release dangerous criminals back on the street, because charges have not been entered into the IT system.

Good usability is not optional.

Late to the game: SAP

Having working with Oracle Fusion Applications, I know what a modern, cutting-edge user experience for enterprise software looks like. Something like this:

fusion-applications-screenshots-3I’ve also sometimes been subjected to SAP. Suffice to say, it does not look like this.

But maybe they’re upping their game – according to job hunting site, SAP is looking for 58 User Experience engineers. A bit late to the game, given than Oracle is already shipping stuff like the above. But better late than never.