Valuable Creative Ideas

Every valuable creative idea (concepts and perceptions, not artistic expression) must always be logical in hindsight. If it was not, we could never recognize the value of that idea. It could only seem a ‘crazy idea’. We might catch up with it in twenty years time – or never, for it might truly be a crazy idea.

– Edward de Bono, I Am Right – You Are Wrong


Tony Bowden introduces a brilliantly simple way to interface to a relational database using Perl classes and the Class::DBI module

Getting 'E' on the Agenda

I’ve just come back from BT’s eBusiness Seminar and my head is buzzing. To pass time I didn’t play buzz-word bingo. Instead I made notes of the number of different things they could put an ‘e’ in front of.

  • e-business
  • e-commerce
  • e-tailer
  • e-aware
  • e-space
  • e-book
  • e-initiative
  • e-strategy
  • e-focus
  • e-clinic
  • e-Kingfisher
  • e-nabled

Audio Tooth Implant

Two British researchers have developed a prototype “phone tooth” that can be embedded in a molar and receive cell-phone calls.

– Time, Coolest Inventions 2002, November 25, 2002

Do Patterns and Frameworks Reduce Discovery Costs?

Asking whether patterns and frameworks reduce discovery costs is like asking whether someone who knows something about billing is going to have an easier time making a billing system than someone who doesn’t. Of course! The problem is whether we have the right patterns and frameworks to reduce discovery costs. If not, how can we get them?

– Ralph Johnson

Too many projects look for the “home run” in reusable platforms and frameworks. Frameworks work well only if they can predict well: to predict what will change, and what will not. This is a difficult enough problem for individual objects or modules, let alone for extensible application skeletons. Small frameworks like MVC work, but few large frameworks enjoy success.

– Jim Coplien

Proceedings of the 1997 ACM SIGPLAN conference on Object-oriented programming systems, languages and applications, Beyond the hype (panel): do patterns and frameworks reduce discovery costs?

Speaking at UUJ

I gave a lecture this afternoon to a group of students who are getting ready to go on their placement year. It had never occurred to me that the state of the I.T. industry would be affecting students. Last year they had students on the Software Engineering course who didn’t manage to find placements. They also had students who were made redundant.

Speaking a Foreign Language

Software engineer’s concern:

We have run into some unexpected problems integrating (or designing, or implementing, or testing) the software.

Translation into management terms:

Our estimate of the time and budget required to complete the software is no longer valid. Futhermore, because we didn’t see these problems coming, we aren’t sure what other problems might be imminent. We’ll give you a revised estimate as soon as we have enough information to do so. In the meantime, please begin changing the customers’ expectations so they won’t expect so much so soon.

Dorothy McKinney, Six Translations between Software-speak and Management-Speak, IEEE Software, November/December 2002, (Vol. 19, No. 6)

Dark November Days

Not yesterday I learned to know
The love of bare November days
Before the coming of the snow,
But it were vain to tell her so,
And they are better for her praise.

– Robert Frost

It was dark when I got to work yesterday and dark when I left.

Accessible Calendars

I have not found any insurmountable barriers building an accessible site in Movable Type. And every time I discover a new accessibility-enhancing technique, I find that I can easily implement it. And yes, the calendar output is completely configurable using Movable Type

Keeping Staff Happy

I recently suggested to a manager that if he wanted more productivity from his experienced programmers, he should spend more time, attention, and money to training. He replied, “Why bother sending them to expensive classes? The experienced ones just leave here for other shops, so I’d just be training them for other people.”

When I interviewed two of his top programmers, they confided that they were seriously considering leaving, which tended to confirm the manager’s pessimistic view. But when I asked them why they were leaving, they independently said that “management doesn’t value our work.” What evidence did they have? Both told me that they had repeatedly been turned down on requests to attend courses!

– Gerald M. Weinberg, Overstructured Management of Software Engineering, Proceedings of the 6th International Conference on Software Engineering, September 1992

Going To The Cinema

I went to a UGC cinema tonight. It was horrible. The foyer was covered in litter and popcorn crumbs. The counter were I bought my sweets was covered in a sticky substance. The staff were unfriendly. My shoes stuck to the floor of the theatre. The sound cut out during the adverts and the lights came back on. Unfortunately, this happened during the film as well so we had to leave ten minutes after it started.

Keeping People Waiting

Why am I always kept waiting when I go to see a lawyer or an accountant? It’s not as if I drop in out of the blue. All the appointments are arranged in advance and I’m usually paying the person I’m meeting. Sometimes people have legitimate reasons for being late but I don’t think there has ever been a time when I’ve been met promptly.

