WEBVTT

00:04.150 --> 00:04.710
All right.

00:04.710 --> 00:05.390
Hello, everybody.

00:05.390 --> 00:09.910
My name is Master Chen, and you are watching or listening to Twitter Word Frequency.

00:10.170 --> 00:11.450
Welcome to my talk.

00:12.430 --> 00:12.990
All right.

00:12.990 --> 00:16.050
So, let's start with who I am, or who am I.

00:16.090 --> 00:21.770
I'm a prior B-Side speaker, where I spoke about being a con man and working in Vegas surveillance.

00:23.030 --> 00:31.710
I spoke at DEF CON on VoIP security, as well as DC Sky Talks on automate your stocking, which we'll kind of cover a little bit about today.

00:32.930 --> 00:44.770
And most recently, the Recon Village in the last few years, where we talked about stalker in a haystack, URL shortened by any other name, which was last year, and of course, this year and this talk.

00:45.670 --> 00:47.110
It's virtual now.

00:48.370 --> 00:50.510
You can find me at ChenBox.

00:50.550 --> 00:53.690
That is my handle on most social media.

00:54.090 --> 00:55.470
So, feel free to follow.

00:56.730 --> 00:57.390
All right.

00:57.390 --> 01:03.450
So, let's get into this, and let's start from where we are at this point in time.

01:03.630 --> 01:11.910
And I think that'll help us understand where my mindset is when it comes to this talk.

01:12.550 --> 01:18.410
So, of course, I started with automate your stocking, where I was digging into my Twitter research.

01:18.410 --> 01:19.250
This is bad.

01:19.250 --> 01:22.910
And we learned that during the DC Sky Talks a couple of years ago.

01:23.810 --> 01:32.910
So, the following year, I did stalker in a haystack, where we figure out how to not be stalked, or at least we can detect cyber stalking.

01:33.610 --> 01:35.050
That was good.

01:36.470 --> 01:44.330
And now I've gotten recently into political sports betting, or, you know, market speculation, which is part of the story.

01:44.910 --> 01:46.310
And profiling.

01:46.310 --> 01:51.190
I mean, profiling like social media profiling on different accounts.

01:51.570 --> 01:53.750
And of course, I do have a degree in psychology.

01:53.750 --> 01:56.710
So, all this wraps up into where we are at this point.

01:56.710 --> 02:05.090
So, these five pieces are what kind of has gotten around this research here.

02:07.180 --> 02:08.780
So, about this talk.

02:09.080 --> 02:14.760
I'm gonna start with the original goal and how I came up with what I was researching at that moment.

02:15.460 --> 02:23.180
Why that failed and why we move on to what it is currently now as I'm presenting this.

02:23.180 --> 02:27.020
And what I would like my current research to be in the future.

02:28.720 --> 02:34.440
So, before we get into all of that, though, let's talk about caveats and disclaimers and warnings.

02:34.560 --> 02:35.880
Oh, my.

02:36.760 --> 02:38.120
I'm bad at that.

02:38.120 --> 02:49.880
Anyway, first caveat or first disclaimer is for those who have followed my work before, you know that I've said I anal or I anus, which is I am not a lawyer and I am not a stalker.

02:49.880 --> 02:55.560
I'm gonna add something new to that, because I'm very new to the whole data science thing.

02:55.560 --> 03:04.380
I've only recently gotten into using Pandas and Scikit-learn and NumPy and all these different data analytics tools.

03:04.520 --> 03:06.920
So, I've added INADs.

03:06.920 --> 03:08.840
I am not a data scientist.

03:09.400 --> 03:15.280
I'm not a lawyer, I'm not a stalker, and I am definitely not a data scientist, but I'll try my best.

03:16.240 --> 03:32.280
So, this project is a work in progress, and I'm hoping that after I explain kind of what we're doing here today, that maybe I can get some help from the community to further this project, or at least now that I've defined the basics, I can continue and make this something very strong.

03:33.660 --> 03:35.520
This is a neutral tool.

03:35.520 --> 03:42.700
I'm not building what I'm building today for stalking purposes, you know, this is just a tool.

03:42.700 --> 03:50.140
You use it how you want, but of course, as always, I'm not going to be held responsible for what you do with my research.

03:51.740 --> 03:55.500
And I did not stand on the shoulders of giants for this research.

03:55.500 --> 04:11.840
What I mean by that is, I know that there's a lot of research already in the space when it comes to frequency analysis, word frequency analysis, you know, sentiment analysis, NLP, not neuro-linguistic programming, but natural language processing.

04:12.480 --> 04:18.500
I know that there's all that research out there, and I barely used any of it.

04:18.500 --> 04:27.700
So, I would like to integrate that later, but I just want to let you know that for this particular talk, that was really not used.

