<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Alex Hyett</title>
    <description>The latest articles on DEV Community by Alex Hyett (@alexhyettdev).</description>
    <link>https://dev.to/alexhyettdev</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F491468%2F6c672f1b-6587-4277-9b75-d33a1515a249.jpeg</url>
      <title>DEV Community: Alex Hyett</title>
      <link>https://dev.to/alexhyettdev</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/alexhyettdev"/>
    <language>en</language>
    <item>
      <title>The death of SaaS and reverting to offline software</title>
      <dc:creator>Alex Hyett</dc:creator>
      <pubDate>Sun, 13 Sep 2026 12:00:00 +0000</pubDate>
      <link>https://dev.to/alexhyettdev/the-death-of-saas-and-reverting-to-offline-software-al3</link>
      <guid>https://dev.to/alexhyettdev/the-death-of-saas-and-reverting-to-offline-software-al3</guid>
      <description>&lt;p&gt;This week I was reading this article, "&lt;a href="https://jyn.dev/a-year-to-fix-security/" rel="noopener noreferrer"&gt;we have a year to fix security everywhere&lt;/a&gt;".&lt;/p&gt;

&lt;p&gt;The TL;DR, is that GLM-5.3 flash can be run locally on $5-15k hardware and is apparently good at hacking, especially when using an "abliterated" version which doesn't adhere to any safety checks.&lt;/p&gt;

&lt;p&gt;In other words, anyone with a bit of money can run an agent 24/7 to find vulnerabilities and exploit them across the web. At least that is what it claims.&lt;/p&gt;

&lt;p&gt;In the past, ethical hackers used to find vulnerabilities in a companies code and then email them to give them time to fix it, usually with the expectation of receiving a bounty. There are many cases of these vulnerabilities taking months to fix and it only getting resolved when the hacker decides to go public.&lt;/p&gt;

&lt;p&gt;With hackers using agents to find and exploit vulnerabilities, companies no longer have months to fix these vulnerabilities, they may not even have hours.&lt;/p&gt;

&lt;p&gt;For many indie developers the goal has been to create a SaaS with recurring revenue and sit back and relax. Once you have a working product you only need to iterate on it occasionally to keep customers interested and keep up with competitors.&lt;/p&gt;

&lt;p&gt;If what they are saying is true, SaaS applications will now need water tight security if they want to stay in business. This means paying for security experts to evaluate your code or they would hope running your own agent with the latest models 24/7 to find potential security issues with your software before someone else does. I hope it doesn't come to that, as the last thing we need is more AI.&lt;/p&gt;

&lt;p&gt;Either way, it is saying that SaaS is no longer a viable option for solo entrepreneurs as we don't have the resources to keep up with millions of hackers using AI agents to look for back doors in our code.&lt;/p&gt;

&lt;p&gt;If all this is true, where does that leave us?&lt;/p&gt;

&lt;p&gt;I think this is where offline software and apps are going to gain more traction again. We used to pay for applications and run them locally on our computers. Then companies switched to SaaS services so they could charge a subscription. With SaaS potentially becoming a security nightmare, I wonder if we will see a return of offline mobile and desktop applications.&lt;/p&gt;

&lt;p&gt;For those that want collaborative features, there could be an option to self host a service. Businesses can then get all the collaborative features they are used to having with cloud based options but without it being publicly accessible to the internet.&lt;/p&gt;

&lt;p&gt;Of course, all of this is already possible with self hosting. I have replaced a lot of the SaaS applications I have used in the past with open source options that run locally on my home network. If one of those contains a security vulnerability then it is not an issue as no one else can access it anyway.&lt;/p&gt;

&lt;p&gt;Here are some of the alternatives I am using instead of cloud based platforms:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://www.getgrist.com/" rel="noopener noreferrer"&gt;Grist&lt;/a&gt; - This has replaced Google Sheets for me. If I need a smart spreadsheet that I can access with an API I use Grist.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://vaultwarden.com/" rel="noopener noreferrer"&gt;VaultWarden&lt;/a&gt; - Integrates with the BitWarden clients. Now all my passwords are only accessible within my home network or via VPN.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://forgejo.org/" rel="noopener noreferrer"&gt;ForgeJo&lt;/a&gt; - This has replaced GitHub for all of my personal projects. Big Tech can't train AI on your code if they can't access it.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://n8n.io/" rel="noopener noreferrer"&gt;N8N&lt;/a&gt; - When I need a simple way to automate something that you would use IFTTT or Zapier for I use N8N instead.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://uptimekuma.co/" rel="noopener noreferrer"&gt;Uptime Kuma&lt;/a&gt; - I use this to monitor the uptime of all my publicly hosted services such as my website, PeerTube and public ForgeJo instance.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://miniflux.app/" rel="noopener noreferrer"&gt;Miniflux&lt;/a&gt; - This is my RSS feed reader which has replaced Feedly for me and before that Google Reader.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I also have a whole host of other self hosted software that I use ever day such as &lt;a href="https://jellyfin.org/" rel="noopener noreferrer"&gt;JellyFin&lt;/a&gt;, &lt;a href="https://audiobookshelf.org/" rel="noopener noreferrer"&gt;audiobookshelf&lt;/a&gt; and &lt;a href="https://github.com/crocodilestick/Calibre-Web-Automated" rel="noopener noreferrer"&gt;Calibre-Web-Automated&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I will do some more videos and posts in the future about my self-hosted set up as I think more people are going to need something similar going forward.&lt;/p&gt;




&lt;h2&gt;
  
  
  ❤️ Picks of the Week &lt;a href="https://www.alexhyett.com/newsletter/the-death-of-saas-and-reverting-to-offline-software/#picks-of-the-week" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;h3&gt;
  
  
  🛠️ Tools &lt;a href="https://www.alexhyett.com/newsletter/the-death-of-saas-and-reverting-to-offline-software/#tools" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://github.com/stemdeckapp/stemdeck" rel="noopener noreferrer"&gt;StemDeck, a free, open-source and local AI stem separator&lt;/a&gt; - This is really cool. As a guitarist, it would definitely be helpful to have a way to isolate just the guitar from a song to see how it is played without all the other instruments or vocals. I did tried this out with Chasing Cars by Snow Patrol and it did a fantastic job. Interesting naming so we now have StemDeck, SteamDeck and StreamDeck...&lt;/p&gt;

&lt;h3&gt;
  
  
  💻 Programming &lt;a href="https://www.alexhyett.com/newsletter/the-death-of-saas-and-reverting-to-offline-software/#programming" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.bennadel.com/blog/4908-programming-as-a-hobby-in-the-age-of-ai.htm" rel="noopener noreferrer"&gt;Programming As A Hobby In The Age Of AI&lt;/a&gt; - I still think that writing code by hand isn't something you need to justify. People are only able to review and validate AI generated code because they know how to write it. If you don't continue the practice then you won't be able to review the AI output anymore.&lt;/p&gt;

&lt;h3&gt;
  
  
  🔒 Security &amp;amp; Privacy &lt;a href="https://www.alexhyett.com/newsletter/the-death-of-saas-and-reverting-to-offline-software/#security-and-privacy" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://bobdahacker.com/blog/tldv-hack" rel="noopener noreferrer"&gt;Tl;dv: Over 180k meetings left wide open&lt;/a&gt; - Wow we used TL;DV at work. I wonder if they still would have used it knowing all the recording meetings were public. It is these kind of data breaches that make running everything locally more compelling.&lt;/p&gt;

&lt;h3&gt;
  
  
  🎨 Design &amp;amp; UX &lt;a href="https://www.alexhyett.com/newsletter/the-death-of-saas-and-reverting-to-offline-software/#design-and-ux" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://blog.jim-nielsen.com/2026/ai-aesthetic/" rel="noopener noreferrer"&gt;The AI Aesthetic&lt;/a&gt; - I hadn't picked up on the small icons as I have seen other apps prior to AI using these as well. Obsidian which I use to write all my posts has them for example as well. I have definitely noticed the &lt;a href="https://op.tngl.io/every-fucking-website/" rel="noopener noreferrer"&gt;serif + mono font combination, orange highlighting and blinking dots everywhere now&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  🤖 AI &lt;a href="https://www.alexhyett.com/newsletter/the-death-of-saas-and-reverting-to-offline-software/#ai" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://jola.dev/posts/no-cost-no-value" rel="noopener noreferrer"&gt;No cost, no value&lt;/a&gt; - This is where I am at right now. I could use AI and create things the easy way but I would rather spend the time doing it myself and learning along the way. It won't be quicker or easier but it will definitely be more fulfilling.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.science.org/content/article/ai-s-top-startups-are-barely-publishing-their-research" rel="noopener noreferrer"&gt;AI's top startups are barely publishing their research&lt;/a&gt; - I think if AI was solving the climate crisis instead of contributing to it and curing cancer it might just result in a net positive. Except it isn't doing any of these things, and if it is the AI companies are keeping it to themselves.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://languagehat.com/destructive-ai/" rel="noopener noreferrer"&gt;Destructive AI.&lt;/a&gt; - The destruction of books solely to profit AI companies really makes me mad.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://gruhn.me/blog/2026-08-03/" rel="noopener noreferrer"&gt;Don't be a meat proxy&lt;/a&gt; - This is my pet peeve with people using AI. They don't even bother to reword or in some cases read what the LLM has produced. Here is a 10 page document Claude output. If you aren't reading, correcting and changing the code then you are just a meat proxy between the reviewer and the LLM.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://queue.acm.org/detail.cfm?id=3807963" rel="noopener noreferrer"&gt;Eight Myths on Software Engineering and GenAI&lt;/a&gt; - This is a good set of myths that I think help explain how GenAI isn't the solution people think it is.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.docker.com/products/docker-sandboxes/" rel="noopener noreferrer"&gt;Docker Sandboxes – Disposable, isolated sandboxes for AI agents&lt;/a&gt; - If you are going to be running AI agents on your computer then you need to make sure it is sandboxed to make sure that it doesn't &lt;code&gt;rm -rf&lt;/code&gt; you home directory.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://research.meta.ai/blog/introducing-muse-glimmer-open-agentic-model" rel="noopener noreferrer"&gt;Muse Glimmer: 30B-parameter model optimized for always-on local agent workflows&lt;/a&gt; - Another local model from Meta. I am not sure this good at coding so looks to be more for personal assistant scenarios.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://blog.curiousquail.com/where-do-you-draw-the-ai-line/" rel="noopener noreferrer"&gt;Where do YOU draw the AI line?&lt;/a&gt; - This seems to be the norm now. If I was forced to use AI I would quit on the spot. At the moment I am on some what of a career sabbatical trying to work out a way so I don't have to go back to something like this.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.atomic14.com/2026/08/18/detecting-claude-with-letter-counts" rel="noopener noreferrer"&gt;Detecting Claude by counting letters&lt;/a&gt; - This is quite cool. At least it recognised my text as written by a meat bag. With AI having to watermark all output these detection tools should get better. You can try it out here: &lt;a href="https://meatbag.atomic14.com/" rel="noopener noreferrer"&gt;Robot (Claude or ChatGPT) or Meatbag?&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://overkill.wtf/posts/the-smell-of-ai" rel="noopener noreferrer"&gt;The smell of AI&lt;/a&gt; - For me as a developer, I do care if a tool is using generated code. It generally means the quality of that tool is going to degrade. This isn't always the case though. I won't stop using a tool because an LLM has been used in generating the code but if the tool stops working as well then I am unlikely to come back.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.autodidacts.io/vibecoding-isnt-as-fun-as-writing-code-by-hand/" rel="noopener noreferrer"&gt;Vibecoding isn't as fun as writing code by hand&lt;/a&gt; - 100%. I particularly agree with this quote which some it up nicely.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;I don’t like the way it makes me feel, and I don’t like the quality of the output. It manages to make me feel dumb and superfluous (and, sometimes, dirty for even using it), without earning my respect.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://louisabraham.github.io/load-bearing/" rel="noopener noreferrer"&gt;The load-bearing vocabulary of Claude&lt;/a&gt; - LLMs definitely have a very particular language. It might be the use of these words that cause it. I can never quite pin point it but I get the feeling that text is AI when reading it without being able to fully prove it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://lwn.net/Articles/1091231/" rel="noopener noreferrer"&gt;Debian votes to allow "responsible use of generative AI"&lt;/a&gt; - I like Debian, it is often my first choice for putting on my servers. I will have to see how this pans out.&lt;/p&gt;

&lt;h3&gt;
  
  
  🏢 Tech Industry &lt;a href="https://www.alexhyett.com/newsletter/the-death-of-saas-and-reverting-to-offline-software/#tech-industry" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.noemamag.com/why-is-everyone-in-tech-so-sad/" rel="noopener noreferrer"&gt;What happens if an entire class of workers loses faith in their careers&lt;/a&gt; - I am not sure AI will ever replace nonsense jobs but will likely just make them even more pointless.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.globalnerdy.com/2026/08/18/if-you-watch-only-one-ad-today-good-luck-with-that-watch-this-one/" rel="noopener noreferrer"&gt;If you watch only one ad today (good luck with that), watch this one!&lt;/a&gt; - This is hilarious. At least there are companies actively against AI data centres.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://observationalepidemiology.blogspot.com/2026/08/it-is-sign-of-times-that-amazon-gets-to.html" rel="noopener noreferrer"&gt;It is a sign of the times that Amazon gets to call this fair use while huge corporations try to sue the Internet Archive out of business.&lt;/a&gt; - The Internet Archive is also scanning books but unlike Amazon they aren't getting destroyed after. Scanning books privately and then selling derivative works based on the complete book is still IP theft.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://sals.place/blog/github-growth/" rel="noopener noreferrer"&gt;GitHub's growth&lt;/a&gt; - This does make me feel a bit sad for GitHub (only slightly). It isn't entirely their fault that &lt;a href="https://isgithubcooked.com/" rel="noopener noreferrer"&gt;GitHub is now down so often&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.businessinsider.com/nvidia-in-talks-to-buy-hugging-face-13-billion-dollars-2026-8" rel="noopener noreferrer"&gt;Nvidia agrees to acquire Hugging Face for $13B&lt;/a&gt; - I wonder where this leaves open weight models now. I can see Nvidia trying to find a way to profit from this too.&lt;/p&gt;

&lt;h3&gt;
  
  
  🎮 Gaming &lt;a href="https://www.alexhyett.com/newsletter/the-death-of-saas-and-reverting-to-offline-software/#gaming" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://arstechnica.com/gaming/2026/08/a-12tb-steam-teraleak-spills-more-than-a-decade-of-lost-pc-gaming-history/" rel="noopener noreferrer"&gt;A 12TB Steam "teraleak" spills more than a decade of lost PC gaming history&lt;/a&gt; - As a big lover of Steam games such as Portal all these leaks are really interesting.&lt;/p&gt;

&lt;h3&gt;
  
  
  🧠 Miscellaneous &lt;a href="https://www.alexhyett.com/newsletter/the-death-of-saas-and-reverting-to-offline-software/#miscellaneous" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.runnersworld.com/news/a73355106/hamster-wheel-strava-running/" rel="noopener noreferrer"&gt;A physicist rigged his pet hamster’s wheel to upload to Strava&lt;/a&gt; - Haha this is hilarious.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://ciechanow.ski/moon/" rel="noopener noreferrer"&gt;Moon&lt;/a&gt; - I love these explanations we interactive diagrams.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.orbify.eu/demo/" rel="noopener noreferrer"&gt;Inception-style curved map for turn-by-turn directions&lt;/a&gt; - Useful? Probably not. Really cool to watch, absolutely!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://deadparrotbbs.com/why-old-software-sometimes-feels-better/" rel="noopener noreferrer"&gt;Why Old Software Sometimes Feels Better&lt;/a&gt; - This is the software I want to make. Modern software that users can feel that they own and understand.&lt;/p&gt;




&lt;h2&gt;
  
  
  💬 Quote of the Week &lt;a href="https://www.alexhyett.com/newsletter/the-death-of-saas-and-reverting-to-offline-software/#quote-of-the-week" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;By sharing your journey publicly—and inviting friends, family, and complete strangers along for the ride—you will create your own fan club who are actively rooting for your success.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;From the article &lt;a href="https://nathanbarry.com/wealth-creation/" rel="noopener noreferrer"&gt;"The ladders of wealth creation a step-by-step roadmap to building wealth"&lt;/a&gt; by Nathan Barry.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>selfhosting</category>
      <category>security</category>
    </item>
    <item>
      <title>Becoming more nostalgic in my old age</title>
      <dc:creator>Alex Hyett</dc:creator>
      <pubDate>Sun, 30 Aug 2026 12:00:00 +0000</pubDate>
      <link>https://dev.to/alexhyettdev/becoming-more-nostalgic-in-my-old-age-26h1</link>
      <guid>https://dev.to/alexhyettdev/becoming-more-nostalgic-in-my-old-age-26h1</guid>
      <description>&lt;p&gt;I say "old age" in the title of this post, I am still in my 30s, and I don't turn 40 until next year, but I have grey in my beard and I have definitely paraphrased "back in my day" more than once. Admittedly it is mostly to my children, so they can learn a little bit about what it was like growing up in the "late 1900s" not being surrounded by technology and the internet every second of the day.&lt;/p&gt;

&lt;p&gt;My daughter asked me whether it was better growing up as a kid when I was younger vs now. Obviously I am biased, but I think we did have it better as kids.&lt;/p&gt;

