In search of Elegance #1: An introduction

Published 14 October 2009

Posted by Al Dean

Article tagged with: in search of elegance, design tools, ease of use, development trends

Spotted this a while back. Recreation of a Saxon door lock (circa 5th and 6th century). Complex yes, but elegant. It serves the purposes of both keeping intruders out when you’re inside and just locking the door when you need it.

Something I’ve been thinking about over the last few months is the complexity of the systems available today. Feature creep is something that every vendor is facing. Apart from a handful, the majority of systems on the market are at least ten years old, relying on technology that was developed in the last millennium. Features have been rammed into every system on a 12 to 18 month cycle for nearly ten years. Ten major releases of new.. well… stuff. Stuff that does stuff slightly different or stuff that does things in exciting and new ways. But at the end of the day, it’s that.

Stuff.

While I’m as guilty as anyone else as being wowed by the latest and greatest technological advancement, the simple facts are that the technology we’re discussing is only a part of a designer, an engineer or a manufacturer’s toolbox. We could, if push comes to shove, do the job using a sheet of paper, a pencil and a rule/french curves. sure, it would be less efficient and more error prone, but that’s a simple fact.

These are tools – nothing more, nothing less.

And it’s now getting to the point where many users are looking at what they’ve invested in, both in terms of personal learning and often theirs or their employer’s cash in and wondering if they need it all. I recently attended a launch event by a major vendor and sat talking to some old friends that have been through the gamut of technology and asked, “Do you ever use any of the new enhancements?” The answer came back as I’d suspected it would. “Nope. I still use the system the same way I did in 1998.” While this is the atypical pessimistic British response, there’s some truth in it.

I dug a little further into their views. it turns out that battle hardened veterans will use new technology if is actually adds some value to their working practices – and that it seems, is something that’s missing. The hook that gets people using new enhancements. And how do they get hooked?

The simple answer is thus: Users adopt new features that make things easier.

Now, this might sound obvious, blatantly so in fact, but there’s more to “easier to use” than is immediately clear. Design and engineering is an inherently complex process, the definition of part forms is something that takes complex mathematics and geometry wrangling. All too often vendors obsess over removing user control over how geometry is created to the point where a reasonably intelligent chimp, persuaded with a bunch of bananas, could create geometry. That’s not what users seem to want. They want tools that are clean, efficient, solve an issue or challenge, but allow them to retain control over what’s happening.

To my mind, that’s not ease of use, that’s building elegance into an application.

So this is what I’ve been considering of late, elegance. And how stuffing new features into a product isn’t the best way forward for many users, but rather a reworking of things a system does, how it does it and how you gain better results, better workflows or a more efficient design process as a result.

What’s interesting is that there’s been a shift in how vendors are refocusing their development efforts. Some are being very vocal about the fact that they’re refocussed on improving existing tools and fixing what’s broken or clunky, while others are being much more subtle about it. Of course, there’s also a correlation between the vendors being noisey on the topic and the amount of criticism there’s been in their user community of the exact same subject.

So, over the next few posts, I’m going to talk about a few bits of technology, some new products and some examples of where elegance is becoming something all the more appealing than plain old ease of use.

Comments:

I get your point entirely, and I don't mean to pass over the development efforts whatsoever, but when it comes down to it, if vendors want users to actually use the new tools, use the technologies they are developing, then they need to look at how they work (by that, I mean users) and address those needs. A lot of this code is now over twenty years old – that's a huge issue and bolting more stuff on isn't the answer anymore.

I don't really care how it gets done. what I care about is users having tools that are easy to use but most critically of all, solve an actually problem – be that a modelling/geometry issue, one of workflow and process or whatever.

Posted by Al Dean on 01 January 1970 at 01:00 AM

you need a blog strictly on elegance… or just do more on this topic. these posts are great Al.

speaking of slimming down and elegance and install size, there's so many iphone apps now that simply amaze me with the size/speed of install and simplicity of use. a move toward more app like apps in the future?

Posted by Josh on 01 January 1970 at 01:00 AM

Deelip

It's got nothing to do with slimming down datasize, its about a movement to slim down the complex and feature bloat, to do things more intelligently than they were previously done. Data size and installation isn't a massive issue and they won't get smaller as a result – its about doing things more efficiently, more elegantly with the tools you have..

Al

Posted by Al Dean on 01 January 1970 at 01:00 AM

Al,

That's precisely my whole point. If things were done right and not as an afterthought, then it would reflect in the size of the object code. Any programmer will second this. But I can tell you one thing for sure. If PTC rewrites Pro/ENGINEER xtop.exe will not be 125 MB.

As a programmer I face this issue all the time. There are times when I keep adding features to a software to a point that it becomes convoluted. Then one day I trash it, start from scratch and re-arrange my C++ classes so that I have a smoother workflow. In fact, I am in the middle of clubbing a bunch of DLLs into a single sleek DLL. I can afford to do this because I write small utilities. You simply cannot rewrite entire CAD systems.

Your statement "to do things more intelligently than they were previously done" says it all. But for a user to do the same thing in a more intelligent way, the programmer should first have intelligent and streamlined code to begin with.

For a simple real world example, take sub-object selection in Rhino and Moment Of Inspiration. Micheal Gibson planned Rhino's underlying object picking architecture object selection while he was at McNeel. When he wrote MoI from scratch, he architected things in a different way. The difference is there for you to see.

My point is that you simply cannot decide one day that your software should do something differently. The underlying architecture of the software needs to be able to handle it. When features are added they are almost literally clamped onto the existing architecture because when the architecture was initially created these features were never thought about.

This is just the way software is developed and will continue to be developed. All we can do is minimize the issues that come with feature bloat. Very rarely do we get the chance to eliminate them.

Posted by Deelip Menezes on 01 January 1970 at 01:00 AM

Al,

Are you sure CAD systems are sliming down? I downloaded Pre Release 1 of SolidWorks 2010 the other day and found out that it did not fit on a DVD.

Inventor's installed size is 1.4 GB, half of which is DLL's, i.e. object code and not samples, docs, etc.

The installed side of SolidWorks 2008 doubled from that of 2007.

And did you know that Pro/ENGINEER's main executable (xtop.exe) is 125 MB?

I don't see the slimming down that you mention.

Posted by Deelip Menezes on 01 January 1970 at 01:00 AM

Leave a comment

Enter the word you see below:

Latest D3D jobs

CNC Programmers/Machinists

Mon, 21 May 2012 13:20:37 +0000

Design Engineer

Fri, 18 May 2012 17:26:56 +0000

Design Engineer

Fri, 18 May 2012 17:26:48 +0000

Senior Product Designer, Salisbury

Fri, 18 May 2012 16:04:04 +0000