<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[Underspecified]]></title><description><![CDATA[Underspecified]]></description><link>https://articles.danberges.com</link><image><url>https://substackcdn.com/image/fetch/$s_!VtSV!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4805fdc1-52f1-4254-bee4-a90c0380d35d_1280x1280.png</url><title>Underspecified</title><link>https://articles.danberges.com</link></image><generator>Substack</generator><lastBuildDate>Sun, 15 Nov 2026 00:32:05 GMT</lastBuildDate><atom:link href="https://articles.danberges.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[TestAccount]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[danberges@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[danberges@substack.com]]></itunes:email><itunes:name><![CDATA[Dan Berges]]></itunes:name></itunes:owner><itunes:author><![CDATA[Dan Berges]]></itunes:author><googleplay:owner><![CDATA[danberges@substack.com]]></googleplay:owner><googleplay:email><![CDATA[danberges@substack.com]]></googleplay:email><googleplay:author><![CDATA[Dan Berges]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Code like it's 2021 (no programming skills required, no AI allowed)]]></title><description><![CDATA[Here&#8217;s a short coding exercise for non-programmers.]]></description><link>https://articles.danberges.com/p/code-like-its-2021-no-programming</link><guid isPermaLink="false">https://articles.danberges.com/p/code-like-its-2021-no-programming</guid><dc:creator><![CDATA[Dan Berges]]></dc:creator><pubDate>Thu, 01 Oct 2026 11:00:10 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/661b094b-e775-4d50-b44a-a2ca00cde348_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Here&#8217;s a short coding exercise for non-programmers. Could Claude or Codex do it? Absolutely. But I&#8217;m going to ask you to do it by hand, like it&#8217;s 2021 again. It&#8217;ll be good for your brain.</p><p>We&#8217;re going to draw this with code:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ihex!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff07ced83-0a1c-44b7-ba4b-20f4752d10f6_1200x1200.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ihex!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff07ced83-0a1c-44b7-ba4b-20f4752d10f6_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!Ihex!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff07ced83-0a1c-44b7-ba4b-20f4752d10f6_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!Ihex!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff07ced83-0a1c-44b7-ba4b-20f4752d10f6_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!Ihex!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff07ced83-0a1c-44b7-ba4b-20f4752d10f6_1200x1200.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ihex!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff07ced83-0a1c-44b7-ba4b-20f4752d10f6_1200x1200.png" width="1200" height="1200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f07ced83-0a1c-44b7-ba4b-20f4752d10f6_1200x1200.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1200,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:96552,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://articles.danberges.com/i/218320478?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff07ced83-0a1c-44b7-ba4b-20f4752d10f6_1200x1200.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Ihex!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff07ced83-0a1c-44b7-ba4b-20f4752d10f6_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!Ihex!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff07ced83-0a1c-44b7-ba4b-20f4752d10f6_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!Ihex!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff07ced83-0a1c-44b7-ba4b-20f4752d10f6_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!Ihex!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff07ced83-0a1c-44b7-ba4b-20f4752d10f6_1200x1200.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>There&#8217;ll be some high school math involved. We&#8217;ll be able to create variations, as if we were going to mint 10,000 NFTs (remember those?) and become rich overnight.</p><p>To get started, go to <a href="https://p5js.org/">p5.js</a> and click Start Coding.</p><p>You&#8217;ll see this:</p><pre><code><code>function setup() {
  createCanvas(400, 400);
}

function draw() {
  background(220);
}</code></code></pre><p>Great, we&#8217;re in business.</p><p>Let&#8217;s make the canvas 600x600, change the background, set the stroke weight, and create an ellipse for the body that&#8217;s almost hidden. Type it by hand instead of copy-pasting.</p><pre><code><code>function setup() {
  createCanvas(600, 600);
}

function draw() {
  background('#DEF6FE');

  strokeWeight(5);
  
  fill('#949494');
  ellipse(300, 640, 640, 440);
}</code></code></pre><p>Hit play to see the results. Each statement ends with a semicolon, but it&#8217;ll still work if you forget to add it.</p><p>Whenever we write text, we need quotation marks. When we write numbers, we don&#8217;t. &#8216;#949494&#8217; is considered text (it&#8217;s a hex code for a color), 600 is a number.</p><p>The four numbers in the ellipse function mean, respectively: x for center, y for center, width and height. We start counting y from the top. The canvas is 600x600, so the center of our ellipse is below the canvas.</p><p>Let&#8217;s draw the ears. I&#8217;m going to add some comments, which is text that starts with &#8216;//&#8217; and is ignored by the interpreter.</p><pre><code><code>function setup() {
  createCanvas(600, 600);
}