&lt;p&gt;Yes there was less choice when it came to entertainment and toys but abundant choice isn't always a good thing. Certainly in the UK where we only had 4 TV channels, with kids shows limited to a few hours each day, everyone watched the same thing.&lt;/p&gt;

&lt;p&gt;We were all exposed to the same adverts and ended up playing the same games and getting the same toys at Christmas (or wanted them). To be fair thanks to reruns, I watched some of the same cartoons my parents watched. My kids however are only vaguely aware of who Bugs Bunny is, the horror.&lt;/p&gt;

&lt;p&gt;I find myself getting more nostalgic for the technology that we had growing up as well. Like many my age, my first phone was a Nokia 3210. I still have it in a drawer somewhere. It still turns on, the battery still lasts a week.&lt;/p&gt;

&lt;p&gt;The next phone I got was a Nokia 3510, bright blue and orange and had a colour screen and polyphonic ringtones. Yes it was only a 12 bit colour, 96 x 65 pixel display but it was exciting.&lt;/p&gt;

&lt;p&gt;With every new release the technology got noticeably better, sharper displays, better sound, better camera. It made sense to update your phone every year or two as the next release was going to be twice if not 3 times better than what you had before.&lt;/p&gt;

&lt;p&gt;Now the difference between releases is marginal.&lt;/p&gt;

&lt;p&gt;Between the iPhone 16 and 17 you have a slightly bigger display, 10% faster chip and a better front camera. The only time I upgrade now is when the software becomes so bloated my phone struggles to cope or the battery dies.&lt;/p&gt;

&lt;p&gt;It is not just physical tech but software and games too. I have 292 games in my Steam library most of them I bought from Humble Bundle or Steam sales. I am very aware that in 10 years time or less most of those games probably won't work.&lt;/p&gt;

&lt;p&gt;Most of them need an internet connection to the games servers and Steam to work. Even consoles are &lt;a href="https://www.cnbc.com/2026/07/01/sony-playstation-physical-disc-production-2028.html" rel="noopener noreferrer"&gt;no longer coming with physical media anymore&lt;/a&gt; and the ones that did still required you to download a large amount and create an account before you can start playing.&lt;/p&gt;

&lt;p&gt;It didn't use to be like this. PC games came on floppy disks and CDs. Consoles had cartridges that you could plug in and start playing. No internet connection needed, no account needed. Yes the graphics are better than they used to be, but are we really much better off?&lt;/p&gt;

&lt;p&gt;Maybe I need to start buying my games from &lt;a href="https://www.gog.com" rel="noopener noreferrer"&gt;Gog&lt;/a&gt; so they would at least be DRM free or just play retro titles from now on. The latter might be the only option unless graphics card and RAM prices drop to a reasonable level again.&lt;/p&gt;

&lt;p&gt;Either way I am certainly buying more physical books and DVDs than I used to and buying a record player doesn't seem like a crazy idea right now.&lt;/p&gt;




&lt;h2&gt;
  
  
  ❤️ Picks of the Week &lt;a href="https://www.alexhyett.com/newsletter/becoming-more-nostalgic-in-my-old-age/#picks-of-the-week" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;h3&gt;
  
  
  💻 Programming &lt;a href="https://www.alexhyett.com/newsletter/becoming-more-nostalgic-in-my-old-age/#programming" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://jelly-ui.com/" rel="noopener noreferrer"&gt;Jelly UI: Soft-body physics for native HTML form controls&lt;/a&gt; - I shared the other week how all the buttons looked the same. These will certainly help you stand out.&lt;/p&gt;

&lt;h3&gt;
  
  
  🔒 Security &amp;amp; Privacy &lt;a href="https://www.alexhyett.com/newsletter/becoming-more-nostalgic-in-my-old-age/#security-and-privacy" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://beko.famkos.net/2026/07/27/id-not-buy-a-lg-monitor/" rel="noopener noreferrer"&gt;I’d not buy a LG monitor&lt;/a&gt; - In 2026 even your monitor installs spyware on your computer without you knowing. I hope LG lose a lot of customers over this.&lt;/p&gt;

&lt;h3&gt;
  
  
  🤖 AI &lt;a href="https://www.alexhyett.com/newsletter/becoming-more-nostalgic-in-my-old-age/#ai" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://resobscura.substack.com/p/quality-non-fiction-books-are-the" rel="noopener noreferrer"&gt;Quality non-fiction books are the antithesis of AI slop&lt;/a&gt; - We may still need to start hoarding old non-fiction text books like this (see link below):&lt;/p&gt;

&lt;p&gt;&lt;a href="https://futurism.com/artificial-intelligence/ai-companies-destroying-rare-books" rel="noopener noreferrer"&gt;AI Companies Are Buying Antique Books, Ingesting Their Contents to Train Models, and Then Destroying Them at Incredible Scale&lt;/a&gt; - AI companies are buying books from second hand book sellers in bulk and cutting off the bindings to scan them quickly.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://beej.us/blog/data/ai-making/" rel="noopener noreferrer"&gt;On Making&lt;/a&gt; - I like this analogy. If I asked a carpenter to build me a new porch I wouldn't proudly show it off to everyone as if I had built it. However people do this all the time with AI.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://glyphack.com/attention/" rel="noopener noreferrer"&gt;It's getting harder to focus every day&lt;/a&gt; - Our attention spans were already being attacked tiktoks, shorts and reels. Now we have LLMs to destroy what little concentration we have left. It is almost as if this was all planned.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://obryant.dev/p/2x-not-10x/" rel="noopener noreferrer"&gt;2x, not 10x: coding with LLMs in 2026&lt;/a&gt; - From my experience with LLMs 2x seems realistic. This only covers the initial creation of the code though. I think if you factor in maintenance and bugs on a codebase you no longer understand then it will be less than that.&lt;/p&gt;

&lt;h3&gt;
  
  
  🏢 Tech Industry &lt;a href="https://www.alexhyett.com/newsletter/becoming-more-nostalgic-in-my-old-age/#tech-industry" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://ptrchm.com/posts/nothing-works-and-everyone-is-euphoric/" rel="noopener noreferrer"&gt;If coding has been solved, why does software keep getting worse?&lt;/a&gt; - Even before AI software was getting worse but I think it has definitely accelerated the problem. As I mentioned in my post, software had to be meticulously tested before being released as there was no way of patching it once it was out there. Now companies will release software full of bugs and worry about it later.&lt;/p&gt;

&lt;h3&gt;
  
  
  🎮 Gaming &lt;a href="https://www.alexhyett.com/newsletter/becoming-more-nostalgic-in-my-old-age/#gaming" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://brennan.day/playing-the-games-we-have/" rel="noopener noreferrer"&gt;Playing the Games We Have&lt;/a&gt; - I have been enjoying emulated games a lot recently. The Steam Deck is great and can play everything from SNES up to PS3. You can play them all offline too. I even spent an hour the other day playing the GameBoy colour version of Tetris. "Back in my day" I only had the black and white version.&lt;/p&gt;

&lt;h3&gt;
  
  
  🧠 Miscellaneous &lt;a href="https://www.alexhyett.com/newsletter/becoming-more-nostalgic-in-my-old-age/#miscellaneous" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://refactoringenglish.com/blog/why-i-stopped-creating-content/" rel="noopener noreferrer"&gt;Why I Stopped "Creating Content"&lt;/a&gt; - I am not a big fan of the word "content" either and generally say I am recording a video or writing a blog post.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://glinscott.github.io/beam-engine/" rel="noopener noreferrer"&gt;The Beam Engine&lt;/a&gt; - I love all the illustrations they have put into this explanation. If only all tutorials were this good.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://daverupert.com/2026/07/number-chart-go-up/" rel="noopener noreferrer"&gt;Double your business with companies you like&lt;/a&gt; - We all need to do this more. Yes it is cheaper and more convenient to buy a book on Amazon than the independent book store you like to look around on the weekend. However, that independent bookstore might not exist without you buying something but Amazon is going to be fine without your sale.&lt;/p&gt;

&lt;p&gt;If you are ever near my neck of the woods in the UK, &lt;a href="https://www.store104.co.uk/" rel="noopener noreferrer"&gt;Store 104 in Rochester&lt;/a&gt; and &lt;a href="https://harbourbooks.org/" rel="noopener noreferrer"&gt;Harbour Books in Whitstable&lt;/a&gt; are both very good.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://gadgeteer.co.za/it-seems-a-lot-like-dead-internet-has-actually-come-true/" rel="noopener noreferrer"&gt;It Seems a Lot Like Dead Internet Has Actually Come True&lt;/a&gt; - This is certainly true for all the main text social media platforms. X, LinkedIn and Reddit I am pretty sure is 60-80% bots at this point. Once video generation gets better and cheaper it will be coming for the other platforms too.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://lapcatsoftware.com/articles/2026/7/14.html" rel="noopener noreferrer"&gt;Apple should be ashamed of its hostile App Store rating system&lt;/a&gt; - My app &lt;a href="https://habitted.app/" rel="noopener noreferrer"&gt;HabitTed&lt;/a&gt; only has one review on the AppStore which basically makes it invisible unless you search for the exact phrase "habitted - habit tracker". I can see why people end up paying for fake reviews.&lt;/p&gt;




&lt;h2&gt;
  
  
  💬 Quote of the Week &lt;a href="https://www.alexhyett.com/newsletter/becoming-more-nostalgic-in-my-old-age/#quote-of-the-week" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;“Would you tell me, please, which way I ought to go from here?” “That depends a good deal on where you want to get to,” said the Cat.&lt;br&gt;&lt;br&gt;
“I don’t much care where—” said Alice.&lt;br&gt;&lt;br&gt;
“Then it doesn’t matter which way you walk,” said the Cat.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;From "Alice's Adventures in Wonderland" by Lewis Carroll.&lt;/p&gt;

</description>
      <category>tech</category>
      <category>nostalgia</category>
    </item>
    <item>
      <title>But At What Cost?</title>
      <dc:creator>Alex Hyett</dc:creator>
      <pubDate>Sun, 16 Aug 2026 12:00:00 +0000</pubDate>
      <link>https://dev.to/alexhyettdev/but-at-what-cost-o6b</link>
      <guid>https://dev.to/alexhyettdev/but-at-what-cost-o6b</guid>
      <description>&lt;p&gt;As a race, humans are really bad at doing cost benefit analysis. We might try and weigh up the pros and cons but we all have a tendency to exaggerate the pros if they are beneficial to us and downplay the cons that we can't directly see. This is also the case if the downsides are not immediate but will affect us at some point in the future.&lt;/p&gt;

&lt;p&gt;We see this pattern throughout history. We find something useful or pleasurable and later discover that it is harmful or unethical, and then continue doing it for another 50 years.&lt;/p&gt;

&lt;h2&gt;
  
  
  Asbestos &lt;a href="https://www.alexhyett.com/newsletter/but-at-what-cost/#asbestos" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;Take asbestos for example. It has been used for hundreds of years, it is dirt cheap, strong and fire resistant. So we used it everywhere in tiles, in furniture and even in clothing.&lt;/p&gt;

&lt;p&gt;The first documented death from asbestos was in 1906. In 1918 insurers stopped covering asbestos workers due to the known health risks.&lt;/p&gt;

&lt;p&gt;It took until 1999 to completely ban it in the UK and until 2024 in the US. We knew it was killing people but we kept using it because it was cheap and it didn't directly affect those benefiting from the cost savings.&lt;/p&gt;

&lt;h2&gt;
  
  
  Smoking &lt;a href="https://www.alexhyett.com/newsletter/but-at-what-cost/#smoking" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;People have smoked tobacco for years and it was introduced to Europe by Columbus in 1492. Smoking was seen as cool, and a way to help you relax. It was given to soldiers in WWI and WWII to help with the stresses of war.&lt;/p&gt;

&lt;p&gt;As early as 1912 we saw evidence that smoking caused lung cancer. In the 1940s it was common to see adverts from tobacco companies featuring doctors saying their brand was healthier than others. It wasn't until the study in 1950 that people started taking the link seriously.&lt;/p&gt;

&lt;p&gt;Unlike asbestos though, cigarettes haven't been banned but at least smoking in public places has (in a lot of countries) and it is becoming less popular over time. Still in some countries as much as 30% of the population still smoke.&lt;/p&gt;

&lt;h2&gt;
  
  
  Meat &lt;a href="https://www.alexhyett.com/newsletter/but-at-what-cost/#meat" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;The same is true for the meat industry. I think we all know that our obsession with eating meat is damaging the environment and the way the animals are treated is ethically wrong. Livestock production counts for 14-18% of greenhouse gas emissions with the &lt;a href="https://www.bbc.co.uk/news/explainers-59232599" rel="noopener noreferrer"&gt;majority coming from cows&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I was vegan for a few years but I have since reintroduced meat back into my diet at a reduced amount. I don't consume dairy products and I very rarely eat beef. It is mostly just chicken, fish, and some pork.&lt;/p&gt;

&lt;p&gt;We have meat free dinners 2-3 times a week. I switched back to eating meat mostly for health and convenience. I am not the greatest cook and found myself resorting more and more to processed vegan alternatives than whole foods which wasn't great.&lt;/p&gt;

&lt;p&gt;I always buy free range eggs and chicken but I know that "free range" isn't what we think it is and they still spend most of their lives in cramped conditions. It is easy to ignore the negatives when they don't affect us directly.&lt;/p&gt;

&lt;h2&gt;
  
  
  AI &lt;a href="https://www.alexhyett.com/newsletter/but-at-what-cost/#ai" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;You might have guessed where this was heading.&lt;/p&gt;

&lt;p&gt;The same pattern can be seen with people's AI usage. AI allows us to generate code, images, text, and video. In the past I have used AI to generate some useful personal tools and funny images. AI allows people to create things they wouldn't otherwise have the skills or time to create.&lt;/p&gt;

&lt;p&gt;As with all the above examples, few people consider the negative effects and only see how it benefits them.&lt;/p&gt;

&lt;p&gt;As I write this, in my area of the UK, it hasn't rained properly for nearly 2 months. The majority of the country is in a drought and all the fields look dead. The rest of Europe is suffering a similar fate with wildfires cropping up everywhere.&lt;/p&gt;

&lt;p&gt;Despite this, the UK still plans on building over 100 data centres over the next few years due to the popularity of AI. It is difficult to get direct numbers for how much water is used for these data centres as it depends on how they are cooled. Those with evaporative cooling towers use millions of gallons of water per month whereas most are now built with closed loop systems which use less but still require a lot of water on the initial fill.&lt;/p&gt;

&lt;p&gt;Even if the data centres aren't using much water they still require a huge amount of electricity (20 MW to 1 GW). The proposed plans are likely to double the UK's energy usage. Some of this power will come from renewable sources but the increase strain will cause more to come from fossil fuels and nuclear which contribute to greenhouse gases and water usage.&lt;/p&gt;

&lt;p&gt;I have only focused on the environmental impacts here and I haven't even touched on &lt;a href="https://news.harvard.edu/gazette/story/2025/11/is-ai-dulling-our-minds/" rel="noopener noreferrer"&gt;cognitive decline&lt;/a&gt;, the &lt;a href="https://www.techspot.com/news/113277-ai-firms-quietly-buying-destroying-millions-printed-books.html" rel="noopener noreferrer"&gt;destroying of books&lt;/a&gt; or the ethical or legal implications of the training data used.&lt;/p&gt;

&lt;p&gt;I am not going to tell you to stop using AI but just to consider whether the benefits for yourself are worth the cost. Do you need to use AI for every little code change or could some of it be done manually?&lt;/p&gt;

&lt;p&gt;Local AI doesn't solve everything as it still uses more power and is still trained on illegally obtained datasets. It doesn't however have the same environmental impact or result in as much cognitive decline (due to lack of capability) as cloud based models.&lt;/p&gt;

&lt;p&gt;I plan on doing a detailed analysis of the pros and cons of AI in the future. Personally for me the costs outweigh the benefits so I won't be using AI anymore.&lt;/p&gt;




&lt;h2&gt;
  
  
  ❤️ Picks of the Week &lt;a href="https://www.alexhyett.com/newsletter/but-at-what-cost/#picks-of-the-week" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;h3&gt;
  
  
  🛠️ Tools &lt;a href="https://www.alexhyett.com/newsletter/but-at-what-cost/#tools" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://scottwillsey.com/building-and-shipping-mac-and-ios-apps-without-ever-opening-xcode/" rel="noopener noreferrer"&gt;Building and shipping Mac and iOS apps without opening Xcode&lt;/a&gt; - I wish I found this when I was developing HabitTed. I did most of the coding in Zed and switched back to XCode to build and debug.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://lalitm.com/post/git-history/" rel="noopener noreferrer"&gt;The git history command&lt;/a&gt; - I knew about &lt;code&gt;git history&lt;/code&gt; of course but didn't know there were more commands that could be used with it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://alexwlchan.net/2026/no-main-hook/" rel="noopener noreferrer"&gt;A Git hook to prevent committing directly to main&lt;/a&gt; - There was a VS Code extension that I used to use for this but this is a better way.&lt;/p&gt;

&lt;h3&gt;
  
  
  💻 Programming &lt;a href="https://www.alexhyett.com/newsletter/but-at-what-cost/#programming" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://danq.me/2026/07/09/your-app-could-have-been-a-webpage/" rel="noopener noreferrer"&gt;Your 'app' could have been a webpage (so I fixed it for you)&lt;/a&gt; - I love it when people reverse engineer things and get equally annoyed by everything being an app.&lt;/p&gt;

