<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[GeoFro]]></title><description><![CDATA[Indiehacker building things on the internet and writing about the journey.]]></description><link>https://www.geofro.com</link><generator>GatsbyJS</generator><lastBuildDate>Sat, 09 May 2026 12:33:11 GMT</lastBuildDate><item><title><![CDATA[What has changed?]]></title><description><![CDATA[Looking back at the time between now and my last post, I can say that a few things have changed in my life. In the space of a year, I got…]]></description><link>https://www.geofro.com/what-has-changed/</link><guid isPermaLink="false">https://www.geofro.com/what-has-changed/</guid><pubDate>Sat, 22 Nov 2025 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Looking back at the time between now and my last post, I can say that a few things have changed in my life.&lt;/p&gt;
&lt;p&gt;In the space of a year, I got married and moved from Portugal to Latvia.&lt;/p&gt;
&lt;p&gt;My wife and I are now living in a small, quiet city in the countryside. A welcome change of pace from the busy center of Lisbon.&lt;/p&gt;
&lt;p&gt;These big changes have been amazing and I only regret not making them sooner.
What’s perhaps more noteworthy is that most things haven’t actually changed.&lt;/p&gt;
&lt;p&gt;I’m still working the same job. I’m eating the same food.
I’m running less and lifting more but my fitness level is much the same.
I’m not broke and I’ve not become a millionaire.&lt;/p&gt;
&lt;p&gt;I want to do more and be better.
At 31, I’m feeling my age and keenly aware of the passing of time.&lt;/p&gt;
&lt;p&gt;I want to catch up to where I thought I would be by now.&lt;/p&gt;
&lt;p&gt;I have more thoughts and ideas of what this all means but I’m going to keep this post deliberately short.&lt;/p&gt;
&lt;p&gt;Our digital world is constantly vying for our attention, and I’ve felt my sense of self fading in the face of that. I’m hoping that a more consistent blog posting schedule will help to keep me oriented.&lt;/p&gt;
&lt;p&gt;More posts to come.&lt;/p&gt;
&lt;p&gt;&lt;span
      class=&quot;gatsby-resp-image-wrapper&quot;
      style=&quot;position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 630px; &quot;
    &gt;
      &lt;a
    class=&quot;gatsby-resp-image-link&quot;
    href=&quot;/static/fcfc798af347f7944276e8c43af06cf4/40ba2/crane.jpg&quot;
    style=&quot;display: block&quot;
    target=&quot;_blank&quot;
    rel=&quot;noopener&quot;
  &gt;
    &lt;span
    class=&quot;gatsby-resp-image-background-image&quot;
    style=&quot;padding-bottom: 117.72151898734178%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAYABQDASIAAhEBAxEB/8QAGQABAAIDAAAAAAAAAAAAAAAAAAEDAgQF/8QAFwEBAQEBAAAAAAAAAAAAAAAAAAIBA//aAAwDAQACEAMQAAABkuqeOuc728TFQP/EAB4QAAIBAwUAAAAAAAAAAAAAAAEDAAIhIhESEzFB/9oACAEBAAEFAhNuTBmns2hueQ0ytrtPP//EABcRAAMBAAAAAAAAAAAAAAAAAAECEDL/2gAIAQMBAT8BfcIn/8QAGBEAAgMAAAAAAAAAAAAAAAAAARACETP/2gAIAQIBAT8BhnSBX//EABwQAAMAAQUAAAAAAAAAAAAAAAABESEiMkFRYf/aAAgBAQAGPwInYzPCKU0q1G3Hgj//xAAdEAACAgIDAQAAAAAAAAAAAAABEQAhQYExUWFx/9oACAEBAAE/IboeQMHwhwruBZnkgabgFzMBLBSuKEiYczRU/9oADAMBAAIAAwAAABCD2EL/xAAYEQADAQEAAAAAAAAAAAAAAAABEBEhcf/aAAgBAwEBPxApfEA6v//EABoRAQABBQAAAAAAAAAAAAAAAAEAEBEhMYH/2gAIAQIBAT8Qy6Q1EC1P/8QAHRABAAMBAAIDAAAAAAAAAAAAAQARITFBcWGh0f/aAAgBAQABPxDXrtX0n7Gvgte/mECwR9sWi0qoryR61TlkZdNPuFGflsOzYCX6+i7KMBxx7P/Z&apos;); background-size: cover; display: block;&quot;
  &gt;&lt;/span&gt;
  &lt;img
        class=&quot;gatsby-resp-image-image&quot;
        alt=&quot;Lisbon&quot;
        title=&quot;&quot;
        src=&quot;/static/fcfc798af347f7944276e8c43af06cf4/828fb/crane.jpg&quot;
        srcset=&quot;/static/fcfc798af347f7944276e8c43af06cf4/ff44c/crane.jpg 158w,
/static/fcfc798af347f7944276e8c43af06cf4/a6688/crane.jpg 315w,
/static/fcfc798af347f7944276e8c43af06cf4/828fb/crane.jpg 630w,
/static/fcfc798af347f7944276e8c43af06cf4/0ede0/crane.jpg 945w,
/static/fcfc798af347f7944276e8c43af06cf4/3ac88/crane.jpg 1260w,
/static/fcfc798af347f7944276e8c43af06cf4/40ba2/crane.jpg 3023w&quot;
        sizes=&quot;(max-width: 630px) 100vw, 630px&quot;
        style=&quot;width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;&quot;
        loading=&quot;lazy&quot;
        decoding=&quot;async&quot;
      /&gt;
  &lt;/a&gt;
    &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;One of the many cranes in Lisbon. Taken on a run near the castle.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[Standards]]></title><description><![CDATA[My high school like many others held a yearly athletics carnival. In the lead up to this all the boys were expected to compete in “athletics…]]></description><link>https://www.geofro.com/standards/</link><guid isPermaLink="false">https://www.geofro.com/standards/</guid><pubDate>Tue, 14 May 2024 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;My high school like many others held a yearly athletics carnival.&lt;/p&gt;
&lt;p&gt;In the lead up to this all the boys were expected to compete in “athletics standards”.&lt;/p&gt;
&lt;p&gt;Basically you had to show up after school on set days and complete each of the athletic events. It wasn’t so much of a spectacle as a chore.&lt;/p&gt;
&lt;p&gt;You’d run your race, or do your long jump, and someone would give you a small slip of paper with your result on it. You’d then take this to some of the teachers who’d be set up under the resource center (library) to input your result into the computer.&lt;/p&gt;
&lt;p&gt;Upon inputting the result, the computer would give your “standard” for that event which was a number from 1-10 depending on how well you did. If you were lucky one of the teachers would give you a lolly for your trouble.&lt;/p&gt;
&lt;p&gt;The scoring was pretty clear. 1 for participation, all the way up to 10, which was assumed to be some sort of world class athlete for your age group.&lt;/p&gt;
&lt;p&gt;The higher the standard, the more likely you were to be put into an event at the real carnival.&lt;/p&gt;
&lt;p&gt;The different houses at my school would then compete against each other for athletics standards as well as the athletics carnival itself. The house with the highest average score in standards was always the boarding school as they had no choice but to go to standards every day they were on.&lt;/p&gt;
&lt;p&gt;This meant that they quickly completed all the events they had to and then spent the remaining time improving upon their initial scores.&lt;/p&gt;
&lt;p&gt;I lived quite far away from school and getting home to play video games was always a bit more of a priority for me than doing standards. So I’d go once, make sure I got all the events done once and only once and then not go again.&lt;/p&gt;
&lt;p&gt;I was sporty and considered myself more athletic than average but didn’t really care too much about the results I got. I’d usually get somewhere between a 3 and 6 in most events and that would be that.&lt;/p&gt;
&lt;p&gt;Looking back, I can’t help but think that if I were back in high school today, I would probably put a much larger emphasis on sports than academics and would love the opportunity to compete in standards or athletics.&lt;/p&gt;
&lt;p&gt;I’d like to think that I’d hold myself to a higher standard than I did back then and truly put in my maximum effort.&lt;/p&gt;
&lt;p&gt;But of course I really should be looking at my present self.&lt;/p&gt;
&lt;p&gt;On a scale of 1-10, where would I score my current fitness?
Maybe a 6 when I’m doing well.&lt;/p&gt;
&lt;p&gt;But what if we expand this to other areas of life. Where would I score for my personal finances for example?
Definitely not that high.&lt;/p&gt;
&lt;p&gt;What about language learning?
1 is participation and I don’t know if I’ve really been hitting that. Despite living in Portugal, I’ve put almost no time or energy into learning the language.&lt;/p&gt;
&lt;p&gt;Romantic relationships, time management, friendships, what are your scores for each?&lt;/p&gt;
&lt;p&gt;As adults we don’t get graded so clearly anymore. We must rate our standards ourselves or not at all.&lt;/p&gt;
&lt;p&gt;I think most of us, myself included don’t consider these things because it highlights our short-comings.
We would rather live in ignorant bliss than confronting the reality that perhaps we’re not living up to our ideals.&lt;/p&gt;
&lt;p&gt;The problem with avoidance of course is that we live with the consequences of our own standards whether we’ve considered them or not.&lt;/p&gt;
&lt;p&gt;&lt;span
      class=&quot;gatsby-resp-image-wrapper&quot;
      style=&quot;position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 630px; &quot;
    &gt;
      &lt;a
    class=&quot;gatsby-resp-image-link&quot;
    href=&quot;/static/ed9163077b847015ba8873e4eb39a13d/9568a/cadiz.jpg&quot;
    style=&quot;display: block&quot;
    target=&quot;_blank&quot;
    rel=&quot;noopener&quot;
  &gt;
    &lt;span
    class=&quot;gatsby-resp-image-background-image&quot;
    style=&quot;padding-bottom: 133.54430379746836%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAbABQDASIAAhEBAxEB/8QAGAABAQEBAQAAAAAAAAAAAAAABAAFAgP/xAAWAQEBAQAAAAAAAAAAAAAAAAACAAH/2gAMAwEAAhADEAAAAVLy3WeMaDJ2FSKbMq//xAAcEAEBAAIDAQEAAAAAAAAAAAABAgADERIhEyL/2gAIAQEAAQUC1P6x5WHrV7AaaWbXPr22tYe3Qc14/wD/xAAVEQEBAAAAAAAAAAAAAAAAAAABIP/aAAgBAwEBPwFI/8QAFxEBAAMAAAAAAAAAAAAAAAAAAQAQEf/aAAgBAgEBPwEbyf/EABoQAAIDAQEAAAAAAAAAAAAAAAABECExEiD/2gAIAQEABj8Cio5KwaEzV4//xAAcEAADAQADAQEAAAAAAAAAAAAAAREhMVFxkUH/2gAIAQEAAT8hdF6gys5gzX08C1lBkMmyLhtwegmR/Blz7H6OyDi5Eqkf/9oADAMBAAIAAwAAABDUw83/xAAYEQADAQEAAAAAAAAAAAAAAAAAAREQIf/aAAgBAwEBPxDtjdKf/8QAFxEBAQEBAAAAAAAAAAAAAAAAABEBIf/aAAgBAgEBPxCWOoh//8QAHRABAQACAgMBAAAAAAAAAAAAAREAITFBUWGRof/aAAgBAQABPxCQ1ur2Z+DbhYBUb5wWrVlf0yFQWk6OpidQNF794RW5HjrEW4qKckX7cZcbvg/d40BqMuTGp4T1g0IeK5//2Q==&apos;); background-size: cover; display: block;&quot;
  &gt;&lt;/span&gt;
  &lt;img
        class=&quot;gatsby-resp-image-image&quot;
        alt=&quot;Cadiz&quot;
        title=&quot;&quot;
        src=&quot;/static/ed9163077b847015ba8873e4eb39a13d/828fb/cadiz.jpg&quot;
        srcset=&quot;/static/ed9163077b847015ba8873e4eb39a13d/ff44c/cadiz.jpg 158w,
