<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:base="https://rory.codes/">
  <title>Rory Flint</title>
  <subtitle>Software engineer, photographer and maker of things.</subtitle>
  <link href="https://rory.codes/feed.xml" rel="self"/>
  <link href="https://rory.codes/" rel="alternate"/>
  <updated>2026-03-13T00:00:00Z</updated>
  <id>https://rory.codes/</id>
  <author>
    <name>Rory Flint</name>
    <email>hello@rory.codes</email>
  </author>
  <entry>
    <title>Notes on Twins Vol. 1 - Fifty Days</title>
    <link href="https://rory.codes/notes-on-twins-1/"/>
    <updated>2026-03-13T00:00:00Z</updated>
    <id>https://rory.codes/notes-on-twins-1/</id>
    <content xml:lang="en" type="html">&lt;blockquote&gt;
&lt;p&gt;Quick housekeeping before we dive inI. I&#39;ve started a Substack dedicated to fatherhood writing. This piece is cross-posted there. If that&#39;s your kind of thing, &lt;a href=&quot;https://roryflint.substack.com/p/notes-on-twins-vol-1&quot;&gt;check it out&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Fifty days ago, our little family of three became a not-so-little family of five. Arthur and Evelyn arrived a little early, perfectly happy and healthy.&lt;/p&gt;
&lt;p&gt;Twins. Three under three. Three under two and a half, actually. Two babies at the same time. A toddler in the prime of his chaotic phase. It&#39;s quite the undertaking.&lt;/p&gt;
&lt;p&gt;One of the ways I&#39;ve been keeping my head above water is by keenly observing the nuances and intricacies of recently becoming a parent to twins. What follows is by no means comprehensive or objective, but in this sleep-deprived stupor, it is all I&#39;ve got.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://rory.codes/assets/images/twins.webp&quot; alt=&quot;Arthur and Evelyn Flint&quot; title=&quot;Arthur and Evelyn Flint&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;It&#39;s hard&lt;/strong&gt; Let&#39;s just get it out of the way. Two babies are harder than one. Some things are a bit harder; some things are far more than twice as hard. Everything difficult is difficult twice over. Sleep is a miracle. Once you finally change, feed, and settle one baby, it is time for the other to wake and go through the whole process. Once you change, feed, and settle that one... Sisyphus would make a great twin parent.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;You become a celebrity&lt;/strong&gt; From the moment they are born, you are as close to a celebrity as any normal person can be. From the midwives in the hospital to strangers in the street, everybody goes nuts for twins. Everywhere you go, people will strike up a conversation: &amp;quot;I&#39;m a twin too!&amp;quot;, &amp;quot;What a blessing!&amp;quot;, &amp;quot;You must be exhausted!&amp;quot;&lt;/p&gt;
&lt;p&gt;When you are on the verge of total exhaustion, one of these random interactions makes everything okay.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;You become okay with crying&lt;/strong&gt; When my first son was born, I saw any crying as a failure. I was not fulfilling one of his limited number of basic needs: he was hungry, he was too cold or too hot, his nappy needed changing, or he needed a cuddle. There was no excuse.&lt;/p&gt;
&lt;p&gt;With twins (and a two-year-old), you have to accept that you can only truly deal with one baby at a time. My wife, a saint, can breastfeed both simultaneously, which can occasionally negate the issue, but that is about the only exception. They will be hungry at the same time. You will put one down too soon after feeding and leave them with an uncomfortable burp. Both will need their nappy changing at the same time. Again and again. In the early days, one or the other twin will be crying frequently.&lt;/p&gt;
&lt;p&gt;You become almost&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;https://rory.codes/notes-on-twins-1/#fn1&quot; id=&quot;fnref1&quot;&gt;[1]&lt;/a&gt;&lt;/sup&gt; immune to crying. Or, I should say, you become very in tune with what is safe crying and when something is seriously wrong. Babies are very resilient and can almost always wait for their sibling to be fed or changed, even if it is absolutely heartbreaking to hear.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Triage. Triage. Triage.&lt;/strong&gt; As an extension of the last point, you will become a master of triage. You simply cannot fulfil all of the needs of the twins, other siblings, the household, your partner, and yourself at any one moment. Without thinking, I know what needs to happen now, what can wait minutes, what I can do later, and most important of all: what I can just let go. &lt;em&gt;I need to sweep and mop the kitchen.&lt;/em&gt; No, I don&#39;t. We are fighting for our lives with three very young children; cross it off the list, forget it. The kitchen will be clean, one day. Close the loop by deleting the loop.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;People say really odd things&lt;/strong&gt; Alongside the lovely interactions and well wishes, there are some truly bizarre and out-of-pocket comments. One of our close friends said upon hearing the news, &amp;quot;Twins are my worst nightmare.&amp;quot; Thanks! &amp;quot;You&#39;ll never sleep again!&amp;quot;, &amp;quot;It&#39;s a shame they aren&#39;t identical.&amp;quot; It could be oversensitivity triggered by a lack of sleep, but it seems like many people just totally disregard social conventions and tell you exactly what they think. You learn to take it with a pinch of salt, of course. Assume positive intent always; but it is very odd.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The 7 Ps&lt;/strong&gt; &amp;quot;Proper Planning and Preparation Prevents Piss-Poor Performance.&amp;quot; The reward for good preparation is a crisis you didn&#39;t have. The majority of chaos can be dramatically reduced by methodically and strictly planning and preparing. Bottles need to be cleaned, sterilised, and easily accessible, whether it&#39;s 3 pm or 3 am. Nappies need to be stocked, organised by size, and strategically located. Washing needs to be done incessantly. Food for the family needs to either be prepared in advance or well-planned, quick, and easy. What we need for every trip is planned meticulously: we&#39;ll need the pram, the bassinet, four blankets, snacks and water for the toddler, and caffeinated beverages for us. We cannot make these decisions five minutes before leaving. It guarantees something is missed or forgotten, which then leads to tears, which snowballs inexplicably into a total meltdown by at least one child, and oft an adult, too.&lt;/p&gt;
&lt;p&gt;On reading through the above, I began to worry it was too negative: I hope it doesn&#39;t come across that way. Parenting very young children, especially babies, is challenging, but it is without a doubt the most wonderful and rewarding thing I have ever experienced, and I doubt it will ever be topped.&lt;/p&gt;
&lt;p&gt;The clichés are true: twins bring twice the amount of joy and twice the amount of love. The short-term chaos is rewarded with double winnings. In the hardest moments, I think of the payoff&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;https://rory.codes/notes-on-twins-1/#fn2&quot; id=&quot;fnref2&quot;&gt;[2]&lt;/a&gt;&lt;/sup&gt; and take solace that these are just the early days of the most beautiful journey.&lt;/p&gt;
&lt;hr class=&quot;footnotes-sep&quot; /&gt;
&lt;section class=&quot;footnotes&quot;&gt;
&lt;ol class=&quot;footnotes-list&quot;&gt;
&lt;li id=&quot;fn1&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;Never truly. A baby crying is an annoying sound, until it&#39;s your own. Then it&#39;s heart-wrenching and primal. &lt;a href=&quot;https://rory.codes/notes-on-twins-1/#fnref1&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn2&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;Scott Adams and Akira the Don explain perfectly &lt;a href=&quot;https://www.youtube.com/watch?v=1KSwZVlwuxQ&quot;&gt;here&lt;/a&gt;. &lt;a href=&quot;https://rory.codes/notes-on-twins-1/#fnref2&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/section&gt;
</content>
  </entry>
  <entry>
    <title>21 Day Experiment #2 - No Sugar</title>
    <link href="https://rory.codes/experiment-1-no-sugar/"/>
    <updated>2025-06-16T00:00:00Z</updated>
    <id>https://rory.codes/experiment-1-no-sugar/</id>
    <content xml:lang="en" type="html">&lt;p&gt;For the uninitiated, I am taking on a series of 21-day experiments. A brief introduction can be found &lt;a href=&quot;https://rory.codes/experiment-1-no-complaining&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We all know what is going to happen, right? Sugar, in the modern sense, is probably bad. Very bad. It&#39;s in everything and we can&#39;t stop eating it. Here in the UK, we are eating three times the recommended amount of sugar&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;https://rory.codes/experiment-1-no-sugar/#fn1&quot; id=&quot;fnref1&quot;&gt;[1]&lt;/a&gt;&lt;/sup&gt; and that is taking into account what appears to be a fairly liberal definition of what a &amp;quot;normal&amp;quot; amount is.&lt;/p&gt;
