Jekyll2021-06-28T00:00:50+00:00https://phocks.github.io/feed.xmlphocksHello and welcome to my blogHow to get 2x Oracle Cloud servers free forever2020-11-15T00:00:00+00:002020-11-15T00:00:00+00:00https://phocks.github.io/how-to-get-2x-oracle-cloud-servers-free-forever<p>This is a follow up to my <a href="https://dev.to/phocks/how-to-get-a-free-google-server-forever-1fpf">How to get a Google server free forever</a> post.</p>
<p>In the comments <a href="https://dev.to/selim13">selim13</a> let me know that Oracle was offering a similar deal but even better!</p>
<p><img src="/public/img/oracle-comment.png" alt="Comment" /></p>
<p>The servers have twice the RAM that Google offers and more Hard Disk space plus 2 CPU cores compared with 1 on Google Cloud. And you get 10 TB outgoing traffic per month compared with 1 GB on Google! As for the 10 Mbps bandwidth limit, it seems that only applies if you enable a <strong>load balancer</strong> on your virtual network.</p>
<p>Go <a href="https://www.oracle.com/au/cloud/free/">here</a> and click <strong>Start for free</strong>. Then enter your country, name, and confirm your email.</p>
<blockquote>
<p><em>Note: my confirmation email went to spam so check there</em></p>
</blockquote>
<p><img src="/public/img/email-signup.png" alt="Sign up" /></p>
<p>Choose a username and password and make sure you choose a region that includes the <a href="https://www.oracle.com/cloud/data-regions.html#northamerica">always free cloud services</a>.</p>
<p><img src="/public/img/username-region.png" alt="Choose region" /></p>
<p>Fill in your address, verify your mobile number, then hand over your credit card details.</p>
<blockquote>
<p><em>Note: unfortunately payment info is required even though they won’t actually charge you if you stay on the free tier</em></p>
</blockquote>
<p>Pretty soon they’ll send through your access details via email so you can log in. Then you’ll get this screen.</p>
<p><img src="/public/img/create-vm.png" alt="Build your server" /></p>
<p>Click on <strong>Create a VM instance</strong> and configure your machine.</p>
<p>I switched from Oracle Linux to Ubuntu Linux but other than that I just kept all the defaults. You can change the boot image by clicking <strong>Edit</strong> in the <strong>Configure placement and hardware</strong> section.</p>
<p><img src="/public/img/config-image.png" alt="Edit image" /></p>
<p><strong>IMPORTANT: SAVE THE PRIVATE KEY</strong></p>
<p><img src="/public/img/download-ssh.png" alt="Save the private key" /></p>
<blockquote>
<p><em>You will not get another chance to do this and will not be able to access the server without it</em></p>
</blockquote>
<p>Click <strong>Create</strong> and your server will spin up!</p>
<p><img src="/public/img/ip-address-vm.png" alt="Alt Text" /></p>
<p>Repeat this from <strong>Create a VM instance</strong> to get your 2nd free server.</p>
<p>That’s it! You can <a href="https://docs.cloud.oracle.com/en-us/iaas/Content/Compute/Tasks/accessinginstance.htm">connect to your new servers via ssh</a>.</p>
<p>Have fun!</p>This is a follow up to my How to get a Google server free forever post.A simple web API with Deno, Oak, NGINX secured with Let’s Encrypt on Google Cloud2020-11-07T00:00:00+00:002020-11-07T00:00:00+00:00https://phocks.github.io/a-simple-web-api-with-deno-oak-nginx-secured-with-lets-encrypt-on-google-cloud<p>I’m writing this primarily for my own reference — so I don’t forget how to do this for next time, but if you find it useful then that’s cool too. Here’s what we’ll do. We’re gonna set up an API that when you access it, it sends back the following JSON message:</p>
<div class="language-json highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="p">{</span><span class="w"> </span><span class="nl">"message"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Hello World!"</span><span class="w"> </span><span class="p">}</span><span class="w">
</span></code></pre></div></div>
<p>Simple right? OK!</p>
<blockquote>
<p>Note: I’ll be running all this on my Google Cloud Compute instance. You can learn how to set one up for free using <a href="https://phocks.github.io/a-free-google-server-forever.html">this handy tutorial</a> that I wrote last time. But we’ll get to that part later.</p>
</blockquote>
<p>First up let’s do an <abbr title="Minimum Viable Product">MVP</abbr>. We’ll be running our web server on Deno so make sure <a href="https://deno.land">it’s installed</a> — or you can use Node.js/Express if you’re familiar with that. Basically we just want a http server listening on a <abbr title="Transmission Control Protocol">TCP</abbr> port.</p>
<p>Make a <code class="language-plaintext highlighter-rouge">server.ts</code> in a new project folder and chuck in the following:</p>
<div class="language-typescript highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="k">import</span> <span class="p">{</span> <span class="nx">Application</span> <span class="p">}</span> <span class="k">from</span> <span class="dl">"</span><span class="s2">https://deno.land/x/oak/mod.ts</span><span class="dl">"</span><span class="p">;</span>
<span class="kd">const</span> <span class="nx">app</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Application</span><span class="p">();</span>
<span class="nx">app</span><span class="p">.</span><span class="nx">use</span><span class="p">((</span><span class="nx">ctx</span><span class="p">)</span> <span class="o">=></span> <span class="p">{</span>
<span class="nx">ctx</span><span class="p">.</span><span class="nx">response</span><span class="p">.</span><span class="nx">body</span> <span class="o">=</span> <span class="p">{</span> <span class="na">message</span><span class="p">:</span> <span class="dl">"</span><span class="s2">Hello World!</span><span class="dl">"</span> <span class="p">};</span>
<span class="p">});</span>
<span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="dl">"</span><span class="s2">Listening on http://localhost:12345</span><span class="dl">"</span><span class="p">);</span>
<span class="k">await</span> <span class="nx">app</span><span class="p">.</span><span class="nx">listen</span><span class="p">({</span> <span class="na">port</span><span class="p">:</span> <span class="mi">12345</span> <span class="p">});</span>
</code></pre></div></div>
<p>And then run <code class="language-plaintext highlighter-rouge">deno run --allow-net server.ts</code> and we’ll be listening on http://localhost:12345</p>
<hr />
<blockquote>
<p>…to be continued (check back later and maybe I’ll have written more)</p>
</blockquote>I’m writing this primarily for my own reference — so I don’t forget how to do this for next time, but if you find it useful then that’s cool too. Here’s what we’ll do. We’re gonna set up an API that when you access it, it sends back the following JSON message:How to get a free Google server forever2020-07-20T00:00:00+00:002020-07-20T00:00:00+00:00https://phocks.github.io/a-free-google-server-forever<p><img src="/public/img/google-cloud-f1.png" alt="Google server" /></p>
<p>I first heard you could get a free Virtual Private Server instance on the Google Compute Engine from a random person on Twitter.</p>
<blockquote class="twitter-tweet"><p lang="en" dir="ltr">Cheers to the random dude who suggested rather snarkily over twitter that I should simply use a Google Compute f1-micro instance to periodically ping my scripts etc no I won't be dignifying that suggestion with a reply but yes I will be using that free service thank you</p>— Joshua Byrd (@phocks) <a href="https://twitter.com/phocks/status/1284414043449511937?ref_src=twsrc%5Etfw">July 18, 2020</a></blockquote>
<script async="" src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
<p>So here’s how to do it.</p>
<ol>
<li>Go to the <a href="https://console.cloud.google.com">Google Cloud Platform Console</a> and sign up/in if you have to and go to the <a href="https://console.cloud.google.com/compute">Compute Engine</a> section using the hamburger menu top left.</li>
<li>Enable Compute Engine if it’s not already enabled and then set up billing (you need to add a credit card or PayPal but don’t worry you won’t be charged).</li>
<li>Create a new instance in one of the free tier locations (Iowa, Oregon, or South Carolina) with machine type <code class="language-plaintext highlighter-rouge">f1-micro</code>.</li>
</ol>
<p><img src="/public/img/google-cloud-pricing.png" alt="Pricing" /></p>
<p>Finish the server config (make sure you add the max 30GB free disk space) and spin up the server. Click the <strong>Connect via SSH</strong> button to log in.</p>
<p>And that’s about it for now. Enjoy your free server forever!</p>
<blockquote>
<p>If this post helped you please consider <a href="https://github.com/sponsors/phocks">sponsoring me</a> on GitHub.</p>
</blockquote>
<hr />
<p><em>ps. I may update this page with more detailed instructions later if people want me to. Also NOTE: Even though you can run this server for free, Google may charge if you go over certain <a href="https://cloud.google.com/free">“free tier” limits</a> etc so just keep a lookout for that in the terms and conditions…</em></p>How to make a GitHub profile README2020-07-12T00:00:00+00:002020-07-12T00:00:00+00:00https://phocks.github.io/how-to-make-a-github-profile-readme<p>GitHub profiles are now live!</p>
<blockquote class="twitter-tweet"><p lang="en" dir="ltr">New GitHub profile now live ✨<a href="https://t.co/bb8I1khju6">https://t.co/bb8I1khju6</a> <a href="https://t.co/cRFW8AKASl">pic.twitter.com/cRFW8AKASl</a></p>— Joshua Byrd (@phocks) <a href="https://twitter.com/phocks/status/1281883959140335617?ref_src=twsrc%5Etfw">July 11, 2020</a></blockquote>
<script async="" src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
<p>I first saw this feature being teased a little while back in this post and I was pretty excited, but I’ve been waiting a while for it to become an actual thing. Finally they’re here!</p>
<blockquote class="twitter-tweet"><p lang="en" dir="ltr">hey, so we heard ya & are trying out a thing where you CAN have a readme on your <a href="https://twitter.com/github?ref_src=twsrc%5Etfw">@github</a> profile... <a href="https://twitter.com/mikekavouras?ref_src=twsrc%5Etfw">@mikekavouras</a> built it btw! re: <a href="https://t.co/UC6q3qHjjR">https://t.co/UC6q3qHjjR</a> <a href="https://t.co/kB0kafgovY">pic.twitter.com/kB0kafgovY</a></p>— kathy ☁️ (@pifafu) <a href="https://twitter.com/pifafu/status/1265773172520914944?ref_src=twsrc%5Etfw">May 27, 2020</a></blockquote>
<script async="" src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
<p>Looks like they used to be done with a <code class="language-plaintext highlighter-rouge">.github/README.md</code> repo and file. But it seems like they’ve changed things a little. Here’s how you do it.</p>
<ol>
<li>Make a repository with the same name as your GitHub username.</li>
<li>Create a README.md file inside that repo.</li>
<li>Commit and push the file to GitHub</li>
<li>Click the “Share to Profile” button in the sidebar.</li>
</ol>
<p>That’s it. Now check your GitHub profile. It should look a little <a href="https://github.com/phocks">like this</a>.</p>GitHub profiles are now live!4 / Giant psychic squid have returned to the Brisbane River — nature is healing — we are the virus2020-06-12T00:00:00+00:002020-06-12T00:00:00+00:00https://phocks.github.io/giant-psychic-squid-have-returned-to-the-brisbane-river-nature-is-healing-we-are-the-virus<blockquote>
<p><em>“In this world, shipmates, sin that pays its way can travel freely and without a passport; whereas Virtue, if a pauper, is stopped at all frontiers.” –<a href="https://www.amazon.com/WHALE-COLLECTORS-INTRODUCTION-CLIFTON-FADIMAN/dp/0840769008/ref=as_li_ss_tl?dchild=1&keywords=Herman+Melville,+Moby-Dick+or,+the+Whale&qid=1590894822&sr=8-2&linkCode=ll1&tag=phocks-20&linkId=da1d276eaa7de9eb4b4cd1e5621fd9d5">Herman Melville, </a></em><a href="https://www.amazon.com/WHALE-COLLECTORS-INTRODUCTION-CLIFTON-FADIMAN/dp/0840769008/ref=as_li_ss_tl?dchild=1&keywords=Herman+Melville,+Moby-Dick+or,+the+Whale&qid=1590894822&sr=8-2&linkCode=ll1&tag=phocks-20&linkId=da1d276eaa7de9eb4b4cd1e5621fd9d5">Moby-Dick or, the Whale</a></p>
</blockquote>
<p><a href="https://docs.google.com/document/d/1nT0kkg3BYA3CStATCa_nViYW7FFtnwCxxbKKnZr1G2A/edit?usp=sharing"><img src="/public/img/giant-squid.png" alt="" /></a></p>
<p>Dear reader,</p>
<p>Its’s been a while, I know. Time lately has seemed to bend and stretch and slip away, like a Titanic diamond into ocean depths. We skipped a month, didn’t we? Maybe two.</p>
<p>How are you? How’ve we been holding up during all this?</p>
<p>This letter might look and feel a little different. I’ve moved from <a href="https://tinyletter.com">TinyLetter</a> to <a href="https://substack.com">SubStack</a>. I’m digging it. It’s kinda like <a href="https://medium.com/">Medium</a>, but for emails. Changing with the times. Changing of the guards. The times are a-changin’. Whatever.</p>
<p>No music this time. Just words.</p>
<p>I’ve been thinking about routines lately, and ruts, and just letting things slide. Maybe through everything you’ve settled into a new daily routine, or added or subtracted a few programmed sub-routines during your day. Maybe you’re starting to feel in a rut. Maybe you’re letting a few things slide.</p>
<p>The other night I looked in the mirror, as had become a bit of a habit of mine lately. What I saw startled me for a second. I saw a different person staring back at me.</p>
<p>Actually no, it was still me. I just had a beard, a full-on, actual beard. That hadn’t happened to me before.</p>
<p>I still hadn’t shaved. I hadn’t shaved since lockdown started. Two, three, four months? I wasn’t growing my beard, not intentionally at least, so much as just not bothering to shave it. I’d just let that routine slide. Little wisps were beginning to form at the sides and a number of conspicuous grey hairs were poking through. It was becoming voluminous.</p>
<p>My daughter Vada grabbed me by the hand and pointed to the front door. This had become our (almost) nightly routine. Our walk, down along the <a href="https://foursquare.com/v/new-farm-riverwalk/4bdfd3b60ee3a593237a35b0">New Farm Riverwalk</a>. So off we went, past the apartment up from us, which was having a party, flagrantly against lockdown laws, and we started hand in hand down the street towards the river.</p>
<p>She pointed to the sky as we turned the corner. “Moon!” she cried out. It was a crescent sliver rising over trees and half-hidden behind a few clouds. Vada loved the moon. She always had. Her very first bedtime book was <em><a href="https://www.amazon.com.au/Kissed-Moon-Alison-Lester/dp/0143789759/ref=as_li_ss_tl?ie=UTF8&linkCode=ll1&tag=phocks00-22&linkId=64be465f19a7f082cfbec65b462c0a92&language=en_AU">Kissed By The Moon</a></em>. She kissed the moon in the book.</p>
<p>The moon hung deep in the sky. To the left and a little down was Venus.</p>
<p>“Star!” Vada said, pointing. Close enough!</p>
<p>We held hands as we crossed the road.</p>
<p>We spotted all the usual teddy bears hung up outside people’s places for kids to spot. She loves to spot the teddies.</p>
<p>We reached the water’s edge and saw some boats as they sailed past.</p>
<p>In the distance, the Story Bridge was all lit up like a rainbow.</p>
<p>“Do you want to walk down to the bridge?” I asked.</p>
<p>“Yes.”</p>
<p>But then she turned and started running back the way we came. This was a game that she had decided was extremely hilarious. I quickly chased her down while she let out a huge giggle. What a fun time!</p>
<p>I’ve been trying to teach her a new game. I call it <em>Forwards Yes, Backwards No</em>. She’s getting it, slowly.</p>
<p>We walked on.</p>
<p>Joggers passed. People on bikes rode by. The waters of the Brisbane River flowed past us and out to sea. Electric scooters zoomed at breakneck speeds while I scrupulously partitioned her away from the bicycle side of the “floating” walkway. There were the old regulars, like the couple with the two dogs. One dog walking, the other dog sitting in a shopping cart, staring out, tongue out, happy.</p>
<p>“Can you see the doggies?” I’d say.</p>
<p>“Oof, oof.” Vada would say.</p>
<p>Eventually, the twinkling lights of <a href="https://en.wikipedia.org/wiki/Howard_Smith_Wharves">Howard Smith Warves</a> appeared from behind the sheer cliff face, where in previous times there would be many people drinking and being merry. Tonight though, there were fences up all around. No socialising allowed in a pandemic. Pointing up to the bridge again, I asked her if she could tell me what the colours were.</p>
<p>“Purple?”</p>
<p>“Purpew.”</p>
<p>“Blue?”</p>
<p>“Lou”</p>
<p>“Green?”</p>
<p>“Ween.”</p>
<p>“Orange?”</p>
<p>“La-lee-loo-da.” She hadn’t learnt that one yet.</p>
<p>And so on.</p>
<p>I asked her if she could see the cars going over the bridge. “Car,” she said. I wondered if she remembered the other night when she was in the back of our car going over that very same bridge. Probably not. But you never know.</p>
<p>Just then we heard a noise to the left. Flapping. Large wings flapping. We turned and saw a gigantic pelican make a sea-landing in the river beside us. It then casually floated underneath us, disappearing into the night.</p>
<p>We made it. The walkway became land again. Part of our routine was to video call Vada’s Mummy on the grassy hills. And so we did. We told her about all the things we saw on our walk, mostly in gibberish tones. She understood a lot of it.</p>
<p>Then it was time to go up the elevator. Up, and up, and up, with Vada in constant enthrallment. Stepping out, we turned to look down once more to where we just were. There were many small people scurrying. So high up. Vada seemed oddly unafraid.</p>
<p>To the right, as usual, a projector was illuminating the rock face with strange symbols and I wondered for a second what they meant. Perhaps it was some subtle strange mind-control. Who knows?</p>
<p>Vada let out a little yawn, so I knew it was time to carry her home. I picked her up and put her in her carrier. I put my headphones in. I put my podcast on (I was listening to <em><a href="https://newsroom.spotify.com/2020-05-12/cold-war-propaganda-meets-music-icons-on-new-investigative-podcast-wind-of-change/">Wind of Change</a></em>, all about how the CIA might have written the Cold War anthem <em><a href="https://en.wikipedia.org/wiki/Wind_of_Change_(Scorpions_song)">Wind of Change</a></em>). And as we walked the streets of New Farm back to the apartment, she slowly closed her eyes and eventually dozed off into dreams.</p>
<p>I looked up once more. The moon was directly overhead and its crescent had become the mouth of a smile. I smiled back and continued on my way.</p>
<p><img src="/public/img/rainbow-bridge.jpg" alt="" /></p>
<hr />
<p>You made it this far. Congratulations! I wanted to try something different this time around. Tell a bit of a story, y’know. What’d you think? Originally I was going to throw in a few fictional bits here and there about a family of giant psychic squid living in the Brisbane River, but decided to stick to reality, for the most part.</p>
<p>How did you find this new SubStack platform? I noticed there’s an option for a paid subscriber tier, which I almost considered, but the minimum price of five bucks is far too high for anyone to pay it. So this is free for now! If you did want to show some support however you can <a href="https://github.com/sponsors/phocks">sponsor me on GitHub</a> with PayPal for one whole dollar.</p>
<p><em>*gunshot*</em></p>
<p><em>*gunshot*</em></p>
<p><em>*gunshot*</em></p>
<p><em>*cash register noise*</em></p>
<p>While putting this together, I was reminded of something I wrote for <a href="https://nanowrimo.org/">NaNoWriMo</a> way back in 2010 when I had (somewhat naive) aspirations of being some kind of novelist. It was called <em>The Squid Hunter</em> and if you wanted to check it out, just click on the picture of the squid that you scrolled past up top. It’s unedited and terrible and was written hastily in a month, but hey there might be some interesting tidbits strewn through somewhere in there.</p>
<p>Here’s a brief excerpt:</p>
<blockquote>
<p><em>Emotions fought in the great battleground of the heart, and a bitter wind blew upon our souls. Time stood still and it sped up, and it became meaningless, and then it took on every meaning known to man. Lights flashed in peculiar patterns around my head, around the ship, they flew past, and at the same time they took up residence within our minds. We all became separate from The Yellow Submarine, and we all became one with it also. We became one with the squid. It penetrated our heads, our minds, our very souls and every experience that we had, the squid claimed as its own. We became aware of each others thoughts, fears, dreams, and secret desires. We became one another in that instant. We saw things that seemed impossible, though they all seemed so very ordinary and we now knew that they could only ever be that way, and throughout existence, they had only ever been that way, but it was our perceptions as individuals that had shaped a skewed view on the world. We saw the complete histories of everyone on board, and then we saw the complete and total histories of everyone in the world, and then everyone throughout the ages. It was all revealed to us. It was the great revelation that we had indeed all secretly been desiring all our lives, even though some of us didn’t realise it yet. For that brief moment in time, when we were inside the squid, the alpha and the omega squid, we held the universe up with match sticks. The intensity grew, the pressure of evolution deep inside of all living things expanded and contracted and expanded again, again and again, throbbing and pulsating like a galactic star on the verge of supernova. And then it came. The moment of truth, ultimate truth, inside the stomach of that squid by which we had been devoured. We exploded. Our particles that we called physical existence came apart, dissolved into the very fabric of space and time, the acidic consumption of us all from our newfound surrounds, and we were absorbed completely in through the stomach lining of our massive captor.</em></p>
<p><em>Thoughts lingered on.</em></p>
</blockquote>
<p>Later, dreamers.</p>
<p>Josh. 🦑</p>“In this world, shipmates, sin that pays its way can travel freely and without a passport; whereas Virtue, if a pauper, is stopped at all frontiers.” –Herman Melville, Moby-Dick or, the WhaleMoving to SubStack2020-06-11T00:00:00+00:002020-06-11T00:00:00+00:00https://phocks.github.io/moving-to-substack<p>You may have noticed I’ve been doing a kind of a newsletter these past few months. The first three I have cross-posted from <a href="http://tinyletter.com/">TinyLetter</a> to <a href="http://phocks.github.io/">my blog</a> and here at <a href="https://medium.com/@phocks">Medium</a>.</p>
<p>From now on I will be just consolidating this on <a href="http://phocks.substack.com/">SubStack</a>.</p>
<p>Please <a href="http://phocks.substack.com/">subscribe</a> for email updates.</p>
<p>See ya there!</p>You may have noticed I’ve been doing a kind of a newsletter these past few months. The first three I have cross-posted from TinyLetter to my blog and here at Medium.3 / Know first who you are then adorn yourself accordingly2020-04-13T00:00:00+00:002020-04-13T00:00:00+00:00https://phocks.github.io/know-first-who-you-are-then-adorn-yourself-accordingly<p><small><em>Originally posted via <a href="http://tinyletter.com/phocks">TinyLetter</a></em></small></p>
<hr />
<blockquote>
<p>“And right now he was feeling the weight of all those losses, and the weight of the years that were behind him, and the weight of the ones that were still ahead, however many there might be — three or four, twenty or thirty, maybe more.” —<a href="https://www.goodreads.com/quotes/1283655-and-right-now-he-was-feeling-the-weight-of-all">Tom Perrotta</a></p>
</blockquote>
<p><a href="https://open.spotify.com/album/3UQKi6NGLPqo0stOFYOER3"><img src="/public/img/leftovers.png" alt="The Leftovers" /></a></p>
<h2 id="welcome-to-lockdown">Welcome to lockdown</h2>
<p>Double-click the folder above for <a href="https://open.spotify.com/album/3UQKi6NGLPqo0stOFYOER3">your soundtrack</a> to the newsletter. We are in lockdown.</p>
<p>The world is in lockdown. A virus with a <strong>crown of thorns</strong> <a href="https://www.abc.net.au/news/science/2020-04-09/how-did-coronavirus-start-where-did-bats-get-covid-19-from/12132312">jumped from bat to a pangolin (most likely) to human</a> and now it has taken over the world. <em>Who could have predicted this?</em> <a href="https://www.ted.com/talks/bill_gates_the_next_outbreak_we_re_not_ready">Oh, right</a>.</p>
<p>Animals packed in tight <a href="https://www.theguardian.com/world/2020/mar/28/is-factory-farming-to-blame-for-coronavirus">inevitably breed disease</a> and spread pestilence upon the world. <a href="https://www.plantbasednews.org/lifestyle/wet-markets-re-open-in-china-say-reports">We never seem to learn</a>. It has happened oftentimes. <span style="font-size: 1em;">It <strong>will</strong> continue to happen. <a href="https://animalequality.org.uk/act/ban-wet-markets">Unless</a>?</span></p>
<h2 id="take-me-to-church">Take me to church</h2>
<p>It’s just hit 4am and Vada is asleep in her carrier still, hopefully until morning this time. The third episode of HBO’s <em>The Leftovers</em> has just rolled credits as <a href="https://open.spotify.com/track/0aOluBqXYd0rFSCsgDyAWX">“Amen amen amen / take me to church / I’ll worship like a dog at the shrine of your lies”</a> plays through my headphones.</p>
<p>This is the episode that cemented the show’s brilliance in my mind when I first watched it, a few years back. The time seems right to begin again. Begin again.</p>
<p>For those unfamiliar, <a href="https://www.salon.com/2015/12/06/how_the_leftovers_became_brilliant_hbos_depressed_dark_horse_finally_found_its_voice_and_now_it_sings/"><em>The Leftovers</em></a> begins with an event in which 2 percent of the world’s human population suddenly and mysteriously vanish without a trace. The show deals with the fallout of this event and the lives of a handful of characters in upstate New York.</p>
<p>Seems sorta salient in today’s uncertain times.</p>
<p><img src="/public/img/take-me-to-church.jpg" alt="" /></p>
<h2 id="social-media-isolation">Social (media) isolation</h2>
<p>For the month of March, my wife and I went on a social media detox.</p>
<p>It was cold and lonely and I don’t recommend it. I didn’t even get that much extra reading done. This was primarily due to having a one-and-a-half-year-old to look after I think.</p>
<p>Mostly I found myself continually spamming <a href="https://www.abc.net.au/news">the news</a> and looking for <a href="https://getpocket.com/@phocks">loopholes</a> in the term “social media”.</p>
<p>OK I admit there was a certain calm solitude in it (from the absence of twitter most likely).</p>
<p><em>But <a href="https://twitter.com/phocks/status/1245301884425916418?s=20">it’s good to be back</a>.</em></p>
<h2 id="things-to-do-with-solitude">Things to do with solitude</h2>
<p>For those simply skimming this email here’s a list of things we’ve been up to during lockdown. (note: please don’t skim my email)</p>
<ol>
<li>We played <a href="https://www.jackboxgames.com/party-pack/">JackBox Party Pack</a> with friends over <a href="https://mixer.com/phocks">a live stream</a> and group chat</li>
<li>I finally <a href="https://twitter.com/phocks/status/1248094734964256768?s=20">got my electric bike back</a> and we took Vada for a ride in her bike trailer</li>
<li>My team at ABC <a href="https://www.abc.net.au/news/2020-03-26/coronavirus-covid19-global-spread-data-explained/12089028">released</a> a few <a href="https://www.abc.net.au/news/2020-04-10/coronavirus-data-australia-growth-factor-covid-19/12132478">stories</a> about <a href="https://www.abc.net.au/news/2020-04-01/coronavirus-isolation-quarantine-costumes-mental-health/12109354">COVID—19</a> while on lockdown</li>
<li>I was finally <a href="https://twitter.com/phocks/status/1245333511168348160?s=20">able</a> to <a href="https://twitter.com/phocks/status/1247147989568598017?s=20">continue</a> my <a href="https://twitter.com/phocks/status/1248232615833792512?s=20">X-Files rewatch</a> on <a href="https://twitter.com/phocks/status/1249323472213307392?s=20">Twitter</a></li>
<li>All the tea in the house mysteriously ran out so I <a href="https://twitter.com/phocks/status/1248047052346372102?s=20">ordered some more</a> from my friends’ tea shop down the road</li>
<li>The night before all the restaurants were locked down we went to our good family friend’s amazingly authentic restaurant <a href="https://www.a-thai-5.com/">A-Thai-5</a> in Mitchelton and talked about uncertain times</li>
<li>Vada and I have been going for <a href="https://photos.app.goo.gl/3HsFERpZMDbaBqZ9A">evening walks</a> along the Brisbane Riverwalk</li>
<li>And like everyone else on the planet we bought Animal Crossing and <a href="https://twitter.com/phocks/status/1245839429471580163?s=20">lockdown life</a> on the island is going well</li>
</ol>
<p><img src="/public/img/animal-crossing.jpg" alt="" /></p>
<h2 id="the-silver-screen">The silver screen</h2>
<p>The old Netflix and Prime Video have been getting slammed lately. The government even <a href="https://www.theguardian.com/media/2020/mar/20/australian-government-asks-netflix-and-stan-to-reduce-data-to-avoid-broadband-overload">asked them to turn down the quality</a> of their streams so it wouldn’t ruin our terrible internet connections.</p>
<p><em>If only there was some kind of competently managed National Broadband Network or something in place to deliver good internet to all Australians ¯_(ツ)</em>/¯_</p>
<p>Anyway thanks to <a href="https://letterboxd.com/phocksx/">Letterboxd dot com</a> for helping me remember all the movies I’ve watched over the past month. Here are some tiny reviews.</p>
<ol>
<li><em><a href="https://letterboxd.com/phocksx/film/eternal-sunshine-of-the-spotless-mind/">Eternal Sunshine of the Spotless Mind</a></em>: I can’t believe I only just realised that they are flashing back their relationship in reverse order from end to beginning so it starts out with all the bad memories and it slowly works its way to the good memories of their beginnings and then they decide to give it another go. They remember the good. I think that’s beautiful.</li>
<li><em><a href="https://letterboxd.com/phocksx/film/horse-girl-2020/">Horse Girl</a></em>: Wow. This was great. Probably don’t talk to me if you don’t like this movie.</li>
<li><em><a href="https://letterboxd.com/phocksx/film/knives-out-2019/">Knives Out</a></em>: Enjoyed this. James Bond with a Southern accent was weird though.</li>
<li><em><a href="https://letterboxd.com/phocksx/film/i-huckabees/">I Heart Huckabees</a></em>: I remember seeing this at the cinema when I was younger and thinking it was really poignant and deep. Now it seems a bit silly. Still enjoyable though for what it is.</li>
<li><em><a href="https://letterboxd.com/phocksx/film/neighbors-2-sorority-rising/">Neighbors 2: Sorority Rising</a></em>: So much better than I expected. Really took the concept in a new and interesting direction. Funny as!</li>
<li><em><a href="https://letterboxd.com/phocksx/film/hunt-for-the-wilderpeople/">Hunt for the Wilderpeople</a></em>: I liked it when they hunted for the wilderpeople.</li>
<li><em><a href="https://letterboxd.com/phocksx/film/back-to-the-future-part-iii/">Back to the Future Part III</a></em>: I had this one on VHS as a kid so it was pretty nostalgic. I liked it when they went back to the future and when they kept saying that they had to go back to the future.</li>
</ol>
<h2 id="television">Television</h2>
<p><em><a href="https://www.rottentomatoes.com/tv/fleabag/s01">Fleabag</a></em>. That’s it. Watch it. It’s genius.</p>
<p><img src="/public/img/fleabag.jpg" alt="" /></p>
<h2 id="she-is-risen">She is risen</h2>
<p>Vada continues to rise at times before 4 in the morning.</p>
<p>She is risen once more. It’s getting light outside slowly. A repeat of the other morning is playing out. We’re walking around the house. I’m singing.</p>
<p>And soon enough she’s drifted off, like a koala in her carrier. Again I put on <em>The Leftovers</em> through headphones. Episode 5 this time. <em>Gladys</em>. They are stoning a cult member to death. A member of <a href="https://fontsinuse.com/uses/8038/the-leftovers-guilty-remnant-posters-and-mess">The Guilty Remnant</a>. Intense. Compelling. Maybe I’ll go make a cup of tea. It’s 5:55 am.</p>
<p>I don’t think I’ll be sleeping again until tonight.</p>
<h2 id="hold-tight">Hold tight</h2>
<p>That’ll do for now. And how are you holding up? Tell me something I don’t know. Literally.</p>
<p>I might like to include some of your stories in the next issue, so please hit reply to this email. I’d love to hear from you. Or forward it on to a crush. Here’s a link to share: <a href="https://tinyletter.com/phocks">tinyletter.com/phocks</a></p>
<blockquote>
<p>Note: you are receiving this tiny letter because you either signed up or else I put you on the list because I consider you a friend. If you prefer however not to receive these words in future please unsubscribe below. I will be notified but I won’t be angry, just disappointed. Thanks for reading.</p>
</blockquote>
<p><strong>…one more thing</strong></p>
<p>Thank you to <strong>Amy</strong> and <strong>Pema</strong> for signing up to <a href="https://github.com/sponsors/phocks">sponsor my open-source projects</a> last month and all <a href="https://github.com/sponsors/phocks">previous sponsors</a> too. A dollar and a kind heart can go <a href="https://github.blog/2019-05-23-announcing-github-sponsors-a-new-way-to-contribute-to-open-source/">a long way</a>. Something new is coming soon 🙏</p>
<center>❧</center>
<p><em>Previous letter: <a href="https://phocks.github.io/the-good-thing-about-ufos-is-theyre-real-whether-you-believe-in-them-or-not.html">2 / The good thing about UFOs is they’re real whether you believe in them or not</a></em></p>Originally posted via TinyLetter2 / The good thing about UFOs is they’re real whether you believe in them or not2020-03-10T00:00:00+00:002020-03-10T00:00:00+00:00https://phocks.github.io/the-good-thing-about-ufos-is-theyre-real-whether-you-believe-in-them-or-not<p><small><em>Originally posted via <a href="http://tinyletter.com/phocks">TinyLetter</a></em></small></p>
<hr />
<blockquote>
<p>You can’t get the truth. You can’t. There’s a larger truth, though: that you can’t harness the forces of the cosmos, but you may find somebody else. You may find another human being. That may be kind of corny and all of that, but that’s what it is: <strong>Love is the only truth</strong> we can hope to know, as human beings. <a href="https://m.imdb.com/name/nm0819487/quotes?ref_=m_nm_trv_trv">That’s what Mulder and Scully found after nine years</a>. And that’s a lot.</p>
</blockquote>
<center><a href="https://open.spotify.com/playlist/2Wdlo2MrN2Jwgj40lVPN4w"><img src="/public/img/scully-take-no-shit.png" width="250" /></a></center>
<h2 id="greetings-from-planet-earth">Greetings from planet Earth</h2>
<p>Has it been a month already? Alrighty then. Click our lady of scepticism above for this month’s spooky soundtrack.</p>
<p>Most <strong>intelligent</strong> people will agree that <em>The X-Files</em> is the <a href="https://www.vox.com/culture/2018/10/23/17989508/x-files-25th-anniversary-monsters-of-the-week-excerpt-todd-vanderwerff">greatest television show</a> in history. We’ve been rewatching it recently—yes yet again.</p>
<p>If you’re really bored you can <a href="https://twitter.com/search?q=from%3Aphocks%20x-files%20rewatch">search Twitter</a> and see me review each episode one by one.</p>
<h2 id="happy-moonday">Happy Moonday</h2>
<p>Look out the window right now. The moon is full once more in the sky and that means baby Vada is now 18 lunar months old.</p>
<p><img src="/public/img/full-moon-for-vada.jpg" width="450" /></p>
<p>Our daughter Vada was born on a <strong>full moon</strong> in August. And for her first 12 moons we would religiously <a href="https://twitter.com/search?q=from%3Aphocks%20moon%20vada&src=typed_query&f=live">keep count</a> before finally letting the tradition stray when she was a year old.</p>
<p>Strange that a lunar month falls slightly shy of a regular calendar month. I had to work out this was her 18th lunar month by dividing her age in months by <strong>0.970867</strong>. I’m pretty sure that’s about right. Any math genius savants wanna correct me?</p>
<p>So what on <strong>Earth</strong> have we been up to? The Moon has orbited the Earth yet again and this <strong>Moon</strong> month has been a blur.</p>
<p>Oh yeah I randomly won a fancy clicky keyboard from a <a href="https://www.twitch.tv/tashnarr">Twitch streamer named tashnarr</a> that is apparently worth over <strong>300</strong> bucks. Here it is in all its glory:</p>
<p><img src="/public/img/tashnarr-keyboard.jpg" width="450" /></p>
<p>We also went to Chermside and Vada <a href="https://twitter.com/phocks/status/1229213368482852864?s=20">kept sliding down the fake grass</a> hills on her butt and it was pretty hilarious. Parenthood is a blast. 🤣</p>
<p>Our <strong>Information is Beautiful</strong> laser-cut award arrived for when we won <a href="https://about.abc.net.au/press-releases/abc-news-best-in-the-world-at-data-visualisation-and-digital-storytelling/">BEST IN THE WORLD</a> at data visualisation and digital storytelling. Isn’t it pretty? <em>(photo by <a href="https://twitter.com/BSpraggon">Ben Spraggon</a>)</em></p>
<p><img src="/public/img/information-is-beautiful-award-abc.jpg" width="450" /></p>
<p>We went to the newly renovated New Farm dog park and met a dog <a href="https://photos.app.goo.gl/tVMu1XiGnCxsYrCN7">who looked almost exactly</a> like Misty.</p>
<p>We started watching <em>3rd Rock From the Sun</em> and <a href="https://twitter.com/phocks/status/1231768745992843264?s=20">Vada loves dancing</a> to the theme song.</p>
<p>Aaaaaaaand we started our month-long and much needed social media detox.</p>
<p>(Sorry no more <em>X-Files</em> reviews until April).</p>
<h2 id="returning-to-return-of-the-jedi">Returning to Return of the Jedi</h2>
<p>When I was a kid I had only one Star Wars movie on VHS and it was <em>The Return of the Jedi</em>. It would be a while until I realised there were other Star Wars films as well—ones that didn’t involve Ewoks. What a shock to my adolescent mind.</p>
<p>For Valentine’s Day we dropped Vada at her Grandma’s and took ourselves out to dinner for <a href="https://www.zomato.com/brisbane/taros-ramen-south-brisbane">vegan ramen</a> in South Brisbane.</p>
<p>Afterwards we returned to my childhood to see a screening of <em>Return of the Jedi</em> at the Brisbane Convention Centre with orchestral backing by the Queensland Symphony Orchestra. It was <a href="https://twitter.com/phocks/status/1228634355704057856?s=20">out of this world</a>!</p>
<p><img src="/public/img/rotj-poster.jpg" width="450" /></p>
<h2 id="music-to-code-to">Music to code to</h2>
<p>I’ve found that movie soundtracks are really great to have on in the background while coding. Lately I can’t get enough of the <a href="https://open.spotify.com/album/11RrIE8R4WdmybwaItRa97"><em>Braveheart Original Motion Picture Soundtrack</em></a>.</p>
<p>Give it a go (and yeah I know Mel Gibson is cancelled but yeah this music really hits those nostalgic notes).</p>
<p>Close your eyes and picture the <strong>Scottish Highlands</strong>.</p>
<p><img src="/public/img/loch-ness-scotland.png" width="450" /></p>
<h2 id="god-is-other-people-or-planets">God is other people (or planets)</h2>
<p>I finally finished re-reading <em>Solaris</em>. I think I can now safely say it is my <strong>favourite</strong> novel—besides <em>Moby-Dick</em> of course. I usually find translations a little awkward to read—and previous translations of <em>Solaris</em> were English translations of a French translation so <a href="https://en.wikipedia.org/wiki/Solaris_(novel)#English_translation">even Stanisław Lem called them terrible</a>—but this new <a href="https://amzn.to/2PY2cZH">Bill Johnston translation</a> is all kinds of beautiful (currently available only on Kindle and audiobook).</p>
<p>For those unfamiliar with the storyline it involves a dude called Kelvin who arrives at a station afloat on the ocean planet of Solaris and finds that there are mysterious “visitors” seemingly created by the planet itself.</p>
<p>Okay after writing that last sentence I realise it’s virtually impossible to distil this book down to a few paragraphs. It deals with the nature of consciousness. It explores the <strong>unknowableness</strong> of intelligences apart from our own. It delves into how memory creates and influences perceptions and how we are all different versions of ourselves in the minds of others. And it describes a fallible and evolving proto-god reaching out for influence over the endless expanse of the universe.</p>
<p>Anyway if that sounds like your kind of thing give it a read. If not then don’t 🤷</p>
<p><img src="/public/img/solaris-book-cover.jpg" width="450" /></p>
<h2 id="some-links-for-the-road">Some links for the road</h2>
<p>Oh the places you’ll go:</p>
<ol>
<li>We released our <a href="https://www.abc.net.au/news/2020-02-19/australia-bushfires-how-heat-and-drought-created-a-tinderbox/11976134">Bushfires from space</a> story to much acclaim</li>
<li>I did an <a href="https://twitter.com/phocks/status/1233297408269807617?s=20">angry tweet</a> about the <strong>Copenhagen Interpretation</strong> of quantum mechanics and everyone should read <a href="https://www.wired.com/2014/06/the-new-quantum-reality/">this article about pilot-wave theory</a> that explains why quantum weirdness is totally unnecessary</li>
<li>For those of you still not <strong>Feelin’ the Bern</strong> <a href="https://theoutline.com/post/8766/its-sad-about-elizabeth-warren-but-its-time-to-go-full-bernie-sanders?utm_source=NL&zr=xfxuuo3e&zd=2&zi=5t5u57m7">here’s a good article</a> for you about Elizabeth Warren suspending her campaign</li>
<li>I started playing chess online again because of <a href="https://slate.com/culture/2020/02/magnus-carlsen-speed-chess-drdrunkenstein-pseudonyms-twitch-youtube.html?utm_source=pocket-newtab">this story about Magnus Carlson</a> showboating multiple chess games while drunk livestreaming under the name DrDrunkenstein</li>
<li>This old Buzzfeed News longread is also well worth a look: <a href="https://www.buzzfeednews.com/article/josephbernstein/tomi-masters-down-the-rabbit-hole-i-go">“Down The Rabbit Hole I Go”: How A Young Woman Followed Two Hackers’ Lies To Her Death</a></li>
<li>And lastly—keeping with theme—if I were to join an <strong>alien cult</strong> (and honestly I’ve thought about it more than twice) I’d maybe go with this one: <a href="https://www.vice.com/en_us/article/mv5xq4/i-went-to-a-raelian-cult-protest-for-titties-432">I Went to a Raëlian Cult Protest for Titties</a></li>
</ol>
<h2 id="farewell-dear-friends">Farewell dear friends</h2>
<p>Well that just about wraps it up for another month.</p>
<p>Feel free to reply to this email. I’d <strong>love</strong> to hear from you. Or please forward it on to a friend. Here’s a link to share: <a href="https://tinyletter.com/phocks">tinyletter.com/phocks</a></p>
<p>···</p>
<p>It’s just ticked past 2am and I’ve managed to get Vada to sleep again at last. The old hey Google play some “classical sleep music” trick seems to be working.</p>
<p>The moon rises and falls as the world turns. It shows and hides its different faces to us as it makes its revolutions around us all. We all go through our phases.</p>
<p>Until next time around.</p>
<p>Goodbye moonchild. 🖤</p>
<blockquote>
<p>Note: you are receiving this tiny letter because you either signed up or else I put you on the list because I consider you a friend. If you prefer however not to receive these words in future please unsubscribe below. I will be notified but I won’t be angry, just disappointed. Thanks for reading.</p>
</blockquote>
<p><strong>…one more thing</strong></p>
<p>If any of yall have a dollar and a <strong>kind heart</strong> my open-source sponsors page is now <a href="https://github.com/sponsors/phocks">up and running here</a> where you can quickly and easily add your name to a <a href="https://twitter.com/phocks/status/1220301996684533760?s=20">growing list</a> of friends helping to make amazing open-source things online 👨💻🙏</p>
<p><em>Previous letter:</em> <a href="https://phocks.github.io/the-journey-into-the-woods-to-find-the-dark-but-life-giving-secret-within.html"><em>1 / The journey into the woods to find the dark but life-giving secret within</em></a></p>Originally posted via TinyLetter1 / The journey into the woods to find the dark but life-giving secret within2020-02-13T00:00:00+00:002020-02-13T00:00:00+00:00https://phocks.github.io/the-journey-into-the-woods-to-find-the-dark-but-life-giving-secret-within<p><small><em>Originally posted via <a href="http://tinyletter.com/phocks">TinyLetter</a></em></small></p>
<hr />
<blockquote>
<p>Nostalgia—<a href="https://vimeo.com/20736616">it’s delicate, but potent</a>. In Greek nostalgia literally means “the pain from an old wound.” It’s a twinge in your heart far more powerful than memory alone. It takes us to a place where we ache to go again. It let’s us travel the way a child travels—around and around, and back home again, to a place where we know we are loved.</p>
</blockquote>
<center><a href="https://open.spotify.com/playlist/5nm0oigdKoPbe51rZNSkaK"><img src="/public/img/synthwave-sun.png" width="250" /></a></center>
<h2 id="welcome">Welcome</h2>
<p>Inspired by <a href="https://colin-gourlay.com/ibam/">Colin</a> and <a href="https://tinyletter.com/everysecondthursday">Simon</a> from work I’m starting my own semi-regular <em>electronic</em> newsletter. Tap the synthwave sun above for some nostalgic background music while reading this. And if you <strong>are</strong> reading this congratulations and welcome to the family.</p>
<p>The story so far for those who need catching up is that it’s 2020. Planet Earth is <a href="https://www.abc.net.au/news/2019-12-06/how-climate-change-has-impacted-your-life/11766018">getting warmer</a>. I’ve been doing code at <a href="https://www.abc.net.au/news/joshua-byrd/8609896">ABC News</a> for a few years now. We’ve been <a href="https://twitter.com/phocks/status/1095840923903188992?s=20">winning</a> a few <a href="https://twitter.com/phocks/status/1225583701108543488?s=20">awards</a> lately. My wife <a href="https://twitter.com/lady_smock">Amy</a> & I now have a daughter named Vada who has all but taken over my <a href="https://instagram.com/phocks">Instagram</a>. <a href="https://open.spotify.com/artist/2oaH5gF2m6OPgZ3vuEUrPH">Velociraptor</a> played our <em>10th Anniversary Show</em> recently. And I recently celebrated my <a href="https://twitter.com/phocks/status/1205044804138045441?s=20">4th veganniversary</a>. 🐮</p>
<h2 id="what-weve-been-up-to">What we’ve been up to</h2>
<p>Lately life’s been mostly work and looking after a small child. Here’s a brief rundown of some things we’ve been up to recently.</p>
<ol>
<li>We began ballet lessons and we <a href="https://www.instagram.com/p/B8Sbc5-BJEU/?utm_source=ig_web_copy_link">were extremely cute</a></li>
<li>We went to the <a href="https://www.instagram.com/p/B7KwB7_AHO6/?utm_source=ig_web_copy_link">Newmarket pool</a> and had a swim</li>
<li>I helped make an <a href="https://www.abc.net.au/news/2020-02-03/inside-the-australian-bushfires-crisis/11890458">interactive story for 4 Corners</a> about the Australian bushfires</li>
<li>We went to the <a href="https://www.instagram.com/p/B8VW6YeAUhL/">Brisbane Vegan Markets</a> in West End</li>
<li>I had a chat with the newly formed <a href="https://animaljusticeparty.org/qld/">Animal Justice Party</a> Queensland</li>
<li>It was <a href="https://photos.app.goo.gl/PZEP4wja664Jzxik7">Vady and Amy’s</a> first time visiting the Brisbane Bookfest</li>
<li>We helped friends move to Teneriffe and <a href="https://www.instagram.com/p/B8S3ALOg3wl/?utm_source=ig_web_copy_link">had a swim</a> in their pool</li>
</ol>
<h2 id="come-gather-round-people">Come gather round people</h2>
<p>Reading <a href="https://www.goodreads.com/user/show/2600381-joshua-byrd">is good</a>. Some days I hop across the bridge at lunch to the <em>Brisbane Square Library.</em> Mostly I raid their graphic novel collections. I’ve been getting into <em><a href="https://amzn.to/3blGrvW">Swamp Thing</a></em> lately. He’s a lot like me.</p>
<p><img src="/public/img/swamp-thing.jpg" width="450" /></p>
<p>In my ear on rides to and from work has been Russell Brand with <em><a href="https://amzn.to/2H3QMPl">Revolution</a></em> on Audible. I quite enjoyed it. Very funny and insightful. More than the pipe dream many people might dismiss it as. But you may say I’m a dreamer.</p>
<p>I also finally finished re-reading <a href="https://www.goodreads.com/work/quotes/3875895-the-cider-house-rules"><em>The Cider House Rules</em></a>. Fantastic. Full-on. Very long. An important book that everyone should read, even (and especially) if you don’t want to.</p>
<h2 id="feast-your-eyes">Feast your eyes</h2>
<p>On odd occasions we manage to get Vada to go to sleep early and are able to watch a sneaky movie as a treat.</p>
<p>We <a href="https://letterboxd.com/phocksx/film/joker-2019/">saw <em>Joker</em></a> the other day and I had a slight existential crisis when I started empathising with Arthur a bit too much. Especially because I too had dreams of becoming a stand-up comic when I was younger and I also never knew my biological father. But no! Joker was a very naughty boy!</p>
<p>Joaquin Phoenix however is a very good boy. If you haven’t seen his best actor acceptance speech yet. <a href="https://www.theguardian.com/film/2020/feb/10/joaquin-phoenixs-oscars-speech-in-full">Do yourself a favour</a>. I cried.</p>
<p>But it was <a href="https://amzn.to/2Szhu7M"><em>Jojo Rabbit</em></a> that really did it for me. Best picture I’ve seen in ages. Gonna have to go and watch all of Taika’s previous movies now for sure.</p>
<h2 id="ear-candy">Ear candy</h2>
<p>If you’re looking for a new podcast to listen to check out <a href="https://open.spotify.com/show/5nk7d9MLCgE3M47mXPW7MP"><em>The Missing Cryptoqueen</em></a> about the founder of a cryptocurrency called OneCoin (a bit like Bitcoin) who suddenly and mysteriously disappears without a trace. That’s all I’m gonna say.</p>
<p>Aaaand as much as I loooove Billie Eilish—first vegan to top <em>Triple J’s Hottest 100</em>—we all know <strong>Lana Del Rey</strong> had the best album of 2019 (if not the decade) and deserved that Grammy. If you haven’t listened to <a href="https://open.spotify.com/album/5XpEKORZ4y6OrCZSKsi46A"><em>Norman Fucking Rockwell!</em></a> yet then get on that here.</p>
<p>It’s pure genius.</p>
<p><a href="https://open.spotify.com/album/5XpEKORZ4y6OrCZSKsi46A"><img src="/public/img/norman-fucking-rockwell.jpg" width="450" /></a></p>
<blockquote>
<p>Joe met me down at the training yard<br />
Cuts on his face ’cause he fought too hard<br />
I know he’s in over his head<br />
But I love that man like nobody can<br />
He moves mountains and pounds them to ground again<br />
I watched the guys getting high as they fight<br />
For the things that they hold dear<br />
To forget the things they fear</p>
</blockquote>
<h2 id="the-road-ahead">The road ahead</h2>
<p>The days roll on. Years too. It’s just past 1am and I’m carrying Vada around our living room in the hope that she’ll once again return to sleep.</p>
<p>Outside the city sleeps. The city dreams. But those of you reading these words may be awake somewhere out there with your own crying child.</p>
<p>We each roll through our lives. We journey into the woods to find the dark but life-giving secret within. But for now it’s another goodbye.</p>
<p>Feel free to reply to this email or forward it to your friends. I’d love to hear from you and I’m sure they would too.</p>
<p>And here’s a link to share for future letters: <a href="https://tinyletter.com/phocks">tinyletter.com/phocks</a></p>
<p>Thanks for reading. Until next time. 🖤</p>Originally posted via TinyLetterReact hooks explained as simply as I humanly possibly can2019-04-21T00:00:00+00:002019-04-21T00:00:00+00:00https://phocks.github.io/react-hooks-explained-as-simply-as-i-humanly-can<p>Hooks let you do more things with function components.</p>
<hr />
<p>You can use state with the <code class="language-plaintext highlighter-rouge">useState()</code> hook.</p>
<p>eg. <code class="language-plaintext highlighter-rouge">const [count, setCount] = useState(0)</code>.</p>
<p>Now <code class="language-plaintext highlighter-rouge">count</code> equals <code class="language-plaintext highlighter-rouge">0</code>.</p>
<p>Update <code class="language-plaintext highlighter-rouge">count</code> with <code class="language-plaintext highlighter-rouge">setCount(1)</code>.</p>
<p>Now <code class="language-plaintext highlighter-rouge">count</code> equals <code class="language-plaintext highlighter-rouge">1</code> and the component will update.</p>
<hr />
<p>You can also trigger side effects with the <code class="language-plaintext highlighter-rouge">useEffect()</code> hook.</p>
<p>eg. <code class="language-plaintext highlighter-rouge">useEffect(() => console.log(count), [count])</code>.</p>
<p>Now it will console log every time <code class="language-plaintext highlighter-rouge">count</code> updates.</p>
<p><em>hint: use <code class="language-plaintext highlighter-rouge">[]</code> to only trigger the side effect once when the component is mounted and just leave off the second argument to trigger the effect after any state change.</em></p>
<p><em>hint 2: if you return a function from your side effect it will run that function after the componet unmounts.</em></p>
<hr />
<p>Here’s some code.</p>
<div class="language-jsx highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="k">import</span> <span class="nx">React</span><span class="p">,</span> <span class="p">{</span><span class="nx">useState</span><span class="p">,</span> <span class="nx">useEffect</span><span class="p">}</span> <span class="k">from</span> <span class="dl">"</span><span class="s2">react</span><span class="dl">"</span><span class="p">;</span>
<span class="kd">function</span> <span class="nx">Counter</span><span class="p">(</span><span class="nx">props</span><span class="p">)</span> <span class="p">{</span>
<span class="kd">const</span> <span class="p">[</span><span class="nx">count</span><span class="p">,</span> <span class="nx">setCount</span><span class="p">]</span> <span class="o">=</span> <span class="nx">useState</span><span class="p">(</span><span class="mi">0</span><span class="p">);</span>
<span class="nx">useEffect</span><span class="p">(()</span> <span class="o">=></span> <span class="p">{</span>
<span class="nb">document</span><span class="p">.</span><span class="nx">title</span> <span class="o">=</span> <span class="nx">count</span><span class="p">;</span>
<span class="p">},</span> <span class="p">[</span><span class="nx">count</span><span class="p">]);</span>
<span class="kd">function</span> <span class="nx">countHigher</span><span class="p">()</span> <span class="p">{</span>
<span class="nx">setCount</span><span class="p">(</span><span class="nx">count</span> <span class="o">+</span> <span class="mi">1</span><span class="p">);</span>
<span class="p">}</span>
<span class="k">return</span> <span class="p">(</span>
<span class="p"><</span><span class="nt">p</span> <span class="na">onClick</span><span class="p">=</span><span class="si">{</span><span class="nx">countHigher</span><span class="si">}</span><span class="p">></span>
<span class="si">{</span><span class="nx">count</span><span class="si">}</span>
<span class="p"></</span><span class="nt">p</span><span class="p">></span>
<span class="p">);</span>
<span class="p">}</span>
</code></pre></div></div>
<p>And that’s pretty much it.</p>
<p>If you want a more in-depth look <a href="https://reactjs.org/docs/hooks-intro.html">read the docs</a>.</p>Hooks let you do more things with function components.