<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <title>Demjan&#39;s blog</title>
  <subtitle>Musings about code, dance, and their intersection</subtitle>
  <link href="https://vester.si/blog/rss.xml" rel="self" />
  <link href="https://vester.si/blog/blog" />
  <updated>2026-05-06T00:00:00Z</updated>
  <id>https://vester.si/blog/blog</id>
  <author>
    <name>Demjan</name>
  </author>
  <entry>
    <title>The nature of dance</title>
    <link href="https://vester.si/blog/nature-of-dance/" />
    <updated>2026-05-06T00:00:00Z</updated>
    <id>https://vester.si/blog/nature-of-dance/</id>
    <content type="html">&lt;p&gt;Seldom do I have extended dialogues on the nature of dance with my friends... Somehow we just end up dancing all the time instead. And yet, I stare at the wall sometimes, contemplating it nonetheless. What follows 3 short thoughts, in no particular order, in which I explore various aspects of this, my favourite hobby.&lt;/p&gt;
&lt;h3&gt;I. Point, line, surface&lt;/h3&gt;
&lt;p&gt;It recently became apparent to me (although, sadly, not for the first time), that my stability is lacking. The cause is my foot. It&#39;s underdeveloped. I&#39;m working on it. But it has improved significantly in the last year or so. My mental model of a normal person&#39;s foot has crystalized into a point -&amp;gt; line -&amp;gt; surface continuation.&lt;br&gt;
Most people who don&#39;t actively use their feet, and ideally walk/exercise barefoot (or similar) end up losing the raw capacity of the foot as a surface upon which they stand. Which, originally, it is. The foot is a surface. That might seem obvious, but with long enough lack of use, that surface atrophies into a line, between the heel and the ball of the big toe. A line is less stable than a surface, and the individual loses stability, and capacity in movement. Still more underuse and it atrophies from a line to a point. We don&#39;t think of underdeveloped feet as points, but in terms of the amount of stability they provide they akin to walking on stilts... Standing &lt;em&gt;on&lt;/em&gt; the foot instead of &lt;em&gt;with&lt;/em&gt; or &lt;em&gt;through&lt;/em&gt; the foot.&lt;/p&gt;
&lt;p&gt;Bringing back the surface is then the slow work of training the foot again.&lt;/p&gt;
&lt;h3&gt;II. Foreigners in their own bodies&lt;/h3&gt;
&lt;p&gt;Learning styles aren&#39;t a thing*. It was an idea popularized many years ago - that some people learn by seeing, some by hearing, others by thinking about things , etc... - and has been so thorougly proven not to replicate that when teachers use it to promote their methodology I practice my breathing exercises to not let it get to me.&lt;/p&gt;
&lt;p&gt;But people do learn at different rates. Vastly different rates. I often ask myself, and I&#39;ve even asked a coach of mine: Is clumsiness natural? By which I mean, were some neanderthals clumsy? Do the dice of genetics roll so randomly that your natural affinity towards hand-eye coordination gets a failing grade outright? And the reward you get for that is maybe some more smarts, or... some height? I&#39;ve not gotten a good answer to this. I want to believe clumsiness isn&#39;t natural, and that it&#39;s a developmental issue, potentially a pinch of trauma detaching a growing child from full proprioceptive mastery of that part of their sensory-motor aparatus. Or, I suppose, just a lack of opportunity for mastery in development? I climbed trees, sprinted down hills, shot bows and arrows, did martial arts, played sports. Is that why I&#39;m not clumsy?&lt;/p&gt;
&lt;p&gt;And dance is more complex still, people claim to have two left feet. But if a wild animal attacked your great-great ancestor, would two left feet have been enough of an issue to impact their chance to see another day, and reproduce?&lt;/p&gt;
&lt;p&gt;All this to say, some students on dance class are hard to teach. I need their body to move like my body (well, whatever their interpretation is, at least), and the spectrum of success goes from instantly replaying my movements exactly, to sort of floundering in a seemingly unrelated way. What is a dance teacher to do? I can show, tell, show and tell, but the movement has to come from inside, from proprioceptive mastery, feedback loops against the image in the mirror. But what if the inside simply can&#39;t produce the movement, if there&#39;s something more like proprioceptive confusion, and the image in the mirror doesn&#39;t seem at all useful to the exercise at hand.&lt;/p&gt;
&lt;p&gt;Can you be a foreigner in your own body? I&#39;m a very cognitive person, so perhaps these individuals are occupying a mostly cognitive reality all the time, and proprioceptive agency was mostly lost after all the bootstrapping was done for whatever age they could tie their shoes and eat their food at.&lt;/p&gt;
&lt;p&gt;I don&#39;t mean to sound harsh, and I cast no judgement. I&#39;m just curious.&lt;/p&gt;
&lt;p&gt;And I provide no answers, these are just my woes.&lt;/p&gt;
&lt;h3&gt;III. Connection&lt;/h3&gt;
&lt;p&gt;The word connection occupies a very esoteric and mystical place in partner dancing discourse, and I happen to hold a mostly physicalist view of it. I&#39;m a physicalist about many things, perhaps more than warrant it. I default to physicalist interpretations of phenomena despite holding a nearly metaphysical reverence for dance itself.&lt;/p&gt;
&lt;p&gt;One might have the best dance of their life, and report on it saying they had an amazing Connection with the other person. Or the worst dance of their life, and report on how there was no Connection... But I stand there, looking at them, absolutely exploding with questions about what they mean. I get frustrated when people can&#39;t explain themselves, there are so many questions and statements that could be made to narrow don&#39;t a good/bad connection, but the word is used as a catchall, much like the word Energy is simply the millenial version of Vibes, and can mean anything about anything. There are so many dimensions to a partner dance, skill across several topics (body control, musicality, creativity, moves known, ...), mood in the moment, emotions towards the other person (or lack thereof). All of these can be interrogated to try and understand.&lt;/p&gt;
&lt;p&gt;In software engineering, when something seems too complex to understand, it&#39;s often a good idea to slow time down immensely and think of what&#39;s happening on a much much more granular timescale. It&#39;s difficult to understand what a computer is doing from one second to another, but from one nanosecond to another it can be reasoned about. At the scale the magic of a computer reduces down to things going off and on slowly. From there one can slowly build a full image of the computer, with enough patience.&lt;/p&gt;
&lt;p&gt;This same thing could be applied to dance, but sadly we would need high-speed cameras and a plethora of other sensors involved. Two people could dance for 30 seconds, and then we could analyze it as a 10 minute slow-motion movie. A single weight transfer could be talked about for minutes. We could see, at 20:1 speed, how weight is transfered, how pressure began to send the follower into a direction, but it came late, and ended up communicating the wrong step. The dancers might see, and understand that it happened because they always expect one step from that position, but they shouldn&#39;t. Maybe a bad connection is just a lack of data.&lt;/p&gt;
&lt;p&gt;But what if your heart isn&#39;t open enough? I don&#39;t have a good model for this part of the connection, but I&#39;ve always thought of it as a kind of symmetrical system. Two individuals start a dance, each is bringing a certain level of emotional (dare I say, even spiritual) openness to the dance. This can manifest in a smile, in playfullness, in deep concentration, in complete submission to the dance, emotion running high, and much more. Does it work if one person is deeply open and the other is resigned, absent? Presumably no, although, I&#39;ve found that amazing dances come from the least expected pairing sometimes, and expectations are often wrong. I think openness needs to be compatible, wahtever that means, but not the same. Thinking more like 3:7 is compatible somehow in a similar way to 5:5 or 8:8. And often these change as the dance goes on. You start a dance grumpy, and the smile of your partner washes it away clean. Or you enter a dance with the best of moods, and their rough arms hold you so uncomfortably your mood sublimates into anxiety.&lt;/p&gt;
&lt;p&gt;My conclusion is that people should be better at knowing themselves, and understanding why dances went the way they went. And of course still open to that home-run out-of-nowhere surprise dance that leaves you speechless and/or in tears.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Github stats - is AI outcomitting us yet?</title>
    <link href="https://vester.si/blog/github-stats/" />
    <updated>2026-02-10T00:00:00Z</updated>
    <id>https://vester.si/blog/github-stats/</id>
    <content type="html">&lt;p&gt;I keep seeing the comment that if AI is making engineers so productive, why can&#39;t we see it in publicly available numbers like new github repositories? And I believed that, until I checked it a few days ago, and as far as I can tell, we maybe &lt;em&gt;can&lt;/em&gt; see it.&lt;/p&gt;
