<?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[Dev Den]]></title><description><![CDATA[Dev Den covers a wide range of topics, including best practices for programming, efficient use of developer tools, and strategies for increasing productivity. ]]></description><link>https://devden.raghavan.studio</link><image><url>https://substackcdn.com/image/fetch/$s_!mcuF!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8fc15c6-a5dc-4232-9a32-4fb1bfa33ebe_1280x1280.png</url><title>Dev Den</title><link>https://devden.raghavan.studio</link></image><generator>Substack</generator><lastBuildDate>Thu, 23 Apr 2026 08:33:30 GMT</lastBuildDate><atom:link href="https://devden.raghavan.studio/feed" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><webMaster><![CDATA[devden@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[devden@substack.com]]></itunes:email><itunes:name><![CDATA[Raghavan Lakshmana]]></itunes:name></itunes:owner><itunes:author><![CDATA[Raghavan Lakshmana]]></itunes:author><googleplay:owner><![CDATA[devden@substack.com]]></googleplay:owner><googleplay:email><![CDATA[devden@substack.com]]></googleplay:email><googleplay:author><![CDATA[Raghavan Lakshmana]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Inside the S&P 500: Cracking a Decade of Market Code]]></title><description><![CDATA[&#128640; What backtests reveal about classic buy-and-hold philosophy]]></description><link>https://devden.raghavan.studio/p/inside-the-s-and-p-500-cracking-a</link><guid isPermaLink="false">https://devden.raghavan.studio/p/inside-the-s-and-p-500-cracking-a</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Tue, 26 Aug 2025 13:07:46 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!56N7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d92c4ee-219c-474d-8f13-9af0a79b7787_1536x1024.png" 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_!56N7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d92c4ee-219c-474d-8f13-9af0a79b7787_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!56N7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d92c4ee-219c-474d-8f13-9af0a79b7787_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!56N7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d92c4ee-219c-474d-8f13-9af0a79b7787_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!56N7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d92c4ee-219c-474d-8f13-9af0a79b7787_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!56N7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d92c4ee-219c-474d-8f13-9af0a79b7787_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!56N7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d92c4ee-219c-474d-8f13-9af0a79b7787_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9d92c4ee-219c-474d-8f13-9af0a79b7787_1536x1024.png&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;:1948917,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://devden.raghavan.studio/i/171212651?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d92c4ee-219c-474d-8f13-9af0a79b7787_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!56N7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d92c4ee-219c-474d-8f13-9af0a79b7787_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!56N7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d92c4ee-219c-474d-8f13-9af0a79b7787_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!56N7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d92c4ee-219c-474d-8f13-9af0a79b7787_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!56N7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d92c4ee-219c-474d-8f13-9af0a79b7787_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><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>After reading a book about Jim Simons and the Medallion Fund, I became curious whether I could time-travel 10 years back, find a trading strategy I could use to outperform the traditional buy-and-hold approach, and get rich &#129300;.</p><p>My backtest result on the S&amp;P 500 stock dataset is available <a href="https://airtable.com/appgScnsvsoxtaCLF/shr0AN13PdAN274zO/tblqRsFRCSqi2H37t">here</a>. &#8592;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Gb4t!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8832648b-d73a-4153-9ed7-d2102562c805_1428x810.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Gb4t!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8832648b-d73a-4153-9ed7-d2102562c805_1428x810.png 424w, https://substackcdn.com/image/fetch/$s_!Gb4t!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8832648b-d73a-4153-9ed7-d2102562c805_1428x810.png 848w, https://substackcdn.com/image/fetch/$s_!Gb4t!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8832648b-d73a-4153-9ed7-d2102562c805_1428x810.png 1272w, https://substackcdn.com/image/fetch/$s_!Gb4t!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8832648b-d73a-4153-9ed7-d2102562c805_1428x810.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Gb4t!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8832648b-d73a-4153-9ed7-d2102562c805_1428x810.png" width="1428" height="810" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8832648b-d73a-4153-9ed7-d2102562c805_1428x810.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:810,&quot;width&quot;:1428,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:149999,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://devden.raghavan.studio/i/171212651?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8832648b-d73a-4153-9ed7-d2102562c805_1428x810.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!Gb4t!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8832648b-d73a-4153-9ed7-d2102562c805_1428x810.png 424w, https://substackcdn.com/image/fetch/$s_!Gb4t!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8832648b-d73a-4153-9ed7-d2102562c805_1428x810.png 848w, https://substackcdn.com/image/fetch/$s_!Gb4t!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8832648b-d73a-4153-9ed7-d2102562c805_1428x810.png 1272w, https://substackcdn.com/image/fetch/$s_!Gb4t!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8832648b-d73a-4153-9ed7-d2102562c805_1428x810.png 1456w" sizes="100vw"></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 results are quite interesting. If I had applied my strategy with a seed investment of <strong>$50,000</strong>, I would have made <strong>~$300 million &#128176; &#129327;</strong> over a decade trading <a href="https://www.tradingview.com/symbols/NASDAQ-GEN/?timeframe=ALL">GEN</a>. This was a lot more profitable than buying and holding the same stock for 10 years.</p><h2>Dataset</h2><p>For this experiment, I used all the companies listed on the<strong> latest </strong><a href="https://github.com/fja05680/sp500/blob/master/sp500.ipynb">S&amp;P 500 index</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_!eAHb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aec6034-7f97-4217-9482-a0a7497b6274_1020x592.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eAHb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aec6034-7f97-4217-9482-a0a7497b6274_1020x592.png 424w, https://substackcdn.com/image/fetch/$s_!eAHb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aec6034-7f97-4217-9482-a0a7497b6274_1020x592.png 848w, https://substackcdn.com/image/fetch/$s_!eAHb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aec6034-7f97-4217-9482-a0a7497b6274_1020x592.png 1272w, https://substackcdn.com/image/fetch/$s_!eAHb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aec6034-7f97-4217-9482-a0a7497b6274_1020x592.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eAHb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aec6034-7f97-4217-9482-a0a7497b6274_1020x592.png" width="1020" height="592" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7aec6034-7f97-4217-9482-a0a7497b6274_1020x592.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:592,&quot;width&quot;:1020,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:290392,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://devden.raghavan.studio/i/171212651?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aec6034-7f97-4217-9482-a0a7497b6274_1020x592.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!eAHb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aec6034-7f97-4217-9482-a0a7497b6274_1020x592.png 424w, https://substackcdn.com/image/fetch/$s_!eAHb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aec6034-7f97-4217-9482-a0a7497b6274_1020x592.png 848w, https://substackcdn.com/image/fetch/$s_!eAHb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aec6034-7f97-4217-9482-a0a7497b6274_1020x592.png 1272w, https://substackcdn.com/image/fetch/$s_!eAHb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aec6034-7f97-4217-9482-a0a7497b6274_1020x592.png 1456w" sizes="100vw"></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><figcaption class="image-caption">Data Size of Tickers Starting with H</figcaption></figure></div><ul><li><p><strong>503 tickers</strong> (since some companies like Google, Fox, and Berkshire Hathaway have multiple share classes).</p></li><li><p>Minute-by-minute<strong> OHLCV </strong>(open, high, low, close, volume)<strong> data</strong> for the past decade.</p></li><li><p><strong>22GB </strong>dataset total, with an average file size of ~45MB per ticker.</p></li><li><p>Downloaded using <a href="https://polygon.io/docs/rest/quickstart">polygon.io</a>, a good source if you&#8217;re a paid user.</p></li></ul><p></p><p>All the code used for this experiment is available in this repository:</p><p>&#128073; <a href="https://github.com/raghavan/sp500-rsi-backtest">GitHub: sp500-rsi-backtest</a></p><p></p><h2>Strategy</h2><p>To backtest stock price actions against buy-hold, I chose the <a href="https://www.fidelity.com/learning-center/trading-investing/technical-analysis/technical-indicator-guide/RSI">Relative Strength Index (RSI)</a> strategy to generate buy and sell signals based on market conditions.</p><ul><li><p>RSI oscillates between 0 and 100.</p></li><li><p>Below <strong>30</strong> &#8594; stock oversold (potential <strong>buy</strong> signal).</p></li><li><p>Above <strong>70</strong> &#8594; stock overbought (potential <strong>sell</strong> signal).</p></li></ul><p>&#129520; This made RSI a good candidate, as intraday traders widely use it to capture momentum.</p><p>&#128680;&nbsp;<strong>Important note</strong>: Indicators that were effective in the past might not be reliable in the future. For example, using RSI on GEN&#8217;s latest week of data actually underperformed compared to simply holding the stock.</p><p>I also started exploring additional indicators from <a href="https://ta-lib.github.io/ta-lib-python/func_groups/momentum_indicators.html">TA-Lib</a>. I recently read a <a href="https://papers.ssrn.com/sol3/papers.cfm?abstract_id=4416622">paper</a> on applying an Opening Range Breakout (ORB<strong>)</strong> strategy to QQQ data, which outperformed buy-and-hold over 10 years.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2VAB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6625a137-4f89-4b33-80c5-af2b4157d208_1612x1436.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2VAB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6625a137-4f89-4b33-80c5-af2b4157d208_1612x1436.png 424w, https://substackcdn.com/image/fetch/$s_!2VAB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6625a137-4f89-4b33-80c5-af2b4157d208_1612x1436.png 848w, https://substackcdn.com/image/fetch/$s_!2VAB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6625a137-4f89-4b33-80c5-af2b4157d208_1612x1436.png 1272w, https://substackcdn.com/image/fetch/$s_!2VAB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6625a137-4f89-4b33-80c5-af2b4157d208_1612x1436.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2VAB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6625a137-4f89-4b33-80c5-af2b4157d208_1612x1436.png" width="1456" height="1297" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6625a137-4f89-4b33-80c5-af2b4157d208_1612x1436.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1297,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:307784,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://devden.raghavan.studio/i/171212651?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6625a137-4f89-4b33-80c5-af2b4157d208_1612x1436.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!2VAB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6625a137-4f89-4b33-80c5-af2b4157d208_1612x1436.png 424w, https://substackcdn.com/image/fetch/$s_!2VAB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6625a137-4f89-4b33-80c5-af2b4157d208_1612x1436.png 848w, https://substackcdn.com/image/fetch/$s_!2VAB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6625a137-4f89-4b33-80c5-af2b4157d208_1612x1436.png 1272w, https://substackcdn.com/image/fetch/$s_!2VAB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6625a137-4f89-4b33-80c5-af2b4157d208_1612x1436.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><figcaption class="image-caption">List of indicators in TA-Lib</figcaption></figure></div><h2>Backtesting </h2><h3>&#128187; Local Setup</h3><p>Backtesting is <strong>CPU-heavy</strong>. Running 503 tickers in parallel required optimization.</p><ul><li><p><strong>Machine</strong>: Mac M2 Pro (12 cores: 8 performance + 4 efficiency).</p></li><li><p><strong>Library</strong>: <a href="https://kernc.github.io/backtesting.py/">Backtesting.py</a>.</p></li><li><p>Initial run choked all cores &#8212; I tuned it down to <strong>6 max threads</strong> to reduce context switches.</p></li><li><p>Final runtime: <strong>~45 minutes</strong> to complete the RSI strategy on all tickers.</p></li></ul><p>My backtest result on the S&amp;P 500 stock dataset is available <a href="https://airtable.com/appgScnsvsoxtaCLF/shr0AN13PdAN274zO/tblqRsFRCSqi2H37t">here</a> which were obtained from my local setup.</p><p>Snapshot from <strong>htop</strong> &#128071; (all cores in action)</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ja3_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73c541fc-eade-4bb2-bcd7-24b23767f5ea_1724x274.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ja3_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73c541fc-eade-4bb2-bcd7-24b23767f5ea_1724x274.png 424w, https://substackcdn.com/image/fetch/$s_!Ja3_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73c541fc-eade-4bb2-bcd7-24b23767f5ea_1724x274.png 848w, https://substackcdn.com/image/fetch/$s_!Ja3_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73c541fc-eade-4bb2-bcd7-24b23767f5ea_1724x274.png 1272w, https://substackcdn.com/image/fetch/$s_!Ja3_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73c541fc-eade-4bb2-bcd7-24b23767f5ea_1724x274.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ja3_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73c541fc-eade-4bb2-bcd7-24b23767f5ea_1724x274.png" width="1456" height="231" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/73c541fc-eade-4bb2-bcd7-24b23767f5ea_1724x274.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:231,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:214450,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://devden.raghavan.studio/i/171212651?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73c541fc-eade-4bb2-bcd7-24b23767f5ea_1724x274.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!Ja3_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73c541fc-eade-4bb2-bcd7-24b23767f5ea_1724x274.png 424w, https://substackcdn.com/image/fetch/$s_!Ja3_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73c541fc-eade-4bb2-bcd7-24b23767f5ea_1724x274.png 848w, https://substackcdn.com/image/fetch/$s_!Ja3_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73c541fc-eade-4bb2-bcd7-24b23767f5ea_1724x274.png 1272w, https://substackcdn.com/image/fetch/$s_!Ja3_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73c541fc-eade-4bb2-bcd7-24b23767f5ea_1724x274.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">Mac M2 `htop` Snapshot</figcaption></figure></div><h3>&#127783;&#65039; Distributed Setup</h3><p>To execute backtesting based on multiple indicators, I started exploring a distributed solution that could leverage serverless functions like AWS Lambda or GCP Cloud Run.</p><p>I explored AWS Lambda to run 503 functions in parallel, with data served from S3. One downside is that Talib has several complex dependencies, which are not easy to package for Lambda, so I had to implement an RSI strategy using LLMs with pure Python(no dependencies).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9GAa!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F412e3733-4eea-4a1e-9e4c-39ada1f9d442_12286x7353.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9GAa!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F412e3733-4eea-4a1e-9e4c-39ada1f9d442_12286x7353.png 424w, https://substackcdn.com/image/fetch/$s_!9GAa!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F412e3733-4eea-4a1e-9e4c-39ada1f9d442_12286x7353.png 848w, https://substackcdn.com/image/fetch/$s_!9GAa!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F412e3733-4eea-4a1e-9e4c-39ada1f9d442_12286x7353.png 1272w, https://substackcdn.com/image/fetch/$s_!9GAa!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F412e3733-4eea-4a1e-9e4c-39ada1f9d442_12286x7353.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9GAa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F412e3733-4eea-4a1e-9e4c-39ada1f9d442_12286x7353.png" width="1456" height="871" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/412e3733-4eea-4a1e-9e4c-39ada1f9d442_12286x7353.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:871,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:20937295,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://devden.raghavan.studio/i/171212651?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F412e3733-4eea-4a1e-9e4c-39ada1f9d442_12286x7353.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!9GAa!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F412e3733-4eea-4a1e-9e4c-39ada1f9d442_12286x7353.png 424w, https://substackcdn.com/image/fetch/$s_!9GAa!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F412e3733-4eea-4a1e-9e4c-39ada1f9d442_12286x7353.png 848w, https://substackcdn.com/image/fetch/$s_!9GAa!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F412e3733-4eea-4a1e-9e4c-39ada1f9d442_12286x7353.png 1272w, https://substackcdn.com/image/fetch/$s_!9GAa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F412e3733-4eea-4a1e-9e4c-39ada1f9d442_12286x7353.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><figcaption class="image-caption">AWS Lambda Distributed Execution Setup</figcaption></figure></div><ul><li><p><strong>Challenge</strong>: TA-Lib has complex dependencies, so I vibe-coded RSI with pure Python.</p></li><li><p><strong>Cost/Time</strong>:</p><ul><li><p>Single ticker RSI backtest run on Lambda (2048 MB memory): <strong>34.425 seconds</strong>, cost <strong>$0.0011477</strong>.</p></li><li><p>Processing with concurrency = 500: <strong>~34&#8211;40 seconds &#9989;</strong>.</p><ul><li><p>Note: If processed all 503 stocks sequentially, it would have taken 4.78 hours &#129327;.</p></li></ul></li></ul></li><li><p><strong>Total cost</strong>: ~<strong>57 cents</strong> for compute + small additional S3 costs.</p></li></ul><p>&#9889; Huge improvement vs local execution.</p><h3><strong>Backtest Results &amp; Metrics</strong></h3><p>I ran the backtest with the following parameters:</p><ul><li><p><strong>Time Period:</strong> The last <strong>10 years</strong> (from Aug 2015 to August 2025).</p></li><li><p><strong>Data Granularity:</strong> Minute-by-minute data.</p></li><li><p><strong>RSI Window:</strong> Standard <strong>14-day</strong> period.</p></li><li><p><strong>Initial Capital:</strong> $50,000.</p></li><li><p><strong>Assumptions:</strong> Full capital deployment on each trade, and a commission of 0.1% to account for trading fees.</p></li></ul><p>The results were impressive. For the stock <strong>GEN</strong>, the RSI strategy turned a $50,000 investment into approximately <strong>$300 million</strong>, a massive win over the simple buy-and-hold strategy.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KdF5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d44591a-6e02-4d04-a08a-916f884dde9d_2379x1180.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KdF5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d44591a-6e02-4d04-a08a-916f884dde9d_2379x1180.png 424w, https://substackcdn.com/image/fetch/$s_!KdF5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d44591a-6e02-4d04-a08a-916f884dde9d_2379x1180.png 848w, https://substackcdn.com/image/fetch/$s_!KdF5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d44591a-6e02-4d04-a08a-916f884dde9d_2379x1180.png 1272w, https://substackcdn.com/image/fetch/$s_!KdF5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d44591a-6e02-4d04-a08a-916f884dde9d_2379x1180.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KdF5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d44591a-6e02-4d04-a08a-916f884dde9d_2379x1180.png" width="1456" height="722" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6d44591a-6e02-4d04-a08a-916f884dde9d_2379x1180.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:722,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:121595,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://devden.raghavan.studio/i/171212651?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d44591a-6e02-4d04-a08a-916f884dde9d_2379x1180.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!KdF5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d44591a-6e02-4d04-a08a-916f884dde9d_2379x1180.png 424w, https://substackcdn.com/image/fetch/$s_!KdF5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d44591a-6e02-4d04-a08a-916f884dde9d_2379x1180.png 848w, https://substackcdn.com/image/fetch/$s_!KdF5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d44591a-6e02-4d04-a08a-916f884dde9d_2379x1180.png 1272w, https://substackcdn.com/image/fetch/$s_!KdF5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d44591a-6e02-4d04-a08a-916f884dde9d_2379x1180.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_!gvNN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e8d2666-0138-4dc1-8971-b75866c9ac60_1971x1180.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gvNN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e8d2666-0138-4dc1-8971-b75866c9ac60_1971x1180.png 424w, https://substackcdn.com/image/fetch/$s_!gvNN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e8d2666-0138-4dc1-8971-b75866c9ac60_1971x1180.png 848w, https://substackcdn.com/image/fetch/$s_!gvNN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e8d2666-0138-4dc1-8971-b75866c9ac60_1971x1180.png 1272w, https://substackcdn.com/image/fetch/$s_!gvNN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e8d2666-0138-4dc1-8971-b75866c9ac60_1971x1180.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gvNN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e8d2666-0138-4dc1-8971-b75866c9ac60_1971x1180.png" width="1456" height="872" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7e8d2666-0138-4dc1-8971-b75866c9ac60_1971x1180.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:872,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:123349,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://devden.raghavan.studio/i/171212651?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e8d2666-0138-4dc1-8971-b75866c9ac60_1971x1180.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!gvNN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e8d2666-0138-4dc1-8971-b75866c9ac60_1971x1180.png 424w, https://substackcdn.com/image/fetch/$s_!gvNN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e8d2666-0138-4dc1-8971-b75866c9ac60_1971x1180.png 848w, https://substackcdn.com/image/fetch/$s_!gvNN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e8d2666-0138-4dc1-8971-b75866c9ac60_1971x1180.png 1272w, https://substackcdn.com/image/fetch/$s_!gvNN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e8d2666-0138-4dc1-8971-b75866c9ac60_1971x1180.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></p><p>Hindsight bias is real. What worked historically may not work tomorrow. I've shared the code on my <a href="https://github.com/raghavan/sp500-rsi-backtest">GitHub</a>. I encourage you to check it out, adapt the strategy, and see what you can discover!</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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[Intelligent Machines in a Utilitarian World]]></title><description><![CDATA[The Silesian Weavers of the AI Era]]></description><link>https://devden.raghavan.studio/p/intelligent-machines-in-a-utilitarian</link><guid isPermaLink="false">https://devden.raghavan.studio/p/intelligent-machines-in-a-utilitarian</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Sat, 12 Jul 2025 00:13:00 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!_dfx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b634c1e-77a9-466e-8591-9f2a28987dd4_2048x2048.png" 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_!_dfx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b634c1e-77a9-466e-8591-9f2a28987dd4_2048x2048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_dfx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b634c1e-77a9-466e-8591-9f2a28987dd4_2048x2048.png 424w, https://substackcdn.com/image/fetch/$s_!_dfx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b634c1e-77a9-466e-8591-9f2a28987dd4_2048x2048.png 848w, https://substackcdn.com/image/fetch/$s_!_dfx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b634c1e-77a9-466e-8591-9f2a28987dd4_2048x2048.png 1272w, https://substackcdn.com/image/fetch/$s_!_dfx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b634c1e-77a9-466e-8591-9f2a28987dd4_2048x2048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_dfx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b634c1e-77a9-466e-8591-9f2a28987dd4_2048x2048.png" width="724" height="724" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9b634c1e-77a9-466e-8591-9f2a28987dd4_2048x2048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:1456,&quot;width&quot;:1456,&quot;resizeWidth&quot;:724,&quot;bytes&quot;:7814398,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://devden.raghavan.studio/i/159453684?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b634c1e-77a9-466e-8591-9f2a28987dd4_2048x2048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!_dfx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b634c1e-77a9-466e-8591-9f2a28987dd4_2048x2048.png 424w, https://substackcdn.com/image/fetch/$s_!_dfx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b634c1e-77a9-466e-8591-9f2a28987dd4_2048x2048.png 848w, https://substackcdn.com/image/fetch/$s_!_dfx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b634c1e-77a9-466e-8591-9f2a28987dd4_2048x2048.png 1272w, https://substackcdn.com/image/fetch/$s_!_dfx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b634c1e-77a9-466e-8591-9f2a28987dd4_2048x2048.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><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><strong>Silesia</strong> was known for its vibrant cottage textile industry. Thousands of villagers earned their livelihoods weaving cloth by hand in their homes. These <strong>weavers</strong>, mostly peasants, formed the backbone of rural economies.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HWed!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f84415d-b0f4-44fa-949c-89859bb0814e_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HWed!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f84415d-b0f4-44fa-949c-89859bb0814e_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!HWed!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f84415d-b0f4-44fa-949c-89859bb0814e_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!HWed!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f84415d-b0f4-44fa-949c-89859bb0814e_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!HWed!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f84415d-b0f4-44fa-949c-89859bb0814e_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HWed!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f84415d-b0f4-44fa-949c-89859bb0814e_1024x1024.png" width="326" height="326" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6f84415d-b0f4-44fa-949c-89859bb0814e_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:326,&quot;bytes&quot;:1894224,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://devden.raghavan.studio/i/159453684?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f84415d-b0f4-44fa-949c-89859bb0814e_1024x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!HWed!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f84415d-b0f4-44fa-949c-89859bb0814e_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!HWed!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f84415d-b0f4-44fa-949c-89859bb0814e_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!HWed!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f84415d-b0f4-44fa-949c-89859bb0814e_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!HWed!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f84415d-b0f4-44fa-949c-89859bb0814e_1024x1024.png 1456w" sizes="100vw"></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>In 1844, during the height of the <strong>Industrial Revolution</strong>&#8217;s eastward spread from Britain, mechanized looms and factory-based textile production began replacing traditional hand weaving.</p><p><strong>&#127969; Collapse of Cottage Industry:  </strong>The prices for handmade textiles plummeted. Middlemen offered meager compensation, barely enough for subsistence.</p><p><strong>&#128176; Rural Poverty: </strong>Entire villages, once self-reliant through weaving, sank into poverty. Families starved while machines in distant cities took over their trade.</p><h2>&#129489;&#8205;&#128187; Microsoft &amp; Solow-Swan Model </h2><p><strong>tl;dr:</strong>&nbsp;In its FY2025 Q3 financial statement (ended March 31, 2025,&nbsp;<a href="https://microsoft.gcs-web.com/node/33661/html">10-Q</a>), Microsoft posted $32.0B in operating income, up 16% YoY, with only a modest 2.4% YoY increase in operating expenses. This is a textbook case of <strong>AI-driven productivity</strong>, resulting in more output and lower costs. Expect this profit-efficiency trend to spread fast across the industry.</p><p>Let's delve into the latest quarter reported by Microsoft, specifically FY2025 Q3.</p><ul><li><p>Reported $32.0B in operating income, up ~16% YoY.</p></li><li><p>Spent about $16.1B in operating expenses, up ~2.4% YoY. </p></li></ul><p>QoQ changes for Microsoft's Operating Expenses and Operating Income,</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZWTP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f99ac01-c512-4319-a89b-08da9d5c5090_1588x266.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZWTP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f99ac01-c512-4319-a89b-08da9d5c5090_1588x266.png 424w, https://substackcdn.com/image/fetch/$s_!ZWTP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f99ac01-c512-4319-a89b-08da9d5c5090_1588x266.png 848w, https://substackcdn.com/image/fetch/$s_!ZWTP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f99ac01-c512-4319-a89b-08da9d5c5090_1588x266.png 1272w, https://substackcdn.com/image/fetch/$s_!ZWTP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f99ac01-c512-4319-a89b-08da9d5c5090_1588x266.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZWTP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f99ac01-c512-4319-a89b-08da9d5c5090_1588x266.png" width="1456" height="244" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7f99ac01-c512-4319-a89b-08da9d5c5090_1588x266.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:244,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:64168,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://devden.raghavan.studio/i/159453684?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f99ac01-c512-4319-a89b-08da9d5c5090_1588x266.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ZWTP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f99ac01-c512-4319-a89b-08da9d5c5090_1588x266.png 424w, https://substackcdn.com/image/fetch/$s_!ZWTP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f99ac01-c512-4319-a89b-08da9d5c5090_1588x266.png 848w, https://substackcdn.com/image/fetch/$s_!ZWTP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f99ac01-c512-4319-a89b-08da9d5c5090_1588x266.png 1272w, https://substackcdn.com/image/fetch/$s_!ZWTP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f99ac01-c512-4319-a89b-08da9d5c5090_1588x266.png 1456w" sizes="100vw" loading="lazy"></picture><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_!MVkK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F416044d7-81db-4c92-a4d0-474fc20baa64_1979x1180.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MVkK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F416044d7-81db-4c92-a4d0-474fc20baa64_1979x1180.png 424w, https://substackcdn.com/image/fetch/$s_!MVkK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F416044d7-81db-4c92-a4d0-474fc20baa64_1979x1180.png 848w, https://substackcdn.com/image/fetch/$s_!MVkK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F416044d7-81db-4c92-a4d0-474fc20baa64_1979x1180.png 1272w, https://substackcdn.com/image/fetch/$s_!MVkK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F416044d7-81db-4c92-a4d0-474fc20baa64_1979x1180.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MVkK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F416044d7-81db-4c92-a4d0-474fc20baa64_1979x1180.png" width="728" height="434" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/416044d7-81db-4c92-a4d0-474fc20baa64_1979x1180.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:868,&quot;width&quot;:1456,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:182353,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://devden.raghavan.studio/i/159453684?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F416044d7-81db-4c92-a4d0-474fc20baa64_1979x1180.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!MVkK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F416044d7-81db-4c92-a4d0-474fc20baa64_1979x1180.png 424w, https://substackcdn.com/image/fetch/$s_!MVkK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F416044d7-81db-4c92-a4d0-474fc20baa64_1979x1180.png 848w, https://substackcdn.com/image/fetch/$s_!MVkK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F416044d7-81db-4c92-a4d0-474fc20baa64_1979x1180.png 1272w, https://substackcdn.com/image/fetch/$s_!MVkK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F416044d7-81db-4c92-a4d0-474fc20baa64_1979x1180.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>&#128997; <strong>Operating Expenses </strong> Notice the slight <strong>decline &#128201;</strong> QoQ from $16.2B in Q2 to $16.1B in Q3, and a slowing YoY growth rate from ~5.3% in Q2 to ~2.4% in Q3, a potential signal that cost efficiency is possibly due to <em>AI-enabled productivity</em> and <strong>reduction in workforce</strong> cost. <a href="https://microsoft.gcs-web.com/node/33661/html">10-Q</a></p><p>&#129001; <strong>Operating Income  </strong>A modest <strong>upward trend</strong> &#128200; quarter-over-quarter from $31.7B in Q2 to $32.0B in Q3, with year-over-year growth of 17% in Q2 and 16% in Q3. <a href="https://microsoft.gcs-web.com/node/33661/html">10-Q</a></p><p>According to the <strong>Solow-Swan Growth Model</strong>, the long-term economic growth comes not just from more people or more money, but from gains in total factor productivity. Microsoft&#8217;s use of AI to drive efficiencies, such as Azure AI revenue growth of 33% year-over-year in Q3 and surpassing a $13B AI business annual run rate in Q2 while still growing income faster than expenses, is a clear example of this principle in action.</p><p><em><strong>MSFT</strong>&nbsp;is producing more value without proportionally increasing costs, the very definition of tech-driven efficiency.</em></p><p>Microsoft is just the beginning. In the coming months, this trend is expected to be observed in other technology companies as well. With a reduction in the growth of operating expenses, corporations will be able to rapidly accelerate their Operating Income</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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://devden.raghavan.studio/subscribe?"><span>Subscribe now</span></a></p><h1><strong>Money is Energy</strong></h1><p><em><strong>Money can neither be created nor destroyed, but it can be transformed from one form to another, preserving its potential.</strong></em></p><p>With the increasing use of AI systems, it is inevitable that many white-collar jobs today will be transformed into other forms, along with a reduction in their demand. </p><p>This is not an existential crisis. It is the responsibility of human society to continuously make them more employable in the face of changing industrial conditions. Darwinism applies not just to biology, but also to economics. In a rapidly shifting landscape, it is the adaptable who will thrive, reshaping their lives to sustain themselves within the new economic reality.</p><h3>What if all Jobs are Taken by AI?</h3><p>That would be a utopian condition, during industrial revolution not all humans become unemployed instead the demand moved towards the job market that would value critical thinking and productive execution. During the decline of the industrial workforce, the new era of Information Technology boomed. One would become unemployed not because of someone else it would be often due to themselves. </p><h3>White-Collar&#8217;s Silesia</h3><p>In Silesia, mechanization led to a sudden obsolescence, plummeting wages, and community-wide starvation. Today&#8217;s AI-driven disruptions will slowly squeeze the white collar sector  to displace and vanish.</p><p>Axios reports, citing Anthropic CEO Dario Amodei, that AI could eliminate up to half of all entry-level white-collar jobs, potentially spiking unemployment to 10-20% within one to five years (<a href="https://www.axios.com/2025/05/28/ai-jobs-white-collar-unemployment-anthropic">axios</a>).  Klarna's CEO has warned that AI's replacement of white-collar roles could trigger a full-blown recession, as companies slash costs by automating routine tasks. The term "white-collar recession" has gone mainstream, with Business Insider describing a job market where AI boosts corporate profits but leaves professionals scrambling amid layoffs and paranoia.(<a href="https://www.businessinsider.com/klarna-ceo-ai-may-cause-recession-white-collar-jobs-threat-2025-6">business insider</a>)</p><h4>Beyond Productivity: Ideologies for an AI-Abundant Future</h4><p>The Solow-Swan model excels at explaining growth through tech-driven efficiency, as in Microsoft's AI code-writing reducing headcount while boosting output. But it overlooks a key flaw: endless growth assumes infinite resources and ignores human costs like inequality. In the AI era, alternative ideologies reframe this viewing AI not as a scarcity amplifier but a path to abundance, where work becomes optional and society prioritizes flourishing over accumulation. This aligns with historical shifts, Just as the Industrial Revolution birthed the IT boom, AI could usher in a "post-labor" era if we adapt ideologically.</p><h4>Degrowth and Human-Centric Models: Flourishing Over GDP</h4><p>Princeton's Arvind Narayanan (<a href="https://x.com/random_walker/status/1937143148838326272">@random_walker</a>) notes that AI hype and skepticism feed off each other, advocating for a balanced approach to adoption where technology complements human skills, such as in hybrid AI-human coding workflows.</p><p>Degrowth challenges Solow-Swan by advocating reduced consumption for sustainability, using AI for efficiency without endless expansion. For instance, in a degrowth model, AI tools like energy-efficient LLMs like light-weight models from Hugging Face could reduce computational demands, fostering sustainable innovation without environmental strain. This approach reimagines AI not as a driver of perpetual growth but as a means to <strong>downscale resource-intensive activities</strong>, while enhancing quality of life, echoing calls from the Degrowth 2025 Conference (<a href="https://isee-degrowth2025.no/calls-and-registration/ss170">session</a>) to treat AI as a tool for planetary justice rather than "growthism." &#129300;</p><p>Rethinking growth in the AI era emphasizes innovation without environmental strain, as highlighted in the UNDP's 2025 Human Development Report, which frames AI as a tool for empowering people and possibilities, potentially enabling <strong>shorter workweeks </strong>and equitable resource distribution to avoid inequality traps like those in historical disruptions (<a href="https://www.undp.org/sites/g/files/zskgke326/files/2025-05/human_development_report_2025.pdf">UNDP</a>)</p><p>Unlike the 19th-century smashing rebellions, let us believe modern policy interventions can prevent poverty traps by focusing on reskilling, regulation, and equitable AI adoption. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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></p>]]></content:encoded></item><item><title><![CDATA[Augmented Coding: How AI Elevates Software Engineer Productivity]]></title><description><![CDATA[Productivity, Creativity, and the New Tech Economy]]></description><link>https://devden.raghavan.studio/p/augmented-coding-how-ai-elevates</link><guid isPermaLink="false">https://devden.raghavan.studio/p/augmented-coding-how-ai-elevates</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Thu, 24 Apr 2025 12:35:08 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!B1Fe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9998baf-cca1-47db-b2a4-3ccdd1892009_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em><strong>Your mind is for having ideas, not holding them!   -David Allen</strong></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_!B1Fe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9998baf-cca1-47db-b2a4-3ccdd1892009_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!B1Fe!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9998baf-cca1-47db-b2a4-3ccdd1892009_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!B1Fe!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9998baf-cca1-47db-b2a4-3ccdd1892009_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!B1Fe!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9998baf-cca1-47db-b2a4-3ccdd1892009_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!B1Fe!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9998baf-cca1-47db-b2a4-3ccdd1892009_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!B1Fe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9998baf-cca1-47db-b2a4-3ccdd1892009_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c9998baf-cca1-47db-b2a4-3ccdd1892009_1536x1024.png&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;:3215486,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://devden.raghavan.studio/i/161889822?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9998baf-cca1-47db-b2a4-3ccdd1892009_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!B1Fe!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9998baf-cca1-47db-b2a4-3ccdd1892009_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!B1Fe!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9998baf-cca1-47db-b2a4-3ccdd1892009_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!B1Fe!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9998baf-cca1-47db-b2a4-3ccdd1892009_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!B1Fe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9998baf-cca1-47db-b2a4-3ccdd1892009_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><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>Software development is undergoing a renaissance. Instead of heralding an apocalypse for programmers, AI is becoming a creative partner, helping us code better, faster, and with more imagination. </p><p>The human brain thrives when freed from rote tasks. It is designed for thinking and not for a long-term storage purposes. Modern AI coding tools are offloading the tedious &#8220;holding&#8221; of details like syntax, boilerplate, repetitive code so that human developers can <strong>focus on ideas</strong>. </p><h2>From Autocomplete to A Copilot</h2><p>Not long ago, the idea of an AI assistant writing code alongside us felt like science fiction. Today, it&#8217;s a daily reality for many developers. The introduction of <strong>GitHub Copilot</strong> in 2021 started a new era: an AI pair programmer that lives in your editor, autocompleting lines or even entire functions in real-time. Less than two years since its launch, Copilot was reportedly generating about<strong> </strong>46% of developers&#8217; code and helping them code <strong>up to 55% faster</strong> on average (<a href="https://github.blog/news-insights/product-news/github-copilot-x-the-ai-powered-developer-experience/#:~:text=GitHub%20Copilot%20started%20a%20new,code%20%20and%20helps%2064">The GitHub Blog</a>). </p><p>Though they make the developers faster AI don&#8217;t magically know what problem to solve or whether a piece of code fits your intent &#8211; that remains the developer&#8217;s job. In fact, Copilot often needs guidance and correction. It might suggest insecure code or logical errors if a human isn&#8217;t paying attention. Responsible engineers treat it like an <strong>eager assistant</strong> who is useful, but requiring review and direction. <em>The future of software development isn&#8217;t human or AI &#8211; it&#8217;s human and AI working together</em>. </p><p>Successful teams will be those that combine AI&#8217;s efficiency with human insight. The AI writes the bulk of the code, while the human ensures it&#8217;s the right code. This dynamic is already changing how veteran engineers work daily &#8211; and it&#8217;s just the beginning.</p><h2>AI First Dev Environment:The Cursor </h2><p>GitHub Copilot may have been the first at-scale AI coding assistant, but it sparked a wave of innovation. Since its debut, we&#8217;ve seen a proliferation of AI first development environments that push the concept much further. If Copilot is an AI <em>pair programmer</em>, newer tools are aiming to be an AI <strong>team member</strong> or even an AI project lead in some respects &#8211; handling larger chunks of the development process autonomously.</p><p>Cursor is essentially a fork of VS Code supercharged with AI capabilities. A game changer its almost like a ChatGPT that knows your codebase.<em> </em>That is a powerful shift: rather than just predicting the next line as you type, Cursor can ingest your entire repository and have a conversation about your whole project. In Cursor, you can <strong>chat with your codebase</strong> &#8211; ask </p><p>&#8220;Where is the user login logic implemented?&#8221; or &#8220;Explain what this function does,&#8221;</p><p>It means we spend less time on mechanical edits and more on oversight. Cursor&#8217;s ability to keep more context in mind via custom retrieval models and a larger memory of your project)reduces the need for us to manually hunt through files (<a href="https://www.cursor.com/features#:~:text=Chat">Cursor Features</a>). You can ask the AI to navigate and even implement the change for you. Early adopters report that with such tools, they &#8220;barely write any code&#8221; for boilerplate sections &#8211; instead, they describe what they need in natural language and let the AI draft it, then fine-tune the result. You become an editor and architect, orchestrating the code rather than typing it all out. </p><h2>Intelligence Integrated Development: Firebase Studio</h2><p>The evolution doesn&#8217;t stop at coding inside editors &#8211; it&#8217;s now expanding to entire development platforms. A cutting-edge example is Firebase Studio, previously called <strong>Project-IDX</strong>, as an AI-first, cloud-based IDE for building full-stack applications. If Copilot is like having an AI pair programmer, Firebase Studio is like having an <strong>AI software team</strong> at your disposal. Google describes Firebase Studio as an end-to-end platform, built for the AI era, that brings built-in prototyping, coding workspaces, and flexible deployment options into a single experience(<a href="https://firebase.blog/posts/2025/04/introducing-firebase-studio/#:~:text=Firebase%20Studio%20fuses%20tools%20like,of%20innovative%20applications%20more%20quickly">Firebase Studio Blog</a>).</p><h3>My Experiences with Firebase Studio</h3><p>I built a PDF Chat Buddy purely through Firebase Studio &#10084;&#65039; it transformed my prompt to an app, used Gemini AI for LLM feature and also rolled out the app to cloud which you can access here, &#128071;</p><p>&#127881; <a href="https://studio--pdf-pal-cujlf.us-central1.hosted.app">https://studio--pdf-pal-cujlf.us-central1.hosted.app</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_!dwFy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde236af4-c101-449b-8cdd-5ce06558d285_4096x3562.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dwFy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde236af4-c101-449b-8cdd-5ce06558d285_4096x3562.png 424w, https://substackcdn.com/image/fetch/$s_!dwFy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde236af4-c101-449b-8cdd-5ce06558d285_4096x3562.png 848w, https://substackcdn.com/image/fetch/$s_!dwFy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde236af4-c101-449b-8cdd-5ce06558d285_4096x3562.png 1272w, https://substackcdn.com/image/fetch/$s_!dwFy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde236af4-c101-449b-8cdd-5ce06558d285_4096x3562.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dwFy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde236af4-c101-449b-8cdd-5ce06558d285_4096x3562.png" width="1456" height="1266" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/de236af4-c101-449b-8cdd-5ce06558d285_4096x3562.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1266,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2430216,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://devden.raghavan.studio/i/161889822?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde236af4-c101-449b-8cdd-5ce06558d285_4096x3562.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!dwFy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde236af4-c101-449b-8cdd-5ce06558d285_4096x3562.png 424w, https://substackcdn.com/image/fetch/$s_!dwFy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde236af4-c101-449b-8cdd-5ce06558d285_4096x3562.png 848w, https://substackcdn.com/image/fetch/$s_!dwFy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde236af4-c101-449b-8cdd-5ce06558d285_4096x3562.png 1272w, https://substackcdn.com/image/fetch/$s_!dwFy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde236af4-c101-449b-8cdd-5ce06558d285_4096x3562.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>Imagine you have an idea for an app. In Firebase Studio, you can literally <strong>type your idea in natural language</strong> or even sketch a rough interface or drop in some example images and ask the AI to Prototype this app. The platform&#8217;s App Prototyping agent will then generate a working prototype for you within minutes. It automatically wires up the necessary AI APIs using Google&#8217;s <strong>Gemini</strong> model and configured the project with no manual setup from the developer. </p><p>&#8220;<strong>vibe coding</strong>&#8221; &#8211; you focus on the high-level vibe or intent of the app, and the AI agents handle translating that into working software.</p><p>Firebase Studio might get you a quick prototype, but an experienced engineer must guide it, verify the output, and handle the nuances and polish. In fact, these tools are currently best used by skilled developers who know what to ask for and how to fix the AI&#8217;s mistakes. They shine as force-multipliers for developer productivity and creativity. </p><p>It&#8217;s now plausible for a solo developer to build a multi million ARR product in weeks. &#128176;</p><h2>Developers as Orchestrators</h2><p>As AI takes over more of the routine coding, the role of software engineers is undeniably shifting. No more code monkeys, we&#8217;re witnessing a change in focus from </p><p><strong>writing code  &#10145;&#65039; directing code</strong>. </p><p>Developers become like conductors of an orchestra, where AI agents play the instruments. Our job is to ensure everything flows in sync.</p><p>As one AI-focused engineer quipped, Strategic thinking and architectural oversight become more critical when working with these tools. The AI might produce a solution, but deciding if it&#8217;s the optimal solution is up to the human. We have to <strong>maintain the big picture</strong> that AI often misses  &#8211; things like ensuring the code aligns with the product requirements, is maintainable in the long run, and meets non-functional needs (performance, security, etc.). </p><p>Rather than coding being a rote translation of requirements into syntax, it&#8217;s becoming a <strong>dialog between developer and AI</strong>. You describe the problem or desired outcome much like you&#8217;d explain to a rubber-duck &#128037;, the AI proposes code, and you refine or correct it. This is reminiscent of how the human brain offloads memory to focus on reasoning. </p><p><em>&#8220;The best minds don&#8217;t know all the code, they know how to Google it.&#8221;</em> </p><p>It&#8217;s worth noting that this transition requires a <strong>mindset shift</strong> for developers. Some who have spent years lovingly crafting code by hand might feel uneasy trusting an AI to do it. </p><p>Indeed, there are stories in the developer community about an <strong>identity crisis</strong> among programmers: those who derived their professional pride from knowing every language quirk or typing at the speed of thought may wonder what their value is if the AI writes a lot of the code. Embracing these tools doesn&#8217;t diminish the role of the developer &#8211; it <strong>elevates</strong> it. </p><p>You&#8217;re still the <strong>pilot, the AI is your co-pilot</strong>.</p><p>Knowing the best data structure is still vital to make a optimal solution, you just might have the AI implement it for you. Far from making skills obsolete, AI assistance puts a premium on higher-level skills: defining problems, making architectural choices, and refining AI outputs into great software. </p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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://devden.raghavan.studio/subscribe?"><span>Subscribe now</span></a></p><h1>Romer Model </h1><p><strong>Endogenous Economic Growth</strong></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!I6Ke!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadd7824c-596f-4298-875c-a7bd50543605_673x636.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!I6Ke!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadd7824c-596f-4298-875c-a7bd50543605_673x636.png 424w, https://substackcdn.com/image/fetch/$s_!I6Ke!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadd7824c-596f-4298-875c-a7bd50543605_673x636.png 848w, https://substackcdn.com/image/fetch/$s_!I6Ke!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadd7824c-596f-4298-875c-a7bd50543605_673x636.png 1272w, https://substackcdn.com/image/fetch/$s_!I6Ke!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadd7824c-596f-4298-875c-a7bd50543605_673x636.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!I6Ke!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadd7824c-596f-4298-875c-a7bd50543605_673x636.png" width="367" height="346.8231797919762" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/add7824c-596f-4298-875c-a7bd50543605_673x636.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:636,&quot;width&quot;:673,&quot;resizeWidth&quot;:367,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Endogenous Growth Theory - Defined, Example, Limits&quot;,&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="Endogenous Growth Theory - Defined, Example, Limits" title="Endogenous Growth Theory - Defined, Example, Limits" srcset="https://substackcdn.com/image/fetch/$s_!I6Ke!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadd7824c-596f-4298-875c-a7bd50543605_673x636.png 424w, https://substackcdn.com/image/fetch/$s_!I6Ke!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadd7824c-596f-4298-875c-a7bd50543605_673x636.png 848w, https://substackcdn.com/image/fetch/$s_!I6Ke!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadd7824c-596f-4298-875c-a7bd50543605_673x636.png 1272w, https://substackcdn.com/image/fetch/$s_!I6Ke!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadd7824c-596f-4298-875c-a7bd50543605_673x636.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 rise of AI-assisted development resonates deeply with economist Paul Romer's model, which underscores the importance of knowledge, innovation, and technology in driving long-term economic growth. <strong>Romer</strong>, awarded the Nobel Prize in Economics in 2018, argued that economic progress is driven not just by physical resources but significantly by intentional investments in <strong>innovation and human creativity</strong>.</p><p>This aligns perfectly with the transformative potential of generative AI in software development. AI tools enable developers to generate innovative solutions more efficiently and rapidly by significantly reducing the effort and resources traditionally required. By lowering barriers to innovation, AI empowers software teams, particularly in agile and resource-constrained startups, to experiment broadly, iterate quickly, and scale their products faster. This not only boosts productivity but also accelerates the flow of new ideas and solutions into the market, fostering an environment rich in creativity and continuous technological advancement.</p><p>In fact, reflecting Romer's vision, McKinsey estimates that generative AI could contribute up to <strong>$4.4 trillion</strong> annually to global economic value. (<a href="https://www.mckinsey.com/industries/technology-media-and-telecommunications/our-insights/how-an-ai-enabled-software-product-development-life-cycle-will-fuel-innovation#:~:text=Over%20the%20two%20years%20since,process%20of%20creating%20software%20products">McKinsey Blog</a>).  </p><h1><strong>Curiosity</strong> </h1><p><em>AI won&#8217;t take your job&#8212;but someone with your skills and the ability to use AI effectively just might.</em></p><p>The engineers who embrace curiosity, delivering more output than ever outperform engineers who resist change. This pattern is familiar in economic history: whenever a transformative technology arrives be it the steam engine, computers, or now AI, there is a period of adjustment where the nature of work changes. Mundane jobs are automated, but new and often more fulfilling jobs emerge. In software development, we can expect a similar trend, entirely new roles might appear &#8211; for example, <strong>AI software orchestrator</strong> akin to an architect who specializes in assembling AI-driven components, or prompt engineering specialist.</p><p>Another macro effect is the democratization<strong> </strong>of software creation. As AI tools lower the ceiling for non-programmers to create complex models. It also means, software developers could focus on understanding the problem deeply and let AI help with the solution implementation.</p><p>Economically, we might see a shift in what skills are valued. The routine coding ability might become less of a differentiator, while system design, creative thinking, and the ability to leverage AI effectively become highly sought-after skills. This could influence education and training &#8211; perhaps computer science curricula will put more emphasis on algorithms, architecture, and human-AI interaction, rather than churning out code by hand for assignments. </p><p>Industry will likely invest in training their developers to use these tools just as they once trained folks on using computers, version control, or cloud platforms. The organizations that manage this transition well could see <strong>dramatic productivity gains</strong>, which at scale translates to economic growth and possibly shorter software development timelines across every industry. </p><p>We&#8217;re moving toward a future where <strong>the bottleneck is no longer how fast we can type, but how big we can dream</strong>.</p><h2>Conclusion: Embracing the Augmented Future</h2><p>Software engineering is an art&#8212;and it's time we embrace the fact that computers can generate art.</p><p>Mastering AI tools will be akin to mastering frameworks or cloud services in the past &#8211; a source of leverage. Those who ride the wave will find they can construct systems of astonishing complexity with ease, multiplying their impact. Those who cling to manual ways for simple pride may find the world moving on without them. The heartening truth, however, is that our <strong>human ingenuity </strong>has never been more valuable.</p><p><strong>The brain is meant for thinking, not storing,</strong> and the software engineer is meant for inventing, not regurgitating boilerplate. The future of coding isn&#8217;t AI versus humans, it&#8217;s AI with humans, unlocking possibilities we&#8217;re only beginning to imagine.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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></p>]]></content:encoded></item><item><title><![CDATA[The Accountability Paradox]]></title><description><![CDATA[Ethical Challenges and Opportunities in AI]]></description><link>https://devden.raghavan.studio/p/the-accountability-paradox</link><guid isPermaLink="false">https://devden.raghavan.studio/p/the-accountability-paradox</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Mon, 17 Mar 2025 01:05:24 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!-pgn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbf5838c-93ef-4bbb-9b22-00a6db2db819_1009x720.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_!-pgn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbf5838c-93ef-4bbb-9b22-00a6db2db819_1009x720.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-pgn!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbf5838c-93ef-4bbb-9b22-00a6db2db819_1009x720.jpeg 424w, https://substackcdn.com/image/fetch/$s_!-pgn!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbf5838c-93ef-4bbb-9b22-00a6db2db819_1009x720.jpeg 848w, https://substackcdn.com/image/fetch/$s_!-pgn!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbf5838c-93ef-4bbb-9b22-00a6db2db819_1009x720.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!-pgn!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbf5838c-93ef-4bbb-9b22-00a6db2db819_1009x720.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-pgn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbf5838c-93ef-4bbb-9b22-00a6db2db819_1009x720.jpeg" width="1009" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cbf5838c-93ef-4bbb-9b22-00a6db2db819_1009x720.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1009,&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_!-pgn!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbf5838c-93ef-4bbb-9b22-00a6db2db819_1009x720.jpeg 424w, https://substackcdn.com/image/fetch/$s_!-pgn!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbf5838c-93ef-4bbb-9b22-00a6db2db819_1009x720.jpeg 848w, https://substackcdn.com/image/fetch/$s_!-pgn!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbf5838c-93ef-4bbb-9b22-00a6db2db819_1009x720.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!-pgn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbf5838c-93ef-4bbb-9b22-00a6db2db819_1009x720.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><figcaption class="image-caption">Generated by Grok AI</figcaption></figure></div><p><em>Morality is not the doctrine of how we may make ourselves happy, but how we may make ourselves worthy of happiness. - Immanuel Kant</em></p><p>Did you know that by 2025, the global AI market is projected to hit a staggering $190 billion? From healthcare to finance, AI is no longer a futuristic fantasy it&#8217;s here, reshaping industries, optimizing processes, and unlocking innovations we once only dreamed of. But as AI&#8217;s capabilities soar, so do the ethical dilemmas it drags in its wake. Can we really trust machines to make life-or-death decisions? What happens when an AI system, trained on biased data, starts making prejudiced calls in hiring or law enforcement? And let&#8217;s not forget the classic trolley problem: If an AI-driven car faces a moral crossroads, who does it choose to save?</p><p>In this post, we&#8217;ll explore the ethical challenges AI poses, and why, despite all its brilliance, AI still can&#8217;t and shouldn&#8217;t replace human judgment.</p><h2>The AI Revolution: A Double-Edged Sword</h2><p>Let&#8217;s start with the good news. AI is transforming industries in ways that seemed impossible just a decade ago:</p><ul><li><p><strong>Healthcare</strong>: AI-powered diagnostics are spotting diseases earlier and more accurately than ever, while personalized treatment plans are improving patient outcomes.</p></li><li><p><strong>Education</strong>: Adaptive learning platforms are tailoring lessons to individual students, making education more accessible and effective.</p></li><li><p><strong>Law</strong>: AI is sifting through mountains of legal documents in seconds, helping lawyers focus on strategy rather than paperwork.</p></li><li><p><strong>Finance</strong>: Algorithmic trading is optimizing portfolios, and fraud detection systems are catching shady transactions before they wreak havoc.</p></li><li><p><strong>Manufacturing</strong>: AI-driven automation is boosting efficiency, reducing waste, and even predicting equipment failures before they happen.</p></li></ul><p>The economic impact? Massive. AI is expected to add $15.7 trillion to the global economy by 2030, according to PwC. But here&#8217;s the catch: with great power comes great responsibility and AI is no exception. As we hand over more decisions to machines, we&#8217;re also handing over the ethical dilemmas that come with them. And that&#8217;s where things get tricky.</p><h2>Ethical Challenges: The Four Pillars of AI Trust</h2><p>If AI is going to be a force for good, it needs to be built on a foundation of trust. That trust hinges on four key ethical principles: transparency, accountability, fairness, and privacy. Let&#8217;s break them down.</p><h3>1. Transparency: Peeking Inside the Black Box</h3><p>AI systems, especially those powered by deep learning, are often described as &#8220;black boxes.&#8221; They make decisions, but good luck figuring out how they got there. This opacity is a problem&#8212;especially when lives or livelihoods are at stake. Enter explainable AI (XAI), a growing field aimed at making AI&#8217;s decision-making process more transparent. For example, in healthcare, XAI can help doctors understand why an AI system recommended a particular treatment, building trust and enabling better decision-making.</p><h3>2. Accountability: Who&#8217;s to Blame When AI Fails?</h3><p>When an AI system goes wrong&#8212;say, a self-driving car causes an accident&#8212;who&#8217;s responsible? The developer? The manufacturer? The AI itself? Clear accountability mechanisms are crucial. Frameworks like IEEE&#8217;s 7000-2021 standard are stepping in, emphasizing defined roles and responsibilities throughout the AI lifecycle. But as we&#8217;ll see later, the answers aren&#8217;t always straightforward.</p><h3>3. Fairness: Bias In, Bias Out</h3><p>AI learns from data, and if that data is biased, so is the AI. Take Amazon&#8217;s infamous recruitment tool, which was scrapped after it was found to discriminate against female candidates. Bias isn&#8217;t just a technical glitch&#8212;it&#8217;s an ethical minefield. Mitigation strategies, like balanced datasets and fairness-aware algorithms, are being developed, but they&#8217;re far from foolproof. And here&#8217;s the kicker: fairness means different things to different people. Is it equal opportunity? Demographic parity? The debate rages on.</p><h3>4. Privacy: The Data Dilemma</h3><p>AI thrives on data, but that data often includes sensitive personal information. Biometric surveillance, for instance, raises red flags about consent and misuse. Regulations like GDPR are trying to keep up, but as AI evolves, so do the privacy risks. How do we balance innovation with the right to privacy? It&#8217;s a tightrope walk.</p><p>Organizations like IEEE, ACM, and even tech giants like Google and Microsoft are working to set ethical standards, but the road ahead is long and winding.</p><h2>The Trolley Problem: AI&#8217;s Moral Crossroads</h2><p>Ever heard of the trolley problem? It&#8217;s a classic ethical dilemma: a runaway trolley is barreling toward five people. You can pull a lever to divert it, but that will kill one person instead. What do you do? Now, imagine that decision isn&#8217;t yours, it's an AI&#8217;s, embedded in a self-driving car.</p><p>In the world of autonomous vehicles, this isn&#8217;t just a thought experiment, it's a real concern. Should the car prioritize the passenger&#8217;s safety or protect pedestrians? Different cultures have different answers. A study by MIT found that people in collectivist cultures (like Japan) were more likely to sacrifice the passenger for the greater good, while those in individualist cultures (like the U.S.) leaned toward protecting the passenger. So, how do you program ethics when morality itself is a moving target?</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!0HNc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5043947-b5e0-4d0a-9637-f2e2e44ebf54_1024x1024.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!0HNc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5043947-b5e0-4d0a-9637-f2e2e44ebf54_1024x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!0HNc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5043947-b5e0-4d0a-9637-f2e2e44ebf54_1024x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!0HNc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5043947-b5e0-4d0a-9637-f2e2e44ebf54_1024x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!0HNc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5043947-b5e0-4d0a-9637-f2e2e44ebf54_1024x1024.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!0HNc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5043947-b5e0-4d0a-9637-f2e2e44ebf54_1024x1024.webp" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c5043947-b5e0-4d0a-9637-f2e2e44ebf54_1024x1024.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:632096,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://devden.raghavan.studio/i/159224623?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5043947-b5e0-4d0a-9637-f2e2e44ebf54_1024x1024.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!0HNc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5043947-b5e0-4d0a-9637-f2e2e44ebf54_1024x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!0HNc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5043947-b5e0-4d0a-9637-f2e2e44ebf54_1024x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!0HNc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5043947-b5e0-4d0a-9637-f2e2e44ebf54_1024x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!0HNc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5043947-b5e0-4d0a-9637-f2e2e44ebf54_1024x1024.webp 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><figcaption class="image-caption">Generated by DALL-E</figcaption></figure></div><p>This brings us to a real-world incident that shook the industry: the Cruise AI car fiasco.</p><h2>The Cruise Autonomous Car Incident</h2><p>In October 2023, a Cruise autonomous vehicle in San Francisco was involved in a controversial incident. The car, operating without a human driver, struck a pedestrian who had been jaywalking. While the pedestrian survived, the incident sparked outrage and raised tough questions:</p><ul><li><p><strong>Who&#8217;s responsible?</strong> Cruise argued that the pedestrian&#8217;s behavior was unpredictable, but critics pointed to flaws in the AI&#8217;s decision-making.</p></li><li><p><strong>Ethical programming:</strong> Should the car have prioritized pedestrian safety over traffic rules?</p></li><li><p><strong>Transparency: </strong>Cruise faced backlash for not immediately releasing the car&#8217;s decision logs, fueling distrust.</p></li></ul><p>The incident underscored a harsh reality: even with the best intentions, AI can&#8217;t always navigate the messy, unpredictable nature of human behavior. It also highlighted the need for clearer accountability&#8212;who exactly is liable when an AI makes a split-second decision?</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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><h2>Biometric Recognition: The Privacy vs. Security Showdown</h2><p>AI&#8217;s ability to recognize faces, voices, and even heartbeats is revolutionizing security, but at what cost? Biometric systems are powerful, but they come with ethical baggage:</p><ul><li><p><strong>Privacy Violations:</strong> Facial recognition is already being used for mass surveillance in some countries, often without consent. In 2020, IBM, Amazon, and Microsoft paused or halted sales of facial recognition tech to police, citing privacy concerns.<br></p></li><li><p><strong>Bias:</strong> Studies show that facial recognition systems are less accurate on darker-skinned individuals, leading to misidentification and discrimination. A 2019 NIST report found that some algorithms had error rates up to 100 times higher for certain demographics.<br></p></li><li><p><strong>Security Risks:</strong> Biometric data, once compromised, can&#8217;t be reset like a password. The stakes are high.</p></li></ul><p>The challenge? Balancing the benefits of biometric AI with the right to privacy and fairness. It&#8217;s a debate that&#8217;s only heating up.</p><h2>What&#8217;s the Industry doing in AI Ethics Today</h2><p>The good news? The industry isn&#8217;t ignoring these challenges. Here&#8217;s what&#8217;s making waves:</p><ul><li><p><strong>Regulatory Frameworks:</strong> The EU&#8217;s AI Act, set to be the world&#8217;s first comprehensive AI law, is pushing for stricter oversight, especially for high-risk applications like biometrics and autonomous vehicles.</p></li><li><p><strong>Interdisciplinary Collaboration:</strong> Organizations like IEEE and ACM are fostering partnerships between technologists, ethicists, and policymakers to create actionable ethical guidelines.</p></li><li><p><strong>Corporate Accountability:</strong> Companies are forming AI ethics boards, but as a recent paper by Ali et al. (2023) points out, many still rely on &#8220;ethics entrepreneurs&#8221;&#8212;individuals who champion ethics but often lack institutional support. The result? A patchwork of good intentions without systemic change.</p></li></ul><p>The conversation is evolving, but there&#8217;s a long way to go. As Doreen Bogdan-Martin put it, &#8220;We&#8217;re building the plane while flying it, and the turbulence is real.&#8221;</p><h2>Why AI Can&#8217;t Go It Alone: The Case for Human Oversight</h2><p>Here&#8217;s the uncomfortable truth: AI, for all its brilliance, can&#8217;t replicate human moral judgment. Why? Because morality isn&#8217;t just about data it&#8217;s about context, empathy, and lived experience. AI lacks consciousness, emotional intelligence, and the ability to grasp cultural nuances. As argued in my <a href="https://www.jetir.org/papers/JETIR2502380.pdf">recent JETIR paper</a>, AI can approximate moral reasoning in narrow contexts, but it lacks the interpretive depth and moral responsibility needed for true ethical autonomy.</p><p>Take healthcare: an AI might recommend a treatment based on statistics, but it can&#8217;t understand a patient&#8217;s fear, cultural beliefs, or personal values. That&#8217;s why hybrid models where AI assists but humans decide are gaining traction. In these setups, AI handles the heavy lifting (data analysis, pattern recognition), while humans bring the moral compass.</p><p>But it&#8217;s not just about decision-making. It&#8217;s about accountability. When an AI system fails, it&#8217;s humans who must answer for it. That&#8217;s why robust governance frameworks, like those proposed by IEEE, are essential. They set the guardrails, ensuring AI operates within ethical boundaries, without pretending it can be &#8220;moral&#8221; on its own.</p><h2>Conclusion: The Future Is Human-Centric AI</h2><p>AI&#8217;s growth is unstoppable, but so are its ethical challenges. From biased algorithms to privacy invasions, the risks are real, and they&#8217;re not going away. But here&#8217;s the silver lining: we don&#8217;t have to choose between innovation and ethics. By embracing transparency, accountability, fairness, and privacy, and by keeping humans firmly in the loop, we can harness AI&#8217;s power without sacrificing our values.</p><p>So, what&#8217;s the call to action? If you&#8217;re in the software industry, it&#8217;s time to prioritize ethics in AI development. Advocate for interdisciplinary collaboration, push for stronger governance, and don&#8217;t shy away from tough conversations. The future of AI isn&#8217;t just about smarter machines, it&#8217;s about building a world where technology serves humanity, not the other way around.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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://devden.raghavan.studio/subscribe?"><span>Subscribe now</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[Refactoring for Earth - How Sustainable Software Engineering is Saving the Planet]]></title><description><![CDATA[Building the Future, Responsibly]]></description><link>https://devden.raghavan.studio/p/refactoring-for-earth-how-sustainable</link><guid isPermaLink="false">https://devden.raghavan.studio/p/refactoring-for-earth-how-sustainable</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Fri, 28 Feb 2025 04:05:14 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!lGtJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21e6703e-1841-4ce3-9325-2e024d8f2701_6912x3456.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!lGtJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21e6703e-1841-4ce3-9325-2e024d8f2701_6912x3456.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lGtJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21e6703e-1841-4ce3-9325-2e024d8f2701_6912x3456.png 424w, https://substackcdn.com/image/fetch/$s_!lGtJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21e6703e-1841-4ce3-9325-2e024d8f2701_6912x3456.png 848w, https://substackcdn.com/image/fetch/$s_!lGtJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21e6703e-1841-4ce3-9325-2e024d8f2701_6912x3456.png 1272w, https://substackcdn.com/image/fetch/$s_!lGtJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21e6703e-1841-4ce3-9325-2e024d8f2701_6912x3456.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lGtJ!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21e6703e-1841-4ce3-9325-2e024d8f2701_6912x3456.png" width="1200" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/21e6703e-1841-4ce3-9325-2e024d8f2701_6912x3456.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:728,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:13306036,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!lGtJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21e6703e-1841-4ce3-9325-2e024d8f2701_6912x3456.png 424w, https://substackcdn.com/image/fetch/$s_!lGtJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21e6703e-1841-4ce3-9325-2e024d8f2701_6912x3456.png 848w, https://substackcdn.com/image/fetch/$s_!lGtJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21e6703e-1841-4ce3-9325-2e024d8f2701_6912x3456.png 1272w, https://substackcdn.com/image/fetch/$s_!lGtJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21e6703e-1841-4ce3-9325-2e024d8f2701_6912x3456.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><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>In a world increasingly driven by technology, the spotlight has turned to sustainability not just in energy production or transportation but in the very software that powers our digital lives. <strong>Sustainable Software Engineering (SSE)</strong> is emerging as a transformative practice, blending technical expertise with environmental mindfulness to create software that minimizes energy consumption and carbon footprint. </p><h2>What is SSE?</h2><p>Sustainable Software Engineering constitutes a specialized domain within software development that prioritizes environmental sustainability across the entire lifecycle of software systems. This discipline is dedicated to the design, development, and operational management of software with an explicit focus on minimizing its ecological footprint. SSE is underpinned by foundational principles, including energy efficiency, carbon awareness, and lifecycle optimization. These principles serve as a framework for developers, enabling them to make informed, environmentally conscious decisions that align software functionality with sustainability objectives. By integrating these considerations, SSE ensures that software systems not only fulfill technical requirements but also contribute to the reduction of their environmental impact.</p><h3><strong>Environmental Implications</strong></h3><p>Data centers represent a critical component of contemporary digital infrastructure, facilitating the storage, processing, and dissemination of vast quantities of data. However, their operation is characterized by significant energy consumption and a corresponding contribution to greenhouse gas emissions. As essential enablers of the digital economy, data centers impose a considerable environmental burden, necessitating the adoption of sustainable practices within the software engineering domain. SSE addresses this challenge by advocating for strategies that enhance resource efficiency and mitigate the ecological consequences associated with data center operations.</p><h3>Challenges</h3><ol><li><p><strong>Balancing Performance and Energy Efficiency</strong><br>High-performing apps can be energy hogs, demanding hefty computational power. Developers face a tricky challenge: how do you keep users happy and software functional while cutting its environmental cost? It&#8217;s a tightrope walk between speed and sustainability.<br></p></li><li><p><strong>Legacy Systems</strong><br>Many existing systems were not designed with sustainability in mind, making them inefficient by modern standards. Overhauling or replacing these systems can be costly, time-consuming, and disruptive to operations.<br></p></li><li><p><strong>Measuring Environmental Impact</strong><br>Assessing the ecological footprint of software&#8212;such as energy use or carbon emissions&#8212;is no easy feat. Without clear metrics or accessible tools, developers struggle to understand and reduce their software&#8217;s environmental cost.</p></li></ol><div><hr></div><h2><strong>Principles of SSE</strong></h2><h3>Energy Efficiency</h3><p>Optimizing algorithms, reducing processing power requirements, and improving application performance are key to achieving energy savings in software development. For instance, the Green Software Foundation reports that optimizing algorithms in a single application can reduce energy consumption by up to 50%. This shows how writing efficient code not only improves user experience but also significantly lowers the energy required to run software, contributing to sustainability goals.</p><h3>Carbon Awareness</h3><p>Understanding where and when computational tasks are executed can minimize carbon emissions. A notable example is Google's carbon-aware load balancing, which shifts compute tasks to data centers powered by lower carbon-intensity energy sources, reducing emissions by up to 10%. This approach demonstrates how software can be designed to align with renewable energy availability, making it a powerful tool for reducing environmental impact.</p><h3>Lifecycle Optimization</h3><p>Designing software with sustainability in mind across its entire lifecycle&#8212;from development to decommissioning&#8212;helps minimize waste and resource consumption. Research from the Lawrence Berkeley National Laboratory highlights that efficient software design can extend hardware lifespans by up to 20%, thereby reducing electronic waste. This underscores the importance of considering long-term environmental impacts in software engineering.</p><div><hr></div><h2><strong>Why It Matters</strong></h2><p>The tech industry&#8217;s carbon footprint is significant and growing, but software developers have a unique opportunity to make a difference. By embedding sustainability into code and infrastructure, we can create a ripple effect that reduces energy demand, inspires innovation, and aligns the tech industry with global environmental goals.</p><p><strong>Electricity Usage:</strong> Data centers account for approximately 1% of global electricity consumption. </p><p><strong>Carbon Emissions:</strong> The data center industry is projected to emit 2.5 billion metric tons of CO&#8322;-equivalent emissions by 2030. </p><p><strong>Resource Strain:</strong> The substantial energy demands of data centers can strain local power grids and contribute to increased carbon emissions, especially in regions reliant on fossil fuels.</p><p><strong>Water Usage:</strong> Cooling systems in data centers consume significant 2B litre of water resources, with some facilities using millions of gallons daily, impacting local water supplies.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Vcs4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5ac47fc-f6b3-461d-a95e-e3c69f22d096_2379x1380.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Vcs4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5ac47fc-f6b3-461d-a95e-e3c69f22d096_2379x1380.png 424w, https://substackcdn.com/image/fetch/$s_!Vcs4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5ac47fc-f6b3-461d-a95e-e3c69f22d096_2379x1380.png 848w, https://substackcdn.com/image/fetch/$s_!Vcs4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5ac47fc-f6b3-461d-a95e-e3c69f22d096_2379x1380.png 1272w, https://substackcdn.com/image/fetch/$s_!Vcs4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5ac47fc-f6b3-461d-a95e-e3c69f22d096_2379x1380.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Vcs4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5ac47fc-f6b3-461d-a95e-e3c69f22d096_2379x1380.png" width="1456" height="845" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d5ac47fc-f6b3-461d-a95e-e3c69f22d096_2379x1380.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:845,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:185134,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&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_!Vcs4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5ac47fc-f6b3-461d-a95e-e3c69f22d096_2379x1380.png 424w, https://substackcdn.com/image/fetch/$s_!Vcs4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5ac47fc-f6b3-461d-a95e-e3c69f22d096_2379x1380.png 848w, https://substackcdn.com/image/fetch/$s_!Vcs4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5ac47fc-f6b3-461d-a95e-e3c69f22d096_2379x1380.png 1272w, https://substackcdn.com/image/fetch/$s_!Vcs4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5ac47fc-f6b3-461d-a95e-e3c69f22d096_2379x1380.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><figcaption class="image-caption"><em>Google Cloud and Microsoft Azure Cloud reported increases of 13% and 20%, respectively, in their carbon footprints for the 2023 financial year</em></figcaption></figure></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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://devden.raghavan.studio/subscribe?"><span>Subscribe now</span></a></p><h2>Solutions to Overcome SSE Challenges</h2><p>Sustainable Software Engineering is not just about solving isolated technical problems it&#8217;s about contributing to a more sustainable digital ecosystem that aligns with global environmental priorities. The technology sector, particularly through data centers powering the digital economy, consumes roughly 1% of global electricity and is a growing contributor to greenhouse gas emissions. By addressing inefficiencies in software, the solutions below play a critical role in reducing this environmental footprint. When scaled across the industry, they can drive significant, collective impact.</p><h3><strong>Profile Code for Inefficiencies</strong></h3><p>Energy-intensive software places unnecessary strain on data centers, amplifying their energy consumption and carbon emissions. Developers can use tools to identify inefficient code segments, optimizing algorithms, eliminating redundant computations, and adopting lightweight frameworks. These adjustments can improve efficiency without compromising performance&#8212;for example, the Green Software Foundation notes that such optimizations can cut energy use by up to 50% in some cases. Beyond individual applications, this practice has far-reaching implications: when applied across millions of software instances, it reduces the tech industry&#8217;s overall energy demand, supporting global efforts to curb climate change and aligning with corporate sustainability commitments.</p><h3><strong>Incrementally Refactor Legacy Systems</strong></h3><p>Legacy systems, often designed without energy efficiency in mind, are a major obstacle to sustainable technology infrastructure. A full overhaul may be impractical, but gradual refactoring offers a viable alternative. This could involve updating outdated algorithms, migrating to cloud platforms powered by renewable energy, or using containerization to optimize resource use. These incremental changes improve efficiency over time while minimizing disruption. On a larger scale, this approach contributes to industry-wide efforts to modernize aging systems, reducing the environmental impact of outdated infrastructure and helping organizations meet ambitious sustainability targets, such as those tied to reducing Scope 3 emissions.</p><h3><strong>Leverage Energy-Tracking Tools</strong></h3><p>Understanding software&#8217;s energy consumption is essential for sustainable development. Tools like <strong>Microsoft Joulemeter</strong> or <strong>Greenframe</strong> provide real-time insights, enabling developers to make informed choices that prioritize efficiency. Integrating these tools into workflows empowers teams to measure and reduce their environmental impact systematically. This is particularly relevant as companies face growing pressure to quantify and report emissions, aligning software development with broader corporate sustainability goals. By providing data to track progress, these tools also support compliance with emerging regulations and contribute to global initiatives aimed at responsible resource use and climate action.</p><p>These solutions extend beyond technical fixes to play a pivotal role in the broader sustainability landscape. Optimizing code efficiency reduces the energy burden on data centers, a critical step in shrinking the tech sector&#8217;s carbon footprint. Refactoring legacy systems modernizes infrastructure in a way that supports industry-wide shifts toward greener practices. Meanwhile, energy-tracking tools provide the transparency needed to align software development with corporate and global environmental goals. Together, these efforts position SSE as a key driver of change, contributing to a future where technology not only powers innovation but does so responsibly, in harmony with the planet&#8217;s limits.</p><div><hr></div><h2><strong>How to Get Started</strong></h2><h4><strong>1. Explore Industry Standards</strong></h4><p>The <a href="https://greensoftware.foundation/">Green Software Foundation</a> is an excellent starting point. Their initiatives and white papers provide actionable insights and strategies for adopting green software practices. Joining their working groups connects you with a community committed to the cause.</p><h4><strong>2. Learn from the Leaders</strong></h4><p>Tech giants like Microsoft, Google, and Amazon have paved the way with robust sustainability strategies:</p><ul><li><p>Microsoft's Sustainable Software Principles emphasize optimizing software for energy efficiency and carbon reduction. Their <a href="https://learn.microsoft.com/en-us/training/modules/sustainable-software-engineering-overview/">training modules</a> offer a comprehensive introduction to the topic.</p></li><li><p>Google's Environmental Reports <a href="https://sustainability.google/reports/google-2023-environmental-report/">showcase</a> how they integrate green practices into their software operations, providing inspiration for scalable solutions.</p></li></ul><h4><strong>3. Dive into Research</strong></h4><p>Expand your understanding with research papers on platforms like <a href="https://ieeexplore.ieee.org/">IEEE Xplore</a> and <a href="https://scholar.google.com/">Google Scholar</a>. These resources cover advancements in green computing and the latest energy-efficient software design techniques.</p><h4><strong>4. Engage with the Community</strong></h4><p>Participate in discussions on platforms like <a href="https://sustainability.stackexchange.com/">Stack Exchange's Sustainable Technologies</a> or join LinkedIn groups focused on SSE. Engaging with peers fosters collaboration and sparks innovative ideas.</p><h4><strong>5. Enhance Your Skills</strong></h4><p>Take advantage of courses and workshops:</p><ul><li><p>Enroll in Microsoft&#8217;s <a href="https://learn.microsoft.com/en-us/training/modules/sustainable-software-engineering-overview/">Sustainable Software Engineering Training</a> to understand best practices.</p></li><li><p>Explore Coursera&#8217;s <a href="https://www.coursera.org/learn/sustainable-software-engineering">Sustainable Software Engineering</a> course for hands-on learning.</p></li></ul><div><hr></div><h2>How SSE is Saving the Planet</h2><p>In a world powered by technology, the hidden environmental cost of software is finally coming into focus. Sustainable software engineering is stepping up to the challenge, weaving efficiency and resource consciousness into the fabric of development to create solutions that benefit both people and the planet. Here are some real-world examples of how companies and innovators are using sustainable software engineering to reduce their ecological footprint&#8212;and how these efforts are helping save the Earth.</p><h4>1. <strong>Optimizing Algorithms for Energy Efficiency: Google&#8217;s Search Revolution</strong></h4><p>Google has redefined what it means to search smarter. By fine-tuning its search algorithms and boosting hardware efficiency, the tech giant has slashed the energy needed for each query. What might seem like a minor tweak translates into massive savings across their global network of data centers. This effort is a key pillar in Google&#8217;s ambitious pledge to operate carbon-free by 2030.</p><p><strong>Impact</strong>: Lower energy per search means fewer carbon emissions, proving that even small code improvements can have a planetary payoff.</p><h4>2. <strong>Reimagining Data Center Design: Microsoft&#8217;s Underwater Innovation</strong></h4><p>Data centers guzzle energy, especially for cooling. Microsoft&#8217;s <strong>Project Natick</strong> flips the script by submerging data centers in the ocean, harnessing its natural chill to ditch power-hungry air conditioning. The result? A 30% drop in energy use compared to traditional setups.</p><p><strong>Impact</strong>: This clever use of nature&#8217;s resources cuts emissions and costs, showing how rethinking infrastructure can cool both servers and the planet.</p><h4>3. <strong>Powering the Cloud with Renewables: Apple&#8217;s Green Commitment</strong></h4><p>Apple isn&#8217;t just making sleek devices&#8212;it&#8217;s greening its operations too. The company has committed to running all its facilities, including data centers, on 100% renewable energy, tapping into solar, wind, and other clean sources. Many of its locations already hit this mark, shrinking their carbon footprint while inspiring others to follow.</p><p><strong>Impact</strong>: By ditching fossil fuels, Apple&#8217;s renewable push reduces emissions and sets a benchmark for sustainable tech.</p><h4>4. <strong>AI-Driven Energy Optimization: DeepMind&#8217;s Data Center Efficiency</strong></h4><p>Artificial intelligence is lending a hand to sustainability. Google&#8217;s DeepMind AI has been deployed to fine-tune data center cooling, predicting and adjusting energy use in real time. This smart system slashed cooling energy by 40%, blending cutting-edge tech with eco-friendly results.</p><p><strong>Impact</strong>: AI-driven efficiency shows how automation can scale up energy savings, lightening the load on the environment.</p><h4>5. <strong>Green Programming Languages: Rust and Go Lead the Way</strong></h4><p>The tools developers use matter too. Modern programming languages like Rust and Go are built for speed and efficiency, creating leaner software that demands less server power. Compared to older, resource-heavy languages, these options help cut energy use from the ground up.</p><p><strong>Impact</strong>: Efficient code means lower energy consumption across applications, quietly reducing tech&#8217;s environmental toll.</p><div><hr></div><h3><strong>Looking Forward</strong></h3><p>As climate concerns intensify, sustainable software engineering will transition from a competitive advantage to a baseline expectation. Developers who embrace these principles now will be positioned as leaders in an industry increasingly defined by its environmental impact.</p><p>By embedding sustainability into our code and infrastructure, we create a ripple effect that reduces energy demand, inspires innovation, and aligns the tech industry with global environmental goals. The future of software isn't just about what technology can do it's about what it can do responsibly.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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></p>]]></content:encoded></item><item><title><![CDATA[Leveraging Claude Code for SOLID Software]]></title><description><![CDATA[Build your own Uncle Bob using Claude Code]]></description><link>https://devden.raghavan.studio/p/leveraging-claude-code-for-solid</link><guid isPermaLink="false">https://devden.raghavan.studio/p/leveraging-claude-code-for-solid</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Thu, 27 Feb 2025 03:32:47 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!sCqb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fe0cbf1-16cd-4929-be4b-facfc960bf83_1024x608.png" 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_!sCqb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fe0cbf1-16cd-4929-be4b-facfc960bf83_1024x608.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sCqb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fe0cbf1-16cd-4929-be4b-facfc960bf83_1024x608.png 424w, https://substackcdn.com/image/fetch/$s_!sCqb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fe0cbf1-16cd-4929-be4b-facfc960bf83_1024x608.png 848w, https://substackcdn.com/image/fetch/$s_!sCqb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fe0cbf1-16cd-4929-be4b-facfc960bf83_1024x608.png 1272w, https://substackcdn.com/image/fetch/$s_!sCqb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fe0cbf1-16cd-4929-be4b-facfc960bf83_1024x608.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sCqb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fe0cbf1-16cd-4929-be4b-facfc960bf83_1024x608.png" width="728" height="432.25" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8fe0cbf1-16cd-4929-be4b-facfc960bf83_1024x608.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:608,&quot;width&quot;:1024,&quot;resizeWidth&quot;:728,&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_!sCqb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fe0cbf1-16cd-4929-be4b-facfc960bf83_1024x608.png 424w, https://substackcdn.com/image/fetch/$s_!sCqb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fe0cbf1-16cd-4929-be4b-facfc960bf83_1024x608.png 848w, https://substackcdn.com/image/fetch/$s_!sCqb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fe0cbf1-16cd-4929-be4b-facfc960bf83_1024x608.png 1272w, https://substackcdn.com/image/fetch/$s_!sCqb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fe0cbf1-16cd-4929-be4b-facfc960bf83_1024x608.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><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><figcaption class="image-caption">Leveraging Claude Code for SOLID Software</figcaption></figure></div><p>Ever wondered what it&#8217;d be like to have Robert C. Martin (Uncle Bob) himself review your code and nudge you toward cleaner, more SOLID designs? Well, I recently took a trending AI Java library, the Alibaba Spring AI library, and unleashed an AI-powered tool called <strong>Claude Code</strong> on it to do just that. The result? A treasure trove of actionable insights that any software developer can learn from. In this blog post, I&#8217;ll walk you through my approach, dive into the technical details of using Claude Code, and share how it helped me analyze this library with an Uncle Bob-inspired lens. Let&#8217;s get coding!</p><h3><strong>Why Clean Code and SOLID Principles Matter</strong></h3><p>In the fast-paced world of software development, it&#8217;s easy to churn out code that <em>works</em> but ends up a tangled mess down the road. That&#8217;s where Uncle Bob&#8217;s wisdom comes in. His books, <em>Clean Code</em> and <em>Clean Architecture</em>, champion the <strong>SOLID principles</strong>. These aren&#8217;t just buzzwords &#129393;, they&#8217;re battle-tested guidelines for building software that&#8217;s maintainable, testable, and scalable.</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;dcc99de1-67bb-4083-918f-ed3a8451d442&quot;,&quot;caption&quot;:&quot;What are SOLID principles?&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;1. Introduction to SOLID Principles&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:25982244,&quot;name&quot;:&quot;Raghavan Lakshmana&quot;,&quot;bio&quot;:&quot;I write about AI, Productivity, and Coding.&quot;,&quot;photo_url&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/a3a76473-827b-4c7d-95d9-3f78c3ec8301_1280x960.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2022-12-13T13:15:07.696Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F881e6109-a042-48eb-9be2-65b5ef5c2736_960x540.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://devden.raghavan.studio/p/1-introduction-to-solid-principles&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:90382819,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Dev Den&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8fc15c6-a5dc-4232-9a32-4fb1bfa33ebe_1280x1280.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>But applying these principles consistently across a codebase? That&#8217;s tough. Enter <strong>Claude Code</strong>, an AI-driven tool that analyzes your code like a virtual Uncle Bob, spotting architectural and code violations with precision. It even generates Jira tickets to help you prioritize and fix issues. I decided to put it to the test on a real-world project: the Alibaba Spring AI library.</p><h3><strong>The Mission: Clean Up a Trending AI Library</strong></h3><p>I decided to analyze the Spring AI Alibaba library, a <a href="https://github.com/trending/java">Github's trending java project</a> integrating <a href="https://github.com/alibaba/spring-ai-alibaba">Alibaba&#8217;s AI capabilities with Spring</a>. It&#8217;s packed with potential, but like any ambitious codebase, it&#8217;s not immune to architectural slip-ups. </p><p>My goal was simple: unleash Claude Code on it, armed with a prompt inspired by <em>Clean Code</em> and <em>Clean Architecture</em>, and see what Uncle Bob would have to say.</p><p>Here&#8217;s the <strong>prompt</strong> I fed into Claude Code &#129489;&#8205;&#128187;</p><pre><code><em>Analyze the code in the current directory as if you were Robert C. Martin. Apply the principles from Clean Code and Clean Architecture to identify architectural and code violations. For each issue found, create a structured Jira ticket with:

Title: Clear description of the issue
Description: What&#8217;s wrong and why it violates best practices

Story Points: 1-8 based on complexity

Priority: High/Medium/Low

Severity: Critical/Major/Minor/Trivial

Recommendation: Specific steps to fix the issue
Focus on the most critical issues first.

</em></code></pre><p>The output was actionable insights formatted as  tickets eight of them, to be exact. Let&#8217;s break it down and explore how Claude Code turned into my personal code quality enforcer.</p><p><strong>What is Claude Code, Anyway? &#129300;</strong></p><p><a href="https://docs.anthropic.com/en/docs/agents-and-tools/claude-code/overview">Claude Code</a> isn&#8217;t a standalone tool, it&#8217;s what happens when you leverage Anthropic&#8217;s Claude model (or a similar AI) to analyze and critique codebases. Think of it as a super-smart pair programmer who&#8217;s read every page of <em>Clean Code</em> and isn&#8217;t afraid to call you out. In my case, I ran this prompt through a setup that could process the Spring AI Alibaba repo, likely using a combination of Claude&#8217;s natural language processing and some custom scripting to parse the Java files and structure the output.</p><p>The beauty of Claude Code lies in its ability to not just spot issues but explain <em>why</em> they&#8217;re problems and <em>how</em> to fix them all in a way that feels human and practical. It&#8217;s a technical architect who is working on your command.</p><p><strong>How to setup Claude Code ? &#129489;&#8205;&#128187;</strong></p><p>It is pretty straightforward,</p><ul><li><p>Checkout the code base <a href="https://github.com/anthropics/claude-code">https://github.com/anthropics/claude-code</a></p></li><li><p>Install the packages <em>npm install -g @anthropic-ai/claude-code</em></p></li></ul><p>No fancy setup required&#8212;just a codebase and a goal.</p><p><strong>How Claude Code Works ? &#128300;</strong></p><p>So, what&#8217;s under the hood? Claude Code is an AI-powered analysis tool that:</p><ul><li><p><strong>Parses Code</strong>: It reads your Java files, understanding structure and logic.</p></li><li><p><strong>Applies Rules</strong>: Using principles like SOLID and Clean Code, it flags violations based on your prompt.</p></li><li><p><strong>Generates Output</strong>: It structures findings into actionable tickets, tailored to your needs (e.g., Jira format). </p><p></p><p>Here is the Claude Code in action&#128071; <em>(recommended speed 2x)</em></p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;a040a0bf-42cf-4fcd-a98e-c24913479e2c&quot;,&quot;duration&quot;:null}"></div></li></ul><p>In my case, I fed it a custom prompt to emulate Uncle Bob&#8217;s perspective. The AI then analyzed the Alibaba Spring AI library, cross-referencing its code against best practices. The result was a detailed, prioritized list of issues something a manual review might take hours (or days) to achieve.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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://devden.raghavan.studio/subscribe?"><span>Subscribe now</span></a></p><p></p><h3><strong>The Findings: Uncle Bob&#8217;s Sprint</strong></h3><p>Claude Code didn&#8217;t hold back. It churned out eight tickets, each targeting a specific violation of clean coding practices. Here&#8217;s a rundown of the highlights and trust me, these are gold for any dev looking to level up their craft.</p><p><strong>Key Findings: What Claude Code Uncovered</strong></p><p>Claude Code didn&#8217;t hold back&#8212;it flagged eight issues, each tied to Clean Code or SOLID principles. Here&#8217;s a rundown of what it found, why it matters, and how to fix it:</p><p><strong>1. Refactor DashScopeChatModel to Follow Single Responsibility Principle</strong></p><ul><li><p><strong>What&#8217;s Wrong</strong>: The DashScopeChatModel class is a beast&#8212;over 500 lines long, juggling request creation, response mapping, media conversion, and tool/function calls. This violates the <strong>Single Responsibility Principle (SRP)</strong>.</p></li><li><p><strong>Severity</strong>: Critical | <strong>Priority</strong>: High | <strong>Story Points</strong>: 8</p></li><li><p><strong>Why It Matters</strong>: A class with too many jobs is a maintenance nightmare&#8212;hard to test, debug, or extend.</p></li><li><p><strong>Fix</strong>: Split it into smaller classes, each with one clear responsibility (e.g., stream handling, tool calling). Use a facade pattern to keep the public API intact.</p></li></ul><p><strong>2. Implement Consistent Error Handling Strategy</strong></p><ul><li><p><strong>What&#8217;s Wrong</strong>: Error handling is a mixed bag&#8212;some methods swallow exceptions, others lack a standard pattern. No consistent exception hierarchy exists.</p></li><li><p><strong>Severity</strong>: Major | <strong>Priority</strong>: High | <strong>Story Points</strong>: 5</p></li><li><p><strong>Why It Matters</strong>: Inconsistent error handling leads to unpredictable bugs and hours lost in debugging.</p></li><li><p><strong>Fix</strong>: Create a unified exception hierarchy, wrap exceptions to preserve stack traces, and standardize error codes across the codebase.</p></li></ul><p><strong>3. Reduce Excessive Fields in DashScopeChatOptions</strong></p><ul><li><p><strong>What&#8217;s Wrong</strong>: The DashScopeChatOptions class has over 20 fields, hinting at too many responsibilities and violating <strong>Interface Segregation</strong>.</p></li><li><p><strong>Severity</strong>: Major | <strong>Priority</strong>: Medium | <strong>Story Points</strong>: 5</p></li><li><p><strong>Why It Matters</strong>: Bloated classes mean complex initialization and tighter coupling&#8212;both Clean Code no-nos.</p></li><li><p><strong>Fix</strong>: Use the Composite pattern to group related options into smaller classes (e.g., auth options, model params).</p></li></ul><p><strong>4. Implement Comprehensive Logging Strategy</strong></p><ul><li><p><strong>What&#8217;s Wrong</strong>: Logging is spotty&#8212;limited SLF4J use, inconsistent levels, and no correlation IDs for tracing.</p></li><li><p><strong>Severity</strong>: Major | <strong>Priority</strong>: Medium | <strong>Story Points</strong>: 3</p></li><li><p><strong>Why It Matters</strong>: Weak logging hampers observability, making it tough to troubleshoot issues in production.</p></li><li><p><strong>Fix</strong>: Standardize logging with SLF4J, add correlation IDs, and define exception-logging patterns.</p></li></ul><p><strong>5. Extract Hardcoded Configuration</strong></p><ul><li><p><strong>What&#8217;s Wrong</strong>: Configurations are hardcoded, breaking Clean Architecture&#8217;s configuration principle.</p></li><li><p><strong>Severity</strong>: Minor | <strong>Priority</strong>: Medium | <strong>Story Points</strong>: 2</p></li><li><p><strong>Why It Matters</strong>: Hardcoding limits flexibility across environments (dev, prod, etc.).</p></li><li><p><strong>Fix</strong>: Move configs to properties files or classes and use a configuration provider pattern.</p></li></ul><p><strong>6. Fix Incomplete Test Coverage in Advisor Components</strong></p><ul><li><p><strong>What&#8217;s Wrong</strong>: Files like DocumentRetrievalAdvisorTests.java are empty&#8212;no tests for critical components.</p></li><li><p><strong>Severity</strong>: Major | <strong>Priority</strong>: Medium | <strong>Story Points</strong>: 3</p></li><li><p><strong>Why It Matters</strong>: Missing tests invite regressions and erode confidence in the code.</p></li><li><p><strong>Fix</strong>: Write comprehensive tests, including edge cases, using a Test-Driven Development (TDD) approach.</p></li></ul><p><strong>7. Standardize Naming Conventions</strong></p><ul><li><p><strong>What&#8217;s Wrong</strong>: Naming is all over the place&#8212;mixed abbreviations, inconsistent styles.</p></li><li><p><strong>Severity</strong>: Minor | <strong>Priority</strong>: Low | <strong>Story Points</strong>: 2</p></li><li><p><strong>Why It Matters</strong>: Inconsistent naming slows down code comprehension, clashing with Clean Code&#8217;s readability focus.</p></li><li><p><strong>Fix</strong>: Define naming rules and refactor accordingly.</p></li></ul><p><strong>8. Break Down Oversized DashScopeApi Class</strong></p><ul><li><p><strong>What&#8217;s Wrong</strong>: The DashScopeApi class is a 1400-line monster, violating SRP with too many duties.</p></li><li><p><strong>Severity</strong>: Critical | <strong>Priority</strong>: High | <strong>Story Points</strong>: 8</p></li><li><p><strong>Why It Matters</strong>: Oversized classes are maintenance sinks and bug magnets.</p></li><li><p><strong>Fix</strong>: Split it into domain-specific API clients and extract shared HTTP logic using the Template Method pattern.</p></li></ul><p><strong>Why This Matters to You</strong></p><p>Fixing these issues isn&#8217;t just about cleaning up code&#8212;it&#8217;s about building software that lasts. Adhering to SOLID principles and Clean Code practices makes your codebase:</p><ul><li><p><strong>Easier to Maintain</strong>: Smaller, focused classes are simpler to update.</p></li><li><p><strong>More Testable</strong>: Clear responsibilities mean straightforward unit tests.</p></li><li><p><strong>Scalable</strong>: SOLID designs adapt to change without breaking everything.</p></li></ul><p>Claude Code shines here by automating the grunt work. It&#8217;s like having an expert reviewer who spots issues you might miss in the daily grind. They&#8217;re a roadmap to better code, complete with priorities and effort estimates.</p><h2><strong>Technical Takeaways for Devs</strong></h2><p>So, how does Claude Code pull this off? While I don&#8217;t have the exact internals ( Anthropic&#8217;s magic sauce is, well, magical), here&#8217;s what&#8217;s likely happening under the hood:</p><ol><li><p><strong>Code Parsing:</strong> The tool scans the Java files, building an abstract syntax tree (AST) or similar representation to understand structure and dependencies.</p></li><li><p><strong>Pattern Matching:</strong> Based on the prompt, it applies heuristics based on <em>Clean Code</em> and <em>Clean Architecture</em> think line counts, method complexity, or coupling metrics to flag violations.</p></li><li><p><strong>Natural Language Generation:</strong> Using Claude&#8217;s language skills, it crafts human-readable tickets, weaving in Uncle Bob&#8217;s principles like SRP or dependency inversion.</p></li><li><p><strong>Scoring &amp; Prioritization:</strong> It assigns story points and severity based on impact and effort, likely using a pre-trained model fine-tuned on software engineering data.</p></li></ol><p>This approach is replicable with some elbow grease. Pair a code analysis tool (like SonarQube) with an AI model (Claude, GPT, or even Grok!), and you&#8217;ve got a DIY Claude Code setup. Feed it a prompt like mine, tweak the output format, and watch the tickets roll in.</p><h2><strong>Why This Matters</strong></h2><p>Using Claude Code on Spring AI Alibaba wasn&#8217;t just a fun experiment&#8212;it&#8217;s a glimpse into the future of software development. AI isn&#8217;t here to replace us; it&#8217;s here to amplify us. Imagine running this on your own project: instant feedback, structured tasks, and a push toward SOLID, maintainable code. It&#8217;s like having Uncle Bob on speed dial, minus the coffee-stained book.</p><p>For the Spring AI Alibaba maintainers, these tickets could kickstart a refactor sprint. And for the broader dev community, it&#8217;s a reminder: clean code isn&#8217;t optional&#8212;it&#8217;s the foundation of scalable, reliable software.</p><p><strong>Wrapping Up</strong></p><p>My adventure with Claude Code and Spring AI Alibaba was equal parts humbling and inspiring. After all my wild experiments with Claude Code, my credits went up in smoke, and Anthropic just disabled my API access &#129297; &#128557;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!M7l8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c19f73e-241b-4b0c-873d-a554942f65f5_1464x1278.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!M7l8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c19f73e-241b-4b0c-873d-a554942f65f5_1464x1278.png 424w, https://substackcdn.com/image/fetch/$s_!M7l8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c19f73e-241b-4b0c-873d-a554942f65f5_1464x1278.png 848w, https://substackcdn.com/image/fetch/$s_!M7l8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c19f73e-241b-4b0c-873d-a554942f65f5_1464x1278.png 1272w, https://substackcdn.com/image/fetch/$s_!M7l8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c19f73e-241b-4b0c-873d-a554942f65f5_1464x1278.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!M7l8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c19f73e-241b-4b0c-873d-a554942f65f5_1464x1278.png" width="1456" height="1271" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8c19f73e-241b-4b0c-873d-a554942f65f5_1464x1278.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1271,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:175004,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://devden.raghavan.studio/i/157981364?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c19f73e-241b-4b0c-873d-a554942f65f5_1464x1278.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!M7l8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c19f73e-241b-4b0c-873d-a554942f65f5_1464x1278.png 424w, https://substackcdn.com/image/fetch/$s_!M7l8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c19f73e-241b-4b0c-873d-a554942f65f5_1464x1278.png 848w, https://substackcdn.com/image/fetch/$s_!M7l8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c19f73e-241b-4b0c-873d-a554942f65f5_1464x1278.png 1272w, https://substackcdn.com/image/fetch/$s_!M7l8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c19f73e-241b-4b0c-873d-a554942f65f5_1464x1278.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>If you&#8217;re a developer itching to polish your codebase or just curious about AI-driven reviews give this approach a shot. Clone a trending repo, fire up Claude Code, and let Uncle Bob guide you to cleaner, better software. Also make sure you have enough credits to burn :) </p><p>I believe software engineering is an art and any tooling can only make an artist's life more productive.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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[Model Poisoning and Lessons from Black Hat SEO]]></title><description><![CDATA[Protecting LLMs from Attacks Inspired by Black Hat SEO]]></description><link>https://devden.raghavan.studio/p/model-poisoning-and-lessons-from</link><guid isPermaLink="false">https://devden.raghavan.studio/p/model-poisoning-and-lessons-from</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Thu, 13 Feb 2025 14:15:59 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!BUXV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b250d5d-dee9-486c-a127-645d216ee70f_1792x1024.webp" 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_!BUXV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b250d5d-dee9-486c-a127-645d216ee70f_1792x1024.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BUXV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b250d5d-dee9-486c-a127-645d216ee70f_1792x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!BUXV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b250d5d-dee9-486c-a127-645d216ee70f_1792x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!BUXV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b250d5d-dee9-486c-a127-645d216ee70f_1792x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!BUXV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b250d5d-dee9-486c-a127-645d216ee70f_1792x1024.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BUXV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b250d5d-dee9-486c-a127-645d216ee70f_1792x1024.webp" width="1456" height="832" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0b250d5d-dee9-486c-a127-645d216ee70f_1792x1024.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:832,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:715348,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&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_!BUXV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b250d5d-dee9-486c-a127-645d216ee70f_1792x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!BUXV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b250d5d-dee9-486c-a127-645d216ee70f_1792x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!BUXV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b250d5d-dee9-486c-a127-645d216ee70f_1792x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!BUXV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b250d5d-dee9-486c-a127-645d216ee70f_1792x1024.webp 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>Large language models (LLMs) have emerged as powerful tools with the potential to revolutionize various aspects of our lives. These models, trained on massive datasets of text and code, can generate human-quality text, translate languages, write different kinds of creative content, and answer your questions in an informative way <sup>1</sup>. However, this rapid advancement also brings forth new challenges, particularly in ensuring the security and integrity of these models. One such challenge is LLM model poisoning, a concerning threat that can manipulate these models to produce harmful or misleading outputs. The consequences of model poisoning can be far-reaching, ranging from generating biased or offensive content to spreading misinformation or even compromising the model's overall functionality <sup>2</sup>.</p><h2>Black Hat SEO</h2><p>To understand the gravity of this threat and explore potential mitigation strategies, we can draw valuable lessons from the era of Search Engine Result Pages (SERPs) and the battle against black hat SEO techniques. Black hat SEO refers to practices that violate search engine guidelines, used to get a site ranking higher in search results <sup>3</sup>. These tactics don't solve for the searcher and often end in a penalty from search engines. Black hat techniques include keyword stuffing, cloaking, and using private link networks. While these techniques might not always directly harm user experience, they still violate search engine guidelines <sup>4</sup>.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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><h2><strong>How LLMs are Built and Trained</strong></h2><p>Before delving into the specifics of model poisoning and the parallels with black hat SEO, it's essential to understand how LLMs are built and trained. LLMs are typically based on deep learning architectures, particularly transformer models, which excel at processing sequential data like text. The training process involves feeding the model with massive amounts of text data, allowing it to learn patterns, grammar, and relationships between words and concepts. It's crucial to understand that an LLM's knowledge and capabilities are entirely dependent on the data it's trained on, making it vulnerable to manipulation if the training data is compromised.</p><p>Here's a simplified overview of the LLM training process:</p><ol><li><p><strong>Data Collection:</strong> Gathering a vast and diverse dataset of text and code from various sources, such as books, articles, websites, and code repositories.</p></li><li><p><strong>Data Preprocessing:</strong> Cleaning and preparing the data by removing irrelevant information, formatting it consistently, and tokenizing it into smaller units that the model can process.</p></li><li><p><strong>Model Architecture:</strong> Selecting a suitable neural network architecture, often a transformer model, which can efficiently handle the complexities of language.</p></li><li><p><strong>Training:</strong> Feeding the preprocessed data to the model and adjusting its parameters to minimize errors in predicting the next word in a sequence or generating relevant responses.</p></li><li><p><strong>Evaluation and Fine-tuning:</strong> Assessing the model's performance on various tasks and fine-tuning it to improve accuracy and address specific requirements.</p></li></ol><h2><strong>Ways an LLM Can Be Poisoned</strong></h2><p>LLM model poisoning can occur at various stages of the model's life cycle, from data collection and preprocessing to training and fine-tuning. Even a small amount of poisoned data can dramatically alter the behavior of an LLM and potentially lead to catastrophic consequences <sup>5</sup>. Here are some common ways an LLM can be poisoned:</p><h3><strong>Data Poisoning</strong></h3><p>Injecting malicious or misleading data into the training dataset. This can involve inserting biased examples, manipulating labels, or introducing backdoors that trigger specific responses <sup>6</sup>.</p><h3><strong>Adversarial Examples</strong></h3><p>Crafting input examples that are specifically designed to mislead the model or trigger unintended behavior. These examples may appear normal to humans but can exploit vulnerabilities in the model's decision-making process <sup>8</sup>.</p><h3><strong>Backdoor Attacks</strong></h3><p>Introducing hidden triggers or backdoors into the model that can be activated by specific inputs or conditions. This allows attackers to manipulate the model's output without affecting its performance on other tasks <sup>6</sup>.</p><h3><strong>Model Editing</strong></h3><p>Directly modifying the model's parameters or weights to alter its behavior. This can be achieved through techniques like Rank One Model Editing (ROME), which allows for targeted manipulation of the model's responses <sup>10</sup>.</p><h3><strong>Jailbreaking</strong></h3><p>Attackers can attempt to "jailbreak" an LLM by bypassing safety measures and manipulating the model's behavior to produce harmful or undesirable outputs. This can involve exploiting vulnerabilities in the model's training or fine-tuning process <sup>6</sup>.</p><h3><strong>Sleeper Agent Behavior</strong></h3><p>Poisoned models can exhibit "sleeper agent" behavior, where they function normally until triggered by specific conditions. This allows attackers to hide malicious behavior and activate it at a later time <sup>2</sup>.</p><h3><strong>Continuous Learning</strong></h3><p>Models that learn continuously are susceptible to poisoning during use. As they interact with new data, attackers can inject malicious examples or manipulate the feedback mechanisms to influence the model's behavior over time <sup>9</sup>.</p><h2><strong>Potential Impacts of LLM Model Poisoning</strong></h2><p>The impacts of LLM model poisoning can be varied and significant. They can range from subtle degradations in performance to complete hijacking of the model's functionality <sup>9</sup>. Some potential impacts include:</p><ul><li><p><strong>Degraded Performance:</strong> Poisoned models may exhibit reduced accuracy, generate biased or offensive responses, or produce nonsensical outputs.</p></li><li><p><strong>Introduction of Vulnerabilities:</strong> Attackers can introduce backdoors or other vulnerabilities that allow them to manipulate the model's behavior or extract sensitive information.</p></li><li><p><strong>Hijacking of the Model:</strong> In extreme cases, attackers can gain complete control of the model and use it for malicious purposes, such as spreading misinformation or launching cyberattacks.</p></li></ul><h2><strong>Lessons from Black Hat SEO</strong></h2><p>The fight against black hat SEO provides valuable insights into the challenges of LLM model poisoning and potential mitigation strategies. Here's a table comparing and contrasting black hat SEO techniques with their corresponding LLM model poisoning techniques</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JzYk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a168185-20e6-4c00-a73a-73c0e03e0e9a_882x445.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JzYk!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a168185-20e6-4c00-a73a-73c0e03e0e9a_882x445.png 424w, https://substackcdn.com/image/fetch/$s_!JzYk!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a168185-20e6-4c00-a73a-73c0e03e0e9a_882x445.png 848w, https://substackcdn.com/image/fetch/$s_!JzYk!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a168185-20e6-4c00-a73a-73c0e03e0e9a_882x445.png 1272w, https://substackcdn.com/image/fetch/$s_!JzYk!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a168185-20e6-4c00-a73a-73c0e03e0e9a_882x445.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JzYk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a168185-20e6-4c00-a73a-73c0e03e0e9a_882x445.png" width="882" height="445" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5a168185-20e6-4c00-a73a-73c0e03e0e9a_882x445.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:445,&quot;width&quot;:882,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:103925,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&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_!JzYk!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a168185-20e6-4c00-a73a-73c0e03e0e9a_882x445.png 424w, https://substackcdn.com/image/fetch/$s_!JzYk!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a168185-20e6-4c00-a73a-73c0e03e0e9a_882x445.png 848w, https://substackcdn.com/image/fetch/$s_!JzYk!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a168185-20e6-4c00-a73a-73c0e03e0e9a_882x445.png 1272w, https://substackcdn.com/image/fetch/$s_!JzYk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a168185-20e6-4c00-a73a-73c0e03e0e9a_882x445.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 Tay chatbot incident serves as a stark example of the potential consequences of LLM model poisoning. Tay, a conversational AI chatbot developed by Microsoft, was manipulated by users to produce offensive and biased outputs, highlighting the vulnerability of LLMs to malicious data and the importance of robust safety measures <sup>9</sup>.</p><h2><strong>Techniques and Strategies to Avoid LLM Model Poisoning</strong></h2><p>Drawing from the lessons of black hat SEO, here are some techniques and strategies that can be employed to avoid LLM model poisoning. It's crucial to emphasize that proactive measures are essential to prevent model poisoning. Security should be incorporated throughout the LLM lifecycle, from data collection to deployment <sup>9</sup>.</p><h3><strong>Data Sanitization and Validation</strong></h3><p>Implement robust data sanitization and validation techniques to identify and remove potentially harmful or misleading data from the training dataset. This can involve using anomaly detection algorithms, statistical analysis, and human review to ensure data quality <sup>9</sup>.</p><h3><strong>Adversarial Training</strong></h3><p>Train the model on adversarial examples to make it more robust against malicious inputs. This involves exposing the model to carefully crafted examples that are designed to mislead it, forcing it to learn more resilient decision boundaries <sup>8</sup>.</p><h3><strong>Backdoor Detection</strong></h3><p>Develop techniques to detect and mitigate backdoor attacks. This can involve analyzing the model's internal representations, monitoring its behavior for suspicious patterns, and employing techniques like differential privacy to protect against targeted manipulation <sup>9</sup>.</p><h3><strong>Model Explainability</strong></h3><p>Enhance model explainability to understand the reasoning behind the model's predictions and identify potential biases or vulnerabilities. This can involve using techniques like attention visualization or saliency maps to understand which parts of the input are influencing the model's output <sup>8</sup>.</p><h3><strong>Secure Development Practices</strong></h3><p>Implement secure development practices throughout the LLM lifecycle, from data collection and model training to deployment and monitoring. This includes using secure coding practices, conducting regular security audits, and establishing a trusted software supply chain <sup>12</sup>.</p><h2><strong>Expert Opinions</strong></h2><p>Experts in the field of LLM development and security emphasize the importance of addressing model poisoning and drawing lessons from past experiences with security threats. They highlight the need for robust data validation, adversarial training, and continuous monitoring to ensure the integrity and trustworthiness of LLMs <sup>6</sup>. They also stress the importance of collaboration between researchers, developers, and policymakers to develop effective solutions and ethical guidelines for LLM security.</p><h2><strong>Ethical Considerations</strong></h2><p>The ethical considerations surrounding LLM model poisoning are crucial. As LLMs become more prevalent in various applications, it's essential to ensure that they are used responsibly and ethically. This includes:</p><ul><li><p><strong>Transparency:</strong> Being transparent about the data used to train the model and the potential biases it may contain.</p></li><li><p><strong>Accountability:</strong> Establishing clear lines of responsibility for the development and deployment of LLMs.</p></li><li><p><strong>Fairness:</strong> Ensuring that LLMs are not used to discriminate against or harm individuals or groups.</p></li><li><p><strong>Privacy:</strong> Protecting the privacy of individuals whose data is used to train or interact with LLMs <sup>15</sup>.</p></li></ul><p>The potential for LLMs to be used for malicious purposes, such as spreading misinformation or manipulating individuals, raises serious ethical concerns. It's crucial to develop safeguards and guidelines to prevent the misuse of these powerful technologies and ensure that they are used for the benefit of society <sup>16</sup>.</p><h2><strong>Conclusion</strong></h2><p>LLM model poisoning is a serious threat that can undermine the trustworthiness and reliability of these powerful tools. By drawing lessons from the fight against black hat SEO, we can develop effective strategies to mitigate this threat and ensure that LLMs are used responsibly and ethically. This requires a multi-faceted approach that involves data sanitization, adversarial training, backdoor detection, model explainability, and secure development practices. As LLMs continue to evolve and become more integrated into our lives, it's crucial to prioritize their security and integrity to prevent malicious actors from exploiting them for harmful purposes.</p><p>Moving forward, ongoing research and collaboration are essential to address the evolving challenges of LLM model poisoning. This includes developing new techniques for detecting and mitigating attacks, improving model explainability, and establishing ethical guidelines for LLM development and deployment.</p><h4><strong>Works cited</strong></h4><p>1. Introduction to Large Language Models | Machine Learning - Google for Developers,  <a href="https://developers.google.com/machine-learning/resources/intro-llms">https://developers.google.com/machine-learning/resources/intro-llms</a></p><p>2. Mitigating the threat of data poisoning in LLM models: Techniques, risks, and preventive measures - EnLume, <a href="https://www.enlume.com/blogs/mitigating-the-threat-of-data-poisoning-in-llm-models/">https://www.enlume.com/blogs/mitigating-the-threat-of-data-poisoning-in-llm-models/</a></p><p>3. An Introduction to Black Hat SEO - HubSpot Blog, <a href="https://blog.hubspot.com/marketing/black-hat-seo">https://blog.hubspot.com/marketing/black-hat-seo</a></p><p>4. Black Hat SEO : definition, risks, techniques and examples -  <a href="https://www.keyweo.com/en/seo/glossary/black-hat/">https://www.keyweo.com/en/seo/glossary/black-hat/</a></p><p>5. PoisonBench : Assessing Large Language Model Vulnerability to Data Poisoning - arXiv, <a href="https://arxiv.org/html/2410.08811v1">https://arxiv.org/html/2410.08811v1</a></p><p>6. Persistent Pre-training Poisoning of LLMs - arXiv, <a href="https://arxiv.org/html/2410.13722v1">https://arxiv.org/html/2410.13722v1</a></p><p>7. Scaling Laws for Data Poisoning in LLMs - arXiv, <a href="https://arxiv.org/html/2408.02946v1">https://arxiv.org/html/2408.02946v1</a></p><p>8. Securing Large Language Models: Threats, Vulnerabilities and Responsible Practices, <a href="https://arxiv.org/html/2403.12503v1">https://arxiv.org/html/2403.12503v1</a></p><p>9. Data Poisoning: a threat to LLM's Integrity and Security - RiskInsight, <a href="https://www.riskinsight-wavestone.com/en/2024/10/data-poisoning-a-threat-to-llms-integrity-and-security/">https://www.riskinsight-wavestone.com/en/2024/10/data-poisoning-a-threat-to-llms-integrity-and-security/</a></p><p>10. Exposing Vulnerabilities in Clinical LLMs Through Data Poisoning Attacks: Case Study in Breast Cancer - PMC, <a href="https://pmc.ncbi.nlm.nih.gov/articles/PMC10984073/">https://pmc.ncbi.nlm.nih.gov/articles/PMC10984073/</a></p><p>11. Large language model training: how three training phases shape LLMs | Snorkel AI,  <a href="https://snorkel.ai/blog/large-language-model-training-three-phases-shape-llm-training/">https://snorkel.ai/blog/large-language-model-training-three-phases-shape-llm-training/</a></p><p>12. Security Threats Facing LLM Applications and 5 Ways to Mitigate Them | Tripwire,  <a href="https://www.tripwire.com/state-of-security/security-threats-facing-llm-applications-and-ways-mitigate-them">https://www.tripwire.com/state-of-security/security-threats-facing-llm-applications-and-ways-mitigate-them</a></p><p>13. Data Poisoning in LLMs: Jailbreak-Tuning and Scaling Trends - arXiv,  <a href="https://arxiv.org/html/2408.02946v5">https://arxiv.org/html/2408.02946v5</a></p><p>14. GPT-4o Guardrails Gone: Data Poisoning &amp; Jailbreak-Tuning | FAR.AI, <a href="https://far.ai/post/2024-10-poisoning/">https://far.ai/post/2024-10-poisoning/</a></p><p>15. Ethical Considerations and Fundamental Principles of Large Language Models in Medical Education: Viewpoint - PMC,  <a href="https://pmc.ncbi.nlm.nih.gov/articles/PMC11327620/">https://pmc.ncbi.nlm.nih.gov/articles/PMC11327620/</a></p><p>16. LLMs: The Dark Side of Large Language Models Part 2 - HiddenLayer,  <a href="https://hiddenlayer.com/innovation-hub/the-dark-side-of-large-language-models-part-2/">https://hiddenlayer.com/innovation-hub/the-dark-side-of-large-language-models-part-2/</a></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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[Brain Rot and Its Remedy]]></title><description><![CDATA[Long-Form Content]]></description><link>https://devden.raghavan.studio/p/brain-rot-and-its-remedy</link><guid isPermaLink="false">https://devden.raghavan.studio/p/brain-rot-and-its-remedy</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Sun, 15 Dec 2024 13:02:56 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!kvVZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ddc6907-5683-42e6-adc7-32452c22adf0_1792x1024.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><strong>Oxford Word of the Year 2024</strong>: <em>Brain Rot</em> (<a href="https://corp.oup.com/word-of-the-year/">source</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_!kvVZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ddc6907-5683-42e6-adc7-32452c22adf0_1792x1024.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kvVZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ddc6907-5683-42e6-adc7-32452c22adf0_1792x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!kvVZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ddc6907-5683-42e6-adc7-32452c22adf0_1792x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!kvVZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ddc6907-5683-42e6-adc7-32452c22adf0_1792x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!kvVZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ddc6907-5683-42e6-adc7-32452c22adf0_1792x1024.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kvVZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ddc6907-5683-42e6-adc7-32452c22adf0_1792x1024.webp" width="1456" height="832" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3ddc6907-5683-42e6-adc7-32452c22adf0_1792x1024.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:832,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:798368,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&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_!kvVZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ddc6907-5683-42e6-adc7-32452c22adf0_1792x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!kvVZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ddc6907-5683-42e6-adc7-32452c22adf0_1792x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!kvVZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ddc6907-5683-42e6-adc7-32452c22adf0_1792x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!kvVZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ddc6907-5683-42e6-adc7-32452c22adf0_1792x1024.webp 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>Brain Rot is not a medical term, yet. Think of it as the creeping numbness of the mind caused by an endless stream of 15-second videos and snack-sized social media posts. The human brain was originally designed to handle stories in a continuous, interconnected chain, like a living linked-list. However, with the explosion of reels, shorts, and other tiny capsule media, that chain is breaking down.</p><div><hr></div><h3>What Is Brain Rot?</h3><p>Imagine your brain as a pattern-matching machine. Each snippet of these discrete unrelated short-form content like video clip, social post, meme, lives separately like puzzle pieces that never quite fit together. Your brain still tries to find order, forging shaky links between fragments that should never be connected in the first place. Soon, these rapid jolts of random let you brain give up its capability for creative thinking and true problem-solving.</p><p><em>Brain Rot is the slow decay of our ability to form novel ideas and coherent thoughts, because of disjointed short-form content.</em></p><div><hr></div><h3>How Did We Get Here</h3><p>It didn&#8217;t happen overnight. Consider the modern media funnel,</p><p>1. <strong>Advertisers</strong>: Their lifeblood is attention. More eyeballs equals bigger brand imprint.</p><p>2. <strong>Creators</strong>: Hungry for exposure, they cater to short attention spans to rack up likes, follows, and monetization metrics.</p><p>3. <strong>Consumers</strong>: Ironically the largest group but the lowest in power. They supply their most valuable asset - time, in exchange of a "dose" of entertainment.</p><p>The Media consumption cycle is like a well-oiled drug cartel. Massive corporate interests push doses of micro-content, hooking consumers on dopamine hits. Decades of marketing and technology have locked us into this feedback loop. Even if one platform tried to clean up its act, another would simply flood the market with more addictive bursts of content.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fCXy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd644f-81fd-4fbe-a489-9cb860c5417e_1080x762.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fCXy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd644f-81fd-4fbe-a489-9cb860c5417e_1080x762.png 424w, https://substackcdn.com/image/fetch/$s_!fCXy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd644f-81fd-4fbe-a489-9cb860c5417e_1080x762.png 848w, https://substackcdn.com/image/fetch/$s_!fCXy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd644f-81fd-4fbe-a489-9cb860c5417e_1080x762.png 1272w, https://substackcdn.com/image/fetch/$s_!fCXy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd644f-81fd-4fbe-a489-9cb860c5417e_1080x762.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fCXy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd644f-81fd-4fbe-a489-9cb860c5417e_1080x762.png" width="1080" height="762" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5fcd644f-81fd-4fbe-a489-9cb860c5417e_1080x762.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:762,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1468705,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&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_!fCXy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd644f-81fd-4fbe-a489-9cb860c5417e_1080x762.png 424w, https://substackcdn.com/image/fetch/$s_!fCXy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd644f-81fd-4fbe-a489-9cb860c5417e_1080x762.png 848w, https://substackcdn.com/image/fetch/$s_!fCXy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd644f-81fd-4fbe-a489-9cb860c5417e_1080x762.png 1272w, https://substackcdn.com/image/fetch/$s_!fCXy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd644f-81fd-4fbe-a489-9cb860c5417e_1080x762.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><figcaption class="image-caption">Credit: Frank Ockenfels/AMC</figcaption></figure></div><p>Our ancestors thrived by exchanging critical knowledge&#8212;like where to find food or how to avoid predators&#8212;and sharing it quickly gave them a survival edge. Over centuries, the distribution of information has only accelerated: from word-of-mouth to the printing press, then radio, TV, computers, and now hyper-mobile social feeds. Innovations in technology drove globalization, which in turn fueled the rise of capital-driven models. Each iteration found new ways to monetize our attention.</p><div><hr></div><h3>Is There a Way Out?</h3><p><em><strong>Yes, it&#8217;s not a one-way door</strong></em>. The most astounding feature of the human brain is its plasticity. If haphazard, bite-sized content got us into this mess, we can reverse the damage by consuming more cohesive, interconnected content.</p><div><hr></div><h3>Long-Form Content</h3><p>Think of long-form content as deliberate &#8220;extended play&#8221; for the mind. Rather than scattering your focus, it pulls you into a deeper storyline or argument, challenging you to maintain attention and build more intricate patterns in your mental landscape. Examples include:</p><ul><li><p><strong>Books</strong> that span hundreds of pages</p></li><li><p><strong>Podcasts</strong> lasting 45 minutes or more</p></li><li><p><strong>Essays</strong> or articles that exceed 1,000 words</p></li><li><p><strong>Documentaries</strong> with comprehensive, in-depth coverage of a topic</p></li></ul><p>These formats don&#8217;t just feed you fragments. They help you piece together a richer tapestry of understanding, training your brain to think more holistically and creatively.</p><div><hr></div><h3>Why Long-Form Content a Remedy?</h3><p>Naturally human mind sets up an intent when investing an extended period of time over a single narrative. By engaging with a detailed book, an in-depth documentary, or a lengthy podcast&#8212;we train our minds to form richer patterns and deeper insights. Instead of processing fragmented snippets, we experience ideas within a broader context, building stronger mental links and improving comprehension. Long-form content fosters our ability to focus and think critically.   This sustained, coherent engagement effectively restores our capacity for reflection, creativity, and focused thought.</p><p>If you are still not convinced, you should read this tweet from Andrej Karpathy, </p><p><a href="https://x.com/karpathy/status/1756380066580455557">https://x.com/karpathy/status/1756380066580455557</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_!qsLT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fa1077e-700f-4654-9656-15159235ad0d_1164x698.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qsLT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fa1077e-700f-4654-9656-15159235ad0d_1164x698.png 424w, https://substackcdn.com/image/fetch/$s_!qsLT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fa1077e-700f-4654-9656-15159235ad0d_1164x698.png 848w, https://substackcdn.com/image/fetch/$s_!qsLT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fa1077e-700f-4654-9656-15159235ad0d_1164x698.png 1272w, https://substackcdn.com/image/fetch/$s_!qsLT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fa1077e-700f-4654-9656-15159235ad0d_1164x698.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qsLT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fa1077e-700f-4654-9656-15159235ad0d_1164x698.png" width="1164" height="698" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9fa1077e-700f-4654-9656-15159235ad0d_1164x698.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:698,&quot;width&quot;:1164,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:206834,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&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_!qsLT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fa1077e-700f-4654-9656-15159235ad0d_1164x698.png 424w, https://substackcdn.com/image/fetch/$s_!qsLT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fa1077e-700f-4654-9656-15159235ad0d_1164x698.png 848w, https://substackcdn.com/image/fetch/$s_!qsLT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fa1077e-700f-4654-9656-15159235ad0d_1164x698.png 1272w, https://substackcdn.com/image/fetch/$s_!qsLT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fa1077e-700f-4654-9656-15159235ad0d_1164x698.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><h3>Practical Steps to Shake Off Brain Rot</h3><p>1. <strong>Set a Content Diet</strong>: Gradually limit your daily dose of shorts and reels.</p><p>2. <strong>Schedule Long-Form Sessions</strong>: Dedicate time for reading a chapter of a book or listening to a podcast episode without interruption.</p><p>3. <strong>Reflect</strong>: After consuming long-form content, jot down takeaways or discuss them with someone. This further cements your ability to retain and apply information.</p><p>4. <strong>Find Engaging Formats</strong>: Pick topics you genuinely love&#8212;be it history, science, or self-development&#8212;to ease your transition away from shallow scrolling.</p><p>Remember, the goal isn&#8217;t to cut yourself off from all short-form media. Instead, it&#8217;s about recognizing how these digital &#8220;snacks&#8221; warp your thinking&#8212;and taking conscious steps to enrich your mental diet.</p><div><hr></div><h3>Balancing Short and Long-Form Consumption</h3><p>While long-form content has its benefits, it's important to acknowledge that short-form content isn't universally bad for brain health. It can serve purposes like quick information dissemination or can be used in educational contexts to break down complex information into digestible pieces. However, the depth and detail of long-form content might provide more substantial cognitive benefits for memory and critical thinking skills.</p><div><hr></div><h3>Other Tools for Cognitive Resilience</h3><p>1. <strong>Digital Fasting</strong>  Periodically disconnect from screens&#8212;whether for a few hours or an entire weekend. This intentional break resets dopamine levels and gives your brain room to decompress and refocus.</p><p>2. <strong>Intentional Social Media</strong>  Unfollow or mute accounts that don&#8217;t align with your growth. Curate your feeds to sources that provide depth, insight, or genuine educational value.</p><p>3. <strong>Skill Building</strong>  Engage in creative or skill-building activities like coding a side project, painting, playing an instrument to train the brain with sustained focus and practical problem-solving.</p><p>4. <strong>Physical Exercise</strong>  Regular exercise and adequate rest optimize cognitive function. A healthy body fosters a healthier mind better equipped to resist brain rot.</p><p>Combining these tactics with a shift toward longer, more cohesive media consumption can significantly bolster mental agility, creativity, and depth of thought.</p><div><hr></div><h3>Conclusion</h3><p>Brain Rot doesn&#8217;t have to be your fate. Even as attention economies grow more aggressive, you can reclaim your ability to think deeply and originally. By consciously shifting toward long-form content, you train your brain to restore its story-building, pattern-matching genius. So let that stream of 15-second video snack, make room for the kind of content that offers true insight. The result might just be a renewed spark of creativity and a clearer, stronger mind.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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[Prospect Theory]]></title><description><![CDATA[Humans do not interpret a 100$ profit and 100$ loss in the same way. Losing 100$ feels more significant than gaining 100$.]]></description><link>https://devden.raghavan.studio/p/prospect-theory</link><guid isPermaLink="false">https://devden.raghavan.studio/p/prospect-theory</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Mon, 29 Jul 2024 12:02:12 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!jARr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F619dd29f-a981-4c2d-bb64-454f8af47fcb_1154x1118.png" 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_!jARr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F619dd29f-a981-4c2d-bb64-454f8af47fcb_1154x1118.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jARr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F619dd29f-a981-4c2d-bb64-454f8af47fcb_1154x1118.png 424w, https://substackcdn.com/image/fetch/$s_!jARr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F619dd29f-a981-4c2d-bb64-454f8af47fcb_1154x1118.png 848w, https://substackcdn.com/image/fetch/$s_!jARr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F619dd29f-a981-4c2d-bb64-454f8af47fcb_1154x1118.png 1272w, https://substackcdn.com/image/fetch/$s_!jARr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F619dd29f-a981-4c2d-bb64-454f8af47fcb_1154x1118.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jARr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F619dd29f-a981-4c2d-bb64-454f8af47fcb_1154x1118.png" width="1154" height="1118" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/619dd29f-a981-4c2d-bb64-454f8af47fcb_1154x1118.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1118,&quot;width&quot;:1154,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:63297,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!jARr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F619dd29f-a981-4c2d-bb64-454f8af47fcb_1154x1118.png 424w, https://substackcdn.com/image/fetch/$s_!jARr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F619dd29f-a981-4c2d-bb64-454f8af47fcb_1154x1118.png 848w, https://substackcdn.com/image/fetch/$s_!jARr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F619dd29f-a981-4c2d-bb64-454f8af47fcb_1154x1118.png 1272w, https://substackcdn.com/image/fetch/$s_!jARr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F619dd29f-a981-4c2d-bb64-454f8af47fcb_1154x1118.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><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>Humans root for certainty. We forget that we are on top of a rock that rotates, and its physics is not fully understood with high certainty. The quality of every ounce of time on this planet is based on the level of perception toward one&#8217;s economic freedom. The fundamentals of behavioral economics are explained by this theory, invented by Daniel Kahneman, the author of the famous book Thinking Fast and Slow. </p><h3>Essence</h3><p>According to this theory,</p><p><em>Humans do not interpret a 100$ profit and 100$ loss similarly. Losing $100 feels more significant than gaining $100.</em></p><p>There is a huge literature on this, and Kahneman was awarded the Nobel Prize for his work, so I will try to explain to whatever extent I can do in this writing.</p><h3>What is Prospect Theory?</h3><p>Prospect Theory is constructed with two components</p><ol><li><p>Value Function - How people value things</p></li><li><p>Weighting Function - How people deal with probabilities</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qtsk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff480473e-65ab-4939-90a2-623c3fae6dd2_4277x3035.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qtsk!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff480473e-65ab-4939-90a2-623c3fae6dd2_4277x3035.png 424w, https://substackcdn.com/image/fetch/$s_!qtsk!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff480473e-65ab-4939-90a2-623c3fae6dd2_4277x3035.png 848w, https://substackcdn.com/image/fetch/$s_!qtsk!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff480473e-65ab-4939-90a2-623c3fae6dd2_4277x3035.png 1272w, https://substackcdn.com/image/fetch/$s_!qtsk!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff480473e-65ab-4939-90a2-623c3fae6dd2_4277x3035.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qtsk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff480473e-65ab-4939-90a2-623c3fae6dd2_4277x3035.png" width="1456" height="1033" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f480473e-65ab-4939-90a2-623c3fae6dd2_4277x3035.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1033,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:478461,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&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_!qtsk!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff480473e-65ab-4939-90a2-623c3fae6dd2_4277x3035.png 424w, https://substackcdn.com/image/fetch/$s_!qtsk!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff480473e-65ab-4939-90a2-623c3fae6dd2_4277x3035.png 848w, https://substackcdn.com/image/fetch/$s_!qtsk!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff480473e-65ab-4939-90a2-623c3fae6dd2_4277x3035.png 1272w, https://substackcdn.com/image/fetch/$s_!qtsk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff480473e-65ab-4939-90a2-623c3fae6dd2_4277x3035.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>To better understand prospect theory, we should start from the center of this graph, the Kink.</p><h3>Kink </h3><p>A <strong>psychological reference point</strong> from where you start measuring the economic value of anything. It can be today's wealth you possess, or it can be something else by which you frame the axis of comparison for any financial decision you make.</p><p>From a business perspective, we can exploit this point to sell something. Identify the small reference point that may spook people if there are any tiny changes to that point. Start selling something to ensure their safety around that reference point. A good example is insurance policies. People may purchase insurance to avoid the pain of potentially large losses, even if the probability of such a loss is small.</p><p><em>Fun Fact: Records exist that people purchased funeral insurance in ancient Rome </em>&#128514;</p><h4>Diminishing Marginal Utility</h4><p>As gains increase, the additional value or satisfaction (utility) derived from each additional unit of gain decreases. This is known as diminishing marginal utility.</p><p>For example, gaining $100 when you have nothing feels more significant than gaining $100 when you already have $10,000.</p><h4>Diminishing Sensitivity</h4><p>As losses increase, each additional loss unit is perceived with less intensity. This means that the first loss hurts more than subsequent losses of the same size.</p><p>For example, losing the first $100 feels much worse than losing another $100 after already losing $1,000.</p><h3>Weighting Function</h3><p>You can tell someone the probability of something, but they can not fully comprehend it. Weighting function measures <strong>how people psychologically think about probabilities</strong>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FxSf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F923808cc-8238-410e-ae09-d750ead02b3b_4119x2687.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FxSf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F923808cc-8238-410e-ae09-d750ead02b3b_4119x2687.png 424w, https://substackcdn.com/image/fetch/$s_!FxSf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F923808cc-8238-410e-ae09-d750ead02b3b_4119x2687.png 848w, https://substackcdn.com/image/fetch/$s_!FxSf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F923808cc-8238-410e-ae09-d750ead02b3b_4119x2687.png 1272w, https://substackcdn.com/image/fetch/$s_!FxSf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F923808cc-8238-410e-ae09-d750ead02b3b_4119x2687.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FxSf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F923808cc-8238-410e-ae09-d750ead02b3b_4119x2687.png" width="1456" height="950" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/923808cc-8238-410e-ae09-d750ead02b3b_4119x2687.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:950,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:331437,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&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_!FxSf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F923808cc-8238-410e-ae09-d750ead02b3b_4119x2687.png 424w, https://substackcdn.com/image/fetch/$s_!FxSf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F923808cc-8238-410e-ae09-d750ead02b3b_4119x2687.png 848w, https://substackcdn.com/image/fetch/$s_!FxSf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F923808cc-8238-410e-ae09-d750ead02b3b_4119x2687.png 1272w, https://substackcdn.com/image/fetch/$s_!FxSf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F923808cc-8238-410e-ae09-d750ead02b3b_4119x2687.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>Humans will round to zero (impossible) for events with very low probabilities and  round to one (certain) for events with high probabilities. The general population does not think in a continuum of probabilities. </p><p>If people decide not to round a probability to zero or one, they exaggerate the difference between zero and one. From a business perspective, this is an easily exploitable crowd. If you get into an Airplane, the probability of you dying in a flight crash is something like 1 in 11 million, so most will write it off to zero, and there will be a section of the crowd who want some certainty in case of such havoc. </p><p>Insurance vendors in the 1950s and 1960s installed vending machines right at the flight boarding gates to ensure that one flight you will board.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!R8Sp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff88063b3-44b2-4ce3-b686-420477c1a045_675x900.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!R8Sp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff88063b3-44b2-4ce3-b686-420477c1a045_675x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!R8Sp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff88063b3-44b2-4ce3-b686-420477c1a045_675x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!R8Sp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff88063b3-44b2-4ce3-b686-420477c1a045_675x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!R8Sp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff88063b3-44b2-4ce3-b686-420477c1a045_675x900.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!R8Sp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff88063b3-44b2-4ce3-b686-420477c1a045_675x900.jpeg" width="675" height="900" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f88063b3-44b2-4ce3-b686-420477c1a045_675x900.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:900,&quot;width&quot;:675,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:133157,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&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_!R8Sp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff88063b3-44b2-4ce3-b686-420477c1a045_675x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!R8Sp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff88063b3-44b2-4ce3-b686-420477c1a045_675x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!R8Sp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff88063b3-44b2-4ce3-b686-420477c1a045_675x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!R8Sp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff88063b3-44b2-4ce3-b686-420477c1a045_675x900.jpeg 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>Eventually, people will become aware of these sales tactics, and such businesses will slowly disappear. Prospect theory explains a lot of things that go on in behavioral finance but not everything.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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><h3>Contrarian theories</h3><p>Gerd Gigerenzer has strongly criticized Daniel Kahneman, arguing that heuristics should not lead us to believe that human thinking is biased. Instead, Gerd believes that we should think of rationality as an adaptive tool inconsistent with the rules of logic.</p>]]></content:encoded></item><item><title><![CDATA[Entropy - The Hidden Force Shaping Your Productivity]]></title><description><![CDATA[Harnessing Habits to Combat the Creep of Disorder]]></description><link>https://devden.raghavan.studio/p/entropy-the-hidden-force-shaping</link><guid isPermaLink="false">https://devden.raghavan.studio/p/entropy-the-hidden-force-shaping</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Sun, 28 Apr 2024 12:27:53 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!QGac!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883eb99a-b981-432b-b410-4088cc534206_1024x1024.png" 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_!QGac!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883eb99a-b981-432b-b410-4088cc534206_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QGac!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883eb99a-b981-432b-b410-4088cc534206_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!QGac!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883eb99a-b981-432b-b410-4088cc534206_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!QGac!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883eb99a-b981-432b-b410-4088cc534206_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!QGac!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883eb99a-b981-432b-b410-4088cc534206_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QGac!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883eb99a-b981-432b-b410-4088cc534206_1024x1024.png" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/883eb99a-b981-432b-b410-4088cc534206_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2040330,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!QGac!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883eb99a-b981-432b-b410-4088cc534206_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!QGac!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883eb99a-b981-432b-b410-4088cc534206_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!QGac!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883eb99a-b981-432b-b410-4088cc534206_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!QGac!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883eb99a-b981-432b-b410-4088cc534206_1024x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><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 concept of Entropy is well-known in the realm of physics and information theory. But what if I told you that this principle is quietly at work in every aspect of our lives, from the clutter on our desks to the habits we struggle to maintain? </p><p>Inspired by my recent readings of <em>The Art of Focus by Dan Koe,</em> let's deep-dive into the fascinating world of Entropy, explore its impact on our daily lives and productivity, and learn to harness its power for personal and professional growth.</p><h3>Understanding Entropy</h3><p>At its core, entropy measures the disorder or randomness in a system. The <strong>second law of thermodynamics</strong> tells us that entropy always increases over time in an isolated system. In other words, things naturally go from a state of order to disorder, from structure to chaos.</p><p>Picture a pristine line of code, elegantly written and perfectly organized. Over time, as changes are made and new features are added, that once-tidy codebase can devolve into a tangled mess of spaghetti code. That's entropy at work.</p><h3>Entropy-Productivity Linkage</h3><p>Entropy can impact productivity in several ways:</p><p><strong>1. Increased stress and anxiety:</strong> High entropy or disorder in one's life, such as a chaotic work environment with unclear roles, responsibilities, and processes, can lead to chronic stress and anxiety. The lack of structure and predictability leaves people feeling overwhelmed and disoriented, impacting their mental well-being.</p><p><strong>2. Burnout and exhaustion</strong>: Constantly navigating through disorder and meeting demands in a high-entropy situation can result in burnout. The ongoing effort to impose order drains mental resources, leading to emotional exhaustion and detachment.</p><p><strong>3. Lack of control and autonomy:</strong> Unpredictable changes, shifting priorities, or unclear expectations can undermine one's sense of control and autonomy. This loss of agency is detrimental to mental health, as it breeds frustration and helplessness.</p><p><strong>4. Strained relationships:</strong> Disorganization and miscommunication resulting from high entropy can strain interpersonal relationships at work and in personal life. Conflict and lack of social support further compound mental health issues.</p><p><strong>5. Decreased motivation and engagement:</strong> An environment characterized by entropy saps motivation and engagement. The persistent chaos and lack of clarity make it difficult to find meaning and purpose, leading to apathy and disillusionment.</p><p><strong>6. Cognitive strain:</strong> Navigating disorder demands significant cognitive effort to make sense of the chaos. This chronic cognitive strain can lead to mental fatigue, difficulty concentrating, and impaired decision-making, further exacerbating stress.</p><h3>Building Habits to Combat Entropy</h3><p>The key to fighting back against the chaos creep lies in our habits. Just as good coding practices like modular design, regular refactoring, and automated testing help keep entropy at bay in our software, good personal habits can do the same for our lives.</p><p><strong>1. Regular decluttering and organization</strong></p><p>Set aside time each week to,</p><ul><li><p>Tidy your workspace</p></li><li><p>Close open browser tabs</p></li><li><p>Put things back in their place</p></li></ul><p><strong>2. Consistent routines</strong></p><p>  Establish regular times for,</p><ul><li><p>Waking up</p></li><li><p>Working on high-priority tasks</p></li><li><p>Exercising</p></li><li><p>Winding down for the day</p></li></ul><p><strong>3. Continuous learning and skill development</strong></p><p>Continuous learning helps to,</p><ul><li><p>Keep our skills sharp</p></li><li><p>Prevent knowledge entropy</p></li></ul><p><strong>4. Prioritization and saying no</strong></p><ul><li><p>Resist the temptation to take on too many projects or commitments</p></li><li><p>Focus on what matters most</p></li><li><p>Be selective about how you spend your time and energy</p></li></ul><p>By incorporating these habits into your daily life, you'll be better equipped to combat entropy and maintain a sense of order and productivity.</p><h3>Measuring and Improving </h3><p>To effectively combat entropy in your life, assessing and tracking your progress is crucial. Here's a simple, actionable approach to help you get started:</p><p><strong>1. Identify key areas:</strong> Make a list of the main areas where entropy tends to build up in your life, such as:</p><p>   - Physical workspace</p><p>   - Digital environment (computer files, email inbox, etc.)</p><p>   - Mental space (thoughts, ideas, worries)</p><p><strong>2. Create a rating scale:</strong> Develop a simple 1-5 rating scale to gauge the level of entropy in each area:</p><p>    <em>1: Highly organized and efficient</em></p><p><em>    5: Chaotic and overwhelming</em></p><ol start="3"><li><p><strong>Conduct regular check-ins:</strong> Set a recurring reminder (e.g., every Friday afternoon) to assess each area using your rating scale briefly. Note your scores and any specific issues contributing to entropy.</p></li></ol><p><strong>4. Set achievable goals:</strong> Based on your assessment, identify one or two specific, measurable goals for the upcoming week. </p><p><em>For example: "Reduce desktop clutter from a 4 to a 2 by organizing files into folders and deleting unnecessary items."</em></p><p><strong>5. Track progress:</strong> Track your weekly entropy scores and goals. Celebrate your successes and adjust your approach as needed. Remember, small improvements add up over time!</p><h4>Quick Diagnostic Questions</h4><p>Consider asking yourself these questions during your weekly check-ins to support your entropy management efforts further.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ud8A!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90276d38-43ba-4c9c-b1e2-f199e22d5a7e_1388x446.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ud8A!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90276d38-43ba-4c9c-b1e2-f199e22d5a7e_1388x446.png 424w, https://substackcdn.com/image/fetch/$s_!ud8A!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90276d38-43ba-4c9c-b1e2-f199e22d5a7e_1388x446.png 848w, https://substackcdn.com/image/fetch/$s_!ud8A!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90276d38-43ba-4c9c-b1e2-f199e22d5a7e_1388x446.png 1272w, https://substackcdn.com/image/fetch/$s_!ud8A!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90276d38-43ba-4c9c-b1e2-f199e22d5a7e_1388x446.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ud8A!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90276d38-43ba-4c9c-b1e2-f199e22d5a7e_1388x446.png" width="1388" height="446" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/90276d38-43ba-4c9c-b1e2-f199e22d5a7e_1388x446.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:446,&quot;width&quot;:1388,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:83881,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&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_!ud8A!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90276d38-43ba-4c9c-b1e2-f199e22d5a7e_1388x446.png 424w, https://substackcdn.com/image/fetch/$s_!ud8A!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90276d38-43ba-4c9c-b1e2-f199e22d5a7e_1388x446.png 848w, https://substackcdn.com/image/fetch/$s_!ud8A!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90276d38-43ba-4c9c-b1e2-f199e22d5a7e_1388x446.png 1272w, https://substackcdn.com/image/fetch/$s_!ud8A!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90276d38-43ba-4c9c-b1e2-f199e22d5a7e_1388x446.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><em>Copy-Paste Questions to a sheet,</em></p><ul><li><p>How much time did I waste searching for misplaced items or information this week?</p></li><li><p>Did I stick to my core routines and habits consistently?</p></li><li><p>What percentage of my time was spent on high-impact, meaningful work?</p></li><li><p>How often did I feel overwhelmed, stressed, or unfocused?</p></li></ul><p>By regularly assessing your entropy levels and setting targeted goals, you'll be well on your way to creating a more ordered, productive, and fulfilling life. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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><h3>Conclusion</h3><p>Entropy may be a universal force, but it doesn't have to dominate our lives and work. Understanding its impact, cultivating positive habits, and proactively fighting against disorder can create pockets of structure and purpose amid the chaos.</p><p>With conscious effort and smart strategies, we can build lives and careers that are resilient, purposeful, and primed for peak performance. &#127917;</p>]]></content:encoded></item><item><title><![CDATA[Algorithms to Live By (Brian and Tom) - Practical Life Lessons from Computer Science Algorithms]]></title><description><![CDATA[TL;DR: "Algorithms to Live By" shows how computer science concepts can optimize everyday life.]]></description><link>https://devden.raghavan.studio/p/algorithms-to-live-by-brian-and-tom</link><guid isPermaLink="false">https://devden.raghavan.studio/p/algorithms-to-live-by-brian-and-tom</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Mon, 18 Mar 2024 03:28:44 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e549bb7-f844-4925-baac-65ace05825a6_1024x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>TL;DR: "Algorithms to Live By" shows how computer science concepts can optimize everyday life. Key takeaways include the 37% rule for optimal stopping, balancing exploration and exploitation, using sorting for prioritization, caching for quick access to frequently used resources, and algorithmic scheduling for effective time management. By applying these principles, technologists can enhance decision-making and efficiency in both personal and professional spheres.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!05aO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ab9a4f5-e232-46c9-be9c-f3fc35f70fad_2048x2048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!05aO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ab9a4f5-e232-46c9-be9c-f3fc35f70fad_2048x2048.png 424w, https://substackcdn.com/image/fetch/$s_!05aO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ab9a4f5-e232-46c9-be9c-f3fc35f70fad_2048x2048.png 848w, https://substackcdn.com/image/fetch/$s_!05aO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ab9a4f5-e232-46c9-be9c-f3fc35f70fad_2048x2048.png 1272w, https://substackcdn.com/image/fetch/$s_!05aO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ab9a4f5-e232-46c9-be9c-f3fc35f70fad_2048x2048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!05aO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ab9a4f5-e232-46c9-be9c-f3fc35f70fad_2048x2048.png" width="1456" height="1456" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3ab9a4f5-e232-46c9-be9c-f3fc35f70fad_2048x2048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1456,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:8514698,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!05aO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ab9a4f5-e232-46c9-be9c-f3fc35f70fad_2048x2048.png 424w, https://substackcdn.com/image/fetch/$s_!05aO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ab9a4f5-e232-46c9-be9c-f3fc35f70fad_2048x2048.png 848w, https://substackcdn.com/image/fetch/$s_!05aO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ab9a4f5-e232-46c9-be9c-f3fc35f70fad_2048x2048.png 1272w, https://substackcdn.com/image/fetch/$s_!05aO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ab9a4f5-e232-46c9-be9c-f3fc35f70fad_2048x2048.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><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>As technologists, we understand algorithm&#8217;s power to solve complex problems and optimize systems. But what if we could apply algorithmic thinking to our daily lives? That's the fascinating premise of "Algorithms to Live By: The Computer Science of Human Decisions" by Brian Christian and Tom Griffiths. </p><p>Let's dive into some key algorithms from the book and explore how they can help us make better decisions and optimize our lives.</p><h2>1. Optimal Stopping - The 37% Rule</h2><p>The 37% rule, also known as the "secretary problem" or "optimal stopping theory," is a decision-making strategy that can be applied to various situations, including finding the best parking space in a parking lot. This rule suggests that the optimal time to decide is after considering approximately 37% of the available options.</p><h3>Example: Finding the Best Parking Space</h3><p>Imagine driving into a long, straight parking lot with a single row of spaces. You want to find the best possible spot, which is closest to the entrance of the building you're visiting. However, you can only move through the lot and not back up or return to a previous space once you've passed it.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;2c4c2a56-1271-4007-b8a1-90821f8debd3&quot;,&quot;duration&quot;:null}"></div><p>The 37% rule is a decision-making strategy for finding the best option, such as the optimal parking space, when you have limited choices and cannot return to a previous option. To apply this rule:</p><p>1. Calculate 37% of the options and observe this initial portion to set a quality benchmark.</p><p>2. After passing the first 37%, choose the option that exceeds the benchmark.</p><p>3. Select the last available option if no option surpasses the benchmark.</p><p>This rule balances the trade-off between exploring options and the risk of passing up a good choice. Observing the first 37% allows you to gather information to set a reasonable standard. Then, by choosing the first option that exceeds this standard, you maximize your chances of selecting the best possible choice while minimizing the risk of missing it. Although it doesn't guarantee to find the absolute best option, the 37% rule provides a simple and effective decision-making strategy in various situations with limited options and no ability to return.</p><h2>2. Explore/Exploit - Balancing Novel and Familiar</h2><p>The explore-exploit trade-off is a fundamental concept in decision-making that involves balancing the choice between novel options (exploration) and familiar options with known outcomes (exploitation). This dilemma arises in various contexts, from foraging for food to making financial investments or deciding which restaurant to visit.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UOq1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb35cdbc-d031-4e03-8566-8acd6c4ff0fe_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UOq1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb35cdbc-d031-4e03-8566-8acd6c4ff0fe_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!UOq1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb35cdbc-d031-4e03-8566-8acd6c4ff0fe_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!UOq1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb35cdbc-d031-4e03-8566-8acd6c4ff0fe_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!UOq1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb35cdbc-d031-4e03-8566-8acd6c4ff0fe_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UOq1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb35cdbc-d031-4e03-8566-8acd6c4ff0fe_1024x1024.png" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/db35cdbc-d031-4e03-8566-8acd6c4ff0fe_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2060731,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&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_!UOq1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb35cdbc-d031-4e03-8566-8acd6c4ff0fe_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!UOq1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb35cdbc-d031-4e03-8566-8acd6c4ff0fe_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!UOq1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb35cdbc-d031-4e03-8566-8acd6c4ff0fe_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!UOq1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb35cdbc-d031-4e03-8566-8acd6c4ff0fe_1024x1024.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><h3>Exploration vs. Exploitation: Finding the Right Balance</h3><p>When making decisions, we face a trade-off between exploring new options and exploiting familiar ones. Exploration involves seeking novel alternatives to gather information, while exploitation means sticking with known options to maximize immediate rewards.</p><h3>Key Factors Influencing the Balance</h3><p>1. Uncertainty: Higher uncertainty encourages exploration to reduce it.</p><p>2. Temporal stability: Stable environments favor exploitation while changing environments require exploration.</p><p>3. Prior knowledge: More knowledge leads to exploitation, and less knowledge encourages exploration.</p><p>4. Potential gains and losses: Perceived gains from exploration and losses from foregoing immediate rewards affect the balance.</p><p>Striking the right balance is crucial for optimal decision-making. It allows gathering enough information to make informed choices while maximizing rewards over time. The ideal balance varies depending on context, goals, and individual preferences.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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://devden.raghavan.studio/subscribe?"><span>Subscribe now</span></a></p><h2>3. Sorting - Organizing Your Life</h2><p>Sorting is a fundamental concept in computer science that involves arranging items in a specific order based on a comparison criterion. In everyday life, sorting can be applied to organize various aspects, such as tasks, emails, or physical spaces. By prioritizing and categorizing items, you can first tackle the most critical or time-sensitive matters, ensuring efficient progress.</p><p>One popular sorting algorithm is the "Eisenhower Matrix," which categorizes tasks into four quadrants based on their urgency and importance:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KvRe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e549bb7-f844-4925-baac-65ace05825a6_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KvRe!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e549bb7-f844-4925-baac-65ace05825a6_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!KvRe!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e549bb7-f844-4925-baac-65ace05825a6_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!KvRe!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e549bb7-f844-4925-baac-65ace05825a6_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!KvRe!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e549bb7-f844-4925-baac-65ace05825a6_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KvRe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e549bb7-f844-4925-baac-65ace05825a6_1024x1024.png" width="528" height="528" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3e549bb7-f844-4925-baac-65ace05825a6_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:528,&quot;bytes&quot;:2038341,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&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_!KvRe!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e549bb7-f844-4925-baac-65ace05825a6_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!KvRe!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e549bb7-f844-4925-baac-65ace05825a6_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!KvRe!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e549bb7-f844-4925-baac-65ace05825a6_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!KvRe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e549bb7-f844-4925-baac-65ace05825a6_1024x1024.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>1. Urgent and Important: Tasks that require immediate attention and have significant consequences if not completed.</p><p>2. Not Urgent but Important: Tasks that contribute to long-term goals should be scheduled for completion.</p><p>3. Urgent but Not Important: Tasks that demand attention but do not contribute to overall objectives. These should be delegated or minimized.</p><p>4. Not Urgent and Not Important: Low-priority tasks can be postponed or eliminated.</p><p>Applying this sorting method to your to-do list lets you focus on the most critical tasks and avoid getting bogged down by less important ones.</p><h2>4. Caching - Leveraging Frequently Used Resources</h2><p>Caching is a technique used in computer systems to store frequently accessed data in a quickly accessible location, reducing the time and resources needed to retrieve it. This concept can be applied to optimize physical and digital spaces in daily life.</p><p>In the physical world, caching can be implemented by organizing your workspace to keep frequently used tools, documents, or reference materials within easy reach. This reduces the time and effort spent searching for these items when needed.</p><p>Similarly, in the digital realm, you can leverage caching by:</p><p>- Using bookmarks or favorites in your web browser to quickly access frequently visited websites.</p><p>- Creating shortcuts or aliases for your computer's commonly used files or folders.</p><p>- Utilizing a password manager to store and quickly retrieve login information for various accounts securely.</p><p>By implementing caching techniques, you can streamline your workflows and boost productivity.</p><h2>5. Scheduling - Making the Most of Your Time</h2><p>Efficient scheduling is essential for managing time and resources effectively. Algorithmic approaches, such as the "Earliest Deadline First" or the "Shortest Processing Time" methods, can help prioritize tasks and optimize productivity.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ujWn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fb5e911-d0af-4097-8f79-f480d99f207d_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ujWn!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fb5e911-d0af-4097-8f79-f480d99f207d_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!ujWn!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fb5e911-d0af-4097-8f79-f480d99f207d_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!ujWn!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fb5e911-d0af-4097-8f79-f480d99f207d_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!ujWn!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fb5e911-d0af-4097-8f79-f480d99f207d_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ujWn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fb5e911-d0af-4097-8f79-f480d99f207d_1024x1024.png" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4fb5e911-d0af-4097-8f79-f480d99f207d_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1724194,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&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_!ujWn!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fb5e911-d0af-4097-8f79-f480d99f207d_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!ujWn!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fb5e911-d0af-4097-8f79-f480d99f207d_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!ujWn!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fb5e911-d0af-4097-8f79-f480d99f207d_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!ujWn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fb5e911-d0af-4097-8f79-f480d99f207d_1024x1024.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 "Earliest Deadline First" algorithm prioritizes tasks based on their due dates, tackling the most time-sensitive items. This ensures that important deadlines are met and helps maintain steady progress.</p><p>The "Shortest Processing Time" algorithm focuses on completing tasks that require the least amount of time or effort first. By knocking out quick tasks, you can build momentum and create a sense of accomplishment, motivating you to tackle larger, more complex tasks.</p><p>In practice, you can combine these scheduling algorithms by using a priority queue system:</p><p>1. List all your tasks and assign each a priority based on urgency and importance.</p><p>2. Begin with the highest-priority tasks that have the nearest deadlines or can be completed quickly.</p><p>3. As new tasks arise, insert them into the queue based on their priority.</p><p>4. Continuously update and re-evaluate the queue to ensure you always work on the most pressing tasks.</p><p>By applying these algorithmic scheduling techniques, you can effectively manage your time, meet deadlines, and maintain a strong sense of progress in your personal and professional life.</p><h2>Conclusion</h2><p>"Algorithms to Live By" shows how algorithmic principles can optimize decision-making and problem-solving in everyday life. Technologists can leverage these insights to boost efficiency and effectiveness personally and professionally.</p>]]></content:encoded></item><item><title><![CDATA[Look at Devin - The Pros and Cons of AI-Driven Software Development]]></title><description><![CDATA[Devin is introduced by Cognition AI as the world's first AI software engineer, marking a significant milestone in artificial intelligence and software development[2][3].]]></description><link>https://devden.raghavan.studio/p/look-at-devin-the-pros-and-cons-of</link><guid isPermaLink="false">https://devden.raghavan.studio/p/look-at-devin-the-pros-and-cons-of</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Thu, 14 Mar 2024 11:37:51 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!xZ-q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c36be73-17ba-4660-a398-618c8b89790d_1216x1014.png" 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_!xZ-q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c36be73-17ba-4660-a398-618c8b89790d_1216x1014.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xZ-q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c36be73-17ba-4660-a398-618c8b89790d_1216x1014.png 424w, https://substackcdn.com/image/fetch/$s_!xZ-q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c36be73-17ba-4660-a398-618c8b89790d_1216x1014.png 848w, https://substackcdn.com/image/fetch/$s_!xZ-q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c36be73-17ba-4660-a398-618c8b89790d_1216x1014.png 1272w, https://substackcdn.com/image/fetch/$s_!xZ-q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c36be73-17ba-4660-a398-618c8b89790d_1216x1014.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xZ-q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c36be73-17ba-4660-a398-618c8b89790d_1216x1014.png" width="1216" height="1014" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2c36be73-17ba-4660-a398-618c8b89790d_1216x1014.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1014,&quot;width&quot;:1216,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1122347,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!xZ-q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c36be73-17ba-4660-a398-618c8b89790d_1216x1014.png 424w, https://substackcdn.com/image/fetch/$s_!xZ-q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c36be73-17ba-4660-a398-618c8b89790d_1216x1014.png 848w, https://substackcdn.com/image/fetch/$s_!xZ-q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c36be73-17ba-4660-a398-618c8b89790d_1216x1014.png 1272w, https://substackcdn.com/image/fetch/$s_!xZ-q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c36be73-17ba-4660-a398-618c8b89790d_1216x1014.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><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><figcaption class="image-caption">https://x.com/trashh_dev/status/1767931047474495629?s=20</figcaption></figure></div><p></p><p>Devin is introduced by Cognition AI as the world's first AI software engineer, marking a significant milestone in artificial intelligence and software development[2][3]. While details about Devin's capabilities and functionalities are limited due to incomplete search results, the discussion around Devin highlights several key aspects that differentiate it from other AI tools in the market and outlines its potential value additions and shortcomings.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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><h3>Differentiating Factors</h3><h4>State-of-the-Art Performance</h4><p> Devin has been noted for its performance on the SWE-Bench coding benchmark, suggesting that it has achieved a new level of proficiency in software engineering tasks[2].</p><h4>Potential for Automation in Software Engineering</h4><p> The introduction of Devin raises questions about the extent to which AI can automate software engineering tasks, potentially reducing the need for large development teams[5].</p><h4>Value Additions</h4><h5>Efficiency and Cost-Effectiveness</h5><p> Preliminary discussions suggest that Devin could be more efficient and cost-effective than most human software engineers, which could revolutionize how software development projects are staffed and executed[12].</p><h5>Innovation in Software Development</h5><p>By automating certain aspects of software development, Devin could free up human engineers to focus on more complex, creative, or strategic tasks, thereby fostering innovation[18].</p><h3>Shortfalls</h3><h5>Limited to Specific Requirements and Control</h5><p>Despite its capabilities, Devin might be unable to completely replace jobs requiring extremely specific requirements and demanding full control. This limitation suggests that while Devin can automate certain tasks, there will still be a need for human oversight and intervention in software development projects[8].</p><h5>Concerns Over Job Displacement</h5><p>The introduction of Devin has sparked fears among software engineers about the potential for AI to displace human jobs, particularly in freelance and contract work[8]. This concern reflects a broader anxiety about the impact of AI on employment in the tech industry.</p><div id="youtube2-AgyJv2Qelwk" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;AgyJv2Qelwk&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/AgyJv2Qelwk?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><h3>Conclusion</h3><p>Devin represents a significant advancement in AI's role within software development, offering potential efficiencies and cost savings. However, its introduction also raises important questions about the future of work in the tech industry, including the balance between automation and human creativity, the need for oversight, and the ethical considerations of displacing human workers. As with any disruptive technology, Devin's full impact will likely unfold over time as its capabilities are further developed and integrated into the software development process.</p><p>As software engineering increasingly becomes a partnership between humans and artificial intelligence, it will be essential to develop ethical frameworks and guidelines that respect human developers' and AI systems' rights and contributions.</p><p></p><h4>Citations</h4><p>[1]<a href="https://www.reddit.com/r/singularity/comments/1avsk7z/people_really_do_have_no_idea_whats_coming_even/">https://www.reddit.com/r/singularity/comments/1avsk7z/people_really_do_have_no_idea_whats_coming_even/</a></p><p>[2]<a href="https://www.reddit.com/r/singularity/comments/1bcyqup/cognition_labs_today_were_excited_to_introduce/">https://www.reddit.com/r/singularity/comments/1bcyqup/cognition_labs_today_were_excited_to_introduce/</a></p><p>[3]<a href="https://www.reddit.com/r/ArtificialInteligence/comments/1bdvhta/worlds_first_ai_software_engineer_devin_by/">https://www.reddit.com/r/ArtificialInteligence/comments/1bdvhta/worlds_first_ai_software_engineer_devin_by/</a></p><p>[4]<a href="https://www.reddit.com/r/singularity/comments/12lt0qj/how_severely_will_jobs_in_mathematics_statistics/?rdt=38625">https://www.reddit.com/r/singularity/comments/12lt0qj/how_severely_will_jobs_in_mathematics_statistics/?rdt=38625</a></p><p>[5]<a href="https://www.reddit.com/r/MachineLearning/comments/1bdzesy/thoughts_on_the_latest_ai_software_engineer_devin/">https://www.reddit.com/r/MachineLearning/comments/1bdzesy/thoughts_on_the_latest_ai_software_engineer_devin/</a></p><p>[6]<a href="https://www.reddit.com/r/cscareerquestions/comments/1bd6n2e/anyone_afraid_of_ai_taking_all_jerbs_or/">https://www.reddit.com/r/cscareerquestions/comments/1bd6n2e/anyone_afraid_of_ai_taking_all_jerbs_or/</a></p><p>[7]<a href="https://www.reddit.com/r/comicbooks/comments/zeksom/are_the_increasingly_more_powerful_aitools_to_be/">https://www.reddit.com/r/comicbooks/comments/zeksom/are_the_increasingly_more_powerful_aitools_to_be/</a></p><p>[8]<a href="https://www.reddit.com/r/ArtistHate/comments/1be7qpz/an_ai_called_devin_is_threatening_software/">https://www.reddit.com/r/ArtistHate/comments/1be7qpz/an_ai_called_devin_is_threatening_software/</a></p><p>[9]<a href="https://www.reddit.com/r/dataengineering/comments/1bd5wv8/its_happening_guys/">https://www.reddit.com/r/dataengineering/comments/1bd5wv8/its_happening_guys/</a></p><p>[10]<a href="https://www.reddit.com/r/developersIndia/comments/1bd19cc/thoughts_on_this_new_devin_ai_seems_like/">https://www.reddit.com/r/developersIndia/comments/1bd19cc/thoughts_on_this_new_devin_ai_seems_like/</a></p><p>[11]<a href="https://www.reddit.com/r/artificial/comments/1bdl8vv/devin_the_first_ai_software_engineer/">https://www.reddit.com/r/artificial/comments/1bdl8vv/devin_the_first_ai_software_engineer/</a></p><p>[12]<a href="https://www.reddit.com/r/PinoyProgrammer/comments/1bdd1sa/introducing_devin_the_first_ai_software_engineer/">https://www.reddit.com/r/PinoyProgrammer/comments/1bdd1sa/introducing_devin_the_first_ai_software_engineer/</a></p><p>[13]<a href="https://www.reddit.com/r/CompSocial/comments/1bdsd3w/devin_the_first_ai_software_engineer_cognition/">https://www.reddit.com/r/CompSocial/comments/1bdsd3w/devin_the_first_ai_software_engineer_cognition/</a></p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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[Tribal Leadership( By Dave, John and Halee) -Lessons from the Maasai and Beyond]]></title><description><![CDATA[TL;DR "Tribal Leadership" by Dave Logan, John King, and Halee Fischer-Wright reveals the power of tribe formation and its impact on organizational success.]]></description><link>https://devden.raghavan.studio/p/tribal-leadership-by-dave-john-and</link><guid isPermaLink="false">https://devden.raghavan.studio/p/tribal-leadership-by-dave-john-and</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Tue, 12 Mar 2024 13:25:31 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!BwbX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae16824b-4282-46b2-850a-023c87969157_1792x1024.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>TL;DR</em> "Tribal Leadership" by Dave Logan, John King, and Halee Fischer-Wright reveals the power of tribe formation and its impact on organizational success. Using examples like the Maasai tribe, the authors identify five stages of tribal development, each with distinct characteristics. To build thriving cultures, leaders must guide their organizations to higher stages by fostering a sense of belonging, shared purpose, and collaboration. The Maasai's leadership model offers valuable lessons for modern organizations, emphasizing consensus-building, respect, and nurturing young leaders. Leaders can unlock their teams' full potential and achieve extraordinary results by cultivating a supportive environment.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!BwbX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae16824b-4282-46b2-850a-023c87969157_1792x1024.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BwbX!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae16824b-4282-46b2-850a-023c87969157_1792x1024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!BwbX!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae16824b-4282-46b2-850a-023c87969157_1792x1024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!BwbX!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae16824b-4282-46b2-850a-023c87969157_1792x1024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!BwbX!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae16824b-4282-46b2-850a-023c87969157_1792x1024.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BwbX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae16824b-4282-46b2-850a-023c87969157_1792x1024.jpeg" width="1456" height="832" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ae16824b-4282-46b2-850a-023c87969157_1792x1024.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:832,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:775879,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!BwbX!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae16824b-4282-46b2-850a-023c87969157_1792x1024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!BwbX!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae16824b-4282-46b2-850a-023c87969157_1792x1024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!BwbX!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae16824b-4282-46b2-850a-023c87969157_1792x1024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!BwbX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae16824b-4282-46b2-850a-023c87969157_1792x1024.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><figcaption class="image-caption"><em>compiled with Claude AI</em></figcaption></figure></div><p>In their groundbreaking book, "Tribal Leadership," Dave Logan, John King, and Halee Fischer-Wright explore the concept of tribe formation and its impact on organizational success. The authors uncover the fundamental principles that drive effective leadership and thriving cultures by studying diverse groups, from Fortune 500 companies to indigenous communities like the Maasai of East Africa.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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>The Maasai, a semi-nomadic people inhabiting parts of Kenya and Tanzania, exemplify the power of tribal leadership. Their strong sense of identity, shared purpose, and unwavering commitment to their community have enabled them to overcome countless challenges and preserve their way of life for generations. The Maasai's leadership structure, rooted in the wisdom of elders and the collective decision-making process, ensures that the tribe's interests are always at the forefront.</p><p>Similarly, in the corporate world, organizations that foster a sense of belonging, purpose, and shared values among their employees tend to outperform their competitors. The authors of "Tribal Leadership" identify <em>five stages of tribal development</em>, each characterized by distinct language patterns, behaviors, and leadership styles.</p><p><strong>Stage one</strong>, the lowest level, is marked by a "life sucks" mentality, where individuals feel powerless and disconnected. <strong>Stage two</strong>, "my life sucks," is slightly better, but employees still view themselves as victims of circumstance. In <strong>stage three</strong>, the "I'm great" mindset takes hold, with individuals focusing on personal achievement rather than collective success.</p><p>It is in <strong>stage four,</strong> "We're Great," where the true power of tribal leadership emerges. At this level, employees are united by a common purpose and work collaboratively towards shared goals. They take pride in their tribe's accomplishments and are motivated to contribute to its success. <strong>The Maasai's strong sense of community and collective identity embodies this stage as they work together to protect their livestock, maintain their traditions, and support one another through hardships.</strong></p><div id="youtube2-dm5RV3MzqQA" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;dm5RV3MzqQA&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/dm5RV3MzqQA?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>The <strong>fifth and final stage</strong>, "life is great," is the pinnacle of tribal leadership. Organizations that reach this level are driven by a higher purpose that transcends individual interests. They seek to impact the world and leave a lasting legacy positively. Organizations like the Olympics and Common Wealth are striving towards their commitment to environmental sustainability and social responsibility, which exemplify this stage.</p><p>To cultivate a thriving tribal culture, leaders must first understand their organization's current stage and then work to guide their tribe to higher performance levels. This requires a shift in mindset, language, and behavior and a willingness to empower others and lead by example.</p><p>The Maasai's leadership model, which values consensus-building, respect for elders, and nurturing young leaders, offers valuable lessons for modern organizations. By creating a supportive environment that encourages growth, innovation, and collaboration, leaders can unlock the full potential of their teams and achieve extraordinary results.</p><p><strong>conclusion</strong></p><p>"Tribal Leadership" provides a powerful framework for understanding the dynamics of human groups and the key ingredients of successful organizations. By studying the Maasai and other tribes, both ancient and modern, we can gain invaluable insights into what it takes to build a culture of excellence, resilience, and shared purpose. As leaders, we are responsible for cultivating these qualities within our own tribes, inspiring others to reach new heights and create a better world for all.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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[Boyer-Moore Majority Vote Algorithm -Counting Most Repeated Characters in O(n)]]></title><description><![CDATA[Efficient Search for the Most Frequent Character]]></description><link>https://devden.raghavan.studio/p/boyer-moore-majority-vote-algorithm</link><guid isPermaLink="false">https://devden.raghavan.studio/p/boyer-moore-majority-vote-algorithm</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Sun, 10 Mar 2024 20:34:16 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!muSW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dc4243a-98df-4b60-9509-400f65229c93_1792x1024.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_!muSW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dc4243a-98df-4b60-9509-400f65229c93_1792x1024.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!muSW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dc4243a-98df-4b60-9509-400f65229c93_1792x1024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!muSW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dc4243a-98df-4b60-9509-400f65229c93_1792x1024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!muSW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dc4243a-98df-4b60-9509-400f65229c93_1792x1024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!muSW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dc4243a-98df-4b60-9509-400f65229c93_1792x1024.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!muSW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dc4243a-98df-4b60-9509-400f65229c93_1792x1024.jpeg" width="1456" height="832" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5dc4243a-98df-4b60-9509-400f65229c93_1792x1024.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:832,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:483000,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!muSW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dc4243a-98df-4b60-9509-400f65229c93_1792x1024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!muSW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dc4243a-98df-4b60-9509-400f65229c93_1792x1024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!muSW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dc4243a-98df-4b60-9509-400f65229c93_1792x1024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!muSW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dc4243a-98df-4b60-9509-400f65229c93_1792x1024.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>In the realm of computer science and algorithms, finding the majority element in an array or string is a common problem. The Boyer-Moore Majority Vote Algorithm, also known as the Boyer-Moore Voting Algorithm, provides an elegant and efficient solution to this problem. In this article, we will delve into the algorithm's workings, explore its adaptation for finding the most repeated characters in a string, analyze its time complexity, and provide a practical implementation in Python.</p><h2>Algorithm Overview</h2><p>The Boyer-Moore Majority Vote Algorithm is based on the concept of maintaining a candidate element and a counter while iterating through the array or string. The algorithm follows these steps:</p><p>1. Initialize the candidate element to the first element and set the counter to 1.</p><p>2. Iterate through the remaining elements:</p><p>   - If the counter becomes 0, update the candidate to the current element and set the counter to 1.</p><p>   - If the current element matches the candidate, increment the counter by 1.</p><p>   - If the current element differs from the candidate, decrement the counter by 1.</p><p>3. After the iteration, the candidate will be the majority element if it exists.</p><p>The intuition behind this algorithm is that the majority element will "cancel out" the other elements during the iteration process, leaving the majority element as the final candidate.</p><h2>Adapting the Algorithm for Finding the Most Repeated Characters</h2><p>To find the most repeated character in a string using the Boyer-Moore Majority Vote Algorithm, regardless of whether it appears more than &#8970;n / 2&#8971; times, we can follow these steps:</p><ol><li><p>Apply the Boyer-Moore Majority Vote Algorithm to the string to find the candidate character.</p></li><li><p>Initialize a variable <code>max_count</code> to keep track of the maximum count and a variable <code>most_repeated</code> to store the most repeated character.</p></li><li><p>Iterate through each unique character in the string:</p><ul><li><p>Count the occurrences of the current character in the string.</p></li><li><p>If the count is greater than, update <code>max_count</code> with the current count and <code>most_repeated</code> with the current character.</p></li></ul></li><li><p>After the iteration, <code>most_repeated</code> the string will hold the most repeated character, regardless of its frequency.</p></li></ol><h3>Implementation in Python</h3><p><a href="https://github.com/raghavan/Boyer-Moore-Vote-Algorithm-with-Visualization">https://github.com/raghavan/Boyer-Moore-Vote-Algorithm-with-Visualization</a></p><pre><code>def most_repeated_character(string):
    candidate = boyer_moore_majority_vote(string)
    max_count = 0
    most_repeated = None

    for char in set(string):
        count = string.count(char)
        if count &gt; max_count:
            max_count = count
            most_repeated = char

    return most_repeated</code></pre><h3>Example</h3><p>Let's apply the algorithm to the string "<strong>abbbacaaabacab"</strong></p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;1cebc7ff-fdb5-44c6-b594-15950a7ccc70&quot;,&quot;duration&quot;:null}"></div><ol><li><p>'a' becomes the candidate with a count of 1.</p></li><li><p>The count becomes 0 after 'b', so 'b' becomes the new candidate with a count of 1.</p></li><li><p>The count becomes 3 after encountering 'b' twice more.</p></li><li><p>The count becomes 2 after 'a'.</p></li><li><p>The count becomes 1 after 'c'.</p></li><li><p>The count becomes 0 after 'a', so 'a' becomes the new candidate with a count of 1.</p></li><li><p>The count becomes 4 after encountering 'a' three more times.</p></li><li><p>The count becomes 3 after 'b'.</p></li><li><p>The count becomes 2 after 'a'.</p></li><li><p>The count becomes 1 after 'c'.</p></li><li><p>The count becomes 2 after 'a'.</p></li><li><p>The count becomes 1 after 'b'.</p></li></ol><p>The candidate character is 'a'. We count its occurrences, and it appears six times. Therefore, 'a' is the most repeated character in the string.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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><h3>Time Complexity</h3><p>One notable aspect of the Boyer-Moore Majority Vote Algorithm is its <strong>O(n)</strong> time complexity for finding the <strong>candidate character</strong>. However, when adapting the algorithm to find the most repeated character irrespective of its frequency, an additional pass is required to count the occurrences of each unique character. This increases the time complexity to O(n * k), where k is the number of unique characters in the string. Despite the increased complexity, the algorithm remains efficient for most practical scenarios.</p><h2>Conclusion</h2><p>The Boyer-Moore Majority Vote Algorithm is a powerful technique for finding the majority element in an array or string with an O(n) time complexity. By adapting the algorithm, we can also efficiently find the most repeated characters in a string. This algorithm finds applications in various domains, such as data analysis, string manipulation, and coding interviews.</p><p>For more practice and challenges, we recommend solving the following <em>LeetCode problems,</em></p><ul><li><p>Majority Element - <a href="https://leetcode.com/problems/majority-element/">https://leetcode.com/problems/majority-element/</a></p></li><li><p>Majority Element II - <a href="https://leetcode.com/problems/majority-element-ii/">https://leetcode.com/problems/majority-element-ii/</a></p><p></p></li></ul>]]></content:encoded></item><item><title><![CDATA[Unlocalized Productivity - Transcending the Clock for Optimal Performance]]></title><description><![CDATA[Unshackle your potential from the chains of time]]></description><link>https://devden.raghavan.studio/p/unlocalized-productivity-transcending</link><guid isPermaLink="false">https://devden.raghavan.studio/p/unlocalized-productivity-transcending</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Wed, 06 Mar 2024 11:07:23 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Rt6-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aca6ecb-d694-4b01-95fb-08715346bb15_1762x892.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_!Rt6-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aca6ecb-d694-4b01-95fb-08715346bb15_1762x892.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Rt6-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aca6ecb-d694-4b01-95fb-08715346bb15_1762x892.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Rt6-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aca6ecb-d694-4b01-95fb-08715346bb15_1762x892.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Rt6-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aca6ecb-d694-4b01-95fb-08715346bb15_1762x892.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Rt6-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aca6ecb-d694-4b01-95fb-08715346bb15_1762x892.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Rt6-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aca6ecb-d694-4b01-95fb-08715346bb15_1762x892.jpeg" width="1456" height="737" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8aca6ecb-d694-4b01-95fb-08715346bb15_1762x892.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:737,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:556642,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Rt6-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aca6ecb-d694-4b01-95fb-08715346bb15_1762x892.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Rt6-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aca6ecb-d694-4b01-95fb-08715346bb15_1762x892.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Rt6-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aca6ecb-d694-4b01-95fb-08715346bb15_1762x892.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Rt6-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aca6ecb-d694-4b01-95fb-08715346bb15_1762x892.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>In a world obsessed with the relentless ticking of the clock, we have become slaves to the tyranny of time. The traditional paradigm of productivity, deeply rooted in the industrial age, has led us to believe that our worth is measured by the hours we spend toiling away, chained to our desks. But what if I told you that true productivity lies beyond the confines of time? Is the secret to unlocking your full potential not in the rigid adherence to a 9-to-5 schedule but in the embrace of a fluid, dynamic approach to work? Welcome to the world of unlocalized productivity.</p><h2>The Quantum Leap</h2><p>The principles of quantum mechanics offer a powerful metaphor for understanding the nature of unlocalized productivity. Just as particles in a quantum state can exist in multiple states simultaneously, our work can transcend the linear boundaries of time and space. When we immerse ourselves in a task, our thoughts and actions become entangled in an intricate dance of inspiration, ideation, and execution. The traditional metrics of productivity, focused solely on time spent or tasks completed, fail to capture the essence of this quantum leap. True progress is born from the convergence of disparate elements, a symphony of creativity that the hands of a clock cannot measure.</p><h2>Deep Work in a Shallow World</h2><p>In a world of constant distraction and shallow pursuits, the art of deep work has become a rare and valuable skill. Cal Newport, the renowned author and computer scientist, has championed the concept of deep work as the key to achieving unlocalized productivity. By cultivating a state of intense focus and concentration, free from the incessant buzz of notifications and the allure of social media, we can tap into a wellspring of productivity that knows no bounds. Time becomes irrelevant as we lose ourselves in the workflow, our minds fully engaged and our potential unleashed.</p><iframe class="spotify-wrap podcast" data-attrs="{&quot;image&quot;:&quot;https://i.scdn.co/image/ab6765630000ba8a1449526254a9ebd921110148&quot;,&quot;title&quot;:&quot;Ep. 229: Developing Discipline&quot;,&quot;subtitle&quot;:&quot;Cal Newport&quot;,&quot;description&quot;:&quot;Episode&quot;,&quot;url&quot;:&quot;https://open.spotify.com/episode/0IOUIYl5UNCWXPptaMFgY7&quot;,&quot;belowTheFold&quot;:false,&quot;noScroll&quot;:false}" src="https://open.spotify.com/embed/episode/0IOUIYl5UNCWXPptaMFgY7" frameborder="0" gesture="media" allowfullscreen="true" allow="encrypted-media" data-component-name="Spotify2ToDOM"></iframe><h2>The Maverick's Manifesto</h2><p>Sam Altman, the visionary entrepreneur and investor, has long been a proponent of unlocalized productivity. In his seminal work, "Productivity," <em><a href="https://blog.samaltman.com/productivity">https://blog.samaltman.com/productivity</a>,</em> Altman argues that true productivity is not about the speed at which we work but the direction in which we move. He urges us to prioritize tasks that align with our deepest convictions and passions, to pursue the work that sets our souls on fire. By focusing on the tasks that matter, the ones that resonate with our authentic selves, we can achieve a level of productivity that transcends the artificial construct of time.</p><h2>Shattering the 9-to-5 Illusion</h2><p>The 9-to-5 workday, a relic of a bygone era, has long been the gold productivity standard. But the truth is, this rigid structure is nothing more than an illusion, a facade that masks the reality of human potential. Research has shown that our cognitive abilities are not beholden to the arbitrary boundaries of the workday. Instead, our minds are at their most fertile when we align our work with our natural rhythms and embrace the ebb and flow of our energy and inspiration. Unlocalized productivity recognizes that great work can happen at any hour, in any place, as long as we are attuned to the unique cadence of our own minds.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;4cabbdac-228f-4cff-9588-db9f37341544&quot;,&quot;duration&quot;:null}"></div><h2>Tools of the Trade</h2><p>To embark on the journey of unlocalized productivity, we must arm ourselves with the right tools and techniques. Time-blocking, a flexible approach to scheduling, allows us to allocate our energy to specific projects without the constraints of rigid hourly schedules. Task prioritization frameworks, such as the Eisenhower Matrix or the 80/20 Principle, help us identify the tasks that are both important and aligned with our goals. The Pomodoro Technique, a method of working in focused intervals, can help us maintain momentum and avoid burnout. Productivity apps, such as Trello, Asana, or Things 3, provide a digital scaffold for organizing our work to allow adaptability and non-linear execution.</p><p>But perhaps the most powerful tool at our disposal is cultivating a mindful approach to work. By incorporating mindfulness practices and meditation into our daily routines, we can sharpen our focus, reduce stress, and tap into a deeper well of creativity. The <a href="https://www.thesukha.co/">Sukha app</a> is valuable for integrating mindfulness and personal growth into our productivity journey. By prioritizing our well-being and inner peace, we create the fertile ground from which unlocalized productivity can flourish.</p><h2>The Path Forward</h2><p>Unlocalized productivity is not a destination but a journey. It is a way of being, a fundamental shift in how we approach our work and our lives. By embracing the fluid nature of productivity by prioritizing deep work and authentic engagement, we can break free from the shackles of the clock and unleash our true potential. The path forward is not a straight line but a winding road of exploration, experimentation, and self-discovery. It is a path that requires courage, resilience, and a willingness to challenge the status quo.</p><p>So, let us boldly step into this new paradigm, armed with the tools and techniques of unlocalized productivity. Let us embrace the uncertainty and the discomfort, knowing that on the other side lies a world of boundless possibility. Let us measure our worth not by the hours we spend but by the impact we make, the lives we touch, and the legacy we leave behind. Ultimately, it is not the ticking of the clock that defines us, but the depth and meaning of our work. Let us rise above the tyranny of time and claim our rightful place as the masters of our own destiny.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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></p>]]></content:encoded></item><item><title><![CDATA[How to Name Your Next Product: Lessons from Lexicon]]></title><description><![CDATA[Unlocking the Power of Words: Navigating the Art and Strategy of Product Naming]]></description><link>https://devden.raghavan.studio/p/how-to-name-your-next-product-lessons</link><guid isPermaLink="false">https://devden.raghavan.studio/p/how-to-name-your-next-product-lessons</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Sun, 19 Nov 2023 12:01:49 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!FUyW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7b77309-4435-4651-bbd1-2f06a53f3675_1024x1024.png" 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_!FUyW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7b77309-4435-4651-bbd1-2f06a53f3675_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FUyW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7b77309-4435-4651-bbd1-2f06a53f3675_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!FUyW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7b77309-4435-4651-bbd1-2f06a53f3675_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!FUyW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7b77309-4435-4651-bbd1-2f06a53f3675_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!FUyW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7b77309-4435-4651-bbd1-2f06a53f3675_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FUyW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7b77309-4435-4651-bbd1-2f06a53f3675_1024x1024.png" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a7b77309-4435-4651-bbd1-2f06a53f3675_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2456341,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!FUyW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7b77309-4435-4651-bbd1-2f06a53f3675_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!FUyW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7b77309-4435-4651-bbd1-2f06a53f3675_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!FUyW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7b77309-4435-4651-bbd1-2f06a53f3675_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!FUyW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7b77309-4435-4651-bbd1-2f06a53f3675_1024x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><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>Naming a product is a critical aspect of branding that can significantly influence its success in the market. A well-chosen name can enhance the product's appeal, making it more memorable and attractive to potential customers.&nbsp;</p><p>One company that has mastered the art of product naming is Lexicon, based out of Sausalito, California, which has named over $15 billion of products. In this exploration, we delve into the secrets of Lexicon Branding, the wizards behind names like Pentium, BlackBerry, PowerBook, Zune, Swiffer, Febreze, Subaru Outback and Forester, Toyota Scion, DeskJet, Dasani, OnStar, Embassy Suites Hotels and Metreon to equip you with a framework to christen your next big idea effectively.</p><h3>The Magnetic Pull of a Name</h3><p>A product's name is more than a mere label; it's the first handshake with your audience. It's about evoking emotions, forging connections, and encapsulating your product's essence. Consider "<strong>BlackBerry</strong>" &#8211; more than a smartphone, it symbolizes sleek efficiency, wrapped in two simple syllables.</p><p>For instance, Lexicon named the BlackBerry smartphone, a name that conveys the device's sleek design and functionality. The name BlackBerry is easy to remember and creates a positive association with the product.</p><h3>Lexicon's Naming Alchemy</h3><p>How does the Lexicon turn abstract concepts into household names? The secret lies in a blend of thorough research, deep market understanding, and a dash of linguistic magic. They don't just name a product, they breathe life into it. For instance, "<strong>Avalon</strong>" for Toyota wasn't just a name. It was an experience of luxury and myth.</p><h3>The Ingredients of Creativity</h3><p>Innovation is key. Lexicon dares to defy norms, creating unique and memorable names that set trends. "<strong>FiOS</strong>" &#8211; a term coined for Verizon's high-speed internet &#8211; is a testament to this, now synonymous with speed and reliability. It's about daring to be different.</p><h3>Beyond Creativity: Testing the Waters</h3><p>A great name must resonate with its audience. Lexicon employs focus groups, surveys, and market research to ensure the name doesn't just sound good but feels right. It's about ensuring alignment with customer perceptions and market position.</p><h3>Navigating the Digital Landscape: Web Domain Wisdom</h3><p>In today's digital-first world, a web domain is your brand's digital real estate. It's crucial to align your domain with your product name for seamless brand identity and enhanced digital presence. Consider alternatives if your first choice isn't available, but keep it intuitive, memorable, and reflective of your brand ethos.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oKdw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70a81407-1bc2-4ae4-938d-e1761fd06859_1600x914.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oKdw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70a81407-1bc2-4ae4-938d-e1761fd06859_1600x914.png 424w, https://substackcdn.com/image/fetch/$s_!oKdw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70a81407-1bc2-4ae4-938d-e1761fd06859_1600x914.png 848w, https://substackcdn.com/image/fetch/$s_!oKdw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70a81407-1bc2-4ae4-938d-e1761fd06859_1600x914.png 1272w, https://substackcdn.com/image/fetch/$s_!oKdw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70a81407-1bc2-4ae4-938d-e1761fd06859_1600x914.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oKdw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70a81407-1bc2-4ae4-938d-e1761fd06859_1600x914.png" width="1456" height="832" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/70a81407-1bc2-4ae4-938d-e1761fd06859_1600x914.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:832,&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_!oKdw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70a81407-1bc2-4ae4-938d-e1761fd06859_1600x914.png 424w, https://substackcdn.com/image/fetch/$s_!oKdw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70a81407-1bc2-4ae4-938d-e1761fd06859_1600x914.png 848w, https://substackcdn.com/image/fetch/$s_!oKdw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70a81407-1bc2-4ae4-938d-e1761fd06859_1600x914.png 1272w, https://substackcdn.com/image/fetch/$s_!oKdw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70a81407-1bc2-4ae4-938d-e1761fd06859_1600x914.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><h3>Concluding Thoughts: The Name is the Game</h3><p>Your product's name is a potent tool &#8211; a beacon in the marketplace. It should reflect your understanding of the product, market, and audience, sprinkled with creativity and validated through rigorous testing. Embrace the Lexicon way: deep dive into your product's soul, innovate, test, and align it with a digital identity that transcends boundaries.</p><p>As you embark on this journey of naming your next innovation, remember &#8211; the right name can not only define but also elevate your product to new heights. So invest wisely in this process; your billion-dollar idea deserves a name that resonates just as powerfully.</p><h3>Name Crafter: Custom ChatGPT To Name Your Next Innovation</h3><p>Based on my research on product naming, I've developed "Name Crafter", a custom ChatGPT designed to blend creativity with technology seamlessly. You can access it at <a href="https://chat.openai.com/g/g-WJ9KnuHzu-name-crafter">chat.openai.com/name-crafter</a>. It's more than just a naming tool, it's a manifestation of dedication to help fellow entrepreneurs find the perfect name that resonates with their product's identity and market potential.</p><p>It's your brainstorming ally, offering innovative and market-aligned name suggestions. </p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rYA7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0528554-9fa5-48ff-b751-9843676a653d_574x800.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rYA7!,w_424,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0528554-9fa5-48ff-b751-9843676a653d_574x800.gif 424w, https://substackcdn.com/image/fetch/$s_!rYA7!,w_848,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0528554-9fa5-48ff-b751-9843676a653d_574x800.gif 848w, https://substackcdn.com/image/fetch/$s_!rYA7!,w_1272,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0528554-9fa5-48ff-b751-9843676a653d_574x800.gif 1272w, https://substackcdn.com/image/fetch/$s_!rYA7!,w_1456,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0528554-9fa5-48ff-b751-9843676a653d_574x800.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rYA7!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0528554-9fa5-48ff-b751-9843676a653d_574x800.gif" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d0528554-9fa5-48ff-b751-9843676a653d_574x800.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&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_!rYA7!,w_424,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0528554-9fa5-48ff-b751-9843676a653d_574x800.gif 424w, https://substackcdn.com/image/fetch/$s_!rYA7!,w_848,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0528554-9fa5-48ff-b751-9843676a653d_574x800.gif 848w, https://substackcdn.com/image/fetch/$s_!rYA7!,w_1272,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0528554-9fa5-48ff-b751-9843676a653d_574x800.gif 1272w, https://substackcdn.com/image/fetch/$s_!rYA7!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0528554-9fa5-48ff-b751-9843676a653d_574x800.gif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><em>Source: <a href="https://chat.openai.com/g/g-WJ9KnuHzu-name-crafter">https://chat.openai.com/g/g-WJ9KnuHzu-name-crafter</a></em></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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[System I learned for Organizing knowledge]]></title><description><![CDATA[From Nodes to Networks: Understanding the Architecture of My Personal Knowledge Organizer]]></description><link>https://devden.raghavan.studio/p/system-i-learned-for-organizing-knowledge</link><guid isPermaLink="false">https://devden.raghavan.studio/p/system-i-learned-for-organizing-knowledge</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Tue, 18 Jul 2023 17:30:05 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!gE9U!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F650cb33b-9fdb-429a-8ffc-0e103e34280c_6912x3456.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!gE9U!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F650cb33b-9fdb-429a-8ffc-0e103e34280c_6912x3456.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gE9U!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F650cb33b-9fdb-429a-8ffc-0e103e34280c_6912x3456.png 424w, https://substackcdn.com/image/fetch/$s_!gE9U!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F650cb33b-9fdb-429a-8ffc-0e103e34280c_6912x3456.png 848w, https://substackcdn.com/image/fetch/$s_!gE9U!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F650cb33b-9fdb-429a-8ffc-0e103e34280c_6912x3456.png 1272w, https://substackcdn.com/image/fetch/$s_!gE9U!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F650cb33b-9fdb-429a-8ffc-0e103e34280c_6912x3456.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gE9U!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F650cb33b-9fdb-429a-8ffc-0e103e34280c_6912x3456.png" width="1200" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/650cb33b-9fdb-429a-8ffc-0e103e34280c_6912x3456.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:728,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:21928383,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!gE9U!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F650cb33b-9fdb-429a-8ffc-0e103e34280c_6912x3456.png 424w, https://substackcdn.com/image/fetch/$s_!gE9U!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F650cb33b-9fdb-429a-8ffc-0e103e34280c_6912x3456.png 848w, https://substackcdn.com/image/fetch/$s_!gE9U!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F650cb33b-9fdb-429a-8ffc-0e103e34280c_6912x3456.png 1272w, https://substackcdn.com/image/fetch/$s_!gE9U!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F650cb33b-9fdb-429a-8ffc-0e103e34280c_6912x3456.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><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>In today&#8217;s fast-paced world, staying organized and effectively managing our time and tasks has become more important than ever. In this post, I will share with you various tools and techniques I have implemented to capture, organize, and plan my knowledge. By combining analog and digital tools, I have created a system that allows me to stay on top of my<em> daily activities, make informed decisions, manage my reading materials, organize digital files, and efficiently tackle tasks and projects</em>. Let&#8217;s dive into the details of my organizational journey.</p><h2><strong>Daily Planning</strong></h2><p>A <em>physical diary</em> has become essential for me to stay organized daily. I have found great value in using the diary created by <a href="https://jamesclear.com/habit-journal">James Clear</a>, a renowned productivity expert and author. Its simplicity and effectiveness make it ideal for capturing and organizing my daily activities. I dedicate a section for each day, allowing me to note down tasks, appointments, and important events. Additionally, I integrate a calendar entry to execute those tasks, ensuring nothing slips through the cracks.</p><h4><strong>Rapid Logging</strong></h4><p>Within my physical diary, I employ a technique known as rapid logging. Each morning, I swiftly jot down tasks, events, and important notes for the day. The simplicity and speed of this method allow me to start my day with clarity and purpose.</p><h4><strong>Migration</strong></h4><p>The physical diary also aids in migrating tasks. Any task I couldn&#8217;t complete today gets assessed and, if still relevant, is moved to the following day or a future date. This act of consciously migrating tasks ensures I always work on the most important.</p><h4><strong>Indexing</strong></h4><p>To enhance the accessibility of my diary, I have implemented an indexing system. Within my diary, I dedicate a section specifically for indexing. This section acts as a roadmap, allowing me to navigate to specific months or important notes quickly. By indexing my entries, I save valuable time that would otherwise be spent flipping through pages, ensuring that I can effortlessly retrieve the information I need.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5xwc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530959ae-70c6-45f4-a5e9-f357ca2ec9e4_1936x1528.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5xwc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530959ae-70c6-45f4-a5e9-f357ca2ec9e4_1936x1528.jpeg 424w, https://substackcdn.com/image/fetch/$s_!5xwc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530959ae-70c6-45f4-a5e9-f357ca2ec9e4_1936x1528.jpeg 848w, https://substackcdn.com/image/fetch/$s_!5xwc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530959ae-70c6-45f4-a5e9-f357ca2ec9e4_1936x1528.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!5xwc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530959ae-70c6-45f4-a5e9-f357ca2ec9e4_1936x1528.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5xwc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530959ae-70c6-45f4-a5e9-f357ca2ec9e4_1936x1528.jpeg" width="526" height="415.092032967033" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/530959ae-70c6-45f4-a5e9-f357ca2ec9e4_1936x1528.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1149,&quot;width&quot;:1456,&quot;resizeWidth&quot;:526,&quot;bytes&quot;:417206,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&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_!5xwc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530959ae-70c6-45f4-a5e9-f357ca2ec9e4_1936x1528.jpeg 424w, https://substackcdn.com/image/fetch/$s_!5xwc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530959ae-70c6-45f4-a5e9-f357ca2ec9e4_1936x1528.jpeg 848w, https://substackcdn.com/image/fetch/$s_!5xwc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530959ae-70c6-45f4-a5e9-f357ca2ec9e4_1936x1528.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!5xwc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530959ae-70c6-45f4-a5e9-f357ca2ec9e4_1936x1528.jpeg 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><h2><strong>Weekly Strategy</strong></h2><p>While the daily diary helps me manage my immediate tasks, I also recognize the importance of long-term planning. Every Sunday, I allocate time to review the previous week's activities and plan for the upcoming week. This reflective practice helps me gain insights into my progress, identify areas for improvement, and set achievable goals. I can approach each week with clarity and purpose by dedicating this time to strategize.</p><h2><strong>Read-it-later</strong></h2><p>In today&#8217;s information age, managing digital content has become crucial. Instapaper has proven to be an invaluable tool as a read-it-later app. Whenever I encounter an article or webpage that I want to read but don&#8217;t have immediate time for, I simply enqueue it to <em>Instapaper</em>. This allows me to create a curated list of reading materials that I can access at my convenience. The ability to annotate and highlight important topics within Instapaper further enhances my reading experience. To ensure that my highlights and annotations from Kindle and Instapaper are not lost in the digital void, I rely on <em>Readwise</em>. This powerful tool automatically syncs all my highlights and annotations, consolidating them in one place. The seamless integration between Readwise and Evernote, my primary note-taking tool, enables me to transfer and organize these valuable insights for future reference effortlessly. By centralizing my highlights, Readwise enhances my knowledge retention and makes it easier to revisit key concepts.</p><h2><strong>Getting Things Done</strong></h2><p>I rely on <a href="https://culturedcode.com/things/">Things</a>, a task management app inspired by <strong>David Allen</strong>&#8217;s Getting Things Done (GTD) methodology, to manage my tasks and projects effectively. Things app provides a simple yet powerful interface for capturing new ideas and to-dos. I can easily assign due dates, prioritize tasks, and categorize them into specific projects or areas of focus. Its flexibility allows me to schedule tasks for specific dates or mark them for completion at any time in the future. With Things, I have found a reliable tool to implement GTD principles and stay on top of my commitments.</p><h2><strong>Time Blocking</strong></h2><p>I employ the time-blocking method to ensure that I make the most of my time. Within my physical diary and the Things app, I allocate specific time slots for focused work and block it on my Google Calendar. This proactive scheduling allows me to allocate sufficient time for each task and prevents the day from slipping away unproductively.</p><h3><strong>PARA Technique</strong></h3><p>Evernote has become the backbone of my note-taking system for more than a decade. I organize my notes using the PARA method, a framework introduced by Tiago Forte. This method categorizes my notes into four distinct sections: <em>Projects, Areas, Resources, and Archives</em>. Projects represent specific endeavors or goals, while Areas encompass broader aspects of my life, such as work, personal development, or hobbies. Resources consist of valuable information and references, while Archives house completed or less relevant materials.</p><div id="youtube2-T6Mfl1OywM8" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;T6Mfl1OywM8&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/T6Mfl1OywM8?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p> I can easily retrieve and manage my notes across various contexts using Evernote's powerful search and tagging features. Extending the PARA method to my digital files, I have implemented a structured organization system on Google Drive. I can efficiently store and retrieve digital documents by mirroring the same Projects, Areas, Resources, and Archives categories on my Drive. This approach ensures that I maintain consistency across both physical and digital mediums, creating a seamless and comprehensive organizational ecosystem.</p><h2><strong>Conclusion</strong></h2><p>In this post, I have shared the tools and techniques I use to organize and plan my life effectively. I have created a cohesive system that harmonizes analog and digital tools by incorporating a physical diary, Instapaper, Readwise, Evernote, Google Drive, and Things. This combination empowers me to capture ideas, manage tasks, organize knowledge, and achieve my goals with greater efficiency and peace of mind. I hope that by sharing my journey, you have gained valuable insights and inspiration to develop your personalized organizational system. Finding the right tools and techniques that resonate with you is key to streamlining your life and maximizing productivity. Using these tools, I&#8217;ve captured, organized, and executed my life plans. It&#8217;s important to remember that the best systems are the ones that work for you. Take the time to test, tweak, and refine these methods to suit your own needs and habits.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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[Build Personal ChatGPT Using Your Data]]></title><description><![CDATA[Harnessing AI to Build Your Personal Secure Knowledge Navigator]]></description><link>https://devden.raghavan.studio/p/chatgpt-using-your-own-data</link><guid isPermaLink="false">https://devden.raghavan.studio/p/chatgpt-using-your-own-data</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Sat, 08 Jul 2023 12:01:53 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe4a3c3b-c438-4973-b24c-8e22a014a66b_6912x3456.png" 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_!aoMg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe4a3c3b-c438-4973-b24c-8e22a014a66b_6912x3456.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aoMg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe4a3c3b-c438-4973-b24c-8e22a014a66b_6912x3456.png 424w, https://substackcdn.com/image/fetch/$s_!aoMg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe4a3c3b-c438-4973-b24c-8e22a014a66b_6912x3456.png 848w, https://substackcdn.com/image/fetch/$s_!aoMg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe4a3c3b-c438-4973-b24c-8e22a014a66b_6912x3456.png 1272w, https://substackcdn.com/image/fetch/$s_!aoMg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe4a3c3b-c438-4973-b24c-8e22a014a66b_6912x3456.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aoMg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe4a3c3b-c438-4973-b24c-8e22a014a66b_6912x3456.png" width="1456" height="728" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/be4a3c3b-c438-4973-b24c-8e22a014a66b_6912x3456.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:728,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:701022,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!aoMg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe4a3c3b-c438-4973-b24c-8e22a014a66b_6912x3456.png 424w, https://substackcdn.com/image/fetch/$s_!aoMg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe4a3c3b-c438-4973-b24c-8e22a014a66b_6912x3456.png 848w, https://substackcdn.com/image/fetch/$s_!aoMg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe4a3c3b-c438-4973-b24c-8e22a014a66b_6912x3456.png 1272w, https://substackcdn.com/image/fetch/$s_!aoMg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe4a3c3b-c438-4973-b24c-8e22a014a66b_6912x3456.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><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>Have you ever wished for your own AI assistant that knows your taste in literature, understands your notes, and can converse with the nuances of your favorite authors? Today, we're embarking on a unique journey of turning this concept into reality. We will guide you through building your own ChatGPT using personal data like your favorite books or articles. <br><br>This post is for technical readers who love tinkering and the common reader who cherishes their collection of digital literature. </p><h2>Why You Should Build Your ChatGPT</h2><p>In this era of information overload, our digital lives are brimming with data, much of which contains valuable knowledge and insights. Daily, we consume vast amounts of digital content, from the latest news articles to in-depth academic papers, eBooks, and even personal notes. While this wealth of data provides us with immense knowledge, navigating through it or retrieving specific pieces of information can often be daunting.</p><p>That's where building your personal ChatGPT comes into the picture. By leveraging artificial intelligence, we can make our data more interactive, accessible, and utilizable.</p><p>Here are some key reasons why you should consider building your own ChatGPT:</p><h3>1. Personalized Knowledge Navigator </h3><p>Your personalized ChatGPT can function as a unique knowledge navigator, understanding your notes, recalling details from your favorite books, and contextually answering your questions. It can even simulate the writing styles of your favorite authors, providing a novel and engaging way to interact with your data.</p><h3>2. Efficient Data Retrieval</h3><p>Instead of manually searching your files for specific information, your ChatGPT can provide efficient and relevant responses to your queries. This enables faster decision-making and saves precious time.</p><h3>3. Learning &amp; Development</h3><p>Building a chatbot from your data also serves as an excellent learning experience. It offers a hands-on introduction to exciting areas of AI, such as Natural Language Processing, information retrieval, and machine learning.</p><h3>4. Privacy and Control</h3><p>With your personal ChatGPT, you have complete control over your data. You can run it <strong>locally</strong> to ensure data privacy, and you decide what information to feed into your model. This is a significant advantage in a world where data privacy is a growing concern.</p><h2> How to Build Your ChatGPT</h2><p>Curious to get started? Visit this <a href="https://github.com/raghavan/PdfGptIndexer">GitHub repository</a>  for a step-by-step guide and complete codebase. </p><h3>Gathering Your Data</h3><p>The first step involves gathering all your text data into a common source. You could have a variety of text files, PDFs, eBooks, and other forms of text data. You can even employ the Google Drive reader to index data straight from your Google Drive.</p><p>For our toy project,  let us process a batch of PDF files, which are located in your  local folder.</p><ul><li><p>Iterate all PDF files in the specified folder.</p></li><li><p>Extract the text from each PDF.</p></li><li><p>Write the extracted text into a `.txt` file in the provided output folder.</p></li><li><p>Split the document into chunks that fit into <strong>GPT-2</strong> tokenization length limits. Here we are using the `RecursiveCharacterTextSplitter` class from the `langchain` library.</p></li><li><p>Return all chunks as a list.</p></li></ul><pre><code><strong>def process_pdf_folder(pdf_folder_name,txt_folder_name):</strong>

    tokenizer = GPT2TokenizerFast.from_pretrained("gpt2")

    text_splitter = RecursiveCharacterTextSplitter(

        chunk_size = 512,

        chunk_overlap  = 24,

        length_function = tokenizer.encode,

    )

    all_chunks = []

    for filename in os.listdir(pdf_folder_name):

        if filename.endswith(".pdf"):

            filepath = os.path.join(pdf_folder_name, filename)

            doc = textract.process(filepath)

            txt_filename = filename.replace(".pdf", ".txt")

            txt_filepath = os.path.join(txt_folder_name, txt_filename)

            with open(txt_filepath, 'w') as f:

                f.write(doc.decode('utf-8'))

            with open(txt_filepath, 'r') as f:

                text = f.read()

            chunks = text_splitter.create_documents([text])

            all_chunks.append(chunks)

    return all_chunks</code></pre><h3>Indexing Your Data</h3><p>Once you've gathered your data, you'll need to index it. This is where <em><a href="https://python.langchain.com/">langchain</a></em> comes into play. Langchain is a powerful tool adept at language understanding tasks. It will create document embeddings from the manageable chunks of text extracted from your files.</p><p>To store these embeddings, either use local storage or a cloud provider,  </p><p>1. <strong>FAISS</strong> (Facebook AI Similarity Search) is a library that allows efficient similarity search and clustering of dense vectors. Your embeddings stored in a FAISS database can be effectively retrieved when interacting with your chatbot.</p><p>2. <strong>Pinecone</strong> is a vector database designed for machine learning applications. It's ideal if you prefer storing your embeddings in the cloud.</p><p>If you are interested in exploring other vector databases, I recommend watching Fireship's video to learn more about different vector databases.</p><div id="youtube2-klTvEwg3oJ4" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;klTvEwg3oJ4&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/klTvEwg3oJ4?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Let us use <strong>FAISS</strong> for our toy project. For the chunks generated above, embeddings should be created and stored in FAISS.</p><pre><code>for chunk in all_chunks:
    FAISS.from_documents(chunk, embeddings)    </code></pre><h3>Get User Query</h3><p>We now have a system that can accept a question and fetch the most suitable response from our database of document chunks. Get user queries and then feed them into our <em>ConversationalRetrievalChain</em> instance, which wraps around OpenAI's language model.</p><pre><code>chat_history = []

