<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>articles | Hugo Ferreira</title>
    <link>https://hugo.ferreira.cc/tags/articles/</link>
    <description>Recent content in Articles by Hugo Ferreira</description>
    
    <image>
      
      <title>articles | Hugo Ferreira</title>
      <url>https://hugo.ferreira.cc/hf-bw.jpg</url>
      <link>https://hugo.ferreira.cc/tags/articles/</link>
      
    </image>
    <generator>Hugo</generator>
    <language>en-GB</language>
    
    <copyright>2000–2024 by Hugo Ferreira · CC BY 4.0</copyright>
    
    <lastBuildDate>Wed, 29 May 2024 17:26:20 +0000</lastBuildDate>
    <atom:link href="https://hugo.ferreira.cc/tags/articles/index.xml" rel="self" type="application/rss+xml" />
    <item>
      
      <title>🔗 Essays on programming I think about a lot</title>
      <link>https://hugo.ferreira.cc/progessays/</link>
      
      <pubDate>Wed, 29 May 2024 17:26:20 +0000</pubDate>
      <guid>https://hugo.ferreira.cc/progessays/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://www.benkuhn.net/progessays/&#34;&gt;Essays on programming I think about a lot | benkuhn.net&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Every so often I read an essay that I end up thinking about, and citing in conversation, over and over again.&lt;/p&gt;
&lt;p&gt;Here’s my index of all the ones of those I can remember!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;blockquote&gt;
&lt;p&gt;Nelson Elhage, &lt;a href=&#34;https://blog.nelhage.com/post/computers-can-be-understood/&#34;&gt;Computers can be understood&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;Dan McKinley, &lt;a href=&#34;https://mcfunley.com/choose-boring-technology&#34;&gt;Choose Boring Technology&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;Sandy Metz, &lt;a href=&#34;https://www.sandimetz.com/blog/2016/1/20/the-wrong-abstraction&#34;&gt;The Wrong Abstraction&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;Patrick McKenzie, &lt;a href=&#34;https://www.kalzumeus.com/2010/06/17/falsehoods-programmers-believe-about-names/&#34;&gt;Falsehoods Programmers Believe About Names&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;Thomas Ptacek, &lt;a href=&#34;https://sockpuppet.org/blog/2015/03/06/the-hiring-post/&#34;&gt;The Hiring Post&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;Gergely Orosz, &lt;a href=&#34;https://blog.pragmaticengineer.com/the-product-minded-engineer/&#34;&gt;The Product-Minded Engineer&lt;/a&gt;&lt;/p&gt;</description>

      
      
      <content:encoded><![CDATA[<p><a href="https://www.benkuhn.net/progessays/">Essays on programming I think about a lot | benkuhn.net</a></p>
<blockquote>
<p>Every so often I read an essay that I end up thinking about, and citing in conversation, over and over again.</p>
<p>Here’s my index of all the ones of those I can remember!</p>
</blockquote>
<hr>
<blockquote>
<p>Nelson Elhage, <a href="https://blog.nelhage.com/post/computers-can-be-understood/">Computers can be understood</a></p>
</blockquote>
<blockquote>
<p>Dan McKinley, <a href="https://mcfunley.com/choose-boring-technology">Choose Boring Technology</a></p>
</blockquote>
<blockquote>
<p>Sandy Metz, <a href="https://www.sandimetz.com/blog/2016/1/20/the-wrong-abstraction">The Wrong Abstraction</a></p>
</blockquote>
<blockquote>
<p>Patrick McKenzie, <a href="https://www.kalzumeus.com/2010/06/17/falsehoods-programmers-believe-about-names/">Falsehoods Programmers Believe About Names</a></p>
</blockquote>
<blockquote>
<p>Thomas Ptacek, <a href="https://sockpuppet.org/blog/2015/03/06/the-hiring-post/">The Hiring Post</a></p>
</blockquote>
<blockquote>
<p>Gergely Orosz, <a href="https://blog.pragmaticengineer.com/the-product-minded-engineer/">The Product-Minded Engineer</a></p>
</blockquote>
<blockquote>
<p>tef, <a href="https://programmingisterrible.com/post/139222674273/write-code-that-is-easy-to-delete-not-easy-to">Write code that is easy to delete, not easy to extend</a> … tef also wrote a follow-up, <a href="https://programmingisterrible.com/post/176657481103/repeat-yourself-do-more-than-one-thing-and">Repeat yourself, do more than one thing, and rewrite everything</a></p>
</blockquote>
<blockquote>
<p>Joel Spolsky, <a href="https://www.joelonsoftware.com/2002/11/11/the-law-of-leaky-abstractions/">The Law of Leaky Abstractions</a></p>
</blockquote>
<blockquote>
<p><a href="https://blog.nelhage.com/post/reflections-on-performance/">Reflections on software performance</a> by Nelson Elhage</p>
</blockquote>
<blockquote>
<p>Brandur Leach’s series on using databases to ensure correct edge-case behavior: <a href="https://www.benkuhn.net/progessays/#:~:text=building%20robust%20systems%20with%20acid%20and%20constraints%2C%20using%20atomic%20transactions%20to%20power%20an%20idempotent%20api%2C%20transactionally%20staged%20job%20drains%20in%20postgres%2C%20implementing%20stripe%2Dlike%20idempotency%20keys%20in%20postgres">…</a></p>
</blockquote>
<blockquote>
<p>Jeff Hodges, <a href="https://www.somethingsimilar.com/2013/01/14/notes-on-distributed-systems-for-young-bloods/">Notes on Distributed Systems for Young Bloods</a></p>
</blockquote>
<blockquote>
<p>J.H. Saltzer, D.P. Reed and D.D. Clark, <a href="http://web.mit.edu/Saltzer/www/publications/endtoend/endtoend.pdf">End-to-End Arguments in System Design</a></p>
</blockquote>
<blockquote>
<p>Bret Victor, <a href="https://vimeo.com/36579366">Inventing on Principle</a></p>
</blockquote>
]]></content:encoded>
    </item>
  </channel>
</rss>