function draw() {
  background('#DEF6FE');

  strokeWeight(5);

  // Body
  fill('#949494');
  ellipse(300, 640, 640, 440);

  // Ears
  fill('#949494');
  ellipse(125, 135, 170, 170);
  ellipse(475, 135, 170, 170);

  // Inner ears
  fill('#878786');
  ellipse(125, 135, 140, 140);
  ellipse(475, 135, 140, 140);
}</code></code></pre><p>If width and height are the same, the ellipse is really a circle. Now face, eyes and snout, which are also circles.</p><pre><code><code>function setup() {
  createCanvas(600, 600);
}

function draw() {
  background('#DEF6FE');

  strokeWeight(5);

  // Body
  fill('#949494');
  ellipse(300, 640, 640, 440);

  // Ears
  fill('#949494');
  ellipse(125, 135, 170, 170);
  ellipse(475, 135, 170, 170);

  // Inner ears
  fill('#878786');
  ellipse(125, 135, 140, 140);
  ellipse(475, 135, 140, 140);

  // Face
  fill('#949494');
  ellipse(300, 330, 450, 440);

  // Eyes
  fill('#FFFFFF');
  ellipse(230, 250, 82, 82);
  ellipse(370, 250, 82, 82);

  // Iris
  fill('#52D2FE');
  ellipse(230, 250, 59, 59);
  ellipse(370, 250, 59, 59);

  // Pupils
  fill('#000000');
  ellipse(230, 250, 30, 30);
  ellipse(370, 250, 30, 30);

  // Snout
  fill('#7A7A7A');
  ellipse(300, 390, 200, 200);
}</code></code></pre><p>For the mouth, we&#8217;ll need the arc function, which takes the same params as the ellipse function, plus two more: where we start drawing, and where we stop, in radians. We start at 0 and end at &#960;, which is halfway.</p><p>In p5.js, angle 0 points right (3 o&#8217;clock) and angles go clockwise because y counts downward, so going from 0 to &#960; draws the bottom half, which gives us a mouth.</p><p>We&#8217;ll also add the nose, which is just a circle.</p><pre><code><code>function setup() {
  createCanvas(600, 600);
}

