How to suggest new features for CityDesk
To help us out, when you suggest things that you would like CityDesk to do that it doesn't currently do, try to phrase your request in terms of the objective you're after and not in terms of UI design.
It helps us a lot more if you say "I need my gizakozoid to be able to accept input from the Garzoman!" instead of "you need to add a window on the right with 3 buttons and a dropdown that says 'gigakozoid' but only show it if I select the option 'Garzoman input from gigakozoid' in the options dialog".
The reason for this is because we spend a lot of time trying to make our product usable and at the same time robust enough to handle all the new features that you want. A lot of time we spend days and days thinking about how to implement something so that it makes the least disruption possible and keeps the flow of the program going. It's all too easy to envision your ideal user interface and describe it in detail, but fail to realize all of the other competing interface problems and the constant battle to keep things simple.
Have you ever seen a program with an options dialog that makes you dizzy? It has 1000 tabs with little checkboxes that say "Enable x100 compatibility mode in the SYS.VXD driver" or little Advanced buttons which bring up another layer of options. Programmers sometimes think that because they CAN program something, they SHOULD. So if user A asks for a mode where pressing I switches to insert mode and user B asks for a mode where pressing I switches to italics mode, they'll make it possible with a little checkbox in the options dialog. Eventually they get enough of these requests that their program looks like a big mess and no one ventures into the sticky dark mess that used to be an options dialog but now looks like a development environment. But choosing not to implement a feature a certain way and maybe solving the user's problem in a different way they hadn't thought about is actually more powerful and keeps your program understandable. Plus sometimes you can solve different seemingly unrelated requests with one well thought out design.
Although I'm sure many of you are more than qualified to design the user interface for CityDesk, its easier for us to do since we have the database full of bugz and user comments which we somehow have to filter down to constructive changes to the software. We also spend all day (and night) thinking about it and have the general future goals in mind. I have to correct Joel's recent essay where he said "Customers don't know what they want" - as a lot of people in the discussion forum noted, customers DO know what they want! They just don't always ask for it in a way that means something constructive to a software designer.
Thanks for all the great comments and questions and keep the bug reports (and feature requests) coming! SP1 is right around the corner.
Michael H. Pryor
Thursday, February 28, 2002
Are there any plans for a feature repository where features that have been requested are listed so people (like me) don't ask for the same thing over and over again?
You might not have to list when and if you plan on implementing features, but a list that lets us know you "heard us" - and in your own words so we know you "heard us correctly" might help.
I saw one site where you could vote on features as well.
This will probably spark debate over whether each and every feature is better implemented with 3 red buttons or 4 blue ones, but at least we'll both know we heard each other correctly.
If you think this is some sort of comprimise of a competitive advantage, I'll understand.
Friday, March 01, 2002
Fog Creek Home