Issues of time are a major source of offense in our culture. Keeping people waiting is a petty power play that usually insults the one kept waiting.

The Niceties of Negotiating

I contribute to this problem because I rarely complain about being left waiting. What is the best way for me to handle this situation? I don’t like to complain at the start of the meeting. It causes bad feeling and the person I’m meeting with can become defensive and annoyed. So what should I be doing?

New Systems Never Work

The first line of defense is accepting that the new system will fail, possibly in several ways. When I find myself thinking, “I must have this change because I can’t afford failures,” then I’m in big trouble. If I can’t afford some failures, a new system won’t help. And neither will an old one.

Nothing new ever works, but there’s always hope that this time will be different.

– Gerald M. Weinberg, The Secrets of Consulting, Chapter 9

Enjoying What You Do

Lately, I have been meeting with various people who work for professional service firms. They all seem to lack the same thing – passion. I want to meet people who are passionate about the job their doing. I don’t want to meet lawyers who are less interested in company law than I am!

Success comes from doing what you enjoy. If you don’t enjoy it, how can it be called success?

– David H. Maister, True Professionalism

Business Development

Being good at business development involves nothing more than a sincere interest in clients and their problems, and a willingness to go out and spend the time being helpful to them.

– David H. Maister, True Professionalism


Marc wrote his refutation.

I am not mad. I am me.

Well, even after reading his refutation I would still say that he is mad. When I say that Marc is mad I don’t mean that he is “suffering from a disorder of the mind” or “angry”. I mean that sometimes he is either “temporarily deranged by violent sensations, emotions, or ideas” or “feeling or showing strong liking or enthusiasm”. I also mean that he is crazy as in “possessed by enthusiasm or excitement” and “intensely involved or preoccupied”. All things I believe Marc would agree with.

By the way, Marc is also fun, good-natured, affable, witty and clever.

The Accuracy Unmyth

Apart from being an oxymoron, there is a very simple reason why estimates cannot be “accurate” – we simply do not have the data necessary to be accurate. It is a sad fact that the earlier the estimate is made, the less data we have available, and therefore the less “accurate” we can be. The only time we have sufficient data to truly warrant the label “accurate” is at the very end of the project when all the variables have been resolved.

– Phillip Armour, The Business of Software, Communications of the ACM, November 2002, Vol. 45, No 11.

Improving Team Performance

I really liked this article which lists ten cheap actions you can take today to improve your IT team’s performance.

However, the one I would like to implement, code in a conference room, wouldn’t be cheap and I certainly couldn’t do it today.

Get a conference room big enough to hold everyone. Put the very best hardware in it. Mix in comfy chairs, both working and lounging. Food is good, too. Make sure there’s plenty of wall room for diagrams, white-boards, and so on.

Office Madness

I’m listening to Marc trying to explain to Tony the reasons behind his belief that the wind would keep blowing if time stopped. Marc is also trying to work out the colour of time – apparently this would change depending on which direction you were going!

Yesterday Tony quoted Weinberg on selecting team members.

Whatever else it does, this model makes managers over-anxious about selecting people for teams, and under-anxious about exercising their control function throughout the life of those teams.

I seem to be surrounded by mad men. Does this mean that I need to rethink the selection process or do I need to find a way to control the madness that exists in the current team?

Knowledge is Limited

I am enough of an artist to draw freely upon my imagination. Imagination is more important than knowledge. Knowledge is limited. Imagination encircles the world.

– Albert Einstein

Business Is Easy

I know that will annoy a lot of people, but I really do believe it to be true. Almost all the business balls-ups I have seen – and I’ve seen plenty – have been due to people getting very simple things wrong.

Of course, success in business involves hard work. Lots of it, twenty-hours-a-day-for-five-years hard work. But if you love business, you’re up for that. With the right people and the right motivation, you’ll enjoy it most of the time (not all the time – business is not that easy).

– Mick Southon & Chris West, The Beermat Entrepreneur

I doesn’t seem easy to me today.

Revealing Eye Movements

Apparently you can tell how people think by the way they move their eyes.

up and right (their right) – for constructed, imagined images e.g. you floating on air or you with blue hair

up and left – for remembered images e.g. scenes from your holiday

sideways right – for constructed sounds e.g. your boss talking in a donald duck voice

sideways left – for remembered sounds e.g. your favourite piece of music

down and right – for feelings and internal emotions e.g. the touch of silk

down and left – for internal dialogue e.g. what you say to yourself before you give an important presentation

straight ahead, defocused – for visual images remembered or created e.g. the faces of your close friend

– Sue Knight, NLP at Work

To confuse matters left handed people may have the meaning of looking left and right reversed.