04:27.700 --> 04:31.220
So, it is definitely a work in progress.

04:32.840 --> 04:33.500
All right.

04:33.500 --> 04:37.380
So, again, for those of you who know me, I'm not a sports guy.

04:37.920 --> 04:43.040
I've only recently gotten into hockey, and I've always been a UFC fan, but other than that, I'm not a sports person.

04:43.040 --> 04:53.120
So, I've never been into the sports book, but one thing I know about being in Vegas for my entire life is that there's a sports book for every market.

04:53.120 --> 04:59.680
It doesn't matter what the market or what the speculation is, there's a sports book for it or a betting market for it.

04:59.860 --> 05:01.620
And that's where we start our story.

05:02.540 --> 05:07.920
So, if anybody's ever heard of predicted.org, it's a market for political sports betting.

05:07.920 --> 05:12.880
So, you can bet on who you think the next president's going to be, not just in America, but globally.

05:13.480 --> 05:18.960
Pick a country, pick a state, pick a, you know, impeachment hearings.

05:20.760 --> 05:22.100
Who will run the White House?

05:22.100 --> 05:23.180
Who's going to be the VP pick?

05:23.180 --> 05:26.000
All of these different markets are on predicted.org.

05:26.280 --> 05:34.860
And so, you can make a fair amount of money if you know what you're doing, or you can just have a casual bet and just be right with a few dollars and cents.

05:35.280 --> 05:49.040
And so, and specifically, we're going to be talking about President Donald Trump's tweets as that is kind of a famous thing here and how it pertains to the political sports betting market.

05:49.400 --> 05:50.160
Okay.

05:50.740 --> 05:58.420
And well, let's get into that now, because right now we're talking about piecount.com, which is a tweet counter that's out there on the internet.

05:58.700 --> 06:05.780
And it keeps track on a weekly basis of the president's tweets, as well as the VP, the White House, and the POTUS accounts.

06:06.740 --> 06:14.620
And this is all geared towards the tweet market that predicted offers or used to offer, and we'll get into that in a second.

06:15.140 --> 06:20.580
But we're talking about Twitter, you know, Twitter markets.

06:20.580 --> 06:35.960
Again, this is on a weekly basis, the question or the market is, how many tweets will the president tweet out for this particular week, starting from Wednesday of this week and going on to Wednesday of the next week, it could be anywhere from, you know,

06:35.960 --> 06:45.520
50, which is, which is highly unlikely, all the way up to, you know, 300, 400, you know, and, and that's, that's what I was analyzing beforehand.

06:46.440 --> 06:51.060
Now, I wanted to know if the profits could be based off of analytics.

06:51.360 --> 07:02.900
And, you know, could the, could I anticipate what he would be tweeting based off of current events, news, drama, anything that's out there in the global space.

07:03.060 --> 07:09.620
And the goal, the goal with this original research was to get the president to pay for my energy bill.

07:09.620 --> 07:21.400
So if I made enough money on this predicted.org market, could I pay the energy, my energy bill at the house with, with Donald Trump's tweets, that's, that's where I was going with this whole thing.

07:23.160 --> 07:30.060
So again, prior research is the frequency of the tweets, how often he would tweet in that week.

07:30.060 --> 07:47.660
And, and I was capturing, as you'll see here, in the CSV file on the right side of the screen here, well, we see 68 in the week of, of April of 2019.

07:47.820 --> 07:50.600
We see 137, 140, 141.

07:50.600 --> 07:55.420
So these are all a rolling tally or running tally of, of his tweets.

07:55.420 --> 08:03.880
And of course, you graph it using, using Jupyter, a Jupyter notebook, you know, you, you graph it and see the frequency here.

08:03.880 --> 08:09.520
And then you ask yourself, you know, was this peak here due to impeachment drama?

08:09.520 --> 08:14.200
Was this due to some sort of scandal or emergency in the Middle East?

08:14.200 --> 08:17.040
What caused these peaks of tweets?

08:17.040 --> 08:19.980
Was it just somebody getting on the president's nerves?

08:20.040 --> 08:24.240
These were all the questions that I was asking at the time, but there's a problem.

08:24.980 --> 08:28.420
Predicted.org actually stopped their, their tweet markets.

08:28.420 --> 08:37.660
So while, while Predicted is still around, they no longer offer you the ability to, to bet on, on, on tweets.

08:37.800 --> 08:43.240
And so all of this research has kind of just stopped, you know, so they, they changed their offerings.

08:43.240 --> 08:47.840
They, they started to offer other markets that just weren't working fast enough.

08:47.840 --> 08:51.720
It, you know, these other markets aren't resolving on a weekly basis.

08:51.860 --> 08:54.180
And so my profits slowed to a halt.

