FME Evangelism #20: Usability Improvements

September 2nd, 2008

Contents:
1) Transformer Defaults
2) Sneak Preview: Options Dialog
3) Multi-Attribute Transformers
4) Recent Workspaces List
5) Science Lab: Thanks for the Memory

Until I started working for a software company I had no idea how complicated it is to define the interaction between software and user, not just in terms of graphic interface, but also the granularity of the settings and parameters on offer.

One of the biggest issues is to make sure that an “improvement” doesn’t compromise usability. The decision between giving users more control and making FME “just work”, ultimately adds weight to one side or another in a trade off where more controls=more complicated, but fewer controls=less flexibility. Ideally we like to strike the perfect balance (”equilibrium” as my high-school economics teacher would say):

So you can imagine that nothing makes us more happy than to devise an improvement that both simplifies an FME process for a casual user, and also makes it more efficient for our power-users.

This post is to highlight some recent (or still to be released) changes to FME that have made us happy. We hope the feeling is mutual.

Regards,

Transformer Defaults
A regular user of FME will find that they are always using the same transformers, and the same parameters in these transformers; for example the same coordinate system in a Reprojector, the same password in a Joiner, the same tolerance in a Snapper.

A new enhancement (in FME 2009 beta from build 5601) is intended to relieve the burden of setting these parameters every time: Transformer Defaults

With this update you’ll find that all transformer dialogs have a new option called “Defaults” in the lower-left corner:

In this example (above) I wish to set the default values of the Sampler to sample every 100 features (the usual default is 1). So I set the transformer parameters as required and choose “Use Current as Defaults”.

Now whenever I place a Sampler transformer, its parameters will take my values as defaults.

The other settings are:
- Reset to Defaults: ie use my (user) defaults
- Reset to Original Defaults: ie use the standard (FME) defaults

I know I’m biased, but I really like this change. It adds useful settings in an unobtrusive way, which is good for all users.

NB: These options appear on transformers in build 5599 and 5600, but were not activated until build 5601. Also there is potential for the settings to be re-labelled (possibly as “my” defaults and “fme” defaults).

Sneak Preview: Options Dialog
For FME 2009 the options dialog in Workbench (Tools > Options) is undergoing a major overhaul. While our GUI team were off playing street hockey at lunchtime, I slunk into their office and grabbed a surreptitious screenshot (click it to get the full image):

Notice that we’ve switched from tabs to a left-hand menu of icons (nb these icons are only preliminary). Besides that there a couple of things in particular worth noting:

- The categories and settings have been re-organized. Yes we realize this will cause temporary pain while you re-learn what is where, but the feeling is that there is long term benefit in organizing them in a more logical manner (and being logical you should be able to re-learn them that much quicker).

- The “Format Parameter Defaults” tab is no more. That’s because - in the same way as transformers (above) - the format dialog boxes will soon have a “defaults” option, so they can be set as default or reverted to default that way. Again, that simplifies the process for existing users and provides an obvious option for new users who didn’t realize that setting defaults was possible.

Below: Now I can set my connection details to be the default for all new PostGIS readers:

NB: This is a sneak preview: You won’t have these options yet!

Multi-Attribute Transformers
If you’ve attended either training or conferences in recent years, you’ll know that one of the concepts we like to promote is that of Best Practice for FME.

One aspect of Best Practice is to minimize the number of transformers you use; however, that can be a challenge when some transformers only operate on a single attribute and so, to process multiple attributes, you are forced to used multiple instances of the same transformer.

Build 5600+ of FME 2009 beta introduces some changes to help resolve this issue. A number of key transformers have been upgraded to handle multiple attributes.

These transformers include the StringReplacer, DateFormatter, StringFormatter, and StringPadder

Below: This example shows the StringReplacer:

In 2008 it needs 5 transformers to carry out the same text replacement on 5 attributes.

In 2009 it only needs a single transformer. Notice how the arrow highlights 5 attributes that can now be operated on. That’s because the transformer settings dialog now looks like this:

This is a great change, implemented in response to requests from both users and Safe’s Pro Services team. So now there’s no excuse for not having properly formed workspaces.