function draw() {
  background('#DEF6FE');

  strokeWeight(5);

  // Body
  fill('#949494');
  ellipse(300, 640, 640, 440);

  // Ears
  fill('#949494');
  ellipse(125, 135, 170, 170);
  ellipse(475, 135, 170, 170);

  // Inner ears
  fill('#878786');
  ellipse(125, 135, 140, 140);
  ellipse(475, 135, 140, 140);

  // Face
  fill('#949494');
  ellipse(300, 330, 450, 440);

  // Eyes
  fill('#FFFFFF');
  ellipse(230, 250, 82, 82);
  ellipse(370, 250, 82, 82);

  // Iris
  fill('#52D2FE');
  ellipse(230, 250, 59, 59);
  ellipse(370, 250, 59, 59);

  // Pupils
  fill('#000000');
  ellipse(230, 250, 30, 30);
  ellipse(370, 250, 30, 30);

  // Snout
  fill('#7A7A7A');
  ellipse(300, 390, 200, 200);

  // Mouth
  fill('#000000');
  arc(300, 420, 70, 65, 0, PI);

  // Nose
  fill('#000000');
  ellipse(300, 350, 80, 80);
}</code></code></pre><p>Right click on the image and save it. Change some colors, and save a few more. Call one of them &#8220;rare&#8221; and sell it to Justin Bieber for $300,000.</p><p><em>Dan Berges is the founder and managing director of <a href="https://www.bergesinstitutespanish.com/">Berges Institute</a>, an online Spanish language school, and lead developer of <a href="https://berges.ai/">Berges AI</a>, a text assistant built on open-weight models that gives direct, concise answers. He also publishes content in Spanish about descriptive grammar, semantics, and pragmatics on <a href="https://www.instagram.com/danberges/">Instagram</a>, <a href="https://www.youtube.com/@danberges">YouTube</a>, and <a href="https://www.tiktok.com/@dan_berges">TikTok</a>.</em></p>]]></content:encoded></item><item><title><![CDATA[Do you need a personal brand? Here's how I got mine.]]></title><description><![CDATA[About two years ago, at 39, I started posting short videos on Instagram and TikTok, and I sort of became famous in Spain.]]></description><link>https://articles.danberges.com/p/do-you-need-a-personal-brand-heres</link><guid isPermaLink="false">https://articles.danberges.com/p/do-you-need-a-personal-brand-heres</guid><dc:creator><![CDATA[Dan Berges]]></dc:creator><pubDate>Wed, 30 Sep 2026 10:38:19 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/fb88e922-5dcd-4c9d-9cd1-154560e98b4c_7048x5181.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>About two years ago, at 39, I started posting short videos on Instagram and TikTok, and I sort of became famous in Spain. Not Rosal&#237;a famous, but people would often recognize me on the street and say they were fans. It was super weird, but very cool. Here&#8217;s how I did it, the pros, and the cons.</p><p>I still have the first short videos I published set as public, even though they make me cringe. They had a &#8220;fake-podcast&#8221; setup, which I thought was popular at the time. And I&#8217;d follow some advice from gurus, trying to talk about things I knew about, and explaining how I do things, and not how people should do things. Great advice in theory.</p><p>I&#8217;ve run a Spanish language school for adults for 13 years. So I started making videos about marketing, SEO, controlling costs... That type of stuff. They were boring, and my delivery wasn&#8217;t great. And when I&#8217;d add some sort of attention hook, people would often think I was trying to sell them a how-to-get-rich-quick course.</p><h2><strong>Going viral</strong></h2><p>Eventually I had my first viral hit. It was a video I recorded after coming back from a run, wearing a white tank top, and explaining Russell&#8217;s paradox.</p><p>People started sharing, commenting, and liking like crazy, and I didn&#8217;t know what to make of it. I analyzed it. It had a hook: &#8220;Esto te va a volar la cabeza,&#8221; literally &#8220;This is going to blow your head off,&#8221; meaning &#8220;This is going to blow your mind.&#8221; Then I said the video required some deep focus, and I proceeded to explain the paradox in detail, talking kind of fast.</p><p>Since I run a language school, I studied semantics and pragmatics years ago with Sam Al Khatib in NYC, and I&#8217;ve written several books on Spanish grammar, I thought people would enjoy &#8220;difficult&#8221; content on linguistics if I packaged it right, since it was somehow similar to set theory logic. And this I could replicate. There aren&#8217;t many paradoxes like Russell&#8217;s, but there&#8217;s lots of stuff to say about references, elided syntactic elements, and Paul Grice.</p><p>I&#8217;d have different video &#8220;templates,&#8221; in a way, although they were all different, and I&#8217;d spend a fair amount of time writing the scripts for each one. Some would have some sort of crazy story in which some syntax or semantics concept would be embedded, some would make some connection between some deep philosophical question and some linguistic concept, and some would just be a long and hard-to-follow setup for a punchline.</p><p>I eventually reached 65k+ followers on Instagram. Nothing crazy, but pretty good. And I&#8217;d be having drinks with friends, or eating lunch at my regular spot near my office, and people would say to me: &#8220;Oh, Dan Berges! I&#8217;m a big fan!&#8221;</p><h2><strong>The algorithm</strong></h2><p>I enjoy making these short videos, but with the way the recommendation algorithms work, you don&#8217;t have full creative freedom, and you have to follow some principles. You need to hook, retain, and reward. That means stopping the scroll, convincing people to watch the whole video, and leaving them with a good feeling so they&#8217;ll watch your next one when it shows up on the For You page.</p><p>Back in the day, you&#8217;d get subscribers on, say, YouTube, and the platform would heavily show your content to people who followed you. TikTok changed the game. Its algorithm clearly works per video. Being a famous influencer helps stop the scroll, but it doesn&#8217;t guarantee virality, while the first video posted by a new account can get millions of views if it&#8217;s good, as per the algorithm&#8217;s definition of &#8220;good.&#8221;</p><p>Meta and Google had to adapt, and although Instagram and YouTube still seem to have a bias towards showing content to followers, individual pieces of content get ranked on their own a lot more than, say, 8 years ago.</p><h2><strong>Virality is a double-edged sword</strong></h2><p>Some of my videos reached more than a million views. And that usually translates into getting a lot of new followers, but that&#8217;s it. The first time I had a viral hit I had nothing to sell. Eventually I published a book for a general audience, which is linked on my profile. The thing is, viral videos now sell very few books, while sometimes more niche, nerdy videos generate a lot of sales.</p><p>Branding expert Caleb Ralston advises creators to actively stay away from virality. In my experience, some virality can help. Vanity metrics like followers and likes do help your &#8220;brand.&#8221; But yeah, exclusively chasing virality can possibly harm you while not generating actions (sales, signups, whatever) in any meaningful number.</p><h2><strong>Money talks</strong></h2><p>For me, the ROI isn&#8217;t there. I haven&#8217;t done any brand deals. In book sales, I make something between 100 and 400 euros per month in royalties, depending on the season and the performance of my last videos. I&#8217;ve been invited to a couple of cool speaking engagements, and even though I&#8217;m not great at public speaking, I always accept them and try to say something of value. And I&#8217;m followed by people that I admire. High school teachers, people in academia, famous actors and broadcasters...</p><h2><strong>Actionable advice</strong></h2><p>I don&#8217;t like to give people advice, but here&#8217;s what worked for me.</p><ol><li><p>I picked a topic I knew about.</p></li><li><p>I focused on humor and creativity to make something unique and shareable.</p></li><li><p>I analyzed what worked and what didn&#8217;t, and tried to improve every new piece of content based on that data.</p></li></ol><h2><strong>So was it worth it?</strong></h2><p>For me, yes. But it&#8217;s not a silver bullet for anything. For an account to work, it has to be mostly non-promotional. And burnout is real. The algorithm is exhausting. Even if you take the stoic stance of not worrying about externals, i.e. things that you can&#8217;t control, these companies are really good at getting people hooked on the apps, both as consumers and as producers. So you keep looking at the analytics, wondering what went wrong on the last video, and what the next hook could be.</p><p>The other thing is you can&#8217;t stop doing it. Competition for attention is brutal in this day and age. Here&#8217;s Alex Becker&#8217;s take on &#8220;creating a personal brand&#8221; in big 2026:</p><blockquote><p>Keep in mind. At 40 you will not just have to maintain this. You will need to be shaking your ass 5x harder, every year, as the competition to be relevant gets harder and harder.</p></blockquote><p>So do you need a personal brand? I don&#8217;t know, I&#8217;m 41 now and I keep dancing. But I make sure to enjoy it, and I&#8217;m fortunate enough to not depend on it for my income. If that&#8217;s also the case for you, I&#8217;d give it a try. It has a lot of non-monetary perks. It&#8217;s creative, it forces you to think and write, it has fairly fast feedback that you might not like sometimes, it makes you good at speaking in front of a camera, and, most importantly, it forces you to overcome your fears of failing in public or being cringe, which is an amazing skill.</p><p><em>Dan Berges is the founder and managing director of <a href="https://www.bergesinstitutespanish.com/">Berges Institute</a>, an online Spanish language school, and lead developer of <a href="https://berges.ai/">Berges AI</a>, a text assistant built on open-weight models that gives direct, concise answers. He also publishes content in Spanish about descriptive grammar, semantics, and pragmatics on <a href="https://www.instagram.com/danberges/">Instagram</a>, <a href="https://www.youtube.com/@danberges">YouTube</a>, and <a href="https://www.tiktok.com/@dan_berges">TikTok</a>.</em></p>]]></content:encoded></item><item><title><![CDATA[Let's play more wicked games]]></title><description><![CDATA[Tiger Woods started playing golf when he was 2.]]></description><link>https://articles.danberges.com/p/lets-play-more-wicked-games</link><guid isPermaLink="false">https://articles.danberges.com/p/lets-play-more-wicked-games</guid><dc:creator><![CDATA[Dan Berges]]></dc:creator><pubDate>Tue, 29 Sep 2026 09:39:34 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/1c90e699-b784-4fa4-95da-362bbcec4c4b_1920x1241.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Tiger Woods started playing golf when he was 2. He specialized early and eventually became one of the greatest golfers ever.</p><p>In <em>Range</em>, David Epstein compares it with the story of Roger Federer, who played all sorts of sports as a kid and only focused on tennis later on. And yet he eventually became one of the greatest tennis players ever. Federer&#8217;s path, Epstein argues, is actually more common among elite athletes than Tiger&#8217;s.</p><p>Epstein asks a simple question: which story is the rule, and which is the exception? It turns out it depends on the game. He then explains, borrowing two terms from the psychologist Robin Hogarth, that a kind game is one where the rules are clear, patterns repeat all the time, and feedback is fast and accurate. Golf is a kind game. Chess is the ultimate kind game.</p><p>On the other side of the spectrum, there are wicked games. When playing wicked games, Epstein argues, we often benefit from breadth more than depth. Think of litigation law, for example. It&#8217;s pretty wicked, and litigation lawyers tend to do better when they have curiosity and understand people, and whether they started memorizing laws at 4 or not is mostly irrelevant.</p><h2><strong>Claude&#8217;s sassiness</strong></h2><p>I like chess. I&#8217;m not very good at it, but I know some openings and defenses. I&#8217;m also a programmer. And, like many others, I realized back in November 2025 how Opus 4.5 was faster and better at writing code in the stack I&#8217;ve used for years.</p><p>I asked Claude about the future, about whether teams of human plus machine will be unbeatable, as I remember from <em>Range</em> how there were these chess championships a couple decades ago in which both humans and computers were able to participate, and centaurs, teams of a human and a computer, would usually end up winning. But then Claude reminded me that, eventually, computers started beating everybody, human or centaur.</p><h2><strong>Getting wicked</strong></h2><p>A lot of programmers are having a hard time with AI. Last week, at Rails World, the main Rails conference (Rails is a legendary framework for building web apps), its creator, DHH, told everyone that it&#8217;s over, that we&#8217;ll just write specs in English, models will generate the code, and we&#8217;ll just review the output, but not the code.</p><p>People were angry. There was a thread in the Rails subreddit asking whether DHH had completely lost his mind. And this is what he responded on X:</p><blockquote><p>&#8220;Have I now become your enemy by telling you the truth?&#8221; &#8212; Galatians 4:16</p></blockquote><p>It turns out coding is, in most use cases, a kind game, and computers and AI ghosts, as Andrej Karpathy likes to call them, are pretty good at it.</p><h2><strong>Grief and acceptance</strong></h2><p>I personally like Claude Code. I miss being in &#8220;the zone,&#8221; but the goal of programming was outcomes, making things, not staring at your methods after writing them for hours thinking: &#8220;Yeah, I&#8217;m so smart.&#8221;</p><p>Now I can deploy features faster, and focus on other, more wicked things. Robert Greene asked his readers to &#8220;assume formlessness.&#8221; Maybe in the (near) future nobody will be a programmer. DHH says he isn&#8217;t one now, and that he&#8217;s a professional maker.</p><p>The key here is probably letting go of the grief, but if you&#8217;ve spent your whole life mastering chess or Java, I get it, it&#8217;s hard.</p><h2><strong>The inevitable</strong></h2><p>Anthropic, OpenAI, and Moonshot aren&#8217;t going to stop training models. They&#8217;ll get better. At the moment, frontier models can do some things very well, others not so much.</p><p>In <em>What Technology Wants</em> (2010), Kevin Kelly talks in depth about technological determinism. The light bulb was invented in several places at the same time, and it was just bound to happen. By his logic, if we reran life on Earth, we&#8217;d end up with social media and AI. The constraints of physics and biology, whether God-given or universe-given, make it inevitable.</p><p>And now AI is here. Autocomplete on steroids? Sure, but it can code better than me, and it seems to &#8220;know&#8221; why something should be abstracted away into a trait or an interface.</p><h2><strong>The compromise</strong></h2><p>Writing code is a kind game. Deciding what&#8217;s worth building is a wicked one.</p><p>So, I don&#8217;t know, I&#8217;m with DHH on this, and I&#8217;ll take the advice he offered at Rails World on looking at the past with joy, being happy that I had the chance to write code by hand for many years, and spend countless hours in &#8220;the zone.&#8221; I&#8217;ll just keep making things, and let Claude do the typing. We still have the power to steer these &#8220;ghosts,&#8221; and, at least for now, they tend to do what we ask them to. How lucky are we?</p><p><em>Dan Berges is the founder and managing director of <a href="https://www.bergesinstitutespanish.com/">Berges Institute</a>, an online Spanish language school, and lead developer of <a href="https://berges.ai/">Berges AI</a>, a text assistant built on open-weight models that gives direct, concise answers. He also publishes content in Spanish about descriptive grammar, semantics, and pragmatics on <a href="https://www.instagram.com/danberges/">Instagram</a>, <a href="https://www.youtube.com/@danberges">YouTube</a>, and <a href="https://www.tiktok.com/@dan_berges">TikTok</a>.</em></p>]]></content:encoded></item><item><title><![CDATA[What happens when AI learns from AI?]]></title><description><![CDATA[&#8220;AI models collapse when trained on recursively generated data.&#8221; This was the title of an unsettling paper published in Nature in 2024.]]></description><link>https://articles.danberges.com/p/what-happens-when-ai-learns-from</link><guid isPermaLink="false">https://articles.danberges.com/p/what-happens-when-ai-learns-from</guid><dc:creator><![CDATA[Dan Berges]]></dc:creator><pubDate>Mon, 28 Sep 2026 15:30:50 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/30d8b94d-a9b5-437c-aba3-35ce8a32d060_815x832.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>&#8220;AI models collapse when trained on recursively generated data.&#8221; This was the title of an unsettling paper published in Nature in 2024.</p><p>The idea is very simple.</p><p>AI models learn from text written by humans, on the internet and from digitized books. But a lot of the text online is now written by AI.</p><p>So what happens when the next generation of models learns from the output of the last one?</p><p>They get worse. In a specific way.</p><h2><strong>The weirdest parts disappear first</strong></h2><p>When a model learns from data, it tends to get the <em>most common patterns</em> right. Ideas that are common, ways in which people phrase things and tone in say Reddit or Stack Overflow.</p><p>But, understandably, models are worse at learning less common stuff, since it&#8217;s, well, less common in the training data.</p><p>So when it generates text, the rare stuff shows up even less. The next model, trained on that text, sees it even less. After a few rounds of this, it&#8217;s gone.</p><p>Statisticians call these the tails of the distribution. The paper found the tails vanish first.</p><p>If this keeps going, even the middle starts to shrink. The model&#8217;s outputs get more and more alike, repeating blurry versions of the <em>most common patterns</em>, with less and less variety.</p><h2><strong>The jackrabbit example</strong></h2><p>In the paper, researchers fine-tuned a model over and over on its own output. They gave the model a prompt about medieval church architecture, and by the ninth generation the model was talking nonsense about jackrabbits with differently colored tails: black, white, blue, red, and yellow-tailed jackrabbits, specifically. Churches were gone.</p><p>This was done with OPT-125m, a model that&#8217;s tiny compared to today&#8217;s frontier models. But the researchers found the same pattern in much simpler statistical models too, which suggests it&#8217;s not a quirk of one small model. It&#8217;s how learning from your own output works.</p><h2><strong>Why this happens</strong></h2><p>Three types of errors stack on top of each other.</p><ul><li><p>Sampling: A model sees a finite amount of data. Rare things may not show up enough to be &#8220;learned.&#8221;</p></li><li><p>Limited capacity: Models can&#8217;t represent everything perfectly. They have to simplify things, somehow, and they do that by leaving out the unusual.</p></li><li><p>Imperfect learning: Training itself is approximate. Every model gets a few things slightly wrong.</p></li></ul><p>In one generation, these errors are tiny. Across many generations, they compound. Each model inherits the previous model&#8217;s blind spots and adds its own issues.</p><h2><strong>A lesson from natural languages</strong></h2><p>When a language is passed down through fewer and fewer speakers, the unusual idioms, the irregular verbs, or the regional words go first. The language becomes in a way simpler and more uniform.</p><h2><strong>Is AI doomed to eat itself?</strong></h2><p>Maybe, but probably not.</p><p>Follow-up research found that collapse mostly happens when synthetic data fully replaces human data. When new AI-generated data is added on top of the original human data, instead of replacing it, the problem is smaller.</p><p>And synthetic data can be filtered and checked, by humans, by tests, or by other models, though checking at scale isn&#8217;t easy. The thing is avoiding blindly recycled slop generation after generation. And that&#8217;s really a data curation thing.</p><h2><strong>What this means</strong></h2><p>Human-made data just got more valuable.</p><p>The messy, weird things people still say daily on the internet (on Reddit, in comment sections, on endless arguments on X...) can help keep the new models connected to reality. The rare perspectives are what matter most, since they&#8217;re the first to disappear.</p><p><em>Dan Berges is the founder and managing director of <a href="https://www.bergesinstitutespanish.com/">Berges Institute</a>, an online Spanish language school, and lead developer of <a href="https://berges.ai/">Berges AI</a>, a text assistant built on open-weight models that gives direct, concise answers. He also publishes content in Spanish about descriptive grammar, semantics, and pragmatics on <a href="https://www.instagram.com/danberges/">Instagram</a>, <a href="https://www.youtube.com/@danberges">YouTube</a>, and <a href="https://www.tiktok.com/@dan_berges">TikTok</a>.</em></p>]]></content:encoded></item><item><title><![CDATA[How ChatGPT actually works, explained without the math]]></title><description><![CDATA[In 2017, eight researchers at Google published a paper called &#8220;Attention Is All You Need.&#8221;]]></description><link>https://articles.danberges.com/p/how-chatgpt-actually-works-explained</link><guid isPermaLink="false">https://articles.danberges.com/p/how-chatgpt-actually-works-explained</guid><dc:creator><![CDATA[Dan Berges]]></dc:creator><pubDate>Sun, 27 Sep 2026 11:35:10 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/3d51c4a1-9cb5-4eb4-b8cf-493234657447_1260x896.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In 2017, eight researchers at Google published a paper called &#8220;Attention Is All You Need.&#8221;</p><p>Almost nobody outside AI noticed.</p><p>Every major AI chatbot you use today is built on that one idea.</p><p>You don&#8217;t need math to understand it. You just need to understand one problem about language.</p><h2><strong>Words don&#8217;t have meanings. They have meanings in context.</strong></h2><p>Take the word &#8220;bank.&#8221;</p><p>&#8220;I sat by the bank.&#8221; &#8220;I deposited money at the bank.&#8221; &#8220;Don&#8217;t bank on it.&#8221;</p><p>Same word, three meanings. You didn&#8217;t have to think about it. Your brain looked at the surrounding words and picked the right one instantly.</p><p>The linguist J.R. Firth wrote in 1957: &#8220;You shall know a word by the company it keeps.&#8221;</p><p>The hard part here was teaching machines to do it.</p><h2><strong>The old way: reading one word at a time</strong></h2><p>Before 2017, models read like you read through a keyhole. One word at a time, left to right.</p><p>And this had two problems.</p><p>They&#8217;d forget things. For example, by the end of a long sentence, the beginning would&#8217;ve faded. If a pronoun referred to something twenty words back, the model often lost track of what it pointed to.</p><p>They were also slow to train. Word two had to wait for word one, and word three had to wait for word two. You couldn&#8217;t do this in parallel, so you couldn&#8217;t really scale it.</p><p>Researchers had already started bolting a trick called attention onto these models. The 2017 paper&#8217;s bold move was to drop the word-by-word reading entirely and keep only attention.</p><p>That&#8217;s why it&#8217;s called &#8220;Attention Is <em><strong>All</strong></em> You Need.&#8221;</p><h2><strong>The new way: every word looks at every other word</strong></h2><p>The transformer, the architecture that was described in that paper, does something at least conceptually simple. It reads the whole sentence at once. And for each word, it asks: which other words here matter for understanding this one?</p><p>That&#8217;s attention.</p><p>Here&#8217;s a classic example:</p><p>&#8220;The animal didn&#8217;t cross the street because it was too tired.&#8221;</p><p>What does &#8220;it&#8221; refer to? The animal.</p><p>Now change one word:</p><p>&#8220;The animal didn&#8217;t cross the street because it was too wide.&#8221;</p><p>And now &#8220;it&#8221; is the street.</p><p>One word changed. The meaning of &#8220;it&#8221; changed. The model handles this by letting &#8220;it&#8221; look at every other word and weigh what matters.</p><h2><strong>How the looking works</strong></h2><p>Every word carries three things. A question: what am I looking for? A label: what do I contain? A payload: what can I pass along?</p><p>Each word checks its question against every other word&#8217;s label. Strong matches get more weight. Then it gathers the payloads, weighted by those matches, and updates its own meaning.</p><p>The model runs many of these checks at once, each tracking a different kind of relationship. Some seem to track grammar, others reference. Then it stacks dozens of layers on top of each other, refining every word&#8217;s meaning again and again, until the math captures what each word means in this specific sentence.</p><p>And because the transformer reads everything at once, training can run in parallel. That&#8217;s what made it possible to scale these models up.</p><p>Then the model does one simple thing, after all that processing: it predicts the next chunk of text, what we call a token, which is usually a word or part of a word. That&#8217;s it. It predicts the next token. And then it does it again.</p><p>Every answer ChatGPT has ever given you was written this way. One token at a time.</p><h2><strong>So where does the intelligence come from?</strong></h2><p>Predicting the next word sounds kind of dumb, but it isn&#8217;t. It&#8217;s actually very hard.</p><p>To predict the end of a mystery novel, you have to track the plot. To predict the next line of code, you need to understand the logic. To predict the next word of an argument, you need to understand the argument.</p><p>These models are trained on enormous amounts of text. Every time they guess wrong, billions of internal numbers get updated slightly. Do that trillions of times, and to get the predictions right, the model has to build internal representations of grammar, facts, and reasoning patterns.</p><p>Then it&#8217;s fine-tuned, often with human feedback, to act like a helpful assistant instead of an autocomplete.</p><p>Nobody really taught the model intelligence. Something that looks a lot like intelligence turned out to be a requirement for predicting well.</p><h2><strong>What we still don&#8217;t know</strong></h2><p>We know how these models are built, but we know much less about what happens inside them once they&#8217;re trained.</p><p>Even asking the model doesn&#8217;t settle it. When a model explains its reasoning, there&#8217;s no guarantee the explanation matches what actually happened inside it.</p><p>Maybe these models &#8220;understand things,&#8221; or maybe they &#8220;just predict words.&#8221; The truth is probably something way more strange.</p><p><em>Dan Berges is the founder and managing director of <a href="https://www.bergesinstitutespanish.com/">Berges Institute</a>, an online Spanish language school, and lead developer of <a href="https://berges.ai/">Berges AI</a>, a text assistant built on open-weight models that gives direct, concise answers. He also publishes content in Spanish about descriptive grammar, semantics, and pragmatics on <a href="https://www.instagram.com/danberges/">Instagram</a>, <a href="https://www.youtube.com/@danberges">YouTube</a>, and <a href="https://www.tiktok.com/@dan_berges">TikTok</a>.</em></p>]]></content:encoded></item><item><title><![CDATA[What AI changes about being human, and what it probably doesn't]]></title><description><![CDATA[Ask someone who they are and they&#8217;ll tell you what they do.]]></description><link>https://articles.danberges.com/p/what-ai-changes-about-being-human</link><guid isPermaLink="false">https://articles.danberges.com/p/what-ai-changes-about-being-human</guid><dc:creator><![CDATA[Dan Berges]]></dc:creator><pubDate>Sat, 26 Sep 2026 19:12:39 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/9297d821-9d49-495b-a5a9-66a4b482d44b_2921x1653.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Ask someone who they are and they&#8217;ll tell you what they do.</p><p>&#8220;I&#8217;m a designer.&#8221; &#8220;I&#8217;m an engineer.&#8221; &#8220;I&#8217;m a writer.&#8221;</p><p>That&#8217;s not a shallow answer. Work gives you structure. It gives you a reason to get better, people who count on you, and a place in the world.</p><p>So when machines start doing big parts of that work, something real changes. Not just your income. A piece of what holds your identity up starts to move. That deserves honesty, not a quick &#8220;just become a creator.&#8221;</p><p>Here&#8217;s what actually changes.</p><h2><strong>The work doesn&#8217;t disappear. It moves.</strong></h2><p>David Heinemeier Hansson, the creator of Ruby on Rails, just said he barely writes code by hand anymore. He calls himself retired from programming. He says he&#8217;s a maker now.</p><p>That&#8217;s where a lot of knowledge work is heading. Less time producing first drafts. More time deciding what you want, checking what comes back, and fixing what&#8217;s wrong.</p><p>The job shifts from doing to judging. Is this right? Is this good? Is this what we actually meant?</p><p>Those questions were always part of the work. Now they&#8217;re becoming most of it.</p><h2><strong>But not everyone lands softly</strong></h2><p>Some roles will shrink. Some incomes will drop. Some people who spent a decade mastering a skill will watch it become cheap in a year.</p><p>The people who say this change is easy are usually the ones already set up to benefit from it.</p><p>Adapting is possible. It isn&#8217;t free.</p><h2><strong>The problem nobody has solved</strong></h2><p>Judgment doesn&#8217;t come from nowhere.</p><p>Jazz musicians build skills by transcribing and playing other people&#8217;s solos. Writers get good by writing hundreds of weak pages. Engineers learn by breaking things and fixing them at midnight.</p><p>The boring work is how you learn to recognize good work. If machines take the drafts, the junior tasks, and the repetitions, where does the next generation get those hours?</p><p>Today&#8217;s experts in many domains can manage AI well because they did the work by hand for years. Nobody knows how someone starting today gets there.</p><p>That might be the biggest open question of the next decade.</p><h2><strong>What gets automated, and what doesn&#8217;t</strong></h2><p>Machine translation is instant, free, and good enough for most everyday needs.</p><p>People still learn languages. Not to move information around. That part got automated. They learn to talk to their partner&#8217;s family, to get the joke, to feel at home somewhere new. To become someone who can.</p><p>The transactional part of a skill is easy to replace. The human part usually isn&#8217;t, because it was never about the transaction.</p><p>Expect that pattern to repeat across many fields. Not everywhere, and not without real damage along the way.</p><h2><strong>A few things stay human</strong></h2><p>Not in a poetic sense. In a practical one.</p><ul><li><p>Deciding what matters. Tools are great at answering questions. They&#8217;re bad at choosing which questions deserve your life.</p></li><li><p>Taking responsibility. When something goes wrong, &#8220;the model did it&#8221; won&#8217;t satisfy a customer, a patient, or a court. Someone has to own the outcome.</p></li><li><p>Wanting other people. Recordings are free and people still go to concerts. Information is free and people still pay teachers. We keep valuing what comes from a person.</p></li></ul><h2><strong>What to do about it</strong></h2><p>Nothing dramatic. Keep doing some things the hard way, so your judgment stays sharp.</p><p>Notice which parts of your work you&#8217;d keep doing even if they were automated. Those are probably the parts that matter most.</p><p>Get better at saying exactly what you want. When execution becomes cheap, vague goals become expensive.</p><p>And be skeptical of anyone who&#8217;s certain, in either direction.</p><p>AI will change what your work looks like, how you learn, and where your value comes from.</p><p>But the things that make you human were never really about the work. The work was always a way of expressing what you care about. That part is still yours.</p><p><em>Dan Berges is the founder and managing director of <a href="https://www.bergesinstitutespanish.com/">Berges Institute</a>, an online Spanish language school, and lead developer of <a href="https://berges.ai/">Berges AI</a>, a text assistant built on open-weight models that gives direct, concise answers. He also publishes content in Spanish about descriptive grammar, semantics, and pragmatics on <a href="https://www.instagram.com/danberges/">Instagram</a>, <a href="https://www.youtube.com/@danberges">YouTube</a>, and <a href="https://www.tiktok.com/@dan_berges">TikTok</a>.</em></p>]]></content:encoded></item></channel></rss>