08:55.200 --> 09:05.680
And so because of that, this whole project that I was working on, as far as tweet frequency, it, it kind of took a back, a back burner and I, I kind of forgot about it for a couple of months.

09:06.440 --> 09:10.080
Um, but, um, it got resurrected.

09:10.080 --> 09:14.020
And so, uh, the project lives and, and I'll tell you why.

09:14.280 --> 09:21.620
So I tweet on a regular basis and I tweet very vague, vague things.

09:21.620 --> 09:24.300
Um, and, and that's on purpose, I would say.

09:24.300 --> 09:26.540
Um, it could be a Zen of the day quote.

09:26.540 --> 09:30.420
It could be, uh, something obscure or just something that's on my mind, right?

09:30.420 --> 09:32.100
Because that's exactly what Twitter is used for.

09:32.100 --> 09:37.440
You, and then you just let it out there.

09:37.500 --> 09:39.060
It's not always political.

09:39.060 --> 09:40.960
It's not always socially driven.

09:40.960 --> 09:43.420
It's just a thought that's on your mind.

09:43.420 --> 09:52.960
Well, I had one of my followers, um, kind of get a little bit offended or had a little bit of ruffled feathers here, um, with one of my tweets.

09:53.320 --> 10:11.560
And so, uh, he kind of got mad at me and, you know, I wasn't being political, but the vagueness of my tweet allowed, uh, this particular person to, uh, project their political ideals on, on my tweet.

10:11.560 --> 10:19.720
So, um, I thought about that for a while and I could have gotten mad and, and, and, you know, gotten back and forth with him, um, but I didn't.

10:19.720 --> 10:24.000
And instead, like, I don't get mad, but I will turn you into research.

10:24.220 --> 10:26.960
And, and that's what's bringing us here today.

10:27.700 --> 10:38.320
So again, the target projected their beliefs on me and the meaning of my tweet, even though there was no correlation there, there was nothing to, to draw conclusions from.

10:38.620 --> 10:39.280
Okay.

10:39.280 --> 10:45.940
And so blindsided by rage, meaning that I had no idea that I, that this was going to be happening.

10:45.940 --> 10:49.880
Um, but I asked myself, could I have seen this coming?

10:50.100 --> 11:01.700
Could I have predicted that maybe what I tweeted, um, would result in a certain outrage from not just a certain demographic, but from maybe specific people.

11:02.580 --> 11:05.560
And this is still the work in progress.

11:05.960 --> 11:11.440
So, um, who are we targeting, um, with, with what we're working with today?

11:11.640 --> 11:23.900
Well, as, as stated in the last slide, we're working with political opponents or, uh, we're talking about political opponents and not because we're trying to be political, but just because, um, this is a use case, uh, for, for what we're doing here.

11:23.900 --> 11:25.060
This is a scenario.

11:25.480 --> 11:36.760
Um, corporate marks, we could use what we're going to do today for, you know, spear phishing or, uh, maybe password lists or some sort of targeted, um, execution of, of an attack.

11:37.640 --> 11:53.320
Um, cyber bullies, you know, there are plenty out there and wouldn't you want a leg up if you knew the type of vocabulary that they were using, uh, the, uh, way in which they tweet, the sentiment behind their tweets, and maybe you could, uh, you know,

11:53.320 --> 11:59.080
work for a better outcome, uh, against your cyber bullies because yes, they are definitely out there.

11:59.340 --> 12:02.080
Now, sadly, I have to address this.

12:02.080 --> 12:05.160
Um, this also has some stalker interests.

12:05.160 --> 12:10.980
Um, but remember what I said before, and in my previous research, stalker interest, this is bad.

12:10.980 --> 12:12.780
It can be used for stalking.

12:12.780 --> 12:14.020
I do not condone it.

12:14.020 --> 12:16.820
I, I think we've, we've crossed that already.

12:16.820 --> 12:17.440
Yes.

12:18.060 --> 12:18.500
Okay.

12:18.500 --> 12:19.500
So what are we talking about?

12:20.280 --> 12:24.820
Well, everybody knows Twitter is a gold mine for OSINT and recon.

12:24.820 --> 12:25.380
Okay.

12:25.660 --> 12:27.720
Um, and, and, and it's not a secret.

12:27.720 --> 12:32.120
It's, it's very well known and it's, it's that way by design.

12:32.440 --> 12:38.200
Um, not everybody has a private account and, and it kind of ruins the fun if you are on a private account.

12:39.520 --> 12:43.600
So, um, Twitter, we know as a publicly shared sentiment.

12:43.600 --> 12:47.680
If you're going to put it on Twitter, you have to expect that, uh, it can be analyzed.

12:47.680 --> 12:48.860
It can be scraped.

12:48.860 --> 12:49.820
It could be mined.

