A Whirlwind Tour of the GoodData Experience
In my last post, I promised to “show you exactly” what the GoodData platform looked like. I talked about lofty goals and agile BI principles but in this post, I want to bluntly point out the “salient points” I feel are unique to our platform. I do this from a “green user” point of view, being fairly new at GoodData (but having struggled with other BI platforms in the past) and still exploring its deep capabilities.
I feel this brings subjective (read: before the Kool-Aid) value to answering the questions most “newbies” have about GoodData. Essentially: show me what it does, what’s so special about it, and how it can help get my job done. So I’m going to drive you through a whirlwind (but detailed) tour of the GoodData platform. I want to nail all the important points quickly. Fasten your seat belts (and grab a coffee) this is going to be interesting.
When you log in, the first thing you see is your “application pulse”.
The application pulse is a history of all member activity on a given project. So as you can see from the screenshot, in this case, I’ve been messing with attributes, updating and annotating reports, creating metrics, and commenting (an interesting capability I will describe later).
Another thing that immediately drew my attention is the concept of “tagging”. Tagging is certainly nothing new in the Web 2.0 world (and conceptually) but I haven’t seen it applied to BI in such a nifty way before:
This fairly innocuous feature allows you to immediately categorize and pinpoint all project reports by keyword. So for example, if I click on “ranking” I will see all reports that were generated having to do with ranking metrics. Nice.
The next feature I find unique is this inherent ability to collaborate and bring people into the fold of a BI project. Think of the project metaphor as a “walled garden”. You can invite people to the party. So instead of spending time and effort creating barriers and opaque walls around your data, GoodData encourages a more democratic “look at what I’ve got” approach to BI. You can invite people with varying levels of authority on each project, of course, but the “inclusive” (what I call intra-social) nature of this platform is truly game-changing for the world of BI in my opinion:
In this example, you can see I invited my buddy Ray into this project. This makes sense as Ray works support and knows the product inside-out. When I get in trouble or have a question, it’s really handy to have him on board so he can dig into my problem up close and personal touching the same data I am.
Moving right along, once I upload my data, I want to get a “big picture” view of the model I am using. Ideally, I want to see an ERD with clearly delineated facts and dimensions. Show me what I can measure, and show me what can I slice by. So to do this, I navigate to my model area and examine this GoodData generated situation map:
Right away I can see I have two possible facts (measures) - those are the pink bubbles. Everything else is about my slicing paths. If I add joins to my data subsequently, the model map is updated as well. When you hover over the map, an auto-zoom feature pans along with the cursor. This is so simple it’s hardly worth any comment. Very elegant.
Let’s talk about projects now. What are they? GoodData projects are simply folder hierarchies. I can create and name folders at will. This helps me organize my reports and analysis by topic.
I get the default “My Reports” folder with my project but I also created the HR and Sales folders specifically. Because I want to separate my HR analysis from my sales ones. Or I can create and work on reports in My Reports and then selectively drag and drop finished product into the corresponding buckets. Again, not rocket science, but a darn nice intuitive way to let you work.
The next one is a biggie. It’s called the Slice and Dice Wizard. No it cannot core “an apple” as well. But it allows normal people (that’s most of us) to do sophisticated analytics based on a simple common capability: that of speaking English. You can just ask What and How of your data. Basically you tell the GoodData slicer what to measure (that’s your metrics, or facts), how to measure it (or them) - that’s your attributes or dimensions - and how to filter results if needed. A picture is worth a bunch of words:
You can see the wizard “knows” what measures are available to me (sales and employee) and it knows what metrics I can play with. Default metrics are automatically generated (namely SUM and AVG as you can see here) but you can define custom ones (using MAQL, the GoodData multi-dimensional query language) and here I created a NetSales metric I defined as (Sales - Costs). But here’s where this gets _really_ interesting:
In this case I expanded the How tab so I’m looking at attributes. You can see I have both states and cities in there, and all states are selected. Consequently, if I click on City, I’ll see all available cities for all states, like this:
But now, suppose I want to restrict this to just CA, like this:
When I go back to Cities, this is what I see:
In other words, GoodData automatically adjusts what I can select based on the underlying relationships in the model. This is really huge for one simple reason: I can’t screw this up! That’s right folks. In many other products, I can easily get tangled up with incompatible combinations. With GoodData, it’s like having a GPS to find your way around Tokyo. Good luck without it.
Quick note on filtering. GoodData has canned default filtering options:
But, as usual, there’s a way to add custom filters by clicking on Add Filter. Another example of simplicity first, depth next. It’s the 80/20 rule essentially but this helps me get stuff done very quickly (I can always refine it later on, but in the meantime, I have something to show!).
Another convenient touch: context-based right-click menus. You can control columnar and cell aspects by right-clicking on these objects. here for example, a quick right-click allows me to get a top count on all numbers in the selected column very efficiently.
Couple of nice annotation features here:
On my pivot table views, I can annotate at the cell level. When I do that, the cell gets a little “earmark”. I might want to point out some anomaly there and share that information with a colleague or perhaps a manager. I can also tag the report with a less granular comment like this:
So here I have access to a comment stream about a give report. Not only that, but each stream is persisted by snapshot. So when you take a report snapshot (a “copy” of the report and its data at a given point in time) the snapshot contains all the comment history for that report up to the time of snapshot. This means I can keep and analyze threads of “though” in time. This is awesome from an educational, documentation and historical perspective.
Let’s talk “eye candy” for a moment. As a previous Excel user, I take all the UX niceties of drag and drop and cross-tabulation (to name a few) for granted.
In this report, I can swap headers and metrics with the click of a button. As such:
This is fairly self-explanatory but quite a convenience. I can also drag and drop rows transforming them into columns and vice-versa. Notice the handy sorter controls as well. Another bonus (actually more of a necessity in BI!) is click and plug drilling capability. It looks like this:
In this case GoodData presented me a full set of available drill-thru variables. I picked age. So when I double-click a salary cell in my report table, I will see a drill-down table of this salary aggregate by age. Navigating through OLAP hierarchies is a linchpin of BI. Making it this easy is a linchpin of GoodData.
Let’s move on to charting real quick:
I’m not going to include many pretty fancy-shmancy charts per say because everyone has seen those and to me the value is more in the UX flexibility allowing quick “trial and error” configuration. This is what this does:
I can drag and drop attributes and metrics onto various axes and color codes. Advanced configuration allows me to tilt and angle text on charts, define custom number display formats and numerous other convenient tidbits that simply make life easier (and more striking).
And finally, as part of this relatively short introduction, I want to talk about the dashboards that make all this analysis actionable.
I can push reports out to dashboards in a tabbed visualization paradigm. If I click on the title, I go right back to my report where I can change and edit anything I need. And as if that weren’t enough, I can “mashup” reports and dashboard with external platforms like iGoogle, for example (you can see the share button next to the dropdown box):
When you click share, you can add directly to another site (iGoogle in this case) or copy/paste the iframe script for the report! In iGoogle, it looks like this:
Of course in this example, I have a dashboard and a report I mashed together from GoodData.
So what should you take home from this information? Here are some recent thoughts I’ve had in my own GoodData discovery process. There’s more to this platform than meets the eye, and that’s part of its elegance and power. Because it presents in a very user-friendly form and hides complexity in subtle yet easily discoverable ways. And every time I think I hit a limit, it turns out there is yet another way to go deeper, yet another way to extract more functionality.
The “intra-social” collaborative features are truly unique in my experience. Sure, you can shlep spreadsheets around, mess with SharePoint (bring your checkbook), or pass XMLA URLs around but these techniques work around “sealed” hard-to-access entities. Your data is here, your cube server is there, your users and peers are somewhere else as well. It’s an entirely different experience evolving in the GoodData world with a tool that works with and not against you!
2 Comments have been made so far
Wow. I’m impressed. The tagging stuff is really neat, as are the annotations.
Hey Justin! Thanks for following the blog stream
Yeah there are dozens of these “little” features that really make your life easier and richer. I’ll be doing architectural deep-dives in the coming weeks so stay tuned. I know those will be of interest to you as well
Best,
J.