/static/ed9163077b847015ba8873e4eb39a13d/a6688/cadiz.jpg 315w,
/static/ed9163077b847015ba8873e4eb39a13d/828fb/cadiz.jpg 630w,
/static/ed9163077b847015ba8873e4eb39a13d/0ede0/cadiz.jpg 945w,
/static/ed9163077b847015ba8873e4eb39a13d/3ac88/cadiz.jpg 1260w,
/static/ed9163077b847015ba8873e4eb39a13d/9568a/cadiz.jpg 3024w&quot;
        sizes=&quot;(max-width: 630px) 100vw, 630px&quot;
        style=&quot;width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;&quot;
        loading=&quot;lazy&quot;
        decoding=&quot;async&quot;
      /&gt;
  &lt;/a&gt;
    &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Photo is in Cádiz, Spain where they definitely uphold a very high standard of beauty and livability.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[Alcohol]]></title><description><![CDATA[It’s been over a year since I’ve had any alcohol. In the last 3 years, I’ve had approximately 10 drinks total. This reads like I’ve had some…]]></description><link>https://www.geofro.com/alcohol/</link><guid isPermaLink="false">https://www.geofro.com/alcohol/</guid><pubDate>Sat, 28 Jan 2023 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;It’s been over a year since I’ve had any alcohol.&lt;/p&gt;
&lt;p&gt;In the last 3 years, I’ve had approximately 10 drinks total.&lt;/p&gt;
&lt;p&gt;This reads like I’ve had some huge problem and I’m only now overcoming it, but that’s really not the case.&lt;/p&gt;
&lt;p&gt;Like a lot of university students I used to drink.
Between 2014 and 2017, I spent many weekends at bars and parties, drinking and having a good time.&lt;/p&gt;
&lt;p&gt;I was young, the health risks seemed far away and in the future.&lt;/p&gt;
&lt;p&gt;What’s the point of life if you don’t have some fun?&lt;/p&gt;
&lt;p&gt;As I moved into “the real world”, I could see that for a lot of people, this attitude continued long after graduation.&lt;/p&gt;
&lt;p&gt;After work drinks, Friday night drinks, boozey Christmas parties…&lt;/p&gt;
&lt;p&gt;The British documentary, ”&lt;a href=&quot;https://www.imdb.com/title/tt11945836/&quot;&gt;Drinkers Like Me&lt;/a&gt;”, by Adrian Chiles, was one of the reasons I decided to slow down on the drinking.&lt;/p&gt;
&lt;p&gt;The film follows Adrian’s day to day drinking habits. He shares his thoughts on drinking and his own understanding of how much he thinks he drinks versus the reality of how much he actually drinks.&lt;/p&gt;
&lt;p&gt;The most striking part being Adrian’s realisation that his perception of reality does not match reality at all.&lt;/p&gt;
&lt;p&gt;I’m not really that similar to Adrian, but watching his attitude and perception change over the course of the film had a profound impact on me.&lt;/p&gt;
&lt;p&gt;Living in London at the time, I could see the world that Adrian was a part of. The habitual after work drinks, the “let’s go to the pub” attitude to socialising.&lt;/p&gt;
&lt;p&gt;I was never a huge fan of those activities, but the documentary made me stop and re-evaluate.&lt;/p&gt;
&lt;p&gt;I remember thinking, if I don’t make a conscious choice here, I’ll just be making an unconscious choice.&lt;/p&gt;
&lt;p&gt;I think a lot of our lives are like that. We can actively choose our own direction or we can follow the crowd and the default path.&lt;/p&gt;
&lt;p&gt;Looking around at others, that default path didn’t seem like a good one.&lt;/p&gt;
&lt;p&gt;I try to look after my health. I exercise, I try to sleep well, and I consider what I eat. Not drinking alcohol feels like a logical extension of that.&lt;/p&gt;
&lt;p&gt;I’m sure having the occassional beer or two is probably not that big of a deal and I could probably make my no alcohol rule a little more lenient.&lt;/p&gt;
&lt;p&gt;But I find it’s easier mentally to say no all the time, rather than having to evaluate in the moment.&lt;/p&gt;
&lt;p&gt;I’ve been on some great adventures and met people who have had big impacts on how I view the world. Not all of those things would have happened if I’d been a lifetime teetotaller.&lt;/p&gt;
&lt;p&gt;I don’t know if I’ll keep this rule going forever, but for now it feels like the right choice.&lt;/p&gt;
&lt;p&gt;&lt;span
      class=&quot;gatsby-resp-image-wrapper&quot;
      style=&quot;position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 630px; &quot;
    &gt;
      &lt;a
    class=&quot;gatsby-resp-image-link&quot;
    href=&quot;/static/497def45f3f881f2ea35a5f300c777e2/88ed3/vilnius.jpg&quot;
    style=&quot;display: block&quot;
    target=&quot;_blank&quot;
    rel=&quot;noopener&quot;
  &gt;
    &lt;span
    class=&quot;gatsby-resp-image-background-image&quot;
    style=&quot;padding-bottom: 100%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAFwABAQEBAAAAAAAAAAAAAAAAAAQFA//EABcBAQADAAAAAAAAAAAAAAAAAAIAAQP/2gAMAwEAAhADEAAAAcrppBrmKxcFQxOJX//EABwQAAICAgMAAAAAAAAAAAAAAAECAAMRIRITMv/aAAgBAQABBQKYmJ0qK6UBNnFXQ7r013v/xAAaEQEAAQUAAAAAAAAAAAAAAAAAAQIDESEx/9oACAEDAQE/AadsLfUv/8QAFhEBAQEAAAAAAAAAAAAAAAAAARAC/9oACAECAQE/AUmp/8QAGxAAAQUBAQAAAAAAAAAAAAAAAAECERJxEIH/2gAIAQEABj8C7Fm30VsoRZBcHYeH/8QAHBAAAwACAwEAAAAAAAAAAAAAAAERIbExUXHR/9oACAEBAAE/IUhOxiryF+Bn7eltWJFLZDYHY0NH/9oADAMBAAIAAwAAABDk70H/xAAZEQADAAMAAAAAAAAAAAAAAAAAAREQIWH/2gAIAQMBAT8QdVwjE2z/xAAXEQADAQAAAAAAAAAAAAAAAAAAATEQ/9oACAECAQE/EHLIFD//xAAdEAEAAgICAwAAAAAAAAAAAAABABEhMUFRYXHR/9oACAEBAAE/EH6hFg13UpY3fUata+oJf4BtIaVBSJGIACSzWo9KCUPJiK8cdPpP/9k=&apos;); background-size: cover; display: block;&quot;
  &gt;&lt;/span&gt;
  &lt;img
        class=&quot;gatsby-resp-image-image&quot;
        alt=&quot;Vilnius&quot;
        title=&quot;&quot;
        src=&quot;/static/497def45f3f881f2ea35a5f300c777e2/828fb/vilnius.jpg&quot;
        srcset=&quot;/static/497def45f3f881f2ea35a5f300c777e2/ff44c/vilnius.jpg 158w,
/static/497def45f3f881f2ea35a5f300c777e2/a6688/vilnius.jpg 315w,
/static/497def45f3f881f2ea35a5f300c777e2/828fb/vilnius.jpg 630w,
/static/497def45f3f881f2ea35a5f300c777e2/0ede0/vilnius.jpg 945w,
/static/497def45f3f881f2ea35a5f300c777e2/3ac88/vilnius.jpg 1260w,
/static/497def45f3f881f2ea35a5f300c777e2/88ed3/vilnius.jpg 2435w&quot;
        sizes=&quot;(max-width: 630px) 100vw, 630px&quot;
        style=&quot;width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;&quot;
        loading=&quot;lazy&quot;
        decoding=&quot;async&quot;
      /&gt;
  &lt;/a&gt;
    &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Happy New Year. Photo is from New Year’s 2017 in Vilnius, Lithuania.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[Website]]></title><description><![CDATA[Around 5 years ago, I started a business with a friend of mine. We would call up carpenters, landscapers, and other tradesmen and see if…]]></description><link>https://www.geofro.com/website/</link><guid isPermaLink="false">https://www.geofro.com/website/</guid><pubDate>Tue, 27 Dec 2022 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Around 5 years ago, I started a business with a friend of mine.&lt;/p&gt;