12:49.820 --> 12:54.240
It could be, um, used for research such as today's research.

12:55.140 --> 13:05.500
So what we're doing though is we're making an at-a-glance picture of what this profile, a target profile, um, is about, what it's all about.

13:05.500 --> 13:25.120
So, um, you know, the term at-a-glance, what I'm talking about here is instead of, instead of having to scroll through an entire timeline to understand what this particular profile is all about, what if we could just take a look at a dashboard or, or just one screen and understand the sentiment of that,

13:25.120 --> 13:27.220
uh, Twitter profile?

13:27.300 --> 13:30.360
That's, that's something that, uh, I think would be very valuable.

13:31.100 --> 13:31.660
Why?

13:31.660 --> 13:32.720
Why are we doing this?

13:32.720 --> 13:35.800
Well, um, because I can, because we can.

13:35.800 --> 13:38.480
We're hackers, uh, and, and this is what we do.

13:38.500 --> 13:47.760
Um, we look at something, we look at a problem, we look at maybe a scenario that has recently happened to us, and we say, okay, I know how to fix that, or I know what I can do about that.

13:47.760 --> 13:50.380
So yes, because I can, because we can.

13:50.500 --> 13:51.840
Remember, we're hackers.

13:53.500 --> 13:59.360
All right, and we also want to do this because, um, this gives us an insight into tendency of the profile.

13:59.360 --> 13:59.540
Okay.

13:59.540 --> 14:10.280
Uh, again, and the goal is here to, to find maybe quicker red flags, maybe catch that outrage, um, before, uh, it bubbles up and, and, and blindsides us.

14:10.580 --> 14:11.260
Okay.

14:11.260 --> 14:15.500
And of course, uh, as with anything, we could use this for later weaponization.

14:15.500 --> 14:20.320
Uh, we could turn this into something that could be an offensive tool if needed, of course.

14:20.320 --> 14:30.940
Uh, we're talking about password lists, uh, further social profiling, uh, maybe psychological profiling, uh, and troll bots, you know, um, maybe they could have a conversation with themselves.

14:32.480 --> 14:33.740
Now, how are we going to do this?

14:33.800 --> 14:35.680
Well, we're going to look at a couple of things.

14:36.880 --> 14:45.720
Uh, we're going to track a small sample size of the, uh, recent tweets in the timeline and an ongoing sample, of course, as we add that programmatically.

14:46.800 --> 14:55.600
And we're going to be doing our analysis on, uh, word frequency, word choice, uh, retweet frequency, um, and hashtag usage.

14:55.600 --> 14:58.820
That's actually, uh, of course, as we know, it's pretty important.

14:59.200 --> 15:00.000
Okay.

15:00.200 --> 15:00.720
All right.

15:00.720 --> 15:01.740
So let's take a look at the code.

15:01.740 --> 15:06.540
But before we do a couple of notes here, um, and you can play the game at home actually .

15:06.540 --> 15:12.000
So now by the time that you're watching this, um, this should be available and public for you and your consumption.

15:12.000 --> 15:15.940
So you can follow along with what I'm doing here, uh, in the next few slides.

15:15.980 --> 15:20.780
So, uh, I'll go ahead and give you a minute to, to take that, uh, link down.

15:21.060 --> 15:23.000
Um, and we'll go from there.

15:23.380 --> 15:25.600
Actually, there's a couple more, uh, points here.

15:25.600 --> 15:31.880
So, uh, it's just basically my GitHub handle and, uh, you know, the, the name of the project, Twitter word frequency.

15:32.920 --> 15:38.960
Um, now we scraped, I scraped, um, this, uh, information with Python and it's all Python.

15:38.960 --> 15:40.060
All of this is Python.

15:40.200 --> 15:44.240
Um, but I scraped with, uh, an actual Python file.

15:44.320 --> 15:48.700
Um, and then I use a Jupyter notebook for more, um, analysis.

15:48.700 --> 15:50.300
And there's a reason for that as well.

15:50.300 --> 15:52.480
And we'll see that in the next couple of slides.

15:53.120 --> 15:59.320
Uh, in the background here, you'll see your code snippet of the actual script, uh, which pulls the timeline.

15:59.320 --> 16:00.840
Um, now there's a couple of things here.

16:00.840 --> 16:05.320
It either, um, checks to see if the timeline has already been saved on your machine.

16:05.380 --> 16:15.740
And if it hasn't been saved on your machine, it then goes out, uh, using the Twitter API, um, to grab, uh, the latest, uh, timeline, uh, of your subject or of your target.

16:15.840 --> 16:16.440
Okay.

16:16.560 --> 16:21.600
Now in the foreground here, you're going to be seeing, um, uh, a snippet from the Jupyter notebook.