&lt;p&gt;I have a sugar problem. A serious one. Every meal ends with sweets, biscuits, or chocolate - often a combination. The afternoon and evening are punctuated by more sweet snacking and most meals include the addition of some sugary sauce.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://rory.codes/assets/images/thelandofcockaigne.webp&quot; alt=&quot;The Land of Cockaigne by J. M. W. Turner&quot; title=&quot;The Land of Cockaigne by J. M. W. Turner&quot; /&gt;&lt;/p&gt;
&lt;p&gt;What&#39;s more, I know how hugely it negatively affects me: I sleep poorly, I get huge dips in energy (which of course are &#39;solved&#39; by another hit of sugar), I have brain fog and I hold a few extra pounds of weight. Beyond these symptoms, I feel a sense of shame. Like a hidden addiction, I don&#39;t like people to know or see me snacking away on somewhat ridiculous amounts of sugar (think not a single chocolate bar, but four back-to-back). I feel depressed and miserable about my own lack of self-control. &amp;quot;How can I be a good father and husband when I can&#39;t even look after myself?&amp;quot;&lt;/p&gt;
&lt;p&gt;So let&#39;s deal with it. A nice time-boxed experiment. Why? Well, having an end date, at least initially, keeps me sane. It allows the early urges to be quelled (&amp;quot;just wait a couple of weeks and then we can eat whatever we like!&amp;quot;) and it allows for some unscientific observations and conclusions to be drawn as to how a lack of sugar actually makes me feel. If there is clear improvement in areas of my life, I expect the impetus to continue to be stronger. Or maybe nothing changes. Maybe all these symptoms and feelings I have long since blamed on sugar are totally unrelated. At least then I can begin to pursue them further and understand the true root cause.&lt;/p&gt;
&lt;p&gt;See you in three weeks.&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;Welcome back. We made it. 21 days of not wittingly consuming any sugar. Before I write up my own conclusions, here are the most notable points:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;A quick note on parameters&lt;/strong&gt;: For these 21 days, I eliminated all sugar - both added sugars and natural ones. This meant no sweets, biscuits, chocolate, sugary sauces, or drinks, but also no fruit, honey, or anything containing natural sugars.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;I lost 8 lbs&lt;/li&gt;
&lt;li&gt;I am still losing weight that I don&#39;t really want to lose - without high-calorie sugary foods, I&#39;m not great at understanding how much I need to eat&lt;/li&gt;
&lt;li&gt;Days 2 and 3 were by far the worst - headaches, irritability and fatigue&lt;/li&gt;
&lt;li&gt;Subsequently, mood, energy and mental acuity have been incredibly stable&lt;/li&gt;
&lt;li&gt;Clearly boredom was a factor: I regularly would find myself almost unconsciously walking towards the kitchen when I was bored&lt;/li&gt;
&lt;li&gt;The renewed energy led me to start working out again - something I haven&#39;t done in over two years&lt;/li&gt;
&lt;li&gt;Multiple people, unaware of any experiment, have commented that I seem happier and with more joie de vivre&lt;/li&gt;
&lt;li&gt;I would &lt;em&gt;really&lt;/em&gt; like some chocolate, though less so than in the second week when the urges peaked. They seem to have gradually declined, especially as the benefits have seemingly continued to compound&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The first and second points interest me the most. I expected to maybe drop a pound or two, but eight? It goes to show what a scary amount of my calories were from sugary and largely nutritionally devoid rubbish. And now, without these things, I feel a bit lost as to what and how much I should be eating. I can quite honestly say that I think I eat a good amount of fairly normal and healthy foods. The weight continuing to drop suggests otherwise - something else to think about and address.&lt;/p&gt;
&lt;p&gt;Energy and mood are solid and, more importantly, feel under my control. Lulls in either are more easily diagnosed as frustration with a work task or some personal disagreement, as opposed to this insulin spectre pulling strings behind the scenes.&lt;/p&gt;
&lt;p&gt;I am slightly embarrassed to say this publicly, but I feel proud. Sugar has been an almost impossible-to-conquer &amp;quot;addiction&amp;quot; for many year&lt;strong&gt;s&lt;/strong&gt;, and 21 days later, not only have I succeeded in completing the experiment, but I truly feel no real pull to go back. I will no doubt indulge in a sweet treat now and then, but honestly, I think me and sugar are done.&lt;/p&gt;
&lt;hr class=&quot;footnotes-sep&quot; /&gt;
&lt;section class=&quot;footnotes&quot;&gt;
&lt;ol class=&quot;footnotes-list&quot;&gt;
&lt;li id=&quot;fn1&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;&lt;a href=&quot;https://www.theguardian.com/society/2015/oct/23/sugar-britains-obesity-crisis-key-questions-answered&quot;&gt;Sugar and Britain&#39;s obesity crisis — key questions answered&lt;/a&gt;, The Guardian (2015) &lt;a href=&quot;https://rory.codes/experiment-1-no-sugar/#fnref1&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/section&gt;
</content>
  </entry>
  <entry>
    <title>21 Day Experiment #1 - No Complaining</title>
    <link href="https://rory.codes/experiment-1-no-complaining/"/>
    <updated>2025-04-25T00:00:00Z</updated>
    <id>https://rory.codes/experiment-1-no-complaining/</id>
    <content xml:lang="en" type="html">&lt;p&gt;I like experiments: time-boxed, specific and purposeful. Over the years I&#39;ve tried all kinds: setting and tracking monthly goals, fasting, reading 100 books in a year and a few more unsuitable for public announcement.&lt;/p&gt;
&lt;p&gt;I was recently reading a &lt;a href=&quot;https://www.raptitude.com/experiment-log-no-37-abstaining-from-political-content-for-two-months/&quot; target=&quot;_blank&quot;&gt;post&lt;/a&gt; by David Cain that inspired me to pick up some self-experimentation once again. I had also, by sheer coincidence, stumbled across an article by Tim Ferriss sharing his experiences with a &lt;a href=&quot;https://tim.blog/2007/09/18/real-mind-control-the-21-day-no-complaint-experiment/&quot; target=&quot;_blank&quot;&gt;21 Day No-Complaint Experiment.&lt;/a&gt; An idea began to take shape: a series of 21 Day Experiments, starting with the No-Complaint concept and continuing through to other areas of life that I&#39;d like to work on or, at the bare minimum, shake things up a bit.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://rory.codes/assets/images/fighting-temeraire.webp&quot; alt=&quot;The Fighting Temeraire Tugged to Her Last Berth to be Broken Up by J. M. W. Turner&quot; title=&quot;The Fighting Temeraire Tugged to Her Last Berth to be Broken Up by J. M. W. Turner&quot; /&gt;&lt;/p&gt;
&lt;h3&gt;How it works&lt;/h3&gt;
&lt;p&gt;The mechanics of the experiment are straightforward:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;You wear a purple wristband (though you can choose any type you want)&lt;/li&gt;
&lt;li&gt;Whenever you catch yourself complaining, you must switch the wristband to your other wrist&lt;/li&gt;
&lt;li&gt;The goal is to reach 21 consecutive days without complaining&lt;/li&gt;
&lt;li&gt;If you complain, you switch wrists and reset the clock back to day zero&lt;/li&gt;
&lt;li&gt;No exceptions, no excuses - you need to start over every time&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Bowen, a pastor, argues that complaining (verbally expressing dissatisfaction without constructive intent) creates a cycle of negativity that affects mental health, relationships, and life satisfaction.&lt;/p&gt;
&lt;p&gt;The 21-day timeframe is based on the idea that it takes about this long to form or break a habit, though modern research suggests habit formation often takes longer. Regardless, 21 days seems a significant target with obvious positive consequences.&lt;/p&gt;
&lt;h3&gt;Defining a Complaint&lt;/h3&gt;
&lt;p&gt;A complaint is a verbalised negative expression about a situation or problem without offering a constructive solution. For example:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Complaint: &amp;quot;The train is so late; I&#39;m going to be late for work.&amp;quot;&lt;/li&gt;
&lt;li&gt;Not a complaint: &amp;quot;The train is late, so next time I&#39;ll leave earlier to ensure I&#39;m on time.&amp;quot;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;There are a few additions that are also counted as &#39;complaints&#39; and require a reset:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Gossiping&lt;/li&gt;
&lt;li&gt;Criticising others in a non-constructive and action-oriented way&lt;/li&gt;
&lt;li&gt;Sarcasm/passive-aggressiveness&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;p&gt;I am beginning at 7:30am on 25th April 2025. Wristband at the ready. Deep breaths inhaled. I plan on keeping rough notes, where possible, each time I break the rules with the intention of being able to try and correlate certain people, places or activities with excessive complaining.
I will keep track and post updates below as the days, weeks, months and hopefully &lt;em&gt;not&lt;/em&gt; years go by.&lt;/p&gt;
&lt;h2&gt;Updates&lt;/h2&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;25th April&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;em&gt;1030&lt;/em&gt; - bemoaned a boring talk I&#39;d sat through&lt;/li&gt;
&lt;li&gt;&lt;em&gt;1330&lt;/em&gt; - swore at myself in frustration for eating a &lt;em&gt;second&lt;/em&gt; chocolate muffin&lt;/li&gt;
&lt;li&gt;&lt;em&gt;1530&lt;/em&gt; - internet at our new house is going to take an extra week to go live&lt;/li&gt;
&lt;li&gt;&lt;em&gt;1555&lt;/em&gt; - swore at a bee&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This is going to be quite a challenge.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;2nd May - One Week In&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I&#39;m still on day one. It&#39;s hard.
I&#39;ve been religiously tracking every swap and there is positive improvement. The first couple of days I averaged over 10-12 complaints per day whereas yesterday and the day before averaged just 3.&lt;/p&gt;
&lt;p&gt;I am slowly becoming significantly more aware of my words (and thoughts) and have stopped myself complaining by holding my tongue or rephrasing my opinion on several occasions.&lt;/p&gt;
&lt;p&gt;I have been quite shocked at how many of the complaints are &amp;quot;in jest&amp;quot;; sarcasm and joky replies or comments that are focussing on the negative. It is a clear habit of mine and so far has been the hardest type of complaint to negate.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;9th May - Two Weeks In&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Day one again.
Big improvements though. Got to day three and day two, much more aware of my words and actions. Driving and co-parenting are my big areas of weakness where the odd complaint will slip out. Working on it.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;2nd June - Progress...but still Day One&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Since the last update, I have a couple of longer stretches including a seven-day streak that broke on May 31st after a particularly difficult week. It is clear that whilst I am hugely improved when it comes to the larger issues of life, it is the trivial small annoyances that seem to provoke the loudest complaints. This is particularly noticeable after a cumulative period of stress and doubly and triply exacerbated if I&#39;m hungry and/or tired.&lt;/p&gt;
&lt;p&gt;Oh, and I had to order a new wristband. The first one broke due to too many arm switches.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;16th June&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I wouldn&#39;t go so far as to say I have given up, but paying attention to complaints and moving the wristband is mostly forgotten. I am going to reset and
restart this week and try and reinvigorate the process.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>July 2024 - A Review</title>
    <link href="https://rory.codes/july-2024-review/"/>
    <updated>2024-06-30T00:00:00Z</updated>
    <id>https://rory.codes/july-2024-review/</id>
    <content xml:lang="en" type="html">&lt;p&gt;I am holding myself accounting throughout July. You can read how and why &lt;a href=&quot;https://rory.codes/july-2024&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;s&gt;If you are reading this, either July has not yet finished or I failed miserably.&lt;/s&gt;&lt;/p&gt;
&lt;h3&gt;Update&lt;/h3&gt;
&lt;p&gt;A success. &lt;em&gt;Mostly&lt;/em&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;No sugar, no bad food ✅&lt;/li&gt;
&lt;li&gt;No fizzy drinks ✅&lt;/li&gt;
&lt;li&gt;No alcohol ❌&lt;/li&gt;
&lt;li&gt;No mindless doomscrolling ❌&lt;/li&gt;
&lt;li&gt;No days without physical exercise ✅&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I haven&#39;t had any sugar or sweetener in a month. I&#39;m about 9lbs/4kg down which was never the goal but a welcome side-effect. I do not feel beholden to sweetness post-meal or for an afternoon pick me up; something that has cursed me for many years.&lt;/p&gt;
&lt;p&gt;I abstained from drinking alcohol for 29 days of the 31 but had a single drink at two separate parties. Such is life.&lt;/p&gt;
&lt;p&gt;Doom-scrolling is much improved, 98% of the way there. But it would be false to say I did not mindlessly doomscroll in July.&lt;/p&gt;
&lt;h3&gt;What&#39;s next?&lt;/h3&gt;
&lt;p&gt;More. Double down. Five months left in 2024 to make it the best year ever.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>&quot;I gotta get in shape&quot;</title>
    <link href="https://rory.codes/july-2024/"/>
    <updated>2024-06-29T00:00:00Z</updated>
    <id>https://rory.codes/july-2024/</id>
    <content xml:lang="en" type="html">&lt;p&gt;I dislike excuses. This isn’t one.&lt;/p&gt;