&lt;p&gt;Look:&lt;/p&gt;
&lt;img src=&quot;https://vester.si/blog/assets/img/gh-stats-repositories.png&quot;&gt;
&lt;p&gt;It seems to me that since December 2024 (after o1, around the time of Deepseek V3 and R1, shortly before Claude Code), the number of new repositories created per month is going up faster than it used to.&lt;/p&gt;
&lt;p&gt;Does this prove anything? Not really, but just looking at Github&#39;s official data doesn&#39;t really reject the idea either.&lt;/p&gt;
&lt;p&gt;Sadly Commits are less useful as a Github metric, because when you fork the a 15 year old repository, you&#39;re adding 15 year old commits to Github, so the long history is unrepresentative. But recent history might be a tad more representative. And that also seems to be going up faster.&lt;/p&gt;
&lt;img src=&quot;https://vester.si/blog/assets/img/gh-stats-commits.png&quot;&gt;
&lt;p&gt;Would be interesting to scrape data more directly and see commits coauthored with Claude.&lt;/p&gt;
&lt;p&gt;For now, I made a little page where I&#39;ll keep fetching daily data from GH to show these numbers: &lt;a href=&quot;https://vester.si/github-stats&quot;&gt;Github Stats&lt;/a&gt;.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Framify</title>
    <link href="https://vester.si/blog/framify/" />
    <updated>2025-11-06T00:00:00Z</updated>
    <id>https://vester.si/blog/framify/</id>
    <content type="html">&lt;p&gt;I made another thing.&lt;/p&gt;
&lt;p&gt;If you are going to an event and want to change your social media picture to frame it for the event, you might use something like Twibbonize.&lt;/p&gt;
&lt;p&gt;Twibbonize does the job, but:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Has a watermark, if you don&#39;t pay for it&lt;/li&gt;
&lt;li&gt;Is painfully slow as a website&lt;/li&gt;
&lt;li&gt;Is painfully slow to get you to buy it, and artifically slows down the UX&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So &lt;a href=&quot;https://framify.vester.si&quot;&gt;Framify&lt;/a&gt; does the same, but as fast as possible.&lt;/p&gt;
&lt;p&gt;And you can import from twibbonize directly, to make life easier.&lt;/p&gt;
&lt;p&gt;I look forward to hearing about all the time saved.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>35</title>
    <link href="https://vester.si/blog/35/" />
    <updated>2025-10-16T00:00:00Z</updated>
    <id>https://vester.si/blog/35/</id>
    <content type="html">&lt;p&gt;The planet continue to spin, and I celebrate 35 revolutions around the Sun.&lt;/p&gt;
&lt;p&gt;The year brought more novelty than I&#39;ve had in a while. I left my job of 6 years, and then also my job of 6 months after that. AI continues it&#39;s hyperbolic rise, and continues to shock me on a monthly basis, as I attempt to use it before it uses me.&lt;/p&gt;
&lt;p&gt;This blog is not yet a year old, but I&#39;m very happy I constructed it. I can&#39;t say whether I posted more or less than I thought I would, perhaps more... Since I&#39;m on sabbatical right now I&#39;m not really coding, so there are no updates to any of my projects, but iterating on them has been a great medium for creative output, and that output gives me a lot of joy.&lt;/p&gt;
&lt;p&gt;What is most striking from the last year is perhaps that I&#39;ve really noticed how much happier it makes me to be producing something, in my case code, little projects, toys... instead of consuming. I find myself still falling into consumption pitfalls, staring at social media or their ilk, and whenever I catch myself I am immediately reminded how much better I feel if I&#39;m creating instead of consuming. This year has had perhaps the most significant positive shift from consumption to creation of my adult life, and AI had a big part to play in that.&lt;/p&gt;
&lt;p&gt;If the coming year continues the trend, it will be wonderful.&lt;/p&gt;
&lt;p&gt;Most importantly, I shared an abundance of wonderful moments this year with close ones all over the continent, dancing, talking, reflecting, and integrating. If that trend continues in the coming year, it will be even more wonderful still.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>So, I gave you my heart</title>
    <link href="https://vester.si/blog/so-I-gave-you-my-heart/" />
    <updated>2025-08-29T00:00:00Z</updated>
    <id>https://vester.si/blog/so-I-gave-you-my-heart/</id>
    <content type="html">&lt;p&gt;About 10 years ago, my mom gave me a single potted string of hearts plant. I promptly killed it several times, but, while it&#39;s easy to drown, it is also quite resilient, and can be brought back to life even when nothing of it is left above the surface of the soil.&lt;/p&gt;