&lt;p&gt;We would call up carpenters, landscapers, and other tradesmen and see if they’d like us to build them a website.&lt;/p&gt;
&lt;p&gt;Perhaps unsurprisingly, our cold calling sales approach didn’t yield many customers.
The calls were unexpected and we didn’t really have any sales pitch other than -&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;“If you want a website, we’ll build it”.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;To which the response was usually,&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;“Ugh.. I’m not interested mate.”&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;However, I did make one website sale to a friend in a ‘right place, right time’ type way.&lt;/p&gt;
&lt;p&gt;I was a very inexperienced developer at the time and had been trying to learn as much as I could through tutorials. I’d made some small demo apps, but I was keen to make something real.&lt;/p&gt;
&lt;p&gt;We agreed to make a website for my friend’s business and got stuck into the code.&lt;/p&gt;
&lt;p&gt;And of course, we over-engineered the site a bunch.&lt;/p&gt;
&lt;div class=&quot;gatsby-highlight&quot; data-language=&quot;text&quot;&gt;&lt;pre class=&quot;language-text&quot;&gt;&lt;code class=&quot;language-text&quot;&gt;- Ruby on rails back-end
- Devise authentication with admin dashboard
- Ability to upload images to AWS
- Contact form connected to mailing service
- Postgres database
- Hosted on Heroku&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;If that doesn’t mean anything to you, just know that it was a bit complex.&lt;/p&gt;
&lt;p&gt;My friend and I wrote the code over the space of 3 or so weeks, and it was ready to ship.&lt;/p&gt;
&lt;p&gt;Job done.&lt;/p&gt;
&lt;p&gt;The site kept ticking along without issue, until this year, when the “contact us” form we made started getting spammed by bots.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Online casino. Win big, free bets!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I could’ve snuck into the old code, added a little reCAPTCHA check to the form and got out.
But the code for the site was a mess.&lt;/p&gt;
&lt;p&gt;The more I looked at it, the more I realised we’d probably gone a bit overboard 5 years ago.&lt;/p&gt;
&lt;p&gt;I wanted to just delete all of the old code and start again.&lt;/p&gt;
&lt;p&gt;Usually this is a bad idea. Software companies that do big re-writes of their code usually go over budget and over time.&lt;/p&gt;
&lt;p&gt;My fun re-write could easily become a multi week nightmare.&lt;/p&gt;
&lt;p&gt;Instead of just accepting that and diving in like I normally would do, I thought about how I could simplify it.
How could I do less work and get a better or similar result?&lt;/p&gt;
&lt;p&gt;The owner of the site never actually used the admin dashboard we made for him.
He didn’t need to add new photos.&lt;/p&gt;
&lt;p&gt;That could all be removed entirely.&lt;/p&gt;
&lt;p&gt;The contact us page could be linked to &lt;a href=&quot;https://getform.io/&quot;&gt;getform.io&lt;/a&gt; instead of my own custom mailing service.
That would also remove the need for a database as well.&lt;/p&gt;
&lt;p&gt;The ancient ruby code could then be replaced with more easily understood GatsbyJS.&lt;/p&gt;
&lt;p&gt;In the end, I took our beast of a application and made it a small static site.&lt;/p&gt;
&lt;div class=&quot;gatsby-highlight&quot; data-language=&quot;text&quot;&gt;&lt;pre class=&quot;language-text&quot;&gt;&lt;code class=&quot;language-text&quot;&gt;- Static Gatsby site
- Contact form (getform.io)
- Hosted on Gatsby cloud&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;All in all, it took a couple of nights to complete, but it got done in a fraction of the time of the original and now costs $0 to run.&lt;/p&gt;
&lt;p&gt;And to top it off, the SEO and page speed scores went up dramatically with all the Gatsby magic working in the background.&lt;/p&gt;
&lt;p&gt;It’s got me thinking about what else in my life is overly complex and needs a re-write. Maybe I’ll write a post on that soon.&lt;/p&gt;
&lt;p&gt;&lt;span
      class=&quot;gatsby-resp-image-wrapper&quot;
      style=&quot;position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 630px; &quot;
    &gt;
      &lt;a
    class=&quot;gatsby-resp-image-link&quot;
    href=&quot;/static/4f36541fb1a8c98e237b8ef6fb3b61e4/87915/ogre.jpg&quot;
    style=&quot;display: block&quot;
    target=&quot;_blank&quot;
    rel=&quot;noopener&quot;
  &gt;
    &lt;span
    class=&quot;gatsby-resp-image-background-image&quot;
    style=&quot;padding-bottom: 100%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGAABAQEBAQAAAAAAAAAAAAAAAAQFAQL/xAAWAQEBAQAAAAAAAAAAAAAAAAAAAQL/2gAMAwEAAhADEAAAAYrItKIXGXus0yBJ/8QAGhAAAgMBAQAAAAAAAAAAAAAAAQIAAxESMv/aAAgBAQABBQI6VzmmI3L2eZUoJuPK6TP/xAAUEQEAAAAAAAAAAAAAAAAAAAAg/9oACAEDAQE/AR//xAAVEQEBAAAAAAAAAAAAAAAAAAABIP/aAAgBAgEBPwEj/8QAGhAAAgIDAAAAAAAAAAAAAAAAAAEQQRExYf/aAAgBAQAGPwIyrhHITdsZs//EABwQAAMBAAIDAAAAAAAAAAAAAAABESFBUTFxgf/aAAgBAQABPyHwXColhaipX6LFd6K7UF6a+mxj0LJFDdLeD//aAAwDAQACAAMAAAAQEN+B/8QAFhEAAwAAAAAAAAAAAAAAAAAAABAR/9oACAEDAQE/ECv/xAAYEQACAwAAAAAAAAAAAAAAAAAAMQEQEf/aAAgBAgEBPxBDSFX/xAAcEAEAAwEBAAMAAAAAAAAAAAABABEhMUFRYYH/2gAIAQEAAT8QsEl6jFjxI8337i3MeXHRYUHyM2Q4GshWygZ6gjZQedYo0/ZZyHiP/9k=&apos;); background-size: cover; display: block;&quot;
  &gt;&lt;/span&gt;
  &lt;img
        class=&quot;gatsby-resp-image-image&quot;
        alt=&quot;Ogres Zilie kalni&quot;
        title=&quot;&quot;
        src=&quot;/static/4f36541fb1a8c98e237b8ef6fb3b61e4/828fb/ogre.jpg&quot;
        srcset=&quot;/static/4f36541fb1a8c98e237b8ef6fb3b61e4/ff44c/ogre.jpg 158w,
/static/4f36541fb1a8c98e237b8ef6fb3b61e4/a6688/ogre.jpg 315w,
/static/4f36541fb1a8c98e237b8ef6fb3b61e4/828fb/ogre.jpg 630w,
/static/4f36541fb1a8c98e237b8ef6fb3b61e4/0ede0/ogre.jpg 945w,
/static/4f36541fb1a8c98e237b8ef6fb3b61e4/3ac88/ogre.jpg 1260w,
/static/4f36541fb1a8c98e237b8ef6fb3b61e4/87915/ogre.jpg 3450w&quot;
        sizes=&quot;(max-width: 630px) 100vw, 630px&quot;
        style=&quot;width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;&quot;
        loading=&quot;lazy&quot;
        decoding=&quot;async&quot;
      /&gt;
  &lt;/a&gt;
    &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Merry Christmas! Photo is from the top of the observation tower in Ogres Zilie kalni, Latvia.&lt;/p&gt;
&lt;p&gt;I haven’t been as good about writing new posts as I would’ve liked this last month but I’m starting to get back into it now.&lt;/p&gt;
&lt;p&gt;PS: If you do want some landscaping work done in Canberra, &lt;a href=&quot;https://www.dananddanlandscaping.com.au&quot;&gt;check out the site&lt;/a&gt;.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[Dzejnieks]]></title><description><![CDATA[Dzejnieks means ‘poet’ in Latvian. My girlfriend is from Riga so I’ve been trying to learn some Latvian on and off for some time now. We…]]></description><link>https://www.geofro.com/dzejnieks/</link><guid isPermaLink="false">https://www.geofro.com/dzejnieks/</guid><pubDate>Sun, 20 Nov 2022 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Dzejnieks means ‘poet’ in Latvian.&lt;/p&gt;
&lt;p&gt;My girlfriend is from Riga so I’ve been trying to learn some Latvian on and off for some time now.&lt;/p&gt;
&lt;p&gt;We spent part of the Summer this year exploring Latgale, the Eastern region of Latvia that borders Russia and Belarus.&lt;/p&gt;
&lt;p&gt;One of the towns we visited is called Aglona and is home to a Roman Catholic basilica, the &lt;a href=&quot;https://en.wikipedia.org/wiki/Basilica_of_the_Assumption,_Aglona&quot;&gt;Basilica of the Assumption&lt;/a&gt;. It has a huge outside area where hundreds of people would gather in August for the annual pilgrimage.&lt;/p&gt;
&lt;p&gt;When we went it was empty.&lt;br&gt;
I wrote a poem while we were there.&lt;/p&gt;
&lt;h4&gt;Aglona Dzejolis&lt;/h4&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Liela baznīca&lt;/em&gt;&lt;br&gt;
&lt;em&gt;Liela zāle&lt;/em&gt;&lt;br&gt;
&lt;em&gt;Daudz darbs&lt;/em&gt;&lt;br&gt;
&lt;em&gt;Ļoti aizņemts priesteris&lt;/em&gt;&lt;br&gt;
&lt;em&gt;Traktors?&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I like the idea of writing in other languages more but I’ve not given it much thought and my language level is probably a little too low to write anything serious.&lt;/p&gt;
&lt;p&gt;&lt;span
      class=&quot;gatsby-resp-image-wrapper&quot;
      style=&quot;position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 630px; &quot;
    &gt;
      &lt;a
    class=&quot;gatsby-resp-image-link&quot;
    href=&quot;/static/bdc1b24c2ef61e879f1ab741a59ef191/c83bb/aglona.jpg&quot;
    style=&quot;display: block&quot;
    target=&quot;_blank&quot;
    rel=&quot;noopener&quot;
  &gt;
    &lt;span
    class=&quot;gatsby-resp-image-background-image&quot;
    style=&quot;padding-bottom: 75.31645569620254%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAPABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEBf/EABUBAQEAAAAAAAAAAAAAAAAAAAEC/9oADAMBAAIQAxAAAAGpch2LzGE//8QAGhAAAwEAAwAAAAAAAAAAAAAAAAECEQMSE//aAAgBAQABBQLzWOJMgXPRWs70f//EABYRAAMAAAAAAAAAAAAAAAAAAAABEv/aAAgBAwEBPwGEQj//xAAWEQADAAAAAAAAAAAAAAAAAAAAARP/2gAIAQIBAT8BqyjP/8QAGhAAAgIDAAAAAAAAAAAAAAAAAAEhMgIRMf/aAAgBAQAGPwIsiyJk3izrP//EABwQAAICAgMAAAAAAAAAAAAAAAABESFBYZHR4f/aAAgBAQABPyFWJhbElfIP0xaqh1zoeCLsP//aAAwDAQACAAMAAAAQw8//xAAWEQADAAAAAAAAAAAAAAAAAAAQETH/2gAIAQMBAT8QdAf/xAAWEQEBAQAAAAAAAAAAAAAAAAABERD/2gAIAQIBAT8QmxM//8QAGxABAQEAAgMAAAAAAAAAAAAAAREAcaEhMWH/2gAIAQEAAT8QUHUwfG8XWwT6cJnRzNOlMRaC0zek057/2Q==&apos;); background-size: cover; display: block;&quot;
  &gt;&lt;/span&gt;
  &lt;img
        class=&quot;gatsby-resp-image-image&quot;
        alt=&quot;Aglona&quot;
        title=&quot;&quot;
        src=&quot;/static/bdc1b24c2ef61e879f1ab741a59ef191/828fb/aglona.jpg&quot;
        srcset=&quot;/static/bdc1b24c2ef61e879f1ab741a59ef191/ff44c/aglona.jpg 158w,