&lt;p&gt;In the midst of early parenthood, career development and other &lt;a href=&quot;https://rory.codes/becoming-a-father-after-losing-one&quot;&gt;major life changes&lt;/a&gt; I have let too much slip. In the iconic words of Travis Bickle (Robert De Niro) in Taxi Driver:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;I gotta get in shape now. Too much sitting has ruined my body. Too much abuse has gone on for too long. From now on it’ll be 50 push ups each morning. 50 pull ups. No more pills. No more bad food. No more destroyers of my body. From now on it’ll be total organisation; every muscle must be tight.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src=&quot;https://rory.codes/assets/images/taxi-driver.webp&quot; alt=&quot;Taxi Driver - 1976&quot; title=&quot;Taxi Driver - 1976&quot; /&gt;&lt;/p&gt;
&lt;p&gt;For July 2024, the following will be true:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;No sugar, no bad food.&lt;/li&gt;
&lt;li&gt;No fizzy drinks&lt;/li&gt;
&lt;li&gt;No alcohol&lt;/li&gt;
&lt;li&gt;No mindless doomscrolling&lt;/li&gt;
&lt;li&gt;No days without physical exercise&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I will keep myself accountable. &lt;a href=&quot;https://rory.codes/july-2024-review&quot;&gt;Here&lt;/a&gt; is the blog post reviewing progress - it will be empty initially but will serve as either a sore reminder of my failure or an account of my success.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Thirty Three</title>
    <link href="https://rory.codes/33/"/>
    <updated>2024-02-27T00:00:00Z</updated>
    <id>https://rory.codes/33/</id>
    <content xml:lang="en" type="html">&lt;p&gt;The highest degree of Freemasonry. The international dialing code for France. The number of Vedic Gods. The age at which Jesus died. The number of vertebrae in the human spine. The atomic number for Arsenic. The number of Chilean miners trapped underground in 2010.&lt;/p&gt;
&lt;p&gt;Thirty three.&lt;/p&gt;
&lt;p&gt;One more year gone.&lt;/p&gt;
&lt;p&gt;Another one ahead.&lt;/p&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;Buy a house.&lt;/li&gt;
&lt;li&gt;Run a marathon.&lt;/li&gt;
&lt;li&gt;Journal every day.&lt;/li&gt;
&lt;li&gt;Write and publish more.&lt;/li&gt;
&lt;li&gt;Build more, online and offline.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>A Bittersweet Year - Becoming a Father After Losing Mine</title>
    <link href="https://rory.codes/becoming-a-father-after-losing-one/"/>
    <updated>2024-02-13T00:00:00Z</updated>
    <id>https://rory.codes/becoming-a-father-after-losing-one/</id>
    <content xml:lang="en" type="html">&lt;p&gt;Last year was a profound journey of contrasts for me, marked by the loss of my father and the arrival of my first child, all within the span of seven months. These events have reshaped my understanding of life, work, and the delicate balance we all strive to maintain between personal fulfilment and professional ambition.&lt;/p&gt;
&lt;p&gt;The passing of my father was a deep loss that reverberated through the core of my being, leaving an indelible mark on my soul. He was not just a parent but a guiding force in my life. His wisdom, shared through stories and advice and which he would always play down, had been a constant source of strength for me. His passing left a void, not only in my heart but in my daily routine. Suddenly, the person I turned to for advice, the one who had always been there to offer perspective on career decisions and personal challenges, was gone. This loss made me reevaluate my priorities, questioning the path I was on and whether it aligned with the values and lessons he had imparted.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://rory.codes/assets/images/elijah.webp&quot; alt=&quot;Elijah Flint&quot; title=&quot;Elijah Flint&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Then, as I was grappling with this grief, my child was born, turning my world upside down in a completely different way. The joy and responsibility of becoming a parent brought a new set of challenges and priorities to my life. Suddenly, my career and personal ambitions were no longer just about me; they were about providing for my family and setting an example for my child, just as my father had done for me.&lt;/p&gt;
&lt;p&gt;These two life-changing events have had a profound effect on my career and other areas of my life. Navigating grief while embracing the new responsibilities of parenthood has been a delicate balancing act. I&#39;ve found myself reassessing my career goals, striving to find work that is not only fulfilling but also allows me to spend quality time with my family. The importance of work-life balance has never been clearer to me. I want to succeed professionally, but not at the expense of missing out on my child&#39;s milestones or neglecting my own well-being.&lt;/p&gt;
&lt;p&gt;These experiences have taught me the importance of resilience and adaptability. I&#39;ve learned to adjust my expectations and goals in light of these new circumstances. I&#39;ve become more focused on what truly matters – building a secure and happy future for my family, while also honouring my father&#39;s memory by living up to the values he taught me.&lt;/p&gt;
&lt;p&gt;The loss of my father and the birth of my child have reshaped my perspective on career and life. These events have underscored the importance of aligning my professional aspirations with my personal values and responsibilities. They&#39;ve reminded me that success is not just measured by career achievements but by the impact we have on the lives of those we love and the legacy we leave behind.&lt;/p&gt;
&lt;p&gt;You will have undoubtedly heard the advice before: hold the ones you love close, make time for them, listen to them and love. But truly I implore you, really do it. My son is growing up fast and is from the boy he was just a few weeks ago. Waste no time for you never know how much there is left.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://rory.codes/assets/images/dad.webp&quot; alt=&quot;David James Downie Flint (1956 - 2023)&quot; title=&quot;David James Downie Flint (1956 - 2023)&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;David James Downie Flint (1956 - 2023)&lt;/em&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Landing Your First Job as a Software Engineer Without a Degree</title>
    <link href="https://rory.codes/changing-careers-to-engineering/"/>
    <updated>2023-11-27T00:00:00Z</updated>
    <id>https://rory.codes/changing-careers-to-engineering/</id>
    <content xml:lang="en" type="html">&lt;p&gt;Once or twice a month I get an email from a current or recent student of a coding bootcamp asking for advice and insight about breaking into the industry. More often than not this comes in the form of a video call though occasionally some kind of synchronous chat via LinkedIn.&lt;/p&gt;
&lt;p&gt;I recently spoke to two people back to back and unsurprisingly my advice and feedback was almost identical to both, which got me thinking I should put pen to paper and write it all down.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://rory.codes/assets/images/theherringnet.webp&quot; alt=&quot;The Herring Net by Winslow Homer&quot; title=&quot;The Herring Net by Winslow Homer&quot; /&gt;&lt;/p&gt;
&lt;p&gt;First and foremost I must state the obvious: it is going to be incredibly difficult to land your first job. This is true for almost everybody entering into the field but more difficult still without a graduate program or prestigious degree on your CV.&lt;/p&gt;
&lt;p&gt;Unless you are exceptionally lucky or have a network catered precisely to your needs, the first attempts to find a job can be brutally disheartening: complete non-responses, let alone rejections will make up the bulk of your applications.&lt;/p&gt;
&lt;p&gt;With that out of the way, there were undoubtedly some factors that greatly played in my favour and others I have observed whilst speaking to other bootcamp graduates as well as during my day to day life as an engineer which regularly includes reviewing CVs and interviewing new candidates.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Emphasise your career change&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;It is common to see those trying to break into the industry after a career change try and hide their previous roles and only pay attention to their most recent achievements. I think this is a huge missed opportunity to emphasise what you bring to the table that the traditional applicants may be lacking.&lt;/p&gt;
&lt;p&gt;My previous career as a photographer was the stroke of luck I needed to land my first job. The hiring manager passed on my CV until a few days later when the CEO mentioned they needed to find a photographer to do some contracting. It sparked a memory of my application and the rest is history.&lt;/p&gt;
&lt;p&gt;So you were a teacher? You&#39;ve learned a myriad of skills that most junior software engineers do not possess. You&#39;re an effective communicator and you can distill complex ideas into concise chunks.
Any previous career or outside interest can be used to your advantage; just be sure that you explain why. It&#39;s not enough to say you have dealt with difficult clients in your customer service role, you must explain how the people skills you developed have &#39;&lt;em&gt;allowed you to effectively interact with cross-functional teams and stakeholders&lt;/em&gt;&#39;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Don&#39;t forget the &#39;other&#39; technical skills&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;If your CV has gotten through to me I assume you know enough about programming to contribute code. However I have observed that many of the bootcamp applicants regularly fail to mention Git, pull requests, deployment knowledge and other technical skills that are indispensable when hiring a new engineer.
You do not need to lie and pretend to be an AWS expert but ensuring you list knowledge beyond a specific coding language is a good sign of the maturity of your skillset.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;A portfolio with deployed projects&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;It should go without saying but have a portfolio deployed online. It should contain an overview about who you are, contact information and most importantly: several &lt;em&gt;deployed&lt;/em&gt; projects. Notice the emphasis on &lt;em&gt;deployed&lt;/em&gt;. If you tell me you have created a shopping list application, I want to see it. A link to the Github repository to show off your code means very little to me if I am unable to see the resulting effort.&lt;/p&gt;
&lt;p&gt;You do not need a lot of complicated projects. By all means a huge and feature rich application is fantastic and likely to inspire confidence but it isn&#39;t essential. My portfolio did and still does contain small pet projects that I have polished and demonstrate a variety of skills. In my first porfolio I included a single page HTML file with a small stylesheet that displayed one of my favourite short stories. It looked beautiful and all the text was perfectly responsive. It wasn&#39;t complex but it clearly illustrated an eye for design as well as a demonstration of the technical fundamentals of web development.&lt;/p&gt;
&lt;p&gt;Keep your portfolio simple. Does it show off what you can do, your ability and your personality? Or does it show that you found a template online or the latest animation library? There is nothing wrong with fancy but get the basics right first.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Cross the t’s and dot the i’s&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I hate to say it but I see spelling mistakes, poor grammar and dead links painfully regularly. Check to see that all of your deployments on your portfolio are still live and don&#39;t lead to a 404 page. Ensure you have run your CV, portfolio content and any cover letters through a spell checker. In a world where large volumes of applications is the norm, it can be the smallest and most inconsequential error that helps a hiring manager reject a CV. Don&#39;t trip over your shoelaces just metres from the finish line.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Recruiters&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Disregard previous bad experiences and prejudices. Recruiters want to help you get a role (and their commission in the process). Many individuals and agencies are tailored to junior roles; they will take your CV and go direct to companies that they know are accepting applicants of that level.&lt;/p&gt;
&lt;p&gt;Be kind, be polite and be helpful. A good relationship with a recruiter can be the difference between them hyping you up to a hiring manager and disregarding your CV entirely.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Don’t stop learning and building&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;With the fundamentals under your belt, you should set out to learn more and more, ideally by building projects. Your growth at this stage should be near &lt;a href=&quot;https://blog.samaltman.com/how-to-be-successful&quot;&gt;exponential&lt;/a&gt;. I would advise making a large list of ideas, many of which already exist online, of varying degrees of difficulty and size and getting to work. Speedrunning a tiny project in a day or working on a significant piece of work that takes weeks - just be learning and building.
Not only does it increase your technical ability for when you land a role, but it also gives you great content and talking points once you begin interviewing.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Share your journey&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I&#39;d file this under &#39;non-essential&#39; but I think it is nonetheless worth a mention. Sharing your journey on LinkedIn, X/Twitter or a personal blog increases your surface area of luck and brings a human element to your application.
I have viewed many CVs that are a list of previous roles, skills and not much else. A link to a blog, a YouTube series or an active X/Twitter account that is documenting the journey of learning (projects, applications, technologies etc) gives context to who you are and makes it easier to imagine working with you as opposed to one of the many other CVs lacking direct industry experience.&lt;/p&gt;
&lt;p&gt;You&#39;d be surprised at how much people are willing to help somebody who is earnestly sharing their journey with honesty, humility and determination.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Positive mental attitude&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Forgive me for going a little woo for the final point but I think in these circumstances it is justified.
As I alluded to above, finding your first role can be really, really hard. There will be moments when you think no company will ever take you on and competing with university graduates or those with significantly more technical knowledge is impossible.
There will be times when you think it pointless to build another project or email another recruiter or follow another tutorial.&lt;/p&gt;
&lt;p&gt;If you are to succeed, you must stay positive. You must stay optimistic. Many, many people have gone on to incredibly successful careers in tech with less knowledge and resources than you have at your disposal.&lt;/p&gt;
&lt;p&gt;There will be plenty of obstacles in the road, try not to let your own attitude hinder you further.&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;Well, that&#39;s about the basis of what I have told most people who have asked. It&#39;ll be hard, so make every effort to not make it harder for yourself. AI is rapidly changing the tech industry but I still think it is a dream and career worth pursuing. Now more than ever, those who are able to adapt and adjust their skills will thrive.&lt;/p&gt;
&lt;p&gt;Finally, this post in no way serves as a replacement for speaking directly to those people who want advice. Please always feel free to reach out and I shall do my best to help. I often review CVs and portfolios as well as helping with outreach to recruiters and hiring managers.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Great Books - Why I Created My Own Literary Education</title>
    <link href="https://rory.codes/great-books/"/>
    <updated>2023-11-16T00:00:00Z</updated>
    <id>https://rory.codes/great-books/</id>
    <content xml:lang="en" type="html">&lt;p&gt;&lt;img src=&quot;https://rory.codes/assets/images/vanitas.webp&quot; alt=&quot;Vanitas by Simon Renard de St. André&quot; title=&quot;Vanitas by Simon Renard de St. André&quot; /&gt;&lt;/p&gt;
