<?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[megatunger.]]></title><description><![CDATA[megatunger. is a collection of Son Tung’s quick thoughts on music and the occasional No One Asked opinions]]></description><link>https://megatunger.substack.com</link><image><url>https://substackcdn.com/image/fetch/$s_!fwx-!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F994c1339-a7d3-4347-bbce-906e14c1ed99_1280x1280.png</url><title>megatunger.</title><link>https://megatunger.substack.com</link></image><generator>Substack</generator><lastBuildDate>Mon, 06 Apr 2026 09:01:03 GMT</lastBuildDate><atom:link href="https://megatunger.substack.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Thomas Hoang]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[megatunger@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[megatunger@substack.com]]></itunes:email><itunes:name><![CDATA[Son Tung H.]]></itunes:name></itunes:owner><itunes:author><![CDATA[Son Tung H.]]></itunes:author><googleplay:owner><![CDATA[megatunger@substack.com]]></googleplay:owner><googleplay:email><![CDATA[megatunger@substack.com]]></googleplay:email><googleplay:author><![CDATA[Son Tung H.]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[A Taste of French Music]]></title><description><![CDATA[I don&#8217;t speak French, but I do feel it.]]></description><link>https://megatunger.substack.com/p/a-taste-of-french-music</link><guid isPermaLink="false">https://megatunger.substack.com/p/a-taste-of-french-music</guid><dc:creator><![CDATA[Son Tung H.]]></dc:creator><pubDate>Sun, 06 Jul 2025 15:38:33 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/oR_SZR_tmxM" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I don&#8217;t speak French, but I do feel it. This playlist isn&#8217;t about understanding the song, but it can give you a vibe, like a trip to Paris.</p><h3>1. Bibi Flash - <strong>Histoire d'1 soir (Bye bye les gale&#768;res)</strong></h3><div id="youtube2-I-980vITEtI" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;I-980vITEtI&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/I-980vITEtI?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>Disco, sassy, and vibing. </p><p></p><h3><strong>2. Emma P&#233;ters - Gis&#232;le (feat. Juicy Cola)</strong></h3><div id="youtube2-n7RpZRs0JD8" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;n7RpZRs0JD8&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/n7RpZRs0JD8?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></p><h3><strong>3. Stacey Kent - Au coin du monde</strong></h3><div id="youtube2-bgNZ1oFXK-Y" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;bgNZ1oFXK-Y&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/bgNZ1oFXK-Y?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>Like sipping coffee in a bookstore with too many thoughts.</p><p></p><h3><strong>4. Fran&#231;ois Feldman - Magic' Boul'Vard</strong></h3><div id="youtube2-BGZvPyfllMY" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;BGZvPyfllMY&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/BGZvPyfllMY?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>A sad love story hidden in the lyrics</p><p></p><h3>5. Jacques Brel - Ne me quitte pas</h3><div id="youtube2-oR_SZR_tmxM" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;oR_SZR_tmxM&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/oR_SZR_tmxM?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>One of those songs that can steal a tear. You feel how the man is begging his lover not to leave.</p><p>&#8220;Ne me quitte pas&#8221; - &#8220;Don&#8217;t leave me.&#8221;</p><p></p><h3>6. Jacques Brel - Quand on n'a que l'amour</h3><div id="youtube2-Vl3k5cwQ94Y" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;Vl3k5cwQ94Y&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/Vl3k5cwQ94Y?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></p><h3>7. Serge Gainsbourg &amp; Jane Birkin - <strong>Je t'aime moi non plus</strong></h3><p><em><strong>The most horniest song in French music</strong></em>. You&#8217;ll like it - because you&#8217;ve probably never heard anything like it</p><div id="youtube2-GlpDf6XX_j0" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;GlpDf6XX_j0&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/GlpDf6XX_j0?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></p><h3>8. Serge Gainsbourg - <strong>Couleur Caf&#233;</strong></h3><p>Catchy, playful, jazzy</p><div id="youtube2-qkKMESd_PHo" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;qkKMESd_PHo&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/qkKMESd_PHo?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></p><h3>9. Art Sullivan - Adieu Sois Heureuse</h3><div id="youtube2-SGLBDliLeEY" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;SGLBDliLeEY&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/SGLBDliLeEY?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></p><h3>10. Yves Montand - Les feuilles mortes</h3><p>Another heartbreaking melody.</p><div id="youtube2-Xo1C6E7jbPw" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;Xo1C6E7jbPw&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/Xo1C6E7jbPw?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></p><h3><strong>11. Charles Trenet - La Mer</strong></h3><p>99% you've probably heard this song.</p><div id="youtube2-fztkUuunI7g" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;fztkUuunI7g&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/fztkUuunI7g?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><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://megatunger.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading megatunger.! 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[What if a const isn't really constant in Javascript?]]></title><description><![CDATA[Last week, I received a support request from a junior developer on my startup team.]]></description><link>https://megatunger.substack.com/p/what-if-a-const-isnt-really-constant</link><guid isPermaLink="false">https://megatunger.substack.com/p/what-if-a-const-isnt-really-constant</guid><dc:creator><![CDATA[Son Tung H.]]></dc:creator><pubDate>Sat, 21 Jun 2025 14:07:43 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!6sVk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675c377-320a-494a-928a-c8d647175fe7_1572x684.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Last week, I received a support request from a junior developer on my startup team. He faced a weird bug, he spent the whole afternoon, even with ChatGPT, but still hit a dead end.</p><p><strong>Context</strong></p><ul><li><p>This is the config for a chart component. We&#8217;re using charts from &#8220;@ant-design/charts&#8221;.</p></li><li><p>He puts the default config in another TS file, as a const, then imports it using the spread operator, like below: <em>...ReportChartDefaultConfig</em>. Nothing changed.</p></li><li><p>He brings the config <strong>directly</strong> to the chart component, it works.</p></li><li><p>The twist here: it&#8217;s <em><strong>literally</strong></em> the exact same code. Nothing is different.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rl1s!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd589e18f-c177-4091-9e7a-dd0831d29907_1037x721.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rl1s!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd589e18f-c177-4091-9e7a-dd0831d29907_1037x721.png 424w, https://substackcdn.com/image/fetch/$s_!rl1s!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd589e18f-c177-4091-9e7a-dd0831d29907_1037x721.png 848w, https://substackcdn.com/image/fetch/$s_!rl1s!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd589e18f-c177-4091-9e7a-dd0831d29907_1037x721.png 1272w, https://substackcdn.com/image/fetch/$s_!rl1s!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd589e18f-c177-4091-9e7a-dd0831d29907_1037x721.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rl1s!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd589e18f-c177-4091-9e7a-dd0831d29907_1037x721.png" width="1037" height="721" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d589e18f-c177-4091-9e7a-dd0831d29907_1037x721.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:721,&quot;width&quot;:1037,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:90781,&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://megatunger.substack.com/i/166387430?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd589e18f-c177-4091-9e7a-dd0831d29907_1037x721.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_!rl1s!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd589e18f-c177-4091-9e7a-dd0831d29907_1037x721.png 424w, https://substackcdn.com/image/fetch/$s_!rl1s!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd589e18f-c177-4091-9e7a-dd0831d29907_1037x721.png 848w, https://substackcdn.com/image/fetch/$s_!rl1s!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd589e18f-c177-4091-9e7a-dd0831d29907_1037x721.png 1272w, https://substackcdn.com/image/fetch/$s_!rl1s!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd589e18f-c177-4091-9e7a-dd0831d29907_1037x721.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">The config chart is somehow working unreliably.</figcaption></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_!YJbq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31f9bdb0-8ae8-4941-befc-d4da4cb8cfbc_1146x1004.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YJbq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31f9bdb0-8ae8-4941-befc-d4da4cb8cfbc_1146x1004.png 424w, https://substackcdn.com/image/fetch/$s_!YJbq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31f9bdb0-8ae8-4941-befc-d4da4cb8cfbc_1146x1004.png 848w, https://substackcdn.com/image/fetch/$s_!YJbq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31f9bdb0-8ae8-4941-befc-d4da4cb8cfbc_1146x1004.png 1272w, https://substackcdn.com/image/fetch/$s_!YJbq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31f9bdb0-8ae8-4941-befc-d4da4cb8cfbc_1146x1004.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YJbq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31f9bdb0-8ae8-4941-befc-d4da4cb8cfbc_1146x1004.png" width="1146" height="1004" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/31f9bdb0-8ae8-4941-befc-d4da4cb8cfbc_1146x1004.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1004,&quot;width&quot;:1146,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:149196,&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://megatunger.substack.com/i/166387430?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31f9bdb0-8ae8-4941-befc-d4da4cb8cfbc_1146x1004.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_!YJbq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31f9bdb0-8ae8-4941-befc-d4da4cb8cfbc_1146x1004.png 424w, https://substackcdn.com/image/fetch/$s_!YJbq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31f9bdb0-8ae8-4941-befc-d4da4cb8cfbc_1146x1004.png 848w, https://substackcdn.com/image/fetch/$s_!YJbq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31f9bdb0-8ae8-4941-befc-d4da4cb8cfbc_1146x1004.png 1272w, https://substackcdn.com/image/fetch/$s_!YJbq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31f9bdb0-8ae8-4941-befc-d4da4cb8cfbc_1146x1004.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">The default config file was exported separately.</figcaption></figure></div><p><strong>First try</strong>: I believed he might not be paying attention to how React renders. It could be the chart renders with a non-filled config first, then the full config comes later. But logs show the props don&#8217;t change at all.</p><p><strong>Second try</strong>: Maybe the type of a nested property was changed. I was afraid he accidentally passed a string instead of an object or something. But things seemed normal.</p><p><strong>Third try</strong>: I jumped into the branch and threw in some console logs. <em><strong>By eye, I couldn&#8217;t see any difference</strong></em>. Then I decided to trust the machine more&#8212;used <strong>isEqual</strong> from lodash for deep compare.</p><p>Now it&#8217;s <em><strong>always</strong></em> false.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6sVk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675c377-320a-494a-928a-c8d647175fe7_1572x684.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6sVk!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675c377-320a-494a-928a-c8d647175fe7_1572x684.png 424w, https://substackcdn.com/image/fetch/$s_!6sVk!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675c377-320a-494a-928a-c8d647175fe7_1572x684.png 848w, https://substackcdn.com/image/fetch/$s_!6sVk!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675c377-320a-494a-928a-c8d647175fe7_1572x684.png 1272w, https://substackcdn.com/image/fetch/$s_!6sVk!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675c377-320a-494a-928a-c8d647175fe7_1572x684.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6sVk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675c377-320a-494a-928a-c8d647175fe7_1572x684.png" width="1456" height="634" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e675c377-320a-494a-928a-c8d647175fe7_1572x684.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:634,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:180481,&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://megatunger.substack.com/i/166387430?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675c377-320a-494a-928a-c8d647175fe7_1572x684.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_!6sVk!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675c377-320a-494a-928a-c8d647175fe7_1572x684.png 424w, https://substackcdn.com/image/fetch/$s_!6sVk!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675c377-320a-494a-928a-c8d647175fe7_1572x684.png 848w, https://substackcdn.com/image/fetch/$s_!6sVk!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675c377-320a-494a-928a-c8d647175fe7_1572x684.png 1272w, https://substackcdn.com/image/fetch/$s_!6sVk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675c377-320a-494a-928a-c8d647175fe7_1572x684.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">Object below is the original, the upper is from runtime. It&#8217;s looks so similar at first that i can not identify differences</figcaption></figure></div><p>At this point, I believe it was <strong>mutated</strong> during <strong>runtime</strong>. And I hate this. These kinds of bugs are crazy hard to trace.</p><p>This is not the first time. I once had to fix a bug where another dev shallow-cloned objects, and they stayed linked across components and layers. Then suddenly, one component mutated, and the whole chain broke, causing weird glitches and bugs. But this is the first time in my life I&#8217;ve seen a <strong>third-party lib</strong> <strong>mutate the props</strong> it was passed, which was <strong>linked to our default config</strong>.</p><p><strong>The solution?</strong> Pretty simple: I replace it with cloneDeep from lodash. It ensures you create a new object with the same values, but different memory references.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ql0F!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20b0e0e4-2a61-4712-8b54-cd3e1402cf7e_2460x1532.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ql0F!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20b0e0e4-2a61-4712-8b54-cd3e1402cf7e_2460x1532.png 424w, https://substackcdn.com/image/fetch/$s_!ql0F!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20b0e0e4-2a61-4712-8b54-cd3e1402cf7e_2460x1532.png 848w, https://substackcdn.com/image/fetch/$s_!ql0F!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20b0e0e4-2a61-4712-8b54-cd3e1402cf7e_2460x1532.png 1272w, https://substackcdn.com/image/fetch/$s_!ql0F!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20b0e0e4-2a61-4712-8b54-cd3e1402cf7e_2460x1532.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ql0F!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20b0e0e4-2a61-4712-8b54-cd3e1402cf7e_2460x1532.png" width="1456" height="907" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/20b0e0e4-2a61-4712-8b54-cd3e1402cf7e_2460x1532.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:907,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:185732,&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://megatunger.substack.com/i/166387430?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20b0e0e4-2a61-4712-8b54-cd3e1402cf7e_2460x1532.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_!ql0F!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20b0e0e4-2a61-4712-8b54-cd3e1402cf7e_2460x1532.png 424w, https://substackcdn.com/image/fetch/$s_!ql0F!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20b0e0e4-2a61-4712-8b54-cd3e1402cf7e_2460x1532.png 848w, https://substackcdn.com/image/fetch/$s_!ql0F!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20b0e0e4-2a61-4712-8b54-cd3e1402cf7e_2460x1532.png 1272w, https://substackcdn.com/image/fetch/$s_!ql0F!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20b0e0e4-2a61-4712-8b54-cd3e1402cf7e_2460x1532.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><strong>My takeaway:</strong></p><ul><li><p>Sometimes, the bug isn&#8217;t in <em>your</em> code. It&#8217;s in the library you trusted</p></li><li><p>Understanding foundational concepts like <strong>shallow clone</strong> vs. <strong>deep clone</strong> is <em>never</em> redundant.</p></li><li><p>Think twice: is the <strong>spread operator (&#8230;)</strong> enough, or do you actually need cloneDeep?</p></li></ul><p></p><p></p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://megatunger.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading megatunger.! 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[A playlist after surviving a 9-5 job]]></title><description><![CDATA[Music for the end of a longggg week and endless emails. This playlist will be a space for you to rest and reflect on yourself.]]></description><link>https://megatunger.substack.com/p/900pm-music-therapy-for-capitalisms</link><guid isPermaLink="false">https://megatunger.substack.com/p/900pm-music-therapy-for-capitalisms</guid><dc:creator><![CDATA[Son Tung H.]]></dc:creator><pubDate>Thu, 05 Jun 2025 13:02:49 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/ss8ePcIuEGI" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h4>1. Jorja Smith - February 3rd</h4><p>One of my <strong>MOST</strong> favourite gems all-time. I love how she spaces the drums and snares - it feels like you&#8217;re tiredly dragging your feet around your apartment on a Friday night. Everything&#8217;s slow, raw, and honest.</p><div id="youtube2-ss8ePcIuEGI" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;ss8ePcIuEGI&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/ss8ePcIuEGI?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><h4>2. breathe. - London</h4><p>This one leans into a reverb piano and ambient pads, creating a wide, hollow soundscape. It&#8217;s basically a lo-fi R&amp;B for when you&#8217;re walking alone in the middle of an empty street at midnight, overthinking but looking calm.</p><div id="youtube2-mpZeNkSCxXc" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;mpZeNkSCxXc&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/mpZeNkSCxXc?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><h4>3. Catching Flies - <strong>Kite Hill Theme (Freddie Joachim Remix)</strong></h4><p>The original version leans ambient and cinematic, maybe too floaty. This remix brings it down to earth with jazzy chords and a warm, bouncing bassline. Perfect for recalibrating your emotional system after a day of forced small talk.</p><div id="youtube2-98w2lH661Tk" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;98w2lH661Tk&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/98w2lH661Tk?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><h4>4. HNNY - Hosoi</h4><p>The kind of track you could loop for hours. Built on dusty, old-radio textures and analog warmth, it creates an empty space for your mind. I put this on when I want to &#8220;free up&#8221; my &#8220;RAM&#8221;.</p><div id="youtube2-er5q4ISrVjc" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;er5q4ISrVjc&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/er5q4ISrVjc?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><h4>5. Aeris Roves - Feel Me</h4><p>Smooth R&amp;B with soft drums and clean keys. What I like is how it feels like someone telling you a personal story, but it&#8217;s catchy, almost like a confession turned rap. Super relatable, without trying too hard.</p><div id="youtube2-qL2WNXhytj4" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;qL2WNXhytj4&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/qL2WNXhytj4?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><h4>6. Fhin - But Now A Warm Feel Is Running</h4><p>A good blend of ambient textures and electronic rhythm. The vocals are simple, not trying to impress, but that&#8217;s what makes them feel intimate. Like a quiet conversation with a friend who just gets it. </p><div id="youtube2-5o4VUBqVBJk" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;5o4VUBqVBJk&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/5o4VUBqVBJk?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><h4>7. Anri - Last Summer Whisper</h4><p>A legend in the Japanese City Pop genre. From the moment the synths and drum machine kick in, you&#8217;re pulled into some dreamy, warm summer nostalgia. You don&#8217;t need to understand Japanese to feel it, because it&#8217;s fun, emotional, and glowing.</p><div id="youtube2-BlvOAd10kJo" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;BlvOAd10kJo&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/BlvOAd10kJo?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><h4>8. WILLOW - 9</h4><p>Experimental pop that doesn&#8217;t pretend to follow rules. The song feels like one endless rhythm instead of the usual verse-bridge-chorus structure. My favourite part? The silence before &#8220;Blue is the emotion that I&#8217;m feeling&#8221;, like they paused just to make you catch a deep breath.</p><div id="youtube2-FFYZ-mR-XUE" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;FFYZ-mR-XUE&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/FFYZ-mR-XUE?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><h4><strong>9. Ella Vos - Down In Flames</strong></h4><p>Indie-pop at its most polished. Cleaned production that hits hard. Especially when paired with Ella&#8217;s breathy vocals. The contrast makes it feel like quiet chaos.</p><div id="youtube2-j_SK9_NGT3M" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;j_SK9_NGT3M&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/j_SK9_NGT3M?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><h4>10. Mahalia - No Pressure</h4><p>Sure, the title says &#8220;no pressure&#8221;. The song scream &#8220;I&#8217;m fine&#8221;, but you know there&#8217;s something wrong underneath. You can hear the tension: someone&#8217;s crossing a line, and she&#8217;s two seconds from snapping. Miss Mahalia doesn&#8217;t miss a single beat here.</p><div id="youtube2-LikDiqMq1rg" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;LikDiqMq1rg&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/LikDiqMq1rg?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><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://megatunger.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading megatunger.! 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[Not all Dreamy Pop are good. But these are.]]></title><description><![CDATA[A list of dreamy pop bangers you probably haven&#8217;t heard because the algorithm is all about Cigarettes After Sex.]]></description><link>https://megatunger.substack.com/p/not-all-dreamy-pop-are-good-but-these</link><guid isPermaLink="false">https://megatunger.substack.com/p/not-all-dreamy-pop-are-good-but-these</guid><dc:creator><![CDATA[Son Tung H.]]></dc:creator><pubDate>Thu, 22 May 2025 13:01:38 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/DKhp_CO0s6A" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>When I&#8217;m tired, I enjoy dreamy pop. It feels nostalgic, healing, like loving yourself again, and full of serenity.</p><p>Most artists are low-key guys, and, <strong>not</strong> all of them are actually good or produce good songs <strong>regularly</strong>. So you should feel lucky if you can find them.</p><p>Here are my top a-ha moments for dreamy melodies.</p><h4>1. The Drwg - S&#228;len</h4><p>This group is terrible in general. So many questionable MVs, and they quickly disbanded. But at least they left a superb song, I think.<br>This song has such simple lyrics, repeated, but <em>feel so relatable</em>. The dreamy synthesizer in the background is genius IMO.<br><strong>10/10.</strong></p><div id="youtube2-yDqRc-saUvE" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;yDqRc-saUvE&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/yDqRc-saUvE?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><h4>2. Slenderbodies</h4><p>Two guys with authentic, down-to-earth vibes. Acoustic instruments. Beautiful, sexy voice. Melodies are like floating in the middle of water. Can someone promote them more? Please?</p><div id="youtube2-4CE8Jzgw0Yw" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;4CE8Jzgw0Yw&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/4CE8Jzgw0Yw?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><div id="youtube2-Kz4ObJFWXkg" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;Kz4ObJFWXkg&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/Kz4ObJFWXkg?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><div id="youtube2-VFKKiI6ijsY" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;VFKKiI6ijsY&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/VFKKiI6ijsY?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><div id="youtube2-9kDtM9whevw" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;9kDtM9whevw&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/9kDtM9whevw?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><h4>3. Tokyo Tea Room</h4><p>This group has so much potential. Melodies like summer dreams. The lyrics <em>are</em> hilariously non-understandable to me, but the vibe is on point. I think the singer may be a little weak, but the electric guitar guy in this group really stands out.</p><div id="youtube2-ZFGb7SSReMQ" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;ZFGb7SSReMQ&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/ZFGb7SSReMQ?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><div id="youtube2-iHXx0b7izaU" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;iHXx0b7izaU&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/iHXx0b7izaU?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><h4>4. Girls - The Internet <strong>(feat. Kaytranada)</strong></h4><p>Smoking weed music vibe.</p><div id="youtube2-UJ1KSmwssCw" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;UJ1KSmwssCw&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/UJ1KSmwssCw?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><h4>5. <strong>Deep In Yr Mind - James Wyatt Crosby</strong></h4><p>The electric guitar sound is really, really on point.</p><div id="youtube2-DKhp_CO0s6A" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;DKhp_CO0s6A&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/DKhp_CO0s6A?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></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://megatunger.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading megatunger.! 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><h4>6. Moment - <strong>King Henry, Rhye</strong></h4><div id="youtube2-EijgkivLoU0" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;EijgkivLoU0&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/EijgkivLoU0?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><h4>7. homebody - Kamal</h4><p>Listen to this on a rainy day. Feels like you&#8217;re in a blanket at a warm home while it&#8217;s raining outside.</p><div id="youtube2-UOxmtBaIovw" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;UOxmtBaIovw&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/UOxmtBaIovw?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><h4>8. Ready yet - Sasha Alex Sloan</h4><p>I found this song randomly in 2018. Happily to know that Sasha Alex is already famous now. Her voice in this song may be over auto-tune, but I <em>actually</em> appreciate the producer behind this sick beat.</p><div id="youtube2-V4KfKUCJyNg" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;V4KfKUCJyNg&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/V4KfKUCJyNg?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><h4>9. <strong>L&#229;psley - Ligne 3</strong></h4><p>Not recommended if you just broke up.</p><div id="youtube2-ehMY9RZWMPo" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;ehMY9RZWMPo&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/ehMY9RZWMPo?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><h4>10. <strong>Same Effect - BENEE</strong></h4><p>This song is surprisingly good. I think what makes this success is the repeating chord.</p><div id="youtube2-wfwvGOUvP3w" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;wfwvGOUvP3w&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/wfwvGOUvP3w?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><div><hr></div><h4>Appendix.</h4><h4>george - Arlo Parks</h4><p>The song captures the mood of someone stuck in a toxic relationship. The soft guitar in the background is a great touch. It feels more like a memory fog than something actually happening.</p><div id="youtube2-NclTIViKiyE" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;NclTIViKiyE&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/NclTIViKiyE?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><h4>Bad Habit - Your Smith</h4><p>The lyrics are okay, with an easy-listening melody. But the production should hit harder - feels like it missed the a &#8220;punch&#8221;.</p><div id="youtube2-pynSA00Di2I" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;pynSA00Di2I&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/pynSA00Di2I?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><h4>Kerosene - Joesef</h4><p>Not an easy song to listen to. But it captures the emotional confusion and exploration of queer love for the first time. A mix of jazzy vibes and bedroom pop.</p><div id="youtube2-JR_03kbdKvA" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;JR_03kbdKvA&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/JR_03kbdKvA?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><h4>Same Old - FELIVAND</h4><p>Like a trip back to your childhood. Smooth as f**k.</p><div id="youtube2-hD-YR4kwUxI" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;hD-YR4kwUxI&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/hD-YR4kwUxI?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></p><p>Besides these artists and songs, I obviously know names like Cigarettes After Sex or PinkPantheress. They're really, really good. I&#8217;ve listened to them a lot, but they&#8217;re already pretty famous. This space is for promoting the lesser-known ones.</p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://megatunger.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading megatunger.! 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[Dynamic Wallpaper: Working on a coffee shop]]></title><description><![CDATA[A cool, dynamic macOS wallpaper for someone who likes working at a coffee shop.]]></description><link>https://megatunger.substack.com/p/dynamic-wallpaper-working-on-a-coffee</link><guid isPermaLink="false">https://megatunger.substack.com/p/dynamic-wallpaper-working-on-a-coffee</guid><dc:creator><![CDATA[Son Tung H.]]></dc:creator><pubDate>Sun, 18 May 2025 15:18:30 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!i4kB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87404f6e-d3ba-48c9-aa3e-627b5c92037b_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I was inspired a lot by <a href="https://basicappleguy.com/haberdashery/midnightmac">&#8220;Midnight Mac&#8221; wallpaper</a> by <a href="https://basicappleguy.com">BasicAppleGuy</a>. After being my main wallpaper for a time, I started wishing it could change with the time of day. Since this wallpaper kinda reflects how my life usually flows, I decided to create multiple variations based on the time.</p><p>Thanks to ChatGPT's image generation, I was able to visualize this idea so well.</p><p>This collection includes 12 variations &#8212; one of them is the original by BasicAppleGuy. The rest change according to the sun's position during the day (yeah, I&#8217;m not joking).</p><p>If someone could upscale this, I&#8217;d be even happier. I&#8217;d like to send a thank you again to <a href="https://basicappleguy.com">BasicAppleGuy</a> for such a beautiful wallpaper.</p><p>Enjoy it!</p><div class="image-gallery-embed" data-attrs="{&quot;gallery&quot;:{&quot;images&quot;:[{&quot;type&quot;:&quot;image/png&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/87404f6e-d3ba-48c9-aa3e-627b5c92037b_1536x1024.png&quot;},{&quot;type&quot;:&quot;image/png&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2e85e99c-cbba-451d-a9ca-95c2d31d933e_1536x1024.png&quot;},{&quot;type&quot;:&quot;image/png&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7fe68cf5-a018-475a-aaff-37116137f0d9_1536x1024.png&quot;},{&quot;type&quot;:&quot;image/png&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d151c8e4-a06b-475a-8ed3-ba1d40d28e5b_1536x1024.png&quot;},{&quot;type&quot;:&quot;image/png&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/27fafcda-7f1c-49bb-8057-3a78fb938390_1536x1024.png&quot;},{&quot;type&quot;:&quot;image/png&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/95d2ca29-d62c-46a0-969c-9dcb68bee170_1536x1024.png&quot;},{&quot;type&quot;:&quot;image/png&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/97b96661-247d-4f6e-a493-1106a9ff0b92_1536x1024.png&quot;},{&quot;type&quot;:&quot;image/png&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b7aa860b-cefd-451e-ad7a-033acca58cad_1536x1024.png&quot;},{&quot;type&quot;:&quot;image/png&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/79a73c9e-c5cc-4cf3-be9a-af371c3594f7_1536x1024.png&quot;}],&quot;caption&quot;:&quot;Working at coffee - From Day to Night&quot;,&quot;alt&quot;:&quot;&quot;,&quot;staticGalleryImage&quot;:{&quot;type&quot;:&quot;image/png&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b87a2a62-7b64-4a5a-8f25-acf51c4e28f9_1456x1454.png&quot;}},&quot;isEditorNode&quot;:true}"></div><p></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://cdn.megatunger.com/wallpapers/working-at-a-coffee.heic&quot;,&quot;text&quot;:&quot;Click here to download&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://cdn.megatunger.com/wallpapers/working-at-a-coffee.heic"><span>Click here to download</span></a></p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://megatunger.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading megatunger.! 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[Bossa Nova - Melodies that smooth like butter]]></title><description><![CDATA[A starter pack of "flirting" music from me.]]></description><link>https://megatunger.substack.com/p/bossa-nova-melodies-that-smooth-like</link><guid isPermaLink="false">https://megatunger.substack.com/p/bossa-nova-melodies-that-smooth-like</guid><dc:creator><![CDATA[Son Tung H.]]></dc:creator><pubDate>Tue, 13 May 2025 09:40:27 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/U_1qvm-fgYc" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Y&#8217;all know the <strong>type of music played at relaxing pubs, restaurants, beach clubs&#8212;around 7PM</strong>? That&#8217;s how I was introduced to this type of music. It feels like relaxing, not distracting, working music, and perfect when you&#8217;re having a drink.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://megatunger.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption"></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><p>Here are my top picks to start the vibe:</p><h4>1 - The Sweetest Taboo (Scubba &amp; Ivette Moraes)</h4><p>I swear this version is unconsciously played by half the restaurants and pubs in Vietnam. It&#8217;s always on some &#8220;vintage coffee music&#8221; or &#8220;pub cover playlist&#8221; on YouTube. Can&#8217;t deny - BECAUSE IT&#8217;S ON FIRE. Super sexy. Like someone is flirting with me in slow motion.</p><p>Even the dub version. Top-notch.</p><div id="youtube2-yqRXKTSGsis" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;yqRXKTSGsis&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/yqRXKTSGsis?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><div id="youtube2-Md09Axwt3OQ" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;Md09Axwt3OQ&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/Md09Axwt3OQ?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><div><hr></div><h4>2 - New Rules - Shelly Sonny</h4><p>Even better than the original. Sets a self-reflection tone, with a subtle emotional punch.</p><div id="youtube2-U_1qvm-fgYc" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;U_1qvm-fgYc&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/U_1qvm-fgYc?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><div><hr></div><h4>3 - I Feel It Coming - Eve St.Jones</h4><p>This version has a smooth bass line and a relaxing tone right from 00:00. Perfectly fits the original lyrics. Super elegant.</p><div id="youtube2-WrfW3kNmc-8" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;WrfW3kNmc-8&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/WrfW3kNmc-8?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><div><hr></div><h4>4 - Your Love (Bellestar Remix)</h4><p>Damn. This can be made love music &#128541;. But somehow still classy. It&#8217;s got charm.</p><div id="youtube2-YzrDi2gRq5g" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;YzrDi2gRq5g&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/YzrDi2gRq5g?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><div><hr></div><h4>5 - Passionfruit - Shelly Sony</h4><p>Another bombshell from Shelly. Honestly, she makes Drake sound like a demo track. Go listen to how she sings: <em>&#8220;Liiiisten haaarder, buildin' trust from a distanceeeeee&#8230;&#8221;</em></p><p>Chills.</p><div id="youtube2-ZZ99I2Gw-V0" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;ZZ99I2Gw-V0&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/ZZ99I2Gw-V0?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><div><hr></div><h4>6 - Losing My Religion - Banda do Sul</h4><p>A cover, but with a whole new vibe. The original REM version felt too loud for me. But this? This is sad, way too sad, religious, and intimate. </p><p>Hits me so hard, EVERY TIME. 9 out of 10. -1 for making me cry.</p><div id="youtube2-3SFTIRmpv-w" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;3SFTIRmpv-w&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/3SFTIRmpv-w?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></p><div><hr></div><h4>7 - BoSIM Nova</h4><p>Lol, why is a game soundtrack here? Because if you want to understand bossa nova rhythm and instruments.</p><p>Funky, easy to listen, and weirdly addictive solos. Earworm</p><div id="youtube2-8PIWcE-knU4" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;8PIWcE-knU4&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/8PIWcE-knU4?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></p><p>There&#8217;s way more good stuff out there. You can check out <strong>PMB Music Records</strong>. They're the 1st name in promoting bossa nova artists.</p><p>Find a song you love? Search for the bossa nova version. You&#8217;ll thank me later.</p><p></p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://megatunger.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading megatunger.! 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[Fuji on a budget: X-T100 and 2 TTArtisan lens that don't suck]]></title><description><![CDATA[My take on joining the Fujifilm community without selling a kidney.]]></description><link>https://megatunger.substack.com/p/fuji-on-a-budget-x-t100-and-2-ttartisan</link><guid isPermaLink="false">https://megatunger.substack.com/p/fuji-on-a-budget-x-t100-and-2-ttartisan</guid><dc:creator><![CDATA[Son Tung H.]]></dc:creator><pubDate>Tue, 06 May 2025 17:32:32 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%2Fba2c2c11-137b-4d3d-b33b-d75a2b9ed33f_6000x4000.heic" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="image-gallery-embed" data-attrs="{&quot;gallery&quot;:{&quot;images&quot;:[{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/85e25dc2-b485-4362-9536-33fa8812202a_6000x4000.jpeg&quot;},{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aac0ccbf-4470-475b-b716-c8ff1f7dd223_6000x4000.jpeg&quot;}],&quot;caption&quot;:&quot;&quot;,&quot;alt&quot;:&quot;&quot;,&quot;staticGalleryImage&quot;:{&quot;type&quot;:&quot;image/png&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5c5b3282-e604-4be1-87ec-34219a9ee74d_1456x720.png&quot;}},&quot;isEditorNode&quot;:true}"></div><p></p><h3>Why I got into Fuji / Photography again</h3><p>It&#8217;s simple like this: I quit my job and needed a hobby while chilling through life. So, I decided to jump in the middle of the hype around Fuji cameras. They look compact, great, vintage, masculine.</p><h3>Choosing lens: TT Artisan f1.8 35mm + 23mm</h3><p>My two cents on picking the lens: <strong>Prime and Affordable. </strong></p><p>I force myself to use prime lenses, so I won&#8217;t get lazy with framing. Another reason is they&#8217;re super compact. I&#8217;ve had enough with the DSLR, this time, the whole camera better be small enough to fit in my bag. </p><p>Also, I&#8217;d like to stay under budget. However, if I gonna use a kit lens, my iPhone camera will do a slay walk around this poor camera. And let&#8217;s stop daydreaming, a versatile zoom lens, wide aperture,  "on budget" do not stand in the same line with &#8220;under 1000$&#8221;</p><p>So I did research and chose TTArtisan prime lens. Seems legit, except some YouTubers are overreacting on this. Bought them on Shopee, very affordable, around $100-200 each if you order directly from China&#8217;s sellers. Official distributors? $30 more, but you get 12 months of coverage.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://megatunger.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://megatunger.substack.com/subscribe?"><span>Subscribe now</span></a></p><h3>Lens Review</h3><p>I grabbed the <strong>35mm f/1.8 Mark II </strong>first two weeks. Feeling okay, but not satisfied. 35mm sits awkwardly&#8212;not tight enough for portraits, and street food became micro close-up shots &#129320;</p><p>Then, I grabbed the <strong>23mm f/1.8. </strong>This deal is worth every penny. So if I were to give advice, <strong>start with the 23mm</strong>. It&#8217;s just better. </p><div class="image-gallery-embed" data-attrs="{&quot;gallery&quot;:{&quot;images&quot;:[{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2f8ed46f-571a-4b89-9eb9-b6711324b01f_6000x4000.jpeg&quot;},{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ac36e584-6420-4a4d-a5aa-85a2942c812a_6000x4000.jpeg&quot;},{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4480c200-2391-412d-b722-fa9fdaf6c1b3_6000x4000.jpeg&quot;},{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/36739ed4-609a-4739-9514-5ec53fc73fd1_6000x4000.jpeg&quot;}],&quot;caption&quot;:&quot;Street, casual photos with 23mm TTArtisan. Aperture mostly in f1.8&quot;,&quot;alt&quot;:&quot;&quot;,&quot;staticGalleryImage&quot;:{&quot;type&quot;:&quot;image/png&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2929327f-9520-4029-a222-de9e9549911c_1456x1456.png&quot;}},&quot;isEditorNode&quot;:true}"></div><p><strong>Overall quality?</strong></p><p>Good. Color&#8217;s fine. Keynotes:</p><ul><li><p>The 35mm is super soft and hard to focus at f/1.8. Everything&#8217;s normal from f/2.2.</p></li><li><p>The 23mm is sharp and detailed even at f/1.8.</p></li><li><p>Both have heavy vignetting at the widest aperture.</p></li><li><p>Both have flares, but that&#8217;s not my concern</p></li><li><p>Focus speed? Les Mis&#233;rables, especially with my low-end body.</p></li><li><p>Bokeh: spinny vibe</p></li></ul><div class="image-gallery-embed" data-attrs="{&quot;gallery&quot;:{&quot;images&quot;:[{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7f9bf02e-acda-495a-bcfb-df13a747d7eb_4000x6000.jpeg&quot;},{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8edb4cf9-d473-4837-a66d-1cef04096067_6000x4000.jpeg&quot;},{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/db2d036e-9bed-46fd-8a3e-f4410357d4c2_6000x4000.jpeg&quot;},{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7761f173-cd9f-40d6-b796-37d2258b86ab_6000x4000.jpeg&quot;}],&quot;caption&quot;:&quot;Portrait on the 35mm TTArtisan. Trust me, keeping things in focus is a tremendous work here.&quot;,&quot;alt&quot;:&quot;&quot;,&quot;staticGalleryImage&quot;:{&quot;type&quot;:&quot;image/png&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8f7c6660-8b7e-4e6c-bb6f-500af27ec2ad_1456x1456.png&quot;}},&quot;isEditorNode&quot;:true}"></div><p></p><h3>Choosing Body: FUJIFILM X-T100</h3><p>It fit my budget and was available. I aimed to get an XA-5, but it was sold out. Because I was lazy to come to this store the day before. I got this one for 400 bucks. Still think it's way too overpriced.</p><p>This camera has a limited number of film simulations and very few focusing points. The video function works like a toy feature, but I&#8217;m cool with that. So anyone who likes Fuji and has patience, I think you should stay out of this hype for a while. Otherwise, you&#8217;re gonna link <strong>a high expectation</strong> with an <strong>overpriced camera</strong> (which real value is about half of this). The current market price can be up to $1000 for a new Fuji CROPPED, which I believe is a total joke.</p><p>I like starting small to figure out how long this hobby&#8217;s gonna last. We&#8217;re all impacted by consumerism. But let&#8217;s think about it - how many times are you really gonna carry a camera on a random day, like a normal person? Think about it. Now I have to make the camera fit in my daily bag - will I even put it in a safe place?</p><h2>Color Receipe</h2><p>I know, I know. I keep it simple, my Fuji body doesn&#8217;t give much choice:</p><ul><li><p>Classic Chrome.</p></li><li><p><strong>WB: R+2, B-2</strong></p></li><li><p>Dynamic Range: Auto</p></li><li><p>Color: +1</p></li><li><p>Sharpness: -1</p></li><li><p>Highlight: -2</p></li><li><p>Shadow: +1</p></li><li><p>Noise: -2 </p></li></ul><p>This fits well on a <strong>sunny, clear sky day</strong>. For a <strong>cloudy day,</strong> please reduce WB to <strong>R+1, B-1</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_!EWVE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba2c2c11-137b-4d3d-b33b-d75a2b9ed33f_6000x4000.heic" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!EWVE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba2c2c11-137b-4d3d-b33b-d75a2b9ed33f_6000x4000.heic 424w, https://substackcdn.com/image/fetch/$s_!EWVE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba2c2c11-137b-4d3d-b33b-d75a2b9ed33f_6000x4000.heic 848w, https://substackcdn.com/image/fetch/$s_!EWVE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba2c2c11-137b-4d3d-b33b-d75a2b9ed33f_6000x4000.heic 1272w, https://substackcdn.com/image/fetch/$s_!EWVE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba2c2c11-137b-4d3d-b33b-d75a2b9ed33f_6000x4000.heic 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!EWVE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba2c2c11-137b-4d3d-b33b-d75a2b9ed33f_6000x4000.heic" width="728" height="485.5" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ba2c2c11-137b-4d3d-b33b-d75a2b9ed33f_6000x4000.heic&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:1458233,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/heic&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://megatunger.substack.com/i/162984818?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba2c2c11-137b-4d3d-b33b-d75a2b9ed33f_6000x4000.heic&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!EWVE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba2c2c11-137b-4d3d-b33b-d75a2b9ed33f_6000x4000.heic 424w, https://substackcdn.com/image/fetch/$s_!EWVE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba2c2c11-137b-4d3d-b33b-d75a2b9ed33f_6000x4000.heic 848w, https://substackcdn.com/image/fetch/$s_!EWVE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba2c2c11-137b-4d3d-b33b-d75a2b9ed33f_6000x4000.heic 1272w, https://substackcdn.com/image/fetch/$s_!EWVE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba2c2c11-137b-4d3d-b33b-d75a2b9ed33f_6000x4000.heic 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="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://megatunger.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading megatunger.! 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><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_!yxqO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff36de1dd-cf1f-4b55-a173-81900ae8e5e6_6000x4000.heic" data-component-name="Image2ToDOM"><div class="image2-inset image2-full-screen"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!yxqO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff36de1dd-cf1f-4b55-a173-81900ae8e5e6_6000x4000.heic 424w, https://substackcdn.com/image/fetch/$s_!yxqO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff36de1dd-cf1f-4b55-a173-81900ae8e5e6_6000x4000.heic 848w, https://substackcdn.com/image/fetch/$s_!yxqO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff36de1dd-cf1f-4b55-a173-81900ae8e5e6_6000x4000.heic 1272w, https://substackcdn.com/image/fetch/$s_!yxqO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff36de1dd-cf1f-4b55-a173-81900ae8e5e6_6000x4000.heic 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!yxqO!,w_5760,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff36de1dd-cf1f-4b55-a173-81900ae8e5e6_6000x4000.heic" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f36de1dd-cf1f-4b55-a173-81900ae8e5e6_6000x4000.heic&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;full&quot;,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2149226,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/heic&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://megatunger.substack.com/i/162984818?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff36de1dd-cf1f-4b55-a173-81900ae8e5e6_6000x4000.heic&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-fullscreen" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!yxqO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff36de1dd-cf1f-4b55-a173-81900ae8e5e6_6000x4000.heic 424w, https://substackcdn.com/image/fetch/$s_!yxqO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff36de1dd-cf1f-4b55-a173-81900ae8e5e6_6000x4000.heic 848w, https://substackcdn.com/image/fetch/$s_!yxqO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff36de1dd-cf1f-4b55-a173-81900ae8e5e6_6000x4000.heic 1272w, https://substackcdn.com/image/fetch/$s_!yxqO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff36de1dd-cf1f-4b55-a173-81900ae8e5e6_6000x4000.heic 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>]]></content:encoded></item><item><title><![CDATA[Think first, prompts later]]></title><description><![CDATA[The no-brain-vibe-coding epidemic needs to be stopped.]]></description><link>https://megatunger.substack.com/p/think-first-prompts-later</link><guid isPermaLink="false">https://megatunger.substack.com/p/think-first-prompts-later</guid><dc:creator><![CDATA[Son Tung H.]]></dc:creator><pubDate>Sun, 04 May 2025 19:12:53 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/4bb424b3-3ed8-4e2a-8544-a740de5eb135_640x640.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>We saw how AI changed the developer world. Everybody&#8217;s using ChatGPT or Claude for coding, including me. But,</p><p>The <em>first thing</em> some people do when reading a task is to ask: <em>"How to do X in React, Rust, Python, etc.?"</em></p><p>Then, they copy it. NO SECOND THOUGHT. This virus of no-brain coding starts from here.</p><p>I'm so frustrated because of ChatGPT told you (unconsciously) to do:</p><ul><li><p>Recreate an axios instance, even though the whole application already has a wrapper with extensive logic.</p></li><li><p>Use a random <code>fetch</code> call out of nowhere.</p></li><li><p>Recreate the whole <code>useDebounce</code> hook, even though someone literally imported it from lodash right above.</p></li><li><p>Recreate a function with the same name, doing the same thing<strong>?!</strong></p></li></ul><p>It&#8217;s like prompts and generated code are <em>too fast</em>, so they don't even bother to read the codebase. They don't care about <strong>systematic thinking</strong> or how things fit into the general case.</p><p>So, can anyone using these tools please:</p><ul><li><p><strong>Search the codebase</strong> for similar functions.</p></li><li><p><strong>Think</strong> for a second before ask ChatGPT.</p></li><li><p>Consider how other people will reuse your functions.</p></li><li><p>Make it more <strong>generic</strong>.</p></li><li><p>Write code that makes you look like an <strong>architect</strong>, not an intern.</p></li></ul><p>Otherwise, congrats. You've mastered the fine art of copy-paste engineering.</p><p><em>P/s: Some other blogs you should read</em></p><ul><li><p><a href="https://lucianonooijen.com/blog/why-i-stopped-using-ai-code-editors/">https://lucianonooijen.com/blog/why-i-stopped-using-ai-code-editors/</a></p></li><li><p><a href="https://www.youtube.com/watch?v=mTa2d3OLXhg&amp;t=1126s">DHH Interview</a></p></li></ul><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_!OJ9S!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bb424b3-3ed8-4e2a-8544-a740de5eb135_640x640.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!OJ9S!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bb424b3-3ed8-4e2a-8544-a740de5eb135_640x640.webp 424w, https://substackcdn.com/image/fetch/$s_!OJ9S!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bb424b3-3ed8-4e2a-8544-a740de5eb135_640x640.webp 848w, https://substackcdn.com/image/fetch/$s_!OJ9S!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bb424b3-3ed8-4e2a-8544-a740de5eb135_640x640.webp 1272w, https://substackcdn.com/image/fetch/$s_!OJ9S!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bb424b3-3ed8-4e2a-8544-a740de5eb135_640x640.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!OJ9S!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bb424b3-3ed8-4e2a-8544-a740de5eb135_640x640.webp" width="640" height="640" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4bb424b3-3ed8-4e2a-8544-a740de5eb135_640x640.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:640,&quot;width&quot;:640,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;: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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!OJ9S!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bb424b3-3ed8-4e2a-8544-a740de5eb135_640x640.webp 424w, https://substackcdn.com/image/fetch/$s_!OJ9S!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bb424b3-3ed8-4e2a-8544-a740de5eb135_640x640.webp 848w, https://substackcdn.com/image/fetch/$s_!OJ9S!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bb424b3-3ed8-4e2a-8544-a740de5eb135_640x640.webp 1272w, https://substackcdn.com/image/fetch/$s_!OJ9S!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bb424b3-3ed8-4e2a-8544-a740de5eb135_640x640.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></figure></div><p></p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://megatunger.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading! 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></channel></rss>