Fog Creek Software
Discussion Board




FogCreek users

Just browsed through your support forums and wondered - where do you guys get such smart users? I'm in a big software project and am working with users every day. From my experience about 60% questions that users ask are amazingly stupid, and even if the question in itself is not stupid, they will have difficulties in expressing it, so it will actually _seem_ stupid. In contrast to that, questions on your support forums are almost supernaturally neat and clever. Do you post them yourselves to simulate activity :)))?

Michael Skulsky
Monday, October 07, 2002

Do you sell things targetted at programmers who want quality code, or people who wish to communicate using a relatively new method?  If you don't, this may explain it.

anon
Monday, October 07, 2002

I actually have to agree. On several occasions I have posted stuff about general development concepts, and have received excellent responses.

I also have on several occasions asked some questions about specific design ideas. (one just yesterday). The quality of answers here is really very good. This simply means that the users here are really oriented towards software development, and are not just a bunch of hobby users.

This in no way makes the users here better, or worse than any other board, but at least they are *in to* software and this shows. In academia circles right now the anti-MS retrace is reaching such religious fervor, I can’t even ask a simple question anymore!!

This board also seems to have avoided the open source “linux” vs MS debates that swamp so many of the other discussions groups. I use open source solutions to many of my problems on a daily bases. In fact, I use whatever I can get my hands on to get the job done (it is that simple).

However, none of the posts to me said don’t use VB, or such and such is crap.

Simply, the users put forth some very good solid ideas. I find this *very* refreshing.

Albert D. Kallal
Edmonton, Alberta Canada
kallal@msn.com

Albert D. Kallal
Monday, October 07, 2002

Stupid software provokes stupid questions.

Peter McKenzie
Monday, October 07, 2002

Stupid people say stupid things

Evgeny Goldin
Tuesday, October 08, 2002

I wouldn't be so definite on either points :) I didn't mean to say that our users are complete idiots, that would be real weird. But very many of their questions are what I call "underground noise reports" - they feel that something is going wrong, but haven't got the slightest idea about what it might be. For example, last week we got a report about inability to add information about person's licenses to the database. Upon investigation we discovered that a very important table failed to recreate during the upgrade process. The database was in virtually unfunctional state without it, but the only thing that they noticed was that they couldn't add licensing information!
Maybe the first reply hit the point, and it is because we don't work with software developers, but with end users?

Michael Skulsky
Tuesday, October 08, 2002

Oh, my reply was about Peter McKenzie's post .. Not your users.

Evgeny Goldin
Tuesday, October 08, 2002

And yes, I also think that real explanation is "target audience".

Evgeny Goldin
Tuesday, October 08, 2002

Michael,

I find that most users are quite smart, its just that they have a different view of the software to the developers.

Take your example.  The real problem, the failed database, is completely hidden from the user's view.  All they saw was a single symptom.

I think that Joel is rather good at user interface design, and seeing the system from the users point of view.

Heres a few points I think you should consider:

  - The user only see's the tip of the iceberg.  They haven't got a clue whats going on underneath the surface.  You have to see the system from the user's perspective. http://www.joelonsoftware.com/articles/fog0000000356.html

  - If the database is 'virtually unfunctional' then surely the system itself shouldn't be functioning.  While the system is limping along in this state, what harm is it doing to the data?  The users could have lost hours of work.  If somethings wrong then your software should die nicely and give the user a good idea of whats going on. http://www.joelonsoftware.com/articles/fog0000000306.html
 
  -  Your users cannot understand all the complexities of code and data structure.  However, if your system uses a strong methaphor then it will provide you users with a much better framework for  understanding the software, and this will help them express their thoughts more effectively.  There also be much happier, because they feel like they understand and can control whats happening.  Users are happiest when they feel in control.  http://www.joelonsoftware.com/uibook/chapters/fog0000000057.html .
     

These are some of the principles that help make Fog Creek users that bit smarter - it's more than just target audiance if you ask me.

Ged Byrne
Tuesday, October 08, 2002

You got it Ged.

I was deliberately a bit rude with my initial reply, to make the point that its not very nice to call someone (or something someone made) stupid.  Perhaps programmers don't like having their software called stupid?  Well imagine how the users would feel if they knew you were calling them stupid!

I think the original poster should step back a bit and figure out why his users need to ask all these 'stupid' questions.  He should try putting himself in the shoes of his users, maybe their questions are quite reasonable given their focus/background/knowledge etc.  And maybe the software system could be just a little bit smarter, or have a better user interface, so that many of these questions would never need to be asked.

Case in point - why didn't you do a thorough automated database verification after the upgrade process?  Then the missing table would have been discovered and corrected without the users having to be involved at all.