&lt;p&gt;It isn&#39;t a controversial statement to say that reading is one of the most important pastimes somebody can take up. You begin, however, to head into murky waters when you dictate what should be read or what is objectively good or bad.&lt;/p&gt;
&lt;p&gt;I recently came to the realisation that I love reading but flit from book to book; like a moth to a flame I eagerly follow the zeitgeist or the most recent recommendation.
This fleeting impermanence of choice is, in my mind, a waste of the joy of reading.&lt;/p&gt;
&lt;p&gt;There are many millions of books. Only a tiny percentage will stand the test of time and a smaller percentage still will I ever have the time to read.
It therefore makes sense to be as intentional about the choice as possible. As an aside, I believe you should be as intentional as possible about everything, all of the time.&lt;/p&gt;
&lt;p&gt;There are, regardless if you agree with the choices, a particular set of texts over the past few thousand years that are considered ‘great’. Books that stand the test of time. Books that break barriers, impart timeless wisdom or tell stories that resonate across cultures and generations.&lt;/p&gt;
&lt;p&gt;It would be wiser to actively read those texts that supposedly meet the mythical standard, instead of merely admiring them from a distance.&lt;/p&gt;
&lt;p&gt;Averaging out the busyness of life with a career, children and a social life, I would hazard that I read two books a month.&lt;/p&gt;
&lt;p&gt;Undoubtedly as life meanders through its different stages this average will change but two a month seems a safe bet. Going off of the data, I have about 1,128 books left.
Given over two million books are published each year and a backlog of several hundred million already exist, I had better pick wisely.&lt;/p&gt;
&lt;p&gt;I have decided to construct a simple four year higher education style plan of reading. This is no way an attempt at a definitive list; it is an amalgamation of several famous syllabi from various University courses as well as a few additions of my own devising.&lt;/p&gt;
&lt;p&gt;Whilst the list is divided by year, I am under no illusion that I am sure to complete it in that timeframe or stick rigidly to the structure. I work well when I have rules to break.&lt;/p&gt;
&lt;p&gt;Once upon a time I made an effort to read 100 books in a year. It was a fun challenge but in hindsight it descended into exactly what I should have expected: a race to quickly finish short books without a lot of thought or absorption. It was the polar opposite of how I really like to do anything: with consideration and care.&lt;/p&gt;
&lt;p&gt;With that in mind, I am putting no pressure on finishing any book in any timeframe. My goal is to study and learn from these books, to enjoy and savour them.
You can view the full list here alongside some further background and sources on how the list was compiled: &lt;a href=&quot;https://books.rory.codes/&quot;&gt;https://books.rory.codes&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;In these early days, I am particularly looking forward to a few texts and a little terrified of others:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Essays by Montaigne&lt;/strong&gt;: I have been keen essay reader (and occasional writer) for many years so going to the Godfather has long been a goal.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Anything by Plato&lt;/strong&gt;: Philosophy has been an interest for years and yet I am dangerously ignorant of one of the all time greats.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dante’s Inferno&lt;/strong&gt; has scared me off for at least a decade.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Don Quixote by Miguel de Cervantes&lt;/strong&gt; has been recommended at least three people I greatly respect.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So, on that note, the books await. I am going to be occasionally writing up notes on the books as I read them so do check in now and then. As ever feel free to be in contact via the &lt;a href=&quot;https://rory.codes/about&quot;&gt;about me&lt;/a&gt; me page.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Are you talking or speaking?</title>
    <link href="https://rory.codes/talking-or-speaking/"/>
    <updated>2023-10-24T00:00:00Z</updated>
    <id>https://rory.codes/talking-or-speaking/</id>
    <content xml:lang="en" type="html">&lt;p&gt;Next time you are in a conversation with somebody who is not a close friend or family member, try to discern if you are talking or speaking.&lt;/p&gt;
&lt;p&gt;Talking is engaging in the art of conversation. Talking involves give-and-take. Whilst there is no requirement for the output to be split perfectly between participants, each party has ample opportunity to both speak and listen.&lt;/p&gt;
&lt;p&gt;Speaking, on the other hand, is a one-sided affair. Your output is unaffected by their input. You have decided what you are going to say and the response received is not of concern.&lt;/p&gt;
&lt;p&gt;Speaking, of course, has its place and is perfectly reasonable in many situations. Giving instructions, relaying information or quite literally giving a ‘speech’. The issue arises when you enter into conversations and end up speaking rather than talking.&lt;/p&gt;
&lt;p&gt;Here is a simple test to try next time you’re in a conversation: observe if have you already decided what you are going to say next before the other person has finished talking. Are you waiting for your turn to speak rather than listening?&lt;/p&gt;
&lt;p&gt;We all do it on occasion and more importantly, we are all painfully aware when somebody else is doing it. Trust me, everybody knows when you aren’t listening. Everybody knows when you just can’t wait to give your opinion above everybody else’s.&lt;/p&gt;
&lt;p&gt;If you have decided to engage into a conversation you should listen with all of your being when somebody else is talking. Listen to their words, absorb what they are saying, read what their body language and non-verbal cues are telling you. Ensure you are engaging with natural backchannel behaviour, brief verbal or non-verbal signals that show a person is actively engaged and listening.&lt;/p&gt;
&lt;p&gt;Do not be afraid to pause after somebody has finished speaking. A conversation does not need to always be a frantic tennis match of instantaneous responses. Compose your thoughts. Filler expressions (”mm, interesting”, “that’s a good question”, etc) are excellent to indicate your absorption of what was said and buy you time to unhurriedly construct your response.&lt;/p&gt;
&lt;p&gt;Being heard and understood is a deep human need. So, listen well and listen carefully. Maybe you’ll learn something, maybe you won’t. But just maybe you’ll let somebody feel heard.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>2022 Review + 2023 Goals</title>
    <link href="https://rory.codes/2022-review/"/>
    <updated>2023-01-01T00:00:00Z</updated>
    <id>https://rory.codes/2022-review/</id>
    <content xml:lang="en" type="html">&lt;p&gt;&lt;img src=&quot;https://rory.codes/assets/images/thelastwordsoftheemperormarcusaurelius.webp&quot; alt=&quot;The Last Words of the Emperor Marcus Aurelius by Eugène Delacroix&quot; title=&quot;The Last Words of the Emperor Marcus Aurelius by Eugène Delacroix&quot; /&gt;
