<?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[A Mosaic of Mine]]></title><description><![CDATA[My thoughts on data science, product, and culture]]></description><link>https://cameronlowry.substack.com</link><image><url>https://substackcdn.com/image/fetch/$s_!E96i!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fcameronlowry.substack.com%2Fimg%2Fsubstack.png</url><title>A Mosaic of Mine</title><link>https://cameronlowry.substack.com</link></image><generator>Substack</generator><lastBuildDate>Mon, 15 Jun 2026 15:21:31 GMT</lastBuildDate><atom:link href="https://cameronlowry.substack.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Cameron Lowry]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[cameronlowry@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[cameronlowry@substack.com]]></itunes:email><itunes:name><![CDATA[Cameron Lowry]]></itunes:name></itunes:owner><itunes:author><![CDATA[Cameron Lowry]]></itunes:author><googleplay:owner><![CDATA[cameronlowry@substack.com]]></googleplay:owner><googleplay:email><![CDATA[cameronlowry@substack.com]]></googleplay:email><googleplay:author><![CDATA[Cameron Lowry]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Building Asterism: Your Digital Commonplace Book]]></title><description><![CDATA[Even your &#8220;second brain&#8221; needs a moment to reflect]]></description><link>https://cameronlowry.substack.com/p/building-asterism-your-digital-commonplace</link><guid isPermaLink="false">https://cameronlowry.substack.com/p/building-asterism-your-digital-commonplace</guid><dc:creator><![CDATA[Cameron Lowry]]></dc:creator><pubDate>Wed, 03 Jun 2026 03:28:04 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!6oG5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6548d105-c618-43aa-a85d-2d3e49ebafa1_4366x3646.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6oG5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6548d105-c618-43aa-a85d-2d3e49ebafa1_4366x3646.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6oG5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6548d105-c618-43aa-a85d-2d3e49ebafa1_4366x3646.jpeg 424w, https://substackcdn.com/image/fetch/$s_!6oG5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6548d105-c618-43aa-a85d-2d3e49ebafa1_4366x3646.jpeg 848w, https://substackcdn.com/image/fetch/$s_!6oG5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6548d105-c618-43aa-a85d-2d3e49ebafa1_4366x3646.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!6oG5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6548d105-c618-43aa-a85d-2d3e49ebafa1_4366x3646.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6oG5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6548d105-c618-43aa-a85d-2d3e49ebafa1_4366x3646.jpeg" width="1456" height="1216" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6548d105-c618-43aa-a85d-2d3e49ebafa1_4366x3646.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1216,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4027413,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://cameronlowry.substack.com/i/200354857?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6548d105-c618-43aa-a85d-2d3e49ebafa1_4366x3646.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6oG5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6548d105-c618-43aa-a85d-2d3e49ebafa1_4366x3646.jpeg 424w, https://substackcdn.com/image/fetch/$s_!6oG5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6548d105-c618-43aa-a85d-2d3e49ebafa1_4366x3646.jpeg 848w, https://substackcdn.com/image/fetch/$s_!6oG5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6548d105-c618-43aa-a85d-2d3e49ebafa1_4366x3646.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!6oG5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6548d105-c618-43aa-a85d-2d3e49ebafa1_4366x3646.jpeg 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"><svg role="img" 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"><g><title></title><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"><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"><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></p><p>You&#8217;re on the train on your way to meet up with a friend, and you&#8217;re listening to a podcast. You hear a quote that echoes in your mind. It&#8217;s ephemeral, and you don&#8217;t want to forget it. You open your notes app and type the quote to the best of your memory into your notes, one of hundreds. You get off at your stop. You already forget the one-liner by the time you see your friend. You have a faint impression of feeling more inspired that morning.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://cameronlowry.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading A Mosaic of Mine! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>You&#8217;re at a panel, and one of the speakers gives advice that invigorates you. You hold it in your head, but you can&#8217;t write as fast as you can remember. You pull out your notebook and transcribe 80% of what you remembered. It&#8217;s ok. All that matters is you got the gist of it.</p><p>You&#8217;re finishing a book, and you highlight the final quote. You place your book back on your bookshelf, forgetting that you personally don&#8217;t read the same book twice.</p><h1>Why Did I Create Asterism?</h1><p>I was that person in those opening scenes, with the notes app full of quotes and the journal with transcriptions, waiting to be remembered. The friction was real enough that I stopped waiting for someone else to solve it and started building something myself.</p><p>As I got deeper into the world of Personal Knowledge Management (PKM) and digital commonplace books, I realized the problem wasn&#8217;t just mine. People were using multiple apps to create something that should feel simple, while others had collected dozens of notes without a system to return to them. The tools existed, but none of them quite fit.</p><p>That&#8217;s when I knew Asterism wasn&#8217;t just a personal project. I <a href="https://substack.com/home/post/p-194465918">wrote about it</a>, talked to people, and kept hearing the same thing back: the ideas are there, but they go nowhere. That&#8217;s the gap I&#8217;m trying to close.</p><h1>What is Asterism?</h1><p>Asterism is neither a second brain nor a productivity app. It isn&#8217;t asking you to build a system, maintain a tagging hierarchy, or feel guilty about your inbox.</p><p>Most tools in this space are obsessed with organization. They want you to file before you&#8217;ve finished thinking or optimize before you&#8217;ve even decided what matters. The substance of what you&#8217;ve collected gets buried under the overhead of maintaining the collection itself. You save the quote or the highlight, and then what? It sits there. Your book becomes a treasure chest you never open.</p><p>Asterism is built around the idea that capturing and rediscovering your ideas is itself a meaningful practice. The commonplace book has been around for centuries. da Vinci kept one. So did Marcus Aurelius and Virginia Woolf. The act of writing down what resonates with you and sitting with it over time is how ideas become wisdom.</p><p>That&#8217;s what Asterism is trying to be. A place to store what catches your attention (a quote, a sketch, a voice note on a morning walk, a highlight from something you read) and a way to find your way back to it when you&#8217;re ready.</p><p>Cultivate inspiration, not optimize workflows.</p><h1>How It Works</h1><p>Asterism was made with a star theme, and there are three elements to this app.</p><p>Firstly, the atomic unit is a <em>star</em>, a single captured idea. A star can be a typed note, an image, or a voice recording. The capture flow is designed to meet you where you are. You can add stars from the app or clip them from the web with the browser extension. You don&#8217;t need to open an app, find the right folder, and decide where something belongs before you&#8217;ve even finished the thought.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Nz1r!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65c1d8c6-ef52-49bb-91cc-55709f062797_2048x1182.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Nz1r!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65c1d8c6-ef52-49bb-91cc-55709f062797_2048x1182.png 424w, https://substackcdn.com/image/fetch/$s_!Nz1r!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65c1d8c6-ef52-49bb-91cc-55709f062797_2048x1182.png 848w, https://substackcdn.com/image/fetch/$s_!Nz1r!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65c1d8c6-ef52-49bb-91cc-55709f062797_2048x1182.png 1272w, https://substackcdn.com/image/fetch/$s_!Nz1r!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65c1d8c6-ef52-49bb-91cc-55709f062797_2048x1182.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Nz1r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65c1d8c6-ef52-49bb-91cc-55709f062797_2048x1182.png" width="1456" height="840" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/65c1d8c6-ef52-49bb-91cc-55709f062797_2048x1182.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:840,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Nz1r!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65c1d8c6-ef52-49bb-91cc-55709f062797_2048x1182.png 424w, https://substackcdn.com/image/fetch/$s_!Nz1r!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65c1d8c6-ef52-49bb-91cc-55709f062797_2048x1182.png 848w, https://substackcdn.com/image/fetch/$s_!Nz1r!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65c1d8c6-ef52-49bb-91cc-55709f062797_2048x1182.png 1272w, https://substackcdn.com/image/fetch/$s_!Nz1r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65c1d8c6-ef52-49bb-91cc-55709f062797_2048x1182.png 1456w" sizes="100vw" loading="lazy"></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"><svg role="img" 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"><g><title></title><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"><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"><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>Once you have stars, you can group them into <em>constellations</em>, which are themes, topics, or threads of thinking you&#8217;re following. You make them, you name them, and you decide what belongs. Asterism can suggest a constellation if you want a nudge. It&#8217;ll look across your <em>stars</em> and offer a grouping it thinks is interesting, but it&#8217;s always just a suggestion. You&#8217;re in control of your creative thinking.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2x7r!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddf544fa-bf99-46a9-9dc5-d47ef0914fa8_2048x1171.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2x7r!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddf544fa-bf99-46a9-9dc5-d47ef0914fa8_2048x1171.png 424w, https://substackcdn.com/image/fetch/$s_!2x7r!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddf544fa-bf99-46a9-9dc5-d47ef0914fa8_2048x1171.png 848w, https://substackcdn.com/image/fetch/$s_!2x7r!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddf544fa-bf99-46a9-9dc5-d47ef0914fa8_2048x1171.png 1272w, https://substackcdn.com/image/fetch/$s_!2x7r!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddf544fa-bf99-46a9-9dc5-d47ef0914fa8_2048x1171.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2x7r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddf544fa-bf99-46a9-9dc5-d47ef0914fa8_2048x1171.png" width="1456" height="833" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ddf544fa-bf99-46a9-9dc5-d47ef0914fa8_2048x1171.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:833,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!2x7r!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddf544fa-bf99-46a9-9dc5-d47ef0914fa8_2048x1171.png 424w, https://substackcdn.com/image/fetch/$s_!2x7r!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddf544fa-bf99-46a9-9dc5-d47ef0914fa8_2048x1171.png 848w, https://substackcdn.com/image/fetch/$s_!2x7r!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddf544fa-bf99-46a9-9dc5-d47ef0914fa8_2048x1171.png 1272w, https://substackcdn.com/image/fetch/$s_!2x7r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddf544fa-bf99-46a9-9dc5-d47ef0914fa8_2048x1171.png 1456w" sizes="100vw" loading="lazy"></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"><svg role="img" 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"><g><title></title><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"><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"><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><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1cp5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ca5111f-6c34-4c1b-8841-8991fde1566d_2048x1186.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1cp5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ca5111f-6c34-4c1b-8841-8991fde1566d_2048x1186.png 424w, https://substackcdn.com/image/fetch/$s_!1cp5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ca5111f-6c34-4c1b-8841-8991fde1566d_2048x1186.png 848w, https://substackcdn.com/image/fetch/$s_!1cp5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ca5111f-6c34-4c1b-8841-8991fde1566d_2048x1186.png 1272w, https://substackcdn.com/image/fetch/$s_!1cp5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ca5111f-6c34-4c1b-8841-8991fde1566d_2048x1186.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1cp5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ca5111f-6c34-4c1b-8841-8991fde1566d_2048x1186.png" width="1456" height="843" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1ca5111f-6c34-4c1b-8841-8991fde1566d_2048x1186.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:843,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!1cp5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ca5111f-6c34-4c1b-8841-8991fde1566d_2048x1186.png 424w, https://substackcdn.com/image/fetch/$s_!1cp5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ca5111f-6c34-4c1b-8841-8991fde1566d_2048x1186.png 848w, https://substackcdn.com/image/fetch/$s_!1cp5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ca5111f-6c34-4c1b-8841-8991fde1566d_2048x1186.png 1272w, https://substackcdn.com/image/fetch/$s_!1cp5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ca5111f-6c34-4c1b-8841-8991fde1566d_2048x1186.png 1456w" sizes="100vw" loading="lazy"></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"><svg role="img" 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"><g><title></title><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"><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"><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>The third piece is the <em>Serendipity Digest</em>, which is a compilation of resurfaced stars paired with newer ones that share a theme. It sends on an adaptive cadence so it doesn&#8217;t feel spammy.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cmN5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b8248-b013-4104-8aac-8eb9ebcf0dc6_2048x1168.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cmN5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b8248-b013-4104-8aac-8eb9ebcf0dc6_2048x1168.png 424w, https://substackcdn.com/image/fetch/$s_!cmN5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b8248-b013-4104-8aac-8eb9ebcf0dc6_2048x1168.png 848w, https://substackcdn.com/image/fetch/$s_!cmN5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b8248-b013-4104-8aac-8eb9ebcf0dc6_2048x1168.png 1272w, https://substackcdn.com/image/fetch/$s_!cmN5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b8248-b013-4104-8aac-8eb9ebcf0dc6_2048x1168.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cmN5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b8248-b013-4104-8aac-8eb9ebcf0dc6_2048x1168.png" width="1456" height="830" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/380b8248-b013-4104-8aac-8eb9ebcf0dc6_2048x1168.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:830,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!cmN5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b8248-b013-4104-8aac-8eb9ebcf0dc6_2048x1168.png 424w, https://substackcdn.com/image/fetch/$s_!cmN5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b8248-b013-4104-8aac-8eb9ebcf0dc6_2048x1168.png 848w, https://substackcdn.com/image/fetch/$s_!cmN5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b8248-b013-4104-8aac-8eb9ebcf0dc6_2048x1168.png 1272w, https://substackcdn.com/image/fetch/$s_!cmN5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b8248-b013-4104-8aac-8eb9ebcf0dc6_2048x1168.png 1456w" sizes="100vw" loading="lazy"></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"><svg role="img" 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"><g><title></title><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"><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"><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>You don&#8217;t have to be disciplined about any of it. Visit it when you want to. Let it accumulate; the value compounds over time.</p><h1>Final Note</h1><p>Asterism is a solo-built app. I&#8217;m building it because I use it, and I think it should exist.</p><p>Furthermore, your data is yours. You can export it at anytime in Markdown or JSON. The AI features process your content to serve you, and your data is never used to train models. Pricing is $9/month or $72/year.</p><p>The free tier is genuinely free and valuable. Core capture, the <em>Serendipity Digest</em>, and <em>constellations</em> are all available without paying. Pro unlocks more, such as a discovery mode to uncover unexpected connections and unlimited <em>constellation</em> suggestions. I&#8217;d love for you to subscribe because it&#8217;s how I get to stay independent.</p><h1>Join Asterism</h1><p>If you like any of this, then you can join the <a href="http://myasterism.com">waitlist</a> at <a href="http://myasterism.com">myasterism.com</a>.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://cameronlowry.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading A Mosaic of Mine! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Creative Thinking is Commonplace]]></title><description><![CDATA[Setting the Scene]]></description><link>https://cameronlowry.substack.com/p/creative-thinking-is-commonplace</link><guid isPermaLink="false">https://cameronlowry.substack.com/p/creative-thinking-is-commonplace</guid><dc:creator><![CDATA[Cameron Lowry]]></dc:creator><pubDate>Fri, 17 Apr 2026 03:53:28 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!QyFK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52bb8ee9-2094-4f44-a24f-fced2a273ba6_5472x3648.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QyFK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52bb8ee9-2094-4f44-a24f-fced2a273ba6_5472x3648.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QyFK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52bb8ee9-2094-4f44-a24f-fced2a273ba6_5472x3648.jpeg 424w, https://substackcdn.com/image/fetch/$s_!QyFK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52bb8ee9-2094-4f44-a24f-fced2a273ba6_5472x3648.jpeg 848w, https://substackcdn.com/image/fetch/$s_!QyFK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52bb8ee9-2094-4f44-a24f-fced2a273ba6_5472x3648.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!QyFK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52bb8ee9-2094-4f44-a24f-fced2a273ba6_5472x3648.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QyFK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52bb8ee9-2094-4f44-a24f-fced2a273ba6_5472x3648.jpeg" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/52bb8ee9-2094-4f44-a24f-fced2a273ba6_5472x3648.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3833511,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://cameronlowry.substack.com/i/194465918?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52bb8ee9-2094-4f44-a24f-fced2a273ba6_5472x3648.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!QyFK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52bb8ee9-2094-4f44-a24f-fced2a273ba6_5472x3648.jpeg 424w, https://substackcdn.com/image/fetch/$s_!QyFK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52bb8ee9-2094-4f44-a24f-fced2a273ba6_5472x3648.jpeg 848w, https://substackcdn.com/image/fetch/$s_!QyFK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52bb8ee9-2094-4f44-a24f-fced2a273ba6_5472x3648.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!QyFK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52bb8ee9-2094-4f44-a24f-fced2a273ba6_5472x3648.jpeg 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"><svg role="img" 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"><g><title></title><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"><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"><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></p><h1>Setting the Scene</h1><p>In high school, I had an &#8220;Everything Binder,&#8221; where I saved any paper or transcribed anything that piqued my curiosity. Ralph Waldo Emerson&#8217;s <em>The American Scholar</em>. A master list of logical fallacies. A handwritten, multilingual copy of Article 1 of the Universal Declaration of Human Rights.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://cameronlowry.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading A Mosaic of Mine! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>In college, I sporadically filled out a Notion database for my commonplace book, as I later learned the name of the practice of writing down information or inspiration in a dedicated medium. Notes from an event transforming computer science education. Kevin Roose&#8217;s 9 rules for futureproofing in the age of automation. A venture capitalist&#8217;s advice for building products.</p><p>Now, I have a Notes app full of things I&#8217;ll probably never find again, text messages to myself in a growing inbox, and a physical journal I update when I remember to carry it with me. My mom&#8217;s recipes. Transcribed essay highlights from Paul Graham&#8217;s &#8220;How to Do What You Love.&#8221; A poem about self-compassion.</p><p>At each point in time, I couldn&#8217;t articulate <em>why</em> I saved them; only later did the themes emerge. If any of those resonated with you, you should consider taking up a commonplace book.</p><h1>How Common is a Commonplace Book Nowadays?</h1><p>Commonplace books store pieces of knowledge and inspiration: quotes, sketches, recipes, annotations, anything. They&#8217;re not journals or diaries as they don&#8217;t narrate your life. They collect what caught your attention and leave room for you to think about why.</p><p>When the printing press arrived and paper prices dropped, books proliferated, and readers faced something unfamiliar: too much to read [1]. The commonplace book was their solution, a way to slow down and deliberately select what mattered. By the 20th Century, as education practices shifted and new technologies took over, the practice faded [2]. Now more than ever, information arrives faster and wider than anything scholars of the past could have imagined. We don&#8217;t suffer from scarcity anymore. We suffer from abundance with no memory.</p><h1>Capturing is Easy, Contemplating is Harder</h1><p>Most of us are already capturing things through screenshots, saved posts, highlighted passages, and voice memos. The problem, here, is that we&#8217;re paying attention to too many things and returning to none of them. Everything we&#8217;ve saved turns out to be ephemeral, disappearing almost as soon as we were inspired.</p><p>There are two reasons why the returning matters. The first is original thinking. The second is attention.</p><h2>Original Thinking Requires a Personal Archive</h2><p>A recent Substack <a href="https://feifeiwrites.substack.com/p/you-share-other-peoples-thoughts">article</a> &#8220;You Share Other People&#8217;s Thoughts Because You Don&#8217;t Have Any of Your Own&#8221; argues that we don&#8217;t have original thoughts anymore, only imitations of other people&#8217;s perspectives. The author reframes what original thinking actually is:</p><blockquote><p>It &#8220;is the process of taking things you&#8217;ve encountered &#8212; ideas, experiences, other people&#8217;s arguments &#8212; and running them through your own life until they come out changed. It&#8217;s like synthesis, not invention from nothing. Nobody thinks in a vacuum.[3]&#8221;</p></blockquote><p>Synthesis requires material. You can&#8217;t connect two ideas you&#8217;ve already forgotten. Your commonplace book is where the raw material lives, like the quotes that stopped you mid-sentence, the advice that felt personally aimed at you, and the observations you couldn&#8217;t quite explain yet. When you revisit them, you&#8217;re not only remembering, but also giving your past self a chance to have a conversation with your present self, building bridges between each artifact from months ago to right now.</p><p>That&#8217;s what I found in my own binder and Notion databases, even if I couldn&#8217;t name it then. They were a record of what I was trying to figure out.</p><h2>Attention as a Practice</h2><p>The second reason to revisit your book is harder to articulate but arguably more important.</p><p>Jonathan Swift wrote in 1721 that a commonplace book is &#8220;a supplemental memory, or a record of what occurs remarkable in every day&#8217;s reading or conversation.[4]&#8221; The keyword is <em>supplemental</em>. The book holds the artifacts that help us think. Swift understood that writing something down was only the beginning.</p><p>Today, we have the opposite of Swift&#8217;s problem. He was worried about forgetting. We&#8217;re drowning in too much information. We have near-infinite content, curated to our micro-niches, arriving in an endless scroll. Our attention has become something platforms harvest, and we risk losing our direction. We mistake saving something for engaging with it.</p><p>A commonplace book asks something different of you. It asks you to slow down long enough to decide what is actually worth keeping and to promise to return to it. You don&#8217;t have to do some spiritual practice and sit by candlelight and meditate with your journal or Notes app. When you go on a walk or commute to work, when you wind down for the day, think about what you saved. What drew you to them? The act of returning is itself a form of attention that the rest of our digital lives rarely demands. It&#8217;s how you start to tell the signal from the noise in your own thinking. There are tools that try to help with this &#8211; some better than others &#8211; but the returning is still mostly left to you.</p><h1>Return</h1><p>The binder. The Notion database. The Notes app I&#8217;ll probably never fully excavate. None of it was wasted, even the parts I&#8217;ve lost. Something made me stop and save each one, and that act of stopping is worth honoring. The commonplace book has always been a bet that your past attention is worth your present time. The book is only half the practice. The other half is going back.</p><div><hr></div><p>[1] <a href="https://www.mentalfloss.com/literature/reading/what-is-a-commonplace-book">https://www.mentalfloss.com/literature/reading/what-is-a-commonplace-book</a></p><p>[2] <a href="https://commonplacecorner.wordpress.com/2023/05/19/a-brief-history-of-commonplace-books/">https://commonplacecorner.wordpress.com/2023/05/19/a-brief-history-of-commonplace-books/</a></p><p>[3] </p><div class="embedded-post-wrap" data-attrs="{&quot;id&quot;:188879297,&quot;url&quot;:&quot;https://feifeiwrites.substack.com/p/you-share-other-peoples-thoughts&quot;,&quot;publication_id&quot;:2537403,&quot;publication_name&quot;:&quot;Feifei&#8217;s Substack&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!aTxJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdeec0576-e62c-4489-909e-c8a65d343a3b_640x640.jpeg&quot;,&quot;title&quot;:&quot;You Share Other People's Thoughts Because You Don't Have Any of Your Own.&quot;,&quot;truncated_body_text&quot;:&quot;Your Instagram stories are just screenshots of other people's tweets. Your \&quot;thoughts\&quot; on current events are reworded takes from that video essay you watched. Your opinions on art, music, politics, relationships&#8212;all of it is borrowed, curated and copied.&quot;,&quot;date&quot;:&quot;2026-02-23T09:13:43.931Z&quot;,&quot;like_count&quot;:7468,&quot;comment_count&quot;:245,&quot;bylines&quot;:[{&quot;id&quot;:175744275,&quot;name&quot;:&quot;Feifei&quot;,&quot;handle&quot;:&quot;feifeiwrites&quot;,&quot;previous_name&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f5db9334-9164-4fc9-92fa-2d0d58854947_736x1016.jpeg&quot;,&quot;bio&quot;:&quot;Newsletter Ghostwriter|Romance Ghostwriter|Personal Essayist. For substack consultation/audit &#128140;: idowuf42@gmail.com. &quot;,&quot;profile_set_up_at&quot;:&quot;2023-10-17T14:40:45.800Z&quot;,&quot;reader_installed_at&quot;:&quot;2023-10-17T14:48:07.475Z&quot;,&quot;publicationUsers&quot;:[{&quot;id&quot;:2569294,&quot;user_id&quot;:175744275,&quot;publication_id&quot;:2537403,&quot;role&quot;:&quot;admin&quot;,&quot;public&quot;:true,&quot;is_primary&quot;:true,&quot;publication&quot;:{&quot;id&quot;:2537403,&quot;name&quot;:&quot;Feifei&#8217;s Substack&quot;,&quot;subdomain&quot;:&quot;feifeiwrites&quot;,&quot;custom_domain&quot;:null,&quot;custom_domain_optional&quot;:false,&quot;hero_text&quot;:&quot;I ghostwrite Romance Novels, Newsletters, Emails and Social Contents for Founders, brand execs, personal brands, romance authors and literally anyone who wants to build an audience, convert them to sales, or get their story written but just can't write\n&quot;,&quot;logo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/deec0576-e62c-4489-909e-c8a65d343a3b_640x640.jpeg&quot;,&quot;author_id&quot;:175744275,&quot;primary_user_id&quot;:175744275,&quot;theme_var_background_pop&quot;:&quot;#786CFF&quot;,&quot;created_at&quot;:&quot;2024-04-19T23:37:08.997Z&quot;,&quot;email_from_name&quot;:null,&quot;copyright&quot;:&quot;Feifei&quot;,&quot;founding_plan_name&quot;:null,&quot;community_enabled&quot;:true,&quot;invite_only&quot;:false,&quot;payments_state&quot;:&quot;disabled&quot;,&quot;language&quot;:null,&quot;explicit&quot;:false,&quot;homepage_type&quot;:&quot;magaziney&quot;,&quot;is_personal_mode&quot;:false,&quot;logo_url_wide&quot;:null}}],&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null,&quot;status&quot;:{&quot;bestsellerTier&quot;:null,&quot;subscriberTier&quot;:null,&quot;leaderboard&quot;:null,&quot;vip&quot;:false,&quot;badge&quot;:null,&quot;paidPublicationIds&quot;:[],&quot;subscriber&quot;:null}}],&quot;utm_campaign&quot;:null,&quot;belowTheFold&quot;:true,&quot;type&quot;:&quot;newsletter&quot;,&quot;language&quot;:&quot;en&quot;,&quot;source&quot;:null}" data-component-name="EmbeddedPostToDOM"><a class="embedded-post" native="true" href="https://feifeiwrites.substack.com/p/you-share-other-peoples-thoughts?utm_source=substack&amp;utm_campaign=post_embed&amp;utm_medium=web"><div class="embedded-post-header"><img class="embedded-post-publication-logo" src="https://substackcdn.com/image/fetch/$s_!aTxJ!,w_56,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdeec0576-e62c-4489-909e-c8a65d343a3b_640x640.jpeg" loading="lazy"><span class="embedded-post-publication-name">Feifei&#8217;s Substack</span></div><div class="embedded-post-title-wrapper"><div class="embedded-post-title">You Share Other People's Thoughts Because You Don't Have Any of Your Own.</div></div><div class="embedded-post-body">Your Instagram stories are just screenshots of other people's tweets. Your "thoughts" on current events are reworded takes from that video essay you watched. Your opinions on art, music, politics, relationships&#8212;all of it is borrowed, curated and copied&#8230;</div><div class="embedded-post-cta-wrapper"><span class="embedded-post-cta">Read more</span></div><div class="embedded-post-meta">4 months ago &#183; 7468 likes &#183; 245 comments &#183; Feifei</div></a></div><p>[4] <a href="https://luminarium.org/renascence-editions/swift3.html">https://luminarium.org/renascence-editions/swift3.html</a></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://cameronlowry.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading A Mosaic of Mine! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Why Classical Music Breaks Recommenders ]]></title><description><![CDATA[And What I Built Instead]]></description><link>https://cameronlowry.substack.com/p/why-classical-music-breaks-recommenders</link><guid isPermaLink="false">https://cameronlowry.substack.com/p/why-classical-music-breaks-recommenders</guid><dc:creator><![CDATA[Cameron Lowry]]></dc:creator><pubDate>Sat, 24 Jan 2026 18:03:00 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Tc_1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b65f3fe-4b24-43e3-8792-939e09968af7_1400x933.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><strong>Try it live: </strong><a href="http://classicalvibe.vercel.app/">classicalvibe.vercel.app<br></a><strong>Code: </strong><a href="https://github.com/cameronelow/classical_music_recommender">GitHub</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Tc_1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b65f3fe-4b24-43e3-8792-939e09968af7_1400x933.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Tc_1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b65f3fe-4b24-43e3-8792-939e09968af7_1400x933.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Tc_1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b65f3fe-4b24-43e3-8792-939e09968af7_1400x933.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Tc_1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b65f3fe-4b24-43e3-8792-939e09968af7_1400x933.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Tc_1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b65f3fe-4b24-43e3-8792-939e09968af7_1400x933.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Tc_1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b65f3fe-4b24-43e3-8792-939e09968af7_1400x933.jpeg" width="1400" height="933" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7b65f3fe-4b24-43e3-8792-939e09968af7_1400x933.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:933,&quot;width&quot;:1400,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!Tc_1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b65f3fe-4b24-43e3-8792-939e09968af7_1400x933.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Tc_1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b65f3fe-4b24-43e3-8792-939e09968af7_1400x933.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Tc_1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b65f3fe-4b24-43e3-8792-939e09968af7_1400x933.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Tc_1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b65f3fe-4b24-43e3-8792-939e09968af7_1400x933.jpeg 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"><svg role="img" 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"><g><title></title><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"><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"><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>Most recommender systems treat cold start as a temporary problem, something to solve until enough behavioral data is gathered. Collaborative filtering finds similar users. When that fails, systems fall back to popularity or content similarity. The assumption is that cold start is an obstacle between the system and the data it really wants.</p><p>Classical music breaks that assumption.</p><p>For classical music discovery, cold start is part of the product.</p><p>People don&#8217;t search, &#8220;Recommend something based on my listening history.&#8221; They say things like:</p><ul><li><p>&#8220;I need music to focus while studying.&#8221;</p></li><li><p>&#8220;I want something moody and introspective.&#8221;</p></li><li><p>&#8220;Give me dark academia vibes.&#8221;</p></li></ul><p>These aren&#8217;t similarity queries. They&#8217;re descriptions of contexts, atmospheres, and emotional states. I kept realizing that similarity-based answers were responding to a question no one was actually asking. Users weren&#8217;t looking for &#8220;more of what they liked before.&#8221; They were trying to describe how they felt right now.</p><p>This realization shaped everything I built.</p><h2><strong>Cold Start as a Feature</strong></h2><p>Once I stopped treating cold start as something to solve, the architecture changed almost immediately. I couldn&#8217;t wait around for behavioral signals. The system had to understand intent from the first query, handle exploration gracefully, and explain itself clearly because there was no historical data to reference.</p><p>In this setting, diversity and explanations are core parts of the product.</p><p>I built a classical music recommender designed around this. It accepts abstract queries like &#8220;dark academia,&#8221; uses semantic search to understand them, enforces explicit diversity to avoid obvious choices, and generates natural-language explanations to help users understand why a piece was shown to them.</p><h2><strong>Why Classical Music Is a Hard Recommender Problem</strong></h2><p>I kept running into the same three failure modes over and over: 1) Early users didn&#8217;t generate much behavioral data, 2) Their queries were vague by design, and 3) The catalog itself had a brutal long tail. Each of these on its own is manageable; together, they make similarity-first recommenders collapse fast.</p><p>First, discovery doesn&#8217;t generate dense behavioral signals initially. People arrive with situational intent, not stable preferences, and those intents change from session to session. This makes collaborative filtering a poor fit from the start.</p><p>Second, the queries themselves can be ambiguous. When someone asks for &#8220;dark academia vibes,&#8221; they&#8217;re not referencing a composer, a period, or even a genre. They&#8217;re describing a feeling. That requires understanding language and mapping it to musical characteristics, something similarity-based systems struggle to handle.</p><p>Third, there is an extreme long tail of the classical repertoire, where a handful of famous works dominate cultural awareness while thousands of others are seldom heard. Optimizing for similarity almost guarantees repetition, even when users are explicitly seeking discovery.</p><p>Additionally, explanations matter more here than in most recommendation domains. When users don&#8217;t recognize the name of a piece or composer, the explanation becomes part of the recommendation. It&#8217;s how trust is built and how users learn to navigate the space.</p><h2><strong>The Wrong Abstraction: Why Spotify Audio Features Failed</strong></h2><p>My first instinct was to use Spotify&#8217;s audio features (valence, energy, acousticness, etc.), which could inform numerical features, large scale, and similarity scoring. Though, it quickly became clear this was the wrong abstraction.</p><p>&#8220;Dark academia&#8221; is atmosphere, historical connotation, and emotional arc, not valence scores. A solo piano nocturne and a string quartet can evoke the same mood while having very different acoustic signatures. I needed semantic representation.</p><p>That realization led me to use:</p><ul><li><p>MusicBrainz for structured metadata.</p></li><li><p>Sentence transformers for semantic embeddings.</p></li><li><p>LLMs for semantic enrichment and explanation.</p></li></ul><h2><strong>Building for Discovery: System Architecture</strong></h2><p>The system is built around three principles:</p><ol><li><p>Semantic understanding</p></li><li><p>Explicit diversity</p></li><li><p>Natural-language explanations</p></li></ol><h2><strong>Semantic Search with Embeddings</strong></h2><p>Each musical work is represented as a rich, textual description combining composer, period, instrumentation, form, musical key with mood associations, and mood and character tags.</p><p>For example:</p><blockquote><p><em>Chopin, Romantic period, E minor, solo piano nocturne, introspective, melancholic, intimate, contemplative.</em></p></blockquote><p>These descriptions are embedded using the all-MiniLM-L6-v2 sentence transformer so both user queries and works live in the same semantic space. Cosine similarity captures meaning, not keywords.</p><p>This allows the system to understand that &#8220;dark academia,&#8221; &#8220;brooding intellectual,&#8221; and &#8220;mysterious library atmosphere&#8221; are conceptually related, even with no shared words.</p><h2><strong>The Diversity Problem (and the Fix)</strong></h2><p>Pure similarity ranking quickly collapses into repetition. Even when relevance is high, results cluster around the same composers and styles.</p><p>Instead of returning the top-N most similar works, I:</p><ol><li><p>Filtered by a minimum similarity threshold.</p></li><li><p>Took a candidate pool larger than needed.</p></li><li><p>Applied weighted random sampling based on similarity.</p></li></ol><p>Higher similarity increases the probability of selection but doesn&#8217;t guarantee it. It results in recommendations remaining on-theme while exploring a broader slice of the catalog.</p><h2><strong>Natural-Language Explanations</strong></h2><p>For each recommendation, the system generates a short explanation connecting the user&#8217;s query, the piece&#8217;s musical characteristics, and the emotional rationale.</p><p>This builds trust and teaches users how to think about classical music, turning recommendations into learning moments.</p><h2><strong>LLM-Augmented Metadata</strong></h2><p>MusicBrainz metadata is structurally rich but emotionally sparse. Most works had no mood-like tags at all.</p><p>I used an LLM to generate mood and character tags from structured metadata (composer, period, key, work type.) This dramatically expanded semantic coverage while keeping the recommendation logic algorithmic and controllable.</p><p>This was a deliberate architectural choice. LLMs created representations, and algorithms decided recommendations.</p><h2><strong>Where LLMs Helped and Where They Didn&#8217;t</strong></h2><p>LLMs played an important role in this system, but not in the way people often expect.</p><p>They were invaluable for semantic work, enriching sparse metadata, translating casual language into musical concepts, and turning structured information into explanations that users could actually understand. Those are all language problems, and LLMs are pretty good at them.</p><p>I was careful not to let them make recommendation decisions. Ranking, diversity control, and catalog coverage are places where I wanted explicit logic and tunable parameters. An end-to-end LLM could probably suggest reasonable pieces, but I wouldn&#8217;t know <em>why</em> it chose them nor how to systematically improve the results.</p><p>Keeping LLMs in a supporting role made the recommender easier to review and easier to evolve.</p><p>This hybrid approach preserves explainability, controllability, and tunability, properties that end-to-end LLM recommenders give up too easily. This architecture mirrors how production recommendation systems separate the semantic understanding from the ranking logic. The former benefits from LLM capabilities while the latter requires explicit control over business constraints and exploration-exploitation tradeoffs.</p><h2><strong>Evaluating Without Ground Truth</strong></h2><p>There&#8217;s no ground-truth dataset for something as subjective as &#8220;main character energy,&#8221; so evaluation had to focus on whether the system behaved the way it was designed, rather than whether it matched a predefined set of &#8220;correct&#8221; answers.</p><p>I evaluated the system using 21 test queries spanning different discovery modes: mood-driven prompts (&#8220;moody and contemplative,&#8221;) activity-based requests (&#8220;music for studying,&#8221;) contextual descriptions (&#8220;rainy Sunday morning,&#8221;) and more concrete stylistic queries (&#8220;romantic era drama,&#8221; &#8220;baroque counterpoint&#8221;.) This mix let me probe both the abstract and the musically explicit ends of the query spectrum.</p><p>Without human labels, I relied on intrinsic signals to assess system behavior. Across all queries, recommendations achieved an average cosine similarity of ~0.38, which was high enough to maintain thematic coherence while leaving room for exploration. Musically-explicit queries like &#8220;baroque counterpoint&#8221; scored higher, as expected, while abstract mood queries showed more variance.</p><p>Re-running the same query multiple times produced 30&#8211;40% overlap in results, indicating that weighted sampling introduced controlled variation without making recommendations feel random or disconnected. Collectively, the test queries surfaced 117 of 313 works (37%), and each query spanned 5&#8211;7 unique composers on average, preventing results from collapsing onto a single, canonical choice.</p><p>These signals provided a practical baseline for iteration without requiring human annotation. More importantly, they confirmed that the recommender supported a form of natural-language discovery that similarity-first systems could not. Users could explore classical music through intention and mood, not just proximity in an embedding space.</p><p>At this stage, I cared less about maximizing any single metric and more about avoiding obvious failure modes, like off-theme results, repetitive recommendations, or unexplained suggestions.</p><h2><strong>What I&#8217;d Build Next</strong></h2><p>I was deliberate about keeping the first version of the system simple and interpretable. With a small user base, adding personalization too early would have created the illusion of sophistication without much real signal behind it.</p><p>As usage grows, the first thing I&#8217;d revisit is how the system balances precision and exploration. Some queries clearly call for tight, on-theme recommendations while others benefit from wider exploration. Making diversity adaptive to the query itself would let the system respond more intelligently to different discovery modes. Power users searching for &#8220;pieces similar to Chopin Nocturne Op. 9 &#8470;2&#8221; might prefer precision, while explorers asking for &#8220;something moody&#8221; might need serendipity.</p><p>The next layer would be lightweight personalization derived from implicit signals rather than explicit profiles. Even coarse signals, like which explanations users linger on or which pieces they revisit, could help steer recommendations without undermining the cold-start-first philosophy that shaped the system.</p><p>I&#8217;d also like to move beyond treating large works as atomic units. Classical music often lives at the movement level, and recommending a specific adagio or scherzo would better match how people actually listen, especially when they&#8217;re searching by mood or context. Right now, recommending Beethoven&#8217;s 9th Symphony gives you 70 minutes when someone searching for &#8220;triumphant and uplifting&#8221; might only want the &#8220;Ode to Joy&#8221; finale.</p><p>Finally, I&#8217;d expand the modern and contemporary repertoire. Contemporary composers like Philip Glass, Arvo P&#228;rt, and Dmitri Shostakovich often match abstract, atmospheric queries well but are underrepresented in most classical discovery systems. Improving coverage here would push the recommender further away from the canonical defaults and closer to genuine exploration.</p><h2><strong>What Classical Music Taught Me About AI Systems</strong></h2><p>This project changed how I think about building AI systems. The main lesson was that choosing the wrong abstraction early forces every downstream decision to fight the product instead of serve it.</p><p>The lack of behavioral data wasn&#8217;t something to work around; it was a forcing function that led to better design decisions. It pushed me to think carefully about abstractions instead of defaulting to the most powerful model available.</p><p>I also came away more convinced that hybrid systems are often more robust than monolithic ones. Let LLMs handle language and meaning, and let classic ML algorithms handle ranking, constraints, and tradeoffs. Composing the right tools matters more than maximizing model complexity.</p><p>Finally, explainability isn&#8217;t optional in discovery-driven products. When users can&#8217;t rely on familiarity or history, explanations are how they learn to trust the system and how the system teaches them how to explore.</p><p>Some problems aren&#8217;t about prediction; they&#8217;re about exploration. Those require different architectures, metrics, and instincts. These principles generalize beyond classical music. Any domain with sparse behavioral signals, ambiguous user intent, and a large search space faces similar challenges, whether it&#8217;s recipe discovery, travel planning, or finding the right research paper. The core insight remains: sometimes the path forward isn&#8217;t collecting more data, but building systems that work intelligently with the data you do have.</p><h2><strong>Closing</strong></h2><p>Great classical music recommendations feel like a conversation with someone who understands the repertoire and knows what you&#8217;re looking for. That&#8217;s the bar I&#8217;m trying to hit.</p><p>Try querying for &#8220;dark academia&#8221; or &#8220;something for late-night studying&#8221; at <a href="http://classicalvibe.vercel.app/">classicalvibe.vercel.app</a> and see how the recommendations compare to what algorithmic playlists would suggest. The full code is on<a href="https://github.com/cameronelow/classical_music_recommender"> GitHub</a>.</p><div><hr></div><p><strong>Technical Notes</strong></p><p>For those interested in implementation details:</p><ul><li><p>Dataset: 313 classical works across 14 composers (Vivaldi, Debussy, Liszt, Schubert, Chopin, Handel, Verdi, Bach, Brahms, Beethoven, Tchaikovsky, Wagner, Schumann, and Mozart)</p></li><li><p>Embeddings: all-MiniLM-L6-v2 sentence transformer</p></li><li><p>Metadata source: MusicBrainz API with rate-limited ETL pipeline</p></li><li><p>Deployment: FastAPI backend, Next.js frontend on Vercel</p></li><li><p>Similarity threshold: 0.15 minimum cosine similarity. Tested range of 0.1&#8211;0.4; lower thresholds prioritize discovery over precision, which aligned with the MVP&#8217;s exploration-first philosophy</p></li><li><p>Diversity mechanism: Weighted random sampling from top 3 candidates to select 1 recommendation</p></li></ul>]]></content:encoded></item><item><title><![CDATA[When Moore's Law Killed Chess]]></title><description><![CDATA[How Strategy Games Redefined Intelligence in AI]]></description><link>https://cameronlowry.substack.com/p/when-moores-law-killed-chess</link><guid isPermaLink="false">https://cameronlowry.substack.com/p/when-moores-law-killed-chess</guid><dc:creator><![CDATA[Cameron Lowry]]></dc:creator><pubDate>Tue, 11 Jan 2022 15:58:16 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!boKN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F3014a2b1-bd32-4b92-9425-e34b1da52fb4_1400x933.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Originally published in <a href="https://ojs.stanford.edu/ojs/index.php/intersect">Volume 15 &#8470;1</a> of Intersect: Stanford Journal of Science, Technology, and Society</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!boKN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F3014a2b1-bd32-4b92-9425-e34b1da52fb4_1400x933.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!boKN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F3014a2b1-bd32-4b92-9425-e34b1da52fb4_1400x933.jpeg 424w, https://substackcdn.com/image/fetch/$s_!boKN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F3014a2b1-bd32-4b92-9425-e34b1da52fb4_1400x933.jpeg 848w, https://substackcdn.com/image/fetch/$s_!boKN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F3014a2b1-bd32-4b92-9425-e34b1da52fb4_1400x933.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!boKN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F3014a2b1-bd32-4b92-9425-e34b1da52fb4_1400x933.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!boKN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F3014a2b1-bd32-4b92-9425-e34b1da52fb4_1400x933.jpeg" width="1100" height="733" data-attrs="{&quot;src&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/3014a2b1-bd32-4b92-9425-e34b1da52fb4_1400x933.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:733,&quot;width&quot;:1100,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!boKN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F3014a2b1-bd32-4b92-9425-e34b1da52fb4_1400x933.jpeg 424w, https://substackcdn.com/image/fetch/$s_!boKN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F3014a2b1-bd32-4b92-9425-e34b1da52fb4_1400x933.jpeg 848w, https://substackcdn.com/image/fetch/$s_!boKN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F3014a2b1-bd32-4b92-9425-e34b1da52fb4_1400x933.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!boKN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F3014a2b1-bd32-4b92-9425-e34b1da52fb4_1400x933.jpeg 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"><svg role="img" 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"><g><title></title><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"><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"><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><h2><strong>Introduction</strong></h2><p>Over one hundred years ago, scientists dreamed of a machine that could<br>play a good game of chess. For centuries, chess was associated with<br>intellectual ability and thus became a criterion for general intelligence in<br>AI as the game &#8220;is generally considered to require &#8216;thinking&#8217; for skillful<br>play&#8221; (Shannon, 1950, p. 2; Esmenger, 2011, p. 9). When algorithms<br>became computationally efficient and mathematically complex, it was<br>able to process more moves than the chess-playing computer&#8217;s human<br>opponents but at the tradeoff of being less intellectual, unable to imitate a<br>human&#8217;s sub-conscious decision-making processes.</p><p>By the 1950s, computers could play a full game of chess without any<br>modifications, such as beginning the round in an end game or excluding<br>the diagonally-moving bishops, for example. Although still amateur<br>level, their programs became more efficient, pursuing promising lines of<br>decisions and rejecting ones with unfavorable outcomes, thus making the<br>computer more productive. With each passing decade, chess-playing<br>computers&#8217; skill levels matured as their computer chip speeds increased<br>and evaluation functions improved, allowing them to assess an even<br>greater number of potential moves and decisions per second, even as high<br>as thousands per second. This outpaced human capabilities as computer<br>superintelligence operated leagues beyond what was previously thought<br>possible (Williams, 2017, p. 32).</p><p>At the inception of artificial intelligence in the 1950s, Alan Turing,<br>an English computer scientist and mathematician, cautioned that the<br>digital computer &#8220;must have an adequate storage capacity as well as<br>working sufficiently fast&#8221; (Turing, 1950, p. 441). Hardware limitations<br>incurred by Moore&#8217;s Law have hindered a theoretically perfect intelligent<br>master for games like chess and Go. Moore&#8217;s Law stated that computing<br>speed, as measured by the number of transistors in a chip, would double<br>approximately every two years (Mollick, 2006, pg. 1). Tremendous<br>search spaces and exponential combinatorics for potential moves greatly<br>overpowered current capabilities of regular computers to evaluate them.<br>According to the 2019 Stanford AI Index Report, artificial intelligence<br>was now outpacing Moore&#8217;s Law, doubling every three months rather<br>than every two years (Perrault et al., 2019, p. 65&#8211;66). Recent progress in<br>effective algorithms and computer architecture in AI have redefined<br>intelligence for computers, transitioning from brute-force computations<br>to heuristic &#8220;thinking.&#8221;</p><h2><strong>A Chess-Playing Automaton</strong></h2><p>The first major development in this area was Leonardo Torres y<br>Quevedo&#8217;s El Ajedrecista. In 1912, Torres built the first autonomous<br>mechanical chess player that, while it could not play a full game, was able<br>to successfully carry out a specific end game strategy involving a white<br>rook and a king (Williams, 2017, p. 30). He presented his contraption at<br>the Paris World Fair in 1914 to the amazement of his audience. Even more impressive, it also recognized when its opponent made illegal moves,<br>flashing a light at them; otherwise, it would continue moving its piece<br>until it checkmated the black king (&#8220;Torres and His Remarkable<br>Automatic Devices,&#8221; 1915, p. 296). One Scientific American author,<br>whose name was not documented, smittenly recorded the machine&#8217;s<br>protests three times in his journalistic piece in the Scientific American<br>(&#8220;Torres and His Remarkable Automatic Devices,&#8221; 1915, p. 296&#8211;298). He<br>further wrote that its novelty lay in its ability to select &#8220;one possible action<br>in preference to another&#8221; (Torres and His Remarkable Automatic<br>Devices,&#8221; 1915, p.297).</p><p>The mechanization of labor and activity characterized the zeitgeist of<br>the Second Industrial Revolution, challenging Torres to automate human<br>intellect. A novel concept, Torres remarked that an even greater feat<br>would constitute a mechanical being that could &#8220;imitate, not the simple<br>gestures, but the thoughtful actions of a man, and which can sometimes<br>replace him&#8221; (Torres, 1914, p. 89). The automaton could learn from its<br>environment and adapt to varying circumstances around it, responding appropriately to the context it registered. In Torres&#8217;s mind, self-<br>awareness and discernment, two human-like qualities, distinguished an emerging concept within automata theory from the mundane machines<br>present since the First Industrial Revolution. While his other inventions,<br>like the torpedo, operated self-sufficiently, his theoretical automata<br>eschewed from &#8220;meretricious imitation of the human form,&#8221; an interest<br>that dominated the public&#8217;s imagination since the Ajedrecista&#8217;s debut in<br>Paris (&#8220;Torres and His Remarkable Automatic Devices,&#8221; 1915, p. 298).<br>Later applied to digital computers, this initial conception of machine<br>intelligence synthesized the thoughtfulness of the human brain with the<br>intellectual capability of playing a game of chess. Scientists,<br>philosophers, and mathematicians returned to this definition in the<br>succeeding decades with the advent of programmable computers.</p><h2><strong>Thinking Machines and Chess</strong></h2><p>In March 1950, Claude Shannon, an American mathematician and<br>engineer, sparked popular interests in chess-playing artificial intelligence<br>when he proposed a set of algorithms to create a program that played<br>chess. Inspired by Torres, he sought to expand the machine&#8217;s faculties to<br>play a full game. He hypothesized that if computers could be taught to<br>play chess, they would be capable of activities like translating one<br>language into another and performing symbolic (non-numerical)<br>mathematical operations (Shannon, 1950, p. 1). He presupposed that this<br>game was the key to unlocking numerous opportunities in computer<br>applications within the confines of symbolic AI. If it could play a<br>reasonably skillful game, then one would be forced to confront the<br>possibility that the computer could think like a person (Shannon, 1950, p.<br>2). The first step, however, was constructing a computer to play a perfect<br>game (Shannon, 1950, p. 4).</p><p>While such a game was possible in theory, computers were not equipped<br>to handle the sheer complexity and power required to execute this.<br>Mathematically speaking, Shannon noted that there were 10^3 possible<br>outcomes for a white move followed by a black one. Taking a<br>conservative estimate of 40 moves per game, there were (10^3)^40 or 10^120 potential variations after the first play. In light of Shannon&#8217;s estimate, modern researchers raised this approximation to 10^134 potential<br>variations, calculated from an average of 84 plies per game and 38 moves<br>per plie, bringing the number to 38^84 or about 10^134 (Esmenger, 2011, p.11). The scale of possibilities was overwhelming, even with Shannon&#8217;s<br>lower estimate. In other words, if one were to enumerate all possible<br>combinations for all possible moves following from a given position at<br>any point in the game through one of three outcomes (win, lose, or draw),<br>they would outnumber atoms in the universe (10^75). Moreover, if the<br>computer were to calculate one variation per microsecond, then it would<br>take 10^90 years to determine the first move of the game (Shannon, 1950,<br>p. 4).</p><p>To overcome this impractical calculation, Shannon suggested two<br>evaluation functions to implement in a computer chess player: Type A<br>and Type B. As Nathan Esmenger, a modern historian of artificial<br>intelligence, described this difference:</p><blockquote><p><em>The most obvious solution was to reduce the total number of moves that a<br>computer was required to &#8216;look ahead&#8217;. This would make the overall decision<br>tree to be evaluated smaller and more manageable, and therefore more<br>amenable to straightforward computational approaches. Shannon called this<br>approach a &#8216;Type-A&#8217; solution, and considered it to be a brute-force method<br>that did not accurately reflect the ways in which human beings played chess.<br>He much preferred a &#8216;Type-B&#8217; solution that used sophisticated heuristics to<br>trim the decision tree by privileging certain branches over others. Like human<br>grandmasters, Type-B solutions would focus only on the most promising<br>lines of analysis, and would recognize in patterns of positions more general<br>principles of play that would reflect a more truly intelligent approach to the<br>problem of chess (Esmenger, 2011, p. 11).</em></p></blockquote><p>In short, Type A involved brute force computations and Type B used<br>heuristics to select promising branches in the decision tree and was the<br>most akin to Turing&#8217;s thinking machine. Even though Shannon preferred<br>Type B due to its parallel to human chess players, computer scientists<br>pursued research into Type A because it was more feasible to implement<br>via the minimax algorithm and alpha-beta searching. Herein lied the<br>difference between playing chess and being intelligent, which sparked<br>decades of debate through the end of the Twentieth Century. Was<br>intelligence the ability to play a good game or was there a <em>je ne sais<br>quois</em> to simulating the human mind?</p><p>Tackling a similar question, later in 1950, Alan Turing sought to<br>answer his own inquiry &#8220;can machines think?&#8221; (Turing, 1950, p. 433). As<br>one of the inaugural research questions in this nascent field, Turing and other scientists of the decade associated the ability to think with<br>intelligence; thus, he and his contemporaries pondered the modern<br>equivalent of &#8220;can machines be intelligent?&#8221; He proposed the Imitation<br>Game, a now-famous thought experiment wherein a human interrogator<br>would ask a series of questions directed at two anonymous beings &#8212; one<br>human and one computer &#8212; to determine which one was actually the<br>machine. In the instructions, the machine would attempt to deceive the<br>interrogator while the other human would try to help him. To prevent<br>egregious giveaways, answers would either be written or repeated by an<br>intermediary (Turing, 1950, p. 434&#8211;435).</p><p>In one scenario, Turing imagined a person asking the anonymous<br>computer if it could play chess. A linguistic note, he did not ask if it<br>could play chess well, just that if it could play (i.e., if it knew the rules<br>that governed the game). Following up, he asked about which chess piece<br>it would play in response to a particular chess move. Judging from the<br>context, it appeared to be an endgame analogous to the one El<br>Ajedrecista could play, involving a king and a rook. Despite not<br>providing criteria for what was considered a good move, one could<br>assume that only a human could make a logical play. At least, computer<br>theorists believed it to be so. As such, a thinking computer could fool the<br>interrogator if its proposed move seemed human-like. In this<br>hypothetical, the computer moved its rook and checkmated the king.</p><p>Although subject to many debates within tech circles, the<br>Imitation Game was the first strategy game that explicitly defined<br>successful machine intelligence. Turing viewed human creativity and<br>strategic analysis as reference points to judge a computer&#8217;s<br>performance. This perspective fueled AI fervor for decades to come,<br>pitting people and computers in an intellectual rivalry.</p><h2><strong>Sunsetting Chess</strong></h2><p>The Imitation Game&#8217;s competitive dynamic had set up the decades-long<br>goal for symbolic chess-playing machines to play against human players.<br>The race to create a digital chess expert drove high hopes for strong<br>artificial intelligence through the 1950s and 1960s. However, Hubert<br>Dreyfus, an American philosopher and notorious critic of artificial<br>intelligence, criticized this seemingly blind optimism. In 1965, Dreyfus<br>published his reflection on the state of AI research regarding games,<br>problem solving, and language translation in his infamous book, <em>Alchemy<br>and Artificial Intelligence</em>.</p><p>Assessing the stagnation surrounding game research, he recalled H.A.<br>Simon&#8217;s bold 1957 prediction at a meeting for Operational Research<br>Society of America that &#8220;within ten years a digital computer will be the<br>world&#8217;s chess champion&#8221; (Dreyfus, 1965, p. 3). However, by the end of<br>the 1960s, computers could not use heuristic decision-making like<br>humans could. Instead, computer scientists programmed them with Type<br>A functions, albeit amateur, due to the feasibility of its implementation. Dreyfus did not understand how computers could be considered<br>intelligent when progress had been so unfruitful and architecture<br>limitations so obstructing. While the chess-playing algorithms, like<br>minimax and alpha-beta searching, had improved in the 1970s and 80s,<br>scientists and the general public did not care much. It was a scenario of<br>diminishing returns. As efficiency and speed progressed, there were no<br>new major breakthroughs in computational chess (Esmenger, 2011, p. 7).<br>From Dreyfus&#8217;s perspective, artificial intelligence was nowhere near the<br>intellectual activity as it was to mere monotonous deep searching, a<br>disappointing reflection that once garnered ridicule but soon became<br>accepted by the wider community.</p><p>Regarding the limitations of digital computers playing chess, he said<br>one of the benchmarks for a system to equal human performance would<br>lie in its ability to recall information from the fringes of consciousness,<br>where it is neither disregarded nor at the forefront of thought (Dreyfus,<br>1965, p. 45&#8211;46). Dreyfus discussed this to address supposed shortcuts in<br>chess heuristics, something he considered a fallacious idea. Some of his<br>other criteria involved taking &#8220;into account the context&#8221; and<br>&#8220;distinguishing the essential from the inessential features of a particular<br>instance of a pattern&#8221; (Dreyfus, 1965, p. 45&#8211;46). Likewise, people were<br>capable of recognizing patterns in ambiguous and difficult conditions,<br>but &#8220;work in pattern recognition has not progressed beyond the laborious<br>recognition of a few simple patterns in situations which severely limit<br>variation&#8221; (Dreyfus, 1965, p. 46).</p><p>After years of disappointment and disillusionment, it was believed<br>that there could be no new progress in artificial intelligence, bringing<br>about the first AI Winter in the 1970s, a period when funding and interest<br>in AI research declined (Paine, 2005). Marginal achievements could not<br>excite the broader public anymore.</p><h2><strong>DeepBlue, the Digital Grandmaster</strong></h2><p>By the end of the 1970s, computer engineers found that a major way to<br>advance brute-force algorithms was through processing speed, a feature<br>that they could easily improve (Hsu et al., 1995, p. 240). Hardware<br>performance being a limitation in previous decades, it soon lended itself<br>to benefit research in this topic area. Starting in the late 1980s, IBM<br>challenged itself to construct a successful chess algorithm in conjunction<br>with its prowess in microchip development.</p><p>Once considered a Sisyphean task, IBM constructed several chess-<br>playing programs, beginning with Deep Thought in 1988. That year, it differentiated itself as the first computer to achieve grandmaster status<br>(Hsu et al., 1995, p. 240). A year later, IBM set up a tournament with<br>Deep Thought against Gary Kasparov, the former world chess champion.<br>The machine lost, but it inspired development for a better computer. In<br>1991, IBM researchers created Deep Thought 2.</p><p>Aware that hardware was the key, they enhanced the single chip chess processor to fill in &#8220;long range chess knowledge gaps&#8221; (Hsu et al.,<br>1995, p. 241). They also gave it a larger RAM and a newly written search<br>software (Hsu et al., 2002, p. 58). An immediate precursor to the<br>DeepBlue computers, Deep Thought 2 competed publicly until it retired<br>in 1995.</p><p>IBM&#8217;s chess computer iterations led to the creation of DeepBlue I,<br>which also lost to Kasparov in 1996. Throughout the remainder of that<br>year, researchers rectified deficiencies in this computer in order to build a<br>stronger computer, DeepBlue II. Some major changes included enhanced<br>chess chip designs, repetition detection, doubling the number of chips,<br>and remaking its debugging software (Hsu et al., 2002, p. 59). Trained on<br>the 1996 Kasparov match, DeepBlue II&#8217;s evaluation function was built<br>into its hardware, simplifying the task of programming it and allowed for<br>greater flexibility in improving it (Hsu et al., 2002, p. 61).</p><p>In 1997, DeepBlue II challenged Kasparov at the Equitable Center in<br>New York. Decades of little progress were soon overlooked by this<br>globally televised match. A final showdown between man and machine,<br>the grandmaster won the first game, the computer won the second, and<br>the last three rounds ended in a draw. Over a course of 80 years, the<br>world was finally presented with the first computer to defeat a human<br>world chess champion in the game, a more significant accomplishment<br>than just obtaining grandmaster status.</p><p>While a major feat, the computer was not capable of comprehending<br>the moves it played; it was only able to compute them faster than its<br>opponent could. Advances in computer chess stagnated when the only<br>progress was faster brute-force algorithms, straying from the field&#8217;s<br>original thesis to make the computer smarter. Kasparov further vented<br>that he did not &#8220;know what the computer did wrong or right&#8221; nor could<br>he understand its &#8220;ability to evaluate those positions&#8221; (Weber, 1997).<br>IBM&#8217;s DeepBlue II was not thinking, which frustrated Kasparov. Human<br>grandmasters did not think of these strategy games in terms of data but<br>rather in heuristics. If implemented computationally, it would be akin to<br>Shannon&#8217;s Type B approach or Turing&#8217;s thinking machine.</p><p>Like its predecessors, DeepBlue II was an algorithmic black box but<br>one that its team sought to enhance. They knew that they &#8220;could make<br>the computer faster, so they concentrated on making it smarter, [but] it<br>was not entirely clear how to do that&#8221; (Weber, 1997). This begged the<br>question: what does it mean to make the computer smarter? If that was<br>the agenda throughout AI development, then two schools of thought had<br>unintentionally come forth. One focused on imitating intellect and<br>another focused on winning chess, even in a roboting, mundane way. To<br>re-examine the Turing question, it was clear that it was not enough for a<br>thinking computer to play chess moves. An intelligent computer would<br>understand them.</p><h2><strong>And Then There Was Go</strong></h2><p>In a post-chess world, attention turned towards Go. Like chess, Go was<br>once perceived as a game that computers could not beat since it was<br>much more complex (Silver et al., 2016, p. 484). Traditional brute-force<br>AI algorithms that had dominated the research space would be<br>impossible for this game, unlike in chess (Silver &amp; Hassabis, 2016).<br>Facing the same obstacles from Moore&#8217;s Law as DeepBlue II and other<br>chess computers, researchers in the early 2000s turned to more creative<br>methods to revisit Turing&#8217;s question.</p><p>From the start of the new millenium, Go became the new cornerstone<br>of AI research. More sophisticated than chess, Go was the ideal game for<br>intuition, not forward-looking predictions:</p><blockquote><p><em>The upshot is that, unlike in chess, players &#8212; whether human or machine &#8212; can&#8217;t look ahead to the ultimate outcome of each potential move. The top players play by intuition, not raw calculation. &#8220;Good positions look good,&#8221; Hassabis says. &#8220;It seems to follow some kind of aesthetic. That&#8217;s why it has been such a fascinating game for thousands of years&#8221; (Metz, 2016).</em></p></blockquote><p>With its even larger search space, brute force tree searching was<br>unable to evaluate all possible moves (Qiao et al., 2020, p. 1). If chess<br>had an average number of moves of 40 per game, then Go had 200<br>(Metz, 2016). Unlike chess, Go&#8217;s complexity would allow scientists to be<br>extra certain that the decisions made by the computer would better<br>simulate actual intelligence.</p><p>When DeepMind built AlphaGo in 2015, it revolutionized the way<br>the public viewed AI as it was the first time that a computer won the<br>game against a professional player, taking the lead in all five rounds.<br>When it went on to compete against Lee Sedol in March 2016, the team<br>boasted that its &#8220;search algorithm is much more human-like than<br>previous approaches,&#8221; opting to go for a heuristic Monte Carlo search<br>tree than a brute-force method (Metz, 2016). Considered a<br>superintelligent move and a pinnacle moment in the tournament,<br>AlphaGo&#8217;s infamous Move 37 confused Sedol as it was an irrational<br>choice that no human would have made.</p><p>What&#8217;s more telling was that, like the scientists before them, they not<br>only wanted to teach computers to play a strategy game well, but to also<br>beat human experts at them. In this way, the computer would become a<br>superintelligent machine, drawing criticism as to how intelligent it could<br>be if it did not understand what it was doing. This question had been<br>masked by decades of competitiveness between people and computers.<br>Go-playing computers once again faced the same shortcomings as chess:<br>being an expert at a game did not give it the human-like intelligence that<br>computer scientists had hoped for.</p><p>In October 2017, DeepMind rolled out with AlphaGo Zero, utilizing<br>reinforcement learning to play Go without previous knowledge or data<br>about it, being trained on only its own plays. This was a radical shift from the symbolic logic approach that governed chess research during<br>the latter half of the Twentieth Century. Whereas AlphaGo trained for<br>several months to learn Go, this version of the program outperformed it<br>after 36 hours (Silver et al., 2017, p. 8). Moreover, in just three days,<br>&#8220;starting tabula rasa, AlphaGo Zero was able to rediscover much of this<br>Go knowledge&#8221; without being &#8220;constrained by the limits of human<br>knowledge&#8221; (Silver et al., 2017, p. 14; Silver &amp; Hassabis, 2017).</p><p>Just a couple months later, in December 2017, DeepMind debuted<br>AlphaZero, a more generalized version of AlphaGo Zero, wherein it could<br>play other strategy games like shogi and chess in addition to Go (Silver et<br>al., 2017, p. 2). Different from its predecessors, it was not designed to play<br>any particular game but was taught the basic rules of each game &#8220;with no<br>other strategies or tactics&#8221; (Vincent, 2017). AlphaZero involved less<br>computations and evaluation functions than similar programs. As a point<br>of comparison, it &#8220;searches just 80 thousand positions per second in chess<br>and 40 thousand in shogi, compared to 70 million for Stockfish and 35<br>million for Elmo.&#8221; Instead, it took a more &#8220;human-like approach to search,<br>as originally proposed by Shannon&#8221; and utilized a deep neural network to<br>hone in on promising sequences of moves (Silver et al., 2017, p. 5). As it<br>turned out, in addition to the Monte Carlo tree search, the key to achieving<br>Shannon&#8217;s Type B approach was neural networks and reinforcement<br>learning. By filtering for the most optimal patterns for their play, these<br>algorithms utilize computational heuristics to play chess and other similar<br>games as Shannon envisioned almost 50 years prior.</p><h2><strong>A Cooperative Imitation Game</strong></h2><p>When strategy games, like chess and Go, returned to the limelight of AI<br>research, the next focus shifted to the AI algorithms themselves. In 2020,<br>researchers at Microsoft, Cornell University, and University of Toronto<br>developed the Maia chess engine, which could understand the decisions<br>it made in a given game and emulate its decision-making like a human&#8217;s.<br>They claimed that a &#8220;crucial step in bridging this gap between human<br>and artificial intelligence is modeling the granular actions that constitute<br>human behavior rather than simply matching aggregate human<br>performance&#8221; (McIlroy-Young et al., 2020, p. 1677).</p><p>Herein one is presented with yet another definition of machine intelligence. It was not the outcome that determined it but rather the play-<br>by-play decisions it presented in a chess match. Moreover, to align artificial intelligence with human behavior, they personalized it to play at<br>different, specific skill levels (McIlroy-Young et al., 2020). There were already a plethora of chess engines, like Stockfish and Leela (the open-<br>source version of AlphaZero), that can beat world grandmasters, but it was no longer fun to play a game in which one consistently lost. For the<br>research team, a bigger challenge was for the computer to cooperate with<br>a person and essentially teach them how to play well and improve<br>(McIlroy-Young et al., 2020). It could even predict a person&#8217;s decisions at each individual skill level, paving the way for collaboration between<br>people and artificial intelligence (McIlroy-Young et al., 2020). Maia was<br>not only more accurate than Leela, but it was also explainable, so<br>researchers could understand how and why it chose to play particular<br>moves in chess. This challenged the fallacious dichotomy between<br>accuracy and explainability in artificial intelligence. Instead of viewing<br>chess-playing computers as a superintelligent opponent, the team shifted<br>its perception to be seen as a teacher.</p><p>While the words <em>superintelligent</em> and <em>intelligent</em> were contested when<br>it came to describing artificial intelligence, this team ultimately shaped its<br>potential to become human-like. Maia was a revisitation of the Torres-ian<br>view of machine intelligence, in which the automaton &#8212; or, rather, the<br>computer &#8212; imitated and simulated human thought, decisions, and<br>intelligence. It even returned to Turing&#8217;s Imitation Game, where a<br>computer was thought to be intelligent if it could trick a person into<br>thinking it was a human, the difference being that Maia would not deceive<br>them but instead help them. Imagine if in the Imitation Game, the<br>computer told the interrogator how to save its king from a doomed<br>endgame. That was the new philosophy of cooperative computational<br>chess.</p><h2><strong>Quantum Computing and Games</strong></h2><p>While the door seemed to close on strategic games in classical<br>computing, the rise in popularity of quantum computers throughout the<br>2010s had opened up research areas into quantum chess and quantum Go.<br>One major difference between quantum computers and traditional<br>computers was that the former did not follow Moore&#8217;s Law, so it could<br>not be restrained by it. Rather, they followed Rose&#8217;s Law, which stated<br>that the number of qubits (quantum bits) doubled every year. This is a<br>much steeper rate of growth, compounding faster than Moore&#8217;s Law. It is<br>&#8220;more than 108 times faster&#8221; than a classical computer, allowing it to<br>perform optimization problems more efficiently (Neven, 2015). As such,<br>quantum computers would be suitable for optimizations in strategy<br>games.</p><p>In 2020, around the same time that American researchers investigated<br>a human-like chess program, Chinese researchers looked into Go, or<br>rather Quantum Go. While the game had been used as a testbed for<br>artificial intelligence, it was not the most difficult game to teach a<br>machine learning algorithm since it was deterministic and had perfect<br>information; as such, it could easily search possible moves (Qiao et al.,<br>2020, p. 1). Hitting a ceiling with progress and public attention, the<br>&#8220;community moved interest to nondeterministic and imperfect<br>information games&#8221; (Qiao et al., 2020, p. 1). In an environment of<br>asymmetric information, players had to guess the other player&#8217;s<br>knowledge and deal with uncontrolled randomness, as in games like<br>Poker or Mahjong, which made them the ideal experiments for advanced machine learning algorithms (Qiao et al., 2020, p. 1).</p><p>With its quantum computer architecture, Quantum Go incorporated<br>randomness into the game and could &#8220;cover a wide range of game<br>difficulties,&#8221; just as Maia could with different skill levels in chess (Qiao<br>et al., 2020, 7). This distinguished the quantum game-player from other<br>imperfect information and nondeterministic games. It functioned outside<br>the assumptions of classical game theory that guided games like chess<br>and Go. As such, it became an optimal benchmark for artificial<br>intelligence. Since humans could handle unpredictable circumstances,<br>quantum computing could possibly be able to answer the quintessential<br>question <em>can machines think</em>. While resolving Dreyfus&#8217;s criticisms,<br>quantum artificial intelligence could handle information on the fringes of<br>consciousness and take context into account, such as skill level and<br>uncontrolled randomness.</p><h2><strong>Conclusion</strong></h2><p>After years of stagnation during the AI winter, computer scientists<br>presented the world with thinking machines in the realms of chess and<br>Go. AI capabilities overcame the restrictions outlined by Moore&#8217;s Law,<br>in which computing speed doubles every two years, by implementing<br>heuristic-based approaches to computational decision-making. Even<br>though there were major advancements in reinforcement learning,<br>heuristic tree searching, and quantum computing being applied to<br>strategy games, there is a long way to go to define machine intelligence,<br>let alone have games be a proxy for it. With new algorithms to model<br>artificial intelligence, scientists still need to grapple with what it means<br>for a computer to be intelligent. Correlation between strategy games and<br>intelligence does not always equal causation. Nevertheless, with games at<br>the forefront of research, scientists were able to make great<br>breakthroughs in artificial intelligence, shifting the paradigms from<br>symbolic logic to deep learning and thus bringing the world one step<br>closer to simulating human intellect by one dimension.</p><p></p><p><strong>References</strong></p><p>Dreyfus, H. (1965). Alchemy and Artificial Intelligence. RAND Corporation. Retrieved from <a href="https://www.rand.org/pubs/papers/P3244.html">https://www.rand.org/pubs/papers/P3244.html</a></p><p>Esmenger, N. (2011). Is Chess the Drosophila of Artificial Intelligence? A Social History of An algorithm. Social Studies of Science 42(1), 5 -30. Retrieved from <a href="https://journals.sagepub.com/doi/pdf/10.1177/0306312711424596">https://journals.sagepub.com/doi/pdf/10.1177/0306312711424596</a></p><p>Hsu, F., Campbell, M. S., &amp; Joseph Hoane Jr., A. (1995). Deep Blue System Overview. Association for Computing Machinery: ICS &#8217;95: Proceedings of the 9th International Conference on Supercomputing. 240 -244. Retrieved from <a href="https://web.archive.org/web/20181017043132/http://www.top-5000.nl/ps/Deep">https://web.archive.org/web/20181017043132/http://www.top-5000.nl/ps/Deep</a> blue systemoverview.pdf</p><p>Hsu, F., Campbell, M. S., &amp; Joseph Hoane Jr., A. (2002). DeepBlue. Artificial Intelligence 134(1&#8211;2) (2002): 57 -83. Retrieved from <a href="https://www.sciencedirect.com/science/article/pii/S0004370201001291">https://www.sciencedirect.com/science/article/pii/S0004370201001291</a></p><p>McIlroy-Young, R., Sen, S., Kleinberg, J., &amp; Anderson, A. (2020). Aligning Superhuman AI with Human Behavior: Chess as a Model System. Association for Computing Machinery: KDD &#8217;20: Proceedings of the 26th ACM SIGKDD International Conference on Knowledge Discovery &amp; Data Mining. 1677 -1687. Retrieved from <a href="https://dl.acm.org/doi/10.1145/3394486.3403219">https://dl.acm.org/doi/10.1145/3394486.3403219</a></p><p>McIlroy-Young, R., Sen, S., Kleinberg, J., &amp; Anderson, A. (2020). The Human Side of Chess for AI. Microsoft Research Blog. Retrieved from <a href="https://www.microsoft.com/en-us/research/blog/the-human-side-of-ai-for-chess/">https://www.microsoft.com/en-us/research/blog/the-human-side-of-ai-for-chess/.</a></p><p>Metz, C. The Rise of Artificial Intelligence and the End of Code. (2016). Wired. Retrieved from <a href="https://www.wired.com/2016/05/google-alpha-go-ai/">https://www.wired.com/2016/05/google-alpha-go-ai/.</a></p><p>Mollick, E. (2006). Establishing Moore&#8217;s Law. IEE Annals of the History of Computing 28(3). 62&#8211;75. Retrieved from <a href="https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&amp;arnumber=1677462">https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&amp;arnumber=1677462</a></p><p>Neven, H. (2015).When can Quantum Annealing Win? Google AI Blog. Retrieved from <a href="https://ai.googleblog.com/2015/12/when-can-quantum-annealing-win.html">https://ai.googleblog.com/2015/12/when-can-quantum-annealing-win.html</a></p><p>Paine, J. (2005). An AI Alphabet. AI Expert Newsletter. Retrieved from <a href="https://web.archive.org/web/20131109201636/http://www.ainewsletter.com/newsletters/aix_0501.htm#w">https://web.archive.org/web/20131109201636/http://www.ainewsletter.com/newsletters/aix_0501.htm#w</a></p><p>Perrault, R.,Shoham, Y., Brynjolfsson, E., Clark, J., Etchemendy, J., Grosz, B., Lyons, T., Manyika, J., Mishra, S., &amp; Niebles, J.C. (2019).The AI Index 2019 Annual Report. AI Index Steering Committee, Human-Centered AI Institute, Stanford University.65&#8211;66. Retrieved from <a href="https://hai.stanford.edu/sites/default/files/ai_index_2019_report.pdf">https://hai.stanford.edu/sites/default/files/ai_index_2019_report.pdf</a></p>]]></content:encoded></item><item><title><![CDATA[Coming soon]]></title><description><![CDATA[This is A Mosaic of Mine, a newsletter about My thoughts on data science and tech.]]></description><link>https://cameronlowry.substack.com/p/coming-soon</link><guid isPermaLink="false">https://cameronlowry.substack.com/p/coming-soon</guid><dc:creator><![CDATA[Cameron Lowry]]></dc:creator><pubDate>Tue, 11 Jan 2022 15:55:37 GMT</pubDate><content:encoded><![CDATA[<p><strong>This is A Mosaic of Mine</strong>, a newsletter about My thoughts on data science and tech.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://cameronlowry.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://cameronlowry.substack.com/subscribe?"><span>Subscribe now</span></a></p>]]></content:encoded></item></channel></rss>