16:21.720 --> 16:29.460
And I used the Jupyter notebook because, um, maybe I wanted to run a little snippet of the code without running the entire script.

16:29.620 --> 16:31.760
So a lot of the code is going to be the same.

16:31.780 --> 16:49.200
Um, but with, uh, with Jupyter notebook, you know, and I'm sure everybody who's in data science already remember I'm not, um, you, you already understand that you can take these pieces of, uh, or snippets of code and just run those individually and change things as new data becomes available to you.

16:50.020 --> 16:50.680
All right.

16:50.680 --> 16:53.120
So let's talk now about the analysis.

16:53.120 --> 16:53.360
Okay.

16:53.360 --> 16:56.420
So this first analysis is actually, um, myself.

16:56.420 --> 17:00.700
This is my own, um, analysis on, on my handle at Chenbox.

17:01.020 --> 17:13.940
Um, so on the left side, uh, you'll see a couple of the words here that I've used on a regular basis, of course, with, with the most current recent events, you see mask is used there six times, uh, Twitter.

17:13.940 --> 17:14.200
Okay.

17:14.200 --> 17:18.100
Cause I've, I've had opinions about Twitter on Twitter.

17:18.100 --> 17:18.400
Okay.

17:18.400 --> 17:19.400
So that's, that's there.

17:19.480 --> 17:25.800
Um, now you'll notice that these red blotched out, uh, pieces are actually, um, these are Twitter accounts.

17:25.820 --> 17:26.320
Okay.

17:26.320 --> 17:30.120
Um, and, and how often I've referenced these Twitter accounts.

17:30.120 --> 17:43.540
Uh, so this can be a way that we can, again, we're talking about at a glance, um, we can see, um, who we're looking at, um, who, uh, we're associating with, uh, quite quickly and right, right up front.

17:43.540 --> 17:44.300
Okay.

17:45.000 --> 17:54.280
Um, on the, in the middle, on the, on the top side, you'll see, um, I have a red dot right next to RT, RT, medium course retweet.

17:54.280 --> 17:59.540
And you'll see that my retweet frequency is about 54 times in a 200 tweets sample.

17:59.540 --> 18:00.180
That's what that means.

18:00.180 --> 18:07.760
Remember this is out of, out of 200 tweets, um, 200, uh, tweets, uh, 54 of those were retweets of other people.

18:07.760 --> 18:11.740
And of course, uh, all these Twitter accounts, um, that are blotched out.

18:11.840 --> 18:17.540
Um, I think it would be safe to assume that if I'm not mentioning somebody, um, I'm definitely retweeting them.

18:17.540 --> 18:25.560
Um, at the bottom, you'll see, uh, 2638, which is the word count associated with the last 200 tweets sample of my own personal account.

18:25.600 --> 18:28.540
Uh, I'm using mine as a base, as a baseline.

18:28.980 --> 18:34.860
And on the right side, um, you'll see, uh, hashtags and of course it's frequency.

18:34.860 --> 18:39.760
And at the bottom is the, um, association with the histograms, right?

18:39.760 --> 18:48.300
So it's a histogram, uh, associated with, uh, with the hashtags, uh, there at the top.

18:48.680 --> 18:50.600
And there's, there's my handle.

18:50.600 --> 18:56.420
So you know that this particular, uh, slide was for, for my, uh, own profile analysis.

18:56.780 --> 18:57.520
Uh, okay.

18:57.520 --> 19:01.840
So, um, remember that person that I said got kind of angry with my vague tweet?

19:01.840 --> 19:06.540
Well, this is, uh, this is the analysis slide of, of his account.

19:06.540 --> 19:11.780
So, um, you'll see that there's a couple of differences obviously, um, because we're not exactly the same.

19:11.840 --> 19:26.080
Um, on the left side, we'll see, uh, a couple, he's, he's mentioning a couple of people who, um, are blotched out, um, not as frequently as maybe I do, but you know, these, these profiles are in, in the scan that I've seen.

19:26.520 --> 19:30.080
Uh, you'll see his retweet frequency is 178.

19:30.080 --> 19:38.940
So, so out of 200, out of a 200 tweet sample, we're talking about 178 of those, uh, being retweets, retweets.

19:39.040 --> 19:52.780
Um, and, um, I also hit the, uh, a red dot on the word I, because I was just kind of curious as to see, um, how often somebody is, um, is using I, uh, in a sentence.

19:52.780 --> 19:58.580
I'm sure that there's a psychological profile, uh, based off of, um, the use of that word, right?

19:59.080 --> 20:03.780
And at the bottom, we see, um, the word frequency, 37, uh, 88.

20:03.780 --> 20:16.940
I know that there's math that we can do on, uh, this word pro, or on this, um, on this word count, uh, as far as, uh, calculating, you know, the types of words that we're using, um, how big they are, how small they are, et cetera.