At the end of 2021 I decided to abandon the traditional New Year’s Resolutions in favour of setting goals &lt;a href=&quot;https://rory.codes/2021-review-2022-goals/&quot;&gt;month by month&lt;/a&gt;. I decided on four themes that would serve as threads holding the goals together throughout the year.&lt;/p&gt;
&lt;h2&gt;2022&lt;/h2&gt;
&lt;p&gt;From a simple data perspective it went as follows:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;I set goals 10 out of 12 months&lt;/li&gt;
&lt;li&gt;I set 41 individual goals&lt;/li&gt;
&lt;li&gt;21 goals were successful (52%)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Not great. I’ve been pondering the successes and failures over the past few days and, whilst far from definitive, have concluded that I lost sight of the over-arching themes and descended into making a high level to-do list rather than actionable and important goals.&lt;/p&gt;
&lt;p&gt;That’s not to say it was all a failure. The monthly accountability proved excellent for getting things done that I wouldn&#39;t have otherwise. Things like &lt;span class=&quot;green-background&quot;&gt;Eat at a Michelin star restaurant&lt;/span&gt;, which I ended up doing five times, or &lt;span class=&quot;green-background&quot;&gt;Research and buy new camera&lt;/span&gt;. These are things I’ve wanted to do but quickly forget about or de-prioritised. The monthly review and goal setting was a great way of keeping my ADHD riddled brain on track and getting things done.&lt;/p&gt;
&lt;p&gt;It is apparent that the system fails when things are hard. Any goal that would be of significant effort, especially if fitness related, quickly failed. I tried multiple times to get back into running, to hit Peloton targets and develop a sustained meditation practice. These things that were difficult were easily dismissed and became failed goals.&lt;/p&gt;
&lt;h2&gt;Themes&lt;/h2&gt;
&lt;p&gt;The four themes I hoped to focus on were Physical Fitness, Mental Fitness/Health, Leaning and Career.&lt;/p&gt;
&lt;p&gt;My physical fitness and health are significantly worse now than at the start of the year.&lt;/p&gt;
&lt;p&gt;Mental fitness/health is fairly unchanged; ups and downs, strikes and gutters.&lt;/p&gt;
&lt;p&gt;Learning, similarly, has been up and down. Lots of big moments of progress and then laziness and lack of discipline to push further.&lt;/p&gt;
&lt;p&gt;Career is the standout. I moved to a new company in June and have significantly increased financial freedom, future opportunities and general work satisfaction.&lt;/p&gt;
&lt;h2&gt;2023 and Beyond&lt;/h2&gt;
&lt;p&gt;I had an epiphany recently that I am sure many other people have already had. I am not promising anything new or original.
&lt;img src=&quot;https://rory.codes/assets/images/oathofthehoratii.webp&quot; alt=&quot;Oath of the Horatii by Jacques-Louis David&quot; title=&quot;Oath of the Horatii by Jacques-Louis David&quot; /&gt;
&lt;strong class=&quot;green-background&quot;&gt;Physical fitness and health are everything.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Everything. Every goal, every idea and everything I do and want to achieve is either drastically heightened by excellent health or prevented in part by poor fitness. Everything.&lt;/p&gt;
&lt;p&gt;So that’s it. I will stick to the monthly system to keep myself accountable but there are no themes beyond physical fitness and health. I have faith that everything else will begin to fall into place.&lt;/p&gt;
&lt;p&gt;I wish you every success for the coming 12 months. Happy New Year!&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Start-Up vs Big Tech as a Software Engineer</title>
    <link href="https://rory.codes/startup-v-bigtech/"/>
    <updated>2022-10-23T00:00:00Z</updated>
    <id>https://rory.codes/startup-v-bigtech/</id>
    <content xml:lang="en" type="html">&lt;p&gt;A disclaimer: the following thoughts are certainly not intended as advice nor are they necessarily reflective of other companies of similar size. I have verified with other developers that many of these thoughts are commonly held but regardless everything should be taken as purely subjective.&lt;/p&gt;
&lt;p&gt;My previous role was at a fairly small start-up: a three man engineering team, lots of creative control matched with extreme velocity and pressure to deliver features and get us profitable. It was exciting and our limits were constantly tested. It was my first serious job as a software engineer and I worked long hours to rapidly progress and help the company grow. Eighteen months later I was offered a great opportunity at a large Fintech with over 1000 employees, a higher salary, generous stock options and the ability to collaborate with engineering teams across the globe. I wanted to try out the &#39;real&#39; tech world, the things I had heard so much about. I wanted to be surrounded by structure and other developers with years of experience.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://rory.codes/assets/images/callofforge.webp&quot; alt=&quot;The Forge at the Derosne &amp;amp; Cail Company, Grenelle by Edmond Morin&quot; title=&quot;The Forge at the Derosne &amp;amp; Cail Company, Grenelle by Edmond Morin&quot; /&gt;&lt;/p&gt;
&lt;h3&gt;Compensation&lt;/h3&gt;
&lt;p&gt;This is undeniably going to be the most divisive issue. A big tech company often offers a big tech salary. A start-up will usually offer decent starting salaries to entice early talent though in my experience they are unable to match the larger companies in the long term.&lt;/p&gt;
&lt;p&gt;A start-up can, in some instances, be extremely lucrative. If you are early enough to receive low priced options and the company goes on to IPO, you could be set for life. That is a very big ‘if’. I subscribe firmly to the idea that options and other benefits are icing on the cake. They are fantastic if luck falls in your favour but I like to work on the assumption that the salary is the primary deciding factor in regards to compensation.&lt;/p&gt;
&lt;p&gt;Undoubtedly many will take issue with this and cite examples of people making millions from joining Facebook at an early stage or similar. I would personally prefer to use my consistent salary to invest and have a semblance of control over future wealth generation.&lt;/p&gt;
&lt;h3&gt;Work-Life Balance&lt;/h3&gt;
&lt;p&gt;Start-ups are notorious for poor work-life balance. I liked that. I liked the pressure, I liked knowing that putting in 80+ hours a week could alter the course of the whole company. Would I do it forever? Not a chance, but I’m glad I did it at least once. It was a formative experience, a baptism of fire. I was thrown into the deep end of software engineering and had to learn to swim pretty quickly.&lt;/p&gt;
&lt;p&gt;At my current role I have occasionally reviewed a PR or made some minor code change on a Sunday. Almost every time somebody has reached out on Monday morning to enquire why I was working. I cannot speak for every large tech company, but here we work our core hours; it is highly frowned upon to work anything more. We have hundreds of people working in engineering; if you feel that it is necessary to work beyond the core hours it&#39;s safe to assume something somewhere has gone wrong.&lt;/p&gt;
&lt;p&gt;Unlike at a start-up, putting in a massive shift at a big tech is unlikely to make a significant difference. Perhaps you will deliver faster, impress a manager or get to move on to more exciting tickets but we have moved from a small boat to a cruise ship. Working a few extra hours is like furiously paddling trying to make it move faster. The scale means one person&#39;s extra effort will likely make little discernible difference. Is that a good or bad thing? It puts an end to insane work hours but also puts an end to the exhilaration of knowing you have the power to affect change.&lt;/p&gt;
&lt;h3&gt;Creative Freedom&lt;/h3&gt;
&lt;p&gt;Freedom, whatever that means, is always going to vary from company to company due to a boundless number of factors. A small start-up will oft-allow you to make engineering decisions, to follow paths outside of the norm and implement ideas that may not be immediately obvious. Even as a junior engineer you can have a level of freedom that inspires excitement.&lt;/p&gt;
&lt;p&gt;At a larger, more established company, there are far more likely to be explicit rules and regulations. We use this database, we use this messaging system, we set up microservices like this, we deploy with this pipeline, these are our linting rules. There is a high chance that whatever feature you&#39;re working on will follow a very set pattern of something similarly implemented before. Of course there are still plenty of decisions to be made, but you are handed far less creative control as to what the feature may be, what technology will be used and how you will go about the implementation.&lt;/p&gt;
&lt;p&gt;This sounds like I am firmly on the start-up side; I&#39;m not so sure. Sometimes I want to turn up to work and implement a well defined ticket that has been through product, design and engineering managers and other times I miss turning up on a Monday and having no idea what the week holds, what features have been conjured up over the weekend and what new skill I had better start learning.&lt;/p&gt;
&lt;h3&gt;Meetings&lt;/h3&gt;
&lt;p&gt;Startups are usually in unceasing feature delivery mode. There is finite time and very real deadlines so meetings are usually kept to only the essential. As companies grow, so does their propensity towards meetings. Decisions are made in larger groups, there are discussions between teams, standups are more formalised and structured one-to-ones with managers become mandatory.
Not enough discussion and you might yourself at sea without a paddle. You are implementing at a rapid rate and having to make decisions that have not been discussed thoroughly enough to give you confidence which leads to both undue anxiety and wasted resources. On the other hand, it is disheartening to open your calendar in the morning and see only a couple of free hours of dev time spread thinly between meetings. As Paul Graham alludes to in a &lt;a href=&quot;http://paulgraham.com/makersschedule.html&quot;&gt;fantastic essay&lt;/a&gt;, “a meeting commonly blows at least half a day, by breaking up a morning or afternoon.”&lt;/p&gt;
&lt;h3&gt;Learning&lt;/h3&gt;
&lt;p&gt;You should try to be always &lt;a href=&quot;https://blog.samaltman.com/how-to-be-successful&quot;&gt;learning&lt;/a&gt;. Both environments allow for it in different ways. Start-ups give you no choice but to be learning. It&#39;s constant, it&#39;s intense and if you don&#39;t know something you had better learn it fast. It keeps you on your toes and you can feel the growth.
Big tech is different; the intensity is ramped down but the quality is higher. There is time, there is budget. You aren&#39;t learning to be able to implement something right now. A start-up forces you to learn, perhaps at detriment to the quality of learning, whereas a large tech company gives you the tools and budget to learn properly but with far less encouragement to do so.&lt;/p&gt;
&lt;h3&gt;Career Progress&lt;/h3&gt;
&lt;p&gt;Since joining a company with some level of tech credibility, I have had multiple people reach out on behalf of tech companies and offer to bypass several hurdles in their recruitment process. Working at a well known and established company is seen as a stamp of quality. FAANG takes it one step further and acts like a golden ticket to almost any other company. A startup usually allows people to get in on hustle and merit rather than a series of well defined checkboxes. They allow you to progress quickly and build an impressive resume which may lead to progression faster than in a larger, slower organisation.&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;Ultimately I am just one engineer who has worked at one start-up and one big tech company. There is no right answer as to start-up vs. big tech and there probably is never a ‘perfect’ fit. For me, the jury is still out; I see pros and cons for both sides. Right now I am enjoying the pace, the structure and the team dynamics. Will I soon hunger after the excitement and danger of early start-up development? Only time will tell.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Some Thoughts on Career Choices and Changes</title>
    <link href="https://rory.codes/thoughts-on-career/"/>
    <updated>2022-03-15T00:00:00Z</updated>
    <id>https://rory.codes/thoughts-on-career/</id>
    <content xml:lang="en" type="html">&lt;p&gt;Taking career advice from anybody is a risky and inadvisable endeavour. Especially from professional career advisers. Nobody can tell you what to do and even if they did, you probably wouldn’t listen. That being said, in the past three years I have fast tracked a career change, career progression and long term opportunities at a ferocious pace. Along the way I’ve picked up knowledge and ideas that I would have loved to have known beforehand. None are particularly unique or original, but then what is?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Disclaimer&lt;/strong&gt;: I am coming at this from a tech/software perspective alongside the desire for extreme growth in all areas of career but particularly salary and opportunity. I think most is universally applicable but some will be specific to my chosen field.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;quot;Most people who say they want career planning advice aren’t actually looking for advice—they just want validation of the path they have already chosen.&amp;quot; - Marc Andreessen&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://rory.codes/assets/images/workshopatacarbonatedwaterfactory.webp&quot; alt=&quot;Workshop at a Carbonated Water Factory by Jules Férat&quot; title=&quot;Workshop at a Carbonated Water Factory by Jules Férat&quot; /&gt;&lt;/p&gt;