Note: Be aware that this does change the behaviour of these transformers somewhat. In 2008 the result of the transformation was written out to a new attribute (by default “_replaced “). In 2009 it’s not possible to write a single new attribute because there might be many values, so what happens is the result gets written back to the original attribute.

In other words, these new transformers replaces the old attribute, and don’t write new ones.

If you want to keep old attributes, use the AttributeCopier to back them up before you apply these new transformers (and yes, you can copy more than one attribute at a time!)

Recent Workspaces List
In my role at Safe I tend to open many workspaces over the course of a week, all of which might be stored in different locations. This can lead to a certain amount of frustration when I need to revisit a workspace but can’t remember where it is and what it is called.

So I am personally very happy to be able to announce that as of build 5599 (FME2009 beta) there is now an option to increase the length of the list of recent workspaces on the menubar.

Below: Whereas only the last four workspaces are listed in 2008, in 2009 you can list up to 15:

Below: The option to lengthen the list to anything up to 15 is under Tools > Options

To harp back to the original theme, although this adds an extra control to the options dialog, I believe the increase in complexity is minimal compared to the usefulness of the function.

Science Lab: Thanks for the Memory

Most functionality in FME is not static, and is refined over time in search of that perfect combination of usability and flexibility. One function undergoing such refinements is FME’s memory management.

Memory management is important because using resources well can greatly improve an application’s performance. In the past, FME’s memory management has fluctuated between profligate and miserly, and - not being able to find a suitable compromise - eventually resulted in a parameter that acts as a user-defined lever between the two extremes. This parameter is Maximum Features in Memory per Transformer.

Below: The FME Features in Memory parameter: Like a car throttle, revving it to the max guarantees a faster ride, but one that is liable to run out of fuel before completion.

However, as if to illustrate that flexibility doesn’t always equate to usability, it’s not particularly realistic (or fair) to expect users to have the time and patience to experiment with this parameter every time they run a translation; and that’s assuming they know about the setting and understand what it does.

It almost seems an anti-climax to take such a complex issue and announce a solution this simple but, in a nutshell, FME 2009 will have new memory management functionality that assesses the available amounts of system memory, and automagically adjusts the FME engine to match.

Two highlights of this are:

- The Max Features in Memory setting is going to be removed! FME will itself determine the optimum memory usage without the user having to worry about it.

- FME is now set up to automatically make use of the huge amounts of memory available when we make the switch to 64bit-land (yes, 64-bit FME is coming - contact us if you want to get in on the beta program)

Mad Dogs and Safers: Triannual Soccer Cup
I couldn’t resist writing a report from the Safe Software thrice-yearly co-op soccer cup; where the departing crop of co-op students take on the full-time Safe staff.

Under blisteringly hot Surrey skies the “oldies” took a brisk 4-0 lead through goals by Regan Proulx (AutoDesk/Database Team), Miles Wheeler (Sales) and two from Fil Vera (Application Integrations); with Rochelle Chan (Marketing/LA Galaxy) storming down the left wing delivering Beckhamesque crosses and free-kicks.

But into the second half, the oldies wilted under the combination of sweltering heat and tired limbs, and the co-ops pulled back two goals with Dan Ho (IT) placing perfect shots into each corner of the net.

A third goal on the stroke of full-time made the scoreline even more respectable - particularly in the minds of those who had forgotten to keep count - but the old-timers hung on in there, and resisted the co-ops pleading for another five minutes of play, to win 4-3.

Above: Post-match photo. Co-ops are red shirts. Oldies are red faces.

This Edition of the FME Evangelist…
…was written to the tune of These Apples by the Barenaked Ladies.

In Canada, 35% of songs on a radio station must be “Canadian Content”. I’ll never manage that much, but I figure I should at least have some. “If I Had $1000000″ is virtually a second national anthem, but I really like “These Apples” which has one of my favourite lines:

“So enthusiastic, a little bit drastic,
I shaved her name in my head.
But as she beheld it, she said I misspelled it,
Need more be said!?”

Entry Filed under: Data Transformation, FME Desktop, Science Lab, Usability

-->

Feed

Add to Technorati Favorites

The FME Evangelist

Welcome! The FME Evangelist delivers insider news, cutting edge examples and the latest functional developments for Safe Software’s FME application.

Links

Archives

Categories

Tags