20:17.020 --> 20:31.840
And, and another interesting thing about, uh, this particular analysis is, uh, the histogram on the right side, um, indicates that, um, this particular individual only, uh, tweet, or only uses a hashtag, uh, once, like, uh, one and done.

20:31.840 --> 20:34.160
So, um, I found that to be interesting.

20:34.160 --> 20:38.220
Uh, again, uh, this is for the, uh, at my target.

20:38.220 --> 20:45.640
Um, this is not the actual Twitter account, obviously, um, but I, I thought I had to identify it somehow.

20:46.240 --> 20:50.040
Now, lastly, I'd like to, uh, you know, I used myself as a baseline.

20:50.040 --> 20:54.080
Uh, this is the target's, um, dashboard analysis.

20:54.820 --> 21:00.000
And, uh, this next one is, uh, actually, uh, President Donald Trump.

21:00.000 --> 21:03.940
And we'll see, of course, a couple of, uh, of, of key features here.

21:04.100 --> 21:11.360
Uh, on the left, we don't see the word I, uh, actually we do, but it's no more than 20 times.

21:11.360 --> 21:26.640
Now, uh, for those of us who, who might think that, uh, President Trump is a little bit of a narcissist, uh, we might be kind of surprised, uh, to see that he's only tweeted the word I about 20 times, uh, in a, in a, uh, 200 tweet sample.

21:26.640 --> 21:28.840
At the bottom there, we see 3,400 words.

21:28.840 --> 21:31.560
So these, these are all, you know, kind of interesting, the same stats.

21:31.860 --> 21:37.100
Um, he's retweeted only 96 times, um, in, in the past 200 tweet sample.

21:37.100 --> 21:47.460
Of course, uh, this piece is not so, um, surprising because we know that he uses a lot of his own, um, words, uh, in, in his tweets.

21:47.520 --> 21:50.220
Um, but, uh, back to the left side really quick.

21:50.220 --> 21:56.040
Um, the only blotched out account there, um, I don't know if anybody wants to take a quick guess at what that is.

21:56.040 --> 22:06.140
I know I can't, uh, wait necessarily for your answer as, as, uh, this is the closest that we can get to, um, audience participation at the moment.

22:06.200 --> 22:12.420
Um, but, uh, yes, if, uh, if you guessed that that was his own account, you are correct.

22:12.520 --> 22:17.400
So he's, what I'm saying is he's mentioned himself in his own tweets about 46 times.

22:17.460 --> 22:22.280
Uh, so that might be a, uh, an indicator of narcissism, maybe tweeting in the third person.

22:22.280 --> 22:24.520
We'll have to analyze further for that.

22:24.640 --> 22:30.420
Uh, and on the right side, we'll see, um, again, our histogram and, and hashtag matching.

22:30.420 --> 22:37.340
So, um, uh, President Trump has maybe tweeted a couple of things with hashtags, but of course the recurring one is MAGA.

22:37.340 --> 22:38.620
Is anybody surprised?

22:38.620 --> 22:40.060
I don't think anybody is.

22:40.060 --> 22:40.860
I'm not.

22:40.860 --> 22:47.660
Uh, and actually that would have been three if he didn't, uh, add emojis to that, uh, third MAGA there at the, at the bottom.

22:47.980 --> 23:03.840
Uh, so again, my point is, um, all of this was programmatically, programmatically, excuse me, um, all this was programmatically, um, scraped and, and put together so that we can at a glance, take a look at what, um, a target is talking about.

23:03.860 --> 23:10.380
Uh, and, and this is done, I understand that, you know, this could be easily done through APIs and, uh, other research.

23:10.380 --> 23:14.520
Uh, this is my own, um, basic whiteboard.

23:14.520 --> 23:18.580
This is my own starting from scratch, um, analysis of these targets.

23:18.580 --> 23:23.180
Myself, uh, President Trump because of the sports, uh, betting.

23:23.920 --> 23:30.920
And of course, uh, somebody who got really mad at me for, um, something that was really vague.

23:31.160 --> 23:31.920
Uh, okay.

23:31.920 --> 23:36.740
So now that that's, uh, an overview of the data really quickly, let's take a look at the insights here.

23:37.580 --> 23:43.880
Uh, so some of the insights, um, it seems like, of course, um, retweets indicate shared sentiment.

23:43.880 --> 23:49.120
Well, duh, but the question is, uh, from who, who are we sharing a sentiment with?

23:49.120 --> 24:02.900
Uh, this might give us insights, of course, into, um, who a person is associating with or how frequently or, um, how, how closely related these ideals may be that they share, depending on the retweet, of course.