&lt;h3&gt;
  
  
  🔒 Security &amp;amp; Privacy &lt;a href="https://www.alexhyett.com/newsletter/but-at-what-cost/#security-and-privacy" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://allaboutcookies.org/eu-mandatory-distracted-driver-system" rel="noopener noreferrer"&gt;Every new car sold in the European Union must include a driver monitoring camera&lt;/a&gt; - Well this is disturbing. Is anyone else sick of living in a Black Mirror episode?&lt;/p&gt;

&lt;p&gt;&lt;a href="https://jacroe.com/journal/post/2026-07-14-01-19-00_violentmonkey-sanitize-youtube-share-links" rel="noopener noreferrer"&gt;Sanitize YouTube Share Links&lt;/a&gt; - More tracking we need to try and avoid.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://the.unknown-universe.co.uk/privacy-security/vpn-humiliation/" rel="noopener noreferrer"&gt;The Great VPN Humiliation: Why the Government Actually Backed Down&lt;/a&gt; - I am glad the UK government gave up trying to ban VPNs.&lt;/p&gt;

&lt;h3&gt;
  
  
  🎨 Design &amp;amp; UX &lt;a href="https://www.alexhyett.com/newsletter/but-at-what-cost/#design-and-ux" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://clocks.dev" rel="noopener noreferrer"&gt;Collection of Digital Clock Designs&lt;/a&gt; - These are really cool and creative, although I don't know if I could use some of these on a daily basis.&lt;/p&gt;

&lt;h3&gt;
  
  
  🤖 AI &lt;a href="https://www.alexhyett.com/newsletter/but-at-what-cost/#ai-1" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://hamishcampbell.com/our-failure-to-mediate-the-mess/" rel="noopener noreferrer"&gt;Our failure to mediate the mess&lt;/a&gt; - As a developer I am pro-tech. I grew up in an era where each innovation made our lives better with minimal impact and zero privacy invasions. As I have said above, we shouldn't put technological progress above everything else though.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://adi.bio/reality" rel="noopener noreferrer"&gt;Punch yourself in the face with reality&lt;/a&gt; - This is definitely true. People made useless software before and they are just making more with AI.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.sandordargo.com/blog/2026/07/15/how-ai-kills-flow" rel="noopener noreferrer"&gt;The Prompt-Wait-Evaluate Loop: How AI Kills Flow Without You Noticing&lt;/a&gt; - When I had to use AI for work it was the context switching that bothered me the most.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.theocharis.dev/blog/llm-critics-are-right-i-use-llms-anyway/" rel="noopener noreferrer"&gt;The LLM Critics Are Right. I Use LLMs Anyway&lt;/a&gt; - &lt;a href="https://en.wikipedia.org/wiki/Cognitive_dissonance" rel="noopener noreferrer"&gt;"Cognitive dissonance"&lt;/a&gt; describes AI perfectly. It is the same as an animal lover still eating meat. Many developers know and agree with all the downsides of AI but continue to use it anyway.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.mixfont.com/experiments/decoy-font" rel="noopener noreferrer"&gt;Decoy Font&lt;/a&gt; - I am not sure this is the best way to combat AI web-scraping.&lt;/p&gt;

&lt;h3&gt;
  
  
  🎮 Gaming &lt;a href="https://www.alexhyett.com/newsletter/but-at-what-cost/#gaming" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://18words.com/" rel="noopener noreferrer"&gt;18 Words&lt;/a&gt; - My wife loves word games and we both found this quite fun. I must admit I couldn't get all 18 in the time though.&lt;/p&gt;




&lt;h2&gt;
  
  
  💬 Quote of the Week &lt;a href="https://www.alexhyett.com/newsletter/but-at-what-cost/#quote-of-the-week" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;Our new challenge as little snowflake humans will be to prove we aren't language models.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;From the article &lt;a href="https://maggieappleton.com/forest-talk" rel="noopener noreferrer"&gt;The Expanding Dark Forest and Generative AI&lt;/a&gt; by Maggie Appleton.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>tech</category>
    </item>
    <item>
      <title>Uniqueness is the key to standing out</title>
      <dc:creator>Alex Hyett</dc:creator>
      <pubDate>Sun, 02 Aug 2026 12:00:00 +0000</pubDate>
      <link>https://dev.to/alexhyettdev/uniqueness-is-the-key-to-standing-out-1e30</link>
      <guid>https://dev.to/alexhyettdev/uniqueness-is-the-key-to-standing-out-1e30</guid>
      <description>&lt;p&gt;The other day I saw this post about "Stolen Buttons". It is a browser extension that "steals" a button from every website that you visit. You can see the creators collection of "stolen" buttons here: &lt;a href="https://anatolyzenkov.com/stolen-buttons" rel="noopener noreferrer"&gt;Stolen Buttons | Anatoly Zenkov&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you scroll through the list there will likely be a few that catch your eye, as they are a little bit different. It might be the shape, the colour, or the font used that makes them stand out.&lt;/p&gt;

&lt;p&gt;The majority of the buttons though are flat and pill shaped. They are usually blue or purple.&lt;/p&gt;

&lt;p&gt;A lot of this is due to the prevalence of CSS and UI frameworks like Tailwind and Bootstrap over the last decade. These frameworks have made it a lot easier for developers to put together websites and UI designs but without additional customisation everything starts looking the same.&lt;/p&gt;

&lt;p&gt;I must admit I am guilty of this as well. Over the years, a lot of the personality and uniqueness has slowly been removed from my personal site which is a shame.&lt;/p&gt;

&lt;p&gt;I remember one of the websites I made as a teenager had a negative (blue) image of my hand that morphed into tentacles. I had another that featured a 3D person that I made in blender that pointed to the various links when you hovered over them. My website now is a lot more generic and probably not that memorable for people who visit it.&lt;/p&gt;

&lt;p&gt;With people increasingly using AI for website design, we see this problem keep coming up again. Instead of Bootstrap or Tailwind websites, we have Claude websites.&lt;/p&gt;

&lt;p&gt;Claude has a very distinctive style which wasn't that common before AI coding became prevalent. You can see some examples here:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://xcancel.com/biiordache/status/2045606787001282774" rel="noopener noreferrer"&gt;Example 1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://xcancel.com/Siddharth87/status/2045244396308934685" rel="noopener noreferrer"&gt;Example 2&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Websites generated with AI will typically have:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Inter + JetBrains Mono font&lt;/li&gt;
&lt;li&gt;Blinking Dot&lt;/li&gt;
&lt;li&gt;Cards with a coloured border on the left&lt;/li&gt;
&lt;li&gt;Overuse of gradients&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There is a vibe coded guide on how LLMs work that shows a lot of these patterns: &lt;a href="https://ynarwal.github.io/how-llms-work/" rel="noopener noreferrer"&gt;How LLMs Work — A Visual Deep Dive&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Of course there have been attempts to come up with AI skills to make your designs better. They do this by removing a lot of these AI tells and give the models more input into how to style the websites.&lt;/p&gt;

&lt;p&gt;All you need to do to achieve a unique website is to download some markdown files used by thousands of other developers.&lt;/p&gt;

&lt;p&gt;In case you missed my obvious sarcasm, I am not suggesting you do this.&lt;/p&gt;

&lt;p&gt;The web used to be a varied unique place with every website looking a little bit different. Some of this is still prevalent in the IndieWeb but even there many people are using &lt;a href="https://bearblog.dev/" rel="noopener noreferrer"&gt;Bear Blog&lt;/a&gt; which makes all their websites look the same.&lt;/p&gt;

&lt;p&gt;The uniqueness comes from people adding their own unique styles and personalities into their designs. They may not be perfect but at least they are different.&lt;/p&gt;

&lt;p&gt;The more we get bombarded with AI slop the better we are at filtering it out. The same happened with adverts. As the web filled up with ads we got better at ignoring them. I couldn't tell you what the last ad I watched was about as my brain just ignored it.&lt;/p&gt;

&lt;p&gt;I plan to add some more uniqueness to my website such hand drawn elements and different styles.&lt;/p&gt;

&lt;p&gt;Here are some good examples to inspire you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://owltastic.com/" rel="noopener noreferrer"&gt;Meagan Fisher Couldwell&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://braydenfriesen.com/" rel="noopener noreferrer"&gt;Brayden Friesen&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://peteroravec.com/" rel="noopener noreferrer"&gt;Peter Oravec - Front-end Developer | Javascript | Angular | Node.js&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dustinbrett.com/" rel="noopener noreferrer"&gt;daedalOS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://bruno-simon.com/" rel="noopener noreferrer"&gt;Bruno's&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://rafa.design/" rel="noopener noreferrer"&gt;Rafa's website&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.adamhartwig.co.uk/" rel="noopener noreferrer"&gt;Adam Hartwig&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kaisermann.me/" rel="noopener noreferrer"&gt;kaisermann | web engineer&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  ❤️ Picks of the Week &lt;a href="https://www.alexhyett.com/newsletter/uniqueness-is-the-key-to-standing-out/#picks-of-the-week" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;h3&gt;
  
  
  🛠️ Tools &lt;a href="https://www.alexhyett.com/newsletter/uniqueness-is-the-key-to-standing-out/#tools" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://evilbit.de/dns-resolver-guide.html" rel="noopener noreferrer"&gt;Choosing a Public DNS Resolver&lt;/a&gt; - I use Pi-Hole with a custom block list but I fallback to a standard DNS for everything else. There is a good list of DNS servers you can use here whether you have a Pi-hole or not to give you a bit more protection.&lt;/p&gt;

&lt;h3&gt;
  
  
  💻 Programming &lt;a href="https://www.alexhyett.com/newsletter/uniqueness-is-the-key-to-standing-out/#programming" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://brennan.day/publishing-my-eleventy-blog-to-the-atmosphere-with-standard-site/" rel="noopener noreferrer"&gt;Publishing My Eleventy Blog to the ATmosphere with Standard.site&lt;/a&gt; - I haven't gone down the Standard.site route yet but this is a great guide if you wanted to.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://stevekrouse.com/learn-to-code" rel="noopener noreferrer"&gt;Learning to code is still worthwhile&lt;/a&gt; - In addition to this, the people saying AI is great are those that already know how to code and can steer or correct it's mistakes.&lt;/p&gt;

&lt;h3&gt;
  
  
  🔒 Security &amp;amp; Privacy &lt;a href="https://www.alexhyett.com/newsletter/uniqueness-is-the-key-to-standing-out/#security-and-privacy" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://twitter.com/i/status/2071277885646868536" rel="noopener noreferrer"&gt;Instagram is incorporating users' photos in ads for Meta Glasses&lt;/a&gt; - Everything about Meta's Glasses are gross. At least the group "Everyone Hates Elon" is trying to &lt;a href="https://futurism.com/future-society/new-meta-advertisement-brutal-glasses-epstein" rel="noopener noreferrer"&gt;educate people&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  🏢 Tech Industry &lt;a href="https://www.alexhyett.com/newsletter/uniqueness-is-the-key-to-standing-out/#tech-industry" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://kotaku.com/playstation-store-movies-digital-studio-canal-terminator-2000711013" rel="noopener noreferrer"&gt;PlayStation Is Deleting 551 Movies from Customers' Accounts&lt;/a&gt; - I have only ever bought one movie digitally only because it was the same price as renting it. My kids really wanted to watch the animated Grinch at Xmas one year. All the other movies I own are on Blu-ray and DVD, good luck deleting those.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dervis.de/physical/" rel="noopener noreferrer"&gt;The case for physical media ownership&lt;/a&gt; - Still not sure about buying physical media? There are a lot of good reasons why you should here. I must admit I am a bit nervous about all the Steam games I own. I really need to back them up and see if they can be played offline.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dustycloud.org/blog/what-happened-to-the-fight-for-the-internet/" rel="noopener noreferrer"&gt;What happened to the fight for the Internet?&lt;/a&gt; - I think a lot of this is the fact that for many people under say 35, don't remember what the internet used to be like. All they know is the 5 big corporations.&lt;/p&gt;

&lt;h3&gt;
  
  
  🤖 AI &lt;a href="https://www.alexhyett.com/newsletter/uniqueness-is-the-key-to-standing-out/#ai" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://hidde.blog/ai-greener-choices/" rel="noopener noreferrer"&gt;AI and greener choices&lt;/a&gt; - I am going to do a post on all the pros and cons of AI because I don't think there is enough information in one place for people to make an informed decision. If you do want to use AI then you need to be conscious of it's environmental impact.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://jayacunzo.com/blog/your-move-chief" rel="noopener noreferrer"&gt;The best response to AI slop and online noise is from Robin Williams&lt;/a&gt; - What makes art, writing and all other forms of expression useful is the persons unique experiences that go into it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.autodidacts.io/holistic-optimization/" rel="noopener noreferrer"&gt;What Should We Optimize Away?&lt;/a&gt; - I also enjoy programming and learning new skills. If it isn't giving us time back then what is the point?&lt;/p&gt;

&lt;p&gt;&lt;a href="https://spectrum.ieee.org/small-language-models-ai-pharmaceuticals" rel="noopener noreferrer"&gt;Small AI Models Gain Traction In places with unreliable networks&lt;/a&gt; - I am hoping these large paywalled models will seem ridiculous in the future and everyone will just use small efficient models that are designed for the job.&lt;/p&gt;

&lt;h3&gt;
  
  
  🧠 Miscellaneous &lt;a href="https://www.alexhyett.com/newsletter/uniqueness-is-the-key-to-standing-out/#miscellaneous" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://blog.mikebowler.ca/2026/07/03/co2-and-decision-making/" rel="noopener noreferrer"&gt;The bottleneck might be the air in the room&lt;/a&gt; - I have a CO2 sensor in my office. When I am not in there it sits around 400 - 500 ppm. If I am in there with the door shut however it can go up to above 1,500 ppm. I definitely notice the difference in my concentration levels.&lt;/p&gt;




&lt;h2&gt;
  
  
  💬 Quote of the Week &lt;a href="https://www.alexhyett.com/newsletter/uniqueness-is-the-key-to-standing-out/#quote-of-the-week" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;Most people are just trying to get through the day. Here's what I want you to commit to — learn to get something valuable from each day. Don't just get through it-absorb something from it. Learn from it. Let the day teach you. Join the university of life. What a difference that will make in your future. Commit yourself to learning; commit yourself to absorbing; be like a sponge. Get whatever you can from each day. Don't miss any opportunity to learn&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;From the book &lt;a href="https://www.alexhyett.com/book-notes/the-art-of-exceptional-living/" rel="noopener noreferrer"&gt;The Art of Exceptional Living&lt;/a&gt; by Jim Rohn.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>design</category>
    </item>
    <item>
      <title>Reducing my screen time with another device...</title>
      <dc:creator>Alex Hyett</dc:creator>
      <pubDate>Sun, 19 Jul 2026 12:00:00 +0000</pubDate>
      <link>https://dev.to/alexhyettdev/reducing-my-screen-time-with-another-device-8f6</link>
      <guid>https://dev.to/alexhyettdev/reducing-my-screen-time-with-another-device-8f6</guid>
      <description>&lt;p&gt;In an attempt to reduce the amount of time I spend staring at my phone, I have bought myself another device. At least that is the lie I told myself for buying yet another gadget because it looked cool.&lt;/p&gt;

&lt;p&gt;After seeing &lt;a href="https://blog.omgmog.net/post/xteink-x4-e-ink-reader/" rel="noopener noreferrer"&gt;Max Glenister&lt;/a&gt; and &lt;a href="https://neilzone.co.uk/2026/03/initial-thoughts-on-the-tiny-xteink-x4-ereader/" rel="noopener noreferrer"&gt;Neil Brown&lt;/a&gt; speak so highly of this device I just had to buy the &lt;a href="https://www.xteink.com/products/xteink-x4" rel="noopener noreferrer"&gt;XTEINK X4 e-reader&lt;/a&gt;. Note, this is not sponsored in any way I just wanted to share it with you!&lt;/p&gt;

&lt;p&gt;This is the 3rd e-reader that I own, so I definitely didn't need this device. I also have an old Kindle which I use exclusively for reading Kindle Unlimited books and a Kobo Clara Colour which is my main reading device.&lt;/p&gt;

&lt;p&gt;This device though is different to the others. Its dimensions are 114 x 69 x 5.9mm which is just a little bit bigger than a credit card. It doesn't have a touchscreen but has physical buttons on the bottom and the side. There is also no backlight.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fg70h5qe725sdbbamox5n.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fg70h5qe725sdbbamox5n.jpg" alt="XTEINK X4 with a 10p and 20p for size comparison" width="799" height="414"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The device comes with a 32 GB SD card, some magnetic rings and a screen protector. The idea is that you stick the magnetic rings on the back of your phone case and then the device can stick to it. I have a MagSafe case anyway so the device sticks to that quite well.&lt;/p&gt;

&lt;p&gt;This thing is really thin and light, you hardly even notice it sitting in your pocket.&lt;/p&gt;

&lt;p&gt;Like all gadgets of this type, this thing came from China. I ordered it on 27th June and it arrived to me in the UK on the 9th July, which is not too bad.&lt;/p&gt;

