Pankaj Kamthan, a speaker at previous CUSEC’s, and I have had the following email exchange talking about our present theme which is “engineering useful software”. I know we have not done a good job to date explaining our theme so I wanted to share our conversation to help explain why we choose our present theme.

Pankaj’s email to me:

I always thought that, in the past, CUSEC adopted “interesting” and timely themes, and hence I contributed to all of them. However, this year seems to be an exception.

I am a bit perplexed by the theme adopted by CUSEC 2006: “Engineering Useful Software”.

This is what I wrote to Dr. Grogono: Assuming uselessness is the antonym of usefulness, do people really engineer useless software (that somebody has paid for creating)? (I will ignore software created for malicious intent.) If not, then isn’t all software useful (in the sense that given a software S, there exists at least one person who has found S useful) and therefore the theme is an oxymoron?

Yes, one could perhaps find some “useless” software within the public domain but then I seriously doubt that it was “engineered” in the traditional sense.

I believe that it may be more attractive if CUSEC focused on themes that (at least implicitly) address issues of current interest in software engineering education (teaching, learning, administering).

My response to him:

I have to admit your email is a little be of an eye opener. Not because I now think our theme is really bad but more so because I realize that when you just look at the theme and not how we got to it, it might leave the wrong impression or not come across the way we intended it to.

The one thing I remember Dr. Grogono teaching the founding team about themes is that the best themes are those that are up for interpretation. I have to add to what he taught us. Any theme that causes people to think and debate is an even more powerful theme.

Even before the first CUSEC in 2001 I was looking forward to hosting a CUSEC that covered the engineering of useful software. My personal opinion is that there is a lot of really bad software out there. I would even go as far as saying that there is more really bad software out there then software people “enjoy” using. If the software you are designing can never be enjoyable to use (an example of this would be any embeded system) then the least you can do is create the software so that it is transparent to the user.

I see your argument and mathematically it is a valid argument. I just want to expect more from us as a community. I want non-computer geeks to look forward to using software and not just use a piece of software because there company forced them to or there exists a lack of any better options.

What do I think it takes to engineer useful software? Learning how to gather and understand requirements, learning how to manage users expectations and translate them into software that is useful and not just the sum of the users feature requests, create software that is easily maintainable so that you can more quickly iterate so to constantly improve the quality of your software, understand interaction design and design software with the way users think in mind and I could go on and on. There is so much we can improve on so that we can create, if not useful software, at least more useful software after every iteration.

Two companies that I think are doing a good job at creating useful software are Apple and 37signals. Apple has been the biggest sponsor of CUSEC historically and this year we have David Heinemeir Hansson, one of the principles of 37signals and creator of Ruby on Rails, keynoting our conference.

What I might agree with you on is that useful might just not be the best word. If you could think of a new word to replace useful or even a new theme that would encompass what I covered and that is better then what we have now I am sure the team would have no problem changing it. It is never to late to improve our conference!

I have to agree with you though that the website is doing a bad job at explaining the theme. That is my fault. Nadia Chaouch has been doing an amazing job developing and maintaining the website I just did a bad job at writing the content for the first page. So we will update the first page of the website… soon :-) . The next newsletter has to go out first.

What does everyone else think about our theme?