&lt;img src=&quot;https://vester.si/blog/assets/img/hearts_1.jpeg&quot; height=&quot;300px&quot; width=&quot;200px&quot;&gt;
&lt;p&gt;Since then, I&#39;ve enjoying caring for it, and learning its ways. &lt;a href=&quot;https://en.wikipedia.org/wiki/Ceropegia_woodii&quot;&gt;Ceropegia woodii (wikipedia)&lt;/a&gt; is a succulent, which means it evolved where water might be scarce, and tries to keep lots of it inside itself. This is why it&#39;s quite easy to drown.&lt;/p&gt;
&lt;p&gt;I&#39;ve also been propagating it for several years, and giving it away as gifts to many friends. This is a little guide to help you care for it, ressurect it, and even make more.&lt;/p&gt;
&lt;h2&gt;Keeping it alive and well&lt;/h2&gt;
&lt;p&gt;Some plants get yellow leaves that fall off, and upon googling why, you&#39;re usually told it was either overwatered, underwatered, too exposed to sun, or not exposed to sun enough. Really narrows it down.&lt;/p&gt;
&lt;h3&gt;Thirst&lt;/h3&gt;
&lt;p&gt;Strings of hearts luckily communicate their thirst in a clear enough way. You can test how it&#39;s doing with the Taco Test.&lt;/p&gt;
&lt;p&gt;The Taco test is when you gently squeeze a leaf nearest to the soil, as if to make a taco from it. If it yields, and you manage to fold it more than a few degrees, it might be thirsty.&lt;/p&gt;
&lt;p&gt;This won&#39;t be true for new leaves, even if they&#39;re close to the soil, or for plants that were just recently put into soil, from perhaps a nursery (more on that later), but if the plant has some length, then the leaves near the soil are usually firm, except when they start running out of water.&lt;/p&gt;
&lt;p&gt;In the summer I water mine about once every 7-14 days, in the winter less. I don&#39;t time it, I just do the taco test. It&#39;s better to under-water them than drown them.&lt;/p&gt;
&lt;h3&gt;Weather and sunshine&lt;/h3&gt;
&lt;p&gt;I keep reading they don&#39;t like direct sunlight, but I also keep suspecting those articles were written by people from the U.S. where there are 300 sunny days a year and it&#39;s &amp;gt;30 degress 6 months of the year.&lt;/p&gt;
&lt;p&gt;In Slovenia, they&#39;re fine outside. My living room is actually too dark for them, and that shows by them making longer pauses between leaves. Dense leaves mean happy plant, fewer leaves mean it&#39;s reaching somewhere else, in case life is better there.&lt;/p&gt;
&lt;p&gt;Now, they&#39;re not actually an outdoor plant, in Slovenian terms. Heavy persistent rain can drown them, hail can damage them, snow will kill them outright. If it&#39;s less than 10 degrees at night, they will be sad, so don&#39;t put them out. But summer months are fine.&lt;/p&gt;
&lt;p&gt;The only thing to keep an eye on is that if they&#39;re outside, they might need water every other day, or even every day if there&#39;s a lot of direct sunlight.&lt;/p&gt;
&lt;p&gt;One other mistake I&#39;ve made is have parts of the plant touch the dark wood of my window sill, which got so hot on the sun it singed it.&lt;/p&gt;
&lt;p&gt;My mom has them outside in direct sunlight the entire summer, and then brings them in when it gets cold. Hers look better than mine:&lt;/p&gt;
&lt;img src=&quot;https://vester.si/blog/assets/img/hearts_2.jpeg&quot; height=&quot;300px&quot; width=&quot;500px&quot;&gt;
&lt;h3&gt;Soil&lt;/h3&gt;
&lt;p&gt;Since it evolved where water might be scarce, the soil there usually also doesn&#39;t keep water very long. So it&#39;s used to drinking from water passing by, but not being surrounded by wet soil. If it is surrounded by wet soil for too long, it can start to rot, and fungal gnats might take residence in the soil to pester it.&lt;/p&gt;
&lt;p&gt;So the soil should be such that it lets water out of the bottom semi-quickly.&lt;/p&gt;
&lt;h2&gt;Making more&lt;/h2&gt;
&lt;p&gt;One of the most fun parts of Strings of Hearts is that you can make more! A lot more, very easily.&lt;/p&gt;
&lt;p&gt;You might be reading this because I gave you one of my hearts, and maybe you want to make more too!&lt;/p&gt;
&lt;p&gt;There are at least 4 ways that I&#39;ve managed to make more:&lt;/p&gt;
&lt;h3&gt;Butterfly method&lt;/h3&gt;
&lt;p&gt;This is essentially for mass production, and a very easy method. You take any length of a vine and take some scissors. Cut next to each leaf pair, keeping about a centimetre of vine in each direction of the leaf pair.&lt;/p&gt;
&lt;p&gt;Place that little intersection on some wet soil (you can bury it a little), and keep the soil wet for several days, carefully adding water so you don&#39;t wash the plant away from the soil.&lt;/p&gt;
&lt;p&gt;It will grow roots fro mthe intersection and begin growing upward. I&#39;ve made entire trays of them this way, although a tray of 20 might only get 10 that succeed.&lt;/p&gt;
&lt;h3&gt;Cut it up and put it in water&lt;/h3&gt;
&lt;p&gt;Also not complicated, you cut the vine such the you have 3 or 4 leaf pair in the cutting, then you remove 1 or 2 leaf pairs from the vine (nearer what was the soil before you cut it) and place the part with removed leaves in water. It will start growing roots from the removed leaves. I like to wait until the roots are at least a centimetre, but sometimes I wait until they&#39;re several centimetres long in water, before putting them in soil.&lt;/p&gt;
&lt;p&gt;But, if you don&#39;t want to wait...&lt;/p&gt;
&lt;h3&gt;Cut it up and skip the water&lt;/h3&gt;
&lt;p&gt;My mom does this, she puts them straight into soil after cutting. It seems to just work... I&#39;m too afraid to try.&lt;/p&gt;
&lt;h3&gt;Plant the tubers&lt;/h3&gt;
&lt;p&gt;If the plant is having a nice time, sometimes the intersections will grow dry white pea sized balls on them. This is a tuber. You can just cut above it, and place it in soil, and it&#39;s a new plant.&lt;/p&gt;
&lt;h3&gt;Ressurection&lt;/h3&gt;
&lt;p&gt;If there&#39;s ever an accident, and the whole plant dies (usually leaves start falling off, and don&#39;t stop), don&#39;t worry. Worst case, you dig up the soil, and find the underground tubers. They&#39;re like mini potatoes, sized between a pea and an actual small potato. Those stay alive even if all the leaves fall off. Just put them in fresh soil and wait for new plants to come out.&lt;/p&gt;
&lt;h3&gt;Flowers?&lt;/h3&gt;
&lt;p&gt;If the plant is happy, it has little flowers, usually in the summer months.&lt;/p&gt;
&lt;p&gt;I think you can probably make more from the flowers, but I&#39;ve never tried. It seems more involved.&lt;/p&gt;
&lt;h2&gt;Get in line&lt;/h2&gt;
&lt;p&gt;If you would like a string of hearts from me, you can ask anytime, and you&#39;ll get a place in line for upcoming plants.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>I am not ambitious enough</title>
    <link href="https://vester.si/blog/not-ambitious-enough/" />
    <updated>2025-08-08T00:00:00Z</updated>
    <id>https://vester.si/blog/not-ambitious-enough/</id>
    <content type="html">&lt;p&gt;This first time I had this thought was in November of last year, a few weeks after I started using Cursor. I managed to code into existence several old ideas I had had, ones that would never have seen the light of day without AI. I noticed that I need to adjust my sense of what is possible quite drastically. I got so excited, and suddently felt like I had so much more capacity, that I even started this blog and &lt;a href=&quot;https://vester.si/blog/i-like-ai-right-now&quot;&gt;wrote my first post&lt;/a&gt;. The lesson back then was clear:&lt;/p&gt;