/static/bdc1b24c2ef61e879f1ab741a59ef191/a6688/aglona.jpg 315w,
/static/bdc1b24c2ef61e879f1ab741a59ef191/828fb/aglona.jpg 630w,
/static/bdc1b24c2ef61e879f1ab741a59ef191/0ede0/aglona.jpg 945w,
/static/bdc1b24c2ef61e879f1ab741a59ef191/3ac88/aglona.jpg 1260w,
/static/bdc1b24c2ef61e879f1ab741a59ef191/c83bb/aglona.jpg 4608w&quot;
        sizes=&quot;(max-width: 630px) 100vw, 630px&quot;
        style=&quot;width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;&quot;
        loading=&quot;lazy&quot;
        decoding=&quot;async&quot;
      /&gt;
  &lt;/a&gt;
    &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Photo is the basilica and all the grass.&lt;/p&gt;
&lt;p&gt;zāle = grass&lt;br&gt;
Google Translate will say ‘hall’.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[Not winning the lottery]]></title><description><![CDATA[Rewind to April 2022. I’d recently moved out of my place in London. I was waiting for my visa to process to move to Portugal. I still had my…]]></description><link>https://www.geofro.com/not-winning-the-lottery/</link><guid isPermaLink="false">https://www.geofro.com/not-winning-the-lottery/</guid><pubDate>Thu, 17 Nov 2022 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Rewind to April 2022.&lt;/p&gt;
&lt;p&gt;I’d recently moved out of my place in London. I was waiting for my visa to process to move to Portugal. I still had my British job and British visa and decided to spend a few months in Bournemouth with my friend Jeremy.&lt;/p&gt;
&lt;p&gt;We’d decided the day before to road-trip to the little town of Lynton.
We’d been to the town, had seen the hills and the coast, and were now heading back to Bournemouth.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;“What would you do if you won the lottery?”&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Jeremy’s poppy Spotify playlist blared on the speaker as we sped down the highway in my little VW polo.
His answer was quick and sure.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;“I’d quit my job and keep doing the podcast full-time.”&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Jeremy has been working on &lt;a href=&quot;https://bitcoincashpodcast.com/&quot;&gt;his podcast&lt;/a&gt; non-stop for the last year or more. He lives and breathes his podcast, so doing that but with more money and fewer constraints made perfect sense.&lt;/p&gt;
&lt;p&gt;Winning the lottery wouldn’t change the direction of his life in a “turn the boat around” type of way. It would be hitting the accelerator on the path he was already on.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;“Why, what would you do?”&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I had my answer ready.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;“I’d try and become a pro tennis player with my brother.”&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;This had been on my mind for ages and made a lot of sense to me in a world where money was no limit on what I could do.
I’d always been sure of this answer since I’d been in high school or university.&lt;/p&gt;
&lt;p&gt;I grew up playing tennis with my brother. My parents had taken us to private lessons, we’d played at the local courts for years and even went to a few regional competitions.&lt;/p&gt;
&lt;p&gt;That being said, I hadn’t picked up a racket in years.
I’d played once or twice with my brother when I’d gone home to Australia to visit. Then not again until I was back in Australia the next time.&lt;/p&gt;
&lt;p&gt;I &lt;em&gt;played&lt;/em&gt; tennis, but I didn’t &lt;em&gt;play&lt;/em&gt; tennis.&lt;/p&gt;
&lt;p&gt;I’d been sure about my answer but hadn’t given it much thought beyond the hypothetical - “If I were a millionaire…”&lt;/p&gt;
&lt;p&gt;We kept driving and chatting on the road back to Bournemouth.&lt;/p&gt;
&lt;p&gt;And the question kept nagging. Why am I waiting to win the lottery? I don’t have any lottery tickets, literal or figurative.&lt;/p&gt;
&lt;p&gt;Becoming a millionaire 20-something-year-old tennis player isn’t a reality I’m going to magically fall into.&lt;/p&gt;
&lt;p&gt;I should just play some tennis.&lt;/p&gt;
&lt;p&gt;Later that week, I got on Gumtree.com, bought an old racket and some balls, and headed to Bournemouth Gardens Tennis Centre.&lt;/p&gt;
&lt;p&gt;&lt;span
      class=&quot;gatsby-resp-image-wrapper&quot;
      style=&quot;position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 630px; &quot;
    &gt;
      &lt;a
    class=&quot;gatsby-resp-image-link&quot;
    href=&quot;/static/5110add97c6acf9eb3c53882d8f5245e/2fb56/passing-place.jpg&quot;
    style=&quot;display: block&quot;
    target=&quot;_blank&quot;
    rel=&quot;noopener&quot;
  &gt;
    &lt;span
    class=&quot;gatsby-resp-image-background-image&quot;
    style=&quot;padding-bottom: 100%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGAABAAMBAAAAAAAAAAAAAAAAAAECAwT/xAAYAQACAwAAAAAAAAAAAAAAAAADBAABAv/aAAwDAQACEAMQAAABwttZtWWoe+egmeBc/8QAGhAAAgMBAQAAAAAAAAAAAAAAAAECERIQIf/aAAgBAQABBQLkZySyKrc8j9GUf//EABcRAQADAAAAAAAAAAAAAAAAAAEAEBH/2gAIAQMBAT8BBZjf/8QAGBEAAgMAAAAAAAAAAAAAAAAAAQIAEBL/2gAIAQIBAT8BLATS3//EABoQAAICAwAAAAAAAAAAAAAAAAERAhAAICH/2gAIAQEABj8CpCu4oSK0/8QAGxAAAwADAQEAAAAAAAAAAAAAAAERITFBYXH/2gAIAQEAAT8hgkS7j4YbFlz0S3gYO9hoqZdZ/9oADAMBAAIAAwAAABDY70H/xAAZEQEAAgMAAAAAAAAAAAAAAAABACEQETH/2gAIAQMBAT8Q4JNNXACjH//EABkRAAMBAQEAAAAAAAAAAAAAAAABESExkf/aAAgBAgEBPxDvstuelbdYz//EAB0QAQADAAIDAQAAAAAAAAAAAAEAESExUWFxsdH/2gAIAQEAAT8QHFgqgOlzMLweYVrNzHU7MSxr5ELT+RKmpXPuNIo5WNT/2Q==&apos;); background-size: cover; display: block;&quot;
  &gt;&lt;/span&gt;
  &lt;img
        class=&quot;gatsby-resp-image-image&quot;
        alt=&quot;Passing place in Scottish highlands&quot;
        title=&quot;&quot;
        src=&quot;/static/5110add97c6acf9eb3c53882d8f5245e/828fb/passing-place.jpg&quot;
        srcset=&quot;/static/5110add97c6acf9eb3c53882d8f5245e/ff44c/passing-place.jpg 158w,
/static/5110add97c6acf9eb3c53882d8f5245e/a6688/passing-place.jpg 315w,
/static/5110add97c6acf9eb3c53882d8f5245e/828fb/passing-place.jpg 630w,
/static/5110add97c6acf9eb3c53882d8f5245e/0ede0/passing-place.jpg 945w,
/static/5110add97c6acf9eb3c53882d8f5245e/3ac88/passing-place.jpg 1260w,
/static/5110add97c6acf9eb3c53882d8f5245e/2fb56/passing-place.jpg 3452w&quot;
        sizes=&quot;(max-width: 630px) 100vw, 630px&quot;
        style=&quot;width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;&quot;
        loading=&quot;lazy&quot;
        decoding=&quot;async&quot;
      /&gt;
  &lt;/a&gt;
    &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Photo is from the Scottish Highlands. I thought the sign “Passing place” was pretty cool and unique but quickly realised they’re everywhere. I got bitten by a tick a few minutes after taking this photo and caught Lyme disease. Fun fun!&lt;/p&gt;</content:encoded></item><item><title><![CDATA[Goals for Nov 2022]]></title><description><![CDATA[I realised today that I don’t have any goals. I’m working on various projects but I don’t have any concrete criteria for success and no…]]></description><link>https://www.geofro.com/goals-for-nov-2022/</link><guid isPermaLink="false">https://www.geofro.com/goals-for-nov-2022/</guid><pubDate>Mon, 14 Nov 2022 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;I realised today that I don’t have any goals. I’m working on various projects but I don’t have any concrete criteria for success and no timelines. Everything is vague and exists only in my head.&lt;/p&gt;
