Simple Talk is now part of the Redgate Community hub - find out why

Software that Crushes your Soul

Stephen confesses his anger at Visio, which he is having to use all day, every day, in order to design software. Unlike the average 'angry blogger', he offers a constructive solution to some of his gripes that you may download.

Introduction

Are you forced to use a tool every day that, to quote one of our developers, “sucks your will to live”? If so, then you are not alone. I would suggest that we are a gathering so large now that it would make the cast of the Lord of the Rings trilogy look meagre. There could be several reasons, typically:

  1. You have no choice as it’s the only one available for the job
  2. For compatibility/legacy reasons you simply cannot move to another tool
  3. You have no choice because it’s the best of a very bad bunch
  4. You have no choice because your company, maybe your manager, bought a site license at great cost and won’t admit their terrible mistake (probably ignoring the cries of despair from you and your colleagues who are now stuck with it)

I’m in the predicament of having to use such a software tool, and it is gradually eroding my soul to the point that the option of going back to a bar job is looking more and more attractive. Pulling a pint was simple, because the task was matched by the tool for the job. You simply put the glass under the correct dispenser and pull the handle down until the correct quantity had been extracted. It took about 25 seconds, never failed and acted as expected. I remember being quite happy back then.

…So somehow the application sat on the taskbar….

615-taskbar.jpg

…doesn’t match the actual Visio document I have open…

615-titlebar.jpg

Fast forward 10 years and I’m now part of the user experience team at Red Gate Software where well designed or “ingeniously simple” software is the mantra. The problem only starts when it comes to opening Microsoft Visio (a tool ironically often used to prototype good software…) day after day during the final stages of the design phase. Visio is a tool which I have come to despise. It’s a truly draining experience, and I feel that I’d be more fulfilled at work if I was required to wrestle with an angry brown bear that hasn’t eaten in a week.

What started as a collection of mild annoyances has festered and grown to an almost uncontrollable rage, evidenced by two broken mice, as these ‘quirks’ keep tripping me up. For some reason I never seem to remember that Visio won’t quite do what I fully expected it to. The reason for this is quite simple… I can’t believe it doesn’t work like any reasonable person would expect it should. What’s even more galling is that this isn’t some version one product that is a little rough around the edges due to its recent creation but will build over time into a slick and pleasurable experience. This is an old codger of an application that should be a guiding beacon that most others look up to with awe and admiration.  

615-Save_As_Error.jpg

I was like a small child at Christmas when I eagerly opened up the new 2007 version of Visio to discover what improvements had been lavished upon the UI. I’m not sure if I sobbed out loud but I was certainly crying inside. Absolutely nothing had changed. All of the things which were quirky in 2003 were still as quirky in 2007. In fact, after some playing around with it the only difference of note which might impact on my use of the tool was the ability to select more colours for my backgrounds. It’s a crushing feeling and one that made me acutely aware of the responsibility we have when developing software for customers: We must not to make their lives a pain, but work to make their lives easier. A new major release is just one such opportunity. Some people have high expectations or hopes for your next big version release – so ask yourself: what have you done to enhance the next version of your product beyond their expectations?

Why I dislike Visio so much

Why should we put up with poorly thought out and designed software that doesn’t get even the basics right and that we have to use daily? My issues aren’t nit-picking issues of the type “It would be nice if it did…”. No, Sir. The issues I’m talking about are the kind that makes your eyes bulge uncontrollably as you shake your head in despair and ask “why on earth doesn’t it do this?!?”

615-Name_in_Use.jpg

Although I’m only using Visio as an example in this instance it could be one of many others out there who are equally guilty. In classic debate style I would first like to say how easy Visio was to initially pick up and start using almost immediately. The learning curve in many respects was negligible. It also has a large number of existing controls that you can simply drag and drop onto the page therefore taking little time to put a mock-up together if you have a design already planned. Visio also allows you to put together some basic interactive workflows together which work great in presentations to impress an audience who don’t know any better. However, all of these very positive points are devalued, meaningless or totally buried under the weight of issues brought upon having got some of the basics so terribly wrong. I need to express my issues so let me begin…

Problem 1: Basic information handling

I often have well in excess of 80 tabs for my design work on any given project. Visio has provided me with a single way in which this information is displayed, organised and manipulated – an Excel like tab system with one vital missing piece of functionality which may not seem like much but if you use the software for any length of time it becomes like an unbearable itch which you can do nothing about.

You cannot insert a new tab immediately after the current tab.

‘So what?’ you may ask. Well, imagine you have 80 tabs and realise you need an additional tab at position 21. You are forced to add the new tab to the very end of the document (position 81) and then go through the process of reorganising its position manually. Even more infuriating is the fact that this functionality exists by default in Microsoft Excel but does not exist at all in Visio. The amount of time I’ve spent  laboriously placing the tab into the correct position by hand over the last year is enormous. A small thing I’m sure you would agree but go and repeat the same needless task 30 times a day for over 400 days and then come and tell me it’s not an issue. I dare you.

615-image002.jpg

Figure 1:  I can see 5 of my 80 tabs. Very useful.

When you have such a large number of designs, a basic tab system simply does not cut the mustard. I need something more akin to a tree view to easily visualise my list of tabs and the ability to group designs into their appropriate workflows and subtasks for user testing purposes. Being able to only see or organise 6 visible tabs at a time when you have over 80 just isn’t good enough.

Problem 2: Selecting an object on the page