&lt;p&gt;I am not ambitious enough.&lt;/p&gt;
&lt;p&gt;In the post I say &amp;quot;... and my ambition is only increasing&amp;quot;. It has only been 10 months since then... The velocity in the AI space is staggering. I can&#39;t keep up. When I feel overwhelmed by all the progress I can feel cynicism try to creep in, hoping to keep me from feeling overwhelmed by attaching to ideas that surely we&#39;re hitting this or that scaling wall, and the current architecture won&#39;t bring us any further, and the models won&#39;t be able to generate better data to train their own future iterations, that would be crazy. I try to shake off the cynicism, and stick to my lesson.&lt;/p&gt;
&lt;p&gt;I am not ambitious enough.&lt;/p&gt;
&lt;p&gt;I wanted Conway&#39;s game of life in the footer of this website, and I wanted it to be interactive. It was on the blog an hour later &lt;a class=&quot;Footnotes__ref&quot; href=&quot;https://vester.si/blog/not-ambitious-enough/#conway-note&quot; id=&quot;conway-ref&quot; aria-describedby=&quot;footnotes-label&quot; role=&quot;doc-noteref&quot;&gt;*&lt;/a&gt;. It doesn&#39;t come naturally to me, this feeling of... what? abundance? Is abundance the right word for when I don&#39;t need to hold ideas back because what once took weeks now takes hours? &lt;a class=&quot;Footnotes__ref&quot; href=&quot;https://vester.si/blog/not-ambitious-enough/#projects-note&quot; id=&quot;projects-ref&quot; aria-describedby=&quot;footnotes-label&quot; role=&quot;doc-noteref&quot;&gt;*&lt;/a&gt; Perhaps it is. I used to have an abundance of ideas, and not enough of some combination of confidence/ambition/desire to bring ideas to life. I&#39;ve been running this recallibration on myself now for 10 months, and when I get an idea, I still go through something like a reverse Gartner hype cycle of &#39;Ugh but I&#39;ll need to pick a tech, and learn it, and... and... Oh wait no I can just ask for it and it will appear magically in front of my eyes. I forgot.&#39;. I still need to internalize the lesson more.&lt;/p&gt;
&lt;p&gt;I am not ambitious enough.&lt;/p&gt;
&lt;p&gt;I had an idea for a music analysis tool for dance, I started it on Saturday, and ran out of ideas for it by Sunday. This is one of those situations that deserve a long german word, or a japanese one. For when you run out of ideas for a creative project. I asked ChatGPT if there is one, it gave a few not-quite-right suggestions, admitting that it doesn&#39;t think one exists. Maybe it doesn&#39;t happen often enough. Maybe it will.&lt;/p&gt;
&lt;p&gt;I am not ambitious enough.&lt;/p&gt;
  &lt;footer role=&quot;doc-endnotes&quot; class=&quot;Footnotes&quot;&gt;
    &lt;h2 id=&quot;footnotes-label&quot; class=&quot;Footnotes__title&quot;&gt;Footnotes&lt;/h2&gt;
    &lt;ol class=&quot;Footnotes__list&quot;&gt;&lt;li id=&quot;conway-note&quot; class=&quot;Footnotes__list-item&quot;&gt;I didn&#39;t write it from scratch, don&#39;t worry. I just added interactivity to an existing Game of Life implementation - &lt;a href=&quot;https://github.com/Jedidiah/game-of-life-wc&quot;&gt;here&lt;/a&gt;. That would still have been an order of magnitude more work for me manually (15 minutes -&gt; 150 minutes) &lt;a class=&quot;Footnotes__back-link&quot; href=&quot;https://vester.si/blog/not-ambitious-enough/#conway-ref&quot; aria-label=&quot;Back to reference 1&quot; role=&quot;doc-backlink&quot;&gt;↩&lt;/a&gt;&lt;/li&gt;
