Change and the Interface
In the SWWorld general session on Tuesday, Jon Hirschtick make the appeal to old school curmudgeons to relent a little when railing against the changes in SolidWorks. He spent the first couple of minutes of his talk building the case for his claim to the past of SolidWorks:
I have more claim to our past than anybody in this room, and I can tell you that the past doesn’t matter. The future matters. And I want you to continue to change SolidWorks and not cling to the past and say well that’s the way we always did things or that’s the way Jon used to do it or whatever, that doesn’t matter. Move SolidWorks forward. Evolve it, change it. Change what we’re doing with the product, change how we do support, change how the user groups work, change what we do on the web. Move this company forward. Please, that’s what I want you to do, and I’m going to try to do the same thing.
(link: around the 19 minute mark) Check out the rest of his talk. I think it is important to hear and understand what he has to say. He is not telling the future of SolidWorks, but just about his thoughts. Still, he is very influential in the industry. In this clip it sounds like he is talking more to SW employees than users, and more about SolidWorks as a company than SolidWorks as a product.
Talking about change is all good, and all the rage these days, but change for the sake of change, or random change or change to keep up with fads are probably not what Jon intends to promote here. I’m hoping that he really means “progress” rather than just simply “change”. Things need to improve rather than just change. In this blog post, I’m most interested in talking about how change and progress can affect the interface. You can say a lot of things about this, and most of it would relate to much more than just SolidWorks, but also to the bulk of the computer software industry.
I would personally hope that the “change” that comes is change that can transcend fads or trends. In my opinion, this whole “ribbon” interface is not progressive change. It is the result of a monopoly using its weight to unilaterally drive a forced “standard” down our throats. Some people like it, most don’t. It’s not a solution that the majority is happy with. Recent decisions by Microsoft are responsible for the huge surge in Apple market share.