&lt;h3&gt;Skill&lt;/h3&gt;
&lt;p&gt;There are shortcuts, golden tickets and hacks in almost all areas of life. You can buy a lottery ticket and get rich - but that doesn’t mean it is a recommended path to wealth. The reality of career opportunities is that the absolute most powerful choice you can make is to learn and excel at a highly desirable and employable skill. That doesn’t sound very exciting or sexy; but it’s the truth. In 2019 I had very few skills outside of photography. I wasn’t a good salesman, I wasn’t great at networking, I couldn’t code or write. I enrolled in a software engineering bootcamp and spent 12 hours a day, 5 days a week learning to code. I worked the other two days so I could afford to live - flat out for 9 months. A worthwhile sacrifice.&lt;/p&gt;
&lt;p&gt;Whilst programming isn’t the &lt;em&gt;only&lt;/em&gt; option, I believe the tech field as a whole has the lowest barrier to entry. Ironically the biggest barrier into tech is the illusion that there are barriers. Less than 18 months after I wrote my very first line of code I was employed, 18 months after that I accepted a job that was five times my highest previous salary. I’m not special.&lt;/p&gt;
&lt;h3&gt;Time&lt;/h3&gt;
&lt;p&gt;We are taught from a young age that most things related to education and therefore career happen in strict delineated time blocks: five years in secondary school to get your GCSEs, a standard University/College Degree is three years and it takes a year to get a Masters. The subconscious message is those predefined lengths of time are how long it takes to &lt;strong&gt;learn&lt;/strong&gt; the information required to pass the exams. This is not objectively true.&lt;/p&gt;
&lt;p&gt;My experience is, within reason, you can at least half any estimated imposed timeframe for career or education progress if you decide to take it seriously. You can get a job as a Junior Software Developer in less than a year with dedication and perseverance and yet the average Computer Science degree is traditionally four years. How long does it take to progress from a Junior to Senior? If you go by the average, many estimate it at over five years. But on what basis? Is that what happens if you just plod along as a Junior or work ferociously?&lt;/p&gt;
&lt;p&gt;Parkinson’s Law states that &lt;em&gt;“work expands so as to fill the time available for its completion”&lt;/em&gt;. I believe the same logic can often be applied to career and education progress. In the example above, what is the difference between a Junior and Senior Developer besides years? What are the actual skills the latter possess that the former does not? How quickly can you learn them and demonstrably prove progress to your manager? Less than 5 years, for sure.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://rory.codes/assets/images/paintersonglass.webp&quot; alt=&quot;Painters on Glass by Jules Férat&quot; title=&quot;Painters on Glass by Jules Férat&quot; /&gt;&lt;/p&gt;
&lt;h3&gt;Opportunity&lt;/h3&gt;
&lt;p&gt;I originally titled this section ‘loyalty’ but it didn’t quite sum up what I wanted to say. Jumping from job to job, chasing a small percentage increase in wage or status is no good. You need some level of consistency and solid ground to progress and gain the trust and respect of those you work with. That being said, this is &lt;strong&gt;your&lt;/strong&gt; career. You want to follow &lt;strong&gt;your&lt;/strong&gt; path, go where &lt;strong&gt;you&lt;/strong&gt; want to go. This requires boldness and a keen eye for opportunity.&lt;/p&gt;
&lt;p&gt;Some opportunities appear out of sheer good luck, most are created. You greatly increase the opportunity surface area as you develop new skills, connections and abilities.&lt;/p&gt;
&lt;p&gt;Beside learning a new technical skill, learning how to spot and create opportunities will yield some of the highest returns on investment of your time.&lt;/p&gt;
&lt;h3&gt;Miscellaneous&lt;/h3&gt;
&lt;p&gt;Firstly, work ethic. It has become deeply unpopular to talk about hard work these days. I understand why: hearing a social media influencer telling you that all you need to do is work a little harder is insulting and makes little sense.&lt;/p&gt;
&lt;p&gt;That being said, if the goal is rapid and near exponential improvements to your career and earning ability, there is simply going to need to be an element of hard work. Work smartly first; work out what you need to do, how best to do it and where and when to do it - and then you need to put the hours in. The truth of places like &lt;a href=&quot;https://www.bloomtech.com/&quot;&gt;Bloomtech&lt;/a&gt; (Lambda School when I attended) is that whilst they get you job ready in a quarter of the time a traditional degree would, you are in fact probably working the same hours, if not more. They simply have you coding all day, every day. Be prepared for extreme input to receive extreme output.&lt;/p&gt;
&lt;p&gt;Next, understand what you want. Really, really understand it. Ramit Sethi in his clickbait titled but nonetheless brilliant book &lt;a href=&quot;https://www.amazon.co.uk/Will-Teach-You-Rich-2nd/dp/1529306582&quot;&gt;I Will Teach You To Be Rich&lt;/a&gt; has a fantastic concept of understanding your ‘Rich Life’. You don’t want to be rich, you just want a rich life. What that means will vary greatly from person to person. The same is true for career. Do you want bucket loads of money? That’s fine. But really, do you? At the expense of what else? Before embarking on a dramatic career change or big decision, it is wise to put some time aside to truly understand what it is you want.&lt;/p&gt;
&lt;h3&gt;Recommended Reading List&lt;/h3&gt;
&lt;p&gt;Various things I think are well worth your time regarding career (and perhaps, life):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://fictivekin.github.io/pmarchive-jekyll/guide_to_career_planning_part0.html&quot;&gt;Marc Andreessen&#39;s Guide to Career Planning&lt;/a&gt; - The best advice from one of the all time great tech thinkers.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tim.blog/2016/12/07/testing-the-impossible-17-questions-that-changed-my-life/&quot;&gt;17 Questions That Changed My Life&lt;/a&gt; - There is a PDF of the questions floating around but this podcast episode is equally excellent.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.amazon.co.uk/Will-Teach-You-Rich-2nd/dp/1529306582&quot;&gt;I Will Teach You To Be Rich&lt;/a&gt; - As mentioned above, this is a fantastic book on money, investment and understanding what you want from life.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.amazon.co.uk/Art-Learning-Journey-Optimal-Performance/dp/0743277465&quot;&gt;The Art of Learning by Josh Waitzkin&lt;/a&gt; - A phenomenal book on learning rapidly and effectively.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://blog.samaltman.com/how-to-be-successful&quot;&gt;How To Be Successful by Sam Altman&lt;/a&gt; - Best advice per word contained in a short(ish) blog post.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.utsavahuja.com/9-software-engineering-offers/&quot;&gt;My journey to 9 software engineering offers&lt;/a&gt; - Insightful commentary on making significant career progression.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://amaca.substack.com/p/how-i-got-wealthy-without-working?s=r&quot;&gt;How I got wealthy without working too hard&lt;/a&gt; - Probably the lightest read but nonetheless high quality.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;p&gt;I love talking career, learning and technology. If you have any questions or want to chat, feel free to &lt;a href=&quot;https://rory.codes/about&quot;&gt;contact me&lt;/a&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Too Much Information</title>
    <link href="https://rory.codes/too-much-information/"/>
    <updated>2022-01-30T00:00:00Z</updated>
    <id>https://rory.codes/too-much-information/</id>
    <content xml:lang="en" type="html">&lt;p&gt;My alarm rings at 6am. I snooze it and spend the next ten minutes scrolling through Twitter. I reach a tweet that I remember from late last night so switch to Instagram. I watch a few stories and scroll the algorithmically determined feed. I check three online news sources of varying political leanings and take in what has gone on in the world whilst I&#39;ve slept. I check my personal and work emails. The alarm rings. I go back to Twitter - nothing new. I check the &#39;trending&#39; section and scan through, uninterested. Instagram again - check to see if the &#39;explore&#39; page has anything of interest.&lt;/p&gt;
&lt;p&gt;Out of bed, make a cup of coffee whilst listening to a news related debate on the radio. Sit at my computer for work, check emails, open up Teams and read any messages whilst idly browsing Twitter and Instagram. Start working whilst listening to music.&lt;/p&gt;
&lt;p&gt;At lunch I go for a walk listening to a podcast and then eat at my desk whilst catching up on a blog post, TV or Youtube videos. Back to work; the music only interrupted for the occasional Zoom call.&lt;/p&gt;
&lt;p&gt;I listen to the radio whilst I cook and then eat dinner. I wind down with Netflix or TV. I fall asleep to a podcast or some gentle music.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://rory.codes/assets/images/philosopher-in-meditation-1632.webp&quot; alt=&quot;Philosopher in Meditation by Rembrandt&quot; title=&quot;Philosopher in Meditation by Rembrandt&quot; /&gt;&lt;/p&gt;
&lt;p&gt;That...that&#39;s not good.&lt;/p&gt;
&lt;p&gt;The mind&#39;s natural state is one of stillness - or it should be. Yet like so many others, my mind is never at rest. There is always input. Thousands of people and ideas enter my mind via tweets, podcasts and news articles every single day.&lt;/p&gt;
&lt;p&gt;Go back a few centuries and imagine the routine as described above for a 30 year old man. They wake up and speak to their family, they may read a newspaper on their commute, speak to a few people at work and then finish with conversation with the family in the evening. Each day the number of humans interacted with would be dramatically fewer and the quantity of information input would be even less. Go back even further, perhaps thousands of years, and you see that there was next to no regular input. Just a few family members and locals with whom you might trade or share news. Between these interactions what did the mind do? It had no podcasts, no social media and next to no current affairs other than what was going on in the next village.&lt;/p&gt;
&lt;p&gt;Am I hiding from the world by never letting my mind settle and just be? Is it some sort of dopamine dependency whereby these new sources of information are so addictive that I am unable to operate without them? I don&#39;t know; I am fairly sure that it is not healthy.&lt;/p&gt;
&lt;p&gt;When we talk of physical health it is common to refer to what is &#39;natural&#39;. A Paleo diet tries to imitate what its followers believe is what we &lt;em&gt;should&lt;/em&gt; eat based on the diet of our ancestors. Intermittent fasters believe that the natural state is sustained periods without food and then a large feast in line with the natural way of hunting and foraging and at its root, organic food strives to simply &lt;em&gt;be natural&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;And yet we pay far less attention to what would be seen as historically &#39;natural&#39; when dealing with our &lt;strong&gt;mental&lt;/strong&gt; input. Our information diet is given far less thought. If it is not natural to eat processed foods, is it natural to consume media that in just a few minutes can bombard your senses with the opinions of more people than you would have previously met in a year? Is it natural to know of every injustice, crisis and disaster around the world in real time? Is it natural to walk in nature and hear the voices of strangers talking without them being present?&lt;/p&gt;
&lt;p&gt;I certainly don&#39;t profess to know the answer - these are merely observations about my own information diet and the assumption that many others will be similar.&lt;/p&gt;
&lt;p&gt;What would a well thought out information diet look like and how best can be make the information we consume serve us?&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>2021 Review + 2022 Goals</title>
    <link href="https://rory.codes/2021-review-2022-goals/"/>
    <updated>2022-01-01T00:00:00Z</updated>
    <id>https://rory.codes/2021-review-2022-goals/</id>
    <content xml:lang="en" type="html">&lt;p&gt;&lt;img src=&quot;https://rory.codes/assets/images/aviaryofdeath.webp&quot; alt=&quot;The Aviary of Death by Giovani Paolo Cimerlini&quot; title=&quot;The Aviary of Death by Giovani Paolo Cimerlini&quot; /&gt;&lt;/p&gt;
