<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>nopaas &amp;mdash; Arjen Wiersma</title>
    <link>https://www.arjenwiersma.nl/tag:nopaas</link>
    <description>A blog on Emacs, self-hosting, programming and other nerdy things</description>
    <pubDate>Thu, 07 May 2026 14:44:27 +0000</pubDate>
    <item>
      <title>The things I read this week (24)</title>
      <link>https://www.arjenwiersma.nl/the-things-i-read-this-week-24</link>
      <description>&lt;![CDATA[&#xA;Software Engineering&#xA;&#xA;In my feed the opening talk by DHH at Rails World 2024 popped up, most notably due his stance on the reduction of complexity in running an online business. He promotes running your own (virtual) hardware, reducing build pipelines and not using Platform as a Service providers (#nopaas). Watch it below.&#xA;&#xA;{{ rawhtml }}&#xA;iframe width=&#34;560&#34; height=&#34;315&#34; src=&#34;https://www.youtube.com/embed/-cEn_83zRFw?si=djdS1EZ-iATHWc3J&#34; title=&#34;YouTube video player&#34; frameborder=&#34;0&#34; allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; allowfullscreen/iframe&#xA;{{ /rawhtml }}&#xA;&#xA;It really interested me, for my hobby projects I don&#39;t have a lot of time and I would like the experience to be as smooth as butter. Years ago I wrote Rails based web applications, so the release of Rails 8 with this introduction made me curious how Rails development is nowadays. Spent a weekend working on a small project and it is pretty darn good I must say.&#xA;&#xA;AI Stuff&#xA;&#xA;Threats and stupidity&#xA;&#xA;Tim Bray talked about AI Angst 2], how the world seems to struggle with using AI and feel threatened by it. At the same time we are full into the time of [AI Agents with cool projects to track their effectiveness. As it is still possible to leak private data using AI agents (echoleak) 25] and AI agents [are wiping your computer when stuff becomes too hard 6], it seems we are still some ways off the safe application of AI agents. Most AI applications seem to be some type of &#34;fraud&#34; as well, [such as calory counting apps  [7]. Just because you stick AI into it, doesn&#39;t make it better.&#xA;&#xA;I highly recommend reading Neil Madden&#39;s review of the AI code written by Cloudflare for their new OAuth library [12]. The process they used is well documented, so we can see exactly where the AI stopped being able to generate the required code and needed human interaction. Most interesting point of this review is that Neil is into security, and this is a security library and, shocker, the AI failed at safe application of security. Luckily the humans of Cloudflare are excellent coders and know their stuff!&#xA;&#xA;There are good applications as well of course, such as Honeycomb finding that computers can work faster then humans 16]. Or having experience developers [use AI to do something new, such as build an iOS app [14].&#xA;&#xA;Apple, in the meantime, dropped a major paper &#34;Shojaee, Mirzadeh &amp; Alizadeh et al. (2025) The Illusion of Thinking: Understanding the Strengths and Limitations of Reasoning Models via the Lens of Problem Complexity, arXiv.org.&#34; 11], which identifies that current reasoning models are using patterns from the past to build up thoughts and are not really reasoning. This resulted in [a lot of discussion [13], but the paper seems to hold.&#xA;&#xA;A new repository was launched, vibesec, which holds AI rules for various programming languages/models.&#xA;&#xA;Closing&#xA;&#xA;I really should get a better workflow going. Currently my reading goes into Zotero and then on sunday I just categorize the items correctly. Perhaps I can make something that will build this post during the week, as I read it... how do you do it?&#xA;&#xA;The complete list&#xA;&#xA;{{ rawhtml }}&#xA;body style=&#34;font-family: system-ui, -apple-system, BlinkMacSystemFont, &#39;Segoe UI&#39;, Roboto, Oxygen, Ubuntu, Cantarell, &#39;Open Sans&#39;, &#39;Helvetica Neue&#39;, sans-serif; background-color: #f9fafb; color: #1f2937; line-height: 1.6; padding: 2rem; display: flex; justify-content: center;&#34;&#xA;&#xA;    div class=&#34;csl-bib-body&#34; style=&#34;max-width: 800px; width: 100%;&#34;&#xA;      div data-csl-entry-id=&#34;AddingSignRails2024&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[1]/divdiv class=&#34;csl-right-inline&#34;iAdding Sign Up to the Rails 8 Authentication Generator/i. a href=&#34;https://robrace.dev/blog/rails-8-authentication-sign-up/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://robrace.dev/blog/rails-8-authentication-sign-up//a, 2024. Accessed: Jun. 13, 2025. [Online]. Available: a href=&#34;https://robrace.dev/blog/rails-8-authentication-sign-up/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://robrace.dev/blog/rails-8-authentication-sign-up//a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;AIAngst&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[2]/divdiv class=&#34;csl-right-inline&#34;iAI Angst/i. a href=&#34;https://www.tbray.org/ongoing/When/202x/2025/06/06/My-AI-Angst&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://www.tbray.org/ongoing/When/202x/2025/06/06/My-AI-Angst/a. Accessed: Jun. 10, 2025. [Online]. Available: a href=&#34;https://www.tbray.org/ongoing/When/202x/2025/06/06/My-AI-Angst&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://www.tbray.org/ongoing/When/202x/2025/06/06/My-AI-Angst/a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;AICodingAgents&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[3]/divdiv class=&#34;csl-right-inline&#34;iAI Coding Agents/i. a href=&#34;https://aavetis.github.io/ai-pr-watcher/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://aavetis.github.io/ai-pr-watcher//a. Accessed: Jun. 09, 2025. [Online]. Available: a href=&#34;https://aavetis.github.io/ai-pr-watcher/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://aavetis.github.io/ai-pr-watcher//a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;arinzeWhySeniorDevelopers2025&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[4]/divdiv class=&#34;csl-right-inline&#34;J. Arinze, iWhy Senior Developers Google Basic Syntax/i. a href=&#34;https://faun.pub/why-senior-developers-google-basic-syntax-fa56445e355f&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://faun.pub/why-senior-developers-google-basic-syntax-fa56445e355f/a, 2025. Accessed: Jun. 10, 2025. [Online]. Available: a href=&#34;https://faun.pub/why-senior-developers-google-basic-syntax-fa56445e355f&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://faun.pub/why-senior-developers-google-basic-syntax-fa56445e355f/a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;beurer-kellnerGitHubMCPExploited2025&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[5]/divdiv class=&#34;csl-right-inline&#34;Marco M. Beurer-Kellner, iGitHub MCP Exploited: Accessing Private Repositories via MCP/i. a href=&#34;https://invariantlabs.ai/blog/mcp-github-vulnerability&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://invariantlabs.ai/blog/mcp-github-vulnerability/a, 2025. Accessed: Jun. 05, 2025. [Online]. Available: a href=&#34;https://invariantlabs.ai/blog/mcp-github-vulnerability&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://invariantlabs.ai/blog/mcp-github-vulnerability/a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;CursorYOLODeleted2025&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[6]/divdiv class=&#34;csl-right-inline&#34;iCursor YOLO Deleted Everything in My Computer - Bug Reports/i. a href=&#34;https://forum.cursor.com/t/cursor-yolo-deleted-everything-in-my-computer/103131&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://forum.cursor.com/t/cursor-yolo-deleted-everything-in-my-computer/103131/a, 2025. Accessed: Jun. 14, 2025. [Online]. Available: a href=&#34;https://forum.cursor.com/t/cursor-yolo-deleted-everything-in-my-computer/103131&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://forum.cursor.com/t/cursor-yolo-deleted-everything-in-my-computer/103131/a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;dietzUsedAIPoweredCalorie2025&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[7]/divdiv class=&#34;csl-right-inline&#34;M. Dietz, iI Used AI-Powered Calorie Counting Apps, and They Were Even Worse Than I Expected/i. a href=&#34;https://lifehacker.com/health/ai-powered-calorie-counting-apps-worse-than-expected&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://lifehacker.com/health/ai-powered-calorie-counting-apps-worse-than-expected/a, 2025. Accessed: Jun. 10, 2025. [Online]. Available: a href=&#34;https://lifehacker.com/health/ai-powered-calorie-counting-apps-worse-than-expected&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://lifehacker.com/health/ai-powered-calorie-counting-apps-worse-than-expected/a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;GentleSingularity&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[8]/divdiv class=&#34;csl-right-inline&#34;iThe Gentle Singularity/i. a href=&#34;https://blog.samaltman.com/the-gentle-singularity&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://blog.samaltman.com/the-gentle-singularity/a. Accessed: Jun. 12, 2025. [Online]. Available: a href=&#34;https://blog.samaltman.com/the-gentle-singularity&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://blog.samaltman.com/the-gentle-singularity/a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;GitHubGbrayhanHexagonalarchitectureclojure&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[9]/divdiv class=&#34;csl-right-inline&#34;iGitHub - Gbrayhan/Hexagonal-Architecture-Clojure: DDD Hexagonal Architecture Using Clojure/i. a href=&#34;https://github.com/gbrayhan/hexagonal-architecture-clojure/tree/main&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://github.com/gbrayhan/hexagonal-architecture-clojure/tree/main/a. Accessed: Jun. 08, 2025. [Online]. Available: a href=&#34;https://github.com/gbrayhan/hexagonal-architecture-clojure/tree/main&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://github.com/gbrayhan/hexagonal-architecture-clojure/tree/main/a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;herreroLocalhostTrackingExplained2025&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[10]/divdiv class=&#34;csl-right-inline&#34;J. G. Herrero, i“Localhost Tracking” Explained. It Could Cost Meta 32 Billion./i a href=&#34;https://www.zeropartydata.es/p/localhost-tracking-explained-it-could&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://www.zeropartydata.es/p/localhost-tracking-explained-it-could/a, 2025. Accessed: Jun. 11, 2025. [Online]. Available: a href=&#34;https://www.zeropartydata.es/p/localhost-tracking-explained-it-could&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://www.zeropartydata.es/p/localhost-tracking-explained-it-could/a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;shojaee2025&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[11]/divdiv class=&#34;csl-right-inline&#34;P. Shojaee, I. Mirzadeh, K. Alizadeh, M. Horton, S. Bengio, and M. Farajtabar, iThe Illusion of Thinking: Understanding the Strengths and Limitations of Reasoning Models via the Lens of Problem Complexity/i. a href=&#34;https://arxiv.org/abs/2506.06941v1&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://arxiv.org/abs/2506.06941v1/a, 2025. Accessed: Jun. 15, 2025. [Online]. Available: a href=&#34;https://arxiv.org/abs/2506.06941v1&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://arxiv.org/abs/2506.06941v1/a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;LookCloudFlaresAIcoded2025&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[12]/divdiv class=&#34;csl-right-inline&#34;iA Look at CloudFlare’s AI-coded OAuth Library/i. 2025./div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;marcusSevenRepliesViral2025&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[13]/divdiv class=&#34;csl-right-inline&#34;G. Marcus, iSeven Replies to the Viral Apple Reasoning Paper – and Why They Fall Short/i. 2025./div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;MyFirstAttempt2025&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[14]/divdiv class=&#34;csl-right-inline&#34;iMy First Attempt at iOS App Development/i. a href=&#34;https://mgx.me/my-first-attempt-at-ios-app-development&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://mgx.me/my-first-attempt-at-ios-app-development/a, 2025. Accessed: Jun. 09, 2025. [Online]. Available: a href=&#34;https://mgx.me/my-first-attempt-at-ios-app-development&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://mgx.me/my-first-attempt-at-ios-app-development/a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;NetworkInformationSystems&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[15]/divdiv class=&#34;csl-right-inline&#34;iNetwork and Information Systems Directive 2 (NIS2) | ENISA/i. a href=&#34;https://www.enisa.europa.eu/topics/awareness-and-cyber-hygiene/raising-awareness-campaigns/network-and-information-systems-directive-2-nis2&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://www.enisa.europa.eu/topics/awareness-and-cyber-hygiene/raising-awareness-campaigns/network-and-information-systems-directive-2-nis2/a. Accessed: Jun. 13, 2025. [Online]. Available: a href=&#34;https://www.enisa.europa.eu/topics/awareness-and-cyber-hygiene/raising-awareness-campaigns/network-and-information-systems-directive-2-nis2&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://www.enisa.europa.eu/topics/awareness-and-cyber-hygiene/raising-awareness-campaigns/network-and-information-systems-directive-2-nis2/a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;parkerItsEndObservability2025&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[16]/divdiv class=&#34;csl-right-inline&#34;A. Parker, iIt’s The End Of Observability As We Know It (And I Feel Fine)/i. 2025./div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;rubyonrailsRailsWorld20242024&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[17]/divdiv class=&#34;csl-right-inline&#34;Ruby on Rails, iRails World 2024 Opening Keynote - David Heinemeier Hansson/i. 2024./div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;searlsWhyAgentsAre2025&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[18]/divdiv class=&#34;csl-right-inline&#34;J. Searls, iWhy Agents Are Bad Pair Programmers/i. a href=&#34;https://justin.searls.co/posts/why-agents-are-bad-pair-programmers/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://justin.searls.co/posts/why-agents-are-bad-pair-programmers//a, 2025. Accessed: Jun. 10, 2025. [Online]. Available: a href=&#34;https://justin.searls.co/posts/why-agents-are-bad-pair-programmers/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://justin.searls.co/posts/why-agents-are-bad-pair-programmers//a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;SelfHostTechIndependence2025&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[19]/divdiv class=&#34;csl-right-inline&#34;iSelf-Host &amp;#38; Tech Independence: The Joy of Building Your Own/i. a href=&#34;https://www.ssp.sh/blog/self-host-self-independence/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://www.ssp.sh/blog/self-host-self-independence//a, 2025. Accessed: Jun. 08, 2025. [Online]. Available: a href=&#34;https://www.ssp.sh/blog/self-host-self-independence/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://www.ssp.sh/blog/self-host-self-independence//a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;soboCaseSoftwareCraftsmanship2025&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[20]/divdiv class=&#34;csl-right-inline&#34;N. Sobo, iThe Case for Software Craftsmanship in the Era of Vibes - Zed Blog/i. a href=&#34;https://zed.dev/blog/software-craftsmanship-in-the-era-of-vibes&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://zed.dev/blog/software-craftsmanship-in-the-era-of-vibes/a, 2025. Accessed: Jun. 13, 2025. [Online]. Available: a href=&#34;https://zed.dev/blog/software-craftsmanship-in-the-era-of-vibes&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://zed.dev/blog/software-craftsmanship-in-the-era-of-vibes/a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;SoftwarePromises2025&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[21]/divdiv class=&#34;csl-right-inline&#34;iSoftware Is About Promises/i. a href=&#34;https://www.bramadams.dev/software-is-about-promises/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://www.bramadams.dev/software-is-about-promises//a, 2025. Accessed: Jun. 10, 2025. [Online]. Available: a href=&#34;https://www.bramadams.dev/software-is-about-promises/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://www.bramadams.dev/software-is-about-promises//a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;teamNIS2CyberComprehensive&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[22]/divdiv class=&#34;csl-right-inline&#34;N. C. Team, iNIS2 Cyber | Comprehensive Guide to EU Cybersecurity Directive/i. a href=&#34;https://www.nis2-cyber.com/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://www.nis2-cyber.com//a. Accessed: Jun. 13, 2025. [Online]. Available: a href=&#34;https://www.nis2-cyber.com/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://www.nis2-cyber.com//a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;theoryUntamedtheoryVibesec2025&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[23]/divdiv class=&#34;csl-right-inline&#34;U. Theory, iUntamed-Theory/Vibesec/i. 2025./div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;westenbergSmartPeopleDont2025&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[24]/divdiv class=&#34;csl-right-inline&#34;J. Westenberg, iSmart People Don’t Chase Goals; They Create Limits/i. a href=&#34;https://www.joanwestenberg.com/smart-people-dont-chase-goals-they-create-limits/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://www.joanwestenberg.com/smart-people-dont-chase-goals-they-create-limits//a, 2025. Accessed: Jun. 10, 2025. [Online]. Available: a href=&#34;https://www.joanwestenberg.com/smart-people-dont-chase-goals-they-create-limits/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://www.joanwestenberg.com/smart-people-dont-chase-goals-they-create-limits//a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;willisonBreakingEchoLeakFirst&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[25]/divdiv class=&#34;csl-right-inline&#34;S. Willison, iBreaking down `EchoLeak’, the First Zero-Click AI Vulnerability Enabling Data Exfiltration from Microsoft 365 Copilot/i. a href=&#34;https://simonwillison.net/2025/Jun/11/echoleak/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://simonwillison.net/2025/Jun/11/echoleak//a. Accessed: Jun. 12, 2025. [Online]. Available: a href=&#34;https://simonwillison.net/2025/Jun/11/echoleak/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://simonwillison.net/2025/Jun/11/echoleak//a/div&#xA;      /div&#xA;      div data-csl-entry-id=&#34;willisonDesignPatternsSecuring&#34; class=&#34;csl-entry&#34; style=&#34;display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;&#34;&#xA;        div class=&#34;csl-left-margin&#34; style=&#34;color: #4b5563; font-weight: 500; text-align: right;&#34;[26]/divdiv class=&#34;csl-right-inline&#34;S. Willison, iDesign Patterns for Securing LLM Agents against Prompt Injections/i. a href=&#34;https://simonwillison.net/2025/Jun/13/prompt-injection-design-patterns/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://simonwillison.net/2025/Jun/13/prompt-injection-design-patterns//a. Accessed: Jun. 13, 2025. [Online]. Available: a href=&#34;https://simonwillison.net/2025/Jun/13/prompt-injection-design-patterns/&#34; style=&#34;color: #2563eb; text-decoration: none; word-break: break-word;&#34;https://simonwillison.net/2025/Jun/13/prompt-injection-design-patterns//a/div&#xA;      /div&#xA;    /div&#xA;&#xA;{{ /rawhtml }}&#xA;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<h1 id="software-engineering">Software Engineering</h1>

<p>In my feed the opening talk by DHH at Rails World 2024 popped up, most notably due his stance on the reduction of complexity in running an online business. He promotes running your own (virtual) hardware, reducing build pipelines and not using Platform as a Service providers (<a href="https://www.arjenwiersma.nl/tag:nopaas" class="hashtag"><span>#</span><span class="p-category">nopaas</span></a>). Watch it below.</p>

<p>{{&lt; rawhtml &gt;}}
<iframe width="560" height="315" src="https://www.youtube.com/embed/-cEn_83zRFw?si=djdS1EZ-iATHWc3J" title="YouTube video player" frameborder="0" allowfullscreen=""></iframe>
{{&lt; /rawhtml &gt;}}</p>

<p>It really interested me, for my hobby projects I don&#39;t have a lot of time and I would like the experience to be as smooth as butter. Years ago I wrote Rails based web applications, so the release of Rails 8 with this introduction made me curious how Rails development is nowadays. Spent a weekend working on a small project and it is pretty darn good I must say.</p>

<h1 id="ai-stuff">AI Stuff</h1>

<h2 id="threats-and-stupidity">Threats and stupidity</h2>

<p>Tim Bray talked about AI Angst [2], how the world seems to struggle with using AI and feel threatened by it. At the same time we are full into the time of <a href="https://aavetis.github.io/ai-pr-watcher/">AI Agents</a> with cool projects to track their effectiveness. As it is still possible to <a href="https://simonwillison.net/2025/Jun/11/echoleak/">leak private data</a> using AI agents (echoleak) [25] and AI agents <a href="https://forum.cursor.com/t/cursor-yolo-deleted-everything-in-my-computer/103131">are wiping your computer</a> when stuff becomes too hard [6], it seems we are still some ways off the safe application of AI agents. Most AI applications seem to be some type of “fraud” as well, <a href="https://lifehacker.com/health/ai-powered-calorie-counting-apps-worse-than-expected">such as calory counting apps </a> [7]. Just because you stick AI into it, doesn&#39;t make it better.</p>

<p>I highly recommend reading <a href="https://neilmadden.blog/2025/06/06/a-look-at-cloudflares-ai-coded-oauth-library/">Neil Madden&#39;s</a> review of the AI code written by Cloudflare for their new OAuth library [12]. The process they used is well documented, so we can see exactly where the AI stopped being able to generate the required code and needed human interaction. Most interesting point of this review is that Neil is into security, and this is a security library and, shocker, the AI failed at safe application of security. Luckily the humans of Cloudflare are excellent coders and know their stuff!</p>

<p>There are good applications as well of course, such as <a href="https://www.honeycomb.io/blog/its-the-end-of-observability-as-we-know-it-and-i-feel-fine">Honeycomb finding that computers can work faster then humans</a> [16]. Or having experience developers <a href="https://mgx.me/my-first-attempt-at-ios-app-development">use AI to do something new</a>, such as build an iOS app [14].</p>

<p>Apple, in the meantime, dropped a major paper “Shojaee, Mirzadeh &amp; Alizadeh et al. (2025) The Illusion of Thinking: Understanding the Strengths and Limitations of Reasoning Models via the Lens of Problem Complexity, arXiv.org.” [11], which identifies that current reasoning models are using patterns from the past to build up thoughts and are not really reasoning. This resulted in <a href="https://garymarcus.substack.com/p/seven-replies-to-the-viral-apple">a lot of discussion</a> [13], but the paper seems to hold.</p>

<p>A new repository was launched, <a href="https://github.com/untamed-theory/vibesec">vibesec</a>, which holds AI rules for various programming languages/models.</p>

<h1 id="closing">Closing</h1>

<p>I really should get a better workflow going. Currently my reading goes into Zotero and then on sunday I just categorize the items correctly. Perhaps I can make something that will build this post during the week, as I read it... how do you do it?</p>

<h1 id="the-complete-list">The complete list</h1>

<p>{{&lt; rawhtml &gt;}}
</p>

<p>    <div class="csl-bib-body" style="max-width: 800px; width: 100%;">
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[1]</div><div class="csl-right-inline"><i>Adding Sign Up to the Rails 8 Authentication Generator</i>. <a href="https://robrace.dev/blog/rails-8-authentication-sign-up/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://robrace.dev/blog/rails-8-authentication-sign-up/">https://robrace.dev/blog/rails-8-authentication-sign-up/</a></a>, 2024. Accessed: Jun. 13, 2025. [Online]. Available: <a href="https://robrace.dev/blog/rails-8-authentication-sign-up/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://robrace.dev/blog/rails-8-authentication-sign-up/">https://robrace.dev/blog/rails-8-authentication-sign-up/</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[2]</div><div class="csl-right-inline"><i>AI Angst</i>. <a href="https://www.tbray.org/ongoing/When/202x/2025/06/06/My-AI-Angst" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://www.tbray.org/ongoing/When/202x/2025/06/06/My-AI-Angst">https://www.tbray.org/ongoing/When/202x/2025/06/06/My-AI-Angst</a></a>. Accessed: Jun. 10, 2025. [Online]. Available: <a href="https://www.tbray.org/ongoing/When/202x/2025/06/06/My-AI-Angst" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://www.tbray.org/ongoing/When/202x/2025/06/06/My-AI-Angst">https://www.tbray.org/ongoing/When/202x/2025/06/06/My-AI-Angst</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[3]</div><div class="csl-right-inline"><i>AI Coding Agents</i>. <a href="https://aavetis.github.io/ai-pr-watcher/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://aavetis.github.io/ai-pr-watcher/">https://aavetis.github.io/ai-pr-watcher/</a></a>. Accessed: Jun. 09, 2025. [Online]. Available: <a href="https://aavetis.github.io/ai-pr-watcher/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://aavetis.github.io/ai-pr-watcher/">https://aavetis.github.io/ai-pr-watcher/</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[4]</div><div class="csl-right-inline">J. Arinze, <i>Why Senior Developers Google Basic Syntax</i>. <a href="https://faun.pub/why-senior-developers-google-basic-syntax-fa56445e355f" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://faun.pub/why-senior-developers-google-basic-syntax-fa56445e355f">https://faun.pub/why-senior-developers-google-basic-syntax-fa56445e355f</a></a>, 2025. Accessed: Jun. 10, 2025. [Online]. Available: <a href="https://faun.pub/why-senior-developers-google-basic-syntax-fa56445e355f" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://faun.pub/why-senior-developers-google-basic-syntax-fa56445e355f">https://faun.pub/why-senior-developers-google-basic-syntax-fa56445e355f</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[5]</div><div class="csl-right-inline">Marco M. Beurer-Kellner, <i>GitHub MCP Exploited: Accessing Private Repositories via MCP</i>. <a href="https://invariantlabs.ai/blog/mcp-github-vulnerability" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://invariantlabs.ai/blog/mcp-github-vulnerability">https://invariantlabs.ai/blog/mcp-github-vulnerability</a></a>, 2025. Accessed: Jun. 05, 2025. [Online]. Available: <a href="https://invariantlabs.ai/blog/mcp-github-vulnerability" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://invariantlabs.ai/blog/mcp-github-vulnerability">https://invariantlabs.ai/blog/mcp-github-vulnerability</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[6]</div><div class="csl-right-inline"><i>Cursor YOLO Deleted Everything in My Computer – Bug Reports</i>. <a href="https://forum.cursor.com/t/cursor-yolo-deleted-everything-in-my-computer/103131" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://forum.cursor.com/t/cursor-yolo-deleted-everything-in-my-computer/103131">https://forum.cursor.com/t/cursor-yolo-deleted-everything-in-my-computer/103131</a></a>, 2025. Accessed: Jun. 14, 2025. [Online]. Available: <a href="https://forum.cursor.com/t/cursor-yolo-deleted-everything-in-my-computer/103131" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://forum.cursor.com/t/cursor-yolo-deleted-everything-in-my-computer/103131">https://forum.cursor.com/t/cursor-yolo-deleted-everything-in-my-computer/103131</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[7]</div><div class="csl-right-inline">M. Dietz, <i>I Used AI-Powered Calorie Counting Apps, and They Were Even Worse Than I Expected</i>. <a href="https://lifehacker.com/health/ai-powered-calorie-counting-apps-worse-than-expected" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://lifehacker.com/health/ai-powered-calorie-counting-apps-worse-than-expected">https://lifehacker.com/health/ai-powered-calorie-counting-apps-worse-than-expected</a></a>, 2025. Accessed: Jun. 10, 2025. [Online]. Available: <a href="https://lifehacker.com/health/ai-powered-calorie-counting-apps-worse-than-expected" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://lifehacker.com/health/ai-powered-calorie-counting-apps-worse-than-expected">https://lifehacker.com/health/ai-powered-calorie-counting-apps-worse-than-expected</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[8]</div><div class="csl-right-inline"><i>The Gentle Singularity</i>. <a href="https://blog.samaltman.com/the-gentle-singularity" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://blog.samaltman.com/the-gentle-singularity">https://blog.samaltman.com/the-gentle-singularity</a></a>. Accessed: Jun. 12, 2025. [Online]. Available: <a href="https://blog.samaltman.com/the-gentle-singularity" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://blog.samaltman.com/the-gentle-singularity">https://blog.samaltman.com/the-gentle-singularity</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[9]</div><div class="csl-right-inline"><i>GitHub – Gbrayhan/Hexagonal-Architecture-Clojure: DDD Hexagonal Architecture Using Clojure</i>. <a href="https://github.com/gbrayhan/hexagonal-architecture-clojure/tree/main" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://github.com/gbrayhan/hexagonal-architecture-clojure/tree/main">https://github.com/gbrayhan/hexagonal-architecture-clojure/tree/main</a></a>. Accessed: Jun. 08, 2025. [Online]. Available: <a href="https://github.com/gbrayhan/hexagonal-architecture-clojure/tree/main" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://github.com/gbrayhan/hexagonal-architecture-clojure/tree/main">https://github.com/gbrayhan/hexagonal-architecture-clojure/tree/main</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[10]</div><div class="csl-right-inline">J. G. Herrero, <i>“Localhost Tracking” Explained. It Could Cost Meta 32 Billion.</i> <a href="https://www.zeropartydata.es/p/localhost-tracking-explained-it-could" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://www.zeropartydata.es/p/localhost-tracking-explained-it-could">https://www.zeropartydata.es/p/localhost-tracking-explained-it-could</a></a>, 2025. Accessed: Jun. 11, 2025. [Online]. Available: <a href="https://www.zeropartydata.es/p/localhost-tracking-explained-it-could" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://www.zeropartydata.es/p/localhost-tracking-explained-it-could">https://www.zeropartydata.es/p/localhost-tracking-explained-it-could</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[11]</div><div class="csl-right-inline">P. Shojaee, I. Mirzadeh, K. Alizadeh, M. Horton, S. Bengio, and M. Farajtabar, <i>The Illusion of Thinking: Understanding the Strengths and Limitations of Reasoning Models via the Lens of Problem Complexity</i>. <a href="https://arxiv.org/abs/2506.06941v1" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://arxiv.org/abs/2506.06941v1">https://arxiv.org/abs/2506.06941v1</a></a>, 2025. Accessed: Jun. 15, 2025. [Online]. Available: <a href="https://arxiv.org/abs/2506.06941v1" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://arxiv.org/abs/2506.06941v1">https://arxiv.org/abs/2506.06941v1</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[12]</div><div class="csl-right-inline"><i>A Look at CloudFlare’s AI-coded OAuth Library</i>. 2025.</div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[13]</div><div class="csl-right-inline">G. Marcus, <i>Seven Replies to the Viral Apple Reasoning Paper – and Why They Fall Short</i>. 2025.</div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[14]</div><div class="csl-right-inline"><i>My First Attempt at iOS App Development</i>. <a href="https://mgx.me/my-first-attempt-at-ios-app-development" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://mgx.me/my-first-attempt-at-ios-app-development">https://mgx.me/my-first-attempt-at-ios-app-development</a></a>, 2025. Accessed: Jun. 09, 2025. [Online]. Available: <a href="https://mgx.me/my-first-attempt-at-ios-app-development" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://mgx.me/my-first-attempt-at-ios-app-development">https://mgx.me/my-first-attempt-at-ios-app-development</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[15]</div><div class="csl-right-inline"><i>Network and Information Systems Directive 2 (NIS2) | ENISA</i>. <a href="https://www.enisa.europa.eu/topics/awareness-and-cyber-hygiene/raising-awareness-campaigns/network-and-information-systems-directive-2-nis2" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://www.enisa.europa.eu/topics/awareness-and-cyber-hygiene/raising-awareness-campaigns/network-and-information-systems-directive-2-nis2">https://www.enisa.europa.eu/topics/awareness-and-cyber-hygiene/raising-awareness-campaigns/network-and-information-systems-directive-2-nis2</a></a>. Accessed: Jun. 13, 2025. [Online]. Available: <a href="https://www.enisa.europa.eu/topics/awareness-and-cyber-hygiene/raising-awareness-campaigns/network-and-information-systems-directive-2-nis2" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://www.enisa.europa.eu/topics/awareness-and-cyber-hygiene/raising-awareness-campaigns/network-and-information-systems-directive-2-nis2">https://www.enisa.europa.eu/topics/awareness-and-cyber-hygiene/raising-awareness-campaigns/network-and-information-systems-directive-2-nis2</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[16]</div><div class="csl-right-inline">A. Parker, <i>It’s The End Of Observability As We Know It (And I Feel Fine)</i>. 2025.</div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[17]</div><div class="csl-right-inline">Ruby on Rails, <i>Rails World 2024 Opening Keynote – David Heinemeier Hansson</i>. 2024.</div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[18]</div><div class="csl-right-inline">J. Searls, <i>Why Agents Are Bad Pair Programmers</i>. <a href="https://justin.searls.co/posts/why-agents-are-bad-pair-programmers/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://justin.searls.co/posts/why-agents-are-bad-pair-programmers/">https://justin.searls.co/posts/why-agents-are-bad-pair-programmers/</a></a>, 2025. Accessed: Jun. 10, 2025. [Online]. Available: <a href="https://justin.searls.co/posts/why-agents-are-bad-pair-programmers/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://justin.searls.co/posts/why-agents-are-bad-pair-programmers/">https://justin.searls.co/posts/why-agents-are-bad-pair-programmers/</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[19]</div><div class="csl-right-inline"><i>Self-Host &amp; Tech Independence: The Joy of Building Your Own</i>. <a href="https://www.ssp.sh/blog/self-host-self-independence/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://www.ssp.sh/blog/self-host-self-independence/">https://www.ssp.sh/blog/self-host-self-independence/</a></a>, 2025. Accessed: Jun. 08, 2025. [Online]. Available: <a href="https://www.ssp.sh/blog/self-host-self-independence/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://www.ssp.sh/blog/self-host-self-independence/">https://www.ssp.sh/blog/self-host-self-independence/</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[20]</div><div class="csl-right-inline">N. Sobo, <i>The Case for Software Craftsmanship in the Era of Vibes – Zed Blog</i>. <a href="https://zed.dev/blog/software-craftsmanship-in-the-era-of-vibes" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://zed.dev/blog/software-craftsmanship-in-the-era-of-vibes">https://zed.dev/blog/software-craftsmanship-in-the-era-of-vibes</a></a>, 2025. Accessed: Jun. 13, 2025. [Online]. Available: <a href="https://zed.dev/blog/software-craftsmanship-in-the-era-of-vibes" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://zed.dev/blog/software-craftsmanship-in-the-era-of-vibes">https://zed.dev/blog/software-craftsmanship-in-the-era-of-vibes</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[21]</div><div class="csl-right-inline"><i>Software Is About Promises</i>. <a href="https://www.bramadams.dev/software-is-about-promises/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://www.bramadams.dev/software-is-about-promises/">https://www.bramadams.dev/software-is-about-promises/</a></a>, 2025. Accessed: Jun. 10, 2025. [Online]. Available: <a href="https://www.bramadams.dev/software-is-about-promises/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://www.bramadams.dev/software-is-about-promises/">https://www.bramadams.dev/software-is-about-promises/</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[22]</div><div class="csl-right-inline">N. C. Team, <i>NIS2 Cyber | Comprehensive Guide to EU Cybersecurity Directive</i>. <a href="https://www.nis2-cyber.com/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://www.nis2-cyber.com/">https://www.nis2-cyber.com/</a></a>. Accessed: Jun. 13, 2025. [Online]. Available: <a href="https://www.nis2-cyber.com/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://www.nis2-cyber.com/">https://www.nis2-cyber.com/</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[23]</div><div class="csl-right-inline">U. Theory, <i>Untamed-Theory/Vibesec</i>. 2025.</div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[24]</div><div class="csl-right-inline">J. Westenberg, <i>Smart People Don’t Chase Goals; They Create Limits</i>. <a href="https://www.joanwestenberg.com/smart-people-dont-chase-goals-they-create-limits/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://www.joanwestenberg.com/smart-people-dont-chase-goals-they-create-limits/">https://www.joanwestenberg.com/smart-people-dont-chase-goals-they-create-limits/</a></a>, 2025. Accessed: Jun. 10, 2025. [Online]. Available: <a href="https://www.joanwestenberg.com/smart-people-dont-chase-goals-they-create-limits/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://www.joanwestenberg.com/smart-people-dont-chase-goals-they-create-limits/">https://www.joanwestenberg.com/smart-people-dont-chase-goals-they-create-limits/</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[25]</div><div class="csl-right-inline">S. Willison, <i>Breaking down `EchoLeak’, the First Zero-Click AI Vulnerability Enabling Data Exfiltration from Microsoft 365 Copilot</i>. <a href="https://simonwillison.net/2025/Jun/11/echoleak/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://simonwillison.net/2025/Jun/11/echoleak/">https://simonwillison.net/2025/Jun/11/echoleak/</a></a>. Accessed: Jun. 12, 2025. [Online]. Available: <a href="https://simonwillison.net/2025/Jun/11/echoleak/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://simonwillison.net/2025/Jun/11/echoleak/">https://simonwillison.net/2025/Jun/11/echoleak/</a></a></div>
      </div>
      <div class="csl-entry" style="display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; margin-bottom: 1.25rem; font-size: 0.95rem;">
        <div class="csl-left-margin" style="color: #4b5563; font-weight: 500; text-align: right;">[26]</div><div class="csl-right-inline">S. Willison, <i>Design Patterns for Securing LLM Agents against Prompt Injections</i>. <a href="https://simonwillison.net/2025/Jun/13/prompt-injection-design-patterns/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://simonwillison.net/2025/Jun/13/prompt-injection-design-patterns/">https://simonwillison.net/2025/Jun/13/prompt-injection-design-patterns/</a></a>. Accessed: Jun. 13, 2025. [Online]. Available: <a href="https://simonwillison.net/2025/Jun/13/prompt-injection-design-patterns/" style="color: #2563eb; text-decoration: none; word-break: break-word;"><a href="https://simonwillison.net/2025/Jun/13/prompt-injection-design-patterns/">https://simonwillison.net/2025/Jun/13/prompt-injection-design-patterns/</a></a></div>
      </div>
    </div></p>

<p>{{&lt; /rawhtml &gt;}}</p>
]]></content:encoded>
      <guid>https://www.arjenwiersma.nl/the-things-i-read-this-week-24</guid>
      <pubDate>Sat, 14 Jun 2025 08:00:00 +0000</pubDate>
    </item>
  </channel>
</rss>