&lt;li id=&quot;projects-note&quot; class=&quot;Footnotes__list-item&quot;&gt;I&#39;m not talking about the amount of time it might take to ship a feature in a big complicated old codebase, in a team that includes role like Product something, or Senior something, I mean going from &#39;Hey, what if this existed... but how would I even code that?&#39; To a working prototype having a home on my page, for instance. And it&#39;s not even weeks to hours. The weeks never actually happened... they were hypothetical weeks. The hours aren&#39;t hypothetical. &lt;a class=&quot;Footnotes__back-link&quot; href=&quot;https://vester.si/blog/not-ambitious-enough/#projects-ref&quot; aria-label=&quot;Back to reference 2&quot; role=&quot;doc-backlink&quot;&gt;↩&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;
  &lt;/footer&gt;
</content>
  </entry>
  <entry>
    <title>Musicality nerd</title>
    <link href="https://vester.si/blog/musicality-nerd/" />
    <updated>2025-08-03T00:00:00Z</updated>
    <id>https://vester.si/blog/musicality-nerd/</id>
    <content type="html">&lt;p&gt;I dance. Quite a lot. To be a good dancer, you need to (among a bucket of other things) be good at hearing music. What does it mean to be good at hearing music? Well, songs might have anywhere from one to twenty things happening at the same moment inside of them, and being able to tell those things apart (the beat, instruments, vocals, effects, ...) is a skill.&lt;/p&gt;
&lt;p&gt;The best way to have good musicality? Know the song by heart. Interpreting a song you know really well vs. interpreting a song you&#39;re hearing for the first time are different (albeit related) skills.&lt;/p&gt;
&lt;p&gt;Getting to know a song by heart usually just means listen to it 100 times. By then, you will know it.&lt;/p&gt;
&lt;p&gt;But what if you wanted to practice a song? Figure out what&#39;s inside? You could take a pen and paper, and slowly move through the song in increments of 10 seconds, writing down what you hear, which areas are interesting, what you&#39;d like to do a move to. That certainly works.&lt;/p&gt;
&lt;p&gt;But I code for a living so I decided to code a solution to a problem no one has.&lt;/p&gt;
&lt;p&gt;I made &lt;a href=&quot;https://vester.si/musicality-nerd&quot;&gt;Musicality Nerd&lt;/a&gt;, where I can throw in an mp3 and then annotate it, see the patterns, put parts on a loop.&lt;/p&gt;
&lt;p&gt;There are a few more features I have in mind, but that&#39;s generally it. Now I have a tool to study a piece of music from the point of view of dance.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Am I trying to make a glider gun with my prompts and context?</title>
    <link href="https://vester.si/blog/glider-gun-prompting/" />
    <updated>2025-07-05T00:00:00Z</updated>
    <id>https://vester.si/blog/glider-gun-prompting/</id>
    <content type="html">&lt;p&gt;&lt;game-of-life&gt;&lt;/game-of-life&gt;&lt;/p&gt;
&lt;p&gt;I&#39;m still searching for a mental model of what I&#39;m doing when I&#39;m tackling a medium-large sized problem with LLM coding tools (Cursor, Claude Code)&lt;/p&gt;
&lt;p&gt;I&#39;m doing my best to make one prompt be enough for the entire process, since the more follow up instruction I need to give it, the worse the outcome will be (because I didn&#39;t think of it enough). A kind of perfectionist&#39;s dream I suppose - or nightmare. Should water cooler conversations be around what your 1-shot percentage is for LLM prompts? Do senior engineers have a lower handicap? I&#39;m rambling...&lt;/p&gt;
&lt;p&gt;But I&#39;m also trying to assemble the correct files for it to look at initially, so it doesn&#39;t have to look through the codebase like a newborn, as if it hasn&#39;t seen every single file a thousand times in the last 72 hours, having authored half of them.&lt;/p&gt;
&lt;p&gt;Now I&#39;m writing slash commands for Claude Code, a collection of heuristics and algorithms that are trying to say: &amp;quot;It&#39;s this kind of situation, and this kind of situations is resolved this way&amp;quot;, and as I get better at making them I presume my slash commands will solve their respective situations reliably, automatically. How should I think of this?&lt;/p&gt;
&lt;p&gt;I am reminded of the glider gun in Conway&#39;s game of Life:&lt;/p&gt;
&lt;img src=&quot;https://upload.wikimedia.org/wikipedia/commons/5/5d/Gosper_glider_gun_with_grid.gif&quot;&gt;
&lt;p&gt;Is that me and Claude? Are the gliders product features? The moment when the two halves of the mechanism collide certainly look the way it sometimes feels to prompt and give context to these tools. It&#39;s chaotic for a moment, but then structure comes out, sometimes to my surprise.&lt;/p&gt;
&lt;p&gt;I think the glider gun is what I might be striving for, maybe. To have a system I can reliably use to generate new pieces of the products I&#39;m working on, and that work mostly automatically.&lt;/p&gt;
&lt;p&gt;And in Conway, there&#39;s always a &lt;s&gt;meta&lt;/s&gt;bigger gun to be constructed. I hope it keeps being fun.&lt;/p&gt;
&lt;p&gt;Game of Life courtesy of &lt;a href=&quot;https://github.com/Jedidiah/game-of-life-wc&quot;&gt;https://github.com/Jedidiah/game-of-life-wc&lt;/a&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Prompted by me</title>
    <link href="https://vester.si/blog/prompted-by-me/" />
    <updated>2025-06-07T00:00:00Z</updated>
    <id>https://vester.si/blog/prompted-by-me/</id>
    <content type="html">&lt;p&gt;I&#39;ve been wondering lately how much of current online content should be signed not as written by, but as prompted by.&lt;/p&gt;
