<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Posts on Chris Campana</title>
    <link>https://chriscampana.com/posts/</link>
    <description>Recent content in Posts on Chris Campana</description>
    <generator>Hugo -- 0.147.8</generator>
    <language>en-us</language>
    <lastBuildDate>Mon, 26 Jan 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://chriscampana.com/posts/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Meeting Larry Zbyszko at Publix</title>
      <link>https://chriscampana.com/posts/larry-zbyszko-publix/</link>
      <pubDate>Mon, 26 Jan 2026 00:00:00 +0000</pubDate>
      <guid>https://chriscampana.com/posts/larry-zbyszko-publix/</guid>
      <description>&lt;p&gt;I was a cashier who checked out wrestler and commentator &lt;a href=&#34;https://www.youtube.com/watch?v=GCVMGql8ZSY&#34;&gt;Larry Zbyszko&lt;/a&gt; at the Publix on Abbotts Bridge Road in what had to have been 1999 or 2000.  Probably 1999.  I (think) I am remembering wearing the Publix pants + button down shirt + tie + apron uniform that cashiers wore.  And I only wore that uniform for a few months of my Publix career, as I went quickly from bagger to cashier to Publix Service Representative. &lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;  So I checked out his groceries.  This was of course before the days of self check out.  I wonder if Larry Zbyszko would have chose self check out.  I don&amp;rsquo;t remember any of the items Larry Zbyszko bought.  Larry Zbyszko was known to me at the time for being a commentator and performed on cable television&amp;rsquo;s wrestling program: WCW Monday Nitro.  This was a television show I was a big fan of.  Also, Larry Zbyszko&amp;rsquo;s nickname was &amp;ldquo;The Living Legend&amp;rdquo; Larry Zbyszko.  WCW Monday Nitro was a wrestling program that aired live in front of an audience attending in a stadium or arena throughout the country.  When the show went live every Monday at either 8 or 9 at night, the first shot was typically the commentating team&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;, including Larry Zbyszko, introducing the show.  Fans in the crowd got into the habit of chanting &amp;ldquo;Larry, Larry&amp;rdquo; every time the show opened, and while the commentating team was opening the show, Larry acknowledged the chant.  He would do this by putting his index and middle finger together and kind of doing a salute, you can see it &lt;a href=&#34;https://www.youtube.com/watch?v=NEpt5atE208&#34;&gt;here when Tony introduces him&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Books Read in 2025</title>
      <link>https://chriscampana.com/posts/books_in_2025/</link>
      <pubDate>Sat, 03 Jan 2026 00:40:04 -0700</pubDate>
      <guid>https://chriscampana.com/posts/books_in_2025/</guid>
      <description>&lt;h3 id=&#34;into-thin-air-by-jon-krakauer&#34;&gt;Into Thin Air by Jon Krakauer&lt;/h3&gt;
&lt;p&gt;I really liked this one.  Inspirational.  I liked the quotes from other books before each chapter.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;But there are men for whom the unattainable has a special attraction. Usually they are not experts: their ambitions and fantasies are strong enough to brush aside the doubts which more cautious men might have. Determination and faith are their strongest weapons. At best such men are regarded as eccentric; at worst, mad.… Everest has attracted its share of men like these. Their mountaineering experience varied from none at all to very slight—certainly none of them had the kind of experience which would make an ascent of Everest a reasonable goal. Three things they all had in common: faith in themselves, great determination, and endurance.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Things ate in Sicily</title>
      <link>https://chriscampana.com/posts/things_ate_in_sicily/</link>
      <pubDate>Thu, 02 Oct 2025 00:17:43 -0400</pubDate>
      <guid>https://chriscampana.com/posts/things_ate_in_sicily/</guid>
      <description>&lt;p&gt;September 24&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Enna
