Friday, January 21, 2011

Anecdotes of Frustration

I am doing a little survey of what moments of frustration we're having as developers of software that relies heavily on external software (both open source, proprietary, and in-house but from other departments). I am looking for anecdotes how you, or others, wasted time and money in your normal developer work flow because something went wrong with an external software product. I am not looking for theories, I'd like to hear real stories, a.k.a. anecdotes.

To ease the processing, I'd like to see the following format:

The situation/environment

What were you trying to accomplish

How did you do it

What went wrong

How to prevent it next time

What was the economic cost of the mishap

For example:

Developing a web site for a small workshop

We were trying to provide textual search to the past orders

We integrated open open source X into our website and then suddenly we got Null Pointer Exceptions in our web layer, which was not at all connected.

It turned out that some of the packages were repeated in product X and because X was first on the class path the web layer started to use X's packages and they were an older version.

Reverse the order on the class path

We lost about a man day figuring it out

Another:

Creating an order taking application for the iPad

We were field testing the application with potential customers a to prepare for the launch at a large conference that was held within two weeks.

One of the field testers contacted us and said that he had noticed we were using a GPL package to communicate with our back-end. He was a hobby developer and asked us for our sources so he could review the source code. However, our code contained trade secrets and we were not willing to provide the source base to him. He then threatened to contact the EFF.

We worked three day straight to replace the GPL code in our product, which we actually had not been aware that it was in our product.

We lost about 20 man days and got a few extra gray hairs

From the examples it should be clear I am not looking for OSGi centered problems; I am mostly interested in problems related to the handling of external products. Keywords:

Legal, problems with licenses, patents.

Versioning, surprising mismatches

Deploying

Escrow

Java

Security

...

You can send these anecdotes to anecdotes@aQute.biz. I would appreciate it if you could ask others as well. You can of course send multiple anecdotes but please use different emails to simplify the processing. I will not use the anecdotes in any way that can be connected to the companies or individuals, sending them anonymous or without actual company or individual names is ok.

If I receive a substantial number of these anecdotes then I will process them and write a number of blogs about common problems that everybody seem to have. This of course will be a fine input to the OSGi specification process.