&lt;p&gt;I am skeptical of New Year&#39;s Resolutions. I am unsure if that is because I have always struggled to meaningfully stick to any goals or because there is an inherent issue with the concept.&lt;/p&gt;
&lt;p&gt;A year is a long time and most resolutions are thought of quickly and haphazardly sometime between Christmas and New Year. The goal setting is rushed and the actual goals themselves lack a reasonably executable timeframe.&lt;/p&gt;
&lt;p&gt;What is the solution? I don’t know, though I do have a plan. Tim Ferriss has an &lt;a href=&quot;https://tim.blog/2021/12/27/past-year-review/&quot;&gt;interesting idea&lt;/a&gt;: he has replaced goal setting for a past year review. Once you have been through a structured analysis of the previous year you are able to work out what to actively seek out and actively avoid for the next year based on the positive and negatives of the previous year.&lt;/p&gt;
&lt;p&gt;Using this as the starting point, I am going to briefly consider the previous year in various capacities and then use that information to aid the goal setting. The goal setting itself is going to be as structured as I can possibly make it; it’s not quite the &lt;a href=&quot;https://en.wikipedia.org/wiki/SMART_criteria&quot;&gt;SMART&lt;/a&gt; formula but I will be breaking down the themes into far more manageable chunks.&lt;/p&gt;
&lt;p&gt;There will be some top level macro goals/themes. These are less specific concepts that I will resolve to improve or aim towards. I will subsequently start with several more specific goals that loosely are aimed to be completed within a month. Some will take days, some months, some will fail. At the end of each month I will review the progress and adjust accordingly. Perhaps the themes will change as &lt;a href=&quot;https://www.youtube.com/watch?v=gbIv7W7rhx4&quot;&gt;new shit comes to light&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;My hope is that this slightly more nuanced approach of review and amendment to the resolution process, along with the analysis of the previous year, will bring more successful and fulfilling results than previous attempts.
&lt;img src=&quot;https://rory.codes/assets/images/fallofphaeton.webp&quot; alt=&quot;The Fall of Phaeton by Peter Paul Rubens&quot; title=&quot;The Fall of Phaeton by Peter Paul Rubens&quot; /&gt;&lt;/p&gt;
&lt;h2&gt;2021&lt;/h2&gt;
&lt;p&gt;What happened? A lot. I went from a junior engineer to a mid level engineer to leading a team. One of my goals for the year was to be relentless with learning, with progressing my career and to stay on the &lt;a href=&quot;https://blog.samaltman.com/how-to-be-successful&quot;&gt;exponential growth curve&lt;/a&gt;. The start of the year was huge in both effort and output. It feels like I hit a cheat code and skipped several years of work with a short extremely high intensity burst of focus.&lt;/p&gt;
&lt;p&gt;It will be no surprise to many that what happened next was entirely predictable: I didn’t stop. From August I kept up the intensity but did not adjust the target. My wheels were spinning in the mud, the engine revving but nothing more was being achieved.&lt;/p&gt;
&lt;p&gt;I excelled at the tasks at hand but I wasn’t striving for anything. I was simply working at an unnecessarily frenetic pace. I slowly began to feel tired; physically and mentally. My diet slipped, exercise became non-existent and the familiar snowballing of mental and physical decline began.&lt;/p&gt;
&lt;p&gt;The last few months have been rough. My fighting weight is about 77kg, which I was throughout the first half of the year - I currently weigh about 89kg. I feel sluggish, tired and lacking energy. I am extremely aware that my mental health follows close behind the physical and there has been a lot of collateral damage along the way: romantic and platonic relationships, work productivity and general lust for life.&lt;/p&gt;
&lt;p&gt;The new year will start with a focus on physical and mental health, a focus on my career and new goals and challenges and a focus on learning and progressing my knowledge in many areas as well as others.&lt;/p&gt;
&lt;h2&gt;2022&lt;/h2&gt;
&lt;p&gt;Following are the overarching themes for 2022. Each month will feature more specific goals, mostly relating to the themes below. At the end of the month I will assess and evaluate the progress as well as set new goals or roll previously incomplete goals into the next month.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong class=&quot;green-background&quot;&gt;Physical Fitness&lt;/strong&gt; - I’ve never been fit. I’ve been a healthy weight, I’ve run 5km in a decent time and other achieved other minor physical goals but I’ve never considered myself fit or even close to it. This year will be my fittest and healthiest yet.&lt;/li&gt;
&lt;li&gt;&lt;strong class=&quot;green-background&quot;&gt;Mental Fitness&lt;/strong&gt; - I have deliberately avoided the term ‘mental health’ although that is undoubtedly part of it. To me, mental fitness is resilience, calmness, ability to adapt alongside general happiness.&lt;/li&gt;
&lt;li&gt;&lt;strong class=&quot;green-background&quot;&gt;Learning&lt;/strong&gt; - Much like the start of last year, I need to stay on the learning curve. This pertains to programming, health, math, science as well as woodworking and other traditional crafts.&lt;/li&gt;
&lt;li&gt;&lt;strong class=&quot;green-background&quot;&gt;Career&lt;/strong&gt; - Where am I going, what do I want to do? I have a good role at my current company but from a software engineering standpoint - what is next and how do I get there?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So there we have it. These are the themes I am keeping it mind as the year slowly trundles forward and far more specific and obviously actionable goals will be generated for each month - the lists of which can be found below.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://rory.codes/2022/january&quot;&gt;January&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://rory.codes/2022/february&quot;&gt;February&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://rory.codes/2022/march&quot;&gt;March&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://rory.codes/2022/april&quot;&gt;April&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://rory.codes/2022/may&quot;&gt;May&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://rory.codes/2022/june&quot;&gt;June&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;s&gt;July&lt;/s&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://rory.codes/2022/august&quot;&gt;August&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://rory.codes/2022/september&quot;&gt;September&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://rory.codes/2022/october&quot;&gt;October&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://rory.codes/2022/november&quot;&gt;November&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;s&gt;December&lt;/s&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I wish you all a fantastic 2022 - let’s make it the best year yet.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>All Books Referenced in Too Loud a Solitude</title>
    <link href="https://rory.codes/too-loud-a-solitude/"/>
    <updated>2021-12-20T00:00:00Z</updated>
    <id>https://rory.codes/too-loud-a-solitude/</id>
    <content xml:lang="en" type="html">&lt;p&gt;&lt;img src=&quot;https://rory.codes/assets/images/nightwatch.webp&quot; alt=&quot;The Night Watch by Rembrandt&quot; title=&quot;The Night Watch by Rembrandt&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Too Loud a Solitude by Bohumil Hrabal is a truly wonderful piece of writing. The simple dust jacket description would go something like &amp;quot;it tells the story of Hanta, an elderly man who works as a paper crusher. He uses the time on his job to read, preserve and pay tribute to classic, rare and banned books of Literature, Philosophy and Art.&amp;quot;&lt;/p&gt;
&lt;p&gt;It is only 112 pages long and I would encourage anybody to spend an afternoon reading it. Very few books have brought me as much joy in so few words.&lt;/p&gt;
&lt;p&gt;One of the most delightful aspects is the regular referencing of various classic books. Some I had heard of and others were new to me. The quality of these works is outstanding and going through just the listed titles, let alone the complete works of the various authors, would be an education far surpassing any offered by a modern university.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://rory.codes/assets/images/ignatiusofloyola.webp&quot; alt=&quot;Ignatius of Loyola by Albert Chevallier-Tayler&quot; title=&quot;Ignatius of Loyola by Albert Chevallier-Tayler&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Listed below are all the named works in order of apperance:&lt;/p&gt;
&lt;h3&gt;Faust by Goethe&lt;/h3&gt;
&lt;p&gt;There are many, many works based on the classic German legend but this reference is most probably the play by Johann Wolfgang von Goethe published in 1808.&lt;/p&gt;
&lt;h3&gt;Don Carlos by Schiller&lt;/h3&gt;
&lt;p&gt;A five act tragedy written in the 1780s based on historical events in 16th Century Spain by Friedrich von Schiller.&lt;/p&gt;
&lt;h3&gt;Hyperion by Hölderlin&lt;/h3&gt;
&lt;p&gt;Similar to Faust the author is not explicitly listed and could be one of many, however other references to Hölderlin would suggest this particular work. Like almost
all the books listed, it has strong philosopical undertones and deals with love, death and beauty.&lt;/p&gt;
&lt;h3&gt;Thus Spoke Zarathustra by Nietzsche -&lt;/h3&gt;
&lt;p&gt;Nietzsche&#39;s most famous work, published in 1883 - it is neither fiction nor non-fiction; an enigmatic look at life and what it means to live.&lt;/p&gt;
&lt;h3&gt;Canonical Book of Virtues by Lao Tzu&lt;/h3&gt;
&lt;p&gt;More commonly known in English languages as Tao Te Ching. An iconic book of Eastern philosophy that aims to teach one how to live with goodness
and integrity.&lt;/p&gt;
&lt;h3&gt;In Praise of Folly by Erasmus&lt;/h3&gt;
&lt;p&gt;A satirical essay by Desiderius Erasmus from 1511 attacking what he saw as the flaws of the Church and European society at large.&lt;/p&gt;
&lt;h3&gt;Ecce Homo by Nietzche&lt;/h3&gt;
&lt;p&gt;The final book by Nietzche that mostly deals with his reflections on his work and life as well as grappling with what a modern philosopher should be.&lt;/p&gt;
&lt;h3&gt;The Metaphysics of Morals by Kant&lt;/h3&gt;
&lt;p&gt;A classic text by Immanuel Kant dealing with both rights and virtues from 1797.&lt;/p&gt;
&lt;h3&gt;Universal Natural History and Theory of the Heavens by Kant&lt;/h3&gt;
&lt;p&gt;A book on astronomy and Kant&#39;s ideas and research on our Solar System and beyond. Much of the content has held up far better than similar works of the same time.&lt;/p&gt;
&lt;h3&gt;The Spirit of St. Louis by Lindbergh&lt;/h3&gt;
&lt;p&gt;An autobiographical account of the first solo trans-Atlantic flight in 1927 by Charles Lindbergh&lt;/p&gt;
&lt;h3&gt;On the Tranquility of the Mind by Seneca&lt;/h3&gt;
&lt;p&gt;Seneca&#39;s ideas on how to cure diseases of the mind such as anxiety, worry and and stress. A classic Stoic text.&lt;/p&gt;
&lt;h3&gt;The Wax Figure by Tynjanov&lt;/h3&gt;
&lt;p&gt;A significantly lesser known work also referred to as &#39;The Wax Persona&#39;. Research is further complicated by the multiple spellings
of the author&#39;s name. The short novella delves into his views and opinions on the evolution of literature and historical context for progress. A strong
knowledge of Russian history is necessary to appreciate the true extent of the impressive tale.&lt;/p&gt;
&lt;h3&gt;Book of Ecclesiasticus&lt;/h3&gt;
&lt;p&gt;Also know as the Book of Sirach or simply Sirach, the Book of Ecclesiasticus consists of ethical Hebrew teachings that resemble proverbs.&lt;/p&gt;
&lt;h3&gt;May by Karel Hynek Mácha&lt;/h3&gt;
&lt;p&gt;A romantic poem that has become one of the most famous Czech literary works with over 250 editions published.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://rory.codes/assets/images/triumphofdeath.webp&quot; alt=&quot;The Triumph of Death by Pieter Bruegel the Elder&quot; title=&quot;The Triumph of Death by Pieter Bruegel the Elder&quot; /&gt;&lt;/p&gt;
&lt;p&gt;To have read, digested and understood the fourteen books above would be a fine, fine education. Additionally there are over 45 over names mentioned; artists, authors, poets, philosophers and politicians. From Aristole to Gaugin, from Sartre to Hieronumus Bosch; Too Long a Solitude is a springboard to rabbit holes of artistic brilliance. A full list of all the people referenced can be found &lt;a href=&quot;https://rory.codes/too-loud-a-solitude-names&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you have read Too Loud a Solitude, feel free to send me an email with your thoughts, theories and feelings.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>10 Books I Probably Should Have Read</title>
    <link href="https://rory.codes/ten-books/"/>
    <updated>2021-04-21T00:00:00Z</updated>
    <id>https://rory.codes/ten-books/</id>
    <content xml:lang="en" type="html">&lt;p&gt;Whether you&#39;re starting a business, launching a product, trying to get rich, getting fit, wanting to self-improve, developing a side hustle or just merely existing, there are some books that are recommended at every turn. Books that &#39;everyone must read&#39;, essential&#39; and &#39;life-changing&#39;.&lt;/p&gt;