&lt;p&gt;Lord knows all of the code that I write should be at the very least co-authored with Claude or whatever model I&#39;m using that day.&lt;br&gt;
So that got me thinking: for things like my tweets and my blog posts, is there an audience I might feel like I owe admitting to, whether I wrote something or whether I prompted it into existence?&lt;/p&gt;
&lt;p&gt;I&#39;m old school enough to think that it matters how you assemble words together in your mind. It&#39;s a matter of identity, and is in the domain of the neocortex, that which, among other things, makes us uniquely human. &lt;a class=&quot;Footnotes__ref&quot; href=&quot;https://vester.si/blog/prompted-by-me/#neocortex-note&quot; id=&quot;neocortex-ref&quot; aria-describedby=&quot;footnotes-label&quot; role=&quot;doc-noteref&quot;&gt;*&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;So if I value that so highly from my side, wouldn&#39;t I owe it to communicate it outwardly?&lt;/p&gt;
&lt;p&gt;My conclusion is that I&#39;m going to add tags and notices to this blog to show which piece of writing includes me using AI for anything other than spell check and such.&lt;/p&gt;
&lt;h3&gt;Why now&lt;/h3&gt;
&lt;p&gt;I briefly wrote before about how there are so many ideas for pieces of writing (also coding) I get that I never materialize. I just switched jobs and I&#39;m trying to bring myself up to speed with all of the pieces of the stack that aren&#39;t super familiar to me.&lt;br&gt;
somewhere in the codebase I saw a caching solution that made life a lot easier and asked myself: how much caching is actually going on, all the time, between silicon and this javascript framework.&lt;br&gt;
I knew the answer was worthy of a PhD dissertation, or, rather, is actually a sizeable stack of them, in practice. Plus I only knew the stack down to a certain point, and it loses opacity quickly below how, say, Redis works. &lt;a class=&quot;Footnotes__ref&quot; href=&quot;https://vester.si/blog/prompted-by-me/#eventloop-note&quot; id=&quot;eventloop-ref&quot; aria-describedby=&quot;footnotes-label&quot; role=&quot;doc-noteref&quot;&gt;*&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;So instead of putting a one sentence story idea into my notes app I told o3 to outline it for me, what I wanted it to explain, and out came a really nice outline that... now I want to put on my blog, because I like it? But I can&#39;t really sign my name on it, not as author. But as prompter... sure.&lt;/p&gt;
  &lt;footer role=&quot;doc-endnotes&quot; class=&quot;Footnotes&quot;&gt;
    &lt;h2 id=&quot;footnotes-label&quot; class=&quot;Footnotes__title&quot;&gt;Footnotes&lt;/h2&gt;
    &lt;ol class=&quot;Footnotes__list&quot;&gt;&lt;li id=&quot;neocortex-note&quot; class=&quot;Footnotes__list-item&quot;&gt;other animals have it, but ours wins on what seem like objective metrics - # of neurons, their packing density, their # of connections, their topological complexity - you name it, we top it. I got curious about the specifics after writing this, so I asked o3 to get me some more info: &lt;a href=&quot;https://chatgpt.com/share/68436d0c-3124-8012-9471-1707d57b618a&quot;&gt;https://chatgpt.com/share/68436d0c-3124-8012-9471-1707d57b618a&lt;/a&gt; &lt;a class=&quot;Footnotes__back-link&quot; href=&quot;https://vester.si/blog/prompted-by-me/#neocortex-ref&quot; aria-label=&quot;Back to reference 1&quot; role=&quot;doc-backlink&quot;&gt;↩&lt;/a&gt;&lt;/li&gt;
&lt;li id=&quot;eventloop-note&quot; class=&quot;Footnotes__list-item&quot;&gt;No link for this one, since I asked myself this a long time ago, before LLMs, but can you name a few differences between Javascript&#39;s and Redis&#39; event loops? Did you know Redis ran an event loop? I didnt either, until I decided to learn! &lt;a class=&quot;Footnotes__back-link&quot; href=&quot;https://vester.si/blog/prompted-by-me/#eventloop-ref&quot; aria-label=&quot;Back to reference 2&quot; role=&quot;doc-backlink&quot;&gt;↩&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;
  &lt;/footer&gt;</content>
  </entry>
  <entry>
    <title>Motion 2</title>
    <link href="https://vester.si/blog/motion-2/" />
    <updated>2025-05-07T00:00:00Z</updated>
    <id>https://vester.si/blog/motion-2/</id>
    <content type="html">&lt;h3&gt;Much iteration later&lt;/h3&gt;
&lt;p&gt;I can&#39;t believe it&#39;s been 4 months since &lt;a href=&quot;https://vester.si/blog/motion&quot;&gt;I wrote about&lt;/a&gt; the first version of &lt;a href=&quot;https://vester.si/motion&quot;&gt;motion&lt;/a&gt; already. Time ticks on.&lt;/p&gt;
&lt;p&gt;I haven&#39;t stopped iterating, and with the newer coding models released since, and the things I&#39;ve learned, my iteration speed has even accelerated.&lt;/p&gt;
&lt;p&gt;One big improvement to my quality of life has been a &lt;a href=&quot;https://chromewebstore.google.com/detail/webgpu-inspector/holcbbnljhkpkjkhgkagjkhhpeochfal&quot;&gt;WebGPU inspector Chrome extension&lt;/a&gt;. It has really nice UX to show every resource made each frame via WebGPU, as well as the ability to inspect individual frames. Really great, can&#39;t recommend enough for debugging.&lt;/p&gt;
&lt;h3&gt;Direction&lt;/h3&gt;
&lt;p&gt;There has been this big shadow looming over the entire project, and the name of the project is &lt;a href=&quot;https://derivative.ca/&quot;&gt;Touch Designer&lt;/a&gt;. It has always been possible to replicate all video effects made on my little toy in Touch Designer, so (I asked myself sometimes) why bother, why not just play with TD?&lt;/p&gt;
&lt;p&gt;And honestly I don&#39;t know. The web has its charm, it&#39;s accessible to anyone with a browser. I think I enjoy building this thing more than I would enjoy getting good at Touch Designer. Maybe I&#39;m a masochist...&lt;/p&gt;
&lt;p&gt;But I was heavily inspired by Touch Designer&#39;s UX. A node based layout was always a magical far off goal for me to one day have in my toy. And I&#39;d love to say Gemini did it all for me, but I did have to think really hard about how the WebGPU backend is going to work together with the node based UI, and how to be conservative with texture creation and things like that.&lt;/p&gt;
&lt;p&gt;But as soon as I saw a light at the end of the tunnel, which came in the form of connecting the video input node to a flip node, and seeing the screen display the flipped video, I knew it would all work out. I smiled all day after that.&lt;/p&gt;
&lt;h3&gt;Today&lt;/h3&gt;
&lt;p&gt;There are now enough effects in this thing that I have tried a tiny minority of all combinations of pipelines. It would be great to see what other people can come up with.&lt;/p&gt;
&lt;p&gt;I have no guidance to give around GPU pressure though. I have an M1 Mac and I have definitely managed to warm it up with this, although it&#39;s several hundred times more efficient than it used to be, and my Mac was also fine back then.&lt;/p&gt;
&lt;h3&gt;Thoughts on Vibe Coding&lt;/h3&gt;
&lt;p&gt;Once each node was a self contained little video processing step, Gemini took off. I wrote the first 10 effects half with Gemini, half on my own, but Gemini wrote all the rest. Now, all I need is an idea, and my prompts are:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;@main-files, implement an effect that allows users to remap color and alpha channels.
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;This will produce the entire effect, with any required settings, in 1 shot, 95% of the time. The other 5% are effects that require a different paradigm for implementation (like needing compute shaders instead of vertex+fragment shaders).&lt;/p&gt;
&lt;p&gt;I think more and more I&#39;m vibe coding this. And it&#39;s great. I&#39;m still learning a lot, although it is true that despite now having a &lt;a href=&quot;https://en.wikipedia.org/wiki/Kuwahara_filter&quot;&gt;Kuwahara filter&lt;/a&gt;, I would not be able to explain the operation of applying it without looking at the code. I am willing to pay this price for the joy the project brings me.&lt;/p&gt;
&lt;p&gt;I know vibe coding stretches far beyond a gap that size, towards building a fullstack application without knowing what an http request is. I still think it&#39;s mostly fine and a lot of people are gatekeeping, but I do agree that not knowing why your API keys don&#39;t belong in your html is going to earn you a hard lesson the hard way. Let&#39;s see how this evolves, I suppose.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Motion</title>
    <link href="https://vester.si/blog/motion/" />
    <updated>2025-01-03T00:00:00Z</updated>
    <id>https://vester.si/blog/motion/</id>
    <content type="html">&lt;h3&gt;The idea&lt;/h3&gt;