qa = ConversationalRetrievalChain.from_llm(OpenAI(temperature=0.1), db.as_retriever())

while True:

    query = input("Enter a query (type 'exit' to quit): ")
    if query.lower() == "exit":      
        break

    result = qa({"question": query, "chat_history": chat_history})
    chat_history.append((query, result['answer']))
    print(result['answer'])
</code></pre><p>Instead of rebuilding this, you can simply download the entire code snippet from this <a href="https://github.com/raghavan/PdfGptIndexer">GitHub repository</a>. Happy building!</p><h2>Addressing Privacy Concerns</h2><p>When dealing with personal data, we understand the paramount importance of privacy. OpenAI does not store the data passed to it. Moreover, you can run the system locally with FAISS if you prefer not to publish it online. Your data is securely stored and inaccessible to others for cloud storage via Pinecone.</p><h2>A Personal Case Study</h2><p>As a testament to the power of this tooling, I've indexed all the publicly available teachings of <a href="https://en.wikipedia.org/wiki/Sivananda_Saraswati">Swami Sivananda</a>, a cherished author of mine. Using this, I've built a chatbot to engage in enlightening discussions, reflecting his wisdom. I invite you to experience a conversation with this AI version of Swami Sivananda at <a href="https://www.swamisivananda.ai/">swamisivananda.ai</a>. This exemplifies the unique and personal interactions you can create by building your own ChatGPT. </p><p>Remember, technology is a powerful tool, but our creativity transforms this tool into something magical. Keep exploring, and keep innovating!</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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[Principles Behind React's Performance]]></title><description><![CDATA[React Fiber]]></description><link>https://devden.raghavan.studio/p/principles-behind-reacts-performance</link><guid isPermaLink="false">https://devden.raghavan.studio/p/principles-behind-reacts-performance</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Wed, 25 Jan 2023 16:20:03 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!slGx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46b83b97-2c3c-4272-8d08-eec34e3773c9_1400x1400.png" 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_!slGx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46b83b97-2c3c-4272-8d08-eec34e3773c9_1400x1400.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!slGx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46b83b97-2c3c-4272-8d08-eec34e3773c9_1400x1400.png 424w, https://substackcdn.com/image/fetch/$s_!slGx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46b83b97-2c3c-4272-8d08-eec34e3773c9_1400x1400.png 848w, https://substackcdn.com/image/fetch/$s_!slGx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46b83b97-2c3c-4272-8d08-eec34e3773c9_1400x1400.png 1272w, https://substackcdn.com/image/fetch/$s_!slGx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46b83b97-2c3c-4272-8d08-eec34e3773c9_1400x1400.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!slGx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46b83b97-2c3c-4272-8d08-eec34e3773c9_1400x1400.png" width="1400" height="1400" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/46b83b97-2c3c-4272-8d08-eec34e3773c9_1400x1400.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1400,&quot;width&quot;:1400,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1958455,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!slGx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46b83b97-2c3c-4272-8d08-eec34e3773c9_1400x1400.png 424w, https://substackcdn.com/image/fetch/$s_!slGx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46b83b97-2c3c-4272-8d08-eec34e3773c9_1400x1400.png 848w, https://substackcdn.com/image/fetch/$s_!slGx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46b83b97-2c3c-4272-8d08-eec34e3773c9_1400x1400.png 1272w, https://substackcdn.com/image/fetch/$s_!slGx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46b83b97-2c3c-4272-8d08-eec34e3773c9_1400x1400.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><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>Recently I started learning the fundamental principles behind React. I was curious to learn more about the principles and techniques that influence the performance of React. With the help of ChatGpt and <a href="https://github.com/facebook/react">React code</a>, I started getting under the hood.</p><p>React's performance is based on a few key principles,</p><h3>Virtual DOM</h3><p>React uses a virtual representation of the actual DOM, called a Virtual DOM. This allows React to compare the previous state of a component to the new state and only update the parts of the DOM that have changed.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YQdv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb310a0-458d-4d2e-a799-633c6959df16_1080x240.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YQdv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb310a0-458d-4d2e-a799-633c6959df16_1080x240.webp 424w, https://substackcdn.com/image/fetch/$s_!YQdv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb310a0-458d-4d2e-a799-633c6959df16_1080x240.webp 848w, https://substackcdn.com/image/fetch/$s_!YQdv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb310a0-458d-4d2e-a799-633c6959df16_1080x240.webp 1272w, https://substackcdn.com/image/fetch/$s_!YQdv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb310a0-458d-4d2e-a799-633c6959df16_1080x240.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YQdv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb310a0-458d-4d2e-a799-633c6959df16_1080x240.webp" width="1080" height="240" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/afb310a0-458d-4d2e-a799-633c6959df16_1080x240.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:240,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:29504,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&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_!YQdv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb310a0-458d-4d2e-a799-633c6959df16_1080x240.webp 424w, https://substackcdn.com/image/fetch/$s_!YQdv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb310a0-458d-4d2e-a799-633c6959df16_1080x240.webp 848w, https://substackcdn.com/image/fetch/$s_!YQdv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb310a0-458d-4d2e-a799-633c6959df16_1080x240.webp 1272w, https://substackcdn.com/image/fetch/$s_!YQdv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafb310a0-458d-4d2e-a799-633c6959df16_1080x240.webp 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><em>(source: <a href="https://beta.reactjs.org/learn/preserving-and-resetting-state">https://beta.reactjs.org/learn/preserving-and-resetting-state</a>)</em></p><h3>Reconciliation</h3><p>It is the process that React uses to determine what changes need to be made to the actual DOM (Document Object Model) to align it with the virtual DOM (React's representation of the actual DOM).</p><h3>Immutability</h3><p>React uses immutability to ensure that the component state cannot be directly modified, which allows for better performance by avoiding unnecessary re-renders.</p><h3>Lazy loading &amp; Suspense</h3><p>React's new feature, called Lazy loading &amp; Suspense, allows developers to load only the needed components, which can help improve the application's performance.</p><h3>Shallow compare</h3><p>React uses a shallow comparison algorithm to determine if two objects or values are equal. This allows React to determine if a component's props or state have changed and only update the component if necessary.</p><h3>Batching updates</h3><p> React will batch updates together rather than applying them individually, reducing the time spent updating the DOM.</p><h1>React Fiber</h1><p>In this article, we will learn deep dive into algorithms behind <em>Reconciliation</em>.</p><p> React Fiber is a new reconciliation algorithm that was introduced in React v16. It is more fine-grained and flexible than the previous algorithm, allowing better control over the rendering process and improved performance. It builds upon the basic techniques used in the previous version of React's reconciliation algorithm, such as the Virtual DOM and keyed reconciliation. However, it also introduces new algorithms and data structures that provide more fine-grained control over the rendering process and improved performance. Here is the type defined in <a href="https://github.com/facebook/react/blob/main/packages/react-reconciler/src/ReactInternalTypes.js#L49">React codebase</a>.</p><h3>Keyed reconciliation</h3><p>React achieves O(n) performance for reconciliation by using a technique called "keyed reconciliation". This means that React assigns a unique key to each element in the virtual DOM, and when it performs reconciliation, it uses these keys to match elements in the virtual DOM with elements in the actual DOM.</p><p>Using this approach, React can determine which elements have been added, removed, or moved in <strong>O(n) time instead of the O(n^3)</strong> time that would be required if it had to compare all the elements in the virtual and actual DOMs. This is one of the reasons why React can perform updates efficiently, even when dealing with large, complex UIs.</p><h3>Priority-based rendering</h3><p>React Fiber uses a priority-based rendering system, which allows certain updates to be given higher priority and processed more quickly. This allows for more critical updates, such as user input, to be handled with a higher level of responsiveness.</p><h3>Coarse-grained updates</h3><p>React Fiber uses a technique called "coarse-grained updates," which group similar updates together and apply them at once. This reduces the number of times the DOM needs to be updated, improving performance.</p><h3>Incremental rendering</h3><p>React Fiber uses an " incremental rendering technique," which allows updates to be spread out over multiple frames rather than applying them all at once. This allows the browser to handle other tasks, such as layout and painting, in between updates, resulting in smoother and more responsive updates.</p><h3>Back-tracking</h3><p>React Fiber uses a backtracking mechanism to recover from failed renderings. It allows React to retrace its steps, undo any changes made in the previous frame, and then retry the render with new data.</p><p>React Fiber uses a backtracking mechanism to recover from failed renderings. The specific implementation of backtracking in React Fiber is complex, and it's impossible to show you the exact code in this forum. However, the basic idea is that React uses a <strong>stack to keep track</strong> of the state of each component during the rendering process. React can pop the state off the stack when a component fails to render, undo any changes made in the previous frame, and then retry the render with new data.</p><p>Here is an example of how this might look in a simplified version:</p><pre><code>class MyComponent extends React.Component {
  state = {
    count: 0
  };

  handleClick = () =&gt; {
    this.setState(({ count }) =&gt; ({
      count: count + 1
    }));
  };

  render() {
    return (
      &lt;div&gt;
        &lt;p&gt;Count: {this.state.count}&lt;/p&gt;
        &lt;button onClick={this.handleClick}&gt;Increment&lt;/button&gt;
      &lt;/div&gt;
    );
  }
}</code></pre><p>In this example, when the button is clicked, the component's state is updated with the new count value, and the component will re-render. The backtracking mechanism will come into play if the render function throws an error due to some unexpected state. React would undo the state change that caused the error and retry the render again.</p><p>It's important to note that React Fiber backtracking is an advanced feature that is not intended to be used directly by developers and is not exposed through the public API. The feature is only used by React internally to improve performance and stability.</p><h3>Linked-list data structure</h3><p>React Fiber uses a linked-list data structure to keep track of the different components that need to be updated and their respective priorities. This allows React to process updates efficiently according to their priority and reduces complexity.</p><h3>Interruptibility</h3><p>React Fiber allows the rendering process to be interrupted, in case of high-priority updates, such as user input. This allows React to switch between different rendering tasks and prioritize the most important ones.</p><h3>References</h3><ul><li><p><a href="https://www.velotio.com/engineering-blog/react-fiber-algorithm">https://www.velotio.com/engineering-blog/react-fiber-algorithm</a></p></li><li><p><a href="https://indepth.dev/posts/1008/inside-fiber-in-depth-overview-of-the-new-reconciliation-algorithm-in-react">https://indepth.dev/posts/1008/inside-fiber-in-depth-overview-of-the-new-reconciliation-algorithm-in-react</a></p></li></ul><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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[Improve Developer Productivity using Work Blocks]]></title><description><![CDATA[Efficiency & Flow]]></description><link>https://devden.raghavan.studio/p/improve-developer-productivity-using</link><guid isPermaLink="false">https://devden.raghavan.studio/p/improve-developer-productivity-using</guid><dc:creator><![CDATA[Raghavan Lakshmana]]></dc:creator><pubDate>Tue, 17 Jan 2023 16:19:57 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!6wzq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe611008-886a-48ef-86c6-b2922391a60f_1920x1080.png" 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_!6wzq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe611008-886a-48ef-86c6-b2922391a60f_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6wzq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe611008-886a-48ef-86c6-b2922391a60f_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!6wzq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe611008-886a-48ef-86c6-b2922391a60f_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!6wzq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe611008-886a-48ef-86c6-b2922391a60f_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!6wzq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe611008-886a-48ef-86c6-b2922391a60f_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6wzq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe611008-886a-48ef-86c6-b2922391a60f_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fe611008-886a-48ef-86c6-b2922391a60f_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3685568,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6wzq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe611008-886a-48ef-86c6-b2922391a60f_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!6wzq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe611008-886a-48ef-86c6-b2922391a60f_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!6wzq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe611008-886a-48ef-86c6-b2922391a60f_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!6wzq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe611008-886a-48ef-86c6-b2922391a60f_1920x1080.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><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>I&nbsp; used to work hard to get things done effectively. I was always working, but it wasn't effective. In the end, I was left drained and discouraged. The frustration led me to research time management techniques. I recently started experimenting with work blocks. I realized it helps me get things done sooner and enables me to measure my efforts and identify a potential way to improve them.</p><h3>Illusion of time</h3><p>Time is an imaginary concept used to measure the distance between two events. Simply applying time-based metrics will not help a developer who does a collaborative, creative, and complex task. Though there are several frameworks and techniques to improve productivity, it takes discipline to perceive time properly and strategy to use it judiciously. The 24-hour day is all we got, and it's seldom enough. Before you know it, the day is gone, and you're still far behind in your project.</p><h3>Developer Efficiency</h3><p>A <a href="https://readwise.io/reader/shared/01gq047r4hgx0j7dt2x12eg8zq">research study</a> on software engineer productivity found that developers' happiness can lead to higher learning abilities, improved focus and productivity, and lower mental fatigue. Unhappiness, however, can lead to delays in process activities, sloppy work, and breaks in the flow of work. </p><p>There are several definitions, frameworks, and measurements of developer productivity, and the <a href="https://readwise.io/reader/shared/01gnypc0grc53sq537afc7nawa">SPACE</a> framework provides an excellent way of gauging developer productivity. <em>Satisfaction, Performance, Activity, Collaboration, and Efficienc</em>y are the key aspects of the SPACE framework. It defines efficiency and flow as the ability to complete work or make progress with minimal interruptions or delays, individually or through a system.</p><blockquote><p><em>[excerpt from SPACE] For individual efficiency (flow), it's important to set boundaries to get productive and stay productive&#8212;for example, by blocking off time for a focus period. Individual efficiency is often measured by uninterrupted focus time or the time within value-creating apps (e.g., the time a developer spends in the integrated development environment is likely to be considered "productive" time).</em></p></blockquote><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://devden.raghavan.studio/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 Dev Den! 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><h3>What are work blocks?</h3><p>A work block is a dedicated block of time on a calendar that measures accomplishments. First, it&#8217;s important to know that a work block isn&#8217;t a unit of time but a unit of work accomplished. </p><p><em>Purpose</em>:&nbsp; Work blocks are specifically designated periods set aside for focused work on a specific task or project.</p><p><em>Prioritization:</em> Work blocks are often used to prioritize and manage time more effectively, to be more productive, and to meet deadlines. </p><p><em>Monitoring:</em>&nbsp; Work blocks serve as a unit of measurement over a week/day to quantify a developer's effort</p><p>A work block is a specific and purposeful time slot on the calendar, whereas normal calendar events can be anything from a meeting to a birthday party.</p><h3>How to use work blocks</h3><p>You should always break big tasks into smaller ones, called the <strong>Act of decomposition, </strong>so you can finish in a work block or, at most, three work blocks. The duration of a work block can be one, two, or three hours, depending on the sociological and technological conditions.&nbsp; However, the duration shouldn&#8217;t be less than 25 minutes,&nbsp; and there are times my focus blocks are as long as three hours. Using the Pomodoro clock to measure focus time is also an option. I use the free version of the <a href="https://centered.app">Centered&nbsp;app</a> to stay in the flow state. </p><p>I create events on my calendar with a short description which is easy enough to categorize my work block. For example, last week, I worked on some pull requests (pr), real-time synchronization (real-time), and other activities, which you can see in the image below.</p><p>Here is an Interface I built by syncing Google Calendar with Airtable.&nbsp; </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LtQs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cd7ac7d-c287-481d-b6ca-7b6f971dc9f1_1443x1008.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LtQs!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cd7ac7d-c287-481d-b6ca-7b6f971dc9f1_1443x1008.png 424w, https://substackcdn.com/image/fetch/$s_!LtQs!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cd7ac7d-c287-481d-b6ca-7b6f971dc9f1_1443x1008.png 848w, https://substackcdn.com/image/fetch/$s_!LtQs!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cd7ac7d-c287-481d-b6ca-7b6f971dc9f1_1443x1008.png 1272w, https://substackcdn.com/image/fetch/$s_!LtQs!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cd7ac7d-c287-481d-b6ca-7b6f971dc9f1_1443x1008.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LtQs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cd7ac7d-c287-481d-b6ca-7b6f971dc9f1_1443x1008.png" width="1443" height="1008" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8cd7ac7d-c287-481d-b6ca-7b6f971dc9f1_1443x1008.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1008,&quot;width&quot;:1443,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:398410,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&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_!LtQs!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cd7ac7d-c287-481d-b6ca-7b6f971dc9f1_1443x1008.png 424w, https://substackcdn.com/image/fetch/$s_!LtQs!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cd7ac7d-c287-481d-b6ca-7b6f971dc9f1_1443x1008.png 848w, https://substackcdn.com/image/fetch/$s_!LtQs!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cd7ac7d-c287-481d-b6ca-7b6f971dc9f1_1443x1008.png 1272w, https://substackcdn.com/image/fetch/$s_!LtQs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cd7ac7d-c287-481d-b6ca-7b6f971dc9f1_1443x1008.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><em>(built with Airtable)</em></p><h3>Measure</h3><p>I strongly believe in what Peter Drucker says "What gets measured gets improved". Monitoring the developer's effort and finding the effort's outcomes is important.  I monitor my input metrics through work blocks, and here are the numbers I measure each week to understand my efficiency and flow. There are several tools and techniques to measure the output metrics, which I will cover in the future.</p><p>This gives me a weekly snapshot of (top left to right)</p><ol><li><p>How many work blocks have I completed </p></li><li><p>Total number of work block minutes</p></li><li><p>The average duration (mins) of my work block</p></li><li><p>A bar chart with a distribution of work blocks grouped by my description</p></li><li><p>A pie chart to show the amount. of mins spent on each category of work block</p></li><li><p>A line chart to show the work blocks across different dates in a week</p></li><li><p>Final bar chart to show when I am more active at a time of a day</p></li></ol><div><hr></div><p><em>Here are the references and tools mentioned in my article,</em></p><p><em>References</em></p><ul><li><p><em><a href="https://readwise.io/reader/shared/01gq047r4hgx0j7dt2x12eg8zq">Happiness and the Productivity of Software Engineers</a></em></p></li><li><p><em><a href="https://readwise.io/reader/shared/01gnypc0grc53sq537afc7nawa">SPACE Framework</a></em></p></li></ul><p><em>Tools</em></p><ul><li><p><em><a href="https://www.centered.app/">Centered App</a></em></p></li><li><p><em><a href="https://en.wikipedia.org/wiki/Pomodoro_Technique">Pomodoro</a></em></p></li><li><p>Google Calendar</p></li><li><p><em><a href="https://airtable.com/">Airtable</a></em></p></li></ul>]]></content:encoded></item></channel></rss>