&lt;p&gt;They have become so commonplace in recommendations that I have developed a sort of learned blindness; whenever I read such a list or somebody recommends books to me I gloss over and ignore those I am most aware of.&lt;/p&gt;
&lt;p&gt;The question I am interested in: &lt;em&gt;are they actually any good?&lt;/em&gt; I have a suspicion that a lot of the authors of the aforementioned lists may not have fully digested or read the books themselves or even rate them highly. There is a group think that occurs when you are told something is excellent: when you go to list things you think are brilliant you are inclined to mention the items you know to be considered high quality as to validate your other choices.&lt;/p&gt;
&lt;p&gt;Or, perhaps, they really are as good as they are supposed to be. Below are ten books that are consistently recommended that I &lt;em&gt;haven&#39;t&lt;/em&gt; read. These will be my next ten reads come hell or high water. The titles will, in time, become links to a short summary and review and eventually I&#39;ll consider the question again.&lt;/p&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;The 7 Habits of Highly Effective People&lt;/strong&gt; by Stephen R. Covey&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;How to Win Friends and Influence People&lt;/strong&gt; by Dale Carnegie&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Zero to One&lt;/strong&gt; by Peter Thiel&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The 4-Hour Work Week&lt;/strong&gt; by Tim Ferriss&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The 48 Laws of Power&lt;/strong&gt; by Robert Greene&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Shoe Dog&lt;/strong&gt; by Phil Knight&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Awaken the Giant Within&lt;/strong&gt; by Anthony Robbins&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;War of Art&lt;/strong&gt; by Steven Pressfield&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Surely You&#39;re Joking, Mr. Feynman!&lt;/strong&gt; by Richard Feynman&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Black Swan&lt;/strong&gt; by Nassim Nicholas Taleb&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;That&#39;s quite a list. I wonder if I develop 7 Habits and learn 48 Laws in 4 hour weeks I&#39;ll Awaken the Giant? Time will tell.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Find vs Filter in Javascript</title>
    <link href="https://rory.codes/find-vs-filter/"/>
    <updated>2020-03-20T00:00:00Z</updated>
    <id>https://rory.codes/find-vs-filter/</id>
    <content xml:lang="en" type="html">&lt;p&gt;How many built in Array methods can you name? Off the top of my head I came up with: &lt;em&gt;map, filter, reduce, find, pop, push, shift, unshift, forEach, concat and includes.&lt;/em&gt; At time of writing, there are at least &lt;a href=&quot;https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array#Instance_methods&quot;&gt;32&lt;/a&gt;, I named less than a third!&lt;/p&gt;
&lt;p&gt;The beauty of programming is that we are problem solving. We take our tool kit, which may contain less than a third of the tools available, and use what we have at hand to get to a solution. Maybe afterwards we go back and refine things but ultimately we will sacrifice efficiency and elegance in exchange for workability.&lt;/p&gt;
&lt;h2&gt;Filter( )&lt;/h2&gt;
&lt;p&gt;Up until recently I have been using filter( ), a lot. Perhaps you have too. My most common use case would be something like the following:&lt;/p&gt;
&lt;pre class=&quot;language-js&quot;&gt;&lt;code class=&quot;language-js&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;// Some data stored in state most likely from an API.&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;token keyword&quot;&gt;const&lt;/span&gt; myData &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;token literal-property property&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; content&lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;&quot;abc&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;token literal-property property&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; content&lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;&quot;def&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;token literal-property property&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; content&lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;&quot;ghi&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;token comment&quot;&gt;// A particular piece of data is required (eg. A user chooses an item)&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;token keyword&quot;&gt;const&lt;/span&gt; selectedDataID &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;token comment&quot;&gt;// Using the ID of the selected data, we filter the array and grab the item that matches.&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;token keyword&quot;&gt;const&lt;/span&gt; displayData &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; myData&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;token function&quot;&gt;filter&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token parameter&quot;&gt;item&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&gt;&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;&lt;br /&gt;  &lt;span class=&quot;token keyword&quot;&gt;return&lt;/span&gt; item&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;id &lt;span class=&quot;token operator&quot;&gt;===&lt;/span&gt; selectedDataID&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;token comment&quot;&gt;// Result ==&gt; displayData = [{id: 2, content=&quot;def&quot;}]&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In short, we have an array which is filled with data, probably being pulled from an API, that is rendered to the screen or is sitting behind the scenes waiting to be used. A user might click an item to enlarge, to open a new view or to save it to their account, so we pass the ID of the selected item to our filter method that then loops through the data, finds the relevant matching item and eliminates the rest, allowing us to work precisely with the item selected. Perfect. Or so I thought.&lt;/p&gt;
&lt;h3&gt;The Problem&lt;/h3&gt;
&lt;p&gt;Well, problem isn&#39;t fair. Filter is really, really good at filtering. It&#39;s in the name. If we have data stored in an array and pass it a condition, it will check every single item to ensure it doesn&#39;t miss anything, and return all those that meet our criteria. This explains why the result returned is an array:&lt;/p&gt;
&lt;pre class=&quot;language-js&quot;&gt;&lt;code class=&quot;language-js&quot;&gt;&lt;span class=&quot;token keyword&quot;&gt;const&lt;/span&gt; numbers &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;token number&quot;&gt;12&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;43&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;52&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;91&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;42&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;101&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;98&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;11&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;token comment&quot;&gt;// A simple filter to only return even numbers&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;token keyword&quot;&gt;const&lt;/span&gt; evenNumbersOnly &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; numbers&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;token function&quot;&gt;filter&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token parameter&quot;&gt;num&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&gt;&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;&lt;br /&gt;  &lt;span class=&quot;token keyword&quot;&gt;return&lt;/span&gt; num &lt;span class=&quot;token operator&quot;&gt;%&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;===&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;token comment&quot;&gt;// evenNumbersOnly = [ 12, 52, 42, 98 ]&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;It runs something like...the number 12, our first item, is passed into the conditional. Is it even? Yes! So we keep hold of it. Then 43...is that even? Nope. Rejected. Move on. This continues until the very end. Filter checks every single item because there is the potential than every item could match the condition.&lt;/p&gt;
&lt;p&gt;Can you see an issue with the original example?&lt;/p&gt;
&lt;p&gt;If are using unique IDs, our filter method will find a match, and then keep looking. It doesn&#39;t know our value is unique! Imagine our data set is large, perhaps several hundred or even thousand items long. It&#39;s incredibly inefficient to find a piece of data early in the search and then continue to loop through many, many more items knowing our condition has already been met.&lt;/p&gt;
&lt;h2&gt;Find( )&lt;/h2&gt;
&lt;p&gt;Here we have one of those methods you may have heard of, you may have even used after finding a reference on Stack Overflow, but ultimately ignored. It is possible to achieve very similar results with our current tools and so learning yet another method may have seemed pointless.&lt;/p&gt;
&lt;p&gt;Straight from the &lt;a href=&quot;https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find&quot;&gt;documentation&lt;/a&gt;, &amp;quot;The find( ) method returns the value of the first element in the provided array that satisfies the provided testing function.&amp;quot;&lt;/p&gt;
&lt;pre class=&quot;language-js&quot;&gt;&lt;code class=&quot;language-js&quot;&gt;&lt;span class=&quot;token keyword&quot;&gt;const&lt;/span&gt; myData &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;token literal-property property&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; content&lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;&quot;abc&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;token literal-property property&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; content&lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;&quot;def&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;token literal-property property&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; content&lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;&quot;ghi&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;token comment&quot;&gt;// The loop will immediate exit once the condition is satisfied.&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;token keyword&quot;&gt;const&lt;/span&gt; displayData &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; myData&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;token function&quot;&gt;find&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token parameter&quot;&gt;item&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&gt;&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;&lt;br /&gt;  &lt;span class=&quot;token keyword&quot;&gt;return&lt;/span&gt; item&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;id &lt;span class=&quot;token operator&quot;&gt;===&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;token comment&quot;&gt;// displayData = {id: 2, content=&quot;def&quot;}&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;We are returned the exact value, not in an array and without going through any unnecessary iterations through further data. The loop will start at the beginning and methodically work through testing each item in the array against our condition and as soon as an item meets the criteria, it is saved to the variable and the loop exits. No further items in the array are tested.&lt;/p&gt;
&lt;p&gt;Undoubtedly in many cases with limited amounts of data, the speed difference is completely negligible. But as we progress onto larger data sets, more complicated projects and just generally cleaner code, considering things like performance and redundancy become more and more important.&lt;/p&gt;
&lt;p&gt;So, that&#39;s it! Consider using &lt;em&gt;find( )&lt;/em&gt; rather than &lt;em&gt;filter( )&lt;/em&gt; next time you need to locate just a single piece of data inside an array. It avoids repetition and the implementation is almost identical. As an added bonus, we can use &lt;em&gt;findIndex( )&lt;/em&gt; in the exact same way and have the index returned rather than the whole item.&lt;/p&gt;
</content>
  </entry>
</feed>

