Across the Pond with Shannon Hale

Shannon is Senior Product Manager for Declarative Apps at

@abhinavguptas and I were curious as to the identity of the creator of the SetupScripter, which is now incorporated into the Org setup menu. I dug around a bit and managed to uncover her real identity – community please meet Shannon Hale, Shannon Hale this is the community. She didn’t just stop with that wonderful piece of UX but has moved onto bigger and better things, but I’ll let her tell you about those.

If you’d like to learn more about the genius that is Shannon or just have a chat with her you can get her on twitter at @shannonsans or @bathtubdreamer. You can also check out her online presence at and

Onto the Q&A!

Who is Shannon Hale? How did you get into software development and UX design?

I started out as a writer, but in a different field — I wrote and edited for some independent Canadian music and culture magazines. I started technical writing to help pay the bills, and from there wandered through a series of tech positions: technical training, systems analysis and design, and software development. In 2001 I became obsessed with why a product I was coding was difficult to use, and began to independently study interaction design and user experience.

When I’m not being a complete geek — which I am even at home, I always have personal and volunteer web projects going on — I’m sewing, knitting, or binding books. I’m one of those people who always needs to be doing something with their hands.

How much of your career have you spent at sfdc? Have you always held the same position?

I joined Salesforce in early 2008 as a UI designer for the platform. That’s slightly less than a quarter of my tech career, and it was the first time my official title included design. I’ve been involved in a few initiatives that bridge UX and engineering — I’m a passionate advocate of web standards and universal accessibility, so I push hard for those in our product. The UX team does a lot of usability testing at Salesforce, so I keep up my coding chops prototyping — I’m a big proponent of interactive prototypes.

So, how awesome is the Setup Scripter?! (rhetorical of course). How did the idea come about? How did you bring that idea to life?

The Setup Enhancer for Salesforce userscript fell out when the Platform UE team started talking about small improvements we could make to Setup to make it easier and more efficient to use. We know there are issues around organization and navigation, but they are hard to fix and require long-term changes. One simple idea was to provide links to expand or collapse the tree so that you could use the browser’s native Find to locate elements. I’d used Greasemonkey userscripts in Firefox, and decided to try writing one. Expand/collapse turned out to be really easy, so I added functionality to hide/show the sidebar. Then I went really crazy and added the filtering.

It was really just a proof of concept, to see if it would be useful. I posted it on, and made a couple of improvements over the first few months, like making it work with Japanese and other multibyte languages. I was surprised how many installs it ended up getting, just through word-of-mouth (or Tweet, or blog, as it were). And earlier this year, as you know, we implemented it natively as Quick Find in the app.

The thing that was unexpected and, for me, exciting, was when other people started sharing their own Greasemonkey scripts and Chrome extensions. I regularly check out to see what new things people are coming up with — I think it’s a great tool to help understand where our UI falls short.

What other parts of the sfdc UI/UX have you worked on? What are you working on at the moment?

The Setup Enhancer script started a conversation around other platform improvements, and I spent most of last year doing research and design around that. That work is being continued by the Platform Experience team, and they’re off to a great start with the Quick Access Menu and the new overview page. I’ve also worked on, Cloud Deploy, and the IDE.

My latest project is the Schema Builder, which is out in view-only beta in Winter ’12 and will continue to be rolled out over the next few releases. It gives you a global view of your objects and fields, and their relationships to each other. It will also allow you to create and edit objects and fields in the context of that view. I’m admittedly biased, but I think it’s actually fun to use — which is what you strive for, as a UI designer. It makes me happy to build products that delight users and make their jobs easier. I’ve just started a new role, as Senior Product Manager for Declarative Applications, that will allow me to do this even more. I’m looking forward to exploring how good user experience can drive products.

What small projects would you suggest for the community? I’m sure you have a list of awesome things you’d love to see/do but just don’t have the time.

We have a great, engaged community around – we’re really lucky to have so many customers and partners who participate. A lot of ideas I’ve had have already been taken up, either internally or by the community, which is awesome! The success of any platform is based on the energy and involvement of the community that forms around it. I’m frequently amazed at what people come up with.

Leave a Comment