Selecting a control on the page often results (depending on the scenario) in one of two behaviours, neither of which I actually wanted. The first incorrect behaviour is to either select the wrong control which is overlapping or secondly, Visio defaults to editing the text property of the control for some unknown reason. This isn’t some minor feature that I’m being picky over but yet another fundamental issue with its basic operation. One million mouse clicks later and a finger that is showing the signs of repetitive strain injury I now have the object I wanted. Next step – placing it where I want on the page…

Problem 3: Placing an object on a page

When I’m attempting to place a control into position on the page, Visio has the infuriating habit of thinking it knows better than I do where I want to place an item: Visio will often insist on vigorously snapping an object to another object in roughly the same vicinity, when I had no intention of placing it there. This can result in a dangerous cat and mouse game of repeatedly unhooking the object and once again trying to place the object in the correct position. It’s like watching the world’s worst driver repeatedly trying to reverse park but never getting it right. It would also appear that other people find this equally infuriating (as you’ll see here.). One of our own designers has also encountered an equally patience-destroying behaviour which you can view here.

Problem 4: Copy/Pasting objects:

I often need to copy shapes from one page to any number of other pages in a way that maintains their relative position. This isn’t a fancy requirement. I am designing a workflow after all so need the items to be in the same place. Visio does not have the ability to copy/paste in the same place unless the zoom level is identical between pages which it often isn’t. This often isn’t the case as I usually zoom in to try and make sure I select the correct controls in the first place (see problem 2). Visio instead determines the placement of controls depending on the current centring/zoom level of the page. To complicate matters, Visio also remembers the individual zoom levels for every single tab page you have to make sure these are the same between tabs before committing any objects from one tab to the other.

Problem 5: Sharing designs with colleagues

Often, a colleague has opened  a design file I’ve sent and burst into laughter as the Visio file is rendering the design completely differently on his computer than it did on mine. The end result is that fonts have often gone from the standard ‘Tahoma’ font to something random like the ‘Franklin Gothic Heavy’ and as a result has started placing text on multiple lines, thereby rendering the entire design as some nightmarish mash of nonsense.   

Problem 6: Changing the Default font

Here are the instructions to change the default font from being Arial (http://support.microsoft.com/kb/295117) for Visio 2002. Is it possible to read these instructions, particularly steps 4 and 5, without smiling and shaking your head? Requiring the user to start digging into the registry just to change the default font makes me wonder whether Visio’s problems are deep-seated. I couldn’t even get these instructions to work although I do have Visio 2003, so the instructions may have changed even though all the steps are still available. 

Problem 7: Useful features suddenly dropped

It used to be possible to prepare text files of diagrams for importing into Visio. This was a great way of automating things like site maps and flow diagrams. As of Visio 2003 it no longer works because Visio 2003 no longer supports text files as a format.

Problem 8: Inserting Multiple images

In Visio 2003 I can’t insert more than 1 image at a time! Seriously, a software package that’s meant to be used for design forces you to Insert just one image at a time. That’s beyond stupid. Not a great feature if you are designing a UI.

A small moment of joy

The choice for the best thing about working at a software company has to be the interest that other people take in your computer problems. Luckily during one of my darker days in front of Visio I was complaining (read: swearing) so loudly that the division manager (James Moore) suggested getting a COM add-in to ease the pain of some of the more problematic issues. 615-image004.jpgI suggested he wasn’t smart enough to accomplish something like that (we had already automatically discounted the possibility of me being smart enough) and after a few days of hacking code around, disabling other add-ins which were causing conflicts and generally being close to giving up, a solution was eventually found. You can find our COM add-in here which now adds the ability to add tabs before/after the current tab, fixes the naff copy/paste default behaviour and allows browsing of tabs much easier thanks to a new list view with preview.

Figure 2: My new personally customized menu to work around the shortcomings

615-image006.jpg

Figure 3: My new preview pane which allows much easier tab navigation and selection

My pain has been lessened but the issues run deeper than these short term fixes for bigger problems. You never know, we may just end up writing our own design tool soon. I can but dream.

Conclusion

The process of writing this has been cathartic. It has eased my angst.  Do I expect anyone to do anything about this? Sadly, no. I did write some constructive feedback on the Visio site a while ago but it felt like putting a message in a bottle and chucking it into the Pacific Ocean. Contrast that with some of the smaller companies I’ve contacted recently who have all personally responded quickly and positively to both emails and forum posts about easy and worthwhile improvements that could be made to their product.

In the spirit of a support group I now invite you to share your top gripes with any software you have to use every day or have used in the past that has the potential to drive you crazy (or crazier). I can’t promise it will make you feel any better but a problem shared is a problem halved and you never know – someone out in the ether might just be listening…

The add-in that solves some of Stephen’s immediate problems (by adding the ability to add tabs before/after the current tab, fixes the naff copy/paste default behaviour and allows browsing of tabs much easier thanks to a new list view with preview), can be found here as a zipped file

How you log in to Simple Talk has changed

We now use Redgate ID (RGID). If you already have an RGID, we’ll try to match it to your account. If not, we’ll create one for you and connect it.

This won’t sign you up to anything or add you to any mailing lists. You can see our full privacy policy here.

Continue

Simple Talk now uses Redgate ID

If you already have a Redgate ID (RGID), sign in using your existing RGID credentials. If not, you can create one on the next screen.

This won’t sign you up to anything or add you to any mailing lists. You can see our full privacy policy here.

Continue