This gets very technical and there aren’t any spicy new UI features further down. Only read on if you’re into the nerdy details! 🤓
The way insights work in TelemetryDeck is this:
Step 2 is where we’ve changed things a lot. Previously, an insight would have all its settings stored in separate database fields, except for one special case: if an insight contained a hand-written TQL query, all database fields would get ignored and the query generation functions would just return that hand-written query.
Well, as of now we’re always storing the filters in the field for the TQL query, which doesn’t have to be hand-written any more. The filters are stored as TQL filters anyway, and the query generation functions will take into account filters from those fields and combine them with the rest of the query generated from the existing fields.
We’re deprecating the fields we’ve used for generating filters previously, and as soon as you open an insight using the new UI, we’re converting the old filter style into the new one and store it in the tql_query property where it belongs.
Why are we doing this? Because it allows us to better push for new features and we can update our visual editors to use the same language that the custom written TQL queries use. This way, any new development is available to both, and you can use them interchangeably!
To support TQL’s new features, we’ve split up calculation of query results into multiple steps:
This multi step process allows us to offer a very condensed and terse language and still be compatible with our backend time series databases, as well as allowing you to run all kinds of queries directly and still have excellent queueing*, caching, and make sure everyone is only accessing their own data.
*what a fun word to write
Finally, TelemetryDeck has undergone a slow transformation of the insight editor, making it easier to create and manage custom insights.
As I’ve said above, we’ve already streamlined the process by moving various keys and functionalities directly into the TQL query, and we’ll continue that process in the future. Next up is the breakdown_key and group_by properties, which are also duplicated on both sides right now.
With that process underway, we can also start working on an editor that will work the same, regardless of wether you’re writing a custom query or just assembling a quick insight. You’ll be able to use a graphical UI or a JSON text field to edit your TQL queries (at this point, we’ll probably have to rename the “Custom Query” mode to something like “advanced” mode).
With the release of TelemetryDeck Version 2023-2, users can now take advantage of a range of new features and updates to make the most of their data. Whether it's using the new filter editor, taking advantage of custom query extensions, or quickly gaining insights using the improved insight editor, there's something for everyone!
I’m super happy to be able to finally release this into the world. Next up we’re full steam ahead of advanced features that build on these foundations, such as funnels, A/B testing features, or more.