For reference, I’ve already laid out some of what I think in a presentation I did at SWW09, and in a blog post I did shortly after the release of the SW08 software making suggestions for changes that would be equally radical as 2008, possibly moreso, and yet useful.
I want to point something out here, too. Earlier I spoke of real progress and fads. If you’ve been around SolidWorks long enough, you have seen old ideas becoming new again. Things that were in fashion at one point, then became passe have now become fashionable again. This is the kind of thing I wish we could avoid. Good design is timeless. Good interface concepts do not change like clothing styles. We’re engineers, can’t we be more rational than that? For a specific example, remember the “dialog box”? It was an interface element that popped up in the middle of the screen and allowed you to make selections and choose options, and whatnot. It happened in the middle of the screen. Then someone had the bright idea that the middle of the screen was really needed for the geometry. So we started using the PropertyManager, which was off to the side of the screen. This organized the information better, but was confined to a shape that is awkward for some types of data, and it made you move your cursor away from the model. Well, in recent years, and apparently moreso in SW2010, we are getting the “Heads Up” type interface, which, you guessed it, puts stuff right back in the middle of the screen again.
Can’t really smart people figure out the “best” way? Why do we have to keep changing this? I think the answer here is that there is no answer, and that people really do just like random change. Change something, anything. Change it is such a way that you can think of a single benefit. It will sell like crazy. Are we really that shallow? Part of my SWW09 presentation on the interface is that we all like to do things differently, so everything we do is in conflict with something else, and we have to make choices between conflicting things. Everyone has different tastes, and even if you look at things dispassionately, there are advantages and disadvantages to almost every idea you can think of. You will never create anything that will make 100% of the people happy. But why does SW have to flip flop? Internal politics? New guy in charge? SW people are as fickle as the rest of us?
Anyway, this wishy-washiness is something that has always annoyed me. Sales people and lawyers are individuals who can argue any side of an issue without offending their own values. Is that because they have no values or because their values are for sale or some other more transcendent reason I don’t understand? If you don’t think Lincoln was the best president ever and W was the worst, you are not in style these days. Other days it might be FDR and Harding.
Anyway, I want to extend this discussion to a wider audience than just SolidWorks users, but I’m going to have to use some SW examples. I hope everybody can relate. The SolidWorks 2008 interface was controversial to say the least. It did a lot of what the Office 2007 interface did. SW already had the CommandManager, which functions like the Ribbon, but I think is more useful because it is organized logically – in the same way as the toolbars. SW also handled right mouse button menus in the same way that MS handled them, splitting the menus and putting a bar of icons on top.
In the past, SolidWorks made a bigger deal of the Microsoft compatibility thing, making it a selling point for the software that the MS interface makes things easier to learn. That is probably less true now with the ribbon. It is true that the SW CommandManager is not a direct implementation of the MS Ribbon, and for that I am very thankful. I think the 2009 version of the SW CM is far more useful, more configurable, and simply faster than the MS Ribbon.
All of this seems to be in response to the same issues. Software is getting more complex. SolidWorks in particular has seen an explosion of new menu and toolbar options. The RMB started out as something meant to make things faster, but it has become a place to put all context sensitive functionality. The next time you look at the SW RMB menu, look through it and see how many things are in there that you had no idea were there. Shown above is an Excel 2007 RMB menu and a SW09 RMB menu.
SolidWorks has tried a few things, like the “personalized” menus that hide things you don’t use frequently under the double arrow at the bottom of the list, or the “vertical market work flow customization” – machine design, consumer products, and mold design – which limit the tools available based on what SW thinks people doing that type of work will need. I don’t think either of these has been effective in helping users manage command bloat.
How do you create an efficient interface when you have a tool that can be used for many different kinds of things? Customization is the only answer. Customization and flexibility. I think there were 2 factors that made SW08 so controversial:
- The default interface shown on installation used the most radical options available.
- The changes imposed were not options – “our way or the highway” mentality (shared by SW and MS)
I’ve said it before, but I still believe it, and I know it is true for me personally, SolidWorks (and Microsoft by extension) could have avoided a lot of ill will if they had made the default install interface familiar, and if the interface had included options for turning things on or off. One of the reasons I like SW09 so much is that it finally includes the options to control things that users either want to or are used to controlling.
So, while I agree in some respects with Mr. Hirschtick when he calls for change, I would qualify that somewhat, and limit it to useful change, and also recognize that there are people who have to continue to make a living with SolidWorks after they change it. Contunially retraining an existing workforce is not an option, unless there is a real benefit. (Rhetorical benefits are not considered “real” by anyone except sales). Also SolidWorks needs to remember that “you never think your baby is ugly” – meaning that SW people are probably blind to the actual faults in their software. Which is why they need the “devil’s advocate” position I’ve supported in the past.
So, now I want to see what you as software users think about when companies change interfaces, and what changes you would like to make? Mark Burhof promised he would at least comment if I posted on this topic, so I wanna hear from Mark. I know he mainly wants to glean information, but you have to give sometimes too. So what do you think, Mark?