&lt;p&gt;There is no way for me to succeed and no way for me to fail. That’s not good.&lt;/p&gt;
&lt;p&gt;So I’ve decided to write down some goals that I want to complete by 1st Dec 2022.
I did this quickly in about 10mins because I didn’t want to spend too much time on it.&lt;/p&gt;
&lt;p&gt;I’ve tidied up the spelling and captitalized some words but it’s more or less how I originally wrote it for myself. The main dot point is the goal, the secondary dot point beneath is current progress.&lt;/p&gt;
&lt;hr&gt;
&lt;h3&gt;Fitness&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Run once every 2 days
&lt;ul&gt;
&lt;li&gt;On track for the moment&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Lift once every 2 days
&lt;ul&gt;
&lt;li&gt;Not on track (no gym sessions yet)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Productivity app&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Launch my productivity app on digital ocean + custom domain
&lt;ul&gt;
&lt;li&gt;Not yet launched&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Include a pricing page with a “paid - coming soon” section
&lt;ul&gt;
&lt;li&gt;Not built&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Use the app myself
&lt;ul&gt;
&lt;li&gt;Again, not built yet&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Blog&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Write 10 posts this month
&lt;ul&gt;
&lt;li&gt;6/10 (including this one)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Portuguese&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Have at least 3 private lessons
&lt;ul&gt;
&lt;li&gt;First lesson with tutor booked for the 15th Nov&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Do memrise at least once every 2 days
&lt;ul&gt;
&lt;li&gt;On track for the moment&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Book&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Write a book
&lt;ul&gt;
&lt;li&gt;Have started, 3 chapters in draft&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Get a guy from fiverr to do formatting + cover picture
&lt;ul&gt;
&lt;li&gt;Not done&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Publish it on Amazon
&lt;ul&gt;
&lt;li&gt;Not done&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Edit (Mar 2023)&lt;/h2&gt;
&lt;p&gt;So as a follow up to these goals, I did keep running and I did go to the gym more often. I didn’t do it everyday but I made decent progress on this point so I’m happy there.&lt;/p&gt;
&lt;p&gt;The productivity app is dead in the water in the sense that I haven’t really done much on it.
I could try and dive into that and diagnose what exactly happened but basically I just didn’t do it.&lt;/p&gt;
&lt;p&gt;I didn’t write the 10 blog posts that I specified within the timeframe but I have 10 posts now.&lt;/p&gt;
&lt;p&gt;For Portuguese I did do all of my private lessons. I really enjoyed them and have continued to have lessons with my tutor Manuel. However I didn’t do much more memrise and I’m coming to a point where I really need to do more self study to make more progress in my language ability.&lt;/p&gt;
&lt;p&gt;The book is also dead. It’s basically where it was when I wrote this post with the addition of a few hundred words. I think I realised I wasn’t excited about the book and if I wasn’t excited then I thought perhaps no one else would be.&lt;/p&gt;
&lt;p&gt;Well there you go, a bit of a depressing update but I’m feeling optimistic about the next thing.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;span
      class=&quot;gatsby-resp-image-wrapper&quot;
      style=&quot;position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 630px; &quot;
    &gt;
      &lt;a
    class=&quot;gatsby-resp-image-link&quot;
    href=&quot;/static/47c069828111922d9a48a4e4411b9c68/41438/besseggen.jpg&quot;
    style=&quot;display: block&quot;
    target=&quot;_blank&quot;
    rel=&quot;noopener&quot;
  &gt;
    &lt;span
    class=&quot;gatsby-resp-image-background-image&quot;
    style=&quot;padding-bottom: 100%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGAABAAMBAAAAAAAAAAAAAAAAAAEDBQL/xAAWAQEBAQAAAAAAAAAAAAAAAAACAQP/2gAMAwEAAhADEAAAAVlFOg2mCC7gCCz/xAAcEAABBAMBAAAAAAAAAAAAAAACAAEQIQMREiL/2gAIAQEAAQUC4TY3QeRtORRu4//EABURAQEAAAAAAAAAAAAAAAAAABIg/9oACAEDAQE/ARH/xAAZEQABBQAAAAAAAAAAAAAAAAAAARAREyH/2gAIAQIBAT8BskwRv//EABsQAAEEAwAAAAAAAAAAAAAAAAABEBEyMUFh/9oACAEBAAY/AsNCliymxeEt/8QAGxAAAgMAAwAAAAAAAAAAAAAAAAERIUExYbH/2gAIAQEAAT8hT6GhoIKJ5+yZn1o3dJxtbcBWnqJEqP/aAAwDAQACAAMAAAAQQC+D/8QAGBEAAgMAAAAAAAAAAAAAAAAAAAEQESH/2gAIAQMBAT8QVDRx/8QAGBEBAAMBAAAAAAAAAAAAAAAAAQAQESH/2gAIAQIBAT8QZKu7b//EAB0QAQACAgMBAQAAAAAAAAAAAAEAESExQWFxkVH/2gAIAQEAAT8Q5pXmZrNd4qZNXxqNAsDlZFVAG7KfUJsJ+rLHTIBMSjgdLm4CFv7P/9k=&apos;); background-size: cover; display: block;&quot;
  &gt;&lt;/span&gt;
  &lt;img
        class=&quot;gatsby-resp-image-image&quot;
        alt=&quot;View from Besseggen&quot;
        title=&quot;&quot;
        src=&quot;/static/47c069828111922d9a48a4e4411b9c68/828fb/besseggen.jpg&quot;
        srcset=&quot;/static/47c069828111922d9a48a4e4411b9c68/ff44c/besseggen.jpg 158w,
/static/47c069828111922d9a48a4e4411b9c68/a6688/besseggen.jpg 315w,
/static/47c069828111922d9a48a4e4411b9c68/828fb/besseggen.jpg 630w,
/static/47c069828111922d9a48a4e4411b9c68/0ede0/besseggen.jpg 945w,
/static/47c069828111922d9a48a4e4411b9c68/3ac88/besseggen.jpg 1260w,
/static/47c069828111922d9a48a4e4411b9c68/41438/besseggen.jpg 1928w&quot;
        sizes=&quot;(max-width: 630px) 100vw, 630px&quot;
        style=&quot;width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;&quot;
        loading=&quot;lazy&quot;
        decoding=&quot;async&quot;
      /&gt;
  &lt;/a&gt;
    &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Photo is the view from Besseggen Ridge, Norway. I tried to run to the top but didn’t have time for the whole thing. If you enhance the image like they do on CSI, you can see my car parked down next to the water.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[Back into running]]></title><description><![CDATA[It’s been about a month since I last went running. I’ve been sick, and I thought it best not to push myself too much. I’m not the best…]]></description><link>https://www.geofro.com/back-into-running/</link><guid isPermaLink="false">https://www.geofro.com/back-into-running/</guid><pubDate>Sun, 13 Nov 2022 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;It’s been about a month since I last went running. I’ve been sick, and I thought it best not to push myself too much.&lt;/p&gt;
&lt;p&gt;I’m not the best runner but I’m also not terrible. As a kid I would consistently come 2nd in cross country running events, my best friend Sam would come first.&lt;/p&gt;
&lt;p&gt;I think it’s funny that adults expect all kids to run and compete in sporting events but don’t apply the same standards to themselves. The requirements for running are about as basic as you can get, running shoes and some clothes you don’t mind getting sweaty.&lt;/p&gt;
&lt;p&gt;It’s obviously not the complexity of the task that stops people from doing it.&lt;br&gt;
It’s the forcing yourself to go run part of it.&lt;/p&gt;
&lt;p&gt;Kids don’t have that much of choice if their parents or school says it’s time to run. They can’t protest or if they do it won’t help, so they’re forced to just get on with it.&lt;/p&gt;
&lt;p&gt;A lot of school is like that, and for some things like running, it’s probably a good thing.
If I’d never been forced to run as a kid, maybe I wouldn’t be running now.&lt;/p&gt;
&lt;p&gt;Now that I’m an adult, there’s no one forcing me to go running anymore.
The expectation has to be self-imposed.
I set a vague goal of 1000km for 2022, and I think at one point I decided to up that goal to 1825km.&lt;/p&gt;
&lt;p&gt;That would be 5km / day.&lt;/p&gt;
&lt;p&gt;Right now it’s 13th November and I’m sitting on 887km.
That’s day 316 out of 365, so I’m sitting on an average of 2.8km / day.&lt;/p&gt;
&lt;p&gt;Not bad, but plenty of room for improvement.&lt;/p&gt;
&lt;p&gt;&lt;span
      class=&quot;gatsby-resp-image-wrapper&quot;
      style=&quot;position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 630px; &quot;
    &gt;
      &lt;a
    class=&quot;gatsby-resp-image-link&quot;
    href=&quot;/static/591bac0e7160beb27bbb57a8b7583c32/f40a0/sigulda.jpg&quot;
    style=&quot;display: block&quot;
    target=&quot;_blank&quot;
    rel=&quot;noopener&quot;
  &gt;
    &lt;span
    class=&quot;gatsby-resp-image-background-image&quot;
    style=&quot;padding-bottom: 100%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAFwABAQEBAAAAAAAAAAAAAAAAAAMEAf/EABYBAQEBAAAAAAAAAAAAAAAAAAECAP/aAAwDAQACEAMQAAABjowUjXYiV6NTGn//xAAbEAEBAAEFAAAAAAAAAAAAAAABAAIDECEjQ//aAAgBAQABBQIZy6+ILOVvTU2//8QAFBEBAAAAAAAAAAAAAAAAAAAAIP/aAAgBAwEBPwEf/8QAFBEBAAAAAAAAAAAAAAAAAAAAIP/aAAgBAgEBPwEf/8QAGRAAAgMBAAAAAAAAAAAAAAAAABEQIDFx/9oACAEBAAY/AmI2nJ//xAAcEAACAgMBAQAAAAAAAAAAAAAAARExIUGBsdH/2gAIAQEAAT8hTYS5+McPgijOHoknCdk7KNlqh4NKnw//2gAMAwEAAgADAAAAELvHvP/EABkRAAIDAQAAAAAAAAAAAAAAAAARARAhMf/aAAgBAwEBPxBYIjlf/8QAFREBAQAAAAAAAAAAAAAAAAAAESD/2gAIAQIBAT8QI//EABwQAQADAQADAQAAAAAAAAAAAAEAESExQVFhcf/aAAgBAQABPxC8ou1Z2KOg9KreMbAu6+CIE6KF5YBHoZfsi8thXYDZVAA/ev7BhtKx9ZFq/Q8h8pP/2Q==&apos;); background-size: cover; display: block;&quot;
  &gt;&lt;/span&gt;
  &lt;img
        class=&quot;gatsby-resp-image-image&quot;
        alt=&quot;Sigulda&quot;
        title=&quot;&quot;
        src=&quot;/static/591bac0e7160beb27bbb57a8b7583c32/828fb/sigulda.jpg&quot;
        srcset=&quot;/static/591bac0e7160beb27bbb57a8b7583c32/ff44c/sigulda.jpg 158w,
