<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>drew.lanen.ga</title>
    <description>Source for drew.lanen.ga</description>
    <link>http://drew.lanen.ga/</link>
    <atom:link href="http://drew.lanen.ga/feed.xml" rel="self" type="application/rss+xml"/>
    <pubDate>Mon, 08 Feb 2021 17:47:35 +0000</pubDate>
    <lastBuildDate>Mon, 08 Feb 2021 17:47:35 +0000</lastBuildDate>
    <generator>Jekyll v3.9.0</generator>
    
      <item>
        <title>2017 Reading List</title>
        <description>&lt;p&gt;I had a friend ask the other day on Facebook for some recommendations for good, short books to read in 2017.&lt;/p&gt;

&lt;p&gt;I thought about books that I could suggest, but very quickly realized that the books that I read aren’t short, and, after I reflected a little, realized that this creates some problems for me — either I lose momentum and don’t finish, or I end up finishing after a seemingly Sisyphean effort that doesn’t feel satisfying.&lt;/p&gt;

&lt;p&gt;So I decided to search for the best, shortest books I could read in 2017.  I started by pulling data from Goodreads.&lt;/p&gt;

&lt;h2 id=&quot;goodreads&quot;&gt;Goodreads&lt;/h2&gt;

&lt;p&gt;Goodreads is a service that lets users rate books and network with other readers.  Each book is rated on a 5-point scale.  Books can be compiled into reading lists and shared with other users.&lt;/p&gt;

&lt;p&gt;There are &lt;em&gt;a lot&lt;/em&gt; of books on Goodlist, so in an effort to pull from only the best books, I included only books included on 30 of the most popular “Best Of” lists on the site&lt;sup id=&quot;fnref:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:1&quot; class=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt;.  That gave me about 34,000 books to choose from.&lt;/p&gt;

&lt;h2 id=&quot;ratings-and-rankings&quot;&gt;Ratings and Rankings&lt;/h2&gt;

&lt;p&gt;Next, I had to rank the books.  I wanted to avoid one of my biggest annoyances when using rating data — ignoring the trade-off between rating and sample size.  If I’m looking for pizza on Yelp, why would a restaurant with a single review of 5-stars rank higher than a restaurant with a 4.9 rating based on 1,000 reviews?&lt;/p&gt;

&lt;p&gt;My method for overcoming this was to assume a Dirichlet prior over a Multinomial likelihood&lt;sup id=&quot;fnref:2&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:2&quot; class=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt;.  The posterior rating would then give us an estimate on the rating that help penalize obscure books until they demonstrated enough evidence of their acclaim.&lt;/p&gt;

&lt;p&gt;The prior I used was based on the aggregate rating of a typical book — one-half of the median of each possible rating, which resulted in &lt;em&gt;Dirichlet(13.5, 42.5, 180.5, 293, 264)&lt;/em&gt;&lt;sup id=&quot;fnref:3&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:3&quot; class=&quot;footnote&quot;&gt;3&lt;/a&gt;&lt;/sup&gt;.  You can think of it as saying that we’ll assume a book will get 13.5 one-star reviews, 42.5 two-star reviews, 180.5 three-star reviews, 293 four-star reviews, and 264 five-star reviews.  Then, each rating observed in the data builds upon the prior assumptions, so each book has to prove its rating, relative to all the other books.&lt;/p&gt;

&lt;h2 id=&quot;the-final-list&quot;&gt;The Final List&lt;/h2&gt;

&lt;p&gt;So, once I had 34,000 books, their length and their rating, I could finally generate my reading list.&lt;/p&gt;

&lt;p&gt;I only had one constraint on the books in my list — they had to be less than 200 pages.  So I generated my reading list, and was surprised to see that more than half of the list comprised of &lt;em&gt;Calvin and Hobbes&lt;/em&gt; collections.  (For whatever reason, Goodreads users really love &lt;em&gt;Calvin and Hobbes&lt;/em&gt; — reviews were both numerous (hundreds of thousands of users) and &lt;em&gt;very&lt;/em&gt; high.)&lt;/p&gt;

&lt;p&gt;So after excluding “Sequential Art” as a genre (and subsequently few more genres I definitely wasn’t interested in&lt;sup id=&quot;fnref:4&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:4&quot; class=&quot;footnote&quot;&gt;4&lt;/a&gt;&lt;/sup&gt;), I got the &lt;a href=&quot;https://www.goodreads.com/review/list/63807962-drew-lanenga?order=d&amp;amp;shelf=2017-under-200-pages&amp;amp;sort=date_added&quot;&gt;list&lt;/a&gt; below.&lt;/p&gt;

&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th&gt;Title&lt;/th&gt;
      &lt;th&gt;Author&lt;/th&gt;
      &lt;th style=&quot;text-align: center&quot;&gt;Year&lt;/th&gt;
      &lt;th style=&quot;text-align: right&quot;&gt;Pages&lt;/th&gt;
      &lt;th style=&quot;text-align: right&quot;&gt;Rating&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/4808763-the-last-question&quot;&gt;The Last Question&lt;/a&gt;&lt;/td&gt;
      &lt;td&gt;Isaac Asimov&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;1956&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;9&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;4.54&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/22738563-we-should-all-be-feminists&quot;&gt;We Should All Be Feminists&lt;/a&gt;&lt;/td&gt;
      &lt;td&gt;Chimamanda Ngozi Adichie&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;2012&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;52&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;4.46&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/1423.The_Compleat_Works_of_Wllm_Shkspr&quot;&gt;The Compleat Works of Wllm Shkspr&lt;/a&gt;&lt;/td&gt;
      &lt;td&gt;Reduced Shakespeare Company&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;1994&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;137&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;4.42&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/32951.Sister_Outsider&quot;&gt;Sister Outsider&lt;/a&gt;&lt;/td&gt;
      &lt;td&gt;Audre Lorde&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;1984&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;190&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;4.41&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/25489625-between-the-world-and-me&quot;&gt;Between the World and Me&lt;/a&gt;&lt;/td&gt;
      &lt;td&gt;Ta Nehisi Coates&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;2015&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;152&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;4.39&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/464260.The_Fire_Next_Time&quot;&gt;The Fire Next Time&lt;/a&gt;&lt;/td&gt;
      &lt;td&gt;James Baldwin&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;1963&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;141&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;4.38&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/5931.The_Essential_Neruda&quot;&gt;The Essential Neruda&lt;/a&gt;&lt;/td&gt;
      &lt;td&gt;Pablo Neruda&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;1979&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;200&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;4.38&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/565149.Illuminations&quot;&gt;Illuminations&lt;/a&gt;&lt;/td&gt;
      &lt;td&gt;Arthur Rimbaud&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;1875&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;182&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;4.35&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/80410.Four_Quartets&quot;&gt;Four Quartets&lt;/a&gt;&lt;/td&gt;
      &lt;td&gt;T. S. Eliot&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;1943&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;48&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;4.34&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/133974.The_Pillowman&quot;&gt;The Pillowman&lt;/a&gt;&lt;/td&gt;
      &lt;td&gt;Martin McDonagh&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;2003&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;104&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;4.34&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/46199.Letters_to_a_Young_Poet&quot;&gt;Letters to a Young Poet&lt;/a&gt;&lt;/td&gt;
      &lt;td&gt;Rainer Maria Rilke&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;1929&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;80&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;4.33&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/4069.Man_s_Search_for_Meaning&quot;&gt;Man’s Search for Meaning&lt;/a&gt;&lt;/td&gt;
      &lt;td&gt;Victor Frankl&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;1946&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;184&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;4.32&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/76889.100_Selected_Poems&quot;&gt;100 Selected Poems&lt;/a&gt;&lt;/td&gt;
      &lt;td&gt;E. E. Cummings&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;1954&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;128&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;4.31&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/67896.Tao_Te_Ching&quot;&gt;Tao Te Ching&lt;/a&gt;&lt;/td&gt;
      &lt;td&gt;Lao Tzu&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;1989&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;184&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;4.31&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/128461.A_Season_in_Hell_The_Drunken_Boat&quot;&gt;A Season in Hell/The Drunken Boat&lt;/a&gt;&lt;/td&gt;
      &lt;td&gt;Arthur Rimbaud&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;1837&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;104&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;4.3&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/118389.The_Love_Song_of_J_Alfred_Prufrock_and_Other_Poems&quot;&gt;The Love Song of J. Alfred Prufrock and Other Poems&lt;/a&gt;&lt;/td&gt;
      &lt;td&gt;T. S. Eliot&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;1915&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;44&lt;/td&gt;
      &lt;td style=&quot;text-align: right&quot;&gt;4.3&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;