Just writing it off as 'target audience' is a bit too easy.

Peter

Peter McKenzie
Tuesday, October 08, 2002

Stupid questions are the best kind.

They tell you that your own assumptions were flawed.  The users wanted X,Y and A.  You gave them something that looked like X and Y but you never understood A, never saw the point of it and anyway B was the way to go. 

If you did it again you'd now do C because that's what everyone is doing now, even though X and Y are both pretty tricky to do in it, but its not been done before and so would be a challenge.  And challenges are what this is all about.  Innit?

Simon P. Lucy
Wednesday, October 09, 2002

1. Not nice to call something someone makes stupid.

When something IS stupid, I call this stupid. Can't see why it is any worse than saying that users never know what they want, can't use the mouse and had better left off the design process.
As for how they would feel - am I calling them idiots in the face? No, I am not, and we have a whole lot of people who get paid money to talk to users in a polite way and answer their questions - all kinds of questions.

2. Putting myself in users' shoes and redesigning software according to their expectations.

This is one thing I'm not going to do. And here is why. 90% of our users are migrating from several legacy DOS programs, doing more or less the same thing. Naturally, they expect our software to be like DOS, and shun everything that isn't like DOS - namely they want everything to be keyboard-driven, everything to fit in one screen to avoid scrollbars, they want to page up/down through the whole resultset instead of selecting appropriate criteria and so on. And even more than this, they want to *limit* functionality because they had very limited functionality before, got accustomed to it and have all kinds of weird workarounds for things they couldn't do in direct way. In short, they *want everything remain unchanged*. I am not going to support this.

3. Automated database verification.

Well, I partially agree with you here. The problem of making gracefully upgrades is something we haven't solved yet. But understand - every upgrade involves running several megabytes of sql scripts. It is not easy to verify if all these scripts have really done what they should, left alone that there simply can't be any way of rollback other than restoring from a backup made immediately before the upgrade process started.

Michael Skulsky
Wednesday, October 09, 2002

First, I would never ever call my users stupid. That attitude won't help you improve your company's product at all. I'd say generally it are the developers being stupid, because they did not prevent the user from being puzzled.

If you receive a question that looks stupid to you then it is much more efficient to think like: "Apparently my users run into this issue. What can I do on the Application, User Interface, Help Files, Manuals, etc. to prevent this from happening again?" Just try it for some time and you will find that the amount of "stupid" questions will reduce drastically.

The answer to your question why Fog Creek user seem smarter that yours, is probably because Fog Creek software is much more user friendly.

About your users' requirements:

<quote>
they want everything to be keyboard-driven
</quote>
That seems very logical to me. Every decent Windows GUI allows you to run the complete application using the keyboard.

<quote>
everything to fit in one screen to avoid scrollbars
</quote>
That's a very logical request. Scrolling is a very inefficient action.

<quote>
they want to page up/down through the whole result set instead of selecting appropriate criteria
</quote>
If the minimum hardware requirements allow this and the majority of your users want this and if it will make them more efficient: why not? If Excel can show 65536 rows on one screen, why can't your application?

<quote>
they want to *limit* functionality because they had very limited functionality before
</quote>
There are many GUI's with thousands of features, but nobody will use them because the interface is too difficult to use. That's why GUI's with fewer options are often perceived as more powerful.

If your users are working with 10% of the features 99% of the time, why would you clutter their interface with those advanced features? The best solution is often to put them in an advanced section. If you look at CityDesk then you will notice that it has a Designer mode which enables the advanced features.

In short: Less is often more in GUI's.

<quote>
they *want everything remain unchanged
</quote>
So your users want to use your product instead of relearning it. What's wrong with that?

Jan Derk
Wednesday, October 09, 2002

Michael,

I can understand what you mean.  These guys are used to doing things the hard ways, and the new way is so much easier - so why can't they see it?

However, it's difficult for the user, and you need to hold there hand. 

Microsoft set a great example in this.  Word and Excel both support compatability features from old Dos packages like Wordperfect and 123.

Take a look at the transition tab for Excel.  You can set it so that when / is pressed Help tailored for 123 users appears.

Does your package pop up some help if the users press the keys they're used to?  How long would this take to implement?  How many support calls would you save it did?  It could pay off.

If the pay off is very big, it may be worth considering actually making those keystrokes do exactly what they expected.

If the pay off isn't worth it.  If your market is captive (no competition, the purchasing decision was made far up the chain, etc) then you can probably get away with frustrating them.

Ged Byrne
Thursday, October 10, 2002

*  Recent Topics

*  Fog Creek Home