/static/591bac0e7160beb27bbb57a8b7583c32/a6688/sigulda.jpg 315w,
/static/591bac0e7160beb27bbb57a8b7583c32/828fb/sigulda.jpg 630w,
/static/591bac0e7160beb27bbb57a8b7583c32/0ede0/sigulda.jpg 945w,
/static/591bac0e7160beb27bbb57a8b7583c32/3ac88/sigulda.jpg 1260w,
/static/591bac0e7160beb27bbb57a8b7583c32/f40a0/sigulda.jpg 3455w&quot;
        sizes=&quot;(max-width: 630px) 100vw, 630px&quot;
        style=&quot;width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;&quot;
        loading=&quot;lazy&quot;
        decoding=&quot;async&quot;
      /&gt;
  &lt;/a&gt;
    &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Photo is from a run in the forest near Sigulda, Latvia in the Autumn of 2020.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[Don't stop]]></title><description><![CDATA[In the past, I’ve been awful at following through on things that I start. I go through a period of excitement that I’ve got a new project…]]></description><link>https://www.geofro.com/dont-stop/</link><guid isPermaLink="false">https://www.geofro.com/dont-stop/</guid><pubDate>Sat, 12 Nov 2022 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;In the past, I’ve been awful at following through on things that I start.&lt;/p&gt;
&lt;p&gt;I go through a period of excitement that I’ve got a new project. Some work gets done, usually the most fun part.
But then something hard comes up and I start to lose momentum. Before long I’ve given up and discarded the whole thing.&lt;/p&gt;
&lt;p&gt;Right in time to dream up another new idea to take my attention away.&lt;/p&gt;
&lt;p&gt;It’s a cycle, and one I’m acutely aware of.&lt;/p&gt;
&lt;p&gt;There always seems to be such a logical thought for stopping a project and starting something new.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;“It wasn’t a good idea anyway.”&lt;br&gt;
“That was never going to make any money.”&lt;br&gt;
“Life is too short to just do xyz.”&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;These may or may not be true, but they’re not the reason why I stopped.
They’re my rationalisations after I’ve already given up. The afterthought, not the original cause.&lt;/p&gt;
&lt;p&gt;The actual reason for stopping is usually fairly simple.&lt;/p&gt;
&lt;p&gt;I get bored.&lt;br&gt;
Bordem is the downfall of most of my grand ideas.&lt;/p&gt;
&lt;p&gt;I get to some part of the project that is necessary but not thrilling and I just decide the whole thing isn’t worth doing. A lot of coding examples fall into this category, things like user authentication (login pages), or dull parts of app development like getting set up on the App Store for the first time.&lt;/p&gt;
&lt;p&gt;These are 100% necessary tasks that stop me dead in my tracks because I just can’t bring myself to spend my spare time doing something that is so dull. Yet if I was given something like that to do at work I’d probably jump in no questions asked.&lt;/p&gt;
&lt;p&gt;Right now I’m trying to tackle this in two ways.&lt;/p&gt;
&lt;p&gt;1 - By cutting out all sources of distraction and entertainment, see &lt;a href=&quot;https://geofro.com/blocked/&quot;&gt;blocked&lt;/a&gt;.&lt;br&gt;
2- By trusting and enjoying the process.&lt;/p&gt;
&lt;p&gt;There was a quote by Steve Martin on playing the banjo that I think is particularly good. (At least I think it was Steve Martin, I can’t find it anywhere now so I’m just going to butcher it)&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;If you do anything for 50 years, you’re going to be pretty good at doing that thing.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I don’t know if I’ll be writing blog posts or code in 50 years time but I need to trust that time put into these things without switching focus too much will lead me forward.&lt;/p&gt;
&lt;p&gt;&lt;span
      class=&quot;gatsby-resp-image-wrapper&quot;
      style=&quot;position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 630px; &quot;
    &gt;
      &lt;a
    class=&quot;gatsby-resp-image-link&quot;
    href=&quot;/static/433315d891aab2091c62751d39c6d58a/c83bb/val.jpg&quot;
    style=&quot;display: block&quot;
    target=&quot;_blank&quot;
    rel=&quot;noopener&quot;
  &gt;
    &lt;span
    class=&quot;gatsby-resp-image-background-image&quot;
    style=&quot;padding-bottom: 75.31645569620254%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAPABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAEFBP/EABUBAQEAAAAAAAAAAAAAAAAAAAAC/9oADAMBAAIQAxAAAAHU4zqbxBD/xAAZEAACAwEAAAAAAAAAAAAAAAAAAQIDERP/2gAIAQEAAQUCxCI5iuaOkzpYf//EABURAQEAAAAAAAAAAAAAAAAAAAAR/9oACAEDAQE/AYj/xAAVEQEBAAAAAAAAAAAAAAAAAAAAEf/aAAgBAgEBPwGq/8QAGBAAAwEBAAAAAAAAAAAAAAAAAAEhEBH/2gAIAQEABj8ClLM4ksh//8QAHBABAAIBBQAAAAAAAAAAAAAAAQARITFBYYHR/9oACAEBAAE/IXwYKLEDRSM8NbFcXnaLt2O5/9oADAMBAAIAAwAAABALL//EABURAQEAAAAAAAAAAAAAAAAAABAR/9oACAEDAQE/EJH/xAAVEQEBAAAAAAAAAAAAAAAAAAAQEf/aAAgBAgEBPxCx/8QAHxABAAICAAcAAAAAAAAAAAAAAQARITFBUXGBkbHB/9oACAEBAAE/EHIbtcHmEK+a0fUYGgx+BhAX1+x/A2umKjYQd1ivdxP/2Q==&apos;); background-size: cover; display: block;&quot;
  &gt;&lt;/span&gt;
  &lt;img
        class=&quot;gatsby-resp-image-image&quot;
        alt=&quot;Val d&amp;#39;Isere&quot;
        title=&quot;&quot;
        src=&quot;/static/433315d891aab2091c62751d39c6d58a/828fb/val.jpg&quot;
        srcset=&quot;/static/433315d891aab2091c62751d39c6d58a/ff44c/val.jpg 158w,
/static/433315d891aab2091c62751d39c6d58a/a6688/val.jpg 315w,
/static/433315d891aab2091c62751d39c6d58a/828fb/val.jpg 630w,
/static/433315d891aab2091c62751d39c6d58a/0ede0/val.jpg 945w,
/static/433315d891aab2091c62751d39c6d58a/3ac88/val.jpg 1260w,
/static/433315d891aab2091c62751d39c6d58a/c83bb/val.jpg 4608w&quot;
        sizes=&quot;(max-width: 630px) 100vw, 630px&quot;
        style=&quot;width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;&quot;
        loading=&quot;lazy&quot;
        decoding=&quot;async&quot;
      /&gt;
  &lt;/a&gt;
    &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Photo is Val d’Isere in France, from a work ski trip in 2019.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[Blocked]]></title><description><![CDATA[I’ve decided as part of my journey into becoming more focused that I’m going to block sites that distract me the most. I’m using a little…]]></description><link>https://www.geofro.com/blocked/</link><guid isPermaLink="false">https://www.geofro.com/blocked/</guid><pubDate>Tue, 08 Nov 2022 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;I’ve decided as part of my journey into becoming more focused that I’m going to block sites that distract me the most. I’m using a little Firefox add-on called &lt;a href=&quot;https://addons.mozilla.org/en-US/firefox/addon/leechblock-ng/&quot;&gt;leechblock&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;You give it a list of sites and it blocks them. Simple.&lt;br&gt;
