What's new with Tableau Developer tools: New in Tableau 2022.1
I don't pretend to know the Tableau developer space, so I brought in Andre to walk us through connected apps, embedding API v3 and embedded metrics.
- Tableau's developer APIs fall into three buckets — connect (connector SDK, hyper API, web data connector), integrate (embedding API, dashboard extensions) and automate (REST API, webhooks).
- Connected apps replace trusted authentication for Tableau Online, using industry-standard JSON web tokens (JWTs) and letting you scope access to projects, sites and specific domains.
- Embedding API v3 is a ground-up rewrite built on web components (the tableau-viz tag), promising easier integration, better performance and readiness for the death of third-party cookies.
- Andre's embedding playground lets you mock up an embed, tweak properties like toolbar, tabs, width and device, then copy the generated HTML straight into another tool.
- Embedded metrics let you drop a single lightweight number into tools like Notion, Slack or Teams, taking analytics to where people already work rather than forcing them into Tableau.
- Meet Andre and how we know each other0:00
- Andre's route into data dev3:16
- Staying motivated learning web development5:57
- What is a Tableau Data Dev12:20
- The Tableau API families: connect, integrate, automate15:06
- Connected apps explained22:19
- Embedding API v3 and web components30:17
- The embedding playground demo35:07
- Embedded metrics45:08
- Where Tableau's developer tools are heading49:06
0:00Hey, in today's video, we are doing
0:01something very different.
0:03And as you can see, I'm joined by Andre
0:05today. And normally,
0:07what I do on the channel is I'd showcase
0:10some features, and I'd
0:11walk you through how they work. But when it
0:13comes to the Tableau
0:14developer space, I just don't know anywhere
0:16near as much as
0:17Andre. So I thought instead of pretending
0:18to know what I'm
0:19talking about, I thought we just have Andre
0:21here today. And we do
0:22a collaboration. So Andre, take it away,
0:24introduce yourself.
0:25Yeah, thanks for that, Tim. So I'm Andre, I
0:27'm a Tableau data
0:29dev ambassador. For the second year in a
0:31row, actually, it was
0:32in the inaugural group. And yeah, I've been
0:36using Tableau
0:38for eight years and developing on top of
0:40Tableau for five
0:41years, participated in quite a few hackath
0:45ons and created loads
0:47of video content, also lots of blog posts
0:49around Tableau, but
0:51also around other things like web
0:53development and cloud and
0:55data engineering. And all of that kind of
0:57fits into that
0:58whole kind of data dev space. And I'm
1:01excited to kind of look
1:03at the new stuff that that's there for the
1:05Tableau data
1:05that's today.
1:06Yeah, exactly. It's one of those it's one
1:08of those interesting
1:09things, because Tableau releases things
1:13like API improvements,
1:15and essentially features in the data dev
1:17space don't come out in
1:18the usual quarterly cadence, they just sort
1:20of come out when
1:21they're ready, right? Yeah, yeah, yeah,
1:23yeah, exactly. And
1:24so and so over the last, let's say, six
1:26months, there's been
1:27actually quite a few that many people might
1:29not have noticed or
1:30might notice. And things will cover a
1:33little later on
1:34throughout the video. And we've put timest
1:37amps. So if you're
1:38already getting bored, and you want to jump
1:40ahead, skip to the
1:41relevant section, we'll go into those
1:43things in lots of detail.
1:44So have a look at the timestamps as well.
1:46But it's probably worth
1:47starting by trying to understand sort of
1:49how we know each other,
1:50if that makes sense. And sort of how we
1:53work together. I can
1:55start by just saying you're a colleague. We
1:58work together at
1:59the Information Lab. So I'm very fortunate
2:01to work with someone
2:02like Andre actually, he's an incredibly
2:04talented person, not
2:05just from a Tableau perspective in terms of
2:09data dev and just
2:10web development in general. But also, I
2:13think I personally
2:14really appreciate being able to bounce
2:16ideas off you in terms of
2:17the way platforms and technologies come
2:19together. And
2:20also the you know, the good old sort of
2:23typical dev chats that
2:24we have about, you know, startups and stuff
2:26like that as
2:27well. And that's sort of predominantly I
2:29think how we
2:30know each other. But then also, we we've
2:31actually been at a
2:32hackathon together at the last in person
2:34conference, which was
2:36in Vegas 2019. Exactly crazy, right?
2:40Yeah, we we walked away with a within
2:43awards.
2:44We did win an award. I'll try and find a
2:47picture and put it on
2:48screen. We were coding together coding. I
2:51can't really say I was
2:52coding but we were hacking away with lane
2:55as well lane who was
2:57at the time a colleague but now has moved
2:59on. But nonetheless,
3:00yeah, it was a pretty pretty fun experience
3:02. Actually, it was
3:02nice to be sort of part of the atmosphere.
3:04And there are lots
3:05of great solutions that are built on that
3:07day, I think
3:07around the new API's at the time, which is
3:10now quite old.
3:11So yeah. So let me ask you this, we sort of
3:15know how you know how
3:17and how we know each other. But how did you
3:19become a, I'm going
3:20to say Tableau developer. And I don't mean
3:22that in the sense of
3:23the traditional sense, like, you know,
3:25building workbooks. I
3:25mean, how did you get into the data dev
3:27scene?
3:28Yeah, that's a good, that's a good question
3:30. When I started
3:33with Tableau, as I said, like eight years
3:35ago, I really
3:36enjoyed like, building things with Tableau,
3:38like the first
3:39dashboard that I built was like, Oh,
3:41actually, you can make this
3:42really cool thing really quickly. But then
3:46also, I
3:46started realizing also really quickly that,
3:49hey, building on
3:50top of Tableau is very exciting and doing
3:53more with the product
3:55and extending the product. Right. Kind of
3:57the very first
3:58kind of API that I started working with was
4:01the extensions,
4:02the dashboard extensions API. Back then it
4:05wasn't like an
4:06alpha version. So I was just like hacking
4:08away and like very
4:09early code. And that's kind of how I rolled
4:12into it. And then
4:14started just learning some of the hackath
4:15ons and good learning.
4:18A project that I worked on was where
4:21another technology that we
4:22specialize in is called Altrix. And I tried
4:26to make those two
4:27kind of work together more seamless. So
4:29integrate Altrix in
4:31a Tableau dashboard. So right users could
4:34then run their
4:35Altrix flows while they were like interrog
4:37ating charts and
4:38then getting insights in Tableau. So that
4:40was a little
4:41bit of a challenge that I set myself and
4:43how to do that work.
4:44And slowly along the way, you kind of pick
4:46up things like as
4:47you were saying about like web development
4:49and engineering.
4:51Yeah. That's the really cool thing about
4:53Tableau is that
4:53there's loads of like miscellaneous
4:56concepts around
4:57it. Yeah, we see loads of people interested
5:01in like predictive
5:02analytics because they they find that
5:04interesting, like
5:05integrating our server Python models into
5:07Tableau. There's a
5:09lot of like things you can specialize in
5:11and I figured out
5:12hey, this whole web development and API
5:14stuff. That's that's
5:15actually really cool to work with. That's
5:18kind of how we're
5:18all into it.
5:19Right, right. And I seem to recall I think
5:22you've studied
5:23the same Udemy course that everyone who's
5:25tried to get into
5:26web development has done, which was what's
5:28the name of the lady
5:29who runs that Udemy course? Do you remember
5:32the name?
5:33I remember doing one with Colt Steele. He
5:37did like to
5:38Oh, you did with the Colt Steele. Sorry.
5:40He's really good as well.
5:41Hashim Hashim is the one saying that the
5:44other one than Udemy.
5:45But I think everyone in web development has
5:48done like a
5:48handful of one of five or six web
5:50development courses. And
5:52they've used that to sort of kickstart a
5:55journey into it. One
5:56of the biggest things I always get asked by
5:59a lot of people who
6:00are new to data dev, and probably look at
6:02your journey,
6:03and they think, Oh, wow, you've you've come
6:05a really long way
6:06into the short amount of time. How do
6:08people sort of keep up
6:10the motivation because it takes time. It's
6:11not the kind of thing
6:12you can just, you know, it's not like
6:14desktop where you can kind
6:16of learn it very quickly. Tableau desktop
6:18is quite a
6:19straightforward tool to learn in a
6:20compressed amount of time. If
6:22you did a month of really focused learning,
6:25you could
6:25learn most of what you need to know. Yeah.
6:27But with web
6:27development, you need a lot more time and
6:29experience, right? So
6:30how do you keep that energy high? And how
6:31do you sort of
6:32Yeah, you really, I would say like, you
6:35really learn how to
6:37fail, that makes sense. You will fail more
6:39often than succeed.
6:40Like if you try something nine out of 10
6:42times, it doesn't work
6:43because you don't have the right skills yet
6:46to do it. Yeah, what
6:47I figured out is you really need to first
6:50find the best way for
6:52you to learn. So some people learn through
6:54reading books,
6:55others YouTube content, reading
6:57documentation, you need to find
6:59a mix of those elements in order to learn
7:02and keep on top of
7:04things. And what I realized a lot is that I
7:07learned a lot
7:08through examples. So if I see someone on
7:11YouTube building a
7:12particular project, and I think like, hey,
7:14I can like if I make
7:15few modifications, I can make it adapt to
7:17Tableau or to one of
7:18the other tools that we use. So I always
7:21try to like have a look
7:22at what other people are doing and then
7:24build on top of that.
7:25Right. But no, no one really always starts
7:27from scratch,
7:28right? That's not right. Always start with
7:30some idea or some
7:31kind of other project that people have been
7:33doing in
7:33another tool. And so yeah, it's, as I said,
7:37learn to fail,
7:38because there's so many elements to this,
7:40if you think about,
7:41hey, I want to learn how to embed Tableau
7:44in a website, for
7:45example, that sounds easy. And it has been
7:48made a lot easier.
7:49And that's we're going to look at later.
7:51But you still need to
7:52know the core skills such as HTML, CSS, and
7:55JavaScript, the
7:56building blocks of the web. So you need to
8:00understand those
8:01things. And you don't need to understand
8:04them like fully, but
8:05enough to make to make it work. And then
8:08slowly over time, you
8:10add features to it. And actually, for me,
8:13that's the fun
8:14bit about it is like that constant learning
8:17, you never had
8:18the idea. I know more than 1% of what to do
8:22, right? It's always
8:24like, hey, let's go next. And let's figure
8:25this out and figure
8:26that out. And new new products are being
8:28launched, which you
8:29want to learn. So it's that constant
8:31learning that that gets
8:32me excited.
8:33Right? Yeah, one that one of the things I
8:35always think of when I
8:39think about web development is you need
8:40enough to be able to
8:41reverse engineer what you find, right? That
8:44's that sort of that
8:45sort of the middle ground of how much
8:46knowledge you need. As soon
8:47as you know enough to right click inspect
8:50and understand
8:50what's going on on a web page. Yeah, that's
8:52enough. Yeah, you
8:54can get you can get started from there.
8:57Because then at least you
8:57know what terms to look for what
8:59technologies to invest in. And
9:02you can generally follow the discourse and
9:05the discussions
9:06around what's latest and greatest, you know
9:08, yeah, what's
9:09tableau doing with these languages and so
9:11on. So I think
9:12that's the sort of the high level overview
9:15you gave there is
9:16actually a pretty important grounding for a
9:18lot of people,
9:19especially if they want to get into this. I
9:21did a video on
9:21learning tableau. And the dev space is
9:23actually probably the
9:24least looked at part because people
9:26perceive it to be like
9:28this really big challenge. And it is Yeah,
9:30but I also say it's
9:31probably has the biggest reward because you
9:34get to enhance
9:34tableau well beyond what it can do today,
9:37you get to build new
9:38parts of tableau that don't exist. And that
9:40's probably the
9:40most exciting thing, right? Yeah, I would I
9:42would also
9:43suggest is when you start out with this is
9:45first figure out
9:47what you enjoy, and then build on top of it
9:49, you can't force
9:50yourself to learn something that actually
9:53you can enjoy working
9:54with. Also, within the data dev space,
9:57there's quite a lot of
9:58API's we'll talk about in a bit. But you
10:01have, for example, for
10:03some of them, you need Python as the
10:05programming language. But
10:06for other ones, it's like the web
10:07development like JavaScript,
10:09and you can even write C sharp when you use
10:12like one of the
10:13connector SDKs, right? Right. There is no
10:16one unless there's
10:17like a Superman that knows all of those
10:20languages. So I would
10:22really hone into one specific thing. And
10:24for me, it was really
10:25get good at JavaScript. Because with
10:28JavaScript, I can write
10:29stuff in the front end in the back end, I
10:31can communicate with
10:32databases. Lots of things on the internet,
10:35everything is written
10:36in JavaScript, it is a tool of a
10:38programming language that will
10:40not go away, it will only become bigger on
10:42the internet. Yeah.
10:43And then we have adoptions to that, like
10:45like TypeScript,
10:46which is like a superset of JavaScript. And
10:49you slowly learn
10:50all of those tools as well when when you
10:51get interested in it.
10:53Yeah, yeah.
10:54I'm smiling because the week you decided to
10:56take on TypeScript,
10:57all I kept on getting is signal messages
10:59going, this is
11:00incredible. How have I never done this
11:02before?
11:02Yeah. For people that that are a little bit
11:06further in the
11:07JavaScript journey and haven't looked at
11:09TypeScript. And go and
11:12learn TypeScript. The other tool that I
11:15actually got access to
11:17last week, which we're not going to do any
11:19branding, but if you
11:21sign up for like GitHub copilot, GitHub cop
11:25ilot is like an AI
11:26assistant for programming. And it learns
11:30from your code and
11:32code written by 1000s of other developers.
11:35And it's amazing.
11:36It's like integrates nicely with loads of
11:38code editors and with
11:40TypeScript as well. And it will really it's
11:43a little bit like
11:45have you ever written a G in Gmail and
11:47email, right? So if
11:49you write an email, email, and it says nice
11:51to do an auto
11:52completes to nice to meet you, for example,
11:54yeah, but here, you
11:56can write comments and say like, I want to
11:58write a function that
12:00adds two numbers together. And you write
12:02that as a comment, you
12:03hit enter or tab and create that function
12:06for you very, like very
12:08basic functions, but it can get your your
12:11coding a lot faster.
12:13But yeah, I don't want to deviate and into
12:15it.
12:15Yeah, we've got plenty of time to come into
12:18it. So you've
12:20mentioned this phrase data dev several time
12:22, what is a tableau
12:23data dev? So they give us a high level
12:25overview of what the
12:27program is, how do you become one? How do
12:29you get started?
12:30Yeah, that's that's a very good point. So a
12:32tableau data dev is
12:33someone who uses tableaus API's to extend
12:37and integrate the
12:38platform into two other products. Now a
12:42tableau data dev
12:43is anyone who is interested in using the
12:46API's even if it's
12:48like using reading about it learning about
12:50it. There's no
12:51like prerequisites for you to like become a
12:54data dev. There is
12:55a way for you to enter tableaus and data
12:58dev program and the
13:00developer platform basically, it's free to
13:02join. So we'll put
13:03some links in the description so people can
13:07like sign up for
13:08free. And yeah, that's basically for you a
13:12playground and you can
13:14basically get in touch with other tableau
13:17data devs, talk
13:18about the product, learn about the product
13:20as well.
13:21Nice, nice. And so I think I think I'm, I'm
13:26, if I'm sort of
13:28relating to that I'm technically a data dev
13:30because I actually
13:31use the sandbox environments that you get
13:33as part of the data
13:34dev program to demo pretty much all the
13:37online features, the
13:38tableau online features that are on the
13:40channel. So it's also
13:42really good space to learn broadly about
13:44the platform
13:45because the developer side of tableau is
13:48very heavily
13:49invested in enabling people to learn the
13:52platform as much as it
13:53is about learning tableau, desktop or
13:55server, whatever it
13:56is, right. It's sort of been designed to
13:58kind of get
13:59everyone in.
13:59Yeah, so there's mainly three parts to it.
14:03The first part is
14:04that you get that free tableau online
14:07sandbox, which is always
14:10or typically one version ahead of the main
14:14tableau online
14:15production one. So you're always looking at
14:18new features. The
14:19other element is that you get access to
14:22slack. So tableau has
14:24created a slack channel, like many kind of
14:27tools out there
14:28that creating this community through slack
14:30where you can
14:31communicate through different channels
14:32about the various APIs,
14:34you can get help, you can showcase stuff.
14:36And then the
14:38last part is you're being invited to
14:41monthly sprint demos,
14:42where you can actually get a peek at some
14:46of the new
14:47integrations or new API's. And they'll ask
14:49for feedback as
14:50well. So if you're interested in, say,
14:53tableau's Python
14:54integration, there's quite often there's
14:56like new features coming
14:58out. So in sprint demos, you can then see
14:59what's coming. And then
15:01you can get some feedback.
15:03Nice, nice. And so this all feeds into
15:05probably the next
15:07most obvious question, which is, like, how
15:09many API's are there?
15:10What do they do? And so what what can
15:12people do?
15:13Yeah, excellent question. We get those a
15:16lot when when we talk
15:17even to customers, right about it, right?
15:20Exactly. I always put
15:21them into into three categories. So we have
15:25our connect, we have
15:27integrate, and we have automate, connect,
15:30integrate, automate,
15:31that's kind of the buckets that you think
15:33about, then you think
15:34about, hey, what's the thing that I want to
15:36do in tableau
15:37within connect, it's like, hey, I have this
15:41data source, but
15:42it's not one of the out of the box data
15:44sources. So there's
15:46three options. Basically, you can create
15:48the connector SDK,
15:50which is a fairly new API. It's, it's also
15:54part of the tableau
15:56exchange. So you can put your connector on
15:59the tableau
16:00exchange, and then anyone can kind of use
16:01these. And they
16:02almost become native connections in tableau
16:04. So if you open up
16:05tableau desktop, or in tableau web offering
16:08, you can see there's
16:09almost as native connections, and they use
16:11ODBC and JDBC
16:12connections, right, that's a connector SDK,
16:15then we have the
16:16hyper API, which allows you to program
16:19matically create reads
16:21updates and delete rows in a hyperfile. So
16:24you can create
16:25hyper files to a Python script or Java if
16:29you if you write
16:30Java, but and it's Java the same as
16:34JavaScript. Yeah, it's the
16:35it's the same as as a as a car is to carpet
16:38.
16:38Sorry, that's an ongoing joke between me
16:43and Andre. We always
16:45we always we always take a moment to have
16:46that. Yeah.
16:48Yeah, that's it. If you if you had someone
16:51's interest in those
16:53types of jokes that the internet is full of
16:55them like loads of
16:56memes about Java. Yeah, the backstory we
17:00want to dive into
17:02in this podcast of in this video.
17:04It's podcast.
17:06Yeah, so yeah, the connector we were
17:09thinking about the
17:11connector SDK, the hyper API. And then we
17:14also have the web
17:16data connector. The web data connector is
17:18very much for like
17:20APIs like restful APIs that return XML or
17:23JSON to you. And
17:25the web data connector is one of the kind
17:27of the oldest of those
17:27three. But very soon there will be some
17:30updates to that one,
17:31which is really interesting. That's connect
17:35, then we go to
17:36integrate. And that's really putting Table
17:40au into other
17:41applications or putting other applications
17:44in Tableau. So how
17:46that works is like putting Tableau and
17:47other applications
17:48is embedding. So it's the embedded embed
17:51ding API. So you
17:52can put it in a website in like CMS or
17:55something like WordPress,
17:58for example, we've seen companies now also
18:00putting
18:01Tableau in like Notion or in those kind of
18:04wiki pages.
18:05Because Tableau is being consumed and dash
18:08boards are
18:08being consumed in a lot of different places
18:11. So it's the
18:12embedding one and then we have the
18:14dashboard extensions, which
18:15I mentioned earlier is one of the first
18:17APIs I work with. And
18:18that allows you to create a little web
18:20applications inside
18:21a Tableau. So it seems for example, one of
18:24our colleagues
18:25Craig has built like the export all
18:26extension, which allows you
18:28to generate Excel files from within a
18:30dashboard. And we've
18:32seen loads of like innovations in terms of
18:34like new chart types
18:35as well. And then yeah, those are the two
18:39major ones. And then
18:41if we think about automating, we are
18:43talking about Tableau's rest
18:45the restful API, and the webhooks and the
18:49rest API allows
18:51you to programmatically interact with the
18:54elements on Tableau
18:55online and server like creating users and
18:57updating users,
18:58deleting workbooks, uploading workbooks,
19:00all of those things.
19:01And the last one, the webhooks then is for
19:04listening to events
19:06in Tableau server or Tableau online. So
19:08right, someone
19:09publishes a new workbook, or a data source
19:12doesn't refresh,
19:14there's been a problem, you can act on
19:16those. So you can put a
19:18message into Slack, you can add it to to do
19:21list or loads of
19:22things. I've done a few sessions on the
19:25Tableau conference last
19:27year as well about that. Someone's
19:29interested, we'll put
19:31those links as well. And
19:32yeah, we'll definitely put all those links.
19:34There's a tablet
19:35have a nice page that actually summarizes
19:37all the API's as
19:38well. So we'll put those all in the
19:40description. So be sure to
19:41check it out. But I think that's a really
19:43good way to add a
19:44high level break them down, you know,
19:46connect, integrate and
19:47automate. And one of the things about embed
19:49ding that I think
19:50always catches me out is I always think of
19:53embedding as the
19:54traditional embedding of a web page, I go
19:57get a iframe and you
19:58put it in another web page, right. But
20:00actually embedding
20:01goes well beyond that it can also be taking
20:04bits of
20:05information like a metric, which is just
20:08showing you the
20:09performance of a particular thing. Or you
20:12can also embed the
20:12entire authoring experience inside of
20:15another application.
20:17So people can build visualizations inside
20:19of their
20:20own application using tablet to do that,
20:22right?
20:22Yeah, exactly. It's because that what we
20:25see in the wider data
20:26ecosystem and the wider kind of data
20:29visualization space is that
20:31it is not only dashboards people want to
20:33look at nowadays, like
20:34not everyone takes a decision based off
20:37something that happens
20:38after you've done 20 filters, right?
20:41Actually, people want to
20:43go to data quickly, like metrics, for
20:45example, like
20:46metrics has been it hasn't had as much
20:48attention from the
20:50community as I think it should have,
20:52because metrics are really
20:54things like how many users have signed up
20:56to the platform, or
20:57right, it's like those really like key
21:00metrics that a company
21:01looks at, like what's our revenue? Yeah,
21:03what's our churn
21:04rate, for example, those elements are like,
21:07really
21:07important, and you don't want to hide those
21:10in one of your
21:11dashboards. No, they need to be a metric.
21:13And now with the
21:14ability to embed those as well, you can put
21:16them in custom
21:17portals, you can put them in your wiki
21:19pages, and you can put
21:20them wherever your user is. And that's the
21:23main thing about
21:24embedding is like, put tableau where users
21:27are, don't send your
21:28users to tableau. That's kind of the thing,
21:30right? Right. Tableau
21:31Online, Tableau Server, great products, but
21:34not everyone
21:35actually needs to navigate that interface.
21:37They just want
21:38answers.
21:39Right. Just want answers. Yeah. The
21:42majority of users who use
21:43Tableau, the product, are not building in
21:46the products, right?
21:47They are consuming the analysis. It's
21:49typically, you know, one
21:51developer to multiple analysts who are
21:53looking at that data and
21:55making decisions from that. So that's a
21:57pretty, pretty good
21:58overview. So let's, let's get into some of
22:00the new things that
22:01have that have sort of come out then,
22:02because it's probably
22:03worth, let's do a rundown of them. And then
22:05we'll go through
22:06them in detail. And at this point, we'll
22:08also do some screen
22:09sharing stuff like that. So the first one,
22:10I'm looking at my
22:11notes here with first one is connected apps
22:14. Second one is
22:15the embedding API v3. And the last one is
22:17embedding metrics.
22:19So let's start with connected apps. I know
22:22literally nothing
22:24about this. So explain it to me like I'm an
22:26idiot. Like what is
22:27what is the big deal with this? Why is it a
22:29good thing? What is
22:30it going to make easier? And as like, as an
22:33everyday user, who
22:34won't ever build anything with this? What
22:36will I see? What will
22:37I then? Yeah, of course. So um, there is a
22:40little bit of history
22:41to this. But there's also a little bit of
22:44influence from
22:45Salesforce into this tablet has been
22:48acquired by Salesforce like
22:50two and a half years ago now. I can't talk
22:52about the time but
22:53and Salesforce has always had these little
22:56things called
22:57apps. And they see everything as an app.
23:01And then users can
23:02basically like a Lego system, they can put
23:05those apps together
23:06and build their own kind of product. So
23:07they can pick and
23:08choose what they want and put it together.
23:10And Tableau is moving
23:11towards this as well. And they created this
23:13first iteration,
23:14which is called connected apps. And
23:17connected apps are currently
23:18what they are doing is they're a way for
23:22you to authenticate to
23:27embedded Tableau content. So I metrics, a
23:30dashboard, a sheet,
23:32chart, whatever you you want your users to
23:35interact with, you
23:37can authenticate. So it's an easier way of
23:40doing that. And
23:41there was a real need for this because we
23:44see a huge shift of
23:48users moving to Tableau online as a SaaS
23:51product. There's more
23:53and more companies that don't want to host
23:56Tableau server
23:57themselves, or any product, right? It's not
23:59necessarily that
24:00they don't want to host Tableau service,
24:01any product, they just
24:02want to get up and running with it. They
24:04want to put their
24:04credit card in and get started. We've seen
24:06that with companies
24:07such as Snowflake, Databricks, DBT, all of
24:10them, AWS, all of
24:12them are like really championing this SaaS
24:15approach. And so that's
24:16what we're seeing with Tableau is like a
24:18huge shift towards
24:20Tableau online. And they had to come up
24:22with a way to make
24:23embedding work for Tableau online as well.
24:26Because
24:26traditionally with Tableau server, how you
24:29did embedding of
24:31a web page into a portal and you did the
24:33single sign on approach.
24:35So someone signs into a portal, and it
24:37automatically
24:38authenticates people to a dashboard. You
24:42typically did that
24:43with trusted authentication. Currently, you
24:46still need to use
24:47trusted authentication for Tableau server
24:50until the new
24:50version comes out, which hopefully is like
24:52within days or
24:53hours of this recording. We don't know if
24:57you watch this in
24:59the future, then yeah,
25:00it's definitely come out. Most people will
25:02watch this.
25:03So yeah, now you can actually get it very
25:06good. And when you
25:08turn it on, there you go. And yeah, so
25:12trusted authentication
25:13actually worked with a concept of putting
25:17IP addresses on an
25:19allow list. I don't use the word I don't
25:21like using the word
25:23whitelist. That's not a great word for
25:25identifying IP
25:26addresses. But yeah, they put them on an
25:29allow list. However,
25:31with Tableau online, because it's shared
25:33resource on AWS, you
25:34can't say, hey, this particular IP address
25:37is allowed to
25:38communicate with Tableau online, because
25:39there's so many users
25:40using it. It's not very secure. So they
25:44move to a new
25:45authentication model using JOTS. They're
25:49actually called JSON web
25:51tokens. This is an industry standard that
25:54loads companies
25:55like stripe and all of those they are using
25:58that for
25:59authentication. Yeah, that really allows
26:03you to make it a
26:05lot easier to integrate Tableau online in
26:08various portals or
26:10website and create that single sign on
26:12experience. So it's,
26:13it's very much focused on the kind of the
26:17yeah, making it
26:19easier to authenticate.
26:20Right. So like the the net effect should be
26:24if it's easy to
26:25authenticate, if it's easy to build in,
26:28connect Tableau to
26:29other tools, we should start to see a an
26:32increased number of
26:33tools taking advantage of this because
26:36previously, maybe the
26:37burden of work was too high for development
26:39to consider putting
26:40time aside to do this. But in essence, now
26:43that Barry's maybe
26:44been brought down or more to the point, it
26:46's been standardized to
26:48a standard that web developers are already
26:50familiar with, and
26:50therefore should just be sort of bread and
26:53butter to integrate
26:54these two things together.
26:54Yeah, exactly. And there's a few things
26:57related to these
26:58connected apps is that you, you can create
27:01as many connected
27:03apps as you want on your Tableau online
27:05sites or your Tableau
27:06server. And those connected apps, you can
27:10scope either to
27:11projects or specific sites, and even to
27:14specific domain names.
27:16So what that allows you to do is, because
27:18traditionally, what
27:20happened with trusted authentication, you
27:23expose your
27:24whole Tableau server to this particular IP
27:26address into this
27:27portal, right? Even though you could say
27:30like, hey, only via
27:31the API is only exposed this dashboard. But
27:34still, still,
27:35there is this kind of exposure of the whole
27:37server. But now you
27:38can actually limit this and say like, hey,
27:40for this connected
27:41app, we only want example.com portal to, to
27:47actually accept
27:49requests from so you can scope it to
27:51domains. And soon you can
27:52even put the scope in the JWT token, which
27:57as I said, is an
27:58industry standard. So you can say, for
28:00example, hey, this
28:01user when they request the JWT token, and
28:04job token, sorry,
28:05limits the scope to say view the dashboard,
28:08other ones can filter
28:10the dashboard, other can other ones can
28:12write the web offering
28:13those types of things. And currently, it's
28:15not in there yet
28:16in version three, but it will move to like
28:18version 3.1 or
28:203.2.
28:20Yeah, right. This is really good, because I
28:23think of loads
28:24of use cases where embedding has come up
28:27and the company wants to
28:28give external people one level of access,
28:31internal people who
28:33are seeing another level of access, and
28:35then the finance
28:36team, you know, God level access to see
28:37everything so they can,
28:38you know, make decisions, right? This will
28:41allow you to do that
28:42in a much more confident way, I guess,
28:45because the worrying
28:47thing with those ones is always testing
28:49security and trying to
28:50think of every sort of eventual eventuality
28:51. But there was
28:52always a little quote, exactly, yeah, if
28:54the user did x, y, and
28:55z, you can't really stop them doing y. But
28:58now this sounds like
28:59an even more solid
29:00exactly. It's that security aspect. But it
29:03's also almost
29:04moving Tableau Online on par with Tableau
29:07Server in terms of
29:08the embeds offering in terms of like the
29:10technology, right? That's
29:12like the licensing is still different. But
29:15the the approach
29:16to to actually the authentication is almost
29:23similar
29:23now. Right. And, for example, what you
29:25could do, as you were
29:26mentioning by the three different tiers of
29:29people
29:31logging in, that that can all live on the
29:34same Tableau Online
29:35site, because you as the as the Tableau on
29:37site admin don't have
29:38to think about scaling resources, think
29:41about your
29:42server, because you're not actually hosting
29:44that Tableau
29:44is hosting for you. So you can think about,
29:47hey, actually
29:48implementing the product and getting value
29:50from the product
29:50rather than think about like that.
29:52That's really good. It's really good. So
29:55that's super
29:56interesting. I'd be I'd be keen to sort of
29:58see Tableau showcase
29:59some of these solutions. I'm assuming that
30:01's what conference
30:02is for. We'll come back to conference in a
30:03second because I
30:04think you've got some news to share on that
30:06later. But yeah,
30:08like that's, that's, that sounds like a
30:10really sort of good
30:11feature. And let's, let's, let's think
30:14about the next one. The
30:16embedding API v3. Now, my context here is
30:20only the first
30:21time I ever did embedding. I only did it in
30:24HTML and
30:24JavaScript. I was literally, you know, the
30:26classic HTML and
30:27everyone does where you literally type in
30:29HTML, you get
30:30the embed code, you copy and paste it in
30:32and you go, well,
30:33I've embedded it. And I used to remember
30:35the JavaScript call
30:37you'd made there was API version two. And
30:39it's been version two
30:40for a really long while. So what's big
30:43about version three?
30:44And sort of why does it justify a new
30:46version? Why is it not 2.1
30:48or 2.1?
30:49Yeah, exactly. So it's version three,
30:51because they rewritten it
30:52from the ground up. So they've literally
30:55started with zero, I
30:56think they just opened a new file on the
30:58computer. Like, hey,
31:00new JavaScript, new.js. I'm not entirely
31:04sure if they started
31:05all the way from scratch. I've never I'm
31:07not a library
31:08maintainer. So I don't know how to write an
31:10actual JavaScript
31:11library. But
31:12if it's if it's anything like how we name
31:14Tableau files, it's
31:16really new version 25. Yeah, exactly. So
31:20what they move to
31:20with embedding API version three, I've done
31:23two videos on
31:24that now, I think. But the main the main
31:27thing is that they move
31:29to using web components. There is a huge
31:32discussion in the web
31:33development space of web, if web components
31:36are good at that, but
31:37Tableau has moved to them. It is more
31:40modern. That's the main
31:41thing. It's more modern, it's easy to
31:43implement. And for the
31:44development developers at Tableau, it's
31:47easy to iterate on
31:48as well. So what are web components? If you
31:51go to a
31:52website, and you see a big title on a
31:55website, it's called an h1,
31:57it's the biggest title. And you have, for
31:59example, an image,
32:00which has an image tag, IMG as a tag. And
32:03that's how you write
32:04HTML, right with these tags. And exactly a
32:08little bit of content,
32:09like it's almost XML, it's a superset of
32:11XML. And, and, and
32:14what Tableau has done is now created a web
32:16component called
32:17Tableau Vis. And there's also another one
32:20for authoring,
32:21which I don't know exactly what that name
32:22is, because I've not
32:23really used the authoring part. But it's
32:26Tableau Vis, which
32:27means that in the background, Tableau has
32:30written a whole
32:31bunch of code for you, including like some
32:34what they call a
32:35shadow DOM. But I don't really want to go
32:37too deep into like
32:38what web components are. But basically, it
32:41's easier for you,
32:42like rather than having to have that image
32:44tag or the h1, you
32:46also now have Tableau Vis. And then there's
32:48some properties on
32:48that, like this, the SRC, the source, where
32:52is the actual this
32:53that you want to render, you can add some
32:55properties like hide
32:56the toolbar or show the toolbar or set the
32:59height and the width.
33:01And that allows you to like easier
33:05implement version three
33:08into other tools like a WordPress, a Drupal
33:11, a Node
33:12notion, and all of those tools. It's a lot
33:14easier because you're
33:15using just web components, just web
33:18standards. So yeah, they've
33:20also promised us better performance. So
33:23that's another
33:23one. We still have to try out of course.
33:26Also, because it
33:28integrates with connected apps, there's a
33:29property that you can
33:30add called token. And token is then that
33:35the result of that JWT
33:37handshake, so you add that token to the web
33:41component, and then
33:43it renders it on the web page. And yeah,
33:46basically, that's that
33:47makes it a lot more secure, but also makes
33:51it ready for when
33:52when Google Chrome and all the other
33:55browsers fade out third
33:57party cookies. Because third party cookies
34:00have always been
34:02like, really annoying to work with, because
34:05what you do when
34:06you embed Tableau, but this is with a lot
34:08of content on the
34:08internet, you're using iframes. So in the
34:11background, you're
34:11putting an iframe into another page. So you
34:14can have pages
34:15within pages, right? Exactly. Inception.
34:18But in order to
34:20authenticate from a different domain, so if
34:24you go to
34:24example.com, but your dashboard is not on
34:29the same domain name,
34:30it's in Tableau server, Tableau online site
34:33, you often get like
34:34error messages saying, hey, you can't do
34:36this because you're
34:37coming from a different domain. So that's
34:39another one that
34:39they're about working on on fixing through
34:42this new API.
34:43Right. Right. And have you built something?
34:47I think I seem to
34:48recall you've built something to sort of
34:50demo this. It might be
34:51worth just sort of talking a bit about that
34:53. Maybe even share it
34:54if you've got it if you've got it. Yeah, I
34:56mean, share it.
34:57That is a very deliberate plant because I
35:01know Andre is very
35:02humble and he won't talk about his amazing
35:05work. So I'm having
35:06to make sure he does.
35:07Yeah, so we'll put this link as well. So I
35:10just check my screen
35:11and we have the Tableau developer program
35:13here. I'm
35:14already logged in. But you can in the Table
35:16au developer, you
35:17can just sign up, you'll be added to
35:19everything. It's free.
35:20No, no, no pain there. So what I've done
35:24with the the new
35:27embedding API version three is I created
35:30this little break
35:31playground. And we'll put the link in the
35:34chat. And this is
35:37specifically this it says it's for learning
35:41. And it was two way
35:43of learning. It's for the user, but also
35:45for me. So I could
35:47learn I could learn how to actually use
35:49this. Right, right.
35:50And using it was was a lot better than
35:53version two. I
35:55definitely appreciated that one. Good. And
35:57yeah, what this is a
35:59this is a playground. The idea is that you,
36:03you can embed
36:04Tableau server dashboards, Tableau online,
36:06Tableau public,
36:07and then you can play around with some of
36:09the properties
36:10that you can set on on the visualizations
36:13that you're
36:13adding, like the height and the width and
36:15what device you want
36:16to look at. But also one of the things that
36:19I want to give you
36:20is the actual HTML behind what you're doing
36:24, right. So then you
36:25can copy paste that into another tool and
36:28have some kind of
36:29starting point there. Right. So it's like a
36:33book, you get all
36:34the different bits from everywhere, you put
36:36it in, and
36:37then it sort of shows you in reverse, what
36:40it should actually
36:41look like if you were to code it yourself,
36:42right? Indeed, yes.
36:44Yeah, yeah. It's a kind of a really good
36:46starter. I have
36:47links to documentation here as well. If you
36:50want to, if you
36:51want to look at that. But if we hit get
36:52started, what we'll see
36:54is that by default, I'm rendering a
36:56visualization from
36:58Tableau public. And this dashboard is the
37:02one that I also
37:03use if anyone's watching as watched my
37:05embedding analytics
37:07version two course, and it's the one that
37:09we use in that as well.
37:10But what we get here is the actual
37:12dashboard. And then on
37:14the left hand side, here is we're getting
37:17the actual
37:17options. Yeah, we can set in this case,
37:20some of those options
37:22here. Don't want to like, we're not going
37:24to implement connected
37:26apps here, because then I have to hop into
37:27Tableau online and
37:28do all this at JASP. But we can do that at
37:30some other point in
37:31the future. But yeah, this really allows
37:34you to then play
37:35around with this and say like, hey, what I
37:39want is I want to,
37:40for example, in this case, disable the URL
37:43actions, I want
37:44to hide the tabs and hide the toolbar. And
37:47those are just like
37:48HTML kind of interactions that you're doing
37:51now using Tableau
37:52public, so we can't really hide toolbar.
37:54But if we now hop into
37:56here on the top right, it says the HTML
37:59outputs, we're actually
38:00getting that code. So this is the tableau
38:04this thing you
38:04talked about. Exactly. So this is the
38:06actual web component. So
38:08this is new and embedding version three
38:10Tableau dash this.
38:12And here we can then see like, hey, I've
38:14actually hidden the
38:15tabs. And this is like, this is like almost
38:18like responsive to
38:20way communication. So if I click on my
38:22toolbar, again, we can say
38:23like, hey, the toolbar is now moving and
38:26disable URL actions,
38:27we can set that nice. Yeah, similar to the
38:30width and height.
38:30So if we want to say like, hey, actually,
38:32the dashboard we want
38:33to set to like 500 and the width to 500 as
38:37well, the code itself
38:38updates, and you can then easily copy paste
38:41this into another tool
38:42that you're using it for. And then yeah, if
38:45you hop back into
38:46the Tableau dashboard, you'll see it's now
38:48a lot smaller
38:49changes, I changed it to like 500 by 500.
38:52And then you can swap
38:53between the different devices as well. So
38:55you can set that to
38:56mobile, for example. And then it goes to
38:58like the mobile view,
38:59hop into the HTML, and we'll see that
39:02actually, it's now the
39:04device has been set to mobile. So yeah,
39:06that's, that's that if
39:08you want to learn more on how to use this,
39:10there is a bottom
39:12right, I have a video, and gives you
39:15instructions on how to use
39:17this. Nice, nice. That's a good use of loom
39:21. Loom is a tool that
39:22Andre has been using that I actually quite
39:25like, as well. So
39:26it's nice that you've put it in here in the
39:28page, people to want
39:29to say this is a really good tool because
39:32earlier on I was
39:32saying you just need to know enough to
39:34reverse engineer. So
39:35for the majority of people who just want to
39:37get started with
39:38embedding something like Tableau public,
39:40they want to put it in
39:41their blog, they could go grab the Tableau
39:44public link, come
39:45here, put the details set the width and the
39:47height of their
39:48blog, you know, choose the device type so
39:50they can test
39:51what it looks like on a mobile and a
39:53desktop and sort of grab
39:54the what would they grab the Tableau viz
39:58component and the
39:59script as well, right? Yeah. So if they
40:01want the full page, so
40:02you can in theory, just grab this full page
40:04, and you got a
40:05full page, and I could go to say another
40:08tool like a code
40:09sandbox. And if I just sign in into code
40:14sandbox here, code
40:16sandbox is a tool that I use to like
40:18quickly mock up things. I
40:21go to say just need to go to the dashboard,
40:25I don't want to
40:27create a react application, just want to
40:31create a static HTML
40:33file, right? Right. So I can put this in
40:37here, just like copy
40:39pasted it from from that. It's a no, it's a
40:43that way. And so I
40:46like to edit the sandbox. So it's a static.
40:49That's the
40:50template. And now it's actually going to
40:52write my own. There we
40:53go. Yeah, I then put it in there. This
40:55should not work. So
40:59um, yeah, there we go. So now renders that
41:02that on the page
41:03itself.
41:03Amazing. And so just to break this down,
41:07the Tableau viz
41:09component are just like the settings for
41:11the viz, which we
41:12typed in. But the thing that Tableau is
41:15doing is that script
41:17there. So that script is essentially going
41:19and getting
41:19the instructions and Tableau have written
41:21that that can be
41:22used on any web page, right?
41:23Yeah. So this fetches the the embedded
41:27version three API. So
41:30that is basically a whole bunch of code
41:33written by very smart
41:34people at Tableau that make it work
41:37seamlessly. So for this to
41:39to make it work, you bring in this little
41:41web component called
41:42Tableau viz, you set the most important one
41:45is the source of
41:46course, where you want to comment from the
41:47URL of the viz
41:48Yeah. And then here this script itself, it
41:51's using like modern
41:53browsers can also read modules. Don't want
41:56to go too deep into
41:58what modules are, but it makes it easier
42:00for you to grab
42:01certain aspects from this API. If you use
42:04things like react or
42:05spelt or view, you can say I only want to
42:07grab Tableau viz
42:08out of this whole JavaScript file.
42:11Typically that JavaScript
42:12file is a few kilobytes, which doesn't
42:14sound much, but if you
42:16load it on a web page, and it can can
42:18become quite bulky. So
42:20within module, what you can do is you can
42:21actually extract
42:22certain elements and make it make it a
42:25smaller bundle size.
42:27Right. So yeah, that's that's that's the
42:29script component.
42:30That's pretty cool. I've got to say that's
42:32an amazing thing
42:33you've built. And not because you know, I'm
42:35gonna find it
42:36useful, but it's generally a really nice
42:38way of, I think
42:39breaking down the embedding process in a in
42:42a very visual
42:43way, but still doesn't sort of shy away
42:45from the code. Because
42:47sometimes it can be pretty daunting to
42:49sometimes go to
42:50documentation and just see this on the left
42:52hand side. And if
42:53you've never seen it, yes, it's hard to
42:54translate it. But
42:55because you've got a nice interface to it,
42:57you've kind of
42:58done the job of translating that into
43:00something that people can
43:02use. Yeah, then they switch over to the
43:04HTML, and they can draw
43:05the sort of links between the two and yeah,
43:09start there.
43:09One of the things that Tableau has been
43:11working on a lot is
43:12improving improving their documentation.
43:15Right. Oh, what
43:15we've seen with version two is that the
43:18documentation is one
43:20big file, it's one big HTML file. And if
43:23you want to find
43:24what you need to do, you need to search
43:26through that web page,
43:27but you actually need to know what you're
43:29looking for. That
43:30was no like real nice index or table of
43:32contents. So they've
43:33moved now to this kind of way. And we've
43:35seen this with other
43:36API's as well, where they have like, we can
43:38search
43:39documentation, but also, for example, have
43:42really simple,
43:43hey, basic embedding using the web
43:44components, if you click on
43:45that, it actually walks you through on how
43:48to do this.
43:48Right. And this is going back to what we
43:50said at the beginning
43:52about the best way to learn it. For me, it
43:54's it's reading
43:54documentation and seeing examples on how to
43:57do this. And
43:58this is literally like this is this is what
44:00you need in order
44:01to start embedding Tableau public. If you
44:04want to have
44:05online, it's exactly the same Tableau
44:07server exactly the same.
44:08So they make everything like consistent as
44:11well.
44:11Amazing. Yeah, definitely. People go check
44:14this out. This
44:15is really nice thing. Even even something
44:17as basic as putting
44:18Tableau public in your blog, this can help.
44:21And it's a really
44:22good way to start to learn, I think a
44:24really important part of
44:25Tableau. Because I think, as you quite
44:29rightly pointed out earlier
44:30on, it's more important now more than ever
44:33to have analytics be
44:35in the places where people do their work,
44:38rather than
44:38expecting people to come to somewhere like
44:40Tableau server to
44:41do their work. Right? Yeah, yeah. We've
44:43seen that real shift
44:45off. People like using a whole bunch of
44:48tools, right? And
44:50especially since the pandemic, the growth S
44:53aaS products has
44:54become so big. So everyone's in different
44:56tools. So we don't want
44:58to force people to go to another tool, we
45:00actually have this tool
45:01that we just built that we're just using
45:03Tableau, let's put it
45:04in another one. And that's like a really
45:06cool innovation, I
45:07think.
45:08So one last thing to cover is metrics. Now,
45:12I think metrics is
45:13possibly taking advantage of all this new
45:15technology, right. So
45:16to give people some sort of context,
45:19metrics are essentially
45:21created from a visualization, you go to a
45:24chart, and you choose
45:25a particular, let's say, measure or piece
45:27of information you want
45:29to track, you click on that, you create a
45:31new metric, and it
45:32allows you to track that specific metric in
45:35a different
45:36way, essentially creates a sparkline chart
45:39for you that can
45:40do very basic things like track the
45:42difference in time and so on
45:43and so forth. And so it creates this sort
45:45of card, I'll put one
45:46up on the screen in post, it creates this
45:48little card, which
45:49is like a piece of information, think of it
45:51like a, like a,
45:54what's the word, like an information card,
45:56let's just
45:57call it an information card. But Tableau
45:59have now enabled the
46:00ability for this information card to be
46:02embedded in lots of
46:03different places, right?
46:04Yes. Yeah. So the use cases I see, again,
46:08are similar to what
46:10we've been talking about earlier, it's like
46:12actually making
46:13Tableau like almost a lightweight component
46:15of another
46:16tool. So right, someone logs into, say Not
46:20ion, we use Notion
46:21a lot ourselves, right? So if you go into
46:23Notion, you go to
46:24the landing page there, and there's like
46:26this, this little
46:27widget is little metric that says you've
46:30had this much
46:31revenue last week. That's the number that a
46:34lot of people just
46:35want to know. They don't want to use loads
46:38of filters or, or even
46:40think about, if you go to Tableau Public,
46:42there's some
46:43really good visualizations and really
46:45powerful, like the amount
46:47of time people spend like building those
46:49really engaging
46:50content. But if you think about a business
46:53use case, getting to
46:55your answer quickly is very important. So
46:57that's where
46:58metrics come in. And now the ability to put
47:01a metric into any
47:02of those tools with just a few clicks. And
47:06it's using, we're
47:07thinking about early so Tableau is moving
47:09that kind of web
47:10framework also React. React is a web
47:13framework built by, built
47:15and maintained by Facebook, by Meta. It's a
47:19separate team,
47:20don't worry if you don't like Facebook, but
47:22still like React,
47:23it's fine. Then yes, you can, Tableau is
47:26adopting that of all
47:29companies in the world almost using React.
47:32So yeah, that that
47:33with with metrics, they are adopting that.
47:35So it's so much
47:36easier, nicely integrated with the rest of
47:38your web pages and
47:39web content.
47:40And it's, it's a nice, I think of it as
47:45like a way of atomizing
47:47analytics. I think sometimes in analytics,
47:49we get spend too much
47:50energy and time getting really sort of into
47:54the weeds about
47:55what is the absolute answer to a question,
47:57right? Like, what is
47:58that? What is the final answer that the
48:00user needs to know? And
48:01let me just give them that. And actually,
48:04sometimes that that's
48:05not that's not necessarily what sort of
48:07people are looking for.
48:08People just want to know some ad hoc
48:10information, maybe two or
48:12three bits of information. And from that
48:14they themselves will
48:16make the decision about what to do. Yeah,
48:18we sometimes get too
48:19drawn in on, let's just make the decisions
48:21super simple for them.
48:23Let's just show them what they should do.
48:24Yeah, because it's as we we see a lot of a
48:26lot of companies is
48:27that actually driving insights and actions
48:31on the data is so
48:33much more important than the actual tool
48:35that's powering the
48:36visualization, right? Even though we're
48:38talking about
48:38Tableau, like if someone sees a number that
48:41they need to action
48:43on it, and yeah, the place where you action
48:46on things could be,
48:47for example, a slack, or where you message
48:50someone, right? Or
48:51it could be another communication tool like
48:53teams.
48:54So if you have the ability to call a metric
48:57that or quickly
48:59get a number from ask data, for example,
49:02then yeah, that would
49:02be that would be a really cool place.
49:05Cool. So that's, that's quite a lot,
49:08actually, it's incredible
49:09how much in the last sort of, let's say,
49:14year, obviously, this
49:16stuff takes a lot longer. But in the last
49:18year, it seems that all
49:19of these things have been sort of coming
49:21together the connected
49:22apps linking to embedding API v3. And now
49:25we're starting to
49:26see metrics being embedded. And I always
49:28like to do a little bit
49:29of speculation as to you know, where do you
49:31think Tableau is
49:32heading with all this? What do you think
49:33they're trying to
49:34enable? Obviously, Tableau economy is a
49:36pretty big deal, a
49:37pretty important part of that they kind of
49:40want to enable more
49:40people to build stuff for Tableau. But if I
49:43just go back
49:44to sort of the core of the API's, what sort
49:46of your outlook
49:47on what comes next? What do Tableau now
49:50need to improve to
49:51sort of make it a better place to be part?
49:54Yeah, it's, it's like, it that question
49:57really depends on which
49:58day of the week you asked me. Right. I
50:01think like, we're
50:02heading towards a way where Tableau is
50:05going to like
50:07solidly for like real developers, like if
50:10you think
50:11about a connector SDK, like C sharp Java,
50:13then if you think
50:14about other API's like this embedding API,
50:17actually getting
50:18up and running with that one is now a lot
50:20easier. So for me,
50:21it's very much like Tableau has Tableau
50:23originally has lowered
50:25the bar to visualization, and to getting
50:28insights with this like
50:30drag and drop functionality for a lot of
50:32people like data
50:33analysts stuck in Excel, move to Tableau,
50:36and loads of people got
50:37like so much more fun in their job, right.
50:40And that's also
50:41where I hope the API's and integrations go
50:43to that it's,
50:44it's a lot easier for people to learn and
50:48how to put a Tableau
50:50chart, for example, somewhere. And for me,
50:52it's very important
50:53that the integration with other tools and
50:56commerce becomes kind
50:57of almost like a first class citizen. So if
51:00a new tool comes
51:01out, and we can put Tableau in that it's
51:03great, right? The
51:04majority of tools now running on the web in
51:06the web browser
51:07anyway. So that's that. And specifically,
51:11what we see a lot
51:13is that, for example, what we see with
51:15metrics is that more
51:17and more people are interested in it. And
51:20then another thing
51:21that I think they're going to include in
51:23the product very soon
51:24is like, apply like, row level security on
51:28metrics. A big ask
51:30for a lot of people that using metrics,
51:32because right, because
51:33they're quite generic. They're very generic
51:34. Yeah, yeah,
51:35they're not using the actual user context,
51:38who is actually
51:39logging into the metric. But they are gonna
51:42fix that, I
51:43think.
51:44That's going to be an interesting cat and
51:46mouse game.
51:46Because as soon as you have row level
51:48security, the immediate
51:50next thing you'll have is, you know, why
51:53can't I do this as an
51:54author inside of destiny? Why? Just give
51:56this to me as a vis
51:57type, right, so that I can drag and drop it
52:00into my dashboard.
52:01So that's not sort of this thing that's
52:03separate. But as you said
52:04earlier, it's built on a different
52:06technology, which is
52:06why it sort of sits outside of the
52:08dashboard.
52:08Yeah. And the other thing that you're
52:10talking about the Tableau
52:11economy, right? So we've seen that with
52:14Tableau Public, where
52:15there's a hire me button now where you can
52:17actually go and
52:19talk to people, hey, like hire me to do
52:20this particular piece
52:22of work, especially really good for freel
52:24ancers and people that
52:25typically use platforms like Fiverr or Up
52:27work or something.
52:28But we see what a lot of Tableau partners,
52:32including the partner
52:33that we work for is, they can put that
52:35content on Tableau's
52:37exchange. And those can be accelerators,
52:39dashboard, they
52:40can be extensions, dashboard extensions,
52:43and also connectors.
52:44And in the future, we'll see some other
52:46content on that
52:47probably as well. So that means that the
52:49community can also help
52:51move the product roadmap forward. Because
52:55we always hope
52:56that, hey, we build some kind of
52:58integration as an extension.
53:00Hopefully, the Tableau developers pick up
53:03on that, and
53:04then integrate it into like the native
53:06product by that.
53:09And I'm also keen to see what what use
53:11cases bubble up to the
53:13top when they open these doors, right?
53:15There's, you know,
53:16there's lots of opportunity for people who
53:19've been trying on
53:20needing certain things to work in Tableau,
53:22suddenly to go in
53:23and build those things. And there'll be a
53:25bit of a wild wild
53:26Western initially, it's a bit like the
53:27first time the app
53:28store came about those first few days,
53:30first few months were
53:31rough, because people were just throwing
53:33everything to see what
53:34would stick. But after two to three years,
53:36it really started
53:38to become a refined place where there was
53:39an understanding of
53:41what was good and what was bad. And, and
53:43that will also start to
53:45get shared amongst partners and other
53:47people in the community.
53:49And hopefully people as well. I hope it's
53:50not just for partners.
53:51I hope people get to come to independent
53:54developers, people
53:56like yourself, right? Like, be able to
53:58submit stuff to the
53:59Extension Gallery and still also get some
54:01interesting Yeah,
54:02especially if they introduce things like
54:05and I don't know
54:06if this is on the roadmap, because I'm not
54:07chatting to that
54:08team, like, think about reviews, or you're
54:11thinking about kind of
54:13stars, so you can get like one star or five
54:16stars, like a
54:18rating system or labels that like, hey,
54:20this has been built
54:21by a data death ambassador. Yeah, this has
54:23been built by one
54:24of the visionaries or one of the other
54:25people in the community
54:27and yeah, and find a way to reach out to
54:29them as well. So I
54:30think that that's quite exciting.
54:32And even if it's been deployed, not who it
54:34's been deployed to,
54:36because that's normally confidential
54:37information, but
54:38just being like, you know, this is being
54:40used at 20 enterprise
54:41accounts, 20 medium to large businesses and
54:45tensible
54:46businesses, something like that to say, Oh,
54:48okay, this is this
54:49is a really trusted app. It's being used at
54:51lots of different
54:52scales. And sometimes that can come from
54:55Tableau. But it's not
54:57like the app store where downloads is
54:59enough, right? You
55:00kind of need some different measure of
55:03trust, because one
55:04person can install it in the biggest
55:06deployment base of
55:07Tableau. And it can be an absolute dumpster
55:10fire. But you
55:12know, smallest that might be great and not
55:14get noticed.
55:15What's over? So this has been amazing. It's
55:18probably a good
55:19time to ask people, how can they find out
55:21more about what you do?
55:23What's your website? What's your channel?
55:25Show your screen? Tell
55:27us a bit more about what where all these
55:28things are.
55:29Yeah, of course. Let me do share my screen.
55:33I'm telling Andre to share screen here
55:34because his website
55:35is actually beautiful. I'm always jealous.
55:37The A he built
55:38his own website, and B is really good.
55:41Again,
55:42beginning about how to learn like real life
55:48projects are the
55:49best way to learn. Building this website as
55:52a project has has
55:53given me so much to learn about like, right
55:56. And I tried to keep
55:58it as minimalistic and like only use like
56:00two or three colors.
56:02It's my original website had like dark mode
56:04enabled, which if
56:06you're a developer, dark mode was fun, but
56:08it's not easy to
56:09implement. It's not fun anymore. Yeah, what
56:13happens like this,
56:14this kind of landing page where if you want
56:16to learn more about
56:17me, there's a learn more about me page
56:19actually called the
56:20page. Yeah, so I think this is like the
56:25kind of the information
56:27about me. But if you want to learn more
56:29about the different
56:31courses that I built, I've built a few
56:33courses on YouTube as
56:34well. And these will link to my channel.
56:36And for example, these
56:38are free. I always I always I always
56:40highlight to people when
56:41when, well, at least when Andre and I are
56:43talking about courses,
56:45we're talking about just go to YouTube and
56:47start watching them.
56:48It's not a paid course. And people have
56:50always asked, do you
56:52do paid courses? But this is this is the
56:54best knowledge we
56:55can share. And this is where we put it.
56:57Yeah. So this is the one
56:58that I should update because we're not
56:59talking about
57:00version three. And this is version two. But
57:02to be honest,
57:02it will still teach you loads of elements
57:04of embedding tablet,
57:05like a nine or 10 video course. You can
57:10watch it in about two
57:12hours, I think. But there's some hands on
57:14sessions as well.
57:15Definitely there's links to my to my
57:17YouTube page, you can find
57:19all of my details actually on the front
57:20page, you want to go
57:21to my YouTube here. And then I've created a
57:25whole bunch of
57:26projects like, as I said, about five years
57:29ago, I started
57:30developing on top of Tableau. What I've
57:32done is I've created
57:33like this is I don't know, like 15 or 16
57:36different projects that
57:37I've been working on, including things like
57:41a Tableau public web
57:43data connector, which is a way to bring
57:45your Tableau public
57:46data into Tableau without having to write a
57:49custom code. It's a
57:51web data connector, you plug it in, you put
57:53your username down,
57:54you get the information. So yeah, there's
57:57loads of stuff
57:57here. Again, as you said, this is all free.
58:00So you can get it
58:01whatever you want. Please reach out to
58:03anyone has any questions
58:05about this. Happy to.
58:06And it's on GitHub. So yes, I think
58:09majority of us on GitHub.
58:10So people can open it up reverse engineer
58:13and look at what you've
58:14done to kind of get these.
58:15Yeah, yeah, the majority of these things. I
58:17've put like
58:18loads of like links to GitHub. So here we
58:21can see that keep it
58:22fresh extension that I built, which keeps
58:24your dashboard
58:26refreshed on the timer. You can grab the
58:28whole code for that. So
58:30you can even self hosted. I've actually in
58:33the process of
58:34moving this to Docker container so you can
58:37even host a Docker
58:38container yourself. Yeah, all of this is
58:40free for you to grab and
58:42to learn from.
58:43Amazing, amazing. Thank you so much. This
58:47has been I've learned
58:49a ton of stuff. And it's been absolutely
58:52incredible. And I
58:53thought I knew generally, the landscape of
58:56tablet, I'd like to
58:57think of myself as someone who's in tune
58:59with what tablet is
59:00doing. But actually, I think the context
59:02you brought today has
59:03been super valuable. So to anyone watching,
59:06people who
59:07always make it this far into video, these
59:09are the loyal
59:09people, these are the people that should
59:11absolutely if you've
59:12made it this far, number one, go follow
59:14Andre and all the
59:15platforms, Twitter, YouTube, go to his
59:18website, watch his
59:19courses. And after you've done that, go to
59:22the tablet website,
59:23sign up to the data dev program, and check
59:26that out. And last but
59:27not least, you're doing a special event
59:30with Salesforce,
59:32right? Yes. So on April 27, and 28, it is
59:37in San Francisco, but
59:39you can also attend this virtually. I am
59:43part of the
59:46tableau keynote at Trailblazer DX, which is
59:50a Salesforce
59:51developer conference. And this Salesforce
59:55developer conference
59:56is not only Tableau, it's also MuleSoft and
60:00Slack and Salesforce
60:01Slack has 5000 people coming. And so you
60:04can learn all about
60:06different API's in the in the Salesforce
60:09ecosystem. And I'll
60:11be like, hosting the Tableau keynote
60:13together with France
60:15one, who's the Tableau product officer at
60:19Tableau, and loads of
60:21Tableau product managers as well. And we'll
60:23show loads of
60:24cool stuff that you can do with the Tableau
60:27API's.
60:27It's fantastic. So basically, you're going
60:30to be, you know,
60:31leading the charge on behalf of Tableau
60:33essentially, at the
60:35Trailblazer DX.
60:36Yeah, I'm definitely looking forward to
60:37that.
60:37Awesome. And it's in San Francisco, it's
60:40not a bad place
60:42to be that type of year either. So pretty
60:44good, pretty good. I'm
60:45looking forward to that session. I'll, I'll
60:48also put a link to
60:48the session itself, but also how to find
60:51out more about
60:52Trailblazer DX and watch it virtually or in
60:55person, whatever
60:56you want to do. I might while you're doing
60:58it live, I might do
60:59a live reaction or something like that. I
61:02'll sort of enjoy
61:05the comfort of not being at the conference
61:07and being grateful
61:08just this smack talk in the background. And
61:11rei never
61:12The good thing is that it's around 12 1230
61:18in San Francisco
61:20time. So it's in the evening, it's in the
61:21evening and you
61:22guys are amazing, amazing, amazing. So it's
61:25easy to sort of
61:26just relax and hopefully you can Chromecast
61:28or something. Yeah.
61:30Good stuff. Well, Andrei, thank you so much
61:33. Thanks for coming
61:34on to the channel and doing this stuff. It
61:36's we've had nearly an
61:37hour now. So it's been absolutely fantastic
61:40. And yet go
61:41follow Andrei. I won't ask you to subscribe
61:43to me. It's I think
61:44it's really important to go look at Andrei
61:46's channel. And yeah,
61:48find out more of the content that he's sort
61:50of putting out
61:50more consistently as well. And check out
61:52his blog as well. And
61:53stay tuned for more. I'm sure it probably
61:55be I'll probably have
61:57you back here in six months. Going, you
61:59know, explain all
62:00these extensions, how are they doing what
62:01they're doing? Yeah.
62:04We should do some extension tear down. Yeah
62:07. Let's not like
62:09let's celebrate all the all the API's.
62:12Right. Exactly. Yeah,
62:14thanks. Thanks for having me. Absolutely.
62:16Pleasure. Absolute
62:18pleasure. Thanks for watching. And yeah, we
62:20'll catch you the
62:21next one. Take it easy.
62:22[MUSIC]
Doing something a little different today. In Today’s video, I speak with Andre de Vries about what’s new in the Tableau developer space. We cover Connected apps, the new embedding API and embedded metrics alongside some context around the Tableau developer programme and how to get stuck into all the APIs’ Tableau has to offer.
Andre’s site: https://www.andredevries.dev/ Andre’s Channel. https://www.youtube.com/c/AndredeVries Andre’s Courses: https://www.andredevries.dev/courses Andre’s Video on Embed V3: https://www.youtube.com/watch?v=qadem86RLzs&t=3s
Timestamps: 00:00 Intro 00:12 Introducing Andre 03:17 How do you become a Datadev for Tableau 06:04 How do you build up experience 12:20 What is a Tableau data dev 15:06 What are the Tableau APIs and what do they do? 22:05 Over view of new features. 22:40 Connected Apps 30:19 Embedding API v3 & Andre’s tool 45:11 Embedding Metrics 49:14 Where is Tableau heading with developer tools 55:30 How to find Andre online 59:29 Andre at the Trailblazer DX Tableau keynote