&lt;p&gt;A while ago, I saw a lovely YouTube video that I simply have not been able to find since (please help). It was by this calm fellow narrating about a simple motion detection method that he likes to use and how it uncovered interesting things about the world. He gives a very nice demo of pointing a camera across something like a meadow or maybe just down a hill where there&#39;s a meadow and some trees and some bushes.&lt;/p&gt;
&lt;p&gt;On the camera recording itself you can&#39;t see that there&#39;s anything special going on. And then he describes this motion detection method which is to take two sequential frames, turns them to grayscale, then subtracts the gray color value at each pixel between frames, and where the difference is sufficient, mark the pixels as having motion and then have the video just display those pixels, or overlay them over the original.&lt;/p&gt;
&lt;p&gt;The video thus reveals a deer in the meadow, walking around slowly, that is just absolutely not visible without this method and this stuck with me. It&#39;s been bouncing around my head for years because I&#39;ve always wanted to use it as a dance tool (performative and/or pedagogical).&lt;/p&gt;
&lt;h3&gt;The how&lt;/h3&gt;
&lt;p&gt;As I wrote &lt;a href=&quot;https://vester.si/blog/i-like-ai-right-now&quot;&gt;previously&lt;/a&gt;, I&#39;ve been trying to increase the ambition with which I approach ideas with AI tools. Cursor is my tool of choice right now, and I managed to get a prototype working in an hour or so. I continue to be amazed at how quickly I can iterate with AI.&lt;/p&gt;
&lt;h3&gt;The toy&lt;/h3&gt;
&lt;p&gt;&lt;a href=&quot;https://vester.si/motion&quot;&gt;Motion&lt;/a&gt; is the toy I built, and am still building (It currently only works on Macs, or rather, &lt;a href=&quot;https://caniuse.com/webgpu&quot;&gt;WebGPU isn&#39;t fully supported&lt;/a&gt; across OSes and Browsers, so in many combinations it doesn&#39;t work, meaning I actually have no idea which devices it works on).&lt;/p&gt;
&lt;p&gt;I&#39;m so incredibly happy with it, and it&#39;s so much fun to build. This was an early a-ha moment:&lt;/p&gt;
&lt;p&gt;&lt;video src=&quot;https://vester.si/blog/assets/video/motion-1.mp4&quot; controls=&quot;&quot; preload=&quot;none&quot;&gt;&lt;/video&gt;&lt;/p&gt;
&lt;p&gt;The more I made, the more choices I needed to make, like what color the background and effect should have:&lt;/p&gt;
&lt;p&gt;&lt;video src=&quot;https://vester.si/blog/assets/video/motion-3.mp4&quot; controls=&quot;&quot; preload=&quot;none&quot;&gt;&lt;/video&gt;&lt;/p&gt;
&lt;p&gt;I quickly made settings for these and all other &amp;quot;dials&amp;quot; that were sprinkled across the code. For instance, how different the two grays are allowed to be to still say there&#39;s &amp;quot;motion&amp;quot; (sensitivity), or how long the trails last (decay rate)?&lt;/p&gt;
&lt;p&gt;&lt;video src=&quot;https://vester.si/blog/assets/video/motion-4.mp4&quot; controls=&quot;&quot; preload=&quot;none&quot;&gt;&lt;/video&gt;&lt;/p&gt;
&lt;p&gt;Next, what if colors change over time, and you can define the speed they change?&lt;br&gt;
(Flashing lights warning from here on).&lt;/p&gt;
&lt;p&gt;&lt;video src=&quot;https://vester.si/blog/assets/video/motion-5.mp4&quot; controls=&quot;&quot; preload=&quot;none&quot;&gt;&lt;/video&gt;&lt;/p&gt;
&lt;p&gt;I don&#39;t know why it took me this long to think of it, but decay can also be 0, so that the colors never go away.&lt;/p&gt;
&lt;p&gt;&lt;video src=&quot;https://vester.si/blog/assets/video/motion-6.mp4&quot; controls=&quot;&quot; preload=&quot;none&quot;&gt;&lt;/video&gt;&lt;/p&gt;
&lt;p&gt;I was visiting my family and this proved to be wonderful entertainment for kids. I consider it an achievement if a kid decided this is worth an hour of their time.&lt;/p&gt;
&lt;p&gt;I also added a record button, so you can record what&#39;s on the screen and download it when you&#39;re done. (It&#39;s buggy, works about 50% of the time)&lt;/p&gt;
&lt;h3&gt;Coming up&lt;/h3&gt;
&lt;p&gt;Most recently, inspired by some Twitter/X accounts like &lt;a href=&quot;https://x.com/poetengineer__&quot;&gt;@poetengineer__&lt;/a&gt;, I&#39;ve started adding Google&#39;s Mediapipe models to frame processing. This lets me isolate body parts, like face, hand, and even finger:&lt;/p&gt;
&lt;p&gt;&lt;video src=&quot;https://vester.si/blog/assets/video/motion-7.mp4&quot; controls=&quot;&quot; preload=&quot;none&quot;&gt;&lt;/video&gt;&lt;/p&gt;
&lt;p&gt;Realtime video processing is like magic.&lt;/p&gt;
&lt;p&gt;If you have any fun ideas, reach out to me on X or Bluesky, I&#39;m happy to hear them.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>I quite like these AI tools, right now</title>
    <link href="https://vester.si/blog/i-like-ai-right-now/" />
    <updated>2024-11-29T00:00:00Z</updated>
    <id>https://vester.si/blog/i-like-ai-right-now/</id>
    <content type="html">&lt;p&gt;I know I might lose my engineering job because of it, but so far AI has unlocked an amazing period of creative output for me.&lt;br&gt;
