Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

Review: Qlik Playground

0.00/5 (No votes)
21 Nov 2016 1  
Qlik Playground is a free programming environment that allows you to explore, quickly test, and use your most complex and innovative data driven application ideas using Qlik technology.

This Review is from our sponsors at CodeProject. These reviews are intended to provide you with information on products and services that we consider useful and of value to developers.

What is Qlik Playground?

Qlik Playground is a free programming environment that allows you to explore, quickly test, and use your most complex and innovative data driven application ideas using Qlik technology.

Built for developers by developers, Playground gives you one-of-a-kind access to Qlik’s Engine and APIs. Playground gives you the tools to learn from others, and Qlik’s Engine and APIs give you the time to spend on the coding you enjoy.

What are the headlines?

Qlik created Playground for developers who work with data, but might not have had the chance to try out Qlik’s tech yet.

For me, it is a great programming environment to draft ideas quickly. In this review, I’ll point out the features making this possible, as well as look at the APIs and how they interact with the analytics engine.

Getting started

First up, registering is as easy as authorizing Playground with your Github account. No problems there. Once you sign in there are various predefined datasets, examples and walkthroughs you can check out. There are also templates on Github.

Who is Playground for?

The best aspects about the Playground programming environment will depend on your current ‘relationship status’ with data. Personally, what’s most striking to me is how quickly I can use the APIs and analytics engine to put dataviz ideas together. But, if you’ve not done much development with data before, Playground’s pre-created visualizations in the Capabilities API, data connections and example apps would probably be a good starting point to get to know the basics.

The pre-defined connections let you use personal data, for example from your Twitter account. There’s not a huge variety when it comes to these data connections, but plenty if you’re just testing the waters. There is a wider selection of sample data sources however, from morbidly fascinating data on accidents in London to morbidly entertaining stats on the numbers of zombies offed by Walking Dead characters. I spent a good while playing with some of these.

APIs a-plenty

The core technologies behind Playground are the analytics engine and the APIs, which are used to access various aspects of the engine or build on top of it.

The analytics engine creates associations between everything in your project. This means that the engine knows if you select a filter in one visualization, and automatically updates other visualizations within your project. It knows what data you already have selected in your project, and allows for powerful search functionality which understands the relationships between values.

While the Engine API is the one primarily used to interact with the analytics engine, there is a simpler API known as the Capabilities API which governs embedding out of the box visualizations.

The Engine API uses WebSockets, which passes information between the Qlik Sense engine and the host machine via JSON protocol. It works on any platform and with any programming language that works with WebSocket capabilities. By using the Engine API it's possible to interact with data in almost any way you might want, from filtering lists and tables of data to performing searches. (Search is a one of Qlik’s best features in my opinion, which I’ll come discuss shortly.)

What I liked

The Visualization API in the Capabilities collection, which simplifies embedding visualizations in web pages, is sure to win over a lot of developers that don’t want to or don’t have the time to create visualizations. Anything from the included library of visualizations will be fully interactive from the get go. Given the extra coding needed to make this happen with other tools, I’m a fan.

As I mentioned previously, the search functionality is extremely powerful. Due to the associative way the engine pulls information and performs data modeling, you have the ability to create freetext search. I even found an associative search extension in their open source community. Because the engine creates associations from your data and holds the information in RAM, every result is displayed with relevant information about its selection state. Search information is returned very quickly as well - another benefit of holding associations and calculations in memory. And, not having to write queries to surface data is pretty darn handy...

These abilities stem from the way data and its associations are dealt with. Where you might normally work with a table of data, in Playground you work with ‘Hypercubes’. Although ‘Hypercubes’ might sound intense, it’s just a way of describing a table of data and the associative meta-data which accompanies it. The best way to think of them is as multi-dimensional cubes or matrices of data. It’s thanks to Hypercubes that we can create associative and even freetext search.

I also like the fact that the Engine API works with any language that has a websockets library- which gives me options to work with any web development language. If your application is heavy in visualizations, ReactJS and D3js are good options.

Conclusions

Qlik’s tech can save time in a wide number of situations, and can now be accessed through the Playground programming environment.

For example, if you wanted to use vanilla Javascript to create your own API to connect with a Mongo or SQL server, (and deal with merging state and selections) you would face a tall task. Instead, Qlik’s Engine and APIs can cover that.

It’s worth getting to know this platform. Playground does what it says on the tin, providing an easier way to draft and explore ideas. No server-side setup required!

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here