Crappy User Experience

| | Comments (3)

So I decided that I was going to spend my morning being a nice guy -- I was going to add a few more examples to the REALbasic Plugins SDK. At the very least, I wanted to add an example of how to make a plugin in VS.NET 2005 since it's quite the convoluted process to get it working. One of the great new features of VS.NET is the inclusion of a template-creation wizard.

The basic thought is that you create your project however you'd like, and once you have it setup to the point that you want to make it into a template, you simply go to File->Export Template and everything is hunky dory. Sounds awesome, right?

Well, unfortunately, it's one of the more poor user experiences I've run into with an IDE. The menu item is always disabled! What's more, there's no explanation of why; the help files all make the assumption that it is enabled. In fact, the user's guide for the IDE makes it sound like this item is always enabled.

So after about an hour of searching around, it finally clicked. You can only make a template for a .NET project (C# or VB.NET); not a regular C++ application. As soon as I started a C# project, the menu item would enabled.

This is a horrid user experience on so many levels, it's tough to know where to begin. But I'll list my gripes with it anyways.


  1. Never have a menu which is disabled always. If it's going to be that way, remove it. Then I don't fret over how to find ways to enable the thing. I found myself wandering around the UI, selecting different views of the project in the hopes that I'd enable it that way. Since different project types already are using different menu structures, there's no harm in modifying this one.

  2. The documentation makes no mention of this limitation that I was able to locate. This makes it even more frustrating because I feel like I must be the one at fault. Document the limitations!

  3. Here's the one that pisses me off the most. There's no technical reason for this limitation! You can manually create a template for any project type (according to the docs. I should note that I've not tried this.), so why would you restrict it to .NET only? Especially for something so esoteric as a project template!

Needless to say, I was underwhelmed by my experience in trying to use this new feature of the IDE. It could have been made more intuitive that I was stuck. Then I wouldn't have wasted an hour trying to figure it out. Better yet, you could just make the feature work...

The long and short of it is -- there's not going to be a template for RB plugins for VS.NET 2005 (unless I can find a way to make one that doesn't involve figuring out the complex XML format myself). My guess is that it'll just be an example project instead. It works just as well as a template, after all.

3 Comments

The only reason I can think of is that Microsoft wants to force all users to upgrade to the C# language. It is not the first time software was limited to promote an agenda, and I think that all software companies do this at some degree.

Yeah. XCode has a poor user interface compared to other Apple programs, which is too bad; most Apple software is excellent. And try using C++ with XCode! It's doable, I guess, but pretty darn near impossible.

Reminds me of the way Photoshop used to work with saving to other file formats. There would be a tantalizing but greyed out "Save as jpeg". You had to make sure every feature of the current image was supported by the output format, like flattening layers and such, but there was never any feedback to tell you that. Hell, just enable and display a dialog that says "flatten the damn layers first". Or better yet, just FLATTEN THE DAMN LAYERS WHEN I PICK THE MENU!!!! Grr... Oh well. To be fair, they have made that way better in recent years, but it used to drive me nuts as a user.

Leave a comment

Disclaimer

I'm currently an employee of REAL Software. My blog is mine. The opinions represented in this blog are mine as well and may not represent my employer's opinions. All original material is copyrighted and property of the author.

REALbasic® is a registered trademark of REAL Software, Inc. REAL SQL Server™ and Lingua™ are pending trademarks of REAL Software, Inc. All rights reserved.