One thing I like about my toolbars everywhere is one click per function. I have a huge monitor, so saving screen space really isn’t a concern of mine. Mouse speed is fast, so getting there is also fast.
Sometimes I find the new interface getting in my way and it looks more like click, pause, find what I need again, click, pause, function box pops up. It’s far too slow in v2008 and v2009 and ought to be cleaned up. Click once for instant function was simply faster for me.
Also, why do I need to wait to enter dimensions in the pop-up box? It simply won’t capture my text at the same speed I used with v2007. Lame. No point in telling me my hardware might be the problem—-it’s top-rated stuff and lots of others have suddenly seen the same thing. If proper hardware is that narrowly-specified, I’d like to at least see this on the main SW web site for hardware requirements—-I don’t.
On the positive side of things, I love how I can set the “S” key to one of many of my mouse buttons. I tend to navigate the keyboard with my left hand over arrows/Shift/CTRL/Enter/Delete. I don’t need to look to enter numbers or hit my hotkeys (on number pad). Fast. Adding the “S” key functions to my mouse makes work in the middle of my huge screen even faster. If I could customize the “S” function (and some others), I’d really be fast—-and this interface would help, and not hinder.
Matt,
After your presentation at SWW, i shrunk my SolidWorks window so it was not fullscreen. I then moved the FeatureManager to the left, so it does not cover up the viewing area. I really like this, and all I really hope is that SW implements a way to pull the FeatureManager away from the FeatureTree, but still makes it dockable, and NOT cover up the viewing area.
If there is one think I like to talk about, it is UI.
Matt, you know this but let me say for everyone else I work for Siemens PLM as a product manager but these are just my own opinions and comments. We have experts that work with UI and I’m not one of them. I do impact UI in certain corners of the product which is why I’m interested in what CAD folks think. Still, point is, it’s just me talking.
Matt, so lets look at this from your post:
“Can’t really smart people figure out the “best” way? Why do we have to keep changing this? I think the answer here is that there is no answer, and that people really do just like random change. ”
What is bad about UI is there is no best way. Any old CAD folks remember CAD before the mouse? I used ANVIL 5000 and could fly through the menu choices. Then the mouse came along with its “intuitive” user interface and slowed me down to a crawl. 1-3-2-5 became a game of click and shoot with a mouse. In fact it was worse because 1-3-2-5 would queue up while the mouse became, click, wait for UI update, move mouse, click, wait for UI update, move mouse… Still, the mouse caught on in CAD. What is best in one context is not best in another.
You mentioned having a truly customizable interface. This is an important quality in the usefulness of an application since it allows one to adapt the software to the way the user wants to use it. On the other hand, a common look-and-feel has value too. “Esc” is used by a lot of software to exit commands. This consistency allows you to transfer knowledge from one application to the other. If you only use one application, hitting ‘Esc’ or ‘F1’ to exit a command really doesn’t matter but most of us know F1 is help and Esc exits the command. It’s best to keep with that standard.
Now Microsoft’s ribbon comes along and jumps right into the middle of this. Everyone has to scramble. Keep an old UI, develop a new custom UI, follow the Microsoft “standard” or find something in-between. As we all know, CAD systems hate to keep “old” UIs. Standards are nice because what you need to do is pretty clear and you know you will keep that easy transfer of knowledge you get from it. Custom is hard because you have to figure everything out and you have to be better than the standard (you do not want to be non-standard and bad!) Of course, when the standard is bad, it won’t stick very well. I think you will see a lot of applications trying to find the sweet spot between “standard” and “usable” with regard to the ribbon.
What you call “wishy-washiness” to me is an optimization problem with a whole lot of inputs. How do you give the best answers for all these questions?
1.) Is the UI efficient for the task?
2.) Is the UI easy to learn?
3.) Is the UI easy to use?
4.) Is the UI consistent?
5.) Is the UI customizable?
6.) Can the UI be optimized?
7.) Is the UI pleasing?
We also have to optimize over a wide range of users with different hardware. A lot of your readers are experts so they might favor 1 and 5. The new guy (or the new customer) might find more value in 2. The casual user may think 3 is the most important. Oh, and then these things are interrelated and at odds with each other. The UI reflects the market and the market reflects the software in some ever-changing cyclical feedback loop. (BTW, have you seen how big monitors are getting? I think they are way cool but what a pain for the UI folks trying to accommodate them)
Now, having said that, I do think to software industry in a new phase for participatory input. It has never been easier for individual users to discuss how the software and especially the UI can be improved. What UI ideas do your readers think are the future of CAD?
Mark
P.S. Personally, I hate zig-zags (clicking here and there and here again on the screen) and like minimal UI that shoes up in the graphics area close to my cursor. I like minimal UI in other places too – I don’t need to see 100 options when only five make sense. I’m even ok with the MS Ribbon but that is probably because I do a lot of Word and Excel and PowerPoint.
On the whole, I think SW UI has been going in a positive direction. Individual choices within the overall UI design will need to be reversed, and holes will need to be filled. Like everything else in SW and any other CAD system, it’s a work in progress.
What may appear to be wishy-washy behavior I think is probably just the process of recognizing and correcting mistakes. For example, getting rid of dialog boxes in favor of the property managers was widely thought to be great, because it uncovered the model so the user could make selections there. The problem was that this also moved the controls away from where the user’s attention usually is. Now, some of the controls are making their way back to the middle of the screen with the S bar and the split context menus. But these are not normally in the way when you need to make a selection on the model. So, we have the convenience of controls in the middle of the work area, and keep a clear view of what we’re working on. I don’t see this as wishy-washy at all. It’s a refinement.
My ideas for refinements I’ve actually submitted as enhancement requests. Not too useful as a response to a blog, but hopefully more useful to users. Someday. Maybe. I general, I basically want to see more and more ability to customize, and a flatter UI. Flatter meaning, I don’t have to drill down into the UI to get what I need. For example, I change configurations a lot, and changing configurations requires first opening the configuration manager. I don’t see why there isn’t a drop-down list. You can infer from this that I don’t care for the command manager.
Funny,
But I think this is what illustrates how hard it can be to do good UI design. Unlike Dale, I like the command manager in 2009. Prior to 09 I had a whole slew of toolbars docked on the screen. What drove me nuts is that toolbars would constantly move around when I switched from between assembly/part/drawing modes.
The command manager puts everything in one spot and it works for me. I have added functionality that I frequently use to the command manager and it’s at a point that it works efficient for me. FYI, much better than the “Microsoft Ribbon”
The one thing I don’t like as much is that it does require more clicks at times. With all the toolbars open everything is one click away, with the command manager I have to get the correct tab first.
As the saying goes: “You can please some of the people all of the time, all of the people some of the time, but not all of the people all of the time.” Personally, I didn’t have a huge problem with the UI in ‘08. As with any “upgrade”, there were things that annoyed me but I dealt with it. I figured those annoyances must be beneficial to some and I was in the minority.
I agree that change shouldn’t be made just for the sake of change. In the end it’s a losing proposition. (Especially when said change is rife with errors.) The issue, as I see it, is how to determine what to change and how to change it? Obviously you can gather feedback from your customers, but, in the case of SolidWorks, what percentage of your customer base actually participates in surveys? Then there’s the “proof of concept” loop. Can a group of SolidWorks employees actually prove that some new idea is a good one? While they can say it works, that’s not the same as it being beneficial to actual users.
Ugh, I can see this response becoming as long, if not longer, than your post, Matt.
I think that Solidworks user interface and cosmetic changes are a ruse. Solidworks might be trying to use the Vista approach. Look at this glitzy and new user interface, ignore the fact that your computer runs half as fast and crashes often. I just love the delay in menu extension, and dimension dialog. Perhaps the software could have the commonly used dialogs, and top level menus cached. Nobody likes the click and wait user interface.
I am really bugged by the bugs that never get fixed. They were there in 2003 and still here. Lofts and sweeps fail in so many bizarre ways. Fortunately, there is usually some way to get the desired shape.
User interface is the only part of a CAD system that management can see. They do not use the software. I feel like they do not care about functionality. I see CAD software as a tool, it can come in a plain brown wrapper, I want to get to work on my designs. I want to do beautiful work.
Jeff Mowry-
S key – fully customizable. If you bring up the shortcut bar while over the feature manager, you can resize it to any rectangular shape, which doesn’t work if you pull it up in the graphics area. I do not think that part is on purpose, but isn’t too big a deal to work with.
As a minority voice, I liked the 2008 interface over 2006, which was the version I used previously. I also do not expect the road forward to be as straight as we all would prefer, and there will be some wrong turns and dead ends along the way. It is unrealistic to think otherwise.
A thought just came to me. Since big monitors are now cheap and ubiquitous, I wonder if I could still have all my toolbars all over the place like I have in v2007. The idea is that maybe in my custom showing/hiding of icons in each toolbar, I’m also creating a custom-fit set of options available in the in-context stuff—-so they’re associatively-linked. So this would be a simple (visual) way for me to edit the in-context menus like left-click, right-click, and S-key. What I don’t ever use, I hide from my toolbars–don’t need the visual clutter. What I do need (I’ve got LOTS of stuff that’s not set as default), I add/show to my toolbars. The in-context stuff is only picking from this selection of items found in my toolbars.
If the in-context stuff works well enough for my work-flow, I could certainly hid my toolbars (if this didn’t affect my “programming” of SolidWorks—-maybe I’d need the ability to toggle that within Options).
There’s still some thinking of details for me to do on this. Figuring out whether I’d really want to see the entire selection of my toolbar contents in-context would be a challenge. That might be overload, might not be.
“SolidWorks (and Microsoft by extension) could have avoided a lot of ill will if they had made the default install interface familiar, and if the interface had included options for turning things on or off.”
Matt, as much as I agree with most of your ideas, I have to ask this: If SolidWorks/Microsoft really did what you asked, how likely would you, or anyone for that matter, TRY the new functionality or UI changes? And even if they set as default the new interface, with options to revert back to “old school”, how long would it take for most of us to try it out, say “That’s it. I can’t figure this new stuff out. I hate this new stuff.” and change it back to old school settings? Probably not long.
The fact is we are creatures of habit. We don’t like change. As soon as we meet any resistance to the way we are used to doing things, we get impatient, frustrated, and want to go back, without really giving enough time to learn the new things, get more efficient with it, and THEN decide whether or not we like the older way better.
Sometimes, just SOMETIMES, forcing people to try new things is the only way to get people too, well, try new things.
I’ll admit, I still have my Windows XP interface setup with the “old school” graphics and look of Windows 2000, although I have alot of XP functionality turned on. While SW2008 was definitely hard at first, I really liked some of the new UI elements. Same with the Office 2007 stuff. Right now, I’m being “forced” to learn a new CAD system. NX. And guess what, the first few months have been painful. ESPECIALLY in the UI department. “Why can’t I just click this or RMB that, or Shift this and Alt that, or click-drag this and click-click that… JUST LIKE IN SOLIDWORKS…” But, now that I’ve had a chance to get used to it, I can honestly say there are ALOT of things I like better about the NX interface. There are still some areas where I feel SW is superior, but again, it took forcing me to use the software/UI to really give it a chance.
I’m not saying there weren’t mistakes made by SW/Microsoft in their implementing their UI changes, but only time will tell whether they the changes were in the right direction.
@Bruce Buck
Bruce,
Just because I’m a curious cuss, I would try the new stuff. On the other hand, I don’t appreciate having it crammed down my throat. Honestly, who is the software for? If a user wants his tool to work the way it did yesterday, what is wrong with that? My whole point is to let the user decide even if he chooses something that is not progressive, the user has his/her own reasons. So what if you spend the rest of your career working on a particular version of the interface? It should be the choice of the user. The user paid for the software.
Plus, I suspect SW is trying to replace documentation with “discoverability”, which in this case means beating you over the head with the changes so that they are so obvious they don’t have to document them. I think once you boil everything else away, this is the driving reason behind pushing the most radical settings in the default install. Especially because in beta it was initially done with no option to set it back the way it was. It was deliberate. Ok, we get it, you changed the interface. There was no thought about users, the default settings were meant to accommodate developers and tech writers. If you were a CAD admin, would you do this to your users? No, you’d be fired. SW should have the concern of a CAD Admin toward their customers. We are paying for this.
@matt
Careful now, you may have just supplied the SW Marketing team with the next buzzword for the upcoming releases. “SolidWorks 2010’s ‘discoverabiliy’ allows designers to free their minds and discover new possibilities”
Um, I actually did do this to users once. I set the default to “Use fully defined sketches” on their machines. I wanted them to get used to using relations/dimensions that they weren’t used to using in 2D. It was 3-4 months before I finally told them about the option box. I’m cruel, aren’t I.