&lt;h2 id=&quot;conclusions&quot;&gt;Conclusions&lt;/h2&gt;

&lt;p&gt;I was definitely surprised with the list that this approach came up with — it’s definitely a list of books that I wouldn’t have read otherwise.  I’m not sure if I’ll read them in order of ranking, but I’m excited to see what comes out of my reading this year.&lt;/p&gt;

&lt;h2 id=&quot;future-work&quot;&gt;Future Work&lt;/h2&gt;

&lt;p&gt;I’d like to make this data available interactively in a subsequent post so people can generate their own booklist with their own constraints.  That’ll take more time than I have available tonight, but I hope to post it soon.&lt;/p&gt;

&lt;h3 id=&quot;footnotes&quot;&gt;Footnotes&lt;/h3&gt;

&lt;div class=&quot;footnotes&quot; role=&quot;doc-endnotes&quot;&gt;
  &lt;ol&gt;
    &lt;li id=&quot;fn:1&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;The lists that I pulled from were &lt;a href=&quot;https://www.goodreads.com/list/show/21995&quot;&gt;Best Books Under 200 Pages&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/19081&quot;&gt;Great Short Short Books&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/4093&quot;&gt;Best Books of the 2010’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/5&quot;&gt;Best Books of the 2000’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/17&quot;&gt;Best Books of the 1990’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/9&quot;&gt;Best Books of the 1980’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/21&quot;&gt;Best Books of the 1970’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/18&quot;&gt;Best Books of the 1960’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/22&quot;&gt;Best Books of the 1950’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/23&quot;&gt;Best Books of the 1940’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/85&quot;&gt;Best Books of the 1930’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/39&quot;&gt;Best Books of the 1920’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/93&quot;&gt;Best Books of the 1910’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/38&quot;&gt;Best Books of the 1900’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/1386&quot;&gt;Best Books of the 1890’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/2457&quot;&gt;Best Books of the 1880’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/2594&quot;&gt;Best Books of the 1870’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/2458&quot;&gt;Best Books of the 1860’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/2592&quot;&gt;Best Books of the 1850’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/2588&quot;&gt;Best Books of the 1840’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/2591&quot;&gt;Best Books of the 1830’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/2593&quot;&gt;Best Books of the 1820’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/25498&quot;&gt;Best Books of the 1810’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/4375&quot;&gt;Best Books of the 1800’s&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/264&quot;&gt;Books That Everyone Should Read At Least Once&lt;/a&gt;,&lt;a href=&quot;https://www.goodreads.com/list/show/429&quot;&gt;The BOOK was BETTER than the MOVIE&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/8166&quot;&gt;Books You Wish More People Knew About&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/1236&quot;&gt;World’s Greatest Novellas&lt;/a&gt;, &lt;a href=&quot;https://www.goodreads.com/list/show/21995&quot;&gt;Best 21st Century Non-Fiction&lt;/a&gt;, and &lt;a href=&quot;https://www.goodreads.com/list/show/1&quot;&gt;Best Books Ever&lt;/a&gt;. &lt;a href=&quot;#fnref:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:2&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;This is a common approach in &lt;a href=&quot;https://en.wikipedia.org/wiki/Bayesian_statistics&quot;&gt;Bayesian statistics&lt;/a&gt;. In Bayesian statistics we allow some prior information to inform our approach, then let data update our prior assumptions, where stronger signals in the data help us make stronger departures in our conclusions. &lt;a href=&quot;#fnref:2&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:3&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;That’s actually a pretty high prior, right?  I was surprised to see books being so highly rated overall.  I mean, should it be the assumption that a book is really 4-stars? &lt;a href=&quot;#fnref:3&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:4&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;The full list of exclusions were: Childrens, Young Adult, Religion, Romance, Art, Music, Reference, Law, Fantasy, Sequential Art, Audiobook, Horror, Vampires, and Dystopia. &lt;a href=&quot;#fnref:4&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
  &lt;/ol&gt;
&lt;/div&gt;
</description>
        <pubDate>Mon, 13 Feb 2017 00:00:00 +0000</pubDate>
        <link>http://drew.lanen.ga/2017-reading-list/</link>
        <guid isPermaLink="true">http://drew.lanen.ga/2017-reading-list/</guid>
        
        
        <category>general,</category>
        
        <category>books,</category>
        
        <category>personal</category>
        
      </item>
    
      <item>
        <title>Buffer's Organizational Network</title>
        <description>&lt;link href=&quot;https://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600,600italic,800italic,800,700italic,700&quot; rel=&quot;stylesheet&quot; type=&quot;text/css&quot; /&gt;

&lt;!--link href=&quot;file:///Users/lanenga/Code/js/buffer-d3/charts.css&quot; rel=&quot;stylesheet&quot;--&gt;

&lt;script type=&quot;text/javascript&quot; src=&quot;/assets/js/buffer/d3.v3.js&quot;&gt;&lt;/script&gt;

&lt;script type=&quot;text/javascript&quot; src=&quot;/assets/js/buffer/d3-queue.js&quot;&gt;&lt;/script&gt;

&lt;script type=&quot;text/javascript&quot; src=&quot;/assets/js/buffer/topojson.js&quot;&gt;&lt;/script&gt;

&lt;!--script type=&quot;text/javascript&quot; src=&quot;/assets/js/buffer/d3-tip.js&quot;&gt;&lt;/script--&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;/assets/js/buffer/d3-legend.js&quot;&gt;&lt;/script&gt;

&lt;script type=&quot;text/javascript&quot; src=&quot;/assets/js/buffer/charts.js&quot;&gt;&lt;/script&gt;

&lt;script type=&quot;text/javascript&quot; src=&quot;/assets/js/buffer/draw.js&quot;&gt;&lt;/script&gt;

&lt;div id=&quot;pack&quot; class=&quot;d3&quot;&gt;&lt;/div&gt;

&lt;style&gt;
#pack circle {
	fill: none;
	stroke: red;
}

#pack .parent {
	fill: purple;
	opacity: 0.2;
}
#pack .child {
	fill: green;
	opacity: 0.4;
}
&lt;/style&gt;

&lt;h2 id=&quot;introduction&quot;&gt;Introduction&lt;/h2&gt;

&lt;p&gt;Some teams perform better than other teams.&lt;/p&gt;

