Dear FME’ers,
Well, it’s the time of the year when the snow starts to fall for the winter*, and thoughts turn to skiing, hot chocolate, and the upcoming release of a new version of FME. So it is that I get to sit by a warm fire and pick my top ten favourite Workbench updates for this time around.

And FME 2014 does not disappoint. Despite – or maybe because of – switching to a new, Mac-friendly technology to render the canvas, we’ve managed to add some excellent new functionality. In fact the whole look and feel is now distinctly chic and elegant, as if we should really launch it with a snowy photoshoot on the cultured streets of Paris, rather than in an online webinar hosted overlooking a parking lot.

Oh well, when you download it for the first time, be sure to close your eyes, listen to some classy jazz, and imagine yourself strolling along the banks of the Seine!

* For the southern hemisphere substitute “Just as the English wickets start to fall in the Ashes…”

EvangelistBanner7

EvangelistNumber10

Transformer Updates

I’m not talking about transformer functionality here (that’s a whole different article) but how transformers are rendered on the Workbench canvas. Some changes are obvious, some so subtle I didn’t even notice, even after using them for weeks. Take a look at this screenshot:
WB2014-TransformerDecorations

First you’ll notice that transformers (and feature types) have been given an added “decoration”. We haven’t done this for all transformers, just ones where we wanted to emphasize that something special is happening, for example where data is being read or written, or is being fetched over a web connection. The location (on the right or left side of the transformer) tells you whether it’s an incoming or outgoing process. Feature types have the same new decoration too.

Another obvious spot is that the input and output ports are now labelled in lower case (well CamelCase to be precise) which is way better than us shouting OUTPUT at you!

And one less obvious item: look at the Twitter transformer above. Notice anything? Sure? Look closer….. OK, maybe you see it, maybe you don’t. I didn’t notice at first. Where has the “Input” port gone?! Well, we removed it for all transformers that had only a single Input port. What it does is free up space in the canvas. It sounds (or sounded to me) like such a bad idea, and yet, when you see it, it’s so elegant and obvious that I can’t imagine why we didn’t think of it before!

Speaking of input ports, my final update for transformers is what we call “dynamic ports”. There are a few transformers that had no input or output ports by default, but needed them to be added by the user. What we’ve done there is add a single input; when connected, another appears automatically. Take this InlineQuerier as an example:

WB2014-DynamicInputPorts

Notice that as I connect further inputs to it, a new port is automatically added, so that I always have something to connect to. The MapnikRasterizer and MapTextLabeller transformers also have this capability, and we can add it to any other transformers that have a variable number of input ports.

Tip: Did you know that you can double-click a transformer to open the parameters dialog? This functionality was added as a 2013 Service Pack item.

EvangelistBanner7

 

Connection LinesEvangelistNumber9

It seems odd that we would want to revisit connections between objects – they’re just lines! – but the new rendering technology enabled us to make a couple of worthwhile updates.

Firstly, noticed that the connection lines are now rendered as “anti-aliased”. What that means is that they aren’t drawn like a series of steps, but as a smooth line. Perhaps a screenshot will help explain:

WB2014-AntiAliasedConnections

Notice how the 2013 connection was more “stepped”. You’d really have to jiggle objects about to make that line truly straight. So for folks (like me) that get really uptight about making straight line connections, this is a real time-saver. It’s much easier to get things looking lined up than in 2013.

The other update we made to connections was in moving them about. In 2013 and previous releases, you would have to grab the handle on a connection to move it, but in 2014 you can click anywhere on a connection and start to move it about:

WB2014-ConnectionPointSelection

When you try this, notice how the nearest node to the mouse is automatically highlighted in blue, and the connection line has a thickening gradient to guide you to what is going to be moved.  Dale calls it “the fox” in homage to this forgettable piece of sports broadcast technology.

EvangelistBanner7

Pop-Up ButtonsEvangelistNumber8

Combining both of the previous items – transformers and connections – leads me on to another cool update. You already know we have a drag-and-insert tool (whose pink spot is now a pink triangle, by the way) and for simple 1-input/1-output transformers the functionality behaves the same in 2014.

But when you insert a multi-port transformer something rather more marvelous happens:

WB2014-PopUps

Yes, instead of having a dialog open in which to define the ports to connect, we now have a little pop-up button.

The left-hand button basically means “I’ve made a mistake and don’t want to connect this transformer”. Click it and the transformer will be disconnected from where it lies. In fact, you’ll get that on any transformer you insert.

The other two buttons represent incoming and outgoing ports and are only for multi-port transformers. By clicking on them you get a list of ports and can choose which to connect:

WB2014-PopUpPorts

Of course, the really nice thing there is that you are just setting these directly on the canvas; you aren’t having to open and close a dialog. I think (and hope you agree) this is the sort of functionality that gives FME the easy-to-use interface that it has.

