Hey, Welcome to React Round Them, the podcast where we keep you updated
on all things reacting related. This show is sponsored by Raygun and produced by
Topendeves and Void. Top and Deves is where you create top and down,
so get top and pay in recognition but working on interesting problems and making meaningful
community contributions. And Andoid provides remote design and software development services with a very
neat business model. It's a task basis where clients only pay after the tests
are delivered and approved. In today's episode, we will talk about a very
interesting tool that can be used to analyze your Gmail mailbox stats so that you
can figure out which emails you can delete. And we are talking directly to
the author of this library, which is Levan cuts a Zin, the focused
software engineer from Georgia of w C and I definitely hope I didn't butcher your
name, Elevan, so it's very good to have you on the show.
Thank you for taking time. My name was absolutely correct. Thanks. Well,
let's start from the problem I faced right before I worked on this started
working on this project. So basically my software package, the Gmail and box
stas I created, is basically a solution for the very desirable feature which Gmail
does not have basically I think it should have. I mean, Gmail doesn't
have the feature to find some statistical information about your mail box, for example,
who sent you most males? Right in other words, sort centers by
mail tout also where have you sent most mails? You know, the words
sought receivers by mail count and so on. I mean, without this information,
it's very difficult to clean up huge mail books without deleting accidentally the leting
important males, especially if you have thousands or maybe hundreds of thousands males in
your Gmail. Right. Many people have so much, so much mail in
their Gmail and cleaning up and taking and cleaning up to have some space,
it's very difficult for them. And with this project, which took me about
several weeks to develop, and yeah, for sure, before I started working
on this project, I for sure I tried to find similar solutions on YouTube
as I searched the entire internet, hoping that I would find an easy way
to analyze my Gmail right to clean but I could not find anything. And
when I say anything, I mean I could not find any easy solution.
The area only complicated like high software development level complicated. And also outdated instructions,
and basically I'm very surprised that from eight billion people, no one had
the idea to just just to solve this very very important problem, I think.
So then I said, okay, why not make it myself, and
I decided to create this software and to record the video tutorial for it to
be super easy to use even for the people without any technical skills. So
yeah, the video is very easy to follow. You can find it on
a YouTube channel Leo de Bro. Also, you can find it on YouTube
just by searching who sent me most mails in Gmail, and that's it.
You can. You can find it very easily. And yeah, probably probably
on the entire planet. Probably I am the first person who who tried to
solve this problem to who tried to share this solution with very easy instructions to
the people, to have ability to give ability to the people even without any
software development or technical skills. So that's the main idea. So I think
I think millions of people would find this video tutorial very useful for them.
Yeah, I think so, yes, definitely definitely. Uh And by the
way, so sorry Peter and Chreas, but I actually just went on to
the subject and we even like skipped you guys introduction, but just so that
I don't have this pass by in today's episode, we also so you have
myself Lucas by an eating case you didn't knew my name before, but also
joining me in today's episode along with Levan are they also hosts Chris Ruin,
Hello everybody, and Peter us up Hill. Awesome. So, Levan,
you already gave a very detailed explanation of which problem specifically your project solves,
and I think what we could direct perhaps the beginning of our episode towards is
which big lessons are audience, which is primarily made up of React developers,
can learn from your experience. Right, So basically some of the questions that
come to my mind as a as an engineer myself is well and this is
just questions right, Like of course, besides the just big kudos to you
for taking this initiative of of being like, oh okay, nobody did this,
let me do this myself. So first off, thank you for that
and for creating content around that to educate people. That's highly appreciated. And
what I would like to understand now is this feeling of I can't find a
solution let me build this myself is something that I think all engineers struggle through
life. So we are always thinking, even when we actually have a solution,
it's sometimes like, it's not exactly what I want to, let me
build this myself, you know. So this is a feeling that we generally
have. And in your case, there was really no other solution. So
I think there are many there are many things, the many lessons that we
can extract from there. So the first thing is I would like to understand,
since there wasn't any solution out there, how did you decided which things
would be included in your solution? Like it not only analyzes your of course,
it analyzes your mailbox, but through this analysis, it could answer several
different questions, right, so you did have to go through a mental process
of deciding which questions your code would answer and which questions it would not answer
because they would be out of scope. So how did you approach this?
And in general, how much time and effort would you say you had invested
in this package to reach the current state in which it is right now.
Yeah, so it was the process of about several weeks, maybe maybe four
weeks or five weeks, And yeah, the development, the improvement of answering
some questions which features or which statistical calculations should I include in this package.
Yeah, these things came day by day during the process. But first,
the very first thing I wanted to achieve, that is to just to see
the senders which sent me most males, just to have some general idea about
who was the most frequent senders. Right, that was the idea. And
yeah, I tried many like I experimented with many solutions, and actually this
solution is my second solution about I have uploaded my first video about this Gmail
analyzation process. I created another solution before, which was using epscript language Google
appscript language, which is based on JavaScript. Probably software engineers find this interesting.
So my previous video was about uh hm, analyzing this Gmail using different
method, which, as I said, using abscript language, which is integrated
in the Gmail and in the Google Sheets platform by by Google. So it
seemed like it was more comfortable, more like easier to use. Right for
for users, it was easier to develop because I could just integrate a simple
pattern on the Google Sheets Google Sheets document and the user could just click on
the pattern to analyze his Gmail info and everything was integrated into everything, and
uh functional functional. Functionally, they worked very fine and very well, but
problem was speed performance. Before for about like five hundred dollars maybe one thousand
or two thousand mail box, it was good enough. But when some people
contacted me and asked me some help about what is going on, I have
like one hundred thousand males and this solution doesn't work. It just has time
limitations, it has execution speed limitations. So yeah, I discovered that Gmail
has so many speed limitations for this eppscript method, this abscript code execution.
So yeah, it functionally it was very good, but because of the speed,
it was basically unusable because if you had like if you wanted to underline
is ten thousand emails, it would take several hours to analyze it. But
with new my new methods, it will take about two minutes. That's the
yeah. So yeah, yeah, if you had one hundred thousand males in
your Gmail with the abscript method, it would take days, like maybe maybe
one week to analyze it. And yeah, it was it was basically unusable
and it was basically not a solution. So yeah, it would probably one
year ago on two or two years ago from since then I was trying and
I was thinking about what can I improve, How can I improve this?
How can I improve this? And then I remember that Google has special website
Google Takeout, which is takeout Google com and you can download any data from
your gym, from your Google ecosystem, from your Google environment. You can
it may be Gmail or Google Photos or Drive or everything. Right, so
yeah, then I discovered that you can download all your Gmail data and it
includes just just one file which is n box extension, which has n box
extension format and this just this one file includes everything and with the special libraries
Male part of libraries and Male Analyzer libraries, you can basically analyze this file
in your own local machine, in your environment. So there will be no
uh speed limit from Google service because we are no longer using Google service.
We just analyze it in your in your computer with your with the speed,
with the power of your CPO. So we have absolutely absolutely total freedom or
for the speed of that. That's why instead of days, now it takes
minutes and it's yeah, it's like it's it. It now really seems like
a solution. So yeah, it felt very good that some finally it worked,
and yeah, for sure. I had to test it in many computers,
in many Gmail mail boxes of my friends to make sure that everything was
correct and the calculation was correct. I fixed many bugs, many mistakes.
And also anyone can see the code. The source code ont did habit its
open source. The software is free and open source, so anyone can come
a beauties or make some suggestions, make some improvements, some poor requests,
some feedback, and I will be happy if the community just helps me and
helps each other to improve this little project, which is kind of little,
but I think very we're desirable, a very good thing, and many people
will be very happy to have this information. Because even if you don't,
even if you don't want to clean up your emails, sometimes you just you
just you're just curious. Let's see how what what is the statistics of my
Gmail? Who said? Who is the most frequent center? Who is interested
in me the most? For certainly most males? Right? And also I
don't remember maybe who where I send most males? And so on? Uh,
and yeah, I think I explained some some differences between the old approach,
old method and the new method. That's the idea. And also I'm
trying to think about maybe I can improve it, make it more comfortable because
right now, yeah, user, the users don't have don't need to have
any technical or any software engineering skills to follow this tutorial. But it's it's
still a little little technique, a little techy uh steps. Yeah, it
it seems like someone who does these steps, it seems like he is a
full blown software development But yeah, maybe maybe I can after maybe in the
future I will be able to just make it one patent click. Maybe I
will. I will maybe uh edit or develop an on as an ed on
for Gmail, like Gmail has some ed ons, right, But the thing
is that these edits also work on the appscript environment. That's the idea.
The problem is that ASCRIPT is very slow by Google servers. So yeah,
I'm thinking about it. Maybe in the future there will some some new doors
open, and yeah, maybe we will have some easier ways to do it.
But yeah, for now, I think it's it's good enough and many
people already can use it very quickly and very easily. It is, Yeah,
it is. It works on a local machine, but it it is
accessible for all major systems, I mean Windows, Mark Linux. It is
accessible for all major systems, so there will be no problem about like always
support or anything like that, because it's based on note js, which is
JavaScript frame of JavaScript environment to brand custom scripts, customer programs. Right.
So yeah, I think that's my basic answer for this question. Maybe I
forgot some things about it. No, that's fine. And also m box,
which is the format that Gmail uses. It's not only for email,
right, it's it's from my understanding, universal format. I remember that.
Sorry. I think it's a proprietary format from Gmail and only for Gmail.
So that's why it is very problematic to convert the design box format file into
Outlook format file because I think they it is very proprietary and very corporative.
I don't know corporative format. So yeah, there's a box. Yeah,
basically means it's mail books, but it's the Gmail from the company Gmail,
I think. So I don't think that is the UK is. Actually I'm
saying that because I have used emails on a self hosted server very back in
the day, and I would in the time of my life, I used
to take care of technical infrastructure to a few small businesses here in my city,
and I would do them some support in terms of like putting the website
online and having their server take care of their emails as well, and those
were not Google emails, they were just self hosted emails on on some cheap
cloud, and whenever I needed to export mail box, they would be exported
using the m box format. And I actually think this is a very flexible
format. I don't think this is specific to Gmail at all, actually,
which makes your library very interesting because people could use it to analyze other other
mail boxes as well, actually any of it. Yeah, that's what I
was thinking about it right now. Yeah, I called it Gmail, but
you now, I think that if if other mail services can export or download
file with m box extension, yeah, that would be I think, just
very easy to analyze these files too. So yeah, maybe maybe I will
do some experiments about it. Yeah why not? Yeah, I wonder if,
like, if you knew about this before, maybe you could have found
a particular too analy It's like I'm reading the good news and at the same
time the bad news that maybe it did exist that before it was just not
under the Gmail prefix. But I think if you just look for m box
analysis, you can probably find something that that does this. And I can
even see that there are a few libraries on MPM itself for m box specifically,
that's the idea. I basically I use these libraries, but these libraries
are not user friendly, I mean user friendly for the non technical users there
for software developers, but this specific package I developed is everyone friendly. That's
the idea. Gotcha? Gotcha? Okay, okay, that makes sense?
And what next steps for that? Like you do you dedicated a lot of
time onto this, So are you going to transform this into perhaps a simple
website where people can just upload it and have it being parted without them having
to install anything, or are you going to try to maybe monetize this in
in a way. So what are your plans for the scope base? Yeah?
For no, I don't know yet, but yeah I have someone also
they told me that maybe you could, if you could create a website and
do the do it more easier, and maybe it would be Uh maybe I
can't do it, but yeah, because it is file analyzation, and maybe
browsers have some some you know, excess limitations too far, so probably it
will be problematic, but I will think about it and about the monetization.
Right now, I'm just actually just included some donation leaks and sometimes people give
me some donations. Very thankful for that. But about the monetization, if
I if someone asks me to maybe may why not make it a paid version
or something like that. I don't think so many There are many, you
know, software, so many on, so many good things which are used
by millions of people, and they are free, and I think it would
be better that this software just to be free, my software, and it's
it's just I think it's just a good thing for my I don't know,
for my career or also I just wanted to, you know, I just
wanted to solve a problem. I did not have anything beyond it in my
mind. I just wanted first for me because I wanted to analyze my Gmail.
Then my Gmail was huge and I was thinking, how can I shrink
it down? And I wanted to find the solution. And I found the
solution, and then I thought, okay, why not share it to other
people? And I did it, and yeah, I think that's great.
Yeah, yeah, definitely. Learning to file access on browsers, the limitations
are quite small nowadays, Like there's even an API that allows you to directly
access the files in the posts computer, so there should not be any any
problems in that regard. You can even like use service workers and have your
your or page available offline and you can do the processing on a different thread
instead of in the in the main thread. In that way, you're not
going to block the view as the m boxes being parsed. So there's definitely
an opportunity there to turn what you created into something even simpler for an end
user. Because I haven't tested those other libraries, so I'm just gonna trust
your your view that they weren't very friendly. But still we can't really say
that it doesn't require technical knowledge, right, Like if you look at the
instructions of your package, the first thing is you need to have no jazz
stopped. Most people that I know of don't even know what is a terminal,
and the ones that I think they know, they tell me, oh,
lucas. So the things that you do is like you you write code,
right, And I'm like yeah, and you do that in the terminal
right, And I was like, no, I'm not crazy. This isn't
an ide, but like that's what people think, whether you think of software
engineers. So I don't think that I don't think my mother would be able
to use this, for example, But if we put it in a have
you heard of small pdaf dot com is a website that exposes several utilities for
PDFs. So it allows you to compress dfs, to merge, added cut,
and it even tries to unblock a PDF that has a password. It's
pretty cool. So what I thought was like something similar but for mailbox analysis.
You know, if you're if you're inspired, you could even like have
a just shooting out ideas here, Like you could have a price model where
if the person wants to extract the inbox, then they have so like if
they already have the inbox, they can just upload, then you do the
analysis. You can do it on the front end, you don't even need
to run it on the on the server. But then you could say,
hey, this is the free plan, but if you don't have the inbox
and you want me to download this for you and then extract, then you
have to pay this fee and then you input your email credentials and then your
system can log into their email, download everything, allow them to download this
file and also analyze it. I think that would be pretty neat. Actually
I would love to if this do existed, I would use it. Yeah,
that's yeah, maybe maybe I will think about it, maybe I can
research more about you tend to actually build it. Yeah, for no,
for no, my main goal was just to make it work somehow make it
possible, right, they make the analyzation possible. So in that moment,
I was very familiar with the note jays environment with this command line not Jazz,
right, and so that's why I just build it. And yeah,
it seems very technical, very techy, and it it may be still maybe
it may still be very like kind of difficult for non technical users. But
I tried to make as easy as possible. I tried to how can I
say, like simplify as much as I could, like maybe some also some
ten year old kids can follow this video of toial. I think so if
they, if they want to, and if they have strong desire to do
it. So yeah, it's just because it's just you know, just install
this no jazz soft. It's it's as easy as installing Skype or some very
very general, any general software. Just install this no Jazz and just open
this terminal window and just run just one command type in run just one command.
That's it. So no need to, no need to you know,
some kind of tricky things and several commands and doing some other things and things.
No, just type one command and go. That's it. So probably
for now it's okay. And yeah, the website solution and website improvement seems
pretty good idea and I will think about it. Yeah, that's that seems
pretty pretty good. Yeah. Nice. Yeah, here chriss, guys are
do you have any particular Okay, so yes, I have one, and
I think they want to have this as regards of dissolution, right, So
do you think there are any other email services available that can actually do this,
because I don't know. I think I know about hate. Hey,
I think Haye kind kinds of like group image based on centers, and there's
features where you can naturally you know, like you can even block like if
you you know, this kind of meal is coming from this specific center,
like it's grouped, and just so I don't know, do you know if
any in service apart from this that do that, because then I'm also considering
from the mind of users, So if someone seins a service that could do
that for that to that then maybe going to the terminal, So maybe some
some or maybe I want to use this service. So what do you think
did you in your in your in your search, or maybe when you were
quitting the package, did you kind of have an idea of any of that
in your service? I was this something similar, Yeah, that's what live.
So the questions like, are they available some kind of similar services online
to do it with special website or service? Right, yeah, yeah,
yeah, for sure. Sure. I tried to search with many keywords in
Google, I in read it or anywhere in any social network. I tried
to search with many texts, many keys, like how to find or how
to start senders, how to find most frequent center and everything. I tried
many things to search in the Internet, and there were also other people searching
something like that, and there were no answers to their questions how to do
it? They asked this question how to do it? And there was no
answer. And yeah, I think I found like one or two paid services
which which provided some similar service to analyze your Gmail. But even for paid
services, I could not find this specific thing I was looking for, like
sort centers by frequency, by mailtown. At least I could not find it.
Maybe I did not search it enough, did not search it well enough.
Maybe someone can find it. But I searched it for many days,
many weeks. Even during the working process, I checked out the internet.
Maybe something changed, maybe some updates, maybe some new things appear on the
Internet. But I think there is no such thing, even for paid versions,
because I think because probably it is expected right now. I think it's
expected because this analyzation requires, if it is online, it requires probably a
heavy CPO usage heavy and maybe Gmail and Google and all the services just trying
to I don't know, save some sepure power. But if they if they
made it like pre paid series, maybe they would benefit it. But probably
they decided not to do it. I don't know why. I just wanted
to find the solution for it, and I just did what I could do
with my powers. I get one thing that I think is very interesting.
And I'm trying to remember the name of this website. It's called I'm going
to send here in the comment section, so it's called Goodbye dot host.
And it's a very interesting website because basically it's the website that exposes three migration
tools. One to migrate your website, another to migrate your email, another
to migrate your database, and the go is to basically move from one host
to another. Right, So This is why the website is called Goodbye dot
host and they have this email migration tool which is really it's really interesting to
your particular use case because this is kind of like related to it. Right.
So it's about you just input the credentials from one email host and then
emigrates from that email host to a different email host using the not s MPP
is the IMAM protocol. So I think that's technically if any any email that
is using IMAM, you could connect to it, download the end box,
and then do this anout. I think that could be interesting. Yeah.
Yeah, I'm just looking into the website right now. Okay, said goodbye
to your current host. Yeah, it seems pretty interesting if it has access
to maybe n box file or maybe maybe the entire system of mails. Yeah,
I'll check this out later. Yeah definitely. Chris, how about you
anything you'd like to ask before it start rapping up? Yeah? Sure.
So. So I come from like I have no back in any of this
email stuff. This is the first time even hearing of the mbox format.
But as soon as I heard it, I was like, oh no,
this sounds like one of those like yeah, okay, it's a defined file
type. But it could have like custom field a bit to Z, so
yeah, I would just I guess I have a general question like and you
mentioned you you tested it in a lot of inboxes with your friends, Like
what were some weird bugs? Like did you I can imagine you ran into
like these weird fields like you hadn't seen before? Or how does this how
does the inbox format even look and how does the flow like what is the
flow of your of your tool? Yeah, the magic comes from the NPN
website. Actually, this this website is I think it's not for regular people.
It's only for developers, I think so. So basically the software package
is like mine is not is not available on NPM website because they are these
are just for some kind of this NPM webstective for developers who to analyze code,
who write code, and to to who you know, who use some
packages some libraries to write their projects. So I mean I used yeah,
that's yeah. The question your question about how how I analyze this in box
file? Right, because this end box file is very complex, very If
you open this m box file with maybe text editor or something like, you
will see some random some strange things, and yeah, it is strange for
me too, I am not familiar with that. I did not analyze this,
I did not work on this. I used pro written libraries for it,
which are also available on NPM website. But these libryries are only understandable
by software developer developers like me. So I and these libraries were available,
but no one decided to make it to make a software for like user end
user friendly software. So I did that. I just used these libraries and
from these libraries, I created this user friendly software. So basically the software
is written. I wrote in JavaScript and NPM is basically the JavaScript consystem,
MPM website, the store, it's the repository of JavaScript libraries. And basically
with the JavaScript code and using these libraries, I without very specific and without
very expert and understanding of NPM package. These libraries just clified my work.
They just provided me special functions to just access, just to read, for
example, the list of males, and then I can read in each mail,
I can read center receiver CC BCC, also attachments and everything text and
everything. So I am in with the simple JavaScript code. And yeah,
the usage was very simple. But for sure the calculations I did and the
analyzation and generating these s CSV files. To make it very accessible for everyone,
I had to do some a little bit complex programming coding, but yeah,
I tried to I tried to make it. I tried to write code
with very clean code practices, with very organized way. So even other developers
maybe can Maybe other developers will be able to easily understand my code, my
written code, without without huge struggle. Probably I think so. And even
if they don't understand, they can ask me questions or maybe in GitHub they
can. They can make full requests and suggestions how can I change this code
or maybe how can I improve the code or anything like that. So yeah,
it is very open in githab. I have also another project. Maybe
also you already know this project. It is the vs code extension block Man,
which has already like more than one hundred thousand installs, and I'm very
happy about that. And basically what made this extension, this software Blockman good
was the people. The community. Community helped me so much with improvements,
uh, with suggestions, even even non software developers, even just end users
who didn't understand, who didn't understand the code, they just provided they just
told me some feedback. Maybe maybe you could do this maybe you could add
some this feature and they provided very good cool ideas and with the help of
community. Yeah, this project is not very popular and very successful I think
so. And yeah, after after blockmen, my next project was this project
which is Gmail and box stats. And also I have some other ideas about
other projects. I'm just I love, you know, working on my solo
projects and new ideas. Yeah. Maybe maybe I will do another thing soon,
I hope. So h Yeah, for now, this Gmail and books
that software is available on GitHub and anyone can. Yeah, it's important even
because it's important to be open source because because of you know, security,
and some people may and have some you know, may think that it's it's
includes some malware or some badcode, some you know, virus that infect their
machine and they can just check the source code and GitHub and they can make
sure and they will make sure that everything is fine and even my code not
just virus. But it also does not touch any other content content of your
mail books. It just reads only center address, receiver address cc BCC and
some other things like time, timestamp, also idea and nothing more. It
doesn't read text what was or title or anything like that because I think it's
not important at least right now. Maybe if we add some new features,
maybe we can have some more access to the content, but right now I
think it's okay. So everyone can check the code and make sure and they
will make sure that it is safe and secure. Okay, yeah that makes
sense. Well, thank you so much for taking the time, and again,
thank you for creating the school. It's really nice and as you said,
it's really nice that it is open source so anyone can benefit from it.
Thank you so much for this. And yeah, yeah, it's just
again, I just wanted to reiterate it was really a pleasure to have your
own show, and also just explaining to other people like the effort that you
put into this and the whole journey. I think this is really interesting for
others that are considering creating utility tools and things like that. So it's always
nice to hear. And I like to know if there's anything particular that you
like to promote before we wrap up the episode. I don't know, maybe
I will also promote basically I promoted this, already promoted this project, but
maybe I will promote it again. My vis code extension Blockman developers, please
check it out. I think you will like it. It is a visual
help for developers. It helps us too easily understand and you know, perceive
and understand code structure more easily because uh, it renders some special rectangle blocks
in the code structure in in the in the code and you just have to
see with your own eyes. I think for many people it it gets easier
to understand code structure because it is very important for software developers too quickly work
on the code file, on the software code. Uh. And if there
are no visual helpers, many people find it difficult to understand where the what
is the structure of the code. So yeah, please check out vice code
extension blockment by Leo Debro We do okay if you if you can send a
link to that in our in our particular chat, then I can send this
to everyone in the comments section as well. Uh for sure, for sure?
Now, Peter, how about you? All right? Yes? So
I have like I just go because on web projects rather web components and educative
So yeah, I just wanted to talk about web components and I think it
was mainly because of the idea that I think we at nineteen is going to
support it. So I just wanted to write a project and web components with
leads. At least I think leads. It's still like a film of double
it kind of uses it uses the the Native work Component API, right,
so probably in the project as well, I kind of referenced a lot Native
work Component features as well, so I think it's something people could check out.
Yeah, so I do the link on the chart. Yeah. Also
I used to be here. Yeah, okay, the lane and Chris,
how about you? Yep? Yeah, I have just a quick fun one.
I noticed today that stack overflow open there because I can't post. I
thought I was logging, but the twenty twenty four Developer survey is now live,
so I usually because I like reading the results, I usually also participate
in the survey. So yeah. I also saw that we recently had the
state of ATML survey released. It's made by the same organization that does the
State of Job script, so that was very interesting. If if anyone wants
to be on top of that, then definitely go check out State of jobscript.
They always do the survey every year and they release the things that everybody
knew that were released, but like people, how many people knew those features
or or not. Also, today is the day that we get on the
release of Angular eighteen, so that's some interesting things happening. Yeah. Yeah,
Actually I think I just did my promos, so that's it, guys,
like those are going to be my promos for today, and well I
think that was Everyone just sent the links to Levens from in the comment section
as well. Thank you so much for sticking up to the end of the
episode and I will see you in an extra