&lt;p&gt;A lot of people research why that is, and what high performing teams have in common.  &lt;a href=&quot;https://hbr.org/2012/03/the-new-science-of-building-gr&quot;&gt;Harvard Business Review does&lt;/a&gt;.  &lt;a href=&quot;http://science.sciencemag.org/content/330/6004/686&quot;&gt;MIT and CMU do&lt;/a&gt;.  Google does.  &lt;a href=&quot;http://www.nytimes.com/2016/02/28/magazine/what-google-learned-from-its-quest-to-build-the-perfect-team.html&quot;&gt;The New York Times does&lt;/a&gt;.  Even &lt;a href=&quot;http://tomtunguz.com/emotional_intelligence&quot;&gt;venture capitalists do&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;So what’s the consensus?  High performing teams share two common characteristics.&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Team members have higher than average levels of empathy and social awareness.&lt;/li&gt;
  &lt;li&gt;Team members communicate frequently and informally.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;And it’s pretty much just those two things.  Some researchers went as far as &lt;a href=&quot;http://alumni.media.mit.edu/~tanzeem/shortcuts/workingpaper.pdf&quot;&gt;getting people to wear sociometers&lt;/a&gt; that measured all of their communication with and proximity to other team members. They ultimately &lt;a href=&quot;https://hbr.org/2012/04/the-new-science-of-building-great-teams&quot;&gt;found that&lt;/a&gt; &lt;strong&gt;“patterns of communication [are] the most important predictor of a team’s success. Not only that, but they are as significant as all the other factors — individual intelligence, personality, skill, and the substance of discussions — combined.”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;For most teams, it’s hard to get a handle of one’s own “patterns of communication” and what that looks like, let alone whether it’s good or bad.  Today, we’ll use chat data from Slack to look at Buffer’s own patterns of communication to identify what is or isn’t going well.&lt;/p&gt;

&lt;h2 id=&quot;building-a-network&quot;&gt;Building a Network&lt;/h2&gt;

&lt;p&gt;In order to analyze the patterns efficiently, we’re going to create an &lt;strong&gt;organizational network&lt;/strong&gt;, which will provide us a framework for thinking about interpersonal interactions.  An organizational network is a data structure that describes which team members are communicating with which other team members and allows us to identify &lt;em&gt;large scale patterns&lt;/em&gt; from &lt;em&gt;small scale interactions&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;I’ve looked at a lot of different organizational networks.  I used to work with a network science consultancy that specialized solely on being able to create these networks and answer these questions.  For most companies, that process usually involved hiring a consultancy, creating surveys and bullying everone into completing them, and then running the analysis.  If you wanted the same results six months later, you had to repeat the whole process again.&lt;/p&gt;

&lt;p&gt;Luckily for us, we can get the data we need directly from Slack, and we’ll start by pulling message metadata from public Slack channels.  For this analysis, we’re not going to focus solely on data from public channels.  ?By excluding data from video chats (and arguably meetings), we can focus our exploration on informal communication.  We’ll save the analysis on direct messages and private groups for another day.?&lt;/p&gt;

&lt;h2 id=&quot;timeline&quot;&gt;Timeline&lt;/h2&gt;

&lt;p&gt;Here’s a timeline of all messages sent on Buffer’s public Slack channels.  The black line shows the raw daily message counts, while the blue line applies a smoother over the raw counts to show a more discernible trend.&lt;/p&gt;

&lt;div id=&quot;line&quot; class=&quot;d3&quot;&gt; &lt;/div&gt;

&lt;p&gt;There are a couple of things that are immediately apparent from the timeline. First, Buffer employees chat &lt;strong&gt;a lot&lt;/strong&gt;.  During weekdays, Buffer employees send an average of over 2,000 per day, which doesn’t include messages sent over private channels, direct messages, reactions to messages, or video conferences.&lt;/p&gt;

&lt;p&gt;The second important note on the timeline is the evidence of &lt;a href=&quot;https://open.buffer.com/how-much-do-you-work-without-set-hours-a-buffer-case-study/&quot;&gt;healthy work-life balance&lt;/a&gt;, at least in terms of weekend work.  On weekdays, Buffer employees send an average of over 2,000 messages on public channels.  On weekends, they send on average less than 100 messages.  That is, Buffer employees communicate over 20x less on the weekends.&lt;/p&gt;

&lt;h2 id=&quot;a-distributed-team&quot;&gt;A Distributed Team&lt;/h2&gt;

&lt;p&gt;It’s important to not that, by necessity, Buffer employees need chat.  Being a &lt;a href=&quot;https://open.buffer.com/distributed-team-benefits/&quot;&gt;fully distributed team&lt;/a&gt;, unless they’re meeting face-to-face at one of their &lt;a href=&quot;https://open.buffer.com/inside-buffer-retreat/&quot;&gt;semi-annual retreats&lt;/a&gt;, all communication happens digitally.&lt;/p&gt;

&lt;div id=&quot;world&quot; class=&quot;d3&quot;&gt; &lt;/div&gt;

&lt;p&gt;What that’s resulted in, in Buffer’s case, is a team that is &lt;strong&gt;much more&lt;/strong&gt; connected than many teams of their size with a physical presence.&lt;/p&gt;

&lt;p&gt;Let’s illustrate why by first defining a term in network science called &lt;a href=&quot;https://en.wikipedia.org/wiki/Centrality&quot;&gt;centrality&lt;/a&gt;.  We’ll take a subset of four Buffer employees — Åsa, Boris, Courtney and Darcy — and assume they have the following (fictitious) organizational network.  Two members will have a connection if there’s a 1 in their cell, and a zero otherwise.&lt;/p&gt;

&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th&gt; &lt;/th&gt;
      &lt;th&gt;Åsa&lt;/th&gt;
      &lt;th&gt;Boris&lt;/th&gt;
      &lt;th&gt;Courtney&lt;/th&gt;
      &lt;th&gt;Darcy&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;Åsa&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
      &lt;td&gt;1&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;Boris&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
      &lt;td&gt;1&lt;/td&gt;
      &lt;td&gt;1&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;Courtney&lt;/td&gt;
      &lt;td&gt;1&lt;/td&gt;
      &lt;td&gt;1&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
      &lt;td&gt;1&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;Darcy&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
      &lt;td&gt;1&lt;/td&gt;
      &lt;td&gt;1&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;

&lt;p&gt;Let’s say Åsa needs something from Darcy, but doesn’t usually communicate with Darcy, but she does communicate frequently with Courtney and relays the message through her — Åsa → Courtney → Darcy.  Likewise, Boris shares information he knows to those with whom he works closely.  If Åsa needed information from Boris, it’d likely go through Courtney first — Boris → Courtney → Åsa.&lt;/p&gt;

&lt;p&gt;In this example we see that Courtney’s position in this network makes her very important, or &lt;em&gt;central&lt;/em&gt;. Team members with high centrality help broker a lot of information to other team members, usually moreso than is usually noticeable through interpersonal dynamics.  In a lot of networks, like &lt;a href=&quot;http://drew.lanen.ga/hillary-emails/#the-network&quot;&gt;Hillary Clinton’s State Department&lt;/a&gt;, there are a couple of members who wield a large percentage of the centrality — if they were removed from the network, general connectivity would severly suffer.&lt;/p&gt;

&lt;p&gt;In Buffer’s case, if you were to remove given employee from the team, overall centrality only decreases by &lt;strong&gt;at most 1.5%&lt;/strong&gt;. Each member of the Buffer team is contributing to the Buffer network — regardless of team, gender, race, hierarchy or tenure.&lt;/p&gt;

&lt;h2 id=&quot;collaboration&quot;&gt;Collaboration&lt;/h2&gt;

&lt;p&gt;While it’s a great thing for teams to be communicating frequently and informally, it’s also important that communication be directed in ways that maintain collaboration.&lt;/p&gt;

&lt;p&gt;There are two fundamental ways that multiple teams in an organization collaborate.  When members on a given team chat amongst themselves, we’ll call that &lt;strong&gt;energy&lt;/strong&gt;.  When they chat with members of other teams, we’ll call that &lt;strong&gt;exploration&lt;/strong&gt;.  Usually, it’s important to have a healthy balance of both.&lt;/p&gt;

&lt;p&gt;Below we can see how different teams balance their energy and exploration.  The grey dot below each team reflects their internal energy, while the blue arcs show the degree of their exploration with other teams.&lt;/p&gt;

&lt;div id=&quot;synergy&quot; class=&quot;d3&quot;&gt; &lt;/div&gt;