&lt;h2&gt;
  
  
  Software &lt;a href="https://www.alexhyett.com/newsletter/reducing-my-screen-time-with-another-device/#software" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;I stayed with the stock firmware for around 15 minutes. Luckily it was in English so I didn't have to work out how to change the language but it is pretty basic.&lt;/p&gt;

&lt;p&gt;There is bunch of different custom firmware for this device all forked from CrossPoint. I didn't bother looking around at the different firmware but I might do if I find an interesting one in future. I jumped straight to using &lt;a href="https://github.com/obijuankenobiii/inx" rel="noopener noreferrer"&gt;ink&lt;/a&gt;. I installed it but using the web flash method and it was all done in a few minutes.&lt;/p&gt;

&lt;p&gt;The device is really fast and the button layout is intuitive. The 2 buttons on the bottom are actually 4 buttons. On the side is the power button and another large button that is actually 2 buttons.&lt;/p&gt;

&lt;p&gt;For turning the page you can either click the power button (you hold it down to turn it on/off) or use the side buttons or the bottom right buttons. I find myself clicking the power button the most as it sits nicely where my thumb or index finger sit.&lt;/p&gt;

&lt;p&gt;This device is definitely fun to use and I have been using it more than looking at my phone which is a plus.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6zfmc701p0k4bbwomp95.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6zfmc701p0k4bbwomp95.jpg" alt="Me holding the X4 showing the text on the page" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;One feature I really liked with this firmware is the ability to add files via wifi. You can then navigate to the device using the IP address and add books and change the device settings. It also apparently connects to calibre but I have tried that yet.&lt;/p&gt;

&lt;h2&gt;
  
  
  Price &lt;a href="https://www.alexhyett.com/newsletter/reducing-my-screen-time-with-another-device/#price" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;In total the device with shipping cost me £51.90 ($70.10) which is not bad for an impulse purchase. For this price point I think this device is great. It is fun to keep in your pocket and do find myself reading more rather than just scrolling on my phone.&lt;/p&gt;




&lt;h2&gt;
  
  
  ❤️ Picks of the Week &lt;a href="https://www.alexhyett.com/newsletter/reducing-my-screen-time-with-another-device/#picks-of-the-week" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;h3&gt;
  
  
  🤖 AI &lt;a href="https://www.alexhyett.com/newsletter/reducing-my-screen-time-with-another-device/#ai" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://kevquirk.com/ai-blog-questions-challenge" rel="noopener noreferrer"&gt;AI Blog Questions Challenge&lt;/a&gt; - I think these questionnaires are really interesting to see how people are using AI. I plan on doing one of these soon as well.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://zarar.dev/run-a-local-coding-model-with-pi-and-lm-studio" rel="noopener noreferrer"&gt;Run a local coding model with pi and LM Studio&lt;/a&gt; - This is a good tutorial if you wanted to run some LLMs locally and do some coding.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.canirun.ai/" rel="noopener noreferrer"&gt;CanIRun.ai — Can your machine run AI models?&lt;/a&gt; - This is great website to see what local models will run on your computer.&lt;/p&gt;

&lt;h3&gt;
  
  
  🛠️ Tools &lt;a href="https://www.alexhyett.com/newsletter/reducing-my-screen-time-with-another-device/#tools" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://bunny.net/blog/were-making-bunny-dns-free/" rel="noopener noreferrer"&gt;We are making Bunny DNS free&lt;/a&gt; - This is great. Hopefully this will be a good alternative to Cloudflare.&lt;/p&gt;

&lt;h3&gt;
  
  
  💻 Programming &lt;a href="https://www.alexhyett.com/newsletter/reducing-my-screen-time-with-another-device/#programming" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://adactio.com/journal/22613" rel="noopener noreferrer"&gt;Enhancing with CSS Grid Lanes&lt;/a&gt; - CSS is getting masonry layouts. It is not supported fully yet but hopefully in a few years it will be across all browsers.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://nelson.cloud/.gitignore-isnt-the-only-way-to-ignore-files-in-git/" rel="noopener noreferrer"&gt;.gitignore Isn't the only way to ignore files in Git&lt;/a&gt; - I never knew there were so many way to ignore files in git. I can think of quite a few uses for a machine wide gitignore and didn't know this was an option.&lt;/p&gt;

&lt;h3&gt;
  
  
  🔒 Security &lt;a href="https://www.alexhyett.com/newsletter/reducing-my-screen-time-with-another-device/#security" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://roman.pt/posts/linkedin-backdoor/" rel="noopener noreferrer"&gt;A backdoor in a LinkedIn job offer&lt;/a&gt; - With developers getting laid off this way and that scammers are naturally feasting on people's desperation. If you have to download any code as part of the interview process be extra vigilant.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://9to5mac.com/2026/06/23/lastpass-notifies-users-of-yet-another-data-breach/" rel="noopener noreferrer"&gt;LastPass notifies users of yet another data breach&lt;/a&gt; - If you are still using LastPass even after their last breach please find somewhere else and change all your passwords. I now have my passwords on a self hosted VaultWarden instance that is only accessible from my home network. It is working well for me.&lt;/p&gt;

&lt;h3&gt;
  
  
  🏢 Tech Industry &lt;a href="https://www.alexhyett.com/newsletter/reducing-my-screen-time-with-another-device/#tech-industry" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.bloomberg.com/news/articles/2026-06-25/ford-has-been-rehiring-quality-inspectors-after-ai-fell-short" rel="noopener noreferrer"&gt;Ford rehires 350 engineers after AI fails to preserve expertise or train juniors&lt;/a&gt; - Yay, lets hope the mass layoffs due to AI are coming to an end.&lt;/p&gt;

&lt;h3&gt;
  
  
  🎮 Gaming &lt;a href="https://www.alexhyett.com/newsletter/reducing-my-screen-time-with-another-device/#gaming" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://hl2.slqnt.dev/" rel="noopener noreferrer"&gt;Half-Life 2 in a Browser&lt;/a&gt; - I know Half-Life 2 is quite old now but it still amazes me that it can run in the browser now.&lt;/p&gt;

&lt;h3&gt;
  
  
  📝 Blogging &lt;a href="https://www.alexhyett.com/newsletter/reducing-my-screen-time-with-another-device/#blogging" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://blog.jim-nielsen.com/2026/blogging-stating-the-obvious/" rel="noopener noreferrer"&gt;Blogging can just be stating the obvious&lt;/a&gt; - I have been trying to get back into blogging more but sometimes it is hard to come up with things to write about. This is a good reminder that you can write about anything, it's your blog.&lt;/p&gt;

&lt;h3&gt;
  
  
  🧠 Miscellaneous &lt;a href="https://www.alexhyett.com/newsletter/reducing-my-screen-time-with-another-device/#miscellaneous" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://andreklein.net/your-epub-is-fine-kobo-disagrees-blame-adobe/" rel="noopener noreferrer"&gt;Your ePub Is fine&lt;/a&gt; - It is interesting that even though files can have valid CSS they still fail to load due to Adobe using a standard that is over a decade old. At least there is an alternative by renaming the file.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://blog.elenarossini.com/w-social-public-institutions-and-the-theater-of-european-digital-sovereignty/" rel="noopener noreferrer"&gt;W Social, public institutions and the theater of European digital sovereignty&lt;/a&gt; - I really don't see many people signing up to W Social. Not when there are better social networks like Mastodon.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://devblogs.microsoft.com/oldnewthing/20260622-00/?p=112451" rel="noopener noreferrer"&gt;In memory of the man who put red and green squiggles under words&lt;/a&gt; - Everyone knows about the red squiggles but never about the man that came up with the idea.&lt;/p&gt;




&lt;h2&gt;
  
  
  👨‍💻 Latest from me &lt;a href="https://www.alexhyett.com/newsletter/reducing-my-screen-time-with-another-device/#latest-from-me" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;🎬 Video&lt;/strong&gt; - &lt;a href="https://www.alexhyett.com/videos/tried-building-app-with-ai-it-took-a-year/" rel="noopener noreferrer"&gt;I Tried Building a Real App With AI. It Took a Year.&lt;/a&gt; - I talk about the process of creating &lt;a href="https://habitted.app" rel="noopener noreferrer"&gt;HabitTed&lt;/a&gt; and the dangers of using AI to code for you. This video isn't public yet on YouTube so you get to view it slightly earlier.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;📝 Article&lt;/strong&gt; - &lt;a href="https://www.alexhyett.com/opting-for-privacy-in-webmentions/" rel="noopener noreferrer"&gt;Opting for privacy in webmentions&lt;/a&gt; - Last time I wrote about setting up webmentions on my website. I have now tweaked them a little to make them more privacy focused.&lt;/p&gt;

</description>
      <category>tech</category>
      <category>gadgets</category>
      <category>reading</category>
    </item>
    <item>
      <title>I Tried Building a Real App With AI. It Took a Year.</title>
      <dc:creator>Alex Hyett</dc:creator>
      <pubDate>Fri, 17 Jul 2026 12:00:00 +0000</pubDate>
      <link>https://dev.to/alexhyettdev/i-tried-building-a-real-app-with-ai-it-took-a-year-pfo</link>
      <guid>https://dev.to/alexhyettdev/i-tried-building-a-real-app-with-ai-it-took-a-year-pfo</guid>
      <description>&lt;p&gt;My wife and I have been looking for an app to track things like habits, hobbies, and when we last did certain chores.&lt;/p&gt;

&lt;p&gt;To be honest there are probably hundreds of different habit trackers on the App Store. Next to todo list apps they are supposed to be the easiest apps to create so it is not really that surprising there are so many options. But we must have tried dozens of different apps but none of them quite fit what we were looking for.&lt;/p&gt;

&lt;p&gt;Of course now we have AI, so this sort of thing should be easy to create. You just right a couple of prompts and AI will build it for you, while you sleep, or sip cocktails on the beach.&lt;/p&gt;

&lt;p&gt;As we shall see it didn't quite turn out that way.&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/LT0oHNk6wi4"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  Requirements and Existing Apps &lt;a href="https://www.alexhyett.com/videos/tried-building-app-with-ai-it-took-a-year/#requirements-and-existing-apps" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;So for this app I had a few requirements:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;We wanted to have the habits in a long list and not have to go through multiple pages to find them.&lt;/li&gt;
&lt;li&gt;We didn't want any data be stored in the cloud or on other peoples servers.&lt;/li&gt;
&lt;li&gt;We wanted to be able to use the gen-emojis from iOS 18 for some of the icons. It is a great option when the predefined icons don't fit.&lt;/li&gt;
&lt;li&gt;We needed to set goals on a daily, weekly, or monthly basis.&lt;/li&gt;
&lt;li&gt;It should be possible to have no goal and just count the number of occurrences. My wife sometimes gets headaches so she wanted to keep track of all of those as well.&lt;/li&gt;
&lt;li&gt;We wanted the ability to add notes. I wanted to be able to write down what exercises I did in each of my workouts and what speed I had got a song to when practicing guitar.&lt;/li&gt;
&lt;li&gt;We wanted to set reminders on habits, either every day or on specific days of the week or month.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;There is nothing in this list that is particularly groundbreaking so I had a look at the various options to see if something would work to save me having to develop something.&lt;/p&gt;

&lt;p&gt;We first tried the Streaks app. This is a completely free app on iOS and even has an Apple Health integration.&lt;/p&gt;

&lt;p&gt;This suited most of my needs but it couldn't do some of the requirements on this list:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The apps were in pages instead of a long list. When you have 20 things you want to track this can get pretty tedious flicking through all the pages. This app has won design awards so that is probably more of a me issue.&lt;/li&gt;
&lt;li&gt;My wife couldn't find suitable icons for some of the things she wanted to do. Hence wanting the ability to create your own.&lt;/li&gt;
&lt;li&gt;There was no way to count occurrences. You had to set how many times you wanted to do something every day. Which if you are tracking headaches isn't what you want as ideally you don't want any.&lt;/li&gt;
&lt;li&gt;She also realised she needed a way of turning off streaks. Streaks aren't always helpful for everything that you are tracking.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We tried a few more apps as well. There is a popular one called HabitKit and another one called Grit. I quite liked the GitHub style contribution charts of HabitKit but my wife, not being a developer wasn't really fussed by this. Grit was probably the closet to what we were looking for but still lacked a few features.&lt;/p&gt;

&lt;p&gt;To be honest I would have been quite happy with either HabitKit or Grit for my needs if it wasn't for one thing, the price.&lt;/p&gt;

&lt;p&gt;Now I don't mind paying for applications. I have lots of apps on my phone that I have bought as well as desktop software I have paid for. I am all for supporting indie developers but I also remember a time when an iPhone app was the price of a coffee.&lt;/p&gt;

&lt;p&gt;Grit on the other hand costs £9.99/month or £29.99/year. There is an option to buy a lifetime licence but it costs a whopping £44.99. That is nearly the cost of a new console game.&lt;/p&gt;

&lt;p&gt;It is the same story with HabitKit as well but not quite as much at £1.99/month or £11.99/year with a £29.99 lifetime option.&lt;/p&gt;

&lt;p&gt;Maybe I am just a stingy git but I don't want to add even more subscriptions to my budget I have enough as it is.&lt;/p&gt;

&lt;p&gt;So I set out to build one myself with the help of AI.&lt;/p&gt;

&lt;p&gt;I started this project in March last year. Cursor were giving away free credits and it was the perfect opportunity to see what AI was capable of. Up until this point I had mostly avoided using AI beyond simple chat questions. Given I had never developed anything in Swift before I needed all the help I can get.&lt;/p&gt;

&lt;p&gt;We decided on the name HabitTed and my wife even designed a cute bear logo.&lt;/p&gt;

&lt;h2&gt;
  
  
  AI Development Process &lt;a href="https://www.alexhyett.com/videos/tried-building-app-with-ai-it-took-a-year/#ai-development-process" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;If you haven't developed an iOS app before you are pretty much limited to using XCode if you want to test your application on a simulator and debug it. So there was a lot of back and forth between cursor and Xcode to try and get everything set up.&lt;/p&gt;

&lt;p&gt;This was just before Claude Code was released so this wasn't full agentic hands-off engineering. Instead, I broke down the development into lots of small tasks and went through them manually with the AI, testing each change as I went along.&lt;/p&gt;

&lt;p&gt;I started with a simple hello world application. Then added in the habit list, the ability to add a habit, edit a habit and so on.&lt;/p&gt;

&lt;p&gt;To be fair after about 6 hours over the course of a weekend, I had an app that appeared to work. It didn't do everything I wanted yet but you could create a habit with a custom icon, you could click on it to complete it, and it supported various goal options and even had iCloud syncing.&lt;/p&gt;

&lt;p&gt;Even though I had something working and only took 6 hours, I can't say it was a pleasant 6 hours.&lt;/p&gt;

&lt;p&gt;Usually when I complete a project, I am proud of what I have accomplished. Even if I had problems and things took longer than needed, I would finish it having learned something new.&lt;/p&gt;

&lt;p&gt;Those failures taught me something and any frustrations I had during development were usually worth it by the end and at least I learned not to make the same mistake again.&lt;/p&gt;

&lt;p&gt;However, after 6 hours I can't say I learnt much about Swift development.&lt;/p&gt;

&lt;p&gt;Whenever there was an error I would find myself copy and pasting the error message and asking AI to try and fix things. I was getting annoyed with the AI for not being good enough to solve the issue, but also annoyed with myself that I couldn't do it either.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Problems &lt;a href="https://www.alexhyett.com/videos/tried-building-app-with-ai-it-took-a-year/#the-problems" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;Even though I hadn't programmed in Swift before I have programmed in many other languages and looking at the code I could tell it wasn't good code.&lt;/p&gt;

&lt;p&gt;Each of the views was nearly a 1000 lines long. The compiler on XCode couldn't handle the length and was always telling me to break things down. Styling for things like buttons that looked the same had completely different code in different views. The whole thing was a bit of mess.&lt;/p&gt;

&lt;p&gt;So instead of relying on AI to try and fix the mess I decided to refactor it myself, manually, the old school way. I moved everything into separate views that were no more than 100 lines long and I fixed all the inconsistent code.&lt;/p&gt;

&lt;p&gt;I then tested the app some more to make sure everything worked properly and found even more problems.&lt;/p&gt;

&lt;p&gt;I found that the iCloud sync didn't actually work. It may have been syncing to iCloud but if you uninstalled the application and reinstalled it, it would just lose all your data.&lt;/p&gt;

&lt;p&gt;I also found that once I had added a lot of completions to my habits, things started to become really slow. I realised the stats I had on the details page were looping through all the habits to calculate them every single time you went on the page.&lt;/p&gt;

&lt;p&gt;I created some properties on the habits to store the stats instead, and moved the calculation to be done on habit completion, and then I realised the data model was overly complex and had some really weird naming. This led me to coming up with a data migration plan, otherwise habits would break whenever I changed the schema.&lt;/p&gt;

&lt;p&gt;Once everything was fixed, I added in some of the missing features such as reminders and different goal options.&lt;/p&gt;

&lt;p&gt;Then iOS 26 came out.&lt;/p&gt;

&lt;p&gt;I am not sure if the used AI a lot for development in Apple, but iOS 26 had a lot of bugs.&lt;/p&gt;

&lt;p&gt;I am really not a fan of the glass effect, so I turned on the reduce transparency accessibility option and this caused all sorts of problems in my app.&lt;/p&gt;