It works so long as you don’t disable the blocker…&lt;/p&gt;
&lt;p&gt;I’ve decided on the following for now -&lt;/p&gt;
&lt;h4&gt;YouTube&lt;/h4&gt;
&lt;p&gt;YouTube is where I waste most of my time. Between watching things that do interest me as well as getting sucked into more clickbait content, a lot of my time gets spent here. I’ve been hesitant to fully block YouTube in the past as I feel like I get a lot of value from some of the things I watch. Health stuff like Peter Attia, Rhonda Patrick, as well as more fitness related content like The Bioneer and some tennis content.&lt;/p&gt;
&lt;p&gt;Then there’s a lot of semi-educational or interesting content that I consume like Joe Rogan clips or other podcast snippets. I enjoy this content but I do think that in aggregate, it’s probably not &lt;i&gt;that&lt;/i&gt; helpful and is simply entertainment disguised as something more thought-provoking.&lt;/p&gt;
&lt;p&gt;I’ve used other &lt;a href=&quot;https://chrome.google.com/webstore/detail/unhook-remove-youtube-rec/khncfooichmfjbepaaaebmommgaepoid?hl=en&quot;&gt;add-ons&lt;/a&gt; in the past to block recommended videos or block the YouTube homepage, but I usually just find ways around these obstacles and end up watching mindlessly like I did before.&lt;/p&gt;
&lt;p&gt;Part of the problem is that both YouTube and the video creators are incentivised to make you watch for longer. Videos that could be 2mins long, end up closer to 10mins with a long intro, a long-winded explanation and flashy graphics or B-roll to keep your eyes interested. And it works, we keep watching even if most of the video is junk because generally our brains are lazy and like being entertained.&lt;/p&gt;
&lt;p&gt;I’ve reached a point where I’ve already squeezed most of the value out of YouTube that I’m going to get. My time is more valuable than any information I could possibly get from continuing to watch.&lt;/p&gt;
&lt;p&gt;The exception to this would be watching an instructional video when I need to solve a specific problem. But there’s no way to filter this and I don’t really have a particular problem YouTube could solve.&lt;br&gt;
I also can’t risk watching one piece of good helpful content and then getting sucked into wasting 2 hours because I saw a funny clip in the sidebar.&lt;br&gt;
So for now it’s all blocked.&lt;/p&gt;
&lt;h4&gt;Reddit&lt;/h4&gt;
&lt;p&gt;For the most part, I dislike reddit. I dislike it because the barrier to entry is very low - anyone can post, anyone can comment.&lt;/p&gt;
&lt;p&gt;In theory this should be a positive because it exposes you to a variety of different perspectives. This is true to an extent, and you’ll probably see a lot of cool stuff on reddit if you’ve never been on it. However, the diminishing returns bite hard.&lt;/p&gt;
&lt;p&gt;You can basically get 90% of the value from any subreddit by reading the top 10 posts of all-time. The rest is basically just the same type of content of lower quality, rehashed and recycled for fresh karma.
Each subreddit is an echo-chamber, and lingering inside too long will lead you to seeing the world in the same way.&lt;/p&gt;
&lt;p&gt;My subreddit of choice has generally been r/worldnews which you would think would be somewhat an exception to the above as the content is what is happening in the world (not what is happening in the mind of redditors).&lt;br&gt;
But I’ve come to realise that r/worldnews is basically just entertainment like the regular news on the TV and has almost zero relevance to my life.&lt;/p&gt;
&lt;p&gt;Despite my dislike for reddit, I constantly find myself opening it up, usually when I’ve got nothing else to do. So I’ve decided it must be blocked.&lt;/p&gt;
&lt;h4&gt;chess.com&lt;/h4&gt;
&lt;p&gt;This is a more recent addiction of mine. I think I first learnt of the site from my brother who was playing chess in between studying. I then saw a couple of videos of Magnus Carlsen memes and decided to have a go playing chess myself.&lt;/p&gt;
&lt;p&gt;Over the last couple of weeks it’s gone from zero to consuming, as I played for a couple of hours each day.
I think the appeal of chess for me is chasing that testosterone-producing feeling when you win, the glory of the checkmate.&lt;/p&gt;
&lt;p&gt;But at the end of the day, playing chess just makes you better at playing chess and if I’m going back to playing games I may as well dive back into video games. There’s no difference in my life between compulsively playing chess and compulsively playing video games like I did in high school.&lt;/p&gt;
&lt;p&gt;As I have no dreams to become a grand master, it’s on the list.&lt;/p&gt;
&lt;h4&gt;LinkedIn&lt;/h4&gt;
&lt;p&gt;A bit of a weird one, but just like reddit I seem to open it up when I’ve got nothing else to do.
I never post or interact and generally only go on there when I’ve got nothing else to scroll and usually think, “Damn look at all these people posting nonsense about work. Don’t they have something better to do?“.&lt;br&gt;
I think this while not accepting the fact that I’m even sadder because I’m aimlessly scrolling their content.&lt;br&gt;
Not helpful, not even fun - On the block list.&lt;/p&gt;
&lt;h4&gt;Twitter + Facebook&lt;/h4&gt;
&lt;p&gt;(Added afterwards)&lt;br&gt;
I don’t spend a huge amount of time on Twitter or Facebook but when everything else is blocked I am more inclined to go browse.&lt;/p&gt;
&lt;p&gt;—&lt;/p&gt;
&lt;p&gt;I fully intend to keep everything here blocked indefinitely and will edit this post if I add anything else.
If I relent and remove the blocker then I’ll also come back and say so here, but I think writing my intentions publicly will help prevent that from happening.&lt;/p&gt;
&lt;p&gt;&lt;span
      class=&quot;gatsby-resp-image-wrapper&quot;
      style=&quot;position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 630px; &quot;
    &gt;
      &lt;a
    class=&quot;gatsby-resp-image-link&quot;
    href=&quot;/static/c18129d9dff43fc10a3d57c802b7fe6a/c5fd1/paris.jpg&quot;
    style=&quot;display: block&quot;
    target=&quot;_blank&quot;
    rel=&quot;noopener&quot;
  &gt;
    &lt;span
    class=&quot;gatsby-resp-image-background-image&quot;
    style=&quot;padding-bottom: 100%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAFwABAQEBAAAAAAAAAAAAAAAAAAIEA//EABYBAQEBAAAAAAAAAAAAAAAAAAABAv/aAAwDAQACEAMQAAABxX0751iWKxCBX//EABwQAAICAgMAAAAAAAAAAAAAAAECAAMREhMhIv/aAAgBAQABBQKw7BbMQNANZlHBCxD5bo8pn//EABQRAQAAAAAAAAAAAAAAAAAAACD/2gAIAQMBAT8BH//EABQRAQAAAAAAAAAAAAAAAAAAACD/2gAIAQIBAT8BH//EABoQAAIDAQEAAAAAAAAAAAAAAAABAhFBECH/2gAIAQEABj8CSZ4srjco9odYzGf/xAAbEAEAAwEAAwAAAAAAAAAAAAABABEhMVFhcf/aAAgBAQABPyFwlBKQcoYbsIrNYeoVWMsU9I3lJ3DdFynH6M//2gAMAwEAAgADAAAAEPjvwf/EABgRAQADAQAAAAAAAAAAAAAAAAEAEBEh/9oACAEDAQE/EF5k1jX/xAAVEQEBAAAAAAAAAAAAAAAAAAABEP/aAAgBAgEBPxAIT//EAB0QAQADAAMBAQEAAAAAAAAAAAEAESExQVGRYbH/2gAIAQEAAT8QcgXELti0TWB2udPsWxxOdUeRMi+pF+kVUCuDEf6QLUsr2agFxHu5ZYEC2xXQnhr8n//Z&apos;); background-size: cover; display: block;&quot;
  &gt;&lt;/span&gt;
  &lt;img
        class=&quot;gatsby-resp-image-image&quot;
        alt=&quot;Paris metro&quot;
        title=&quot;&quot;
        src=&quot;/static/c18129d9dff43fc10a3d57c802b7fe6a/828fb/paris.jpg&quot;
        srcset=&quot;/static/c18129d9dff43fc10a3d57c802b7fe6a/ff44c/paris.jpg 158w,
/static/c18129d9dff43fc10a3d57c802b7fe6a/a6688/paris.jpg 315w,
/static/c18129d9dff43fc10a3d57c802b7fe6a/828fb/paris.jpg 630w,
/static/c18129d9dff43fc10a3d57c802b7fe6a/0ede0/paris.jpg 945w,
/static/c18129d9dff43fc10a3d57c802b7fe6a/3ac88/paris.jpg 1260w,
/static/c18129d9dff43fc10a3d57c802b7fe6a/c5fd1/paris.jpg 3443w&quot;
        sizes=&quot;(max-width: 630px) 100vw, 630px&quot;
        style=&quot;width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;&quot;
        loading=&quot;lazy&quot;
        decoding=&quot;async&quot;
      /&gt;
  &lt;/a&gt;
    &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Photo is from the metro in Paris when I visited with my brother back in 2019.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[Unfocused]]></title><description><![CDATA[For someone that is not completely hopeless at being productive, I’ve come to the realisation that I’m actually quite hopeless at getting…]]></description><link>https://www.geofro.com/unfocused/</link><guid isPermaLink="false">https://www.geofro.com/unfocused/</guid><pubDate>Sun, 06 Nov 2022 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;For someone that is not completely hopeless at being productive, I’ve come to the realisation that I’m actually quite hopeless at getting things done.&lt;/p&gt;
