Read this first!
A project of a so-called "commercial device", first answers the "target price?" question, then "will it sell?" question, and finally "let's implement something like that" question.
A project of a successful device has the opposite way: first, "figure out a gorgeous set of features", then "reduce them to an acceptable standard", and finally "let's build it in such a way programmers will love it".
In 2008 A.D., you cannot imagine how many Famous Firms did not yet understand the huge benefit of selling an "open" (hackable, user-expandable) platform. Plenty of people will buy it because at some extent will be able to add its own features - where features does not merely mean stupid things like "themes", "ringtones" and other software/hardware gadgets.
Keep it simple!
Many tried to sell some "ultimate mobile companion" in the last 10+ years. But almost all were no more than "mobile toys".
Some tried to sell a "it has only one good feature" product: sellers of iPods and Blackberries had amazing revenues (partly due to jerk users who are simply unable to use a device for more than one function; this also explains why even the richest cellphones are almost always used only for SMS and voice calls).
"Many features" is not a problem. "Complicate usage for any feature" is indeed a problem.
Only a few did understand this - UIQ developers among them (but UIQ/Symbian development is even worse than Windows development). Example: there is not even a "save? y/n" dialog; switching to another application will automatically save everything in the page - this is simply great when you jot down some notes while running on the stairs.
Why my feature-list evolved
My "feature request" list is somewhat variable, depending on what my friends do, on what I find useful in those moments, on what is my home hardware... Example: a lot of my friends does video-chatting using the ugly Skype and the ugliest Messenger. A number of Messenger-compatible chat programs exist. Will exist one for the gadget I am willing to buy?
Another example: I moved in a place with a good WiFi internet access, so I was considering every WiFi-enabled gadget. A few months later, I had to move to another place, without internet access, having to switch again to a GPRS connection, so WiFi fell down to "interesting, but not essential" (example: having two computers in the same desk, does not require WiFi usage, because a 100Mbps ethernet cable does the right work at a stunning speed).
This means that I could even buy two or more "super gadget" per year, if they do the good things I require in that days.
But, come on! Why do I have to select menus, tap to "Yes" here and there, move sliders, click buttons, to do even the simplest tasks? Why do I need Windows-style "common dialogs" on a cellphone?
One of the first "great" smartphones out there, had an MP3-player utility. Geez, one expects that at least you can start playing a bunch of MP3s without doing anything until the end. No! That "player" only played a single MP3 file at a time. After the MP3 playing ended, you had to select another MP3 file (woah, in a classic desktop computer file dialog!) and then click the button "play". In real world, this is equivalent to the absence of an MP3 player.
Finally, every "super gadget" must include all important features I had before.
Example: switching from a Sony Ericsson P900 to a device which doesn't have infrared port is not a pain, because I did use infrared in the first two years of my P900, but don't need it anymore. But if that "new device" doesn't have bluetooth, even if it comes with WiFi, I just cannot consider it.