&lt;p&gt;I use dark mode everywhere but opening a habit caused the title bar to turn white but with white text too so you couldn't read anything.&lt;/p&gt;

&lt;p&gt;This is where AI really falls apart. iOS 26 had only just been released so AI couldn't help with any of the new changes. I even tried to convince it that iOS 26 was the latest version and it told me I must be mistaken.&lt;/p&gt;

&lt;p&gt;In the end I managed to solve some of my problems from reading blog posts from other developers and ultimately Apple fixed the transparency bug in 26.1.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Result &lt;a href="https://www.alexhyett.com/videos/tried-building-app-with-ai-it-took-a-year/#the-result" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;So after many months of development, and even more months of testing I finally have an app that I am happy enough to put my name against and the code is something I am happy to carry on maintaining.&lt;/p&gt;

&lt;p&gt;When it comes to releasing an app there is more than just the app itself, you have to put together a website and all the screenshots as well for the app listing. This always takes a lot longer than you anticipate.&lt;/p&gt;

&lt;p&gt;It is available on the App Store if you want to give it a try, I will leave a link in the description. It is free to use for up to 6 habits, and if you did want to support me you can unlock everything for the price of a single coffee.&lt;/p&gt;

&lt;p&gt;If it wasn't for AI, I probably wouldn't have started this app to begin with so for that I am thankful.&lt;/p&gt;

&lt;p&gt;On the other hand, if I hadn't have used AI at all, I would have learnt a lot more and I wouldn't have needed to spend months cleaning up the codebase and fixing all the bugs.&lt;/p&gt;

&lt;p&gt;After 6 hours, AI produced something usable but on deeper inspection it was a mess. AI coding can get you 80% there, but the last 20% will take you 80% of the time or even longer if you don't understand what it has written.&lt;/p&gt;

&lt;p&gt;AI is more capable now than it was a year ago, but it is also more expensive and it doesn't solve the fact that by using it your aren't gaining any skills yourself. If your not able to do your job when Claude is down then you are relying far too much on AI.&lt;/p&gt;

&lt;p&gt;I do wonder what this industry is going to be like in a few years time. No juniors are getting hired because companies are relying on senior developers with AI to do all the work.&lt;/p&gt;

&lt;p&gt;Meanwhile, the senior developers are in 2 camps.&lt;/p&gt;

&lt;p&gt;One half are using AI for absolutely everything but are slowly losing their ability to code. It is like a frog in boiling water that doesn't know it's dead until it is too late.&lt;/p&gt;

&lt;p&gt;The other half are so sick of AI and are getting burnt out having to write prompts every day that they just don't want to do it anymore.&lt;/p&gt;

&lt;p&gt;If the AI bubble does ever pop, I am not sure there is going to be enough competent developers left who are willing to pick up the pieces. Spending your time cleaning up AI slop that you didn't want to write in the first place doesn't sound like much fun.&lt;/p&gt;

&lt;p&gt;Whichever side you're on, just make sure you don't sit in that hot water for too long.&lt;/p&gt;

</description>
      <category>ios</category>
      <category>ai</category>
      <category>programming</category>
    </item>
    <item>
      <title>Opting for privacy in webmentions</title>
      <dc:creator>Alex Hyett</dc:creator>
      <pubDate>Tue, 07 Jul 2026 13:24:30 +0000</pubDate>
      <link>https://dev.to/alexhyettdev/opting-for-privacy-in-webmentions-fgo</link>
      <guid>https://dev.to/alexhyettdev/opting-for-privacy-in-webmentions-fgo</guid>
      <description>&lt;p&gt;Last week I went full speed into setting up webmentions on my site. My implementation works around using &lt;a href="https://webmention.io" rel="noopener noreferrer"&gt;webmention.io&lt;/a&gt; in my site's &lt;code&gt;&amp;lt;head&amp;gt;&lt;/code&gt; and &lt;a href="https://brid.gy/" rel="noopener noreferrer"&gt;Bridgy&lt;/a&gt; for sending me webmentions for comments, likes and reposts on my posts that I share.&lt;/p&gt;

&lt;p&gt;Ideally I would like to self-host my webmentions endpoint so I am not relying on another service but I haven't found a suitable replacement yet. Maybe I should just self-host webmentions.io as it is open source.&lt;/p&gt;

&lt;p&gt;While looking for alternatives I came across this post &lt;a href="https://sebastiangreger.net/2018/05/indieweb-privacy-challenge-webmentions-backfeeds-gdpr/" rel="noopener noreferrer"&gt;The Indieweb privacy challenge (Webmentions, silo backfeeds, and the GDPR)&lt;/a&gt; by Sebastian Greger. He makes an excellent point when it comes to "silo backfeeds" which in this case is talking about sending webmentions from the Fediverse and Bluesky.&lt;/p&gt;

&lt;p&gt;My webmention implementation involved showing names and avatars for all the people who liked, reposted or commented on my content including those from the Fediverse.&lt;/p&gt;

&lt;p&gt;When someone likes or comments on a post on another platform, they aren't necessarily expecting for their name and profile picture to appear elsewhere. When someone interacts with a post it isn't them giving consent to have their name and image shown on my site.&lt;/p&gt;

&lt;p&gt;Not all webmentions come from Brid.gy, others are sent directly to me from another website that also supports webmentions. This is where I believe you can say consent has been given.&lt;/p&gt;

&lt;p&gt;This isn't me pulling information from elsewhere and sending it to my website. This is them choosing to send me a webmention to let me know they have mentioned me or commented on one of my posts.&lt;/p&gt;

&lt;p&gt;I still however like to show when people have interacted with my site or continued the conversation on elsewhere.&lt;/p&gt;

&lt;p&gt;So I have implemented a compromise.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F04wfabf2ty4lbhskw4jn.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F04wfabf2ty4lbhskw4jn.jpeg" alt="An image showing the discussions section on my website with the post count|697x172" width="800" height="198"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For likes and reposts I now just show the count received no matter the source. Comments from the Fediverse are just shown as counts with a link back to my parent post.&lt;/p&gt;

&lt;p&gt;Only when I receive a reply or a mention from another website that supports &lt;a href="https://microformats.org/" rel="noopener noreferrer"&gt;microformats&lt;/a&gt;, is it shown on my website.&lt;/p&gt;

&lt;p&gt;I think this reaches the right balance between maintaining peoples privacy and still having that social aspect that makes the indie web so great.&lt;/p&gt;

</description>
      <category>webmentions</category>
      <category>indieweb</category>
      <category>blogging</category>
    </item>
    <item>
      <title>Setting up Webmentions on my Static Site 💬</title>
      <dc:creator>Alex Hyett</dc:creator>
      <pubDate>Sun, 05 Jul 2026 12:00:00 +0000</pubDate>
      <link>https://dev.to/alexhyettdev/setting-up-webmentions-on-my-static-site-22e3</link>
      <guid>https://dev.to/alexhyettdev/setting-up-webmentions-on-my-static-site-22e3</guid>
      <description>&lt;p&gt;I have been getting back into blogging recently. I know I write this newsletter every 2 weeks, but I try and keep to a set number of topics as I know my audience is mostly developers.&lt;/p&gt;

&lt;p&gt;My blog gives me chance to write about whatever is on my mind, without worrying about it being relevant to my audience.&lt;/p&gt;

&lt;p&gt;When I first started "surfing the web" it was all about personal websites and going from one person's blog to another via links and blogrolls. I miss that style of the internet. You know, before it was consolidated into a handful of tech giants.&lt;/p&gt;

&lt;p&gt;That internet is still there alive and well, you just need to look a little harder for it. The best way I have found to stumble onto new blogs is to use these:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://kagi.com/smallweb" rel="noopener noreferrer"&gt;Kagi Small Web&lt;/a&gt; - Keep clicking Next Post and it will take you to random websites.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://bubbles.town/" rel="noopener noreferrer"&gt;Bubbles.town&lt;/a&gt; - This is a fairly new addition. It is like HackerNews for personal blogs.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Of course it is all very well just writing into the void but what made social media so popular is the social aspect. Being able to comment on posts, like them and share them.&lt;/p&gt;

&lt;p&gt;The IndieWeb has this too and you can like, comment, and reply to posts in the form of webmentions.&lt;/p&gt;

&lt;h2&gt;
  
  
  How Do Webmentions Work? &lt;a href="https://www.alexhyett.com/newsletter/setting-up-webmentions-on-my-static-site/#how-do-webmentions-work" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;For webmentions to work you need to have a sender and a receiver. The receiver in this case is your website, then sender is someone who wants to like or comment on your post.&lt;/p&gt;

&lt;p&gt;To let other people know that you accept webmentions, you have to have to add a link to your webmention endpoin to your website &lt;code&gt;head&lt;/code&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;link&lt;/span&gt; &lt;span class="na"&gt;rel=&lt;/span&gt;&lt;span class="s"&gt;"webmention"&lt;/span&gt; &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;"{your_webmention_url}"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;People can then send you webmentions using an HTTP request to your webmention URL:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-X&lt;/span&gt; POST &lt;span class="o"&gt;{&lt;/span&gt;your_webmention_url&lt;span class="o"&gt;}&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="s2"&gt;"source={a_website_that_is_mentioning_you}"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="s2"&gt;"target={a_post_on_your_website}"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Of course all of that seems very manual and how do you even get a webmention URL?&lt;/p&gt;

&lt;h2&gt;
  
  
  Receiving Webmentions on Your Site &lt;a href="https://www.alexhyett.com/newsletter/setting-up-webmentions-on-my-static-site/#receiving-webmentions-on-your-site" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;You can host your own webmention server yourself but let's save that for another post.&lt;/p&gt;

&lt;p&gt;The easiest way is to go to &lt;a href="https://webmention.io/" rel="noopener noreferrer"&gt;Webmention.io&lt;/a&gt; and type in your website. This is a great free service hosted by &lt;a href="https://aaronparecki.com/" rel="noopener noreferrer"&gt;Aaron Parecki&lt;/a&gt;. It will then give you the option to sign in via an email address or GitHub if you mention your profile on your website.&lt;/p&gt;

&lt;p&gt;Once signed in you will get your webmention URL which you can put as a link in your header. It will likely just include your website name as your username.&lt;/p&gt;

&lt;p&gt;Mine for example is this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;link&lt;/span&gt; &lt;span class="na"&gt;rel=&lt;/span&gt;&lt;span class="s"&gt;"webmention"&lt;/span&gt; &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;"https://webmention.io/www.alexhyett.com/webmention"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This handles receiving webmentions from other peoples websites but what about people liking posts when you mention your blog post on Mastodon or Bluesky?&lt;/p&gt;

&lt;p&gt;This is where &lt;a href="https://brid.gy" rel="noopener noreferrer"&gt;Bridgy&lt;/a&gt; comes in. You can log in with your Mastodon account and it will monitor your posts for mentions of your website and send them in the form of webmentions.&lt;/p&gt;

&lt;p&gt;Bridgy even has an option to monitor your RSS feed and automatically post to Mastodon for you. I don't use that as I have my own setup but it is a nice option.&lt;/p&gt;

&lt;p&gt;Now you just need to display the webmentions somewhere on your site. You can do this by calling the webmention.io API. You will need to generate a token on their website which you can then use to receive your webmentions. Make sure to keep your API token secret.&lt;/p&gt;

&lt;p&gt;As I am on Eleventy, I used this &lt;a href="https://brennan.day/how-webmentions-work-on-brennan-day/#fetching-mentions-during-build" rel="noopener noreferrer"&gt;brilliant example on Brennan Kennith Brown website&lt;/a&gt; as my base and adjusted the way the webmentions are displayed to suit my site. Each time I build my site (with a 6h cache) it pulls down my webmentions. They are then formatted and displayed on my site.&lt;/p&gt;