Tip: Don’t forget you can use drag-and-insert and a transformer that’s already inserted! This very short video clip shows an example of doing just that (and using the new pop-up buttons).

EvangelistBanner7

AnnotationEvangelistNumber7

Updates to the annotation (label) functionality could produce the biggest changes to how a workspace looks, and yet it’s all up to you if and how you use it.

Basically, annotation is now rich, rather than plain, text. You can assign a font, a font color, or a font size; change the background color; or even add tables and hyperlinks. This is done through a pop-up menu that appears when you start to edit an annotation:

WB2014-AnnotationMenu

So with these tools the fairly boring text above could become:

WB2014-AnnotationGoodExample

What might not be apparent is that the background color can be made semi-transparent and that there is also an option to turn word-wrapping on or off. Text can be bolded, italicized, or underlined; and you can even add bullet points (as bullets, numbers, or letters). Oh, and fair warning: if you use ‘Comic Sans’ font, your FME license is automatically revoked! Sorry, that’s just how it is 🙂

Tip: Don’t forget you can select Tools > FME Options > Appearance and use the tools there to change the font for all objects on the canvas; and the log window too!

EvangelistBanner7

BookmarksEvangelistNumber6

The updates to bookmarks are probably less dramatic than for annotation, as we’ve tried to keep their behaviour as close as possible to what it was before. Still, there are some changes.

Firstly, the description can have the same sort of formatting applied as annotation:

WB2014-BookmarkDescOptions

Secondly, like with the new selection tool, objects are deemed to be within a bookmark even if they only overlap and are not fully contained, like this example that picks up and moves the Clipper transformer:

WB2014-MovingBookmarkContents

Tip: Bookmarks are now placed with their magnet turned off by default. That means you won’t place a bookmark and accidentally pick up other features. You can move and rearrange it to fit before turning the magnet on.

EvangelistBanner7

Edit Attribute ValuEvangelistNumber5e

This is an interesting update, and one you’ll need to know about when you open an older workspace in 2014.

In brief, the update is that we’ve removed the functionality for constant values (which used to look like this):

WB2014-ConstantsFrom2013

…and replaced it with a new “Edit Value” tool. When you open your old workspace in 2014, constants will be replaced with functionality like this:

WB2014-EditValueAppearance

Why have we done this? Well, it was to add the ability to construct or compute a value, rather than just entering a constant. You can change (or add) attribute values by right-clicking the attribute and choosing Edit Value:

WB2014-EditValueFunctionality

This will let you enter a constant value as before, or you can use the […] button to open an editing window, or you can use any of the options on the drop-down menu:

WB2014-EditValueDropDown

So now a “constant” is anything but constant. It can be constructed with a text editor, computed with an arithmetic editor, set to a user parameter, have a conditional value, set to null (yes, a real null), or emptied completely.

Tip: Did you look closely at the “expand” arrow on the Writer feature type above? Yes, it is colored pink. This is to show you that some items are set this way, even when the list of attributes is closed. Similarly, it will be red if there is an attribute not receiving a value (and therefore with a red port).

EvangelistBanner7

Dataset ParameterEvangelistNumber4

Right-click a Reader feature type and you’ll find a new option on the context menu:

WB2014-RightClickFTForDatasetParam

Despite how it sounds, you won’t be editing the file contents, just setting the source dataset. In short, this is a shortcut to the “Source Dataset” parameter in the Navigator window.

Why have we done this? Well, the first reason is because a shortcut is always good! At least I think so. This is a great way to make a change without having to browse through the Navigator window to find the right parameter. We feel the canvas should be the main focus of your attention, and the more you can get done without leaving the canvas, the better.

But, more than that, we’d seen some new users have difficulty understanding the link between the Writer in the Navigator window and the Feature Type object on the canvas. So this is an attempt to make that relationship more apparent. In future I think we’ll try and highlight that a bit more, by maybe color-coding them, or having one highlight when you click the other. Something like that. If you have any ideas, let us know.

EvangelistBanner7

Help WindowEvangelistNumber3

This is definitely one of my favourite updates. If you’re looking for the window labelled “Transformer Description” in 2014, then you’ll find it has now simply been relabeled to “Help”.

OK. That’s not particularly great in itself, but the reason it was renamed is….. ALL objects in the canvas now provide information in that window when they are clicked on. For example, click on a feature type and the Readers and Writers help appears in the window for that particular format.

Similarly, if you click on a object like a bookmark or annotation, that too brings up the relevant help section from the FME Workbench documentation:

WB2014-HelpWindowAnnotationHelp

So now there is basically a shortcut from any object to the help documentation for that object (and you know how I like shortcuts!).

Tip: When the cursor focus is on the Help window, Alt+Left Arrow, and Alt+Right Arrow, can be used for navigating back and forth between previously viewed items.

EvangelistBanner7

Collapsible Parameter PanelsEvangelistNumber2

