A New Extension Marketplace
Bringing the Tableau Extension Gallery from concept to reality in just 3 months
The Goal
As the developer platform team worked on the new Extension API, we discovered a major adoption blocker for extensions. This was the first ever API geared towards non-technical users and these users did not feel comfortable downloading and using files from developer websites.
WE CHOSE TO BUILD AN EXTENSION GALLERY FOR THOSE USERS TO FIND AND DOWNLOAD TRUSTED EXTENSIONS.
However, we only had 3 months before the Extension API was scheduled to ship. Additionally, we had no in-house developers on this project. Instead, we enlisted the help of a consulting company based in Hungary.
We decided to aim for a beta version of the Extension Gallery that would ship in tandem with the Tableau Extension API.
My Role
I solicited feedback from the team about the goals of the gallery, and prioritized the features that would exist in the first version. I worked with my Visual Designer and the Developers in Hungary to create a design that was feasible on a short time frame. Finally, I completed the final version of the Gallery CSS code so that it met Tableau’s visual and UX requirements.
Project Kickoff
Scoping
I began by tightly scoping the work. I decided that the gallery would include 2 core pages, and reviewed the content on each page with the team.
Early Mockups
I mocked up a few layout ideas during the scoping process to help the team visualize what a gallery with these features might look like.
Creating the Design
Once the scope of the project was approved by the team, I created an IA diagram that shows all possible flows a user can take through the gallery. This helped our development team in Hungary to quickly understand the nuances of the user experience despite our time zone difference.
Explorations
I worked closely with my visual designer to explore and evaluate design choices, and ensure that we were keeping future features in mind in our original design. Some of our explorations are shown below.
Main Gallery
Extension Details Page
CSS Updates
With one week to our code-completion deadline, the design was complete, but the final website was not polished or responsive on many desktop sizes. It didn’t meet Tableau’s standards to ship. The development contractors in Hungary weren’t familiar with Tableau’s visual design language. Additionally, the 10 hour time difference between the developers and designers made it difficult to quickly communicate and iterate on the fine-tuned adjustments that were needed.
I gained access to the code repository, and made the final touches to the CSS, HTML, and JS code that we needed in order to meet the requirements to ship the gallery on time.
Final Flow
The slideshow below shows the flow for a user to download an extension from the gallery, beginning in Tableau Desktop.
Future Work
In addition to the work for the first release, I created user journeys for a variety of scenarios we expected to support in the future.
The example below shows a developer uploading their extension to the gallery through a new developer portal.
REFLECTIONS
This team functioned somewhat like a startup within Tableau, and working this way was exhilarating. I learned that being part of a quick-moving team necessitates flexibility, and a willingness to step out of assigned roles when necessary.
While I was conflicted about my decision to jump in on the code, it ultimately enabled the Gallery to ship on time - which contributed to the broader Extension API experience. Additionally, this project gave me first-hand experience bringing a design-spec to reality. Ultimately, coding for a week made me a better designer.