&lt;p&gt;This is how I render my likes and reposts for example with Tailwind CSS:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jinja"&gt;&lt;code&gt;&lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nv"&gt;interactions&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;mentions&lt;/span&gt; &lt;span class="o"&gt;| &lt;/span&gt;&lt;span class="nf"&gt;webmentionsByTypes&lt;/span&gt;&lt;span class="p"&gt;([&lt;/span&gt;&lt;span class="s1"&gt;'like-of'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'repost-of'&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="o"&gt;| &lt;/span&gt;&lt;span class="nf"&gt;sortWebmentionsByReceived&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
&lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nv"&gt;hiddenInteractions&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;interactions.length&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nv"&gt;51&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
&lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="nv"&gt;interactions.length&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="nv"&gt;0&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;div&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;h3&amp;gt;&lt;/span&gt;Likes &lt;span class="err"&gt;&amp;amp;&lt;/span&gt; Reposts&lt;span class="nt"&gt;&amp;lt;/h3&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"flex flex-wrap items-center gap-2"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="nv"&gt;interaction&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="nv"&gt;interactions&lt;/span&gt; &lt;span class="o"&gt;| &lt;/span&gt;&lt;span class="nf"&gt;head&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;51&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;a&lt;/span&gt; &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="cp"&gt;{{&lt;/span&gt; &lt;span class="nv"&gt;interaction.author.url&lt;/span&gt; &lt;span class="nv"&gt;if&lt;/span&gt; &lt;span class="nv"&gt;interaction.author.url&lt;/span&gt; &lt;span class="nv"&gt;else&lt;/span&gt; &lt;span class="nv"&gt;interaction.url&lt;/span&gt; &lt;span class="cp"&gt;}}&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;
       &lt;span class="na"&gt;title=&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="cp"&gt;{{&lt;/span&gt; &lt;span class="nv"&gt;interaction.author.name&lt;/span&gt; &lt;span class="o"&gt;| &lt;/span&gt;&lt;span class="nf"&gt;unsupportedEmoji&lt;/span&gt; &lt;span class="cp"&gt;}}&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;
       &lt;span class="na"&gt;target=&lt;/span&gt;&lt;span class="s"&gt;"_blank"&lt;/span&gt;
       &lt;span class="na"&gt;rel=&lt;/span&gt;&lt;span class="s"&gt;"noopener"&lt;/span&gt;
       &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"relative inline-block no-underline!"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
      &lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="nv"&gt;interaction.author.photo&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="nv"&gt;interaction.author.photo&lt;/span&gt; &lt;span class="o"&gt;!=&lt;/span&gt; &lt;span class="s1"&gt;''&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
      &lt;span class="nt"&gt;&amp;lt;img&lt;/span&gt; &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="cp"&gt;{{&lt;/span&gt; &lt;span class="nv"&gt;interaction.author.photo&lt;/span&gt; &lt;span class="cp"&gt;}}&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;
           &lt;span class="na"&gt;alt=&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="cp"&gt;{{&lt;/span&gt; &lt;span class="nv"&gt;interaction.author.name&lt;/span&gt; &lt;span class="o"&gt;| &lt;/span&gt;&lt;span class="nf"&gt;unsupportedEmoji&lt;/span&gt; &lt;span class="cp"&gt;}}&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;
           &lt;span class="na"&gt;loading=&lt;/span&gt;&lt;span class="s"&gt;"lazy"&lt;/span&gt;
           &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"rounded-full w-12 h-12"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
      &lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
      &lt;span class="nt"&gt;&amp;lt;span&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"flex h-12 w-12 items-center justify-center rounded-full bg-tertiary font-mono font-bold text-(--header-color)"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="cp"&gt;{{&lt;/span&gt; &lt;span class="nv"&gt;interaction.author.name&lt;/span&gt; &lt;span class="o"&gt;| &lt;/span&gt;&lt;span class="nf"&gt;unsupportedEmoji&lt;/span&gt; &lt;span class="o"&gt;| &lt;/span&gt;&lt;span class="nf"&gt;truncate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="cp"&gt;}}&lt;/span&gt;
      &lt;span class="nt"&gt;&amp;lt;/span&amp;gt;&lt;/span&gt;
      &lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;endif&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
      &lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="nv"&gt;interaction&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"wm-property"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="s1"&gt;'like-of'&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
      &lt;span class="nt"&gt;&amp;lt;span&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"absolute -right-1 -top-1 flex h-5 w-5 items-center justify-center rounded-full border-2 border-(--bg-color) bg-(--secondary-color) text-[11px] text-[#e5484d]"&lt;/span&gt; &lt;span class="na"&gt;aria-label=&lt;/span&gt;&lt;span class="s"&gt;"Like"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;i&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"fa-solid fa-heart"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/i&amp;gt;&lt;/span&gt;
      &lt;span class="nt"&gt;&amp;lt;/span&amp;gt;&lt;/span&gt;
      &lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
      &lt;span class="nt"&gt;&amp;lt;span&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"absolute -right-1 -top-1 flex h-5 w-5 items-center justify-center rounded-full border-2 border-(--bg-color) bg-(--secondary-color) text-[11px] text-(--accent-color-alt)"&lt;/span&gt; &lt;span class="na"&gt;aria-label=&lt;/span&gt;&lt;span class="s"&gt;"Repost"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;i&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"fa-solid fa-retweet"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/i&amp;gt;&lt;/span&gt;
      &lt;span class="nt"&gt;&amp;lt;/span&amp;gt;&lt;/span&gt;
      &lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;endif&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;
    &lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;endfor&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
    &lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="nv"&gt;hiddenInteractions&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="nv"&gt;0&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;span&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"font-mono text-sm text-(--text-color-light)"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;and &lt;span class="cp"&gt;{{&lt;/span&gt; &lt;span class="nv"&gt;hiddenInteractions&lt;/span&gt; &lt;span class="cp"&gt;}}&lt;/span&gt; more&lt;span class="nt"&gt;&amp;lt;/span&amp;gt;&lt;/span&gt;
    &lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;endif&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;endif&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The &lt;code&gt;unsupportedEmoji&lt;/code&gt; filter I added as custom Mastodon icons where showing up as ????. This is just a simple filter to remove them:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;eleventyConfig&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;addFilter&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;unsupportedEmoji&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;text&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;text&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;replace&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;????&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;""&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I created a TIL page to test out my webmentions and the Fediverse community were great at giving me examples to test: &lt;a href="https://www.alexhyett.com/til/setting-up-webmentions/" rel="noopener noreferrer"&gt;Setting up webmentions&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;One part I haven't automated yet is my "Want to interact with this post?" message. I show this on my website.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0ag3qxsow8q8wujwabla.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0ag3qxsow8q8wujwabla.jpeg" alt="A screenshot of my discussions section on my website which says " width="800" height="110"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;At the moment I have to manually copy the URL for the Fediverse post into my frontmatter field which then gets shown here. So the workflow is:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Publish post&lt;/li&gt;
&lt;li&gt;Automated job mentions the post on Mastodon.&lt;/li&gt;
&lt;li&gt;I then copy the Mastodon post URL into the frontmatter of the blog post.&lt;/li&gt;
&lt;li&gt;Then update my site again.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I need to put add to my workflow to store the share URL to a database, then check for new additions when I build my site and have a script that updates the frontmatter.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sending Webmentions to Others &lt;a href="https://www.alexhyett.com/newsletter/setting-up-webmentions-on-my-static-site/#sending-webmentions-to-others" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;If you have managed to do part one then you have just become an amazing listener but it's not much of a conversation because you are not saying anything back!&lt;/p&gt;

&lt;p&gt;If you have had your website for a while like me then chances are you have been saying nothing back for a while. Time to change that.&lt;/p&gt;

&lt;p&gt;I wrote a script to go through all of my markdown files on my website and then write all the external URLs to a CSV file. &lt;a href="https://git.alexhyett.com/alexhyett/useful-scripts/src/branch/main/export-external-links.js" rel="noopener noreferrer"&gt;export-external-links.js&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I then wrote a separate script that checks the mentioned website to see if they accept webmentions and then sends a request to their webmention endpoint. &lt;a href="https://git.alexhyett.com/alexhyett/useful-scripts/src/branch/main/process-webmentions.js" rel="noopener noreferrer"&gt;process-webmentions.js&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I would say out of all the links on my website a good 80% of them didn't accept webmentions so it is mostly restricted to indie bloggers who still use them.&lt;/p&gt;

&lt;p&gt;That handles all the past requests. For sending new webmentions for posts I have published, I use n8n to monitor my RSS feed, pick out all the external links and then check for the existence of webmentions. Here is the n8n workflow if you wanted to adapt it for your own needs: &lt;a href="https://git.alexhyett.com/alexhyett/useful-scripts/src/branch/main/Send%20Webmentions.json" rel="noopener noreferrer"&gt;Send Webmentions.json&lt;/a&gt;. I love using n8n these sort of workflows as it makes it really easy to test the flow and debug it.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's Next &lt;a href="https://www.alexhyett.com/newsletter/setting-up-webmentions-on-my-static-site/#whats-next" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;I have everything working now with replies and likes from Mastodon. I recreated my &lt;a href="https://bsky.app/profile/alexhyett.com" rel="noopener noreferrer"&gt;Bluesky account&lt;/a&gt; recently and I am just going to use it to share my posts so I can give people another way to comment. All of my normal social media usage will still be on Mastodon.&lt;/p&gt;




&lt;h2&gt;
  
  
  ❤️ Picks of the Week &lt;a href="https://www.alexhyett.com/newsletter/setting-up-webmentions-on-my-static-site/#picks-of-the-week" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;h3&gt;
  
  
  🤖 AI &lt;a href="https://www.alexhyett.com/newsletter/setting-up-webmentions-on-my-static-site/#ai" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://rnotte.art/do-we-need-generative-ai" rel="noopener noreferrer"&gt;do we NEED generative AI?&lt;/a&gt; - We do have to ask ourselves, what do we really gain by using AI? Is the quality better than if you did it yourself? If it is then maybe you should invest more time in your own skills rather than using AI.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://mijndertstuij.nl/posts/cheap-to-write-expensive-to-own" rel="noopener noreferrer"&gt;Cheap to write, expensive to own&lt;/a&gt; - Yes you can write code quicker but you end up with something that is possibly buggy, that you don't understand and you didn't enjoy making. There is still a place for AI in automating one-off jobs with throwaway scripts but if you the code is going to last make sure you read it properly.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.codingwithjesse.com/blog/rockstar-developers/" rel="noopener noreferrer"&gt;Cleaning up after AI rockstar developers&lt;/a&gt; - I think this is a really good analogy. Sure there are some rockstar developers out there but most just generate unreadable spaghetti code. This is exactly what AI does but at a faster and much wider scale.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://curlewis.co.nz/posts/lines-of-code-got-a-better-publicist/" rel="noopener noreferrer"&gt;Lines of code got a better publicist&lt;/a&gt; - Code is a liability. Repeat that, code is a liability. The more code there is, the harder it is to maintain.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.endorlabs.com/learn/claude-fable-5-mythos-grade-hype" rel="noopener noreferrer"&gt;Claude Fable 5: mid-tier results on coding tasks&lt;/a&gt; - Despite &lt;a href="https://www.anthropic.com/news/fable-mythos-access" rel="noopener noreferrer"&gt;being banned for being too dangerous&lt;/a&gt; it wasn't even that good. Anthropic really shot themselves in the foot with this marketing campaign.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://olly.world/ai-sphyxiation" rel="noopener noreferrer"&gt;AI-sphyxiation&lt;/a&gt; - We probably need another word as well for products that have been slowly ruined by AI code contributions.&lt;/p&gt;

&lt;h3&gt;
  
  
  📝 Blogging &lt;a href="https://www.alexhyett.com/newsletter/setting-up-webmentions-on-my-static-site/#blogging" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://brennan.day/yes-buy-them-a-coffee-support-and-mutual-aid-on-the-indieweb/" rel="noopener noreferrer"&gt;Yes, Buy Them a Coffee: Support and Mutual Aid on the IndieWeb&lt;/a&gt; - This all started with this post "&lt;a href="https://hakkerman.eu/blog/i-wont-buy-you-a-coffee/" rel="noopener noreferrer"&gt;No, I Won't Buy You A Coffee&lt;/a&gt;" and let's just say the IndieWeb didn't like it. Buy me a coffee is essentially a tip jar, it isn't the same as putting up a paywall and it isn't an advert either. I agree with Brennan on this. We have no problem signing up for subscriptions to billionaire corporations but when a human kindly asks you to support them if you like their work then we really should.&lt;/p&gt;

&lt;h3&gt;
  
  
  💻 Programming &lt;a href="https://www.alexhyett.com/newsletter/setting-up-webmentions-on-my-static-site/#programming" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://hypersubject.net/entries/2026/06/integrating-standard.site-with-my-hugo-blog" rel="noopener noreferrer"&gt;Integrating standard.site with My Hugo Blog&lt;/a&gt; - Once I get my Bluesky sharing sorted I will have a look at setting this up too. I am not sure why websites need to come up with even more things we need to implement in order for our sites to appear nicely on theirs.&lt;/p&gt;

&lt;h3&gt;
  
  
  🏢 Tech Industry &lt;a href="https://www.alexhyett.com/newsletter/setting-up-webmentions-on-my-static-site/#tech-industry" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.seangoedecke.com/doing-nothing-at-work/" rel="noopener noreferrer"&gt;Doing nothing at work&lt;/a&gt; - This is a great point. A lot of the work that companies were most thankful for came from taking initiative and having the time to implement it. If you are constantly working on tickets there is no time to innovate.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://forestwalk.ai/blog/surprise-blacksmith-costs/" rel="noopener noreferrer"&gt;Surprise, pay $1000&lt;/a&gt; - This is some sneaky tactics. I am not sure this would hold up in court.&lt;/p&gt;

&lt;h3&gt;
  
  
  🎮 Gaming &lt;a href="https://www.alexhyett.com/newsletter/setting-up-webmentions-on-my-static-site/#gaming" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://putt.day/" rel="noopener noreferrer"&gt;Putt.day a daily mini golf game&lt;/a&gt; - This is really fun and well done. The one I played on the 2nd July even had a loop in it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://garrit.xyz/posts/2026-06-13-pac-man-but-you-re-the-ghost" rel="noopener noreferrer"&gt;Pac-Man, but you're the ghost&lt;/a&gt; - I love this idea. I still suck at Pac-Man though.&lt;/p&gt;

&lt;h3&gt;
  
  
  📚 Books &lt;a href="https://www.alexhyett.com/newsletter/setting-up-webmentions-on-my-static-site/#books" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.cypherpunkbooks.com" rel="noopener noreferrer"&gt;The Cypherpunk Library&lt;/a&gt; - A nice collection of public domain books with a cool UI.&lt;/p&gt;

&lt;h3&gt;
  
  
  🧠 Miscellaneous &lt;a href="https://www.alexhyett.com/newsletter/setting-up-webmentions-on-my-static-site/#miscellaneous" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.rochester.edu/newscenter/what-is-desalination-definition-ocean-water-704732/" rel="noopener noreferrer"&gt;New method turns ocean water into drinking water, without waste&lt;/a&gt; - This is fantastic. I always thought it was crazy that we are surrounded by all this drinking water but we can't drink any of it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://pdimagearchive.org/" rel="noopener noreferrer"&gt;Public Domain Image Archive&lt;/a&gt; - If you are looking for something a bit different for your blog images why not try one of these.&lt;/p&gt;




&lt;h2&gt;
  
  
  👨‍💻 Latest from me &lt;a href="https://www.alexhyett.com/newsletter/setting-up-webmentions-on-my-static-site/#latest-from-me" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;As mentioned I have been getting into blogging a lot more recently. These are my recent posts:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;📝 Blog Post&lt;/strong&gt; - &lt;a href="https://www.alexhyett.com/getting-back-into-blogging/" rel="noopener noreferrer"&gt;Getting back into blogging&lt;/a&gt; - I intentionally restrict the topics I write about in this newsletter but it has stopped me from writing about other stuff.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;📝 Blog Post&lt;/strong&gt; - &lt;a href="https://www.alexhyett.com/taking-the-unconventional-path/" rel="noopener noreferrer"&gt;Taking the unconventional path&lt;/a&gt; - I quit my job 3 weeks ago...&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;📝 Blog Post&lt;/strong&gt; - &lt;a href="https://www.alexhyett.com/focussing-on-my-fitness/" rel="noopener noreferrer"&gt;Focussing on my fitness&lt;/a&gt; - I have been working out pretty regularly over the last month and seeing some progress.&lt;/p&gt;




&lt;h2&gt;
  
  
  💬 Quote of the Week &lt;a href="https://www.alexhyett.com/newsletter/setting-up-webmentions-on-my-static-site/#quote-of-the-week" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;How about we forget “move fast and break things” and instead embrace “go slow and keep things working”?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;OK, yes this one was &lt;a href="https://social.alexhyett.com/@alex/statuses/01KWEHTK9GG4709YD09SZBT60T" rel="noopener noreferrer"&gt;from me&lt;/a&gt; this week.&lt;/p&gt;

</description>
      <category>blogging</category>
      <category>indieweb</category>
      <category>programming</category>
    </item>
    <item>
      <title>Getting back into blogging</title>
      <dc:creator>Alex Hyett</dc:creator>
      <pubDate>Wed, 24 Jun 2026 13:44:31 +0000</pubDate>
      <link>https://dev.to/alexhyettdev/getting-back-into-blogging-20h3</link>
      <guid>https://dev.to/alexhyettdev/getting-back-into-blogging-20h3</guid>
      <description>&lt;p&gt;It has been a while since I have sat down and wrote a blog post that is not directly related to programming or self-hosting. If I look back to 2023 I used to write about all sorts of different topics.&lt;/p&gt;

&lt;p&gt;I was reading the post &lt;a href="https://bits.gobino.be/dont-put-yourself-in-a-box" rel="noopener noreferrer"&gt;📦 Don't put yourself in a box&lt;/a&gt; the other day and I realised I have been doing something similar.&lt;/p&gt;

&lt;p&gt;My website doesn't get that much traffic at around 8000 visitors a month, so it is not that I am feeling pressure for my posts to be meaningful, but I have stuck myself in a genre box.&lt;/p&gt;

&lt;p&gt;Even though I label myself as a “software developer” it isn't my entire identity, and I am sure those reading my blog have other interests as well. I shouldn't worry about overwhelming my readers as not that many people subscribe directly to my everything RSS feed (I don't think).&lt;/p&gt;

&lt;p&gt;Even if they do, having something interesting to read regardless of whether it is technical or not, is surely a positive thing. My newsletter generally has a limited topic scope any way which is where most people read my content.&lt;/p&gt;

&lt;p&gt;So with that said, I am going to start blogging more and try to get more involved with the IndieWeb. I have been fed up with all the big tech platforms for a while so it is time to embrace the indie side.&lt;/p&gt;

&lt;p&gt;This week I have set incoming and outgoing webmentions on my blog. There is still a bit of tweaking to get the flow working properly, but it is a start.&lt;/p&gt;

&lt;p&gt;Thanks to the wonderful people on the Fediverse I was able to test out most of the functionality see &lt;a href="https://www.alexhyett.com/til/setting-up-webmentions/" rel="noopener noreferrer"&gt;Setting up webmentions&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The general flow is:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;I have a webmention endpoint set up on my blog thanks to webmention.io.&lt;/li&gt;
&lt;li&gt;I use &lt;a href="https://brid.gy/" rel="noopener noreferrer"&gt;Bridgy&lt;/a&gt; to get the likes, reposts and comments and send them to my webmention endpoint.&lt;/li&gt;
&lt;li&gt;When I build my blog it pulls down any webmentions from the site and displays them on the relevant posts.&lt;/li&gt;
&lt;li&gt;When I publish a new post I have a n8n workflow that reads my RSS feeds and publishes new posts on my Mastodon (GotoSocial) account.&lt;/li&gt;
&lt;li&gt;I have another n8n workflow that sends out all the webmentions for links mentioned in the post.&lt;/li&gt;
&lt;li&gt;I then have to manually add the Mastodon link to my post frontmatter so that I can link to it on my website (this is the part I need to improve). This is just to show people where to put a comment.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I will do another post in the near future with how all of this works. I also added the bubbles.town widget to the bottom of all my posts.&lt;/p&gt;

&lt;p&gt;There are still some things I want to do.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fix the above manual link of the Mastodon post to my account.&lt;/li&gt;
&lt;li&gt;Backfill all the posts with an equivalent GotoSocial post.&lt;/li&gt;
&lt;li&gt;Set up Bluesky again (I previously deleted my account) to repost content.&lt;/li&gt;
&lt;li&gt;Get comments that appear on my PeerTube videos to show up on my blog under the relevant &lt;a href="https://www.alexhyett.com/videos/" rel="noopener noreferrer"&gt;video&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Implement the reply to logic, so I can directly reply to other indieweb posts.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>blogging</category>
      <category>indieweb</category>
    </item>
    <item>
      <title>Personal projects are more important than ever</title>
      <dc:creator>Alex Hyett</dc:creator>
      <pubDate>Sun, 21 Jun 2026 12:00:00 +0000</pubDate>
      <link>https://dev.to/alexhyettdev/personal-projects-are-more-important-than-ever-51cg</link>
      <guid>https://dev.to/alexhyettdev/personal-projects-are-more-important-than-ever-51cg</guid>
      <description>&lt;p&gt;3 years ago I did a video on &lt;a href="https://www.alexhyett.com/backend-project/" rel="noopener noreferrer"&gt;"How to Build a Project That Will Actually Get You a Job"&lt;/a&gt;. It is crazy how much has changed since then. I still think there is value in creating these projects to help your chances of getting a job, but they definitely don't have as much sway as they used to.&lt;/p&gt;

&lt;p&gt;The reason of course is due to AI. How does a hiring manager looking at your profile know you didn't just vibe code the whole thing?&lt;/p&gt;

&lt;p&gt;The main points I covered in that video still apply though. The code was never the important part of the project.&lt;/p&gt;

&lt;p&gt;What matters most:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Deploying your project - Anyone can just vibe code something and have it run on their local machine. Getting the project live is a different skill set and not one that AI can easily help with.&lt;/li&gt;
&lt;li&gt;Show your process - It is great that you built something, but I would be more interested in &lt;em&gt;why&lt;/em&gt; you built it. When code is cheap it is worth spending time to think whether this should have been built at all.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.alexhyett.com/roadmaps/backend-developer-roadmap/#testing" rel="noopener noreferrer"&gt;Testing&lt;/a&gt; and &lt;a href="https://www.alexhyett.com/roadmaps/backend-developer-roadmap/#monitoring" rel="noopener noreferrer"&gt;Monitoring&lt;/a&gt; - Unless prompted, AI won't write tests for you. Even when it does those tests aren't always that meaningful. Make sure your write relevant tests that go through the happy and the unhappy paths of your code. Set up telemetry and dashboards to show you understand that side of things as well.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Of course there is more to personal projects beyond getting a job. I know at the end of a long day at work the last thing many people want to be doing is coding more. Personal projects however are a great way to learn new skills (assuming you don't vibe code it).&lt;/p&gt;

&lt;p&gt;With more and more companies drinking the AI cool aid in the name of productivity, your personal projects might be the only way you get to flex those coding muscles.&lt;/p&gt;

&lt;p&gt;Just like real muscles, if you don't use them you lose them and your programming skills will slowly atrophy.&lt;/p&gt;

&lt;p&gt;This week I created a &lt;a href="https://www.alexhyett.com/projects/" rel="noopener noreferrer"&gt;projects page on my website&lt;/a&gt; so I can start listing out the things that I am working on. I have a lot of unfinished projects that didn't make the cut or were never released to the public and a lot more projects I want to build in the future.&lt;/p&gt;




&lt;h2&gt;
  
  
  ❤️ Picks of the Week &lt;a href="https://www.alexhyett.com/newsletter/personal-projects-are-more-important-than-ever/#picks-of-the-week" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;h3&gt;
  
  
  🤖 AI &lt;a href="https://www.alexhyett.com/newsletter/personal-projects-are-more-important-than-ever/#ai" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://mastrojs.github.io/blog/2026-05-23-is-AI-causing-a-repeat-of-frontends-lost-decade/" rel="noopener noreferrer"&gt;Is AI causing a repeat of frontend’s lost decade?&lt;/a&gt; - It is an interesting point. You used to need to know a lot about HTML, CSS and Javascript to be able to build a good website. Then frameworks came along and a lot of that knowledge disappeared. With everyone using AI, those that actually understand how things work will only become more valuable.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Vibe coding is the equivalent of me sketching a drawing of my dream car, it materializing in front of me, and then proclaiming “I MADE A CAR IT’S 80% DONE”. And then the first time I drove it the wheels would fall off, the engine would explode, and I would drive off a cliff. Seems fine.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;From &lt;a href="https://dankim.com/vibe-coding-off-a-cliff/" rel="noopener noreferrer"&gt;Vibe Coding off a Cliff&lt;/a&gt; by Dan Kim - The last 20% is always the hardest part, AI didn't change that. The 20% just got larger!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://shawnsmucker.substack.com/p/please-use-ai" rel="noopener noreferrer"&gt;Please Use AI&lt;/a&gt; - Please don't replace human interaction with AI.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.owenmcgrann.com/p/the-dead-economy-theory" rel="noopener noreferrer"&gt;The dead economy theory&lt;/a&gt; - It does make you wonder what the end game is for AI. If companies replace all their workers with AI who is going to be left to buy their products.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://xcancel.com/i/status/2060746160558543217" rel="noopener noreferrer"&gt;Codex just found a "workaround" of not having sudo on my PC&lt;/a&gt; - That is pretty scary. I wonder how long until we all have to work on machines that aren't connected to the internet at all for our own safety.&lt;/p&gt;

&lt;h3&gt;
  
  
  💻 Programming &lt;a href="https://www.alexhyett.com/newsletter/personal-projects-are-more-important-than-ever/#programming" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://obeli.sk/blog/sqlite-is-all-you-need-for-durable-workflows/" rel="noopener noreferrer"&gt;SQLite is all you need for durable workflows&lt;/a&gt; - I still think Postgres is the way to go when you building out multi-user web applications. Especially if you need it to scale. For self-hosted applications with only a limited number of users then SQLite is certainly the easier choice.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dbushell.com/2026/06/05/are-you-standard-site/" rel="noopener noreferrer"&gt;Are you standard.site?&lt;/a&gt; - This seems similar to adding &lt;code&gt;og:&lt;/code&gt; metadata to a website but makes your site more easily discoverable with ATProto. I don's use Bluesky any more, but I am going to look at adding this in to my site.&lt;/p&gt;

&lt;h3&gt;
  
  
  🏢 Tech Industry &lt;a href="https://www.alexhyett.com/newsletter/personal-projects-are-more-important-than-ever/#tech-industry" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://rockstarintel.com/gta-6-developers-announce-rockstar-games-union/" rel="noopener noreferrer"&gt;GTA 6 Developers Unionize&lt;/a&gt; - I wonder if we will see more unions for software developers cropping up as AI threatens the industry.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://mullvad.net/en/blog/age-verification-for-social-media-the-beginning-of-the-end-for-a-free-internet" rel="noopener noreferrer"&gt;Age verification for social media, the beginning of the end for a free internet?&lt;/a&gt; - I really hope the UK doesn't ban VPNs. I really need to look into decentralised alternatives to the internet before everything goes all 1984 on us.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.bbc.com/news/articles/c93x0k194yno" rel="noopener noreferrer"&gt;Meta workers can opt out of being tracked at work up to 30 min&lt;/a&gt; - Oh how kind of Meta to allow their employees 30 minutes of privacy. Choosing to work for Meta these days is already an odd choice, but why would anyone want to work for them now?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;I keep getting floored by people saying programming as a job is “over”. I was jealous of engineers my whole life for having the ability to speak code with which they create software. The ability to speak code has never been more important than now, when we are able to delegate the code speaking. If you can’t understand what the AI wrote, you fall back on hope and trust, and I don’t think that’s such a good idea.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;From &lt;a href="https://draganbabic.com/blog/eyxpmtw5/" rel="noopener noreferrer"&gt;Dragan Babić&lt;/a&gt; - Being able to code is still a superpower when everyone else treats it like a black box.&lt;/p&gt;

&lt;h3&gt;
  
  
  🧠 Miscellaneous &lt;a href="https://www.alexhyett.com/newsletter/personal-projects-are-more-important-than-ever/#miscellaneous" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://openpath.quest/2026/i-am-retiring-from-tech-to-live-offline/" rel="noopener noreferrer"&gt;I am retiring from tech to live offline&lt;/a&gt; - It is sad to see AI push people out of tech. At the same time I can see myself living an offline life in retirement.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://languagelog.ldc.upenn.edu/nll?p=73657" rel="noopener noreferrer"&gt;Writing by hand makes us think better&lt;/a&gt; - I have started doing morning page again. I am not quite at the recommend 3 pages a day, but it does help me think better than writing on a computer.&lt;/p&gt;




&lt;h2&gt;
  
  
  💬 Quote of the Week &lt;a href="https://www.alexhyett.com/newsletter/personal-projects-are-more-important-than-ever/#quote-of-the-week" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;It’s not giving up to put your current path on indefinite pause. He could pick up his law career exactly where he left off if he wanted to, but that is the furthest thing from his mind.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;From &lt;a href="https://tim.blog/2017/05/15/fear-setting/" rel="noopener noreferrer"&gt;Fear-Setting: The Most Valuable Exercise I Do Every Month&lt;/a&gt; by Tim Ferriss.&lt;/p&gt;

</description>
      <category>careeradvice</category>
      <category>programming</category>
    </item>
    <item>
      <title>We are using AI wrong</title>
      <dc:creator>Alex Hyett</dc:creator>
      <pubDate>Sun, 07 Jun 2026 12:00:00 +0000</pubDate>
      <link>https://dev.to/alexhyettdev/we-are-using-ai-wrong-2g6n</link>
      <guid>https://dev.to/alexhyettdev/we-are-using-ai-wrong-2g6n</guid>
      <description>&lt;p&gt;Over the last few months companies have gone from “you must use AI or you will get fired” to “use less AI or you will be fired”.&lt;/p&gt;

&lt;p&gt;As you know, it all comes down to cost. Companies thought that they could replace some salaried developers by giving AI to the remaining staff. Now it seems a lot of companies are back peddling on that stance now that the true cost of AI is appearing.&lt;/p&gt;

&lt;p&gt;AI has been heavily subsidised by investor money to try to get people hooked, however with AI companies not turning a profit they have to increase the price or restrict usage to keep going.&lt;/p&gt;

&lt;p&gt;I have seen people reporting on Reddit that their companies have taken a U-turn and started restricting usage (obviously it is Reddit so take with a pinch of salt).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.reddit.com/r/cscareerquestions/comments/1tvqajv/company_took_away_access_to_claude/" rel="noopener noreferrer"&gt;Company took away access to claude&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.reddit.com/r/cscareerquestions/comments/1turkzv/corporate_first_said_that_they_highly_encourage/" rel="noopener noreferrer"&gt;Corporate first said that they highly encourage use of AI, now with billing in place, they want us to be mindful&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.reddit.com/r/cscareerquestions/comments/1tvs7ea/has_your_company_started_limiting_ai_usage_tell/" rel="noopener noreferrer"&gt;Has your company started limiting AI usage?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.reddit.com/r/cscareerquestions/comments/1tve37q/sorry_to_say_but_im_happy_to_see_ai_fail/" rel="noopener noreferrer"&gt;Sorry to say, but I’m happy to see AI fail&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I keep seeing tutorials of how to set up your AI agents to do all sorts of tasks. These “skills” the AI agents possess is just a markdown file containing instructions of what commands to run etc.&lt;/p&gt;

&lt;p&gt;Every time an agent wants to use one of these skills it has to read in the skill file which uses up tokens and then will execute on it, mostly in an indeterministic way.&lt;/p&gt;

&lt;p&gt;The LLMs are a black box and the big providers are constantly tweaking how they work to try and save money or squash bad behaviour. A skill file that works now might not work the same in the future.&lt;/p&gt;

&lt;p&gt;I understand for AI coding agents you might want it to use these tools without asking but for fairly deterministic processes I feel you would be much better off with a script that doesn't use any tokens at all.&lt;/p&gt;

&lt;p&gt;In some cases, the skills contain a bunch of code snippets telling the AI how to run things, such as this &lt;a href="https://github.com/anthropics/skills/blob/main/skills/slack-gif-creator/SKILL.md" rel="noopener noreferrer"&gt;slack-gif-creator example&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;It was easy when AI was practically free just to run everything through an LLM and have it control the flow. With the costs rising I think less people will be inclined to just throw a markdown file at it and see what happens.&lt;/p&gt;

&lt;p&gt;So, what's the alternative?&lt;/p&gt;

&lt;p&gt;The obvious solution is to convert the process into a script but in some cases there will be pieces of the operation that still need AI.&lt;/p&gt;

&lt;p&gt;Maybe the data comes in an unstructured format, and you require AI to format the data. You could be getting data from multiple sources, and you want AI to summarise it for you.&lt;/p&gt;

&lt;p&gt;In these cases, having an LLM in the flow is useful, but if you can minimise where it is used it will cost a lot less. For a lot of small tasks, local AI models will likely be sufficient.&lt;/p&gt;

&lt;p&gt;Let's say you wanted to create a custom daily briefing.&lt;/p&gt;

&lt;p&gt;Instead of writing a skills file to pull down the weather, your calendar, and the latest news, you can turn it into a script.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Call the weather API to get today's weather and remove any parts you don't care about.&lt;/li&gt;
&lt;li&gt;Call the calendar API and filter to just today's events.&lt;/li&gt;
&lt;li&gt;Get a pre-aggregated RSS feed and look at today's stories.&lt;/li&gt;
&lt;li&gt;Send the parts that need summarising to a local or cheap cloud AI model to summarise.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;In this case it is likely only the weather that could do with a more personal touch. Everything else could be just put in a list.&lt;/p&gt;

&lt;p&gt;Of course working out what can be scripted and what needs to go to an LLM requires some thought and problem solving, you know, actual engineering skills.&lt;/p&gt;

&lt;p&gt;The AI companies want you to shove everything into a markdown file because they make more money, but that isn't how software developers should be working.&lt;/p&gt;

&lt;p&gt;While AI is still available heavily subsidised and through subscription, use it to build tools that will still work when AI isn't financially viable any more.&lt;/p&gt;




&lt;h2&gt;
  
  
  ❤️ Picks of the Week &lt;a href="https://www.alexhyett.com/newsletter/we-are-using-ai-wrong/#picks-of-the-week" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;I am going to be limiting the number of links I put in this newsletter to 10-15 a week. I don't want to overwhelm everyone with too much information.&lt;/p&gt;

&lt;h3&gt;
  
  
  🤖 AI &lt;a href="https://www.alexhyett.com/newsletter/we-are-using-ai-wrong/#ai" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.businessinsider.com/steve-wozniak-apple-ai-graduation-speech-2026-5" rel="noopener noreferrer"&gt;Steve Wozniak cheered after telling students they have AI – actual intelligence&lt;/a&gt; - At least Steve seems more relatable than the other talks that have happened recently. Imagine promoting AI to graduating students when it is actively making the job market worse.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.joshwcomeau.com/email/wham-launch-005-elephant-2-p/" rel="noopener noreferrer"&gt;AI has a multiplying effect on existing technical skills&lt;/a&gt; - I think this is why developers see drastically different results from AI. If you are already a great programmer and are guiding the AI appropriately it can help but for if you are not, it can just make you worse.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://orchidfiles.com/im-tired-of-ai-generated-answers/" rel="noopener noreferrer"&gt;I'm Tired of Talking to AI&lt;/a&gt; - It is so disrespectful sending AI responses to people. It is crazy that we live in a world where thinking for yourself is a superpower.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://techcrunch.com/2026/05/27/tech-ceos-are-apparently-suffering-from-ai-psychosis/" rel="noopener noreferrer"&gt;Tech CEOs are apparently suffering from AI psychosis&lt;/a&gt; - A CEO one-shots something in Claude and thinks that it is close enough to what developers produce that they don't need developers. Then wonder why the org isn't seeing the same productivity gains.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://shvbsle.in/various-llm-smells/" rel="noopener noreferrer"&gt;Various LLM Smells&lt;/a&gt; - I suspect we are going to see a lot of these in website designs going forward.&lt;/p&gt;

&lt;h3&gt;
  
  
  🛠️ Tools &lt;a href="https://www.alexhyett.com/newsletter/we-are-using-ai-wrong/#tools" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://meshtastic.org/docs/introduction/" rel="noopener noreferrer"&gt;An Introduction to Meshtastic&lt;/a&gt; - With nations around the world introducing censorship and age verification I have been looking into things like Meshtastic and Reticulum. At the moment it seems only useful for short range messaging (a few miles) but this might improve in the future.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.jonaharagon.com/posts/im-getting-into-mesh-networks-meshtastic-meshcore-and-reticulum/" rel="noopener noreferrer"&gt;I'm Getting into Mesh Networks (Meshtastic, MeshCore, and Reticulum)&lt;/a&gt; - Some good information about the different networks. Reticulum which I have talked about before looks particular good too.&lt;/p&gt;

&lt;h3&gt;
  
  
  💻 Programming &lt;a href="https://www.alexhyett.com/newsletter/we-are-using-ai-wrong/#programming" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://btxx.org/posts/memory/" rel="noopener noreferrer"&gt;Serving a website on a Raspberry Pi Zero running in RAM&lt;/a&gt; - This is cool, but they aren't entirely relying on the Raspberry Pi given the TLS termination is done by a VPS.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://unix.foo/posts/nobody-cracks-open-a-programming-book/" rel="noopener noreferrer"&gt;Nobody cracks open a programming book anymore&lt;/a&gt; - I learnt to program from books and I think having a separate medium actually helps you retain information more. With a book you have to look for the information and decide which bits are important to you. A chatbot just gives you the information which doesn't help you learn.&lt;/p&gt;

&lt;h3&gt;
  
  
  🔒 Security &lt;a href="https://www.alexhyett.com/newsletter/we-are-using-ai-wrong/#security" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://sinceyouarrived.world/taken" rel="noopener noreferrer"&gt;A web page that shows you everything the browser told it without asking&lt;/a&gt; - I showed a similar page last week. It is scary how much information is leaked by your browser.&lt;/p&gt;

&lt;h3&gt;
  
  
  🏢 Tech Industry &lt;a href="https://www.alexhyett.com/newsletter/we-are-using-ai-wrong/#tech-industry" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.reuters.com/business/world-at-work/cloudflare-cut-over-1100-jobs-2026-05-07/" rel="noopener noreferrer"&gt;Cloudflare to cut about 20% of its workforce&lt;/a&gt; - More cuts. Cloudflare still has revenue of $665 million but they don't want to pay for workers.&lt;/p&gt;

&lt;h3&gt;
  
  
  🎮 Gaming &lt;a href="https://www.alexhyett.com/newsletter/we-are-using-ai-wrong/#gaming" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.thran.uk/writ/hdid/2025/12/simcity-3k-in-4k.html" rel="noopener noreferrer"&gt;SimCity 3k in 4k&lt;/a&gt; - I loved playing SimCity 3000 growing up. They also have SimCity 3000 unlimited &lt;a href="https://store.steampowered.com/app/2741560/SimCity_3000_Unlimited/" rel="noopener noreferrer"&gt;on Steam for £5&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  🧠 Miscellaneous &lt;a href="https://www.alexhyett.com/newsletter/we-are-using-ai-wrong/#miscellaneous" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.apa.org/news/press/releases/2014/04/creativity-walk" rel="noopener noreferrer"&gt;Taking a walk may lead to more creativity than sitting, study finds (2014)&lt;/a&gt; - I have found if I am stuck on a programming problem that going for a walk helped. It is certainly healthier than asking an LLM.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://mlsu.io/posts/day-off/" rel="noopener noreferrer"&gt;Can we have the day off?&lt;/a&gt; - This is the issue I have with capitalism and corporate culture in general. If I complete my work faster I should get more time to myself, instead I just get more work. AI is just going to accelerate burnout in workers.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://forkingmad.blog/wikipedia-doesnt-need-my-cash" rel="noopener noreferrer"&gt;Wikipedia doesn't need my cash&lt;/a&gt; - Not long ago Wikipedia had big banner on the page asking for donations yet they are sitting on $290 million in the bank.&lt;/p&gt;




&lt;h2&gt;
  
  
  💬 Quote of the Week &lt;a href="https://www.alexhyett.com/newsletter/we-are-using-ai-wrong/#quote-of-the-week" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;This is because the effects of a typical one or two-week vacation wear off almost immediately and that the whole point of most vacations is to merely take a break from work instead of resting for its own sake.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;From the article &lt;a href="https://pathlesspath.com/the-top-10-career-myths-we-should-stop-believing/" rel="noopener noreferrer"&gt;“The Top 10 Career Myths We Should Stop Believing”&lt;/a&gt; by Paul Millerd.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>programming</category>
    </item>
    <item>
      <title>What skills are still relevant?</title>
      <dc:creator>Alex Hyett</dc:creator>
      <pubDate>Sun, 24 May 2026 12:00:00 +0000</pubDate>
      <link>https://dev.to/alexhyettdev/what-skills-are-still-relevant-41b8</link>
      <guid>https://dev.to/alexhyettdev/what-skills-are-still-relevant-41b8</guid>
      <description>&lt;p&gt;It is a very difficult time for software engineers at the moment. Whether you like AI or not, it is having an impact on the software engineering job market.&lt;/p&gt;

&lt;p&gt;Some companies are using AI as an excuse to layoff more staff, either because they over hired or because they are cutting expenses in order to spend more on AI.&lt;/p&gt;

&lt;p&gt;There are even lots of reports of companies demanding their staff use AI for every task. I do agree to some extent that AI can make you more productive in the short term. I have certainly been able to complete more tickets in the last few months than I would have been able to do otherwise.&lt;/p&gt;

&lt;p&gt;The use of AI does however come at quite a steep long term cost. Not only are developers forgetting how to write code as they rely more on AI, they are also no longer are able to keep a mental map of the codebase which is critical for debugging issues. Over the next few years we are going to see software get buggier, companies having more frequent and longer downtimes and internally codebases are going to get messier and harder to maintain.&lt;/p&gt;

&lt;p&gt;I am hoping that companies who are currently forcing AI use will have a U-turn when they notice the long term impact and be more selective in how AI is used going forward.&lt;/p&gt;

&lt;p&gt;If that doesn't happen however, what skills are still going to be relevant over the next few years that are unlikely to be replaced by AI?&lt;/p&gt;

&lt;p&gt;This is what I still think is relevant now and will be going forward:&lt;/p&gt;

&lt;h2&gt;
  
  
  Testing &lt;a href="https://www.alexhyett.com/newsletter/what-skills-are-still-relevant/#testing" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;If companies end up using AI to write all the code, then you still need to test it, one way or another. Of course, you could just get AI to write the tests which for the code itself might be fine, but you need to define what to test yourself.&lt;/p&gt;

&lt;p&gt;I can see the AI apocalypse going one of two ways. AI causes more bugs in the software, and it is starting to affect the companies bottom line and reputation.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The company back peddles on using AI everywhere, and we go back to coding manually at least partially.&lt;/li&gt;
&lt;li&gt;The company doubles down and wants you to use AI to write more tests.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Either way I think we are going to be expected to write more tests to ensure the AI code is doing what we think it should be doing.&lt;/p&gt;

&lt;p&gt;If AI is writing the majority of code then I doubt unit tests are going to be that helpful. The majority of the effort is going to be writing integration tests for APIs and automated UI tests for the frontend.&lt;/p&gt;

&lt;h2&gt;
  
  
  System Design &lt;a href="https://www.alexhyett.com/newsletter/what-skills-are-still-relevant/#system-design" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;AI is great at adding features to an already well-organised codebase. However, if you use AI from the start there is no code structure for it to follow.&lt;/p&gt;

&lt;p&gt;Knowing what good software looks like, how to structure the application so that it will be easier to maintain going forward is going to be very important.&lt;/p&gt;

&lt;p&gt;This extends to the system as a whole as well. AI might be able to suggest the system design you need but unless you make it a requirement while you are coding, it won't be considered.&lt;/p&gt;

&lt;p&gt;Ultimately, knowing which database to you use, when to introduce queues for certain tasks and understanding how to scale different components is your responsibility.&lt;/p&gt;

&lt;h2&gt;
  
  
  Debugging &lt;a href="https://www.alexhyett.com/newsletter/what-skills-are-still-relevant/#debugging" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;When trying to fix a bug with an unfamiliar codebase I find myself using debugging a lot. If you didn't write the code then you don't have the same mental map of the codebase which allows you to easily work out the issue. The only option is to go line by line and look at what data is entering each of the functions, to see why the code took a certain path.&lt;/p&gt;

&lt;p&gt;This also means looking at the logs and not just asking Claude whenever an issue comes up.&lt;/p&gt;

&lt;h2&gt;
  
  
  Problem Solving &lt;a href="https://www.alexhyett.com/newsletter/what-skills-are-still-relevant/#problem-solving" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;Software engineering has always been about problem solving not code. You need to get a full picture of the problem and understand how code could help and more importantly when it isn't needed. Everything can't be solved with code, but AI is definitely going to try.&lt;/p&gt;

&lt;p&gt;Every line of code is a liability and the best line of code is the one you didn't have to write. AI will have no problem writing code for a feature, but it won't ever stop to think whether the feature should have existed in the first place.&lt;/p&gt;




&lt;h2&gt;
  
  
  ❤️ Picks of the Week &lt;a href="https://www.alexhyett.com/newsletter/what-skills-are-still-relevant/#picks-of-the-week" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;h3&gt;
  
  
  🤖 AI &lt;a href="https://www.alexhyett.com/newsletter/what-skills-are-still-relevant/#ai" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://simonwillison.net/2026/Apr/18/opus-system-prompt/" rel="noopener noreferrer"&gt;Changes in the system prompt between Claude Opus 4.6 and 4.7&lt;/a&gt; - It is interesting to see how much the system prompt changes. I am not sure how we are supposed to rely on these systems if they fundamentally change so much.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://letsdatascience.com/news/atlassian-enables-default-data-collection-to-train-ai-f71343d8" rel="noopener noreferrer"&gt;Atlassian enables default data collection to train AI&lt;/a&gt; - Are we all just going to have to self-host our own tools from now on. For my personal projects I just use Obsidian with the Kanban plugin.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://openai.com/index/introducing-openai-privacy-filter/" rel="noopener noreferrer"&gt;OpenAI Privacy Filter&lt;/a&gt; - I am glad this is an open weight model as it you shouldn't be sending any PII data to a third party.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://talkie-lm.com/introducing-talkie" rel="noopener noreferrer"&gt;Talkie: a 13B vintage language model from 1930&lt;/a&gt; - This is fun. I am not sure how useful it is but fun anyway.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://legallayer.substack.com/p/who-owns-the-claude-code-wrote" rel="noopener noreferrer"&gt;Who owns the code Claude Code wrote?&lt;/a&gt; - This is an interesting one. If code generated by AI is deemed uncopyrightable (is that a word?) then surely companies will go back on using it everywhere. Given it is trained on stolen code I can see how it wouldn't be.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://jpain.io/god-damn-ai-is-making-me-dumb/" rel="noopener noreferrer"&gt;AI is making me dumb&lt;/a&gt; - I never use AI to write these newsletters or any of my blog posts. For code however, with work almost mandating the use of it, it can be so tempting to defer to it for everything.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://xcancel.com/mitchellh/status/2055380239711457578" rel="noopener noreferrer"&gt;I believe there are entire companies right now under AI psychosis&lt;/a&gt; - AI is going to create a whole generation of dumb engineers that don't know how to think or code. Maybe that is what they want so companies have to pay us less.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://nvlabs.github.io/Sana/WM/" rel="noopener noreferrer"&gt;SANA-WM, a 2.6B open-source world model for 1-minute 720p video&lt;/a&gt; - This looks cool, but I dread to think of the compute needed to generate these. I have tried video generation locally on my M2 Pro Mac Mini, and we are talking 30 minutes at CPU melting full speed to generate 5 seconds of questionable slop.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://mikeveerman.github.io/tokenspeed/" rel="noopener noreferrer"&gt;How fast is N tokens per second really?&lt;/a&gt; - For those running AI locally they often talk about tokens per second, but it is hard to understand how fast that is without actually seeing it. This helps a lot.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://simonwillison.net/2026/May/19/5-minute-llms/" rel="noopener noreferrer"&gt;The last six months in LLMs in five minutes&lt;/a&gt; - There is so much happening in the LLM space right now. This is a good summary.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.blog/news-insights/company-news/changes-to-github-copilot-individual-plans/" rel="noopener noreferrer"&gt;Changes to GitHub Copilot individual plans&lt;/a&gt; - The era of subsidised frontier LLMs is slowly coming to an end. Let's hope the local models can compete before it gets too expensive.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.blog/changelog/2026-04-27-github-copilot-code-review-will-start-consuming-github-actions-minutes-on-june-1-2026/" rel="noopener noreferrer"&gt;GitHub Copilot code review will start consuming GitHub Actions minutes&lt;/a&gt; - I wonder how many companies are using Copilot review as a replacement for Human review.&lt;/p&gt;

&lt;h3&gt;
  
  
  🛠️ Tools &lt;a href="https://www.alexhyett.com/newsletter/what-skills-are-still-relevant/#tools" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://blog.flipper.net/flipper-one-we-need-your-help/" rel="noopener noreferrer"&gt;Flipper One – we need your help&lt;/a&gt; - The Flipper Zero looked so cool when it came out. I didn't get one as I don't know what I would use it for. Equally, the One looks very cyberpunk, and I want one, but I don't know why.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://frame.work/laptop13pro" rel="noopener noreferrer"&gt;Framework Laptop 13 Pro&lt;/a&gt; - I am likely good for computer hardware for at least another 5 years, but I can see my next computer being from Framework. I really don't like the way that Apple is heading.&lt;/p&gt;

&lt;h3&gt;
  
  
  💻 Programming &lt;a href="https://www.alexhyett.com/newsletter/what-skills-are-still-relevant/#programming" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://lawsofsoftwareengineering.com" rel="noopener noreferrer"&gt;Laws of Software Engineering&lt;/a&gt; - I think software engineers that actually understand these “Laws” and can apply them are going to become so valuable in a see of vibe-coders.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://simonomi.dev/blog/color-code-your-bytes/" rel="noopener noreferrer"&gt;Your hex editor should color-code bytes&lt;/a&gt; - This is very cool. The first time I played around with hex editors was with a &lt;a href="https://gameshark.fandom.com/wiki/Nintendo_64" rel="noopener noreferrer"&gt;GameShark Cheat Cartridge&lt;/a&gt; for the N64.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://madhadron.com/programming/seven_ur_languages.html" rel="noopener noreferrer"&gt;The seven programming ur-languages (2022)&lt;/a&gt; - I never realised all the programming languages I know fall under the “ALGOL” family of languages.&lt;/p&gt;

&lt;h3&gt;
  
  
  🔒 Security &lt;a href="https://www.alexhyett.com/newsletter/what-skills-are-still-relevant/#security" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://gtfobins.org/" rel="noopener noreferrer"&gt;GTFOBins&lt;/a&gt; - I have started running my AI coding agents inside a VM using Lima. It might protect against these types of exploits but who knows!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://clickclickclick.click/" rel="noopener noreferrer"&gt;Click&lt;/a&gt; - It is amazing to see how much information can actually be gathered from the browser. Even your mouse movements can be recorded, it is quite creepy.&lt;/p&gt;

&lt;h3&gt;
  
  
  🎨 Design &amp;amp; UX &lt;a href="https://www.alexhyett.com/newsletter/what-skills-are-still-relevant/#design-and-ux" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://typesetinthefuture.com/2016/02/18/futuristic/" rel="noopener noreferrer"&gt;How to make your text look futuristic&lt;/a&gt; - This is hilarious, why do we always pick the same styles for "future text".&lt;/p&gt;

&lt;p&gt;&lt;a href="https://jvns.ca/blog/2026/05/15/moving-away-from-tailwind--and-learning-to-structure-my-css-/" rel="noopener noreferrer"&gt;Moving away from Tailwind, and learning to structure my CSS&lt;/a&gt; - I moved my website over to Tailwind last year after using it a lot at work. I do feel like my HTML is now very bloated though.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://unsung.aresluna.org/plain-text-has-been-around-for-decades-and-its-here-to-stay/" rel="noopener noreferrer"&gt;Plain text has been around for decades and it’s here to stay&lt;/a&gt; - The plain text UI tools mentioned here are so cool. More people should start with ASCII wireframes.&lt;/p&gt;

&lt;h3&gt;
  
  
  🏢 Tech Industry &lt;a href="https://www.alexhyett.com/newsletter/what-skills-are-still-relevant/#tech-industry" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://luminousmen.substack.com/p/drunk-post-things-ive-learned-as" rel="noopener noreferrer"&gt;Drunk post: Things I've learned as a senior engineer&lt;/a&gt; - This is so true, especially point number 1.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The best way I’ve advanced my career is by changing companies.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://www.seangoedecke.com/software-engineering-may-no-longer-be-a-lifetime-career/" rel="noopener noreferrer"&gt;Software engineering may no longer be a lifetime career&lt;/a&gt; - I definitely think my days of software engineer as a career are numbered. I will still make software just not for someone else. I don't mind using AI selectively on my own projects, but I don't want to be forced to use it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://blog.railway.com/p/incident-report-may-19-2026-gcp-account-outage" rel="noopener noreferrer"&gt;Incident Report: Railway Blocked by Google Cloud (Resolved)&lt;/a&gt; - I spoke about Railway last issue as a quick way to get your own ForgeJo instance started. It is still the quickest way but I wouldn't rely on it for your company git repository.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dbushell.com/2026/05/20/google-just-spat-in-my-face" rel="noopener noreferrer"&gt;Google just spat in my face&lt;/a&gt; - It is really tough to be a web developer right now. I once thought I could always go freelance and build websites for companies, but I think that path is slowly dying. At least Google is doing it's best to make it that way.&lt;/p&gt;

&lt;h3&gt;
  
  
  🎮 Gaming &lt;a href="https://www.alexhyett.com/newsletter/what-skills-are-still-relevant/#gaming" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://dos.zone/" rel="noopener noreferrer"&gt;DOS Zone&lt;/a&gt; - This is so cool. They have SimTower on here as well. I played that so much as a kid. It had to be installed using 4 floppies if I remember correctly.&lt;/p&gt;

&lt;h3&gt;
  
  
  📚 Books &lt;a href="https://www.alexhyett.com/newsletter/what-skills-are-still-relevant/#books" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://storica.club/blog/pinocchio-in-italian/" rel="noopener noreferrer"&gt;Pinocchio is weirder than you remembered&lt;/a&gt; - I never knew Pinocchio was quite so creepy. The donkey bit in the Disney movie was weird, but the book is on another level.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://rwblickhan.org/evergreen/technical-reading-list/" rel="noopener noreferrer"&gt;Technical Reading List&lt;/a&gt; - There is some good engineering reads on this page. OK there are only 3 books mentioned, but I felt it fitted in this category.&lt;/p&gt;

&lt;h3&gt;
  
  
  🧠 Miscellaneous &lt;a href="https://www.alexhyett.com/newsletter/what-skills-are-still-relevant/#miscellaneous" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://femtechdesigndesk.substack.com/p/your-period-tracking-app-has-been" rel="noopener noreferrer"&gt;Period tracking app has been selling data to Meta&lt;/a&gt; - Just the sort of information you don't want going to a big tech company who is known for using your data to sell ads. I am probably not the best person to make one of these apps but I feel like make a local alternative just so people have options.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://flipdisc.io" rel="noopener noreferrer"&gt;Flipdiscs&lt;/a&gt; - These looks so cool. I am not sure I have the space for an art installation in my office but if I did!&lt;/p&gt;




&lt;h2&gt;
  
  
  💡 Today I Learned (TIL) &lt;a href="https://www.alexhyett.com/newsletter/what-skills-are-still-relevant/#today-i-learned-til" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;I was having issues after killing a command which left my terminal writing &lt;code&gt;^[[A&lt;/code&gt; and &lt;code&gt;^[[B&lt;/code&gt; whenever I used the arrow keys. It turns out you can type &lt;code&gt;stty sane&lt;/code&gt; to fix this!&lt;/p&gt;




&lt;h2&gt;
  
  
  💬 Quote of the Week &lt;a href="https://www.alexhyett.com/newsletter/what-skills-are-still-relevant/#quote-of-the-week" rel="noopener noreferrer"&gt;#&lt;/a&gt;
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;How do you cultivate discipline? By building habits – starting as small as you can manage, even microscopic, and gathering momentum, reinvesting it in progressively bigger changes to your routine, and building a positive feedback loop.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;From the article &lt;a href="https://www.wisdomination.com/screw-motivation-what-you-need-is-discipline/" rel="noopener noreferrer"&gt;"Screw motivation, what you need is discipline"&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>careeradvice</category>
      <category>skills</category>
    </item>
  </channel>
</rss>