&lt;ul&gt;
&lt;li&gt;Trattoria La Rustica &lt;a href=&#34;https://www.facebook.com/trattorialarusticaenna/&#34;&gt;(Via Gagliano, 94100 Enna EN, Italy)&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Caponata&lt;/li&gt;
&lt;li&gt;Spaghetti alla Siracusa&lt;/li&gt;
&lt;li&gt;Papperdelle&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Palermo
&lt;ul&gt;
&lt;li&gt;MEC &lt;a href=&#34;https://www.mecpalermo.it/&#34;&gt;(Via Vittorio Emanuele, 452, 90134 Palermo PA, Italy)&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Lamb Chop&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;September 25&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Palermo
&lt;ul&gt;
&lt;li&gt;Osteria Al Casareccio &lt;a href=&#34;https://en.wikipedia.org/wiki/La_Vucciria_market&#34;&gt;(In La Vucciria)&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Mortadella, etc&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;La Galleria &lt;a href=&#34;https://www.facebook.com/lagalleria2014&#34;&gt;(Salita Ramirez, 2, 90134 Palermo PA, Italy)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img alt=&#34;Mortadella in In La Vucciria&#34; loading=&#34;lazy&#34; src=&#34;https://chriscampana.com/posts/img/mortadella.jpeg&#34;&gt;
&lt;img alt=&#34;La Galleria Palermo&#34; loading=&#34;lazy&#34; src=&#34;https://chriscampana.com/posts/img/lagalleria.jpeg&#34;&gt;&lt;/p&gt;
&lt;p&gt;September 26&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Palermo
&lt;ul&gt;
&lt;li&gt;Concetta Bistrò [(Via Vittorio Emanuele, 444, 90039 Palermo PA, Italy)] (&lt;a href=&#34;https://www.instagram.com/concettabistro/&#34;&gt;https://www.instagram.com/concettabistro/&lt;/a&gt;)
&lt;ul&gt;
&lt;li&gt;Pizza Margherita&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Il Vizietto Bistrot &lt;a href=&#34;https://maps.app.goo.gl/p78oGSQRmMjXWPaNA&#34;&gt;(Via Argenteria, 32/34, 90133 Palermo PA, Italy)&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Cacio Cavallo All&amp;rsquo;Argentiera&lt;/li&gt;
&lt;li&gt;Spaghetti Al Nero Di Seppia&lt;/li&gt;
&lt;li&gt;Prawns&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img alt=&#34;Pizza Margherita Concetta Palermo&#34; loading=&#34;lazy&#34; src=&#34;https://chriscampana.com/posts/img/basilpizza.jpeg&#34;&gt;
&lt;img alt=&#34;Squid Ink Palermo&#34; loading=&#34;lazy&#34; src=&#34;https://chriscampana.com/posts/img/squidink.jpeg&#34;&gt;
&lt;img alt=&#34;Prawns Palermo&#34; loading=&#34;lazy&#34; src=&#34;https://chriscampana.com/posts/img/prawns.jpeg&#34;&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Professional Tennis Exhibition Schedule</title>
      <link>https://chriscampana.com/posts/professional_tennis_exhibition_schedule/</link>
      <pubDate>Sat, 20 Sep 2025 00:17:43 -0400</pubDate>
      <guid>https://chriscampana.com/posts/professional_tennis_exhibition_schedule/</guid>
      <description>&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Date&lt;/th&gt;
          &lt;th&gt;Location&lt;/th&gt;
          &lt;th&gt;Players&lt;/th&gt;
          &lt;th&gt;Link&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;2025 December 7&lt;/td&gt;
          &lt;td&gt;&lt;a href=&#34;https://www.prucenter.com/events/a-racquet-at-the-rock&#34;&gt;Prudential Center&lt;/a&gt;, Newark, New Jersey, USA&lt;/td&gt;
          &lt;td&gt;Carlos Alcaraz, Frances Tiafoe, Amanda Anismova, Emma Raducanu&lt;/td&gt;
          &lt;td&gt;&lt;a href=&#34;https://www.prucenter.com/events/a-racquet-at-the-rock&#34;&gt;https://www.prucenter.com/events/a-racquet-at-the-rock&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;2025 November 13,14,15,16&lt;/td&gt;
          &lt;td&gt;Half Moon, Montego Bay, Jamaica&lt;/td&gt;
          &lt;td&gt;Jenson Brooksby, Christina McHale, &lt;a href=&#34;https://www.atptour.com/en/players/blaise-bicknell/b0i5/overview&#34;&gt;Blaise Bicknell&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;&lt;a href=&#34;https://www.jamaicacup.com/&#34;&gt;https://www.jamaicacup.com/&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;2025 October 14,15&lt;/td&gt;
          &lt;td&gt;Hong Kong&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
          &lt;td&gt;&lt;a href=&#34;https://www.uts.live/league-2025/hong-kong/&#34;&gt;https://www.uts.live/league-2025/hong-kong/&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;</description>
    </item>
    <item>
      <title>Cal Newport Books Read by Month</title>
      <link>https://chriscampana.com/posts/cal_newport_books/</link>
      <pubDate>Mon, 15 Sep 2025 19:17:43 -0400</pubDate>
      <guid>https://chriscampana.com/posts/cal_newport_books/</guid>
      <description>&lt;h4 id=&#34;book-author-publication-date-number-of-pages&#34;&gt;Book, Author, Publication Date, Number of Pages&lt;/h4&gt;
&lt;h5 id=&#34;also-click-the-month-to-go-directly-to-where-he-talks-about-the-books&#34;&gt;Also click the month to go directly to where he talks about the books&lt;/h5&gt;
&lt;h3 id=&#34;august-25&#34;&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=gNG0j5yeT7c&amp;amp;list=PL8xK8kBHHUX4NW8GqUsyFhBF_xCnzIdPe&amp;amp;index=4&amp;amp;t=4407s&#34;&gt;August 25&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;https://passport2dreams.blogspot.com/2020/10/now-available-boundless-realm-deep.html&#34;&gt;Boundless Realm: Deep Explorations Inside Disney’s Haunted Mansion&lt;/a&gt; by Foxx Nolte, October 2020&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://wwnorton.co.uk/books/9781324075103-collisions&#34;&gt;Collisions: A Physicist&amp;rsquo;s Journey from Hiroshima to the Death of the Dinosaurs&lt;/a&gt; by Alec Nevala-Lee, July 2025&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://www.tikiroom63.com/&#34;&gt;Before the Birds Sang Words&lt;/a&gt; by Ken Bruce, January 2023&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://us.macmillan.com/books/9781250907882/desperationreef/&#34;&gt;Desperation Reef&lt;/a&gt; by T. Jefferson Parker, July 2024&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Top 10 Coffee Shops in Savannah, Georgia</title>
      <link>https://chriscampana.com/posts/savannah_top_ten_coffee_shops/</link>
      <pubDate>Mon, 17 Feb 2025 10:17:43 -0400</pubDate>
      <guid>https://chriscampana.com/posts/savannah_top_ten_coffee_shops/</guid>
      <description>&lt;p&gt;Origin Coffee Bar&lt;/p&gt;
&lt;p&gt;Wifi Network: ORIGIN COFFEE BAR GUEST
Password: COFFEE CLUB&lt;/p&gt;
&lt;p&gt;Date of Visit: Thursday Feb 12, 2:30pm
Hours: until 4pm&lt;/p&gt;
&lt;p&gt;Order: Americano&lt;/p&gt;
&lt;p&gt;note - didn&amp;rsquo;t look like a place that wanted cash
paid with credit card, tip choices were 22, 20 18 %&lt;/p&gt;</description>
    </item>
    <item>
      <title>some numPy and linear algebra</title>
      <link>https://chriscampana.com/posts/what_i_learned_numpy/</link>
      <pubDate>Thu, 06 Feb 2025 00:00:00 +0000</pubDate>
      <guid>https://chriscampana.com/posts/what_i_learned_numpy/</guid>
      <description>&lt;h5 id=&#34;python-list&#34;&gt;python list&lt;/h5&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-py&#34; data-lang=&#34;py&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;L &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; [&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;,&lt;span style=&#34;color:#ae81ff&#34;&gt;2&lt;/span&gt;,&lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt;]
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h5 id=&#34;numpy-array&#34;&gt;numPy array&lt;/h5&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-py&#34; data-lang=&#34;py&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;A &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; np&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;array([&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;,&lt;span style=&#34;color:#ae81ff&#34;&gt;2&lt;/span&gt;,&lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt;])
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h5 id=&#34;append-to-list-and-append-to-array&#34;&gt;append to list and append to array&lt;/h5&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-py&#34; data-lang=&#34;py&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;L&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;append(&lt;span style=&#34;color:#ae81ff&#34;&gt;4&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;A &lt;span style=&#34;color:#f92672&#34;&gt;+&lt;/span&gt; np&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;array([&lt;span style=&#34;color:#ae81ff&#34;&gt;4&lt;/span&gt;])
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h5 id=&#34;python-list-of-lists-and-select-the-first-element-of-the-list&#34;&gt;python list of lists and select the first element of the list&lt;/h5&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-py&#34; data-lang=&#34;py&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;L &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; [[&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;,&lt;span style=&#34;color:#ae81ff&#34;&gt;2&lt;/span&gt;],[&lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt;,&lt;span style=&#34;color:#ae81ff&#34;&gt;4&lt;/span&gt;]]
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;L[&lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;]
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h5 id=&#34;numpy-matrix-and-selecting-items-from-it&#34;&gt;numPy matrix and selecting items from it&lt;/h5&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-py&#34; data-lang=&#34;py&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;A &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; np&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;array([[&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;,&lt;span style=&#34;color:#ae81ff&#34;&gt;2&lt;/span&gt;],[&lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt;,&lt;span style=&#34;color:#ae81ff&#34;&gt;4&lt;/span&gt;]])
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# show row 1, column 2&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;print(A[&lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;][&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;])
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# also show row 1, column 2&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;print(A[&lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;,&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;])
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;#selects the entire first column column&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;print(A[:,&lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;])
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h5 id=&#34;numpy-dot-function&#34;&gt;numPy dot function&lt;/h5&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-py&#34; data-lang=&#34;py&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;a &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; np&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;random&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;randn(&lt;span style=&#34;color:#ae81ff&#34;&gt;100&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;b &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; np&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;random&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;randn(&lt;span style=&#34;color:#ae81ff&#34;&gt;100&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;a&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;dot(b)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h5 id=&#34;what-is-dot-product&#34;&gt;What is Dot Product?&lt;/h5&gt;
&lt;p&gt;Dot product occurs when two vectors are multipllied.  The result is a scaler (ie a number, not a vector)
Example:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Word Cloud of ATS Rejection Emails</title>
      <link>https://chriscampana.com/posts/word_cloud_python/</link>
      <pubDate>Thu, 19 Dec 2024 00:00:00 +0000</pubDate>
      <guid>https://chriscampana.com/posts/word_cloud_python/</guid>
      <description>&lt;p&gt;&lt;img alt=&#34;Word Cloud of ATS Rejection Emails&#34; loading=&#34;lazy&#34; src=&#34;https://chriscampana.com/word_cloud_rejection_emails.png&#34;&gt;&lt;/p&gt;
&lt;p&gt;During my job search I have applied for lots of positions online, usually in a web form that is part of a company’s application tracking system.  These systems send an automatic email when you apply.  And typically at some point, whether it&amp;rsquo;s automatically through some algorithm or when a human presses a button, I’ll get a form email notifying me that I am no longer being considered for the position.  I have put all these emails into their own folder within gmail.   I wanted to make a word cloud (&lt;a href=&#34;https://en.wikipedia.org/wiki/Tag_cloud&#34;&gt;https://en.wikipedia.org/wiki/Tag_cloud&lt;/a&gt;) of the words in these emails.  There are three high-level steps to create this:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Looking for My Next Opportunity: Data Analyst / Business Intelligence Analyst</title>
      <link>https://chriscampana.com/posts/looking_for_a_job_as_business_intelligence_analyst/</link>
      <pubDate>Fri, 13 Dec 2024 00:00:00 +0000</pubDate>
      <guid>https://chriscampana.com/posts/looking_for_a_job_as_business_intelligence_analyst/</guid>
      <description>&lt;p&gt;I’m currently seeking my next challenge as a Data Analyst or Business Intelligence Analyst. With 10 years of experience in data analytics, business intelligence, and data engineering, I’ve worked across diverse industries, including energy management, telecommunications, hospitality, and automotive services. While I’m proud of my versatility, I consider myself industry-agnostic, ready to dive into any domain to solve meaningful problems with data.&lt;/p&gt;
&lt;p&gt;Throughout my career, I’ve collaborated with internal stakeholders, supported customers, consulted with teams, and even traveled the world to make data-driven decisions. I’m passionate about SQL and databases, working with them daily to uncover insights. I often describe myself as an analyst at heart, with enough engineering expertise to access and transform the data I need.  I excel at building impactful visualizations using tools like Tableau, but I’m visualization-tool agnostic and adaptable to any platform.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Black Swan | Notes</title>
      <link>https://chriscampana.com/posts/black_swan_taleb/</link>
      <pubDate>Fri, 13 Sep 2024 00:00:00 +0000</pubDate>
      <guid>https://chriscampana.com/posts/black_swan_taleb/</guid>
      <description>&lt;h4 id=&#34;what-this-book-is-about&#34;&gt;What this book is about:&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;/li&gt;
&lt;li&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;notes&#34;&gt;Notes&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Black Swan has three attributes&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;outlier - lier outside realm of regular expectations - nothing in the past can convincingly point to its possibility&lt;/li&gt;
&lt;li&gt;extreme impact&lt;/li&gt;
&lt;li&gt;human nature makes us want to explain it&lt;/li&gt;
&lt;li&gt;ie: RARITY, EXTEME IMPACT, RETROSPECTIVE&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;certain professionals in environments subject to Black Swans think they are experts but they are not- they are better at narrating or making things sound complex&lt;/p&gt;</description>
    </item>
    <item>
      <title>Four Thousand Weeks: Time Management For Mortals by Oliver Burkeman | Notes</title>
      <link>https://chriscampana.com/posts/four_thousand_weeks_burkeman/</link>
      <pubDate>Fri, 06 Sep 2024 00:00:00 +0000</pubDate>
      <guid>https://chriscampana.com/posts/four_thousand_weeks_burkeman/</guid>
      <description>&lt;h4 id=&#34;what-this-book-is-about&#34;&gt;What this book is about:&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;This is a book about how most humans only live about 4,000 weeks, and we should realize that&lt;/li&gt;
&lt;li&gt;In the long run, we&amp;rsquo;re all dead&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;notes&#34;&gt;Notes&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;face the reality that time is limited&lt;/li&gt;
&lt;li&gt;once you deeply grasp that fact that doing everything is impossible, you&amp;rsquo;ll be newly empowered to resist doing everything, and to focus instead on building the most meaningful life you can&lt;/li&gt;
&lt;li&gt;know that you will not achieve peace of mind just by doing more things.  Find peace of mind in the present.&lt;/li&gt;
&lt;li&gt;stop believing that it might be somehow possible to avoid hard choices about time.&lt;/li&gt;
&lt;li&gt;focus on doing a few things that count&lt;/li&gt;
&lt;li&gt;filling your life with pleasurable activities proves less satisfying than you&amp;rsquo;d expect, because the world has an infinite number of experiences to offer, therefore doing a handful of them gets you no closer to a sense of having feasted on life&amp;rsquo;s possibilities&lt;/li&gt;
&lt;li&gt;&amp;ldquo;Once you truly understand that you&amp;rsquo;re guaranteed to miss out on almost every experience the world has to offer, the fact that there are so many you still haven&amp;rsquo;t experienced stops feeling like a problem.  Instead, you get to focus on fully enjoying the tiny slice of experience you actually do have time for - and the freer you are to choose, in each moment, what counts the most.&amp;rdquo;&lt;/li&gt;
&lt;li&gt;&amp;ldquo;the original Latin word for &amp;ldquo;decide,&amp;rdquo; &lt;em&gt;decidere&lt;/em&gt;, means &amp;ldquo;to cut off,&amp;rdquo; as in slicing away alternatives; it&amp;rsquo;s a close cousin of words like &amp;ldquo;homicide&amp;rdquo; and &amp;ldquo;suicide&amp;rdquo;&amp;rdquo;&lt;/li&gt;
&lt;li&gt;being able to have any experience is amazing, even if its annoying&lt;/li&gt;
&lt;li&gt;we should settling, bc once a decision is made the anxiety is gone&lt;/li&gt;
&lt;li&gt;acknowledge the inevitability of discomfort&lt;/li&gt;
&lt;li&gt;Chapter 5 starts talking about distraction and specifically social media and internet distraction
&lt;ul&gt;
&lt;li&gt;&amp;ldquo;what you pay attention to will define, for you, what realty is&amp;rdquo;&lt;/li&gt;
&lt;li&gt;much of the time we give into distraction, whether its social media or not&lt;/li&gt;
&lt;li&gt;something in us wants us to be distracted - what is it ?&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;we are distracted because we are motivated by the desire to flee something painful about our experience of the present&lt;/li&gt;
&lt;li&gt;we are trying to &amp;ldquo;dull the pain of finitude&amp;rdquo; by feeling unconstrained&lt;/li&gt;
&lt;li&gt;distractions are the place we go to seek relief from the discomfort of confronting limitations&lt;/li&gt;
&lt;li&gt;to sap distraction of its power, stop expecting things to be otherwise
&lt;ul&gt;
&lt;li&gt;accept that this unpleasantness is simply what it feels for finite humans to commit ourselves to the kinds of demanding and valuable tasks that force us to confront our limited control over how our lives unfold&lt;/li&gt;
&lt;li&gt;&amp;ldquo;there is a very down to earth kind of liberation in grasping that there are certain truths about being a limited human from which you&amp;rsquo;ll never be liberated&amp;rdquo;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;no matter how much you plan, things will never be certain&lt;/li&gt;
&lt;li&gt;Worry is when your mind tries to generate security about the future and continues to fail at that task.  &amp;ldquo;The fuel behind worry is the internal demand to know, in advance, that things will turn out fine.&amp;rdquo;&lt;/li&gt;
&lt;li&gt;many spiritual traditions converge on the same advice: confine our attentions to the only portion of time that really is any of our business - this one, here in the present&lt;/li&gt;
&lt;li&gt;all a plan is a present moment statement of intent and the future is under no obligation to comply&lt;/li&gt;
&lt;li&gt;the moment of truth is always now, not in the future&lt;/li&gt;
&lt;li&gt;&amp;ldquo;life is nothing but a succession of present moments, culminating in death&amp;rdquo;&lt;/li&gt;
&lt;li&gt;you will never feel you have things in perfect working order&lt;/li&gt;
&lt;li&gt;Chapter 9 - Rediscovering Rest&lt;/li&gt;
&lt;li&gt;“To rest for the sake of rest entails first accepting the fact that this is it: that your days aren’t progressing toward a future state of perfect invulnerable happiness, and that to approach them with such an assumption is systemically to drain our 4,000 weeks of their value”&lt;/li&gt;
&lt;li&gt;rest for the sake of rest is going to cause discomfort, which is a sign you should be doing it&lt;/li&gt;
&lt;li&gt;Chapter 10 - Impatience&lt;/li&gt;
&lt;li&gt;we are inclined to interruption (which is bad)&lt;/li&gt;
&lt;li&gt;Reading is an activity that operates according to its own schedule.  You can&amp;rsquo;t hurry it.  Reading something properly takes time.&lt;/li&gt;
&lt;li&gt;Psychotherapist Stephanie Brown
&lt;ul&gt;
&lt;li&gt;our modern addiction is to speed, to rushing things&lt;/li&gt;
&lt;li&gt;face the truth that you cannot dictate how fast things go - you cannot outrun your anxiety&lt;/li&gt;
&lt;li&gt;dig into a challenging project&lt;/li&gt;
&lt;li&gt;you can cultivate an appreciation for endurance, hanging in, and putting the next foot forward&lt;/li&gt;
&lt;li&gt;give up &amp;ldquo;demanding instant resolution, instant relief from discomfort and pain, and magical fixes&amp;rdquo;&lt;/li&gt;
&lt;li&gt;have a clear eyed awareness of your limitations - acquire patience&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;patience is a form of power&lt;/li&gt;
&lt;li&gt;derive value from doing itself, instead of deferring fulfillments to the future&lt;/li&gt;
&lt;li&gt;do nothing&lt;/li&gt;
&lt;li&gt;if you are willing to endure the discomfort of not knowing, a solution will often present itself&lt;/li&gt;
&lt;li&gt;Three principles of patience
&lt;ul&gt;
&lt;li&gt;Develop a taste for having problems&lt;/li&gt;
&lt;li&gt;embrace radical incrementalism
&lt;ul&gt;
&lt;li&gt;stop when your daily time is up.  Stopping helps strengthen the muscle of patience&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;originality lies on the far side of unoriginality&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Chapter 12 - The Loneliness of the Digital Nomad&lt;/li&gt;
&lt;li&gt;digital nomad lacks shared rhythms required for deep relationships to take root&lt;/li&gt;
&lt;li&gt;Chapter 13 Cosmic Insignificance Therapy&lt;/li&gt;
&lt;li&gt;&amp;ldquo;what you do with your life doesn&amp;rsquo;t matter all that much - and when it comes to how you&amp;rsquo;re using your finitie time, the universe could absolutely not care less&amp;rdquo;&lt;/li&gt;
&lt;li&gt;whatever you are doing is indistinguishable from nothing at all&lt;/li&gt;
&lt;li&gt;Ask yourself five questions
&lt;ul&gt;
&lt;li&gt;Where in your life or work are you currently pursuing comfort, when what’s called for is a little discomfort?&lt;/li&gt;
&lt;li&gt;Are you holding yourself to, and judging yourself by, standards of productivity or performance that are impossible to meet?&lt;/li&gt;
&lt;li&gt;In what ways have you yet to accept the fact that you are who you are, not the person you think you ought to be?&lt;/li&gt;
&lt;li&gt;In which area of life are you still holding back until you feel like you know what you&amp;rsquo;re doing&lt;/li&gt;
&lt;li&gt;How would you spend your days differently if you didn&amp;rsquo;t care so much about seeing your actions reach fruition?&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;seek out novelty in the mundane&lt;/li&gt;
&lt;li&gt;act on impulse right away&lt;/li&gt;
&lt;li&gt;practice doing nothing&lt;/li&gt;
&lt;/ul&gt;</description>
    </item>
    <item>
      <title>The Most Common First Names of MLB Draftees</title>
      <link>https://chriscampana.com/posts/mlb_draft_first_names_area_chart/</link>
      <pubDate>Wed, 28 Aug 2024 00:00:00 +0000</pubDate>
      <guid>https://chriscampana.com/posts/mlb_draft_first_names_area_chart/</guid>
      <description>&lt;p&gt;&lt;img alt=&#34;MLB Draft First Names Area Chart&#34; loading=&#34;lazy&#34; src=&#34;https://chriscampana.com/mlb_draft_names_by_year.png&#34;&gt;&lt;/p&gt;
&lt;p&gt;For some reason I wanted to know if there was any trend in first names of MLB draftees.  If you ask me, the first names of MLB draftees &amp;amp; players have some kind of perceived stereotype, and I wanted to see if that was true.  For example, it seems like a lot of JJs are drafted.&lt;/p&gt;
&lt;h4 id=&#34;first-step-get-extract-the-data&#34;&gt;First Step: Get (Extract) the data&lt;/h4&gt;
&lt;p&gt;From googling around and just looking at data on the internet for many years, I knew there was an MLB Stats-API.  I had been a member of the &lt;a href=&#34;https://www.reddit.com/r/mlbdata/&#34;&gt;mlbdata subreddit&lt;/a&gt; for many years.  I knew there was a draft endpoint from looking around at the &lt;a href=&#34;https://github.com/toddrob99/MLB-StatsAPI/blob/master/statsapi/endpoints.py&#34;&gt;Python wrapper for MLB Stats API Created by Todd Roberts&lt;/a&gt;.  You can look at what the results of an API call to the draft endpoint looks like for a &lt;a href=&#34;https://statsapi.mlb.com/api/v1/draft/2024&#34;&gt;specific year&lt;/a&gt;.  For this project, I wanted the useName value in the person object to analyze, as the firstName field has Christopher&amp;rsquo;s while I wanted Chris&amp;rsquo;s.  At the beginning I wasn&amp;rsquo;t sure what I would do with this data, so for now I wanted to just loop through every year of MLB drafts and throw the data into a csv.  I included some other fields in my final dataframe, in case I wanted to use them.  The blank dataframe I created (with pandas as pd) looked like this:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Supercommunicators: How to Unlock the Secret Language of Connection by Charles Duhigg | Notes</title>
      <link>https://chriscampana.com/posts/supercommunicators_duhigg/</link>
      <pubDate>Mon, 19 Aug 2024 00:00:00 +0000</pubDate>
      <guid>https://chriscampana.com/posts/supercommunicators_duhigg/</guid>
      <description>&lt;h4 id=&#34;what-this-book-is-about&#34;&gt;What this book is about:&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;This is a book about the art of conversation&lt;/li&gt;
&lt;li&gt;It has some case studies and lays some rules out on how to have good conversations&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;notes&#34;&gt;Notes&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;people love talking to people who let them come away feeling &amp;ldquo;a little smarter, funnier, more interesting&amp;rdquo;&lt;/li&gt;
&lt;li&gt;people want to feel as if they have been heard and like they have some kind of bond with who they are talking
&lt;br/&gt;&lt;br/&gt;&lt;/li&gt;
&lt;li&gt;a goal for meaning for discussions is to have a &amp;ldquo;learning conversation&amp;rdquo;
&lt;ul&gt;
&lt;li&gt;learn how people around us see the world and help them understand out perspectives&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;to communicate with someone we must connect with them&lt;/li&gt;
&lt;li&gt;absorb what someone is saying and comprehend what we say&lt;/li&gt;
&lt;li&gt;when a good conversation happens brains align, bodies synchronize and neural simultaneity occurs&lt;/li&gt;
&lt;li&gt;To become a supercomminiucator:
&lt;ul&gt;
&lt;li&gt;listen close to what is said and unsaid&lt;/li&gt;
&lt;li&gt;ask right questions&lt;/li&gt;
&lt;li&gt;recognize and match others moods&lt;/li&gt;
&lt;li&gt;make our own feelings easy for others to perceive&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Three types of conversations:
&lt;ul&gt;
&lt;li&gt;Decision Making - What&amp;rsquo;s this really about?
&lt;ul&gt;
&lt;li&gt;&amp;ldquo;within every conversation there is a quiet negotiation, where the prize is not winning, but rather determining what everyone wants, so that something meaningful can occur&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Simply ask &amp;ldquo;what do you want?&amp;rdquo;&lt;/li&gt;
&lt;li&gt;ask lots of questions&lt;/li&gt;
&lt;li&gt;&amp;ldquo;ask open-ended questions and listen closely.  Get people talking about how they see the world and what they value most.&amp;rdquo;&amp;quot;  You can at least inspire them to listen back, even if you don&amp;rsquo;t get the answers.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Emotional - How do we feel?&lt;/li&gt;
&lt;li&gt;About Identity - Who we are?&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Recognize what kind of conversation is occurring and match each other&lt;/li&gt;
&lt;li&gt;when someone makes noises as they listen (&amp;ldquo;yeah&amp;rdquo;, &amp;ldquo;Uh-huh&amp;rdquo;, or laughing) it&amp;rsquo;s a sign they&amp;rsquo;re engaged.  As well as follow up questions&lt;/li&gt;
&lt;li&gt;ask open-ended questions.  examples:
&lt;ul&gt;
&lt;li&gt;Ask about beliefs or values (&amp;ldquo;How&amp;rsquo;d you decide to become a teacher?&amp;rdquo;)&lt;/li&gt;
&lt;li&gt;Ask someone to make a judgment (&amp;ldquo;Are you glad you went to law school?&amp;rdquo;)&lt;/li&gt;
&lt;li&gt;Asking about someone&amp;rsquo;s experiences (&amp;ldquo;What was it like to visit Europe?&amp;rdquo;)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Talk about intimate things.  When people discuss feelings/emotions, other people can&amp;rsquo;t help but listen to us&lt;/li&gt;
&lt;li&gt;we become prone to &amp;ldquo;emotional contagion&amp;rdquo; when we hear each others deeply held beliefs or values&lt;/li&gt;
&lt;li&gt;exposing ourselves to someone&amp;rsquo;s scrutiny engenders a sense of intimacy&lt;/li&gt;
&lt;li&gt;Asking Questions -&amp;gt; Vulnerability -&amp;gt; Emotional Contagion -&amp;gt; Connection&lt;/li&gt;
&lt;li&gt;slightly modify fact based questions to make them more emotional, eg: instead of &amp;ldquo;where do you live?&amp;rdquo;, &amp;ldquo;what do you like about where you live?&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Prove that you are listening.  Demonstrate it after the speaker finishes talking.  Repeat in their own words what we just heard them say.&lt;/li&gt;
&lt;li&gt;be a more desirable partner for future collaboration
&lt;br/&gt;&lt;br/&gt;&lt;/li&gt;
&lt;li&gt;The Learning Conversation (Rules):
&lt;ol&gt;
&lt;li&gt;Pay attention to what kind of conversation is occuring
&lt;ul&gt;
&lt;li&gt;specify goal(s) before the conversation&lt;/li&gt;
&lt;li&gt;formulate what we hope to say and how to say it&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Share your goals, and ask what others are seeking&lt;/li&gt;
&lt;li&gt;Ask about others feelings, and share your own&lt;/li&gt;
&lt;li&gt;Explore if identities are important to the discussion
&lt;br/&gt;&lt;br/&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;do you want to be Helped, Hugged or Heard ?
&lt;br/&gt;&lt;br/&gt;&lt;/li&gt;
&lt;li&gt;One thing I want to take away from this book is actions I can take to make a better conversation.  An actionable item I can do is write down what I want to get out of a call or interview or meeting before it occurs.  I can write down answers to questions like:
&lt;ul&gt;
&lt;li&gt;What are the specific topics I might discuss&lt;/li&gt;
&lt;li&gt;One thing I hope to say&lt;/li&gt;
&lt;li&gt;One question I will ask&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;just writing these down will help to make for a better conversation, even if I don&amp;rsquo;t actually use anything I&amp;rsquo;ve written down&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I heard of this book through the &lt;a href=&#34;https://www.econtalk.org/the-secrets-of-great-conversation-with-charles-duhigg&#34;&gt;EconTalk podcast&lt;/a&gt; and I kept hearing about it through other sources like this &lt;a href=&#34;https://www.instagram.com/p/C-DYf3NM4fY/&#34;&gt;Tim Ferris instagram post&lt;/a&gt;, among other places.  I read it over three days in August 2024 while traveling from New York to Denver.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Social Network Relationship Graph | SQL Use Case</title>
      <link>https://chriscampana.com/posts/social_network_relationship_sql/</link>
      <pubDate>Sun, 18 Aug 2024 00:00:00 +0000</pubDate>
      <guid>https://chriscampana.com/posts/social_network_relationship_sql/</guid>
      <description>&lt;p&gt;Here is SQL test I took during a job interview.  First is the description, or you can skip directly to the &lt;a href=&#34;#answer&#34;&gt;answer&lt;/a&gt;.&lt;/p&gt;
&lt;h4 id=&#34;description&#34;&gt;Description:&lt;/h4&gt;
&lt;p&gt;A social network under development needs a query that returns all profiles and the types of their relationships with each other.&lt;/p&gt;
&lt;p&gt;The result should have the following columns: &lt;em&gt;profile | %related_profile_1% .. %related_profile_N%&lt;/em&gt; - type of relation of specific profiles:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The column name is the related profile username.&lt;/li&gt;
&lt;li&gt;Columns are sorted in ascending order by name.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The result should be sorted in ascending order by &lt;em&gt;profile&lt;/em&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Dialer Application Weekly Call Stats | SQL Use Case</title>
      <link>https://chriscampana.com/posts/dialer_app_call_stats_sql/</link>
      <pubDate>Mon, 22 Jul 2024 19:17:43 -0400</pubDate>
      <guid>https://chriscampana.com/posts/dialer_app_call_stats_sql/</guid>
      <description>&lt;p&gt;Here is SQL test I took during a job interview.  First is the description, or you can skip directly to the &lt;a href=&#34;#answer&#34;&gt;answer&lt;/a&gt;.&lt;/p&gt;
&lt;h4 id=&#34;description&#34;&gt;Description:&lt;/h4&gt;
&lt;p&gt;As part of developing the call history functionality of a dialer application, create a query that returns a list of all contacts, the total duration of their calls, and the number of calls during the work week and weekends.&lt;/p&gt;
&lt;p&gt;The result should have the following column: &lt;em&gt;full_name | phone | type | workweek | weekend&lt;/em&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Using a table of users and their transactions, a SQL query that shows users&#39; first and last transaction | SQL Use Case</title>
      <link>https://chriscampana.com/posts/sql_rank_transactions/</link>
      <pubDate>Wed, 22 May 2024 19:17:43 -0400</pubDate>
      <guid>https://chriscampana.com/posts/sql_rank_transactions/</guid>
      <description>&lt;p&gt;I took this SQL test during a job interview.  The instructions are (spelling mistake is theirs): &amp;ldquo;We’d like a data model for quick lookup per user. Create a query that returns 1 row per user containing information on their first purchance and their last.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;We have a table that looks like this - the table is called subscriptions which can also be considered transactions.&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;Table &amp;#34;public.subscriptions&amp;#34;
 Column | Type | Collation | Nullable | Default 
----------------+-----------------------------+-----------+----------+---------
 transaction_id | character(36) | | not null | 
 purchased_at | timestamp without time zone | | not null | 
 purchase_price | double precision | | not null | 
 user_id | character varying(255) | | not null | 
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The way I did this was with two sub queries.  One sub query ranked each user&amp;rsquo;s transactions.  The other sub query counted total transactions per user - use this number to know which transaction was their last.  The query with total transactions per user has one row for every user, so in the main query start with that, then join to the ranking query twice, once for the first transaction and once for the last.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Convert seconds to HH:MM:SS PostgreSQL</title>
      <link>https://chriscampana.com/posts/seconds_to_hh_mm_ss_postgresql/</link>
      <pubDate>Wed, 01 May 2024 19:17:43 -0400</pubDate>
      <guid>https://chriscampana.com/posts/seconds_to_hh_mm_ss_postgresql/</guid>
      <description>&lt;p&gt;Here&amp;rsquo;s how to convert a numeric integer field of seconds to HH:MM:SS. Use the INTERVAL PostgreSQL data type.  The INTERVAL data type is used to store and manipulate a time period.&lt;/p&gt;
&lt;p&gt;Example&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;SELECT&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;120&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;*&lt;/span&gt; interval &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;1 sec&amp;#39;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Output&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;|120 seconds to HH:MM:SS|
|-----------------------|
|00:02:00|
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;An example with a table of rows of call records that have the length of call in seconds in a column called duration.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;select&lt;/span&gt; duration
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;, duration &lt;span style=&#34;color:#f92672&#34;&gt;*&lt;/span&gt; interval &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;1 sec&amp;#39;&lt;/span&gt; seconds_to_hh_mm_ss
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;, duration &lt;span style=&#34;color:#f92672&#34;&gt;*&lt;/span&gt; interval &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;1 min&amp;#39;&lt;/span&gt; min_to_hh_mm_ss
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;from&lt;/span&gt; calls;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Output&lt;/p&gt;</description>
    </item>
    <item>
      <title>Using RStudio – editing your user level and project level .RProfile file</title>
      <link>https://chriscampana.com/posts/rprofile_file/</link>
      <pubDate>Sun, 21 Mar 2021 19:17:43 -0400</pubDate>
      <guid>https://chriscampana.com/posts/rprofile_file/</guid>
      <description>&lt;p&gt;Using the .Rprofile file in RStudio is a great way to automatically load packages and functions upon startup. If you know of additional ways to use this file, let me know. For now, here are easy ways to edit these files at each level.&lt;/p&gt;
&lt;p&gt;Very simply, use the &lt;code&gt;usethis::edit_r_profile()&lt;/code&gt; command to edit your .RProfile file. It defaults to edit the user level file but you can add &lt;code&gt;scope = c(&amp;quot;user&amp;quot;, &amp;quot;project&amp;quot;)&lt;/code&gt; to the argument of the function. For example, if you wanted to edit the project level .RProfile file, use this command: &lt;code&gt;usethis::edit_r_profile(scope = c(&amp;quot;project&amp;quot;))&lt;/code&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How to download (export) your WordPress posts and data from your free WordPress blog</title>
      <link>https://chriscampana.com/posts/how-to-download-export-your-wordpress-posts-and-data-from-your-free-wordpress-blog/</link>
      <pubDate>Fri, 15 Jan 2021 19:17:43 -0400</pubDate>
      <guid>https://chriscampana.com/posts/how-to-download-export-your-wordpress-posts-and-data-from-your-free-wordpress-blog/</guid>
      <description>&lt;p&gt;It is real easy. First go to the WP Admin page of your blog. It is the same URL as your blog with /wp-admin/ appended to the end. Then click Tools &amp;gt; Export. You should now be on the “Export Content” screen. Follow the instructions on this screen to get your posts and other data.&lt;/p&gt;</description>
    </item>
    <item>
      <title>R – how to select all rows of a data frame where a condition is met</title>
      <link>https://chriscampana.com/posts/r-select-rows-condition/</link>
      <pubDate>Wed, 13 Jan 2021 19:17:43 -0400</pubDate>
      <guid>https://chriscampana.com/posts/r-select-rows-condition/</guid>
      <description>&lt;p&gt;Here is an example, the data looks like this with 3 columns.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-R&#34; data-lang=&#34;R&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;&amp;gt;&lt;/span&gt; fd_nba_raw
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    Position                 Nickname	Injury.Indicator
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;         PG              Luka Doncic                 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;2&lt;/span&gt;         PF    Giannis Antetokounmpo                 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt;          C       Karl&lt;span style=&#34;color:#f92672&#34;&gt;-&lt;/span&gt;Anthony Towns                GTD
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;4&lt;/span&gt;         SF             Kevin Durant                 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;5&lt;/span&gt;         SF             LeBron James                 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;6&lt;/span&gt;         PF            Anthony Davis                GTD
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;7&lt;/span&gt;         PG             Kyrie Irving                  O
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;8&lt;/span&gt;         SG              CJ McCollum                 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;9&lt;/span&gt;         SF            Kawhi Leonard                 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;10&lt;/span&gt;        PG           Damian Lillard                GTD
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;To select only those with Injury.Indicator = ‘O’&lt;/p&gt;</description>
    </item>
    <item>
      <title>AB or Hypothesis test comparing the mean of two samples (using R)</title>
      <link>https://chriscampana.com/posts/ab-test-with-r/</link>
      <pubDate>Thu, 24 Dec 2020 19:17:43 -0400</pubDate>
      <guid>https://chriscampana.com/posts/ab-test-with-r/</guid>
      <description>&lt;p&gt;To compare means of two samples, we need to perform an independent samples t-test, more commonly called &lt;a href=&#34;https://en.wikipedia.org/wiki/Student%27s_t-test&#34; target=&#34;_blank&#34;&gt;Student’s t-Test&lt;/a&gt;.  To perform this test, we need to know some statistics about the samples: each sample’s mean (&lt;em&gt;x̄&lt;/em&gt;), standard deviation (&lt;em&gt;s&lt;/em&gt;), and sample size (&lt;em&gt;n&lt;/em&gt;). Here is an example:&lt;/p&gt;
&lt;p&gt;There is data contained in a table of two columns. Column 1 is called ‘category’ and Column 2 is called ‘length.’ The category column contains two options, a and b, while the length column contains lengths in R type num. We want to find out if the mean length of the a values are different than the mean length of the b values. The data looks something like &lt;a href=&#34;https://imgur.com/flD51ti&#34; target=&#34;_blank&#34;&gt;this&lt;/a&gt;. The hypothesis statements look like this:&lt;/p&gt;</description>
    </item>
    <item>
      <title>How To Optimize a DFS Lineup using R and linear programming</title>
      <link>https://chriscampana.com/posts/optimize_dfs_lineup_using_r_and_linear_programming/</link>
      <pubDate>Fri, 11 Dec 2020 19:17:43 -0400</pubDate>
      <guid>https://chriscampana.com/posts/optimize_dfs_lineup_using_r_and_linear_programming/</guid>
      <description>&lt;p&gt;This is a post explain how to optimize a Daily Fantasy Sports (DFS) lineup using R and associated R packages.  This specific post will shows how to optimize a line for a 9 player MLB &amp;ldquo;classic&amp;rdquo; FanDuel contest. At the time of this writing (April 12, 2020) FanDuel is only offering Full Roster Sim contests because no live MLB games are being played at this time. Here is a link to the specific &lt;a href=&#34;fanduel.com/games/44972/contests/44972-235245842/entries/2024027069&#34; target=&#34;_blank&#34;&gt;FanDuel contest&lt;/a&gt; I used when writing this guide. Use my referral code and we each get $10: &lt;a href=&#34;https://fndl.co/t0u657t&#34;&gt;https://fndl.co/t0u657t&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Wesleyan School (Norcross, Georgia) Football Schedule &amp; Results 2000</title>
      <link>https://chriscampana.com/posts/wesleyan_football_schedule_results/</link>
      <pubDate>Mon, 28 May 2018 00:00:00 +0000</pubDate>
      <guid>https://chriscampana.com/posts/wesleyan_football_schedule_results/</guid>
      <description>&lt;p&gt;9/1/2000 Home vs Landmark Christian Win 24-0&lt;/p&gt;
&lt;p&gt;9/8/2000 Home vs Social Circle Win 28-7&lt;/p&gt;
&lt;p&gt;9/15/2000 Away at South Forsyth Win 25-22&lt;/p&gt;
&lt;p&gt;9/22/2000 Away at Brookstone Win 16-14&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Drew Vlass 2 blocked extra points, 1 blocked field goal and an interception&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;9/29/2000 Away at Pike County&lt;/p&gt;
&lt;p&gt;10/13/2000 Home vs Grayson Win 24-0&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Jake Humphrey caught a 49-yard pass from Zach Young to open the scoring and later added a 45-yard run to lead Wesleyan (6-0, No. 8 in A). Grayson never threatened to score, crossing midfield only twice in the game.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;10/20/2000 Away at Madison County Loss 18-28&lt;/p&gt;</description>
    </item>
    <item>
      <title>Savannah Music Venues and Bands</title>
      <link>https://chriscampana.com/posts/savannah_music/</link>
      <pubDate>Tue, 22 May 2018 19:17:43 -0400</pubDate>
      <guid>https://chriscampana.com/posts/savannah_music/</guid>
      <description>&lt;p&gt;I had this as a note on my iPhone and now I am putting it here.&lt;/p&gt;
&lt;h3 id=&#34;venues&#34;&gt;Venues&lt;/h3&gt;
&lt;p&gt;El Rocko - &lt;a href=&#34;https://www.instagram.com/elrockolounge/&#34;&gt;https://www.instagram.com/elrockolounge/&lt;/a&gt; &lt;br&gt;
Two Tides Brewing - &lt;a href=&#34;https://www.instagram.com/twotidesbrewing/&#34;&gt;https://www.instagram.com/twotidesbrewing/&lt;/a&gt; &lt;br&gt;
Service Brewing&lt;br&gt;
Coastal Empire Brewing&lt;br&gt;
Victory North - &lt;a href=&#34;https://www.instagram.com/victorynorthsavannah/&#34;&gt;https://www.instagram.com/victorynorthsavannah/&lt;/a&gt; &lt;br&gt;
Tybee Post Theater - &lt;a href=&#34;https://www.instagram.com/tybeepost/&#34;&gt;https://www.instagram.com/tybeepost/&lt;/a&gt; &lt;br&gt;
District Live - &lt;a href=&#34;https://www.instagram.com/districtlivesavannah/&#34;&gt;https://www.instagram.com/districtlivesavannah/&lt;/a&gt;&lt;br&gt;
Enmarket Arena&lt;br&gt;
Lodge of Sorrows - &lt;a href=&#34;https://www.instagram.com/lodgeofsorrows/&#34;&gt;https://www.instagram.com/lodgeofsorrows/&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;local-bands&#34;&gt;Local Bands&lt;/h3&gt;
&lt;p&gt;Basically Nancy - &lt;a href=&#34;https://www.instagram.com/nancybasically/&#34;&gt;https://www.instagram.com/nancybasically/&lt;/a&gt; &lt;br&gt;
Bastardane - &lt;a href=&#34;https://www.instagram.com/_bastardane_/&#34;&gt;https://www.instagram.com/_bastardane_/&lt;/a&gt; (may not be local anymore)&lt;br&gt;
Al Gore Rhythms - &lt;a href=&#34;https://www.instagram.com/al.gore.rhythms/&#34;&gt;https://www.instagram.com/al.gore.rhythms/&lt;/a&gt; &lt;br&gt;
Charlie Fog Band - &lt;a href=&#34;https://www.instagram.com/charliefogband/&#34;&gt;https://www.instagram.com/charliefogband/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Coastal Empire Records - &lt;a href=&#34;https://www.instagram.com/coastalempirerecords/&#34;&gt;https://www.instagram.com/coastalempirerecords/&lt;/a&gt;&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