&lt;p&gt;Let’s note that the size of each dot is not a reflection of team size, but of team energy.  We can see that the Happiness team is communicating very frequently amongst themselves, and have a less active role in communicating with some of the other teams, like the Data team or the Marketing team.&lt;/p&gt;

&lt;p&gt;On the other hand, the Caretaker team (which consist of founders and other top leaders), have an average inner-team energy, but has strategic above-average exploration with teams, like Product and Engineering.  Visualizing the balance between energy and exploration can help identify if certain teams could benefit by increasing or decreasing communication with other teams.&lt;/p&gt;

&lt;h2 id=&quot;conclusions&quot;&gt;Conclusions&lt;/h2&gt;

&lt;p&gt;We’ve taken a high-level look at some of Buffer’s chat data to understand what patterns of communication emerge.  We’ve taken a look at communication frequency, work-life balance, effects of a global and distributed team, centrality and collaboration.  These are just some of the points to consider when evaluating how current patterns of communication enable success.  Other points of consideration could include incorporating ticket or project management data to contextualize productivity data or even using sentiment analysis and theme extraction over public messages to identify topics that drive collaboration.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What are your thoughts?  What would your organizational network reveal about your organization?  Do the modes and patterns of your team’s communication enable or hinder your success?&lt;/strong&gt;&lt;/p&gt;
</description>
        <pubDate>Tue, 08 Mar 2016 00:00:00 +0000</pubDate>
        <link>http://drew.lanen.ga/buffer-network/</link>
        <guid isPermaLink="true">http://drew.lanen.ga/buffer-network/</guid>
        
        
        <category>general,</category>
        
        <category>networks,</category>
        
        <category>data,</category>
        
        <category>startups</category>
        
      </item>
    
      <item>
        <title>Sanders Would Win Electoral College</title>
        <description>&lt;p&gt;Lately, most political commentary treats Secretary Clinton as the de facto nominee for the Democratic Party.  Clinton is leading in the delegate count, and has a staggering number of superdelegates already “pledged”.&lt;/p&gt;

&lt;p&gt;However, people don’t elect presidents in the United States — the &lt;a href=&quot;https://en.wikipedia.org/wiki/Electoral_College_(United_States)&quot;&gt;Electoral College&lt;/a&gt; does.&lt;/p&gt;

&lt;p&gt;What does that mean for Secretary Clinton?  &lt;strong&gt;Most of the states that she is winning are likely to vote Republican anyway.&lt;/strong&gt;  So, in effect, her wins wouldn’t put her in office.  However, Senator Sanders’ wins would.&lt;/p&gt;

&lt;p&gt;If you consider current primary results in terms of the 2012 Electoral College, as of March 8th, &lt;strong&gt;Secretary Clinton would have 36&lt;/strong&gt; electoral votes, and &lt;strong&gt;Senator Sanders would have 46&lt;/strong&gt; electoral votes.&lt;/p&gt;

&lt;p&gt;And that includes Clinton’s razor-thin victories in &lt;a href=&quot;https://www.google.com/search?q=iowa+democratic+caucus&quot;&gt;Iowa&lt;/a&gt; and &lt;a href=&quot;https://www.google.com/search?q=massachusetts+democratic+primary&quot;&gt;Massachusetts&lt;/a&gt;.&lt;/p&gt;

&lt;h2 id=&quot;electoral-map&quot;&gt;Electoral Map&lt;/h2&gt;

&lt;div id=&quot;container&quot; style=&quot;position: relative; width: 700px; height: 360px;margin-bottom: 72px;&quot;&gt;&lt;/div&gt;

&lt;p&gt;States in &lt;span class=&quot;caption hillary-yes&quot;&gt;dark blue&lt;/span&gt; indicate a win for Clinton that would give her Electoral Votes, while states in &lt;span class=&quot;caption hillary-no&quot;&gt;light blue&lt;/span&gt; indicate a win that wouldn’t give her Electoral Votes.&lt;/p&gt;

&lt;p&gt;States in &lt;span class=&quot;caption bernie-yes&quot;&gt;dark green&lt;/span&gt; indicate a win for Sanders that would give him Electoral Votes, while states in &lt;span class=&quot;caption bernie-no&quot;&gt;light green&lt;/span&gt; indicate a win that wouldn’t give him Electoral Votes.&lt;/p&gt;

&lt;script src=&quot;//cdnjs.cloudflare.com/ajax/libs/d3/3.5.3/d3.min.js&quot;&gt;&lt;/script&gt;

&lt;script src=&quot;//cdnjs.cloudflare.com/ajax/libs/topojson/1.6.9/topojson.min.js&quot;&gt;&lt;/script&gt;

&lt;script src=&quot;/assets/js/datamaps.all.min.js&quot;&gt;&lt;/script&gt;

&lt;style&gt;
.hoverinfo table tr td {
  line-height: 1.1em;
  padding: 4px 2px;
}
.caption {
  font-weight: bold;
}
.hillary-yes {
  color: #267291;
}
.hillary-no {
  color: #A7C7D4;
}
.bernie-yes {
  color: #26A65B;
}
.bernie-no {
  color: #A6DCBC;
}
&lt;/style&gt;