We’re getting close to the end of the list now, so let’s keep this one brief.

Some transformer parameter dialogs were getting too long; in fact some had so many parameters that the dialog might not fit on the screen any more. So what we did in 2014 (actually a 2013 Service Pack, but who’s checking?) was to implement sections of parameters that could be collapsed. For example, take the DWGStyler:

WB2014-CollapsiblePanels

Here the parameters have been grouped into Blocks, Lines, Areas, and Text so that you can open the parameters to style only the geometries you have. You no longer have to wade through a bunch of block parameters when you really want to style text features. Similarly we’ve implemented check boxes so those values can be all greyed out unless you choose to set them.

We’ve reviewed most transformers and made this update where we thought it was necessary. If you think we’ve missed any out, then let us know.

EvangelistBanner7

Selection ToolEvangelistNumber1

The final one in my list revolves around the changes made to the selection tool and cursor.

The first is such a small thing, but with a big impact. In brief, a selection envelope picks up any object that overlaps, not just ones fully inside. As an example, look at this screenshot:

WB2014-SelectionToolChange

In FME2013 I’d have to draw the envelope around the entire set of feature types to select them all. In FME2014, I don’t need to do that. Just having the envelope overlap them is enough to select everything.

I realize this is a change in behaviour that might cause a little confusion at first, if you draw the envelope around the objects and pick up something else by mistake, like this:

WB2014-SelectionToolOops

So you’ll have to be careful about this at first, particularly when you are selecting items for deletion, because (for example) if you have a connection line passing through the middle of a bunch of transformers you can select and delete that by mistake. But trust me, the learning curve isn’t steep and when you get used to this behaviour, it is better than before. I’ve been using FME for nearly ten years now, so I’m not just saying that – I find this way more useful.

One other change with the selection tool – when you are in zoom and pan mode, the right-click mouse button now reverts into selection mode (instead of opening a context menu). It’s basically a short-cut so you don’t have to go back to the toolbar to switch back and forth between windowing and selection. In the Data Inspector we set up the <Shift> and <Ctrl> keys to change from selection to zoom-in/zoom-out; we just can’t do the same in Workbench because those keys have other uses. So this is as close as we can get.

Update: Since the time of writing, this behaviour has been reverted, but can be turned on under Tools > FME Options. Personally I’d go and turn it on straight away and if you ever want to use the old method of selecting objects (i.e. the object has to be fully in a selection envelope) then simply press the <Alt> key while you are drawing the envelope.

EvangelistBanner7

I just wanted to end this article with a shout out to my Pro Services colleagues, the Build-and-Release team, and of course to our developers too. FME 2014 represents a huge update to our product and – even with the great features described here – not all of the effort is apparent from the user point of view. You can take it from me that the work was far-reaching and arduous (in fact I recommend all GIS folks work for a software company at some point, it is so enlightening).

It’s a privilege to work with you all, and an honor to get to present your efforts to our customers via this blog.

Mark

NewBlogSignature

 

About FME Annotation Bookmark FME 2014 FME Desktop FME Evangelist Parameters Usability Workbench

Mark Ireland

Mark, aka iMark, is the FME Evangelist (est. 2004) and has a passion for FME Training. He likes being able to help people understand and use technology in new and interesting ways. One of his other passions is football (aka. Soccer). He likes both technology and soccer so much that he wrote an article about the two together! Who would’ve thought? (Answer: iMark)

Comments

4 Responses to “FME 2014 Sneak Peek: Top 10 Workbench Optimizations”

  1. Batesy says:

    Hey Mark, with the new Transformer “decorations” could you guys add in a decoration to highlight out-of-date / deprecated Transformers?

    For example, if I open an old FME 2011 workspace which contains a deprecated Transformer like 2DCreator (replaced by Creator), could you decorate it differently? I think it’d be really useful to allow us to easily identify deprecated transformers as their replacements often have improved functionality and I want to keep my old workspaces as up to date and efficient as possible. Or is there another way to do it?

    Cheers!

    Batesy

    • Mark Ireland says:

      That’s not a bad idea at all. I’ll raise that one with the developers. Too late for the 2014 release I’m afraid, but we’ll see what they can do for the future.

  2. Eric says:

    I really like these changes. And I like how easy 2014 makes it to change the source dataset. It would be very convenient for me if they were color coded. But to me it would be even more useful to read the whole, or at least more text (maybe with control for the number of characters that show?) of a writer/reader name on the canvas. I edit/receive a lot of files that start with the same first few letters. I often have various input readers with similar names.

    • Dale says:

      Thanks Eric,

      We’re toying with resizeable transformers and feature types for FME 2015. We did work hard to get more characters displayed in the FME 2014 canvas, so the situation is the best it has ever been…but it remains an issue we’re innovating around.

      We realize its important and thank you for further confirmation.

      All the best

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Posts