Hey everyone, welcome back to Data Nihai with
Mukundan. I'm your host Mukundan Sankar and today
we're going to talk deep about a topic that's
very close to my heart. Something that could
completely change how we share our work as data
analysts, data scientists or machine learning
professionals. So we're going to be talking about
automating the creation of engaging animated
And even beautifully designed presentations that
are straight from your Jupyter notebooks. And
we use AI for this, right? This is not just about
saving time. This is about telling better stories
with your data. And more importantly, this is
about making your work shine in interviews. And
even in team reviews, it could be even if you
want to do a public talk. So let's just dive
right in. So here's the problem that we all faced
early on. And this is something I've personally
faced. I'm hoping if this is something that you
faced as well, then this is something that can
work for you. So I want to take you back to...
when i was just starting out in the data science
and analytics field like many of you i was building
all kinds of projects in jupyter notebooks you
know when you first started out you're probably
thinking like what kind of projects would stick
what would get you hired so so i was doing as
most of my peers were and i'm sure maybe you
probably you know relate to this trying to see
what kind of projects maybe on Kaggle .com or
could be some, you know, government websites.
You're trying to find data sets to work with.
And then you analyze this data set in Jupyter
Notebooks, right? And it could be something like
a customer churn model that you're trying to
build or time series forecasting. So these were
some of the models that I was trying to build.
So I had the code, the insights. even the charts
right even the uh you know graphs that uh all
of those were ready but something still was not
um you know adding up right something was still
missing and when it came time to share that work
whether in an interview or with a stakeholder
i struggled because the notebook that I had built,
it wasn't just built for storytelling. It was
great for exploration, you know, the exploratory
analysis, great for iteration, all the machine
learning tasks, data visualization. But for someone
unfamiliar with the analysis, well, it was overwhelming,
right? All they saw was just code, maybe a chart
or two would, if they had scrolled enough. But
there was no flow as such. no explanation and
no guidance but so I started creating these slides
manually copying markdown exporting charts rewriting
speaker notes and it was just a nightmare I'm
sure you know that feeling, especially if you've
worked in this. That's when I thought, what if
I could just upload my notebook and get some
well -structured presentation with slides, with
speaker notes and visuals, well, instantly, right?
So that brings me to the vision of my app. So
that's the idea behind this app that I built
here. It's a Streamlit app. Again, Streamlit
is a Python -based library, something that I
use time and again for my projects. And you can
view some of my other episodes where some of
my recent episodes, actually, they all talk about
me using Streamlit library. It's like a front
-end Python -based library. if you don't know
how to use javascript which i don't so streamlit
is like python based so that makes it very easy
to use right so it's a streamlit app where you
upload a jupyter notebook and it does all the
heavy lifting for you and here's what it gives
you it gives you like a powerpoint file with
slides and each slide has a clean title ai generated
content as well and it gives you bullet points
so um the main aim is also to give you some speaker
notes which can guide the way you speak to guide
your narration right and now now the big one
it gives you ai generated visual diagrams like
flow charts process trees and conceptual graphics
so Well, instead of opening PowerPoint and starting
from a blank canvas, you now get like 70 to 80
% of your slide deck already done. All from just
your notebook, right? You still tweak it, of
course, and add your own polish. But the structure
is there. The story is there. The visuals are
there. And sometimes it may not even give you
visuals, but I think the idea is at least it'll
give you ideas to generate those visuals. and
that's just as important because you can create
those visuals but you don't know what exactly
to create um and that's where you can save a
lot of time by just knowing what to create right
um and you're just like replicating uh what what's
being asked for you right um so let's break down
the tech in this app so let's talk about what's
under the hood first uh we use nb format library
to parse the uploaded notebook we extract the
markdown cells and look for any charts that were
generated using matplotlib or plotly then we
feed those markdown cells into gpt4 and here's
where the magic starts gpt then gives us a slight
title two to three bullet points for that slide
and speaker notes and oh and of course this is
the cool part a textual description of the diagram
so what i mentioned was you know there could
be times when it gives the diagram but it also
can give you a textual description of what you
what you wanted to create right um so then we
take that diagram description and we feed it
to a graphvis library or another visual rendering
library to actually create that diagram So you
have this textual description now, but you also
want to create it. And that's when you can use
graph -based library or any other visual rendering
library, like I mentioned, to actually go ahead
and create the diagram and not just suggest it,
right? Suggesting, yeah, everybody has an opinion.
What I think is really helpful here is that you
are getting... ideas and you are also able to
create it using these libraries so yeah and of
course it can handle flowcharts decision trees
linear pipelines and i'm experimenting with more
smart art style visuals you know what smart art
is right it's the one in powerpoint you get these
amazing ideas to you know recreate to create
diagrams from whatever text you have so something
like give you process flow diagrams idea how
to use a process flow in powerpoint so that's
something you can explore as well but this is
something that i'm exploring to use as a next
step in this app so then also use python pptx
library to stitch everything together into a
dot pptx presentation so python pptx like python
hyphen pptx it helps to convert to a pptx presentation
right with slides content images and speaker
notes and it's all done in python now why does
this matter you might be thinking okay Cool.
Cool project, right? But what does this actually
change? Here's the thing. Presentation is leverage.
You might have the best model, the cleanest data
pipeline, or even the sharpest insights. But
if you can't communicate that clearly, you lose
opportunities. In interviews, in team meetings,
So let's say you go into these team meetings
unprepared. You have the cleanest data pipeline,
everything. You have solved the solution in your
head. But if you don't present those correctly,
what's the use? You're going into a client demo.
Your ability to explain what you did, how you
did it, and why it matters is really everything.
That's how you can close deals if you're not
involved in that. How do you satisfy your client?
Because if you're not able to explain what you
did, they're not going to be happy with you slash
resign with you, right? And this app is about
reducing that friction. It gives you a strong
foundation to build from, like a head start.
And even more, it brings storytelling into your
workflow. It encourages you to think about the
narrative while you're still in the Jupyter Notebook.
That's great, right? So let's look at some real
-world use cases of how you can end up using
this. So let's just say you're a student who's
working on a Kaggle project. So this is something
I mentioned at the beginning. Maybe you're just
starting out in your journey, trying to figure
out what to do, right? And you're a student.
finding some cool data sets to work with so Kaggle
data set you get I mean you use this Kaggle data
set to analyze what you're trying to do or analyze
the data set and you produce some results but
now you are able to turn your notebook into a
job interview ready presentation and another
use case could be a data analyst who can prepare
stakeholder presentations faster without copy
pasting plots all day right and a machine learning
engineer can generate internal tech talks explaining
their model pipeline using real diagrams that
you get out of this so those are some real examples
which i mean real world examples which are applicable
for this right like this is how it can be used
in the real world um so like i already i already
gave you like an indication of where i want to
take this app so i just want to talk about that
what are the future plans for this so i am not
stopping here and i hope you are you are not
as well i hope you're trying to use this with
me um a link to The blog I've already written,
which has the full code, will be pasted in the
show notes. And here's what I'm building next.
Support for more diagram types like mind maps,
Venn diagrams, org charts, organization charts,
right? And connecting with napkin .ai or diagram
GPT for more rich illustrations. Integrating
with Google Slides so you don't even need PowerPoint.
editable slide themes layout presets presets
also trying to add voice narration generation
for each slide it's like a voiceover and if you're
listening and want to contribute let's contribute
let's collaborate right like this project is
open source i mean you'll have access to this
um the code the code will be very easy for you
and if you were able to build something cool
with it which i wasn't able to just let me know
it'd be great for us to collaborate um you know
this is i'm really excited for where this is
going and there's a lot of interesting opportunities
here so to wrap it up this isn't just about automating
slide creation this is about making it easier
for all of us to share our value to share the
value of the work that we're doing so if you're
a data scientist a data analyst an ml engineer
or even a student just starting out the ai space
right if you've ever felt like you know you're
stuck here explaining your project this tool
is for you and you can find the code like I mentioned
in the blog post which is which will be in the
show notes the streamlit app screenshots you
will see in that blog post as well and there's
a full walkthrough in my in that blog post so
I'd love to hear how you use it or what features
you want next so just feel free to comment on
that you can reach me on uh the same blog post
it'll be like a medium blog post if you don't
have a medium account you'll also uh get this
on substack substack is free if you don't need
a paid membership for that um thanks for tuning
in and until next time just keep building keep
sharing and let your work speak