&lt;p&gt;Let me explain.&lt;/p&gt;
&lt;p&gt;I had the idea for this blog post swirling around in my mind and made the mental decision to start writing it.
Great let’s go!&lt;/p&gt;
&lt;p&gt;But before I could even open my text editor I did the following:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;went to pee&lt;/li&gt;
&lt;li&gt;put deodorant on (I’d forgotten this morning)&lt;/li&gt;
&lt;li&gt;found some music to “get me in the mood for working”&lt;/li&gt;
&lt;li&gt;got distracted on my youtube home page&lt;/li&gt;
&lt;li&gt;found a song I liked&lt;/li&gt;
&lt;li&gt;realised the song was too distracting and turned it off&lt;/li&gt;
&lt;li&gt;opened up Spotify (because maybe it was Youtube and not the song distracting me)&lt;/li&gt;
&lt;li&gt;picked a different song&lt;/li&gt;
&lt;li&gt;got distracted a 2nd time, stopped the music a 2nd time&lt;/li&gt;
&lt;li&gt;opened my editor&lt;/li&gt;
&lt;li&gt;fixed a typo on a different post&lt;/li&gt;
&lt;li&gt;actually started writing the first couple of words of this new post&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;That’s &lt;b&gt;11 different things&lt;/b&gt;, just to get to the one thing I did actually want to do.
And I’m pretty sure if I always kept track, this would probably be a pretty good innings for me.&lt;/p&gt;
&lt;p&gt;And there you go, I’m already checking something on my phone.&lt;br&gt;
The music has found it’s way back on.&lt;br&gt;
And now I’m contemplating grabbing a coffee so I’m fully caffeinated for work.&lt;/p&gt;
&lt;p&gt;Am I really some sort of crack addict who can’t sit still?&lt;/p&gt;
&lt;p&gt;I couldn’t be in a better place to do productive work.
I’m sitting in an empty coworking space on a Sunday with no plans or obligations until tomorrow.&lt;/p&gt;
&lt;p&gt;I’m generally a guy who does good work.&lt;br&gt;
I’m a software engineer at a medium sized company.
I get a lot of important code written. Deadlines are usually met.
My manager is generally pretty happy with how I’m doing. I generally feel more like a help than a hindrance.&lt;/p&gt;
&lt;p&gt;Outside of work, I think I’m able to manage my life fairly well.&lt;br&gt;
My flat is usually pretty clean, but not spotless.
Sometimes I might file my taxes or pay the bills a little late.
And I’m usually the one to book flights once they’ve already gone up in price.&lt;/p&gt;
&lt;p&gt;But it’s not a total disaster, I’m just not good at delivering on the big life changes I want to make.&lt;br&gt;
The big projects that require all of the little subtasks to be ticked off. They seem to be the hardest.&lt;/p&gt;
&lt;p&gt;I’ve come to realise I’m probably the normal amount of disorganised.
It’s not &lt;i&gt;that&lt;/i&gt; bad, but there’s definitely room for improvement.&lt;/p&gt;
&lt;p&gt;I do use a todo app to help me keep on top of things, quire.io.
It’s basically a clone of trello that I set up when I had the idea to run my life like an engineering sprint.&lt;/p&gt;
&lt;p&gt;It’s kind of useful, but I usually feel that it’s only as good as the effort I put into it.&lt;br&gt;
If I’m feeling super focused, I can get some of the things done. If I’m lazy or don’t look at it, then it just becomes stale and feels like a massive chore to get back in to.&lt;/p&gt;
&lt;p&gt;I think the problem is that I’m using Quire as my system when really it’s a tool.&lt;/p&gt;
&lt;p&gt;It’s the same way engineering teams use trello (the tool), but bring the system (kanban, scrum, etc).
Companies stay on track by making the system someone’s job - the scrum master or the product manager.
And that person chases down what needs to be done, organises the backlog and prioritises.
They might not be writing code or drawing up new designs, but they’re making sure those things get done.&lt;/p&gt;
&lt;p&gt;But I don’t have a strong system or a dedicated person to be my personal assistant and keep me on task.
So I end up doing the work twice.&lt;br&gt;
Once in organising it, and again in actually getting it done.&lt;/p&gt;
&lt;p&gt;So in my infinite wisdom (and not procrastination), I’ve decided that I’m going to make a todo app (classic) that will be less of a tool and more of a system to guide me in the right direction.&lt;/p&gt;
&lt;p&gt;Updates soon - assuming I can keep on task.&lt;/p&gt;
&lt;p&gt;&lt;span
      class=&quot;gatsby-resp-image-wrapper&quot;
      style=&quot;position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 630px; &quot;
    &gt;
      &lt;a
    class=&quot;gatsby-resp-image-link&quot;
    href=&quot;/static/8c15bba9fc177104970304914081e82a/9f3bc/snowdon.jpg&quot;
    style=&quot;display: block&quot;
    target=&quot;_blank&quot;
    rel=&quot;noopener&quot;
  &gt;
    &lt;span
    class=&quot;gatsby-resp-image-background-image&quot;
    style=&quot;padding-bottom: 100.63291139240506%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAFwABAQEBAAAAAAAAAAAAAAAAAAMEAv/EABYBAQEBAAAAAAAAAAAAAAAAAAACAf/aAAwDAQACEAMQAAABuwdyusMIzdwuf//EABwQAAIBBQEAAAAAAAAAAAAAAAABAhASEyEiQf/aAAgBAQABBQK+aM0zs26RfPglr//EABQRAQAAAAAAAAAAAAAAAAAAACD/2gAIAQMBAT8BH//EABYRAQEBAAAAAAAAAAAAAAAAAAEQEf/aAAgBAgEBPwHWE//EABsQAAIBBQAAAAAAAAAAAAAAAAABECAhMTJR/9oACAEBAAY/AtzphxZ0/wD/xAAbEAEAAwEAAwAAAAAAAAAAAAABABEhQTFRcf/aAAgBAQABPyENx9jVQ29hNbEX8VEs0uXiHXYOwCP/2gAMAwEAAgADAAAAECTgvf/EABcRAQADAAAAAAAAAAAAAAAAAAEAECH/2gAIAQMBAT8QQmX/AP/EABkRAQEBAAMAAAAAAAAAAAAAAAEAESExQf/aAAgBAgEBPxA8oV526wGX/8QAGRABAAMBAQAAAAAAAAAAAAAAAQARITFB/9oACAEBAAE/EDZcHLDcxIvLDBtTq2q9hm3fdJ4I6I9mpxCtmaemuxK87CQF2Xs//9k=&apos;); background-size: cover; display: block;&quot;
  &gt;&lt;/span&gt;
  &lt;img
        class=&quot;gatsby-resp-image-image&quot;
        alt=&quot;Rhyd ddu path&quot;
        title=&quot;&quot;
        src=&quot;/static/8c15bba9fc177104970304914081e82a/828fb/snowdon.jpg&quot;
        srcset=&quot;/static/8c15bba9fc177104970304914081e82a/ff44c/snowdon.jpg 158w,
/static/8c15bba9fc177104970304914081e82a/a6688/snowdon.jpg 315w,
/static/8c15bba9fc177104970304914081e82a/828fb/snowdon.jpg 630w,
/static/8c15bba9fc177104970304914081e82a/0ede0/snowdon.jpg 945w,
/static/8c15bba9fc177104970304914081e82a/3ac88/snowdon.jpg 1260w,
/static/8c15bba9fc177104970304914081e82a/9f3bc/snowdon.jpg 3453w&quot;
        sizes=&quot;(max-width: 630px) 100vw, 630px&quot;
        style=&quot;width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;&quot;
        loading=&quot;lazy&quot;
        decoding=&quot;async&quot;
      /&gt;
  &lt;/a&gt;
    &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Photo is from the start of the Rhyd ddu path of Mt Snowdon, Wales.
I managed to run from my hotel to the top and down again after work a few months ago. One of my more productive days.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[Blog]]></title><description><![CDATA[Hey, welcome to my new site. I’m not sure what this will turn into just yet but I’m going to write about things that I’m thinking about. I…]]></description><link>https://www.geofro.com/blog/</link><guid isPermaLink="false">https://www.geofro.com/blog/</guid><pubDate>Fri, 04 Nov 2022 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Hey, welcome to my new site. I’m not sure what this will turn into just yet but I’m going to write about things that I’m thinking about. I guess we’ll see how it goes.&lt;/p&gt;
&lt;p&gt;&lt;span
      class=&quot;gatsby-resp-image-wrapper&quot;
      style=&quot;position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 630px; &quot;
    &gt;
      &lt;a
    class=&quot;gatsby-resp-image-link&quot;
    href=&quot;/static/11237af969aa0bf0454f92f64af0e83f/56161/tree.jpg&quot;
    style=&quot;display: block&quot;
    target=&quot;_blank&quot;
    rel=&quot;noopener&quot;
  &gt;
    &lt;span
    class=&quot;gatsby-resp-image-background-image&quot;
    style=&quot;padding-bottom: 100%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGAABAQEBAQAAAAAAAAAAAAAAAAMBBAL/xAAXAQADAQAAAAAAAAAAAAAAAAABAgME/9oADAMBAAIQAxAAAAHKTnlv1uIR7wolQw//xAAaEAADAQEBAQAAAAAAAAAAAAAAAQIREgMU/9oACAEBAAEFAibe/RRVdDaNGsuFr82+f//EABgRAAIDAAAAAAAAAAAAAAAAAAACEBFB/9oACAEDAQE/AcKWf//EABoRAAICAwAAAAAAAAAAAAAAAAABAhEQEiH/2gAIAQIBAT8Bt3w2kLH/xAAZEAEAAgMAAAAAAAAAAAAAAAAAATEgIYH/2gAIAQEABj8Cb5hSErl//8QAGxABAAMAAwEAAAAAAAAAAAAAAQARMSFBUWH/2gAIAQEAAT8haGiiuvIALWvWTPPvE4KoSxsRAA+XCvmEwi56n//aAAwDAQACAAMAAAAQJ/j9/8QAGBEBAQEBAQAAAAAAAAAAAAAAAQARIWH/2gAIAQMBAT8Qw4S8pbC//8QAGBEBAQADAAAAAAAAAAAAAAAAAAERMWH/2gAIAQIBAT8Q2KdEM1//xAAbEAEAAwEBAQEAAAAAAAAAAAABABEhQTFhcf/aAAgBAQABPxAlAVjOm6lDCeBoKI0g2Gu2XEjwDkYKsmWEQ2CvsMBYDW7KurdE/JgiiAWT/9k=&apos;); background-size: cover; display: block;&quot;
  &gt;&lt;/span&gt;
  &lt;img
        class=&quot;gatsby-resp-image-image&quot;
        alt=&quot;Lativan maple&quot;
        title=&quot;&quot;
        src=&quot;/static/11237af969aa0bf0454f92f64af0e83f/828fb/tree.jpg&quot;
        srcset=&quot;/static/11237af969aa0bf0454f92f64af0e83f/ff44c/tree.jpg 158w,
/static/11237af969aa0bf0454f92f64af0e83f/a6688/tree.jpg 315w,
/static/11237af969aa0bf0454f92f64af0e83f/828fb/tree.jpg 630w,
/static/11237af969aa0bf0454f92f64af0e83f/0ede0/tree.jpg 945w,
/static/11237af969aa0bf0454f92f64af0e83f/3ac88/tree.jpg 1260w,
/static/11237af969aa0bf0454f92f64af0e83f/56161/tree.jpg 3445w&quot;
        sizes=&quot;(max-width: 630px) 100vw, 630px&quot;
        style=&quot;width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;&quot;
        loading=&quot;lazy&quot;
        decoding=&quot;async&quot;
      /&gt;
  &lt;/a&gt;
    &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Photo is a maple I found in Biķernieki forest, Riga.&lt;/p&gt;</content:encoded></item></channel></rss>