Projects that have been bouncing around my head for years, but I never considered myself smart enough or ambitious enough to truly pursue, I now rutinely and find that it actually takes two hours to make a working prototype.&lt;/p&gt;
&lt;p&gt;I always considered myself a lazy creative type. Full of ideas, but not the willpower needed to execute them. No more. Since I&#39;ve been using these tools, I&#39;ve managed to make quite a few very interesting things that I&#39;m really happy I made, and my ambition is only increasing. I&#39;m going to dust off some ideas I was sure were just around the corner 10 years ago, but for some reason I can&#39;t see any incarnations of yet.&lt;/p&gt;
&lt;p&gt;Things I&#39;ve made in the last few months:&lt;/p&gt;
&lt;h3&gt;&lt;a href=&quot;https://vester.si/tuner&quot;&gt;tuner&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Learning instruments is hard, I know nothing of music theory. But I do know that a realtime feedback loop can help my brain construct a model around sound, and what is correct, and teach me to recognize notes.&lt;/p&gt;
&lt;p&gt;So I made this tuner (currently calibrated for an alto saxophone).&lt;/p&gt;
&lt;p&gt;It&#39;s just javascript, using &lt;a href=&quot;https://github.com/qiuxiang/aubiojs&quot;&gt;AubioJS&lt;/a&gt; to process the microphone input and draw it into a canvas.&lt;/p&gt;
&lt;p&gt;Making realtime visualisations is something I&#39;ve always been really interested in, but it&#39;s always been a bit daunting, because of all the work of drawing and keeping state in a sensible way is so different from my day-to-day coding involving servers and databases... Being able to describe the rough outline of an idea and the code just appearing is such a nice feeling.&lt;/p&gt;
&lt;p&gt;(Happy to hear feature ideas for this and others)&lt;/p&gt;
&lt;h3&gt;&lt;a href=&quot;https://vester.si/motion&quot;&gt;motion&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;I&#39;m a dancer, and I think about how software could improve learning dance. Years ago I saw a video about a simple motion detection method, diffing two grayscaled video frames, and displaying white pixels only where the difference is above a threshold. I said to myself maybe one day I&#39;ll know enough about realtime video processing (And GPUs?), and then someone will compile something down to wasm so I can use it in the browser, and then I&#39;ll make that motion detection concept in javascript.&lt;/p&gt;
&lt;p&gt;Well, &lt;a href=&quot;https://codelabs.developers.google.com/your-first-webgpu-app#0&quot;&gt;WebGPU&lt;/a&gt; is here (more or less), and I made the whole working prototype in an evening.&lt;/p&gt;
&lt;p&gt;I still need to learn more about WebGPU, shaders, bindgroups, and all these new words, but having a conversation with the AI sure beats googling.&lt;/p&gt;
&lt;p&gt;(Want to see a feature on motion? Let me know. I&#39;d also love to hear about resources to learn more about (web) GPU concepts).&lt;/p&gt;
&lt;h3&gt;A language learning app&lt;/h3&gt;
&lt;p&gt;I think this could easily be the AI version of a Hello World app. So many different approaches are possible (sound only? No sound, just text? Clone you own language to hear yourself speak a foreign tongue? Should you learn writting as well as speech? Why? Why not just speech? All of these are fun to pursue).&lt;/p&gt;
&lt;p&gt;What this taught me is that if you can use AI to generate 95% of the content of your app, what are you actually supposed to store in your database, and how will it enhance the user experience over time?&lt;/p&gt;
&lt;p&gt;(I can&#39;t show this one since you&#39;ll burn the credits for the generative parts, but I&#39;m quite happy with it, and so are a few friends).&lt;/p&gt;
&lt;h3&gt;This blog&lt;/h3&gt;
&lt;p&gt;So, I have, as a best guess, spent 10 years writting draft blog posts that never had a blog to live on. I don&#39;t know why. But all the release cadence around the other projects I made suddenly made me think maybe having a blog on the server wouldn&#39;t hurt. Let&#39;s see if I&#39;m wrong.&lt;/p&gt;
&lt;h3&gt;In fact, this whole server&lt;/h3&gt;
&lt;p&gt;Fine, I&#39;m an engineer and I didn&#39;t have my own server, maybe I should lose my license. But I got a little tiny box somewhere now, made scripts to deploy all of these projects automatically, and create certificates for all of them, and it&#39;s all automatic, and it makes me happy.&lt;/p&gt;
&lt;h2&gt;So&lt;/h2&gt;
&lt;p&gt;It&#39;s soooo much harder to be lazy now. The activation energy is so much lower, because for me activation energy used to be the quantity of conviction needed to spend a whole weekend figuring out how to figure out how to make something, and now it&#39;s mostly just spending 2 minutes thinking of the UX, and then chatting with the AI about it.&lt;/p&gt;
&lt;p&gt;I&#39;m fortunate that I know a lot of the phrases that steer the AI into good directions quickly, but clearly I&#39;m no genius.&lt;/p&gt;
&lt;p&gt;It&#39;s just a great time to have ideas.&lt;/p&gt;
</content>
  </entry>
</feed>