<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Juice County Prodigy</title>
    <description>The latest articles on DEV Community by Juice County Prodigy (@juicecountyprodigy).</description>
    <link>https://dev.to/juicecountyprodigy</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F132962%2F2c89a728-c009-40ad-99c5-eb5470a6dcac.jpg</url>
      <title>DEV Community: Juice County Prodigy</title>
      <link>https://dev.to/juicecountyprodigy</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/juicecountyprodigy"/>
    <language>en</language>
    <item>
      <title>How To Lose Every Follower in 10 Days (Spoiler: Automatically Tweet All Your Commits)</title>
      <dc:creator>Juice County Prodigy</dc:creator>
      <pubDate>Mon, 28 Dec 2020 22:05:44 +0000</pubDate>
      <link>https://dev.to/andcomputers_io/how-to-lose-every-follower-in-10-days-spoiler-automatically-tweet-all-your-commits-44c6</link>
      <guid>https://dev.to/andcomputers_io/how-to-lose-every-follower-in-10-days-spoiler-automatically-tweet-all-your-commits-44c6</guid>
      <description>&lt;p&gt;Originally posted at &lt;a href="https://andcomputers.io/how-to-lose-every-follower-in-10-days"&gt;&amp;amp;computers&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  have you ever wanted to lose all of your followers by tweeting every single commit message to the world?
&lt;/h4&gt;

&lt;p&gt;In the typical flow of writing software, developers often employ a tool called &lt;a href="https://en.wikipedia.org/wiki/Git"&gt;git&lt;/a&gt; to keep track of their changes and collaborate with other developers on the project. When we make a bit-sized number of changes that we want to share with our collaborators on the project or that is a good checkpoint, we &lt;strong&gt;&lt;code&gt;commit&lt;/code&gt;&lt;/strong&gt; those changes so others can build on top of them.&lt;/p&gt;

&lt;p&gt;Anyways, this article is about losing followers.. so I'm sharing a teeny project about how to send a tweet every time you make a commit 😅&lt;/p&gt;

&lt;p&gt;If you'd like to see it in action, follow this &lt;a href="https://twitter.com/JuiceCoProdigy"&gt;account&lt;/a&gt;&lt;/p&gt;


&lt;blockquote class="ltag__twitter-tweet"&gt;

  &lt;div class="ltag__twitter-tweet__main"&gt;
    &lt;div class="ltag__twitter-tweet__header"&gt;
      &lt;img class="ltag__twitter-tweet__profile-image" src="https://res.cloudinary.com/practicaldev/image/fetch/s--Vm6vUAZR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://pbs.twimg.com/profile_images/1088220892604350464/7n1p2kvB_normal.jpg" alt="Juice County Prodigy profile image"&gt;
      &lt;div class="ltag__twitter-tweet__full-name"&gt;
        Juice County Prodigy
      &lt;/div&gt;
      &lt;div class="ltag__twitter-tweet__username"&gt;
        @juicecoprodigy
      &lt;/div&gt;
      &lt;div class="ltag__twitter-tweet__twitter-logo"&gt;
        &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--P4t6ys1m--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/twitter-f95605061196010f91e64806688390eb1a4dbc9e913682e043eb8b1e06ca484f.svg" alt="twitter logo"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
    &lt;div class="ltag__twitter-tweet__body"&gt;
      Repository: &lt;a href="https://twitter.com/hashtag/HowToTweetEveryCommit"&gt;#HowToTweetEveryCommit&lt;/a&gt; [automation]: "adds tilde expansion and movement of postcommit files w/ user values"
    &lt;/div&gt;
    &lt;div class="ltag__twitter-tweet__date"&gt;
      02:27 AM - 26 Jan 2019
    &lt;/div&gt;


    &lt;div class="ltag__twitter-tweet__actions"&gt;
      &lt;a href="https://twitter.com/intent/tweet?in_reply_to=1088986733864198149" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="/assets/twitter-reply-action.svg" alt="Twitter reply action"&gt;
      &lt;/a&gt;
      &lt;a href="https://twitter.com/intent/retweet?tweet_id=1088986733864198149" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="/assets/twitter-retweet-action.svg" alt="Twitter retweet action"&gt;
      &lt;/a&gt;
      0
      &lt;a href="https://twitter.com/intent/like?tweet_id=1088986733864198149" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="/assets/twitter-like-action.svg" alt="Twitter like action"&gt;
      &lt;/a&gt;
      0
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/blockquote&gt;
&lt;br&gt;
&lt;em&gt;you'll get lots of these.. actually these are the only tweets that come from this account, lol, enjoy!&lt;/em&gt;
&lt;h2&gt;
  
  
  The "How-To" is Below...
&lt;/h2&gt;



&lt;ol&gt;
&lt;li&gt;Get your developer tokens from &lt;a href="https://apps.twitter.com/"&gt;https://apps.twitter.com/&lt;/a&gt; and make sure your permissions are set to "Read and Write"&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7miH072g--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/http://g.recordit.co/VlZUSa77T2.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7miH072g--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/http://g.recordit.co/VlZUSa77T2.gif" alt="get_dev_tokens"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Fill out the &lt;code&gt;.profiles.ini&lt;/code&gt; file with as many different twitter account keys as you would like.
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[default]
CONSUMER_KEY=your_key
CONSUMER_SECRET=my_secret_key
ACCESS_TOKEN=my_token
ACCESS_TOKEN_SECRET=my_secret_token

[kevindurantactual]
CONSUMER_KEY=your_key
CONSUMER_SECRET=my_secret_key
ACCESS_TOKEN=my_token
ACCESS_TOKEN_SECRET=my_secret_token

[kevindurantfanacct]
CONSUMER_KEY=your_key
CONSUMER_SECRET=my_secret_key
ACCESS_TOKEN=my_token
ACCESS_TOKEN_SECRET=my_secret_token
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;ol&gt;
&lt;li&gt;&lt;p&gt;run &lt;code&gt;pip install -r requirements.txt&lt;/code&gt; to install dependencies (its just &lt;code&gt;tweepy&lt;/code&gt; and &lt;code&gt;configparser&lt;/code&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Run &lt;code&gt;python start_tweeting.py default&lt;/code&gt; to tweet from the account associated with the keys listed under &lt;code&gt;default&lt;/code&gt; in &lt;code&gt;.profiles.ini&lt;/code&gt; &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;When prompted select the folder of the repository you are interested in tweeting out commits for.  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Watch as all your fake friends unfollow you.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;h4&gt;
  
  
  Verify it Worked
&lt;/h4&gt;

&lt;p&gt;Go to the local repository that you selected to tweet from and find the &lt;code&gt;.git&lt;/code&gt; folder. &lt;/p&gt;

&lt;p&gt;&lt;sup&gt;Note that most operating systems have folders that start with "." hidden. To unhide folders on Mac OSX press &lt;code&gt;Command+Shift+.&lt;/code&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Z8sW9rfB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/http://g.recordit.co/vgQZDrphXW.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Z8sW9rfB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/http://g.recordit.co/vgQZDrphXW.gif" alt="unhide_hidden_folders"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once you've found the &lt;code&gt;.git&lt;/code&gt; folder, look for 2 files named &lt;code&gt;post-commit&lt;/code&gt; and &lt;code&gt;post_commit_hook_autogen.py&lt;/code&gt; in the repository's git hooks directory: &lt;code&gt;your_repo/.git/hooks/&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Open the &lt;code&gt;post_commit_hook_autogen.py&lt;/code&gt; file and verify that the Twitter API credentials you supplied are present in the config dictionary. It should look like this.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;python def main():
"""
Get these values from https://apps.twitter.com/
See more detailed instructions in the README.md
"""
cfg = {
    "consumer_key": "some-random-str-thing",
    "consumer_secret": "and-another-one-but-secretive",
    "access_token": "a-long-string-too",
    "access_token_secret" : "a-secretive-long-string"
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  When You Get Tired or Your Follower Count Goes Down to 0
&lt;/h4&gt;

&lt;p&gt;Run the following command: &lt;code&gt;bash stop_tweeting.sh&lt;/code&gt;&lt;br&gt;
Supply the path to the repository that you had previously been terrorizing followers from.  &lt;/p&gt;




&lt;p&gt;&lt;a href="https://github.com/and-computers/HowToTweetEveryCommit"&gt;Start Tweeting Commits&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;&lt;sup&gt;adapted from this &lt;a href="https://gist.github.com/kylefrost/f3841e76749dc64f4b5e"&gt;gist&lt;/a&gt; I changed the gist a bit by using &lt;code&gt;Tweepy&lt;/code&gt; library because I was having some issues with oauth-sign and http-post install from tar.gz was giving me problems and python is just easier. hopefully this makes it a bit more usable for someone else. enjoy!&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;&lt;sup&gt;&lt;a href="https://dev.to/lydiahallie/cs-visualized-useful-git-commands-37p1"&gt;blog post explaining git commands&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;&lt;sup&gt;&lt;a href="https://www.slickremix.com/docs/how-to-get-api-keys-and-tokens-for-twitter/"&gt;GIF Credit for API Keys&lt;/a&gt;&lt;/sup&gt; &lt;/p&gt;

</description>
      <category>twitter</category>
      <category>git</category>
      <category>python</category>
      <category>githooks</category>
    </item>
    <item>
      <title>How To Lose Every Follower in 10 Days</title>
      <dc:creator>Juice County Prodigy</dc:creator>
      <pubDate>Tue, 19 May 2020 02:07:54 +0000</pubDate>
      <link>https://dev.to/andcomputers_io/how-to-lose-every-follower-in-10-days-2n7c</link>
      <guid>https://dev.to/andcomputers_io/how-to-lose-every-follower-in-10-days-2n7c</guid>
      <description>&lt;p&gt;This post originally appeared on the blog &lt;a href="https://andcomputers.io"&gt;&amp;amp;computers&lt;/a&gt; and has been truncated a bit.&lt;/p&gt;

&lt;p&gt;&amp;amp;computers might not have the answers to growing a twitter following, but we just might have the answers to shrinking one. A step-by-step guide to losing all your twitter followers.&lt;/p&gt;

&lt;p&gt;Depending on what type of developer you are, you might have a different pattern of making commits, some people like committing really frequently while some people make commits way less often. It really depends on the nature of the project, who you're working with, team culture, etc. But a generallly accepted rule is to commit early &amp;amp; often.&lt;/p&gt;

&lt;p&gt;Anyways, this article is about losing followers.. so I'm sharing a teeny project about how to send a tweet every time you make a commit 😅&lt;/p&gt;

&lt;p&gt;If you'd like to see it in action, follow this &lt;a href="https://twitter.com/JuiceCoProdigy"&gt;account&lt;/a&gt;&lt;/p&gt;


&lt;blockquote class="ltag__twitter-tweet"&gt;

  &lt;div class="ltag__twitter-tweet__main"&gt;
    &lt;div class="ltag__twitter-tweet__header"&gt;
      &lt;img class="ltag__twitter-tweet__profile-image" src="https://res.cloudinary.com/practicaldev/image/fetch/s--Vm6vUAZR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://pbs.twimg.com/profile_images/1088220892604350464/7n1p2kvB_normal.jpg" alt="Juice County Prodigy profile image"&gt;
      &lt;div class="ltag__twitter-tweet__full-name"&gt;
        Juice County Prodigy
      &lt;/div&gt;
      &lt;div class="ltag__twitter-tweet__username"&gt;
        @juicecoprodigy
      &lt;/div&gt;
      &lt;div class="ltag__twitter-tweet__twitter-logo"&gt;
        &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--52oNvK_0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/twitter-ff4bdab814039c4cb172a35ea369e0ea9c6a4b59b631a293896ae195fa26a99d.svg" alt="twitter logo"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
    &lt;div class="ltag__twitter-tweet__body"&gt;
      Repository: &lt;a href="https://twitter.com/hashtag/HowToTweetEveryCommit"&gt;#HowToTweetEveryCommit&lt;/a&gt; [automation]: "first pass bash script automation of automatic tweeting of commits"
    &lt;/div&gt;
    &lt;div class="ltag__twitter-tweet__date"&gt;
      00:28 AM - 26 Jan 2019
    &lt;/div&gt;


    &lt;div class="ltag__twitter-tweet__actions"&gt;
      &lt;a href="https://twitter.com/intent/tweet?in_reply_to=1088956876237217793" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="/assets/twitter-reply-action.svg" alt="Twitter reply action"&gt;
      &lt;/a&gt;
      &lt;a href="https://twitter.com/intent/retweet?tweet_id=1088956876237217793" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="/assets/twitter-retweet-action.svg" alt="Twitter retweet action"&gt;
      &lt;/a&gt;
      2
      &lt;a href="https://twitter.com/intent/like?tweet_id=1088956876237217793" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="/assets/twitter-like-action.svg" alt="Twitter like action"&gt;
      &lt;/a&gt;
      1
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/blockquote&gt;
&lt;br&gt;
you'll get a bunch of tweets like this.. actually these are the only type of tweets you'll get.. enjoy!



&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Get your developer tokens from &lt;a href="https://apps.twitter.com/"&gt;Twitter's application developer site&lt;/a&gt; and make sure your permissions are set to "Read and Write"&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Fill out the &lt;code&gt;.profiles.ini&lt;/code&gt; file with as many different twitter account keys as you would like.&lt;br&gt;
&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[default] 
CONSUMER_KEY=your_key 
CONSUMER_SECRET=my_secret_key 
ACCESS_TOKEN=my_token 
ACCESS_TOKEN_SECRET=my_secret_token  

[kevindurantactual] 
CONSUMER_KEY=your_key 
CONSUMER_SECRET=my_secret_key 
ACCESS_TOKEN=my_token 
ACCESS_TOKEN_SECRET=my_secret_token  

[kevindurantfanacct] 
CONSUMER_KEY=your_key 
CONSUMER_SECRET=my_secret_key 
ACCESS_TOKEN=my_token 
ACCESS_TOKEN_SECRET=my_secret_token 
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;


&lt;ol&gt;
&lt;li&gt;&lt;p&gt;run &lt;code&gt;pip install -r requirements.txt&lt;/code&gt; to install dependencies (its just &lt;code&gt;tweepy&lt;/code&gt; and &lt;code&gt;configparser&lt;/code&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Run &lt;code&gt;python start_tweeting.py default&lt;/code&gt; to tweet from the account associated with the keys listed under &lt;code&gt;default&lt;/code&gt; in &lt;code&gt;.profiles.ini&lt;/code&gt; &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;When prompted select the folder of the repository you are interested in tweeting out commits for.  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Watch as all your fake friends unfollow you.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;h4&gt;
  
  
  Verify it Worked
&lt;/h4&gt;

&lt;p&gt;Go to the local repository that you selected to tweet from and find the &lt;code&gt;.git&lt;/code&gt; folder. &lt;/p&gt;

&lt;p&gt;&lt;sup&gt;Note that most operating systems have folders that start with "." hidden. To unhide folders on Mac OSX press &lt;code&gt;Command+Shift+.&lt;/code&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;Once you've found the &lt;code&gt;.git&lt;/code&gt; folder, look for 2 files named &lt;code&gt;post-commit&lt;/code&gt; and &lt;code&gt;post_commit_hook_autogen.py&lt;/code&gt; in the repository's git hooks directory: &lt;code&gt;your_repo/.git/hooks/&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Open the &lt;code&gt;post_commit_hook_autogen.py&lt;/code&gt; file and verify that the Twitter API credentials you supplied are present in the config dictionary. It should look like this.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;python def main():
"""
Get these values from https://apps.twitter.com/
See more detailed instructions in the README.md
"""
cfg = {
    "consumer_key": "some-random-str-thing",
    "consumer_secret": "and-another-one-but-secretive",
    "access_token": "a-long-string-too",
    "access_token_secret" : "a-secretive-long-string"
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;h4&gt;
  
  
  When You Get Tired or Your Follower Count Goes Down to 0
&lt;/h4&gt;

&lt;p&gt;Run the following command: &lt;code&gt;bash stop_tweeting.sh&lt;/code&gt;&lt;br&gt;
Supply the path to the repository that you had previously been terrorizing followers from.  &lt;/p&gt;




&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vWogaON8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/github-logo-28d89282e0daa1e2496205e2f218a44c755b0dd6536bbadf5ed5a44a7ca54716.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/and-computers"&gt;
        and-computers
      &lt;/a&gt; / &lt;a href="https://github.com/and-computers/HowToTweetEveryCommit"&gt;
        HowToTweetEveryCommit
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Tweet After All Commit Messages...have you ever wanted to lose all of your followers by tweeting every single commit message to the world? 
    &lt;/h3&gt;
  &lt;/div&gt;
&lt;/div&gt;



&lt;h5&gt;
  
  
  Contributing
&lt;/h5&gt;

&lt;p&gt;Its still pretty early but if you have suggestions, thoughts, feedback, criticism, etc feel free to open a PR or submit an Issue. Thanks in advance 😊 Could definitely use verification that this works on Windows.&lt;/p&gt;




&lt;h6&gt;
  
  
  Supporting
&lt;/h6&gt;

&lt;p&gt;If ya feeling generous, hollr @ the kid ❤️ &lt;br&gt;
&lt;a href="https://patreon.com/andcomputers"&gt;Patreon&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;BTC: 3EbMygEoo8gqgPHxmqa631ZVSwgWaoCj3m&lt;br&gt;
ETH: 0x2F2604AA943dB4E7257636793F38dD3B1808A9e7&lt;br&gt;
LTC: MQVgzNDgw43YzyUg3XmH3jQ7L8ndVswmN3&lt;/p&gt;




&lt;p&gt;&lt;sup&gt;1. adapted from this &lt;a href="https://gist.github.com/kylefrost/f3841e76749dc64f4b5e"&gt;gist&lt;/a&gt; I changed the gist a bit by using &lt;code&gt;Tweepy&lt;/code&gt; library because I was having some issues with oauth-sign and http-post install from tar.gz was giving me problems and python is just easier. hopefully this makes it a bit more usable for someone else. enjoy!&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;&lt;sup&gt;&lt;a href="https://www.slickremix.com/docs/how-to-get-api-keys-and-tokens-for-twitter/"&gt;GIF Credit for API Keys&lt;/a&gt;&lt;/sup&gt; &lt;/p&gt;

</description>
      <category>twitter</category>
      <category>githooks</category>
      <category>python</category>
    </item>
    <item>
      <title>Anatomy of The Emoji</title>
      <dc:creator>Juice County Prodigy</dc:creator>
      <pubDate>Sat, 15 Jun 2019 02:07:47 +0000</pubDate>
      <link>https://dev.to/andcomputers_io/anatomy-of-the-emoji-21d</link>
      <guid>https://dev.to/andcomputers_io/anatomy-of-the-emoji-21d</guid>
      <description>&lt;p&gt;&lt;a href="https://andcomputers.io/anatomy-of-an-emoji/"&gt;This post originally appeared on &amp;amp;computers&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Plus Kimoji just shut down the app store, ah!
And we made a million a minute, we made a million a minute
(We did)
Yeah, we made a million a minute, we made a million a minute, ah!
- Kanye West: Facts (Charlie Heat Version)
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;"Kimojis" are actually &lt;strong&gt;NOT&lt;/strong&gt; an officially recognized set of emojis. They're literally just pictures with no universally accepted text representation.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VxikexfS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/elc1c4dw1t13cl63ng2q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VxikexfS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/elc1c4dw1t13cl63ng2q.png" alt="This &amp;amp;!%$ Emojis Not Even Real Unicode!!!&amp;lt;br&amp;gt;
"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;This &amp;amp;!%$ Emojis Not Even Real Unicode!!!&lt;/em&gt;&lt;/p&gt;
&lt;h5&gt;
  
  
  What Is an Emoji Really Though
&lt;/h5&gt;

&lt;p&gt;Every emoji is represented by a specific alphanumeric code. For instance the code U+1F412&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cUP2GRcS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/e50ezs6bxvs8cl9ofuyi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cUP2GRcS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/e50ezs6bxvs8cl9ofuyi.png" alt=""&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;&lt;code&gt;U+1F412&lt;/code&gt;: also referred to as a monkey in some parts of the world.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;These representations are decided upon by a very official non-profit organization called the &lt;a href="https://en.wikipedia.org/wiki/Unicode_Consortium"&gt;Unicode Consortium&lt;/a&gt; which includes Apple, Google, IBM, Adobe Systems and a number of other corporations with interests in text-processing.&lt;/p&gt;

&lt;p&gt;A special committee within the consortium decides which emojis get included as part of the official unicode standard. The Unicode Consortium is responsible for a number of other really important things such as figuring out how computers should represent text from languages with completely different character sets.&lt;sup&gt;1&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;Such considerations can be a huge deal for developers, especially when attempting to create global applications that will serve a multilingual user base. It's equal parts beautiful, disturbing, and inspiring exactly how much thought goes into these things.&lt;sup&gt;2&lt;/sup&gt;&lt;br&gt;
The whole point of unicode generally speaking is to create a unified and universal representation of characters for use across computing. Luckily for everyone, this includes the emojis that provide a much appreciated level of richness to text conversations around the world.&lt;/p&gt;
&lt;h5&gt;
  
  
  Putting it All Together
&lt;/h5&gt;

&lt;p&gt;The following equation shows how different emojis are combined to give way to lots of different representations, its almost like its own little language. Actually I think that's exactly what it is.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--5PHESVBQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/65mtmtcfbxpes5rrgcso.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--5PHESVBQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/65mtmtcfbxpes5rrgcso.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A few interesting notes:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;U+1F3FF is one of six emojis used to represent skin tones. Emoji skin tones are based on the Fitzpatrick scale which classifies skin based on how it responds to ultraviolet (UV) light, not ethnicity.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;You may notice two extra code points: U+200D and U+FE0F. These are special characters that help manage the display/form of different characters or combinations of characters.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h5&gt;
  
  
  Bonus Section
&lt;/h5&gt;

&lt;p&gt;If you happen to be a developer or are just interested in fooling around, here are two code snippets you might be interested in. I'd suggest them if you are considering doing any type of project with emojis and text processing. Also, check out &lt;a href="https://andcomputers.io/unrequited-love-as-told-by-a-computer/"&gt;this post&lt;/a&gt; for an interesting example of how I used these in a fun project.&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Regular expression in Python 2 for finding emojis within text.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://gist.github.com/weallwegot/b49326ac107a87b9cbcc3a0691d25fa6"&gt;This second one isn't getting embedded because, it'd be a lot of scrolling, but check it out here. A dictionary with keys as emoji unicodes and values as their descriptions.&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;&lt;sup&gt;1&lt;/sup&gt; &lt;a href="https://unicode-table.com/en/#arabic"&gt;Unicode characters in Arabic&lt;/a&gt;&lt;br&gt;
&lt;sup&gt;2&lt;/sup&gt; &lt;a href="https://www.joelonsoftware.com/2003/10/08/the-absolute-minimum-every-software-developer-absolutely-positively-must-know-about-unicode-and-character-sets-no-excuses/"&gt;Required reading for developers&lt;/a&gt;&lt;/p&gt;

</description>
      <category>unicode</category>
      <category>emoji</category>
      <category>education</category>
    </item>
    <item>
      <title>0: The Kernel</title>
      <dc:creator>Juice County Prodigy</dc:creator>
      <pubDate>Fri, 22 Feb 2019 03:45:47 +0000</pubDate>
      <link>https://dev.to/andcomputers_io/0-kernel-1f4k</link>
      <guid>https://dev.to/andcomputers_io/0-kernel-1f4k</guid>
      <description>

&lt;h6&gt;
  
  
  &lt;em&gt;This post was originally published on &lt;a href="https://andcomputers.io/genesis/?utm_source=dev.to&amp;amp;utm_medium=crossplatformpost&amp;amp;utm_campaign=devtocrosspost"&gt;&amp;amp;computers.io&lt;/a&gt;&lt;/em&gt;
&lt;/h6&gt;




&lt;p&gt;Each day we spend an obscene number of hours bathed in the glow of computers and the technologies that they enable. This fact is not up for debate, nor is it difficult to prove. &lt;/p&gt;

&lt;p&gt;My peaceful sleep this morning was interrupted by the sounds generated by the tiny, freakishly powerful computer that spends most of its time in the right pocket of my  jeans. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fxs7t6p0z7dw1b5w1df2m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fxs7t6p0z7dw1b5w1df2m.png" alt="iphone photo"&gt;&lt;/a&gt;&lt;br&gt;The computer that disturbed my sleep this morning.
&lt;/p&gt;

&lt;p&gt;The bed that I slept on, ordered on the internet. &lt;/p&gt;

&lt;p&gt;The memory foam mattress is made of polyurethane foam. What's that have to do with computers you ask? Well... the production of polyurethane is only made possible by carefully controlled chemical processes. Those processes are kept at super precise operating conditions based on a continuous loop of measurements and adjustments enabled by controls software running on a programmable logic controller. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fe14zdz41nvm9b0q32cvq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fe14zdz41nvm9b0q32cvq.png" alt="plcphoto"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Another computer. Played a critical role in making my comfy mattress.&lt;/p&gt;

&lt;p&gt;There are more obvious examples of  where computers affect our day to day, but they aren't as fun or random. In fact, the mission of this blog is to shed light on the &lt;em&gt;less&lt;/em&gt; obvious examples of where computers and technology impact our every day life. To examine what happens when you apply the logic of computer science and the power of programming to questions that don't usually get that treatment. &lt;/p&gt;

&lt;p&gt;Hence, the title &lt;strong&gt;&amp;amp;computers. &lt;/strong&gt;It's a nod to the under-explored frontiers that might prove even more interesting when looked at under a new light. Think &lt;em&gt;blank&lt;/em&gt; &amp;amp; computers; where the &lt;em&gt;blank&lt;/em&gt; can be anything and everything that you might be interested in. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F8pn567jk4ke5vf775p5b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F8pn567jk4ke5vf775p5b.png" alt="longblacklogo"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;My hope for the blog is twofold:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt; touches on topics that "computer people" (whatever that means) don't usually talk about.&lt;/li&gt;
&lt;li&gt;brings people who don't normally find computers particularly interesting or accessible into the fold and get them excited about technology/programming, the magic it can create, the questions it can help us answer, and the people it can help us reach.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Thanks for reading and please post comments, discussion, feedback, article suggestions etc. in the forums. I'm looking forward to hearing from everyone. Seriously.&lt;/p&gt;

&lt;p&gt;Onward &amp;amp; Upward,&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F828jvqnfh5fwapmo2749.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F828jvqnfh5fwapmo2749.png" alt="black man technologist emoji"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I just made ten racks on the internet, put my work up on the web, I ain't finished yet.&lt;/p&gt;

&lt;p&gt;- tres digital&lt;/p&gt;

&lt;p&gt;&lt;iframe width="100%" height="166" src="https://w.soundcloud.com/player/?url=https://soundcloud.com/tres_digital/silicon-icon&amp;amp;auto_play=false&amp;amp;color=%23000000&amp;amp;hide_related=false&amp;amp;show_comments=true&amp;amp;show_user=true&amp;amp;show_reposts=false&amp;amp;show_teaser=true"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>blogging</category>
      <category>life</category>
      <category>culture</category>
      <category>diversity</category>
    </item>
    <item>
      <title>Relationship Autopsy: A Story of Unrequited Love as Told By a Computer</title>
      <dc:creator>Juice County Prodigy</dc:creator>
      <pubDate>Thu, 21 Feb 2019 02:17:27 +0000</pubDate>
      <link>https://dev.to/andcomputers_io/relationship-autopsy-a-story-of-unrequited-love-as-told-by-a-computer-146k</link>
      <guid>https://dev.to/andcomputers_io/relationship-autopsy-a-story-of-unrequited-love-as-told-by-a-computer-146k</guid>
      <description>&lt;p&gt;Originally published on &lt;a href="https://andcomputers.io/unrequited-love-as-told-by-a-computer/?utm_source=dev.to&amp;amp;utm_medium=crossplatformpost&amp;amp;utm_campaign=devtocrosspost"&gt;andcomputers.io&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--WR_oEdmN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/hpab4zjwnfd2m01u6ufn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WR_oEdmN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/hpab4zjwnfd2m01u6ufn.png" alt="dont hit me when you in my city"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;Happy Beginnings&lt;/h4&gt;
&lt;p&gt;Once upon a time I met somebody. We texted all. damn. day. It was great. Apart from the impending flexibility limits in my thumbs, life was looking up.&lt;/p&gt;
&lt;p&gt;I was like "cool", I'll probably be married soon, I should call my mom.&lt;/p&gt;

&lt;h4&gt;The Beginning of the End&lt;/h4&gt;

&lt;p&gt;Alas, I was wrong. Completely and utterly. Things started to slowly fizzle out and to this day i'm not really sure why, but I should've seen it coming. &lt;/p&gt;
&lt;p&gt;Anyways, this story not really about this person, its about how my computer told me they just were not that into me. The data was all there, it just needed to be explored. &lt;/p&gt;

&lt;p&gt;Below I'll share how I built a somewhat general purpose tool&lt;sup&gt;1&lt;/sup&gt; to analyze iPhone text messages and what I learned.&lt;/p&gt;


&lt;h4&gt;The Actual End&lt;/h4&gt;
&lt;p&gt;It was raining super heavy outside... yet my phone was dry asf. Weird I thought. I usually get some texts coming in around this time. I think.&lt;/p&gt;

&lt;p&gt;I'm racking my brain trying to remember if we had talked yesterday around this time.&lt;/p&gt;
&lt;p&gt;I can't recall...What about this day last week?...Hmmm.&lt;/p&gt;

&lt;p&gt; I'm coming up empty...I couldn't remember for the life of me if we had talked &lt;em&gt;more&lt;/em&gt; or &lt;em&gt;less&lt;/em&gt; in this last week than usual.&lt;/p&gt; 

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7UJsTvs1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/b8sucvvp8l7wdojuo21i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7UJsTvs1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/b8sucvvp8l7wdojuo21i.png" alt="bad text conversation"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Was our nascent relationship fizzling out or heating up?&lt;/p&gt;
&lt;p&gt;My intuition was telling me the former, but I wanted to see it for myself with some quantitative backing.&lt;/p&gt;
&lt;p&gt;After a few minutes of thinking I knew precisely how I'd be spending the next few evenings of my life. &lt;/p&gt;
&lt;h4&gt;The Mission&lt;/h4&gt;
&lt;p&gt;First thing I did was open up the iMessages app on my computer and start copying and pasting the conversation into a text file. &lt;/p&gt;
&lt;p&gt;A Fucking Terrible Idea™. A few minutes in and I realize I'll be doing this for at least 9 and a half hours before I get the whole conversation transferred into a readable file; there are thousands of texts. &lt;/p&gt;
&lt;p&gt;There had to be a more efficient way to do this. I hoped (for both my curiosity and my rapidly deteriorating sense of normalcy) that I wasn't the only person in the world who had ever wanted to dump all of their text messages into &lt;code&gt;.txt&lt;/code&gt; files.&lt;/p&gt;
&lt;p&gt;After some google searching and stackoverflow investigations, things weren't looking too hot. I headed over to Github, a site where people share the code for their projects, and eventually stumble across this &lt;a href="https://github.com/PeterKaminski09/baskup"&gt;gem&lt;/a&gt;.&lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vJ70wriM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/github-logo-ba8488d21cd8ee1fee097b8410db9deaa41d0ca30b004c0c63de0a479114156f.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/PeterKaminski09"&gt;
        PeterKaminski09
      &lt;/a&gt; / &lt;a href="https://github.com/PeterKaminski09/baskup"&gt;
        baskup
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Comprehensive iMessage Backup
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;h2&gt;
What is Baskup? 📲 + 💬 = 📦
&lt;/h2&gt;
&lt;p&gt;Baskup is a bash script and macOS app that are aimed at converting iMessages, which Apple stores on your local machine in non-readable iChat files, into human-readable .txt files that you can read and keep as backups on your computer
Whether it's a group message, picture, audio file, iMessage, or SMS, Baskup will back it up.&lt;/p&gt;
&lt;h3&gt;
&lt;em&gt;Update: 12/19/2018&lt;/em&gt; -- 🚧 Baskup 3.0 for Mac is under construction 🚧
&lt;/h3&gt;
&lt;p&gt;The Mac version of Baskup is under some construction in an effort to distribute the app on Apple's macOS app store.&lt;/p&gt;
&lt;p&gt;In the meantime, you can still use the command-line script on Github and keep an eye out for updates as they will be posted to this page.&lt;/p&gt;
&lt;h3&gt;
&lt;em&gt;Update: 11/16/2018&lt;/em&gt; -- macOS Mojave updates&lt;/h3&gt;
&lt;p&gt;Due to Apple security improvements, macOS Mojave users will need to add the program to the System Preferences → Security…&lt;/p&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/PeterKaminski09/baskup"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;Somebody with equally questionable intentions had built a tool for Macs that finds the &lt;code&gt;chat.db&lt;/code&gt; file. The file contains all of your conversations; provided that your iPhone is synced with your Mac. I was in luck, as a budding Apple Fanboy, my texts were definitely in that file. I run the program and after a few minutes of bash script magic - it finished!&lt;/p&gt;
&lt;p&gt;Coooool, I had the text messages... At this point I'm already feeling like I just hacked into the Pentagon's highest security server. Side note: I have an astoundingly low bar for feeling like I'm doing very advanced things on my computer. Black screen + white text and I swear I'm &lt;em&gt;literally&lt;/em&gt; inside of the matrix.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;gt; me, inside the matrix.
&amp;lt;code&amp;gt;h4x0r&amp;lt;/code&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;As I'm was writing this, I realize that going through all the gory details about the implementation will probably take too long. I've written up a more in depth article as a &lt;a href="https://andcomputers.io/conversational-analytics-a-technical-walkthrough/"&gt;separate blog post&lt;/a&gt; that focuses on the technical aspects. If I do it here I'll get super carried away, so I'll just skip to the fun part.&lt;/p&gt;
&lt;h4&gt;Quantifying an Almost-Sorta-Kinda-Mostly-Not-Relationship&lt;/h4&gt;
&lt;h6 id="cumulative-statistics"&gt;Cumulative statistics&lt;/h6&gt;
&lt;p&gt;First things first, a quick look at some stats over the length of the text conversation, from the first text sent........to the last. &lt;em&gt;sigh&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--RB3oyBLl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/qfw24gmxh0438cj8e6vd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--RB3oyBLl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/qfw24gmxh0438cj8e6vd.png" alt="table with stats"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Overall, things don't look too bad in my opinion. We're pretty much even in most things if you ignore the &lt;code&gt;Link Rate&lt;/code&gt; metric; I read and share tons of articles in general, so no surprises there. &lt;/p&gt;
&lt;p&gt;The emojis look like we're laughing a lot and I'm eliciting many eye rolls as a result of being annoying. Again, no surprises there.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;Number of Texts Sent&lt;/code&gt; has an asterisk because the program has a special decision making process for determining what a "text" really is. If you're curious on the details check out the &lt;a href="the%20other%20articlesSE!"&gt;technical write up&lt;/a&gt;! &lt;/p&gt;
&lt;p&gt;The real kicker comes when you look at data over time. &lt;/p&gt;
&lt;p&gt;... &lt;em&gt;big sigh&lt;/em&gt;&lt;/p&gt;
&lt;h6 id="trends-over-time"&gt;Trends over time&lt;/h6&gt;
&lt;p&gt;I decided to break the texts into three periods of about 15 days each. Viewing the graph below, which indicates how many texts were shared between two participants, its pretty clear what the phases were. Looking back, I realize that had I just paused for some computer-aided reflection, I could have seen, quantitatively, that our days were numbered.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;First Phase&lt;/strong&gt;: frenetic high volume texting, life is good, no worries&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Second Phase&lt;/strong&gt;: sustained and steady, healthy conversation&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Third Phase&lt;/strong&gt;: "im good luv, enjoy"&lt;/p&gt;


&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Qr29hscZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/go0cdhdsi7bmty8lhbxb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Qr29hscZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/go0cdhdsi7bmty8lhbxb.png" alt="texts over time"&gt;&lt;/a&gt;&lt;/p&gt;
Peep the slope to get a feel for conversation pace.




&lt;p&gt;I've plotted each metric contained  above over the three phases to see how these numbers trended over time. &lt;/p&gt;


&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ulFzBEMr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/c1q4xkva21ilz7mcvcbb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ulFzBEMr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/c1q4xkva21ilz7mcvcbb.png" alt="phases of texting with metrics"&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;&lt;strong&gt;Last Phase Takeaways&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt; &lt;code&gt;wait time&lt;/code&gt;: Super high delays between messages on both sides.&lt;/p&gt;
&lt;p&gt; &lt;code&gt;link rate&lt;/code&gt;: Lmao, 0.0 percent in the last phase. I for one, still had lots to share!&lt;/p&gt;
&lt;p&gt;&lt;code&gt;emoji rate&lt;/code&gt;: We trended in complete opposite directions in our emoji usage.&lt;/p&gt;
&lt;p&gt; &lt;code&gt;texts sent&lt;/code&gt;: Clearly the number of texts sent in the last phase was way lower than any other period of time.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;average length&lt;/code&gt;: Along with there being less texts, each text was getting shorter over time. &lt;/p&gt;
&lt;h6 id="reflections"&gt;Reflections&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt;I'm washed.&lt;/li&gt;
&lt;li&gt;I probably didn't need a computer to tell me this.&lt;/li&gt;
&lt;li&gt;I'm a chronic over-sharer.&lt;/li&gt;
&lt;li&gt;May have enjoyed writing the code more than talking to humans... ?&lt;/li&gt;
&lt;/ul&gt;
&lt;h6 id="bonus-section"&gt;Bonus Section&lt;/h6&gt;
&lt;p&gt;There was some analysis on segmenting texts by day of the week and hour of the day that didn't provide a ton of insight but was still fun to do and provided cool visualization options. I'm including some extra plots just for fun, but I honestly don't have much to say about them. As you can imagine there's a lot of stuff not included in this article because of space and time, but there are tons of ways to slice and dice this data, here are a couple.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---u-DPBp6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/j17h0il6i7pc255al5rb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---u-DPBp6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/j17h0il6i7pc255al5rb.png" alt="number of texts by hour"&gt;&lt;/a&gt;&lt;/p&gt;
Check The Late Night Though (RNH) 😎





&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--wcNxz8Ls--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/pj10gjfwiefcgxkkqxa6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--wcNxz8Ls--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/pj10gjfwiefcgxkkqxa6.png" alt="wait time by day of week"&gt;&lt;/a&gt;&lt;br&gt;Keeping Sunday Holy 🙏🏿
&lt;/p&gt;




&lt;p&gt;&lt;a href="https://github.com/weallwegot/conversation-analytics"&gt;Source Code Available Here&lt;/a&gt;&lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vJ70wriM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/github-logo-ba8488d21cd8ee1fee097b8410db9deaa41d0ca30b004c0c63de0a479114156f.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/weallwegot"&gt;
        weallwegot
      &lt;/a&gt; / &lt;a href="https://github.com/weallwegot/conversation-analytics"&gt;
        conversation-analytics
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      find out all the important statistics and breakdowns of your iphone conversations.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;p&gt;&lt;a href="https://travis-ci.org/weAllWeGot/conversation-analytics" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/27ba6178f00b56950f5508925df32ade508491bc/68747470733a2f2f7472617669732d63692e6f72672f7765416c6c5765476f742f636f6e766572736174696f6e2d616e616c79746963732e7376673f6272616e63683d6d6173746572" alt="Build Status"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://coveralls.io/github/weAllWeGot/conversation-analytics?branch=master" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/35fbe7685894659ed1f226b9c3ccd7e6ae7895d3/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f6769746875622f7765416c6c5765476f742f636f6e766572736174696f6e2d616e616c79746963732f62616467652e7376673f6272616e63683d6d6173746572" alt="Coverage Status"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
&lt;a href="https://andcomputers.io/unrequited-love-as-told-by-a-computer/" rel="nofollow"&gt;Why Does this Project Exist?&lt;/a&gt;
&lt;/h2&gt;
&lt;h2&gt;
&lt;a href="https://andcomputers.io/conversational-analytics-a-technical-walkthrough/" rel="nofollow"&gt;Developer's Walkthrough&lt;/a&gt;
&lt;/h2&gt;
&lt;h4&gt;
Double Text Rate Broken Down by Day of Week and Time of Day&lt;/h4&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/85d3001995bd71dd69f7bb3b5d3ac97c11ec1bf5/68747470733a2f2f696d6167652e6962622e636f2f6679676d44762f626f6b65685f706c6f745f31312e706e67"&gt;&lt;img src="https://camo.githubusercontent.com/85d3001995bd71dd69f7bb3b5d3ac97c11ec1bf5/68747470733a2f2f696d6167652e6962622e636f2f6679676d44762f626f6b65685f706c6f745f31312e706e67" alt="img"&gt;&lt;/a&gt;
&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/6bd4338a61aaa8843630fb545964ee9b8e66f885/68747470733a2f2f696d6167652e6962622e636f2f636471326d462f626f6b65685f706c6f745f31302e706e67"&gt;&lt;img src="https://camo.githubusercontent.com/6bd4338a61aaa8843630fb545964ee9b8e66f885/68747470733a2f2f696d6167652e6962622e636f2f636471326d462f626f6b65685f706c6f745f31302e706e67" alt="img"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
Overall Emoji Usage&lt;/h4&gt;
&lt;p&gt;top_emojis_Me
thinking face, face with rolling eyes
person shrugging: dark skin tone, person shrugging
pensive face, weary face, face with tears of joy,
smiling face with smiling eyes, hugging face,eyes&lt;/p&gt;
&lt;p&gt;top_emojis_Friend:
weary face, face with tears of joy,
face with rolling eyes, expressionless face,
thinking face, person tipping hand: medium-dark skin tone,
skull, person tipping hand, OK hand: medium-dark skin tone,
hugging face&lt;/p&gt;
&lt;h4&gt;
Median Wait Time to Get a Reply&lt;/h4&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/25aa44ee3386aad4259ccd5a22262592bd4bd0a8/68747470733a2f2f696d6167652e6962622e636f2f6847735244762f626f6b65685f706c6f745f322e706e67"&gt;&lt;img src="https://camo.githubusercontent.com/25aa44ee3386aad4259ccd5a22262592bd4bd0a8/68747470733a2f2f696d6167652e6962622e636f2f6847735244762f626f6b65685f706c6f745f322e706e67" alt="img"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/4ff7eeb692acc8bd3b4d6ddc624f9bda9e41b747/68747470733a2f2f696d6167652e6962622e636f2f6655634636462f626f6b65685f706c6f745f312e706e67"&gt;&lt;img src="https://camo.githubusercontent.com/4ff7eeb692acc8bd3b4d6ddc624f9bda9e41b747/68747470733a2f2f696d6167652e6962622e636f2f6655634636462f626f6b65685f706c6f745f312e706e67" alt="img"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
Laughing Rate Broken Down by Day of Week and Time of Day&lt;/h4&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/4b4ef64b1c75f159d4fa4ae1df96d6791283f569/68747470733a2f2f696d6167652e6962622e636f2f6257797a59762f626f6b65685f706c6f745f392e706e67"&gt;&lt;img src="https://camo.githubusercontent.com/4b4ef64b1c75f159d4fa4ae1df96d6791283f569/68747470733a2f2f696d6167652e6962622e636f2f6257797a59762f626f6b65685f706c6f745f392e706e67" alt="img"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/248348be9885cde5548f7a2916110de3c5a4d048/68747470733a2f2f696d6167652e6962622e636f2f6e674a4e6d462f626f6b65685f706c6f745f382e706e67"&gt;&lt;img src="https://camo.githubusercontent.com/248348be9885cde5548f7a2916110de3c5a4d048/68747470733a2f2f696d6167652e6962622e636f2f6e674a4e6d462f626f6b65685f706c6f745f382e706e67" alt="img"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
Number of Texts Sent by Time of Day&lt;/h4&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/15b2d1361fe93d06f40be3c0242cee890fe2f6b8/68747470733a2f2f696d6167652e6962622e636f2f6779775766612f626f6b65685f706c6f745f332e706e67"&gt;&lt;img src="https://camo.githubusercontent.com/15b2d1361fe93d06f40be3c0242cee890fe2f6b8/68747470733a2f2f696d6167652e6962622e636f2f6779775766612f626f6b65685f706c6f745f332e706e67" alt="img"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
Cursing Rates as a Percentage of Texts Sent&lt;/h4&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/66a97d002af3f76a51fcdc5354d1ff0b7b957678/68747470733a2f2f696d6167652e6962622e636f2f6368546f52462f626f6b65685f706c6f745f31352e706e67"&gt;&lt;img src="https://camo.githubusercontent.com/66a97d002af3f76a51fcdc5354d1ff0b7b957678/68747470733a2f2f696d6167652e6962622e636f2f6368546f52462f626f6b65685f706c6f745f31352e706e67" alt="img"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/7f263620673ff35c709a3dd69e122be44ea58f06/68747470733a2f2f696d6167652e6962622e636f2f6a48774b59762f626f6b65685f706c6f745f31342e706e67"&gt;&lt;img src="https://camo.githubusercontent.com/7f263620673ff35c709a3dd69e122be44ea58f06/68747470733a2f2f696d6167652e6962622e636f2f6a48774b59762f626f6b65685f706c6f745f31342e706e67" alt="img"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
Number of Links Sent as a Percentage of Texts Sent&lt;/h4&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/dc7641d5fa79b9bd1ffe2273efae13fa89e2f911/68747470733a2f2f696d6167652e6962622e636f2f6d45444e6d462f626f6b65685f706c6f745f31332e706e67"&gt;&lt;img src="https://camo.githubusercontent.com/dc7641d5fa79b9bd1ffe2273efae13fa89e2f911/68747470733a2f2f696d6167652e6962622e636f2f6d45444e6d462f626f6b65685f706c6f745f31332e706e67" alt="img"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/e4ee168279d7d33cb031d2c5dacf3af8e8d9b4fd/68747470733a2f2f696d6167652e6962622e636f2f69754f634c612f626f6b65685f706c6f745f31322e706e67"&gt;&lt;img src="https://camo.githubusercontent.com/e4ee168279d7d33cb031d2c5dacf3af8e8d9b4fd/68747470733a2f2f696d6167652e6962622e636f2f69754f634c612f626f6b65685f706c6f745f31322e706e67" alt="img"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
How Many Texts Were Sent on an Hourly Basis&lt;/h4&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/aa7a5f1d8eaa41907fb9e9b201a7e9a052b3674f/68747470733a2f2f696d6167652e6962622e636f2f6575696f52462f626f6b65685f706c6f745f342e706e67"&gt;&lt;img src="https://camo.githubusercontent.com/aa7a5f1d8eaa41907fb9e9b201a7e9a052b3674f/68747470733a2f2f696d6167652e6962622e636f2f6575696f52462f626f6b65685f706c6f745f342e706e67" alt="img"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
How Many Texts Were Sent Cumulatively&lt;/h4&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/be49fae796f673e946f8984c0aa16d661faae3b4/68747470733a2f2f696d6167652e6962622e636f2f6378433430612f626f6b65685f706c6f745f352e706e67"&gt;&lt;img src="https://camo.githubusercontent.com/be49fae796f673e946f8984c0aa16d661faae3b4/68747470733a2f2f696d6167652e6962622e636f2f6378433430612f626f6b65685f706c6f745f352e706e67" alt="img"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;
conversation-analytics&lt;/h1&gt;
&lt;p&gt;understand social dynamics…&lt;/p&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/weallwegot/conversation-analytics"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;As always thanks for reading, and please share your thoughts! Think I'm a weirdo? Coolest project you've ever seen? Ban me from using computers till my 40th birthday? Want to conduct your own post mortem relationship analysis? Suggestions for different metrics?&lt;/p&gt;



&lt;p&gt;&lt;sup&gt;1&lt;/sup&gt; Being the shitty developer that I am, the tool only works through a command line interface (CLI).  One day I'll build a UI and make the program run continuously. Just not today.. and probably not tomorrow.&lt;/p&gt;

</description>
      <category>python</category>
      <category>opensource</category>
      <category>analytics</category>
      <category>nlp</category>
    </item>
  </channel>
</rss>