24:03.320 --> 24:07.240
Um, and of course, we see narcissism in hashtags.

24:07.240 --> 24:14.760
So, uh, you may see, uh, a lot of, um, a lot of your, your own, actually, okay, so there's a couple of things here.

24:14.760 --> 24:28.200
Um, I did forget to, uh, include, um, uh, a screenshot that I have of my target, uh, tweeting himself, like, his own handle, um, in, uh, in the hashtags.

24:28.200 --> 24:37.640
So, it's hashtag his own handle, um, and I, I found that to be very narcissistic, um, kind of interesting, um, but that's something that I wanted to, uh, piece in there.

24:37.640 --> 24:44.880
So, I do apologize for not having that screen cap in there, uh, but I found that to be interesting, and that's why I put that in, in, in here in the insights.

24:45.580 --> 24:53.180
Um, and, uh, repeating hashtags to me, of course, again, this is, this is kind of obvious when it comes to somebody who's a regular Twitter user.

24:53.380 --> 24:59.500
Um, it depicts brand or focus, you know, and of course, we see that with, with, with repeating hashtags.

25:00.580 --> 25:08.540
Um, now, I've noticed that word frequency, um, the word frequency count significantly drops off after stop words.

25:08.540 --> 25:18.480
Um, so, you know, I have a rudimentary, uh, introduction to, uh, natural language processing, so I understand a little bit about tokenization and, um, what stop words are.

25:18.480 --> 25:26.060
Stop words being, like, uh, in the very small, um, words that kind of glue the English letter, uh, language together, right?

25:26.400 --> 25:34.200
Um, and so, again, after, after those words are scraped off the top, the, the frequency of those words, of other words, really drop.

25:34.200 --> 25:38.900
And, of course, uh, for those who are linguists, may already know that.

25:39.920 --> 25:52.600
Um, now, um, obviously, with what we've, uh, with what I've presented today, we know that descriptive statistics are as far as we can get, um, without any sort of, uh, further, um, analysis with better tools.

25:52.600 --> 26:03.540
Better tools being, of course, uh, neurolinguistic, uh, natural language processing, maybe some other, uh, types of, uh, data science tools and, and, uh, techniques.

26:03.540 --> 26:08.460
And so, that is where this work in progress is going to be heading next.

26:09.400 --> 26:12.880
Okay, and so, speaking of which, uh, where do we go from here?

26:12.880 --> 26:17.380
Okay, well, uh, of course, I want to clean up the data collection, data collection methods right now.

26:17.380 --> 26:25.600
It is pretty rough, and I'd like to turn that into something that is, uh, uh, easier to read and, and followed very, uh, very easily.

26:25.700 --> 26:27.760
Now, better data visualization.

26:27.800 --> 26:35.780
Um, I quickly grabbed screenshots together, um, but, of course, I'd like to incorporate word clouds and other charting, maybe better charting, right?

26:36.840 --> 26:38.380
Um, dashboard of data.

26:38.380 --> 26:47.000
I'd like to clean that up so that, again, the, the whole goal is an at-a-glance, uh, for, um, for a Twitter analysis.

26:47.180 --> 26:49.300
Okay, uh, now, what can we do with this?

26:49.300 --> 26:51.500
Well, we could talk about, uh, profile scoring.

26:51.500 --> 27:04.420
So, for instance, um, leanings, whether it's a sentimental leaning, a, uh, political leaning, a corporate leaning, uh, I'd like to see if we can, uh, we can understand that, um, at, at a quick look.

27:04.780 --> 27:21.860
Um, the potential for extremism, um, if, if somebody is getting mad at you for, uh, a tweet that was vague enough for them to project, um, meaning onto it, um, then, then what is the potential for somebody to go kind of a little bit more off the rails?

27:21.860 --> 27:23.900
That's something else that I'd like to look at.

27:24.380 --> 27:32.100
Um, and, of course, um, ongoing, uh, me being a psychology buff, um, you know, ongoing psychological profiles and red flag notifications.

27:32.100 --> 27:37.280
If there's a red flag with anything that we see here in, in their timeline, um, can we detect that?

27:37.280 --> 27:41.580
And, of course, um, I am, I'm almost certain that there's already research out there.

27:41.580 --> 27:46.120
I'd like to continue, uh, looking at that myself and, and, and building from there.

27:47.200 --> 27:48.880
So, features to incorporate.

27:48.880 --> 27:50.220
I've said it a lot already.

27:50.220 --> 27:52.240
Um, natural language processing.

27:52.240 --> 27:55.600
I think that'll be a very, uh, a very good thing to add in here.

27:55.600 --> 27:58.960
Uh, sentiment analysis, also part of, part of that space.

27:58.960 --> 28:00.180
Uh, a mirror bot.

