Being a person who enjoys tinkering with tiny mobile devices, one of the largest questions that comes up, especially when talking with iPhone programmers, is interface.  There appears to be two camps in the debate, the Apple, and lesser so Ubuntu or Gnome side of things, these are the people who pride themselves in simplicity, claiming that there is one right way to do things, and that nothing should be cluttered up at all.  The other side is the Blender, or KDE way of thinking.  They claim that there is no right way to do things, and there should be multiple tools to get the same job done.  Also, while they may take pride in the placement of their options, the believe that it is vitally important for the user to have all of the options laid out before him/her.  As such, programs such as Blender look very intimidating to new users, who see all of the buttons, tabs, nobs, and switches.  Some of them may try to flip a few, to no avail, and many just give up, I did anyway, although I did come back to it, and am happy for it.

So, the argument stands, which is a better model?  The simple one that any guy that thinks anywhere remotely like the majority of society can use it, but it doesn’t have many features.  Or the complex one that suites advanced users, but has a high barrier to entry.  My personal preference is the latter.  While there has been many things that I have not been able to get into due to a high barrier to entry, I find it better to have more power at my fingertips.  It would appear that most of the Blender community agrees with me.  They enjoy the Blender interface.  While many of the don’t use the buttons, they enjoy that there is hotkeys for everything, to speed things up a bit.  In addition, if they have forgotten the hotkey for a certain task, it is easy enough for them to find and click on the needed button.  The power and speed benefits are amazing.  This is also why I use Linux.  With that being said, I also like computers to ‘just work’, without needing to constantly maintain the system.  This is why I also use Ubuntu.  It’s a simple system, but is flexible, meaning that it’s easy for me to add in little addendum to do what I need.

WordPress also takes this approach.  In it’s core, WordPress is a very simple piece of blogging software and CMS.  However, users that need a bit of extra functionality at any given moment can install a plug in to do what they need.  This is good as WordPress seams customizable for everyone.  Many other software packages follow this model, a very basic base, filled in with many plugins to add whatever functionality the end user needs.  The new user sees a simple piece of software, tinkers around for a bit, and when he is ready, installs a plugin, and tries that on for size.  This is much better than the classic Advanced tab paradigm, and is much more powerful than the setup wizard paradigm as well, as it is much harder for the user to mess things up.

What do you think?  Should everything be simple, and locked that way?  Should it have a million and one buttons, or should it have a few buttons, with an architecture that allows users to add more options?  Or am I forgetting another option?