&lt;script&gt;
var election = new Datamap({
  scope: &quot;usa&quot;,
  element: document.getElementById(&quot;container&quot;),
  geographyConfig: {
    highlightBorderColor: &quot;#323534&quot;,
    popupTemplate: function(geography, data) {
      winner2012 = &quot;Democrat&quot;
      if(data.winner_2012 == &quot;R&quot;) {
        winner2012 = &quot;Republican&quot;
      }

      winner2016 = &quot;TBD&quot;
      if(data.winner_2016 == &quot;H&quot;) {
        winner2016 = &quot;Hillary&quot;
      } else if(data.winner_2016 == &quot;B&quot;) {
        winner2016 = &quot;Bernie&quot;
      }

      tableRows = []
      tableRows.push(&quot;&lt;tr&gt; &lt;td&gt; Electoral Votes: &lt;/td&gt; &lt;td&gt; &quot; + data.electoral_votes + &quot; &lt;/td&gt; &lt;/tr&gt;&quot;)
      tableRows.push(&quot;&lt;tr&gt; &lt;td&gt; 2012 General: &lt;br /&gt; Outcome &lt;/td&gt; &lt;td&gt; &quot; + winner2012 + &quot; &lt;/td&gt; &lt;/tr&gt;&quot;)
      tableRows.push(&quot;&lt;tr&gt; &lt;td&gt; 2016 Primary: &lt;br /&gt; Outcome &lt;/td&gt; &lt;td&gt; &quot; + winner2016 + &quot; &lt;/td&gt; &lt;/tr&gt;&quot;)

      return &quot;&lt;div class='hoverinfo'&gt; &lt;strong&gt;&quot; + geography.properties.name + &quot;&lt;/strong&gt;&lt;br /&gt; &lt;table&gt;&lt;tbody&gt; &quot; + tableRows.join(&quot; &quot;) +  &quot; &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;&quot;
    },
    highlightOnHover: false,
    highlightBorderWidth: 1
  },
  defaultFillName: &quot;TBD&quot;,
  fills: {
  &quot;H1&quot;: &quot;#267291&quot;,
  &quot;H0&quot;: &quot;#A7C7D4&quot;,
  &quot;B1&quot;: &quot;#26A65B&quot;,
  &quot;B0&quot;: &quot;#A6DCBC&quot;,
  &quot;defaultFill&quot;: &quot;#EEE&quot;
},
data:{
 &quot;AL&quot;: {
 &quot;electoral_votes&quot;: 9,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;H&quot;,
&quot;fillKey&quot;: &quot;H0&quot; 
},
&quot;AK&quot;: {
 &quot;electoral_votes&quot;: 3,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;AZ&quot;: {
 &quot;electoral_votes&quot;: 11,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;AR&quot;: {
 &quot;electoral_votes&quot;: 6,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;H&quot;,
&quot;fillKey&quot;: &quot;H0&quot; 
},
&quot;CA&quot;: {
 &quot;electoral_votes&quot;: 55,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;CO&quot;: {
 &quot;electoral_votes&quot;: 9,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;B&quot;,
&quot;fillKey&quot;: &quot;B1&quot; 
},
&quot;CT&quot;: {
 &quot;electoral_votes&quot;: 7,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;DC&quot;: {
 &quot;electoral_votes&quot;: 3,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;DE&quot;: {
 &quot;electoral_votes&quot;: 3,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;FL&quot;: {
 &quot;electoral_votes&quot;: 29,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;GA&quot;: {
 &quot;electoral_votes&quot;: 16,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;H&quot;,
&quot;fillKey&quot;: &quot;H0&quot; 
},
&quot;HI&quot;: {
 &quot;electoral_votes&quot;: 4,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;ID&quot;: {
 &quot;electoral_votes&quot;: 4,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;IL&quot;: {
 &quot;electoral_votes&quot;: 20,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;IN&quot;: {
 &quot;electoral_votes&quot;: 11,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;IA&quot;: {
 &quot;electoral_votes&quot;: 6,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;H&quot;,
&quot;fillKey&quot;: &quot;H1&quot; 
},
&quot;KS&quot;: {
 &quot;electoral_votes&quot;: 6,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;B&quot;,
&quot;fillKey&quot;: &quot;B0&quot; 
},
&quot;KY&quot;: {
 &quot;electoral_votes&quot;: 8,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;LA&quot;: {
 &quot;electoral_votes&quot;: 8,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;H&quot;,
&quot;fillKey&quot;: &quot;H0&quot; 
},
&quot;ME&quot;: {
 &quot;electoral_votes&quot;: 4,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;B&quot;,
&quot;fillKey&quot;: &quot;B1&quot; 
},
&quot;MD&quot;: {
 &quot;electoral_votes&quot;: 10,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;MA&quot;: {
 &quot;electoral_votes&quot;: 11,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;H&quot;,
&quot;fillKey&quot;: &quot;H1&quot; 
},
&quot;MI&quot;: {
 &quot;electoral_votes&quot;: 16,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;B&quot;,
&quot;fillKey&quot;: &quot;B1&quot; 
},
&quot;MN&quot;: {
 &quot;electoral_votes&quot;: 10,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;B&quot;,
&quot;fillKey&quot;: &quot;B1&quot; 
},
&quot;MS&quot;: {
 &quot;electoral_votes&quot;: 6,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;H&quot;,
&quot;fillKey&quot;: &quot;H0&quot; 
},
&quot;MO&quot;: {
 &quot;electoral_votes&quot;: 10,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;MT&quot;: {
 &quot;electoral_votes&quot;: 3,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;NE&quot;: {
 &quot;electoral_votes&quot;: 5,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;B&quot;,
&quot;fillKey&quot;: &quot;B0&quot; 
},
&quot;NV&quot;: {
 &quot;electoral_votes&quot;: 6,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;H&quot;,
&quot;fillKey&quot;: &quot;H1&quot; 
},
&quot;NH&quot;: {
 &quot;electoral_votes&quot;: 4,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;B&quot;,
&quot;fillKey&quot;: &quot;B1&quot; 
},
&quot;NJ&quot;: {
 &quot;electoral_votes&quot;: 14,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;NM&quot;: {
 &quot;electoral_votes&quot;: 5,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;NY&quot;: {
 &quot;electoral_votes&quot;: 29,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;NC&quot;: {
 &quot;electoral_votes&quot;: 15,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;ND&quot;: {
 &quot;electoral_votes&quot;: 3,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;OH&quot;: {
 &quot;electoral_votes&quot;: 18,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;OK&quot;: {
 &quot;electoral_votes&quot;: 7,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;B&quot;,
&quot;fillKey&quot;: &quot;B0&quot; 
},
&quot;OR&quot;: {
 &quot;electoral_votes&quot;: 7,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;PA&quot;: {
 &quot;electoral_votes&quot;: 20,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;RI&quot;: {
 &quot;electoral_votes&quot;: 4,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;SC&quot;: {
 &quot;electoral_votes&quot;: 9,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;H&quot;,
&quot;fillKey&quot;: &quot;H0&quot; 
},
&quot;SD&quot;: {
 &quot;electoral_votes&quot;: 3,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;TN&quot;: {
 &quot;electoral_votes&quot;: 11,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;H&quot;,
&quot;fillKey&quot;: &quot;H0&quot; 
},
&quot;TX&quot;: {
 &quot;electoral_votes&quot;: 38,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;H&quot;,
&quot;fillKey&quot;: &quot;H0&quot; 
},
&quot;UT&quot;: {
 &quot;electoral_votes&quot;: 6,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;VT&quot;: {
 &quot;electoral_votes&quot;: 3,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;B&quot;,
&quot;fillKey&quot;: &quot;B1&quot; 
},
&quot;VA&quot;: {
 &quot;electoral_votes&quot;: 13,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;H&quot;,
&quot;fillKey&quot;: &quot;H1&quot; 
},
&quot;WA&quot;: {
 &quot;electoral_votes&quot;: 12,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;WV&quot;: {
 &quot;electoral_votes&quot;: 5,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;WI&quot;: {
 &quot;electoral_votes&quot;: 10,
&quot;winner_2012&quot;: &quot;D&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
},
&quot;WY&quot;: {
 &quot;electoral_votes&quot;: 3,
&quot;winner_2012&quot;: &quot;R&quot;,
&quot;winner_2016&quot;: &quot;&quot;,
&quot;fillKey&quot;: &quot;NONE&quot; 
}
}
});
election.labels();
election.legend({
  &quot;labels&quot;: {
    &quot;H1&quot;: &quot;Clinton:&quot;,
    &quot;B1&quot;: &quot;Sanders:&quot;,
    &quot;H0&quot;: &quot; &quot;,
    &quot;B0&quot;: &quot; &quot;
  }
});
&lt;/script&gt;

</description>
        <pubDate>Tue, 08 Mar 2016 00:00:00 +0000</pubDate>
        <link>http://drew.lanen.ga/electoral-primary/</link>
        <guid isPermaLink="true">http://drew.lanen.ga/electoral-primary/</guid>
        
        
        <category>general,</category>
        
        <category>politics</category>
        
      </item>
    
      <item>
        <title>Network Science</title>
        <description>&lt;p&gt;A couple of jobs ago, I was lucky enough to get to work with some very smart network scientists.&lt;/p&gt;

&lt;p&gt;We were building a product together that performed organizational network analysis (ONA) in large enterprise companies.  ONA allows you to get strategic and identify how people collaborate.  You can identify overall network connectiveness, silos and cliques, key contributors, quantify synergy, etc.  We wanted to help companies identify and monitor key metrics and “actionable insights”.  People loved it.&lt;/p&gt;

&lt;p&gt;Unfortunately, getting there can be a difficult journey.  You have to (1) realize that network science can improve the way people work together, then (2) convince leadership that it’s worthwhile because (3) $$$.  People don’t have network scientists in-house, and they are definitely scarce and expensive.&lt;/p&gt;

&lt;p&gt;Hopefully, by the end of this post you’ll be a network science convert with some tools in your belt to start improving your own organizations.&lt;/p&gt;

&lt;p&gt;I’ll start with examples.  There’s a glossary at the end for all the terms I just gloss over.&lt;/p&gt;

&lt;h2 id=&quot;modeling-relationships&quot;&gt;Modeling Relationships&lt;/h2&gt;

&lt;p&gt;Meet three co-workers: Alice, Bob and Charlie.  Alice and Bob are good friends.  Bob and Charlie are not.  Bob talks to Charlie, but Charlie never reciprocates.  He’s grumpy.  That’s why him and Alice aren’t friends.&lt;/p&gt;

&lt;p&gt;If we wanted to represent this structure mathematically, we’d make a matrix — every person gets a row and a column.  Then we put a value in every person in a row talks to each person’s column.  Ours would look something like this:&lt;/p&gt;

&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th&gt; &lt;/th&gt;
      &lt;th&gt;Alice&lt;/th&gt;
      &lt;th&gt;Bob&lt;/th&gt;
      &lt;th&gt;Charlie&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;Alice&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
      &lt;td&gt;1&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;Bob&lt;/td&gt;
      &lt;td&gt;1&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
      &lt;td&gt;1&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;Charlie&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;

&lt;p&gt;Expressing a network as a matrix allows us to do a lot of math behind the scenes.&lt;/p&gt;

&lt;h2 id=&quot;cliques&quot;&gt;Cliques&lt;/h2&gt;

&lt;p&gt;Cliques exist in every social context.  Birds of a feather really do &lt;a href=&quot;https://en.wikipedia.org/wiki/Assortativity&quot;&gt;flock together&lt;/a&gt;.  &lt;strong&gt;Organizations get pretty interesting when cliques don’t align with the org chart.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If they don’t align, does it mean that cliques form because the existing org chart failed? Or have they succeeding in opening up collaboration with other groups?  If they do align, does it mean that teams are focused, or are they working in isolation?  It’s always a good idea to have a core set of productivity metrics, so the answers to these questions can be validated with experimentation.&lt;/p&gt;

&lt;h2 id=&quot;key-actors&quot;&gt;Key Actors&lt;/h2&gt;

&lt;p&gt;Sometimes there are actors who perform strategic roles in brokering relationships between cliques or structured areas of the organization.  If there are two groups of people working very cohesively, but there’s no communication between teams, that’s usually a problem.  There needs to be at least a couple of actors brokering communication between the two groups.&lt;/p&gt;

&lt;p&gt;You can see why those actors are important to the network — we’d say that those brokers lie on many &lt;em&gt;shortest paths&lt;/em&gt; between the two groups.  That is, if you want to talk with someone from the other group, it’s probably through those brokers.  Finding out how many shortest paths an actor lies on is a metric called &lt;strong&gt;betweenness&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Betweenness is one of a couple metrics that can be used to determine how important — or &lt;em&gt;central&lt;/em&gt; — an actor is to a network.&lt;/p&gt;

&lt;h3 id=&quot;centrality&quot;&gt;Centrality&lt;/h3&gt;

&lt;p&gt;Centrality scores are an effort by network scientists to determine how important different actors are.  The idea is that more important members have higher scores of centrality.&lt;/p&gt;

&lt;p&gt;Actor centrality can give insights into how stable an organization is.  &lt;strong&gt;A stable network will have pretty similar centrality scores among most of its members.&lt;/strong&gt;  That is, each individual is equally important, so if anyone leaves the network, those connections can be easily absorbed by others in the network.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;An unstable network will have most of the centrality in a network carried by a few strategic actors.&lt;/strong&gt;  If a highly central actor were to leave the network, it would leave a disproportionately high number of relationships unbrokered.&lt;/p&gt;

&lt;h3 id=&quot;brokerage&quot;&gt;Brokerage&lt;/h3&gt;

&lt;p&gt;When considering an actor’s position in a network, we can also consider their functional role in collaboration.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://www.insna.org/PDF/Connections/v26/2004_I-1-6.pdf&quot;&gt;Brokerage roles&lt;/a&gt; let us explain how someone facilitates collaboration.  We look at how actors from some groups &lt;em&gt;broker&lt;/em&gt; relationship with actors from other groups.&lt;/p&gt;

&lt;p&gt;We start by breaking up a network into all of its &lt;strong&gt;triads&lt;/strong&gt;.  (Triads are formally defined in the glossary.)  For every triad, we classify the relationship according to the following:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;strong&gt;Coordinator&lt;/strong&gt;: The broker mediates contact between two individuals in the same group: &lt;strong&gt;A → A → A&lt;/strong&gt;&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Consultant&lt;/strong&gt;: The broker mediates contact between two individuals in the same group, who are not member of the broker’s group: &lt;strong&gt;A → B → A&lt;/strong&gt;&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Representative&lt;/strong&gt;: The broker mediates an incoming contact from an out-group member to an in-group member: &lt;strong&gt;A → B → B&lt;/strong&gt;&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Gatekeeper&lt;/strong&gt;: The broker mediates an outgoing contact from an in-group member to an out-group member: &lt;strong&gt;A → A → B&lt;/strong&gt;&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Liaison&lt;/strong&gt;: The broker mediates contact between two individuals from different groups: &lt;strong&gt;A → B → C&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;After we classify all of their triads, we’d say an actor’s brokerage role is whatever role they find themselves in most frequently.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;When used in conjunction with centrality scores, brokerage roles can be used to identify actors who are important in terms of both centrality and function.&lt;/strong&gt;  For example, for succession planning, you might want to identify individuals who have high centrality and fall into a representative role to fill vacant leadership positions on their team.&lt;/p&gt;

&lt;h3 id=&quot;consensus&quot;&gt;Consensus&lt;/h3&gt;

&lt;p&gt;Some colleagues of the network scientists I worked with wrote a &lt;a href=&quot;http://www.amazon.com/Connected-Surprising-Networks-Friends-Everything/dp/0316036137&quot;&gt;book&lt;/a&gt; on the power of network connectivity.  They note some particularly &lt;a href=&quot;https://www.cis.upenn.edu/~mkearns/papers/behvoting.pdf&quot;&gt;interesting work&lt;/a&gt; that highlights the importance of a network’s structure in its ability to reach consensus.&lt;/p&gt;

&lt;p&gt;Consensus deals with the homogeneity of a network’s state.  If everyone in the network were painted red, it would be in consensus.  If some were blue and some were red, it would not be in consensus.&lt;/p&gt;

&lt;p&gt;Let me illustrate with an example we’re all to familiar with: employee attrition.  When there’s unhappiness or dissatisfaction in our network, it’s contagious.  Ideally, we’d love it if our network were painted “satisfied”, but that won’t always be the case.&lt;/p&gt;

&lt;p&gt;When key actors in the network — high centrality and broker strategic relationships — are dissatisfied, they have a disproportionately high influence on the consensus on the network, which can be fatal.&lt;/p&gt;

&lt;p&gt;Why so fatal? &lt;a href=&quot;https://www.cis.upenn.edu/~mkearns/papers/KearnsJuddVorobeychik.pdf&quot;&gt;Michael Kearns argues&lt;/a&gt; that &lt;strong&gt;a network whose core actors are not in consensus will never arrive at a consensus.&lt;/strong&gt;  If you’re trying to rally around Business Plan B, you need your company to rally with you.  Doubt and negative energy are contagious, and &lt;strong&gt;a team that doesn’t have the same vision won’t build the same thing&lt;/strong&gt;.&lt;/p&gt;

&lt;h2 id=&quot;glossary&quot;&gt;Glossary&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;strong&gt;Network&lt;/strong&gt;: A collection of things that are connected.  Here we’ve only talked about people.  Some people call it a &lt;strong&gt;graph&lt;/strong&gt;, or a &lt;a href=&quot;http://www.zdnet.com/article/facebooks-zuckerberg-uncorks-the-social-graph/&quot;&gt;social graph&lt;/a&gt;.&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Matrix&lt;/strong&gt;: A mathematical representation of a network.  (Specifically, we’re talking about an &lt;a href=&quot;https://en.wikipedia.org/wiki/Adjacency_matrix&quot;&gt;adjacency matrix&lt;/a&gt;.)&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Actor&lt;/strong&gt;: A person in a network.&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Edge&lt;/strong&gt;: A connection between two actors.  We typically infer edges/connections by email or chat history, or surveys.&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Triad&lt;/strong&gt;: A specific type of connection between three actors.  For actors A, B, and C, a triad exists when A is connected to B and B is connected to C, but A is not connected to C (&lt;strong&gt;A → B → C&lt;/strong&gt;).&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Shortest Path&lt;/strong&gt;: The shortest set of edges between two actors.  You win if you can calculate these for &lt;a href=&quot;https://en.wikipedia.org/wiki/Six_Degrees_of_Kevin_Bacon&quot;&gt;Kevin Bacon&lt;/a&gt;.  Mathematicians call this &lt;a href=&quot;https://en.wikipedia.org/wiki/Distance_(graph_theory)&quot;&gt;geodesic distance&lt;/a&gt;.&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Connectedness&lt;/strong&gt;: There are a couple of ways to evaluate connectedness, which were formulated by a guy named &lt;a href=&quot;http://www.contrib.andrew.cmu.edu/~krack/documents/pubs/1994/1994%20Graph%20Theoretical%20Dimensions%20of%20Informal%20Organizations.pdf&quot;&gt;Krackhardt&lt;/a&gt;.  He proposes four dimensions, which are &lt;strong&gt;connectedness&lt;/strong&gt;, &lt;strong&gt;hierarchy&lt;/strong&gt;, &lt;strong&gt;efficiency&lt;/strong&gt; and least upper boundedness (or &lt;strong&gt;lubness&lt;/strong&gt;, for short).  Typically, you like it when your network has high connectedness and efficiency.&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Centrality&lt;/strong&gt;: How &lt;a href=&quot;https://en.wikipedia.org/wiki/Centrality&quot;&gt;central&lt;/a&gt;, or important, an actor is to a network. Popular ways to calculate it are &lt;strong&gt;betweenness&lt;/strong&gt;, &lt;strong&gt;closeness&lt;/strong&gt;, using &lt;strong&gt;eigenvectors&lt;/strong&gt;, or using &lt;strong&gt;PageRank&lt;/strong&gt;.  You can get a lot of mileage from looking at centrality in different ways — comparing among actors, looking at averages across teams, &lt;a href=&quot;https://en.wikipedia.org/wiki/Pareto_chart&quot;&gt;Pareto charts&lt;/a&gt;, etc.&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Brokerage Role&lt;/strong&gt;: The way an actor typically brokers relationships .  Some actors are &lt;strong&gt;gatekeepers&lt;/strong&gt;, &lt;strong&gt;liaisons&lt;/strong&gt;, &lt;strong&gt;representatives&lt;/strong&gt;, &lt;strong&gt;coordinator&lt;/strong&gt;, or &lt;strong&gt;consultant&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;!-- styling for the adjacency matrix table --&gt;
&lt;style&gt;
table {
	margin: 30px auto;
	text-align: center;
}
table thead tr th, table tbody tr td {
	padding: 4px 8px;
	border: 1px solid #CCC;
}
table thead tr th, table tbody tr td:first-child {
	font-weight: bold;
}
table tbody tr td:first-child {
	text-align: right;
}
&lt;/style&gt;

</description>
        <pubDate>Sat, 20 Feb 2016 00:00:00 +0000</pubDate>
        <link>http://drew.lanen.ga/network-science/</link>
        <guid isPermaLink="true">http://drew.lanen.ga/network-science/</guid>
        
        
        <category>general,</category>
        
        <category>network</category>
        
        <category>science</category>
        
      </item>
    
      <item>
        <title>Hillary's Damn Emails</title>
        <description>&lt;p&gt;[&lt;strong&gt;UPDATE&lt;/strong&gt;: (March 3, 2016) Since I wrote this, there’s been a &lt;a href=&quot;http://www.nytimes.com/2016/03/03/us/politics/as-presidential-campaign-unfolds-so-do-inquiries-into-hillary-clintons-emails.html&quot;&gt;revival of interest&lt;/a&gt; — from the FBI — in the Clinton email spectacle.  Who knows what it will mean for her, but maybe it means we’ll get more data!]&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;The American people are sick and tired about hearing about [Hillary Clinton’s] damn emails.&lt;/p&gt;

  &lt;p&gt;– Sen. Bernie Sanders&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;By now the dust has more than settled on &lt;a href=&quot;https://en.wikipedia.org/wiki/Hillary_Clinton_email_controversy&quot;&gt;Hillary Clinton’s email controversy&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I’m not interested in bringing the topic back from the dead to debate the concerns about the security of potentially confidential information, but more in the network it identifies, which is interesting for two reasons.  First, it could be a nice, toy-ish data set to run analysis and benchmarks against, like the &lt;a href=&quot;https://www.cs.cmu.edu/~./enron/&quot;&gt;Enron corpus&lt;/a&gt;.  Second, it could potentially help identify the type of leadership style and kind of organization that Hillary Clinton runs, which is naturally relevant seeing as how she might end up being &lt;a href=&quot;http://projects.fivethirtyeight.com/election-2016/national-primary-polls/democratic/&quot;&gt;the next American president&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;But first, the data…&lt;/p&gt;

&lt;h2 id=&quot;foia&quot;&gt;FOIA&lt;/h2&gt;

&lt;p&gt;First off, the data aren’t great.  I got mine from &lt;a href=&quot;https://www.kaggle.com/kaggle/hillary-clinton-emails&quot;&gt;Kaggle&lt;/a&gt;, which had some helpful additions/modifications.&lt;/p&gt;

&lt;p&gt;The problem is that the data, which came from a FOIA request, consist of some semi-structured output from computer vision over a bunch of &lt;em&gt;PDFs&lt;/em&gt; of &lt;em&gt;scanned&lt;/em&gt; copies of &lt;em&gt;printed&lt;/em&gt; emails.  So needless to say, there are some inconsistencies in what was extracted&lt;sup id=&quot;fnref:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:1&quot; class=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt;. Some fuzzy matching helped a little, but I still spent a while manually resolving funky naming variations.&lt;/p&gt;

&lt;p&gt;The email contacts are the most important part of the data for me — they identify the structure of the network I care about, and I can now create a matrix that identifies how individuals are engaging with every other individual in the network.  If I had been interested in sentiment analysis or topic modeling I probably wouldn’t have cared.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Caveat&lt;/strong&gt;: The data are an incomplete record of the emails sent at the State Department during Secretary Clinton’s tenure.  Since only emails sent from her private email server were the subject of the FOIA request, the data represents more of an egocentric network.  But it can still be used to explore some interesting ideas.&lt;/p&gt;

&lt;h2 id=&quot;the-network&quot;&gt;The Network&lt;/h2&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/hillary-network-full.png&quot; alt=&quot;Hillary's State Department Network&quot; /&gt;&lt;/p&gt;

&lt;p&gt;That represents Secretary Clinton’s State Department email network.  Isn’t that beautiful?  Sometimes I wish I were a network scientist&lt;sup id=&quot;fnref:2&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:2&quot; class=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt;.&lt;/p&gt;

&lt;p&gt;There are a lot of &lt;a href=&quot;https://en.wikipedia.org/wiki/Centrality&quot;&gt;interesting ways&lt;/a&gt; to think about how important an individual is to a network of people.  I tend to gravitate to &lt;a href=&quot;https://en.wikipedia.org/wiki/Betweenness_centrality&quot;&gt;betweenness&lt;/a&gt;, and the gist of it is this — I need to talk to Alice, and the only way for me to contact Alice is through our mutual connection, Bob.  Therefore, Bob is important to that network.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;In an unstable network, betweenness is distributed among a few key individuals.&lt;/strong&gt;  If someone leaves the network, the results in terms of connectivity and information flow are catastrophic.  &lt;strong&gt;In a stable network, betweenness is distributed more evenly among its members.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In Hillary’s case, we can look at the &lt;em&gt;betweenness centrality&lt;/em&gt; of everyone in her network to identify who key individuals are.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/hillary-betweenness-full.png&quot; alt=&quot;Hillary's State Department Betweenness&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Here we see that &lt;strong&gt;Secretary Clinton’s State Department is supported by three key people&lt;/strong&gt;: &lt;a href=&quot;https://en.wikipedia.org/wiki/Jake_Sullivan&quot;&gt;Jacob Sullivan&lt;/a&gt;, &lt;a href=&quot;https://en.wikipedia.org/wiki/Cheryl_Mills&quot;&gt;Cheryl Mills&lt;/a&gt; and &lt;a href=&quot;https://en.wikipedia.org/wiki/Huma_Abedin&quot;&gt;Huma Abedin&lt;/a&gt;.  It seems very reasonable that Secretary Clinton’s three most influential staffers would be her Deputy Chief of Staff, Chief of Staff, and semi-Deputy Chief of Staff, respectively.&lt;/p&gt;

&lt;p&gt;Are those staffers over-leveraged, creating instability in the network?  Probably.&lt;/p&gt;

&lt;p&gt;Looking at network similarity — how similarly each individual engages with every other individual in the network, measured by &lt;a href=&quot;https://en.wikipedia.org/wiki/Cosine_similarity&quot;&gt;cosine similarity&lt;/a&gt; — we see a bit of interesting asymmetry.  In terms of &lt;strong&gt;incoming similarity&lt;/strong&gt; — how similarly they receive email from people in the network — &lt;strong&gt;they’re not very similar&lt;/strong&gt;, with similarites around 0.6 or below.  But in terms of &lt;strong&gt;outgoing similarity&lt;/strong&gt; — how similarly they send email in the network — &lt;strong&gt;they’re much more similar&lt;/strong&gt;, reaching similarities as high as 0.85.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/hillary-cosine-vip.png&quot; alt=&quot;Hillary's State Department VIP Similarity&quot; /&gt;&lt;/p&gt;

&lt;h2 id=&quot;takeaway&quot;&gt;Takeaway&lt;/h2&gt;

&lt;p&gt;What does it all mean?  Secretary Clinton worked primarily with her Chief of Staff and Deputy Chiefs of Staff.  They were extremely central to the network, and acted as gatekeepers for a lot of other email senders.&lt;/p&gt;

&lt;p&gt;Is there any way to de-leverage her Chief of Staff?  Probably not, as it’s pretty much the role of a &lt;a href=&quot;https://en.wikipedia.org/wiki/Chief_of_staff&quot;&gt;Chief of Staff&lt;/a&gt; to broker communication between an executive and its supporting staff and relations.  But it does tend to cause a lot of shakeup when it they leave.&lt;/p&gt;

&lt;h2 id=&quot;future-work&quot;&gt;Future Work&lt;/h2&gt;

&lt;p&gt;This is a data set I’d love to spend more time with.  If you’d like to use my modified data, it’s available on &lt;a href=&quot;https://github.com/drewlanenga/clintonemails&quot;&gt;GitHub&lt;/a&gt;.  If I were to explore any of this further, I might examine:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;&lt;strong&gt;How this changes over time&lt;/strong&gt;.  Are there individuals whose importance increase or decrease over time, and how was the network affected by it?&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Clique analysis&lt;/strong&gt;.  I might dive deeper on cliques/neighborhoods/clusters to see who was working with whom, which groups worked well together (or didn’t), and what differences might exist in terms of topics discussed and actions taken.&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Backchanneling&lt;/strong&gt;.  Is there any evidence in the data? With whom?  (How would we detect it?)  What the implications be?&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Succession&lt;/strong&gt;.  Would there be any catastrophic changes to network connectivity if certain individuals were to leave?  What about a changeup with the Chief of Staff?  What would that mean to the work of the State Department?  What kind of strategies could we surmise to mitigate against it?&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;At this point I’m just rambling, but I’m sure I’ll have more ideas I might want to address later.&lt;/p&gt;

&lt;h3 id=&quot;footnotes&quot;&gt;Footnotes&lt;/h3&gt;

&lt;div class=&quot;footnotes&quot; role=&quot;doc-endnotes&quot;&gt;
  &lt;ol&gt;
    &lt;li id=&quot;fn:1&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;For example, &lt;a href=&quot;https://en.wikipedia.org/wiki/Jake_Sullivan&quot;&gt;Jake Sullivan&lt;/a&gt;, who served as Secretary Clinton’s Deputy Chief of Staff, appears in over 2,500 email threads with over 40 variations of spelling — “Sullivan, Jacob J”, “sullivanjj@state.gov”, “Sullivan, Jacob J &lt;a href=&quot;mailto:Sullivanil@state.gov&quot;&gt;Sullivanil@state.gov&lt;/a&gt;”, “isullivanjj@state.govi &lt;a href=&quot;mailto:sullivanjj@state.gov&quot;&gt;sullivanjj@state.gov&lt;/a&gt;”, my personal favorite “lake.sullivar”, and more! &lt;a href=&quot;#fnref:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:2&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;If you’re unfamiliar with network science and haven’t read my &lt;a href=&quot;/network-science/&quot;&gt;post on it&lt;/a&gt;, you probably should. &lt;a href=&quot;#fnref:2&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
  &lt;/ol&gt;
&lt;/div&gt;
</description>
        <pubDate>Wed, 17 Feb 2016 00:00:00 +0000</pubDate>
        <link>http://drew.lanen.ga/hillary-emails/</link>
        <guid isPermaLink="true">http://drew.lanen.ga/hillary-emails/</guid>
        
        
        <category>general,</category>
        
        <category>network</category>
        
        <category>science</category>
        
      </item>
    
      <item>
        <title>bash in R</title>
        <description>&lt;p&gt;There are times when putting reusable code in your own &lt;a href=&quot;http://hilaryparker.com/2014/04/29/writing-an-r-package-from-scratch/&quot;&gt;personal R package&lt;/a&gt; is useful — saving yourself time by structuring repetitive tooling, sharing difficult or specific implementations of hard problems to help others hate life less, etc.&lt;/p&gt;

&lt;p&gt;This is kind of just a one off — and doesn’t fit in either of those two categories — but I thought I’d share it here, since I’ll probably eventually come back to it and I think it could be useful for others.&lt;/p&gt;

&lt;p&gt;Sometimes you just want to load bash scripts in R — in my particular current case, mainly just to load environment variables from my &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;.bash_profile&lt;/code&gt; — like for cron, running scripts in a cluster, etc.  But I don’t want to pass them as arguments to some script, and it doesn’t seem like &lt;a href=&quot;https://github.com/yihui/runr&quot;&gt;runr&lt;/a&gt; is doing what I want (yet).&lt;/p&gt;

&lt;p&gt;So this is a snippet that will load environment variables.&lt;/p&gt;

&lt;script src=&quot;https://gist.github.com/drewlanenga/22965c57f560ff85c589.js&quot;&gt;&lt;/script&gt;

&lt;p&gt;It’d be nice if it would load other nice &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;bash&lt;/code&gt;-y things, like functions, aliases, etc., and somehow made them available in the current session, but that might also be unnecessary.  (That is, I haven’t yet found it necessary…)&lt;/p&gt;

</description>
        <pubDate>Mon, 01 Feb 2016 00:00:00 +0000</pubDate>
        <link>http://drew.lanen.ga/bash-in-R/</link>
        <guid isPermaLink="true">http://drew.lanen.ga/bash-in-R/</guid>
        
        
        <category>general,</category>
        
        <category>R</category>
        
      </item>
    
  </channel>
</rss>