28:00.680 --> 28:11.480
Uh, real quickly, what I want to talk about there is, is, um, if we know how our target speaks, can we make a bot that kind of talks to themselves?

28:11.560 --> 28:13.660
I think that would be kind of funny to watch.

28:13.660 --> 28:20.840
Um, hopefully it doesn't get anybody banned, but I think it'll be, again, it'll be funny to see, just as a funny project.

28:20.840 --> 28:22.540
This is all just, it's just jokes, folks.

28:22.540 --> 28:23.660
It's just jokes.

28:24.520 --> 28:39.620
Um, now, uh, I want to build off of the prior research that, uh, I, myself and, and the community has done, uh, including my, my stalker research and, and anti-stalking research and anything else that the community has done, I'd like to incorporate in what I'm doing now.

28:40.020 --> 28:56.620
Um, and even though we've, even though today I've only shown, uh, three profiles, I'd like to do a quick, uh, mass script, a mass scripted analysis of maybe everybody that is following me or everybody that I'm following, uh, and just see, um, what kind of results,

28:56.620 --> 28:58.300
um, are in their timeline.

28:58.300 --> 28:59.640
Remember, these are public timelines.

28:59.640 --> 29:04.820
And of course, um, I don't want to hit any rate limits, so we'll, we'll do it slowly.

29:05.360 --> 29:14.780
Uh, some, some future questions that are on my mind when it comes to, uh, this is, uh, can I get a target to talk to themselves, uh, and agree or disagree?

29:14.780 --> 29:15.680
I think that'd be funny.

29:15.680 --> 29:18.940
That's, that's what I was mentioning with the, the mirror bot.

29:18.980 --> 29:27.120
Um, can a person have a conversation with themselves and disagree on their own maybe extremist points or non -extremist points, you know?

29:27.760 --> 29:31.020
Uh, next question is, uh, you know, can outrage be predicted?

29:31.020 --> 29:37.060
You know , that's something that I, that's something that I've brought up, um, uh, prior or earlier in, in this talk as well.

29:37.060 --> 29:44.040
Um, could that be predicted based off of what is in the current events in the news, uh, and what's going on globally, uh, at the moment?

29:44.620 --> 29:45.600
Uh, next one.

29:45.600 --> 29:51.340
Of course, uh, any questions that, uh, the audience may have for me, I would definitely want to put that into this project.

29:52.700 --> 29:59.180
So, uh, to summarize, who said nothing came, uh, nothing good came out of sports betting?

29:59.420 --> 30:01.860
I think, uh, I think there's, uh, some benefit here.

30:01.860 --> 30:04.360
I'm glad that I went down this rabbit hole.

30:05.360 --> 30:10.440
Uh, now sharing vague sentiments can, can still make frenemies.

30:10.440 --> 30:17.740
Uh, you know, apparently I've, I was not expecting that even with, uh, today's climate, but hey, it is what it is.

30:17.860 --> 30:20.140
Um, now remember, don't get mad.

30:20.320 --> 30:21.500
Uh, you know, don't get mad.

30:21.500 --> 30:22.620
Don't feed the outrage.

30:22.620 --> 30:26.140
Don't get, don't, you know, don't send the rage back.

30:26.140 --> 30:27.440
Just get productive.

30:27.520 --> 30:29.900
Take what you have and turn it into research.

30:29.900 --> 30:34.140
That's been, that's been my guiding light for the past five years, maybe longer.

30:34.560 --> 30:35.700
Um, start somewhere.

30:35.700 --> 30:40.320
Like I said, this project is definitely a work in progress, um, but I'm going to start somewhere.

30:40.320 --> 30:42.940
And of course we built, uh, okay.

30:42.940 --> 30:46.960
So fork me, there's the link again, the GitHub link.

30:46.960 --> 30:51.880
If you didn't get it before, um, Twitter word frequency and, Oh, sorry.

30:52.020 --> 30:53.660
I'll give you a couple of seconds on that one.

30:54.900 --> 30:58.240
A couple more and resources.

30:58.240 --> 31:07.660
So the top link is actually, uh, another, uh, uh, it's college speech on, um, natural language processing and the, and how that goes.

31:07.880 --> 31:13.540
Um, and then of course, um, Oh, these next two, uh, these next two weeks are very good.

31:13.540 --> 31:14.700
I'll let you check that one out.

31:14.700 --> 31:23.540
Uh, because, uh, those are actually, uh, kind of in line with what I'm trying to do, but on a massive scale for myself, like I'm trying to do this on a massive scale.

31:23.880 --> 31:30.700
Uh, what these last two weeks are doing specifically for Donald Trump's, uh, tweet account.

31:32.140 --> 31:34.200
Uh, thank you very much.

31:34.200 --> 31:37.480
And that concludes my talk.

