Embedding Analytics with a Software Development Kit
This video goes beyond customization via white labeling and iFrames to the use of a software development kit (SDK).
Using iFrames and white labeling for customization, there's always a tradeoff between security, interconnectivity, and the integrity of the user experience. You have more control and more connectivity with an SDK. You can build a truly custom application without starting from scratch. A robust SDK should include the ability to embed out-of-the-box charts and new charts as well as their accompanying data and metadata. It should also allow you to embed just data that can feed pre-built visualizations and, very important, integrate using REST APIs.
I'm Ryan Haber. I work at Zoomdata with our APIs. I help document them, I help market and sell them, support them with customers, build samples with them. I like to think of myself as our API ambassador.
Beyond White Labeling and iFrames
Today I'm gonna talk about using a software development kit to make your own custom data visualization application. We talked earlier about how you could use iFrames to embed one application in another and how you can use white labeling to make them look more or less integrated. But, there's a problem in that really what it comes down to is that with iFrames and white labeling, there's always a tradeoff between security and interconnectivity and integrity of user experience. Also, because the parts can't necessarily communicate with each other, you don't really have one holistic application.
More Control and Connectivity with an SDK
Now, a software development kit (SDK), on the other hand, lets you build your own application that is yours, not like anybody else's, but without starting from scratch.
So, there's another tradeoff. You do want to make it easy on yourself, and on that end, you have white labeling and embedding using an iFrame. But, on the other hand, though, if you have a greater skill set and a greater desire for a more integrated holistic application that's your own, then you definitely want to go with a software development kit and use it to build an application.
What Makes a Good SDK?
So, a good full featured software development kit for data analytics has to include a few things. One thing you want it to do is you want it to let you just simply embed charts, just charts, no bells, no whistles, but you also want it to provide all the data and metadata that you need to provide functionality for that chart so that your users can do things like press a button to change the grouping of the chart or to change the metric of the chart.
Add Custom Charts
You also want to be able to add custom charts to the repository of charts at your disposal, because for instance, you might be migrating off from another platform. Let's say you've been building your web pages from scratch, and you've been using a very standard data visualization library like D3. D3 is great. It's kind of an industry standard. If you've spent a lot of time building a particular chart for your particular application, you don't want your SDK to force you to jettison that and start over again. That is reinventing the wheel in a different way. So, instead, you want one that lets you take that chart you've already built and bring it into the platform so that you can then use the platform to embed it along with all the other stuff.
Embed Just Data
You also want a platform that will let you embed just data, and the applications of this are wide ranging. For one, in that scenario where you already have your application built with your D3 chart in it and your D3 chart just needs data, well, you could just feed it data from the platform from the software development kit.
On the other hand, though, really, the sky's the limit when you just have this raw data query. For instance, you could even use it for form letters so that the same data that's supporting visualization for like say customer portals showing them about their electric bills could also be used to populate their name, address and their electric usage, put that chart into the thing, turn it into a PDF and slip it in the mail to them. So, a very versatile SDK is essential because of the number of opportunities it opens up.
Good SDKs Integrate Using REST APIs
Something that a lot of SDKs omit, though, is to integrate with REST APIs. Very often, they just wrap over REST APIs, but they don't come alongside REST APIs.
Now, if you have REST APIs also, then you can just--you can fully expand--you can explode the functionality like a firework.
SDKs Should Use the Latest Programming Concepts