... and economics, for that matter.
Last week I was on a train coming back into London. Well I shouldn't say that, really, as I was only coming home from Zone 3 - but I still felt as though I was coming back into London :-)
Anyway, two things struck me on the journey. The first came to me whilst I was listening to the announcements in the carriages. The announcement told me that next stop (useful) and then that I was in "coach 1 of 4" (not so useful).
I tried for most of the journey to think of a reason why I'd want to know that I was in a particular coach, and failed to think of a valid reason. So, I can only surmise that a new announcement system was added to the train which allowed different annnouncements to play in each carriage - and so it was decided to announce the number of the coach to the passengers.
However, it's not true that just because a system is capable of doing something, you should always make that feature available to the user of the system. It's true of trains, and it's true of software. The user wants to know what the next stop is (on the train) or that there's been a problem with downloading their email (or whatever - in the software case). Most users don't particularly care about the details.
Now, there are power users who do want to know the details of course. In the case of the software, you can ask the users to make a decision up-front on how much detail they want in the case of errors - but no such option exists when announcing to the users of the train. So, in those cases, the designer of the system needs to make a decision which works for users.
Of course, nothing will work for all users - any information will always be "too much" for some and "not enough" for others - but the designer needs to make it work for as many of the important users of the system as possible.
How you define "as many" and "important" is something I'm not going to delve into today, but it is something I have some thoughts on - so I'll write myself a note to write about that another day.
There are examples outside of software and trains, of course. Think of web pages - you still see web pages which say "You are using IE v7.1" or whatever at the top. If you're anything like me, this doesn't impress you; it simply makes me think that the designer realised they could do that, and decided to put it into the design because it was there...
So, when designing software, I maintain that the same ideas apply. You need to consider your users, and present them with the level of information they want - no more, no less - and not just tell the user some information because you can.
The other thing I noticed on the train was that, even though this was a local train with not many carriages, there was a small "First Class" section. Looking into the First Class section, it was obvious that it was identical to the Standard Class section. The seats were no bigger, nor more comfortable.
So - why on earth would anyone pay to sit there?
When you pay for First Class on the train, it's easy to think that you are paying for the extra space or the extra comfort (or the free food) but those things cost the train company very little. What you are actually paying for is to sit in First Class. This isn't purely an ostentatious act, but simply a desire to sit amongst people who also pay extra money for little extra tangible benefit.
Let me explain that, as it's still not obvious I don't think. When you sit in First Class on the train (or in Business Class on a short haul flight, or pay entrance money to get into a bar when there's one without a door charge right next door) you're not paying directly for anything tangible - you are simply paying for the chance to get into the sort of place which costs more money and hence has other people in there who can also pay more money for little tangible benefit.
This isn't about sitting amongst the wealthy - but there is an element of expectation that those people who can pay to sit somewhere quiet, amongst well-behaved fellow passengers will be quiet and well-behaved - hence First Class becomes a nicer place to be.
Of course, the people in Business Class on flights are not always well-behaved - but imagine if you will that two people on a plane have a bit too much to drink and stagger up and down the aisles disturbing fellow passengers. One is in Business Class, and the other in Economy. Which do you think will be a priority for the airline crew to deal with?
Of course, you may say that the airline will concentrate on Business Class because they don't want to lose the customers who fly Business. Again, this is perfectly true - but think of why they don't want to lose those passengers. They don't want to lose the passengers who can afford to (and do) pay extra money to sit amongst the kind of passengers who pay extra money.
Of course, none of this is an argument against paying for First Class on trains, or Club on a short haul flight or paying twenty pounds to get into a club where the drinks are more expensive than in the free-to-enter place next door. But next time you do this, just think to yourself why are you doing it? Are you paying for First Class because you love the food so much, or are you just paying it because you can afford to?