<?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[mu’s stack]]></title><description><![CDATA[footprints from digital travels 
(crypto, hacking, ai, life)]]></description><link>https://blog.xn--2-lmb.com</link><image><url>https://substackcdn.com/image/fetch/$s_!cR63!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd350074c-8f43-4dd7-85b0-ba847028b2f6_1280x1280.png</url><title>mu’s stack</title><link>https://blog.xn--2-lmb.com</link></image><generator>Substack</generator><lastBuildDate>Thu, 16 Apr 2026 00:20:48 GMT</lastBuildDate><atom:link href="https://blog.xn--2-lmb.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[mu]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[mutwo@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[mutwo@substack.com]]></itunes:email><itunes:name><![CDATA[mu]]></itunes:name></itunes:owner><itunes:author><![CDATA[mu]]></itunes:author><googleplay:owner><![CDATA[mutwo@substack.com]]></googleplay:owner><googleplay:email><![CDATA[mutwo@substack.com]]></googleplay:email><googleplay:author><![CDATA[mu]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Mu's Links]]></title><description><![CDATA[Cool Things I&#8217;ve Found On The Net!]]></description><link>https://blog.xn--2-lmb.com/p/mus-links</link><guid isPermaLink="false">https://blog.xn--2-lmb.com/p/mus-links</guid><dc:creator><![CDATA[mu]]></dc:creator><pubDate>Wed, 01 May 2024 12:08:16 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/d338e2c4-1c3c-4647-8c65-ffaa3616706d_2048x2048.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!P3EO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F688813ef-43da-4aea-adb0-7df5fae97ed9_2048x2048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!P3EO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F688813ef-43da-4aea-adb0-7df5fae97ed9_2048x2048.png 424w, https://substackcdn.com/image/fetch/$s_!P3EO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F688813ef-43da-4aea-adb0-7df5fae97ed9_2048x2048.png 848w, https://substackcdn.com/image/fetch/$s_!P3EO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F688813ef-43da-4aea-adb0-7df5fae97ed9_2048x2048.png 1272w, https://substackcdn.com/image/fetch/$s_!P3EO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F688813ef-43da-4aea-adb0-7df5fae97ed9_2048x2048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!P3EO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F688813ef-43da-4aea-adb0-7df5fae97ed9_2048x2048.png" width="1456" height="1456" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/688813ef-43da-4aea-adb0-7df5fae97ed9_2048x2048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1456,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6446265,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!P3EO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F688813ef-43da-4aea-adb0-7df5fae97ed9_2048x2048.png 424w, https://substackcdn.com/image/fetch/$s_!P3EO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F688813ef-43da-4aea-adb0-7df5fae97ed9_2048x2048.png 848w, https://substackcdn.com/image/fetch/$s_!P3EO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F688813ef-43da-4aea-adb0-7df5fae97ed9_2048x2048.png 1272w, https://substackcdn.com/image/fetch/$s_!P3EO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F688813ef-43da-4aea-adb0-7df5fae97ed9_2048x2048.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Cool Things I&#8217;ve Found On The Net!</figcaption></figure></div><p>Some of my favorite resources on random topics, loosely organized. I will be selfishly using this for my personal reference. But you are all welcome to look too!</p><p>Eventually,  I&#8217;ll come back through these, create summaries, and analyze how the things in each section relate to each other. But the first step is just getting it all in one place.</p><p></p><p></p><h1><strong>Best Writing Resources.</strong></h1><p>https://slatestarcodex.com/2016/02/20/writing-advice/</p><div class="embedded-post-wrap" data-attrs="{&quot;id&quot;:37357185,&quot;url&quot;:&quot;https://sashachapin.substack.com/p/some-of-scott-alexanders-writing&quot;,&quot;publication_id&quot;:78415,&quot;publication_name&quot;:&quot;Sasha's 'Newsletter'&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9f09d14-9631-41fd-b118-1ad2b659b751_512x512.png&quot;,&quot;title&quot;:&quot;Some of Scott Alexander's Writing Tricks&quot;,&quot;truncated_body_text&quot;:&quot;The success of Scott Alexander (AKA Scott Siskind) seems unlikely. He&#8217;s done everything we&#8217;re told you shouldn&#8217;t do when writing on the internet. His essays are frighteningly long. His language is not simple. And he doesn&#8217;t have a personal brand, exactly. He does cluster around a few subjects repeatedly&#8212;psychiatry and political philosophy, for example&#8212;b&#8230;&quot;,&quot;date&quot;:&quot;2021-06-09T17:30:08.764Z&quot;,&quot;like_count&quot;:38,&quot;comment_count&quot;:4,&quot;bylines&quot;:[{&quot;id&quot;:505050,&quot;name&quot;:&quot;Sasha Chapin&quot;,&quot;handle&quot;:&quot;sashachapin&quot;,&quot;previous_name&quot;:null,&quot;photo_url&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/08d7b348-10db-4f10-b6ea-d02263a18362_512x512.jpeg&quot;,&quot;bio&quot;:&quot;writer of book ALL THE WRONG MOVES, writing coach&quot;,&quot;profile_set_up_at&quot;:&quot;2021-04-20T20:04:38.827Z&quot;,&quot;publicationUsers&quot;:[{&quot;id&quot;:86550,&quot;user_id&quot;:505050,&quot;publication_id&quot;:78415,&quot;role&quot;:&quot;admin&quot;,&quot;public&quot;:true,&quot;is_primary&quot;:false,&quot;publication&quot;:{&quot;id&quot;:78415,&quot;name&quot;:&quot;Sasha's 'Newsletter'&quot;,&quot;subdomain&quot;:&quot;sashachapin&quot;,&quot;custom_domain&quot;:null,&quot;custom_domain_optional&quot;:false,&quot;hero_text&quot;:&quot;Smells and/or emotions&quot;,&quot;logo_url&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/d9f09d14-9631-41fd-b118-1ad2b659b751_512x512.png&quot;,&quot;author_id&quot;:505050,&quot;theme_var_background_pop&quot;:&quot;#FF81CD&quot;,&quot;created_at&quot;:&quot;2020-08-05T23:47:54.533Z&quot;,&quot;rss_website_url&quot;:null,&quot;email_from_name&quot;:null,&quot;copyright&quot;:&quot;Sasha Chapin&quot;,&quot;founding_plan_name&quot;:&quot;Founding Member&quot;,&quot;community_enabled&quot;:true,&quot;invite_only&quot;:false,&quot;payments_state&quot;:&quot;enabled&quot;,&quot;language&quot;:null,&quot;explicit&quot;:false}},{&quot;id&quot;:1398681,&quot;user_id&quot;:505050,&quot;publication_id&quot;:1435267,&quot;role&quot;:&quot;admin&quot;,&quot;public&quot;:true,&quot;is_primary&quot;:false,&quot;publication&quot;:{&quot;id&quot;:1435267,&quot;name&quot;:&quot;Notes for D'Arcy&quot;,&quot;subdomain&quot;:&quot;notesfordarcy&quot;,&quot;custom_domain&quot;:null,&quot;custom_domain_optional&quot;:false,&quot;hero_text&quot;:&quot;daily updates of no consequence&quot;,&quot;logo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6f4865a4-7a3c-4c80-ad3d-413b8cd9b06a_1280x1280.png&quot;,&quot;author_id&quot;:505050,&quot;theme_var_background_pop&quot;:&quot;#2EE240&quot;,&quot;created_at&quot;:&quot;2023-02-20T21:25:56.765Z&quot;,&quot;rss_website_url&quot;:null,&quot;email_from_name&quot;:null,&quot;copyright&quot;:&quot;Sasha Chapin&quot;,&quot;founding_plan_name&quot;:null,&quot;community_enabled&quot;:true,&quot;invite_only&quot;:false,&quot;payments_state&quot;:&quot;disabled&quot;,&quot;language&quot;:null,&quot;explicit&quot;:false}}],&quot;twitter_screen_name&quot;:&quot;sashachapin&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:100}],&quot;utm_campaign&quot;:null,&quot;belowTheFold&quot;:false,&quot;type&quot;:&quot;newsletter&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="EmbeddedPostToDOM"><a class="embedded-post" native="true" href="https://sashachapin.substack.com/p/some-of-scott-alexanders-writing?utm_source=substack&amp;utm_campaign=post_embed&amp;utm_medium=web"><div class="embedded-post-header"><img class="embedded-post-publication-logo" src="https://substackcdn.com/image/fetch/$s_!dqKl!,w_56,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9f09d14-9631-41fd-b118-1ad2b659b751_512x512.png"><span class="embedded-post-publication-name">Sasha's 'Newsletter'</span></div><div class="embedded-post-title-wrapper"><div class="embedded-post-title">Some of Scott Alexander's Writing Tricks</div></div><div class="embedded-post-body">The success of Scott Alexander (AKA Scott Siskind) seems unlikely. He&#8217;s done everything we&#8217;re told you shouldn&#8217;t do when writing on the internet. His essays are frighteningly long. His language is not simple. And he doesn&#8217;t have a personal brand, exactly. He does cluster around a few subjects repeatedly&#8212;psychiatry and political philosophy, for example&#8212;b&#8230;</div><div class="embedded-post-cta-wrapper"><span class="embedded-post-cta">Read more</span></div><div class="embedded-post-meta">5 years ago &#183; 38 likes &#183; 4 comments &#183; Sasha Chapin</div></a></div><p></p><h2><strong>Best Programming Resources.</strong></h2><p></p><h3>How to get better at the SKILL of programming</h3><p>https://danluu.com/p95-skill/</p><p>https://web.archive.org/web/20120428193015/http://jinfiesto.posterous.com/how-to-seem-good-at-everything-stop-doing-stu</p><p>https://www.newyorker.com/magazine/2011/10/03/personal-best</p><p>https://danluu.com/productivity-velocity/</p><p>https://news.ycombinator.com/item?id=5496914</p><div id="youtube2-h1a-lhjmfPw" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;h1a-lhjmfPw&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/h1a-lhjmfPw?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-mKdmhnMz4W4" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;mKdmhnMz4W4&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/mKdmhnMz4W4?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><h1>General Performance Tips/Tricks</h1><p>https://gwern.net/melatonin</p><p></p><h1>Memory</h1><p>https://augmentingcognition.com/ltm.html</p><p></p><div class="embedded-post-wrap" data-attrs="{&quot;id&quot;:73722456,&quot;url&quot;:&quot;https://superorganizers.substack.com/p/how-to-build-a-learning-machine&quot;,&quot;publication_id&quot;:1012588,&quot;publication_name&quot;:&quot;Seliria&#8217;s Newsletter&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcbb974a-00c3-4ad4-be51-d88960f45629_628x628.png&quot;,&quot;title&quot;:&quot;How to Make Yourself Into a Learning Machine&quot;,&quot;truncated_body_text&quot;:&quot;Imagine this: You&#8217;re an 18 year old with just a high school degree. You immigrate to a new country that speaks a different language, and start work with some of the brightest engineers in the world. Soon after, you&#8217;re thrust into management. Now, you&#8217;re leading teams of people who are 10 or 20 years older than you, working on one of the fastest growing i&#8230;&quot;,&quot;date&quot;:&quot;2022-09-17T12:14:05.480Z&quot;,&quot;like_count&quot;:0,&quot;comment_count&quot;:0,&quot;bylines&quot;:[{&quot;id&quot;:99564858,&quot;name&quot;:&quot;Seliria&quot;,&quot;handle&quot;:null,&quot;previous_name&quot;:null,&quot;photo_url&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/2be82c6e-a5b8-46d5-9617-d8cf9cd6b869_512x512.png&quot;,&quot;bio&quot;:&quot;Moonlight dreamer&quot;,&quot;profile_set_up_at&quot;:&quot;2022-07-23T02:20:49.831Z&quot;,&quot;publicationUsers&quot;:[{&quot;id&quot;:958349,&quot;user_id&quot;:99564858,&quot;publication_id&quot;:1012588,&quot;role&quot;:&quot;admin&quot;,&quot;public&quot;:true,&quot;is_primary&quot;:false,&quot;publication&quot;:{&quot;id&quot;:1012588,&quot;name&quot;:&quot;Seliria&#8217;s Newsletter&quot;,&quot;subdomain&quot;:&quot;superorganizers&quot;,&quot;custom_domain&quot;:null,&quot;custom_domain_optional&quot;:false,&quot;hero_text&quot;:&quot;Smart people are always looking to learn from others. They know that by taking advantage of the knowledge and experiences of others, they can become even smarter.&quot;,&quot;logo_url&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/fcbb974a-00c3-4ad4-be51-d88960f45629_628x628.png&quot;,&quot;author_id&quot;:99564858,&quot;theme_var_background_pop&quot;:&quot;#9A6600&quot;,&quot;created_at&quot;:&quot;2022-07-23T02:21:55.282Z&quot;,&quot;rss_website_url&quot;:null,&quot;email_from_name&quot;:null,&quot;copyright&quot;:&quot;Seliria&quot;,&quot;founding_plan_name&quot;:null,&quot;community_enabled&quot;:false,&quot;invite_only&quot;:false,&quot;payments_state&quot;:&quot;disabled&quot;,&quot;language&quot;:null,&quot;explicit&quot;:false}}],&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;utm_campaign&quot;:null,&quot;belowTheFold&quot;:true,&quot;type&quot;:&quot;newsletter&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="EmbeddedPostToDOM"><a class="embedded-post" native="true" href="https://superorganizers.substack.com/p/how-to-build-a-learning-machine?utm_source=substack&amp;utm_campaign=post_embed&amp;utm_medium=web"><div class="embedded-post-header"><img class="embedded-post-publication-logo" src="https://substackcdn.com/image/fetch/$s_!igbm!,w_56,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcbb974a-00c3-4ad4-be51-d88960f45629_628x628.png" loading="lazy"><span class="embedded-post-publication-name">Seliria&#8217;s Newsletter</span></div><div class="embedded-post-title-wrapper"><div class="embedded-post-title">How to Make Yourself Into a Learning Machine</div></div><div class="embedded-post-body">Imagine this: You&#8217;re an 18 year old with just a high school degree. You immigrate to a new country that speaks a different language, and start work with some of the brightest engineers in the world. Soon after, you&#8217;re thrust into management. Now, you&#8217;re leading teams of people who are 10 or 20 years older than you, working on one of the fastest growing i&#8230;</div><div class="embedded-post-cta-wrapper"><span class="embedded-post-cta">Read more</span></div><div class="embedded-post-meta">4 years ago &#183; Seliria</div></a></div><h1>No Category Yet</h1>]]></content:encoded></item><item><title><![CDATA[GloveBot Part 3. Shutting Down GloveBot.]]></title><description><![CDATA[All good things must end.]]></description><link>https://blog.xn--2-lmb.com/p/shutting-down-glovebot</link><guid isPermaLink="false">https://blog.xn--2-lmb.com/p/shutting-down-glovebot</guid><dc:creator><![CDATA[mu]]></dc:creator><pubDate>Tue, 02 Apr 2024 07:28:00 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!xYuk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F612ac20d-7523-41fe-a220-a329487f636a_1024x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h4>Hi! I&#8217;m honored you found this. But it&#8217;s not quite ready yet. Maybe check back at the end of the week?</h4><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xYuk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F612ac20d-7523-41fe-a220-a329487f636a_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xYuk!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F612ac20d-7523-41fe-a220-a329487f636a_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!xYuk!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F612ac20d-7523-41fe-a220-a329487f636a_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!xYuk!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F612ac20d-7523-41fe-a220-a329487f636a_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!xYuk!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F612ac20d-7523-41fe-a220-a329487f636a_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xYuk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F612ac20d-7523-41fe-a220-a329487f636a_1024x1024.png" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/612ac20d-7523-41fe-a220-a329487f636a_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1661227,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!xYuk!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F612ac20d-7523-41fe-a220-a329487f636a_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!xYuk!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F612ac20d-7523-41fe-a220-a329487f636a_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!xYuk!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F612ac20d-7523-41fe-a220-a329487f636a_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!xYuk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F612ac20d-7523-41fe-a220-a329487f636a_1024x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p></p>]]></content:encoded></item><item><title><![CDATA[GloveBot Part 2. The Great Rewrite.]]></title><description><![CDATA[Let's GO to microservice heaven.]]></description><link>https://blog.xn--2-lmb.com/p/house-rules</link><guid isPermaLink="false">https://blog.xn--2-lmb.com/p/house-rules</guid><dc:creator><![CDATA[mu]]></dc:creator><pubDate>Wed, 06 Mar 2024 11:33:00 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!GkYl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a12673-7df6-403b-ab9d-475c3f7ed538_807x807.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h4>Hi! I&#8217;m honored you found this. But it&#8217;s not quite ready yet. Maybe check back at the end of the week?</h4><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!GkYl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a12673-7df6-403b-ab9d-475c3f7ed538_807x807.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GkYl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a12673-7df6-403b-ab9d-475c3f7ed538_807x807.webp 424w, https://substackcdn.com/image/fetch/$s_!GkYl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a12673-7df6-403b-ab9d-475c3f7ed538_807x807.webp 848w, https://substackcdn.com/image/fetch/$s_!GkYl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a12673-7df6-403b-ab9d-475c3f7ed538_807x807.webp 1272w, https://substackcdn.com/image/fetch/$s_!GkYl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a12673-7df6-403b-ab9d-475c3f7ed538_807x807.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GkYl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a12673-7df6-403b-ab9d-475c3f7ed538_807x807.webp" width="807" height="807" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/31a12673-7df6-403b-ab9d-475c3f7ed538_807x807.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:807,&quot;width&quot;:807,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:782614,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!GkYl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a12673-7df6-403b-ab9d-475c3f7ed538_807x807.webp 424w, https://substackcdn.com/image/fetch/$s_!GkYl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a12673-7df6-403b-ab9d-475c3f7ed538_807x807.webp 848w, https://substackcdn.com/image/fetch/$s_!GkYl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a12673-7df6-403b-ab9d-475c3f7ed538_807x807.webp 1272w, https://substackcdn.com/image/fetch/$s_!GkYl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a12673-7df6-403b-ab9d-475c3f7ed538_807x807.webp 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h4></h4><p></p><p>Multiple structural Problems at Once.</p>]]></content:encoded></item><item><title><![CDATA[Echoes of Solana]]></title><description><![CDATA[A Fictional Story for Entry into Solana Scribes 2024 Hackathon]]></description><link>https://blog.xn--2-lmb.com/p/echoes-of-solana</link><guid isPermaLink="false">https://blog.xn--2-lmb.com/p/echoes-of-solana</guid><dc:creator><![CDATA[mu]]></dc:creator><pubDate>Thu, 29 Feb 2024 22:54:37 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!3goh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab4aea20-a2b2-4742-9291-5f6d2771c880_412x388.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em><strong>Unraveling the Threads of History</strong></em></p><p></p><p>Lukas was no longer bothered by the tapping on his mechanical keyboard or the crunch of the chip bags. The two sounds eventually blended, sounding the same to him. The natural harmony of his world, his little habitat. The harsh screen from his monitor, whose brightness he refused to turn down, illuminated the unkempt bed in the corner, the mattress toppling on a cheap bed frame that his parents had planned on throwing out. Plastic bags and takeout cups littered his desk, giving him just enough room to type and move his mouse around. The curtains sagged over his one small window behind his monitor, making his room permanently night.</p><p>He was poring over the issues in the git-repo for the fifth time that day, trying to see if there was anything he could help with. If there was any way to make the system faster, safer, more secure. He hadn&#8217;t eaten, drunk, or even left his room. He never let himself out until he made at least one minor improvement every morning. But today was especially hard, as many people had contributed since yesterday.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3goh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab4aea20-a2b2-4742-9291-5f6d2771c880_412x388.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3goh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab4aea20-a2b2-4742-9291-5f6d2771c880_412x388.png 424w, https://substackcdn.com/image/fetch/$s_!3goh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab4aea20-a2b2-4742-9291-5f6d2771c880_412x388.png 848w, https://substackcdn.com/image/fetch/$s_!3goh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab4aea20-a2b2-4742-9291-5f6d2771c880_412x388.png 1272w, https://substackcdn.com/image/fetch/$s_!3goh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab4aea20-a2b2-4742-9291-5f6d2771c880_412x388.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3goh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab4aea20-a2b2-4742-9291-5f6d2771c880_412x388.png" width="420" height="395.5339805825243" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ab4aea20-a2b2-4742-9291-5f6d2771c880_412x388.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:388,&quot;width&quot;:412,&quot;resizeWidth&quot;:420,&quot;bytes&quot;:298430,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!3goh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab4aea20-a2b2-4742-9291-5f6d2771c880_412x388.png 424w, https://substackcdn.com/image/fetch/$s_!3goh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab4aea20-a2b2-4742-9291-5f6d2771c880_412x388.png 848w, https://substackcdn.com/image/fetch/$s_!3goh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab4aea20-a2b2-4742-9291-5f6d2771c880_412x388.png 1272w, https://substackcdn.com/image/fetch/$s_!3goh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab4aea20-a2b2-4742-9291-5f6d2771c880_412x388.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>&#8220;Lukaaas!&#8221; he heard a whiny voice call out from downstairs, pulling him out of focus. Tiny footsteps ravaged the carpeted flooring of the stairs, thundering towards his room. Lukas heard the knob of his door turn and catch on the lock, then the rattling of the door as his little brother tugged it back and forth.</p><p>&#8220;Jayce, can you just give me a minute? I&#8217;m doing something.&#8221; Lukas called out, keeping his eyes on the monitor. The words began to swim in front of him, meaningless white symbols and numbers that he could use better if he just-</p><p>&#8220;LUKAS! I gotta tell you what I learned about today, though.&#8221;</p><p>Learned about today? Lukas glanced at the clock. 3:42 pm. His brother had gotten up, gone to school, had come home, and Lukas was still here, struggling.</p><p>&#8220;You tell me what you learn every day. Can today just&#8230;wait? Or you can tell me at dinner.&#8221; Lukas answered through the door.</p><p>The knob continued rattling. &#8220;But&#8230;I thought you liked hearing what I was learning.&#8221; Lukas heard Jayce say more quietly, the violent tugging on the knob speaking for him. Lukas continued to pretend like he was working, but he wasn&#8217;t fooling anyone. Not even himself.</p><p>&#8220;You always love making fun of what they&#8217;re teaching us &#8216;these days&#8217;.&#8221; Jayce emphasized the last two words in what he thought Lukas sounded like, but despite the playfulness, Lukas still heard him drift off, his throat catching on the last s of days. The lock had stopped rattling, and Lukas strained to hear Jayce&#8217;s footsteps, his breathing, anything. But nothing.</p><p>&#8220;Jayce?&#8221;</p><p>No answer.</p><p>Lukas pushed himself off the chair. His head swam, and his knees cracked under the effort of being upright for the first time in so many hours. Walking over to the door, he twisted the latch on the knob and opened it.</p><p>&#8220;Jayce, wha-&#8221;</p><p>In a blur of light blue and brown, Jayce rushed into the room, flung his backpack onto the floor, and crashed onto Lukas&#8217; mattress in the corner.&nbsp;</p><p>&#8220;HA! I <em>knew</em> that would work.&#8221; Jayce giggled, messing with the covers on Lukas&#8217; bed.</p><p>Lukas glanced at his monitor and watched as messages kept pouring in, every second turning into a possible missed opportunity. He then looked back over to his little brother in his bed, playing with the sheets. His heart warmed, and he smiled.</p><p>&#8220;Okay Jayce. What did we learn today?&#8221; he asked, walking over and sitting next to Jayce.&nbsp;</p><p>&#8220;Mmm okay so first, we learned about fractions, which was bo-ring. First thing in the morning and I have to learn math. It&#8217;s insane.&#8221; Jayce held his hands out, gesturing to an imaginary audience.</p><p>&#8220;Yeah, I know what you mean. I hated fractions when I was younger too.&#8221;</p><p>Jayce beamed at the approval and recognition. &#8220;Okay, then&#8230; then we had English, and we had to read the same poem three times before we started talking about it. Three times!&#8221; Jayce threw his hands out again in an exasperated manner. &#8220;I can&#8217;t even remember what it was about even though we read it so many times. What&#8217;s the point? It&#8217;s not like the words are going to change.&#8221;</p><p>Lukas laughed and adjusted his position on the bed to face his little brother. He loved hearing him talk; it always made his day brighter.</p><p>&#8220;I know what you mean, bud.&#8221; Lukas answered. &#8220;I used to hate that too. Like, what&#8217;s the color of the curtain? It matched his mood in real life! All that stuff is fake, you know. Just a bunch of stuff English teachers make up to keep their jobs.&#8221;</p><p>Jayce giggled as if he had heard Lukas curse, or say some unforgivable academic secret. Then he continued.</p><p>&#8220;And then we learned history stuff. You know, the boring stuff you like. Today was about the housing crash in 2009-&#8221;</p><p>&#8220;2008.&#8221; Lukas corrected.</p><p>&#8220;2008. And we read that a lot of people bought houses and then got evicted because they couldn&#8217;t afford them and stuff.&#8221;</p><p>&#8220;That&#8217;s.. a way to put it.&#8221; Lukas said. After some thought, he prompted, &#8220;What else did they tell you about it?&#8221;</p><p>Jayce put his hand under his chin and glanced at the ceiling, as if willing a response to come through the roof. &#8220;Well&#8230; they said that the banks gave everyone money, and that&#8217;s how everyone recovered. Which is why everyone gives the banks interest and stuff, to give them back money for how much they gave us.&#8221;</p><p>&#8220;Haha!&#8221; Lukas laughed light-heartedly, gently combing down the stray hairs on his little brother&#8217;s head. &#8220;That&#8217;s good. What are you, trying to test my knowledge or something?&#8221;</p><p>&#8220;No.&#8221; Jayce said, firmly. He brushed Lukas&#8217; hand off of his hair. &#8220;That&#8217;s what it said. The textbook. It had pictures of banks and everything.&#8221;</p><p>Lukas looked at his little brother and raised an eyebrow, but Jayce was still busy looking at the details in the ceiling. And he wasn&#8217;t smiling.</p><p>&#8220;Jayce, where&#8217;s your textbook?&#8221; Lukas demanded, seriously.</p><p>Jayce glanced down and, upon seeing Lukas&#8217; face, shifted backward, visibly uncomfortable with Lukas&#8217; sudden change in tone. &#8220;Um, I left it at school. They don&#8217;t let us take them home, we just do our work there&#8230;&#8221;</p><p>Lukas leaned forward, his hands pushing down into the mattress. &#8220;Jayce, I&#8217;m being so serious. Are you sure that&#8217;s what you learned?&#8221;</p><p>&#8220;I mean&#8230;&#8221; Jayce shifted around nervously. &#8220;That&#8217;s what they taught us,&#8221; he finished in a small voice.</p><p>Lukas looked down at the cover, then back at his computer. It couldn&#8217;t be right. He had learned everything himself, from the ground up. If that&#8217;s what they were teaching people in school&#8230;.</p><p>Then there was no way that Solana should&#8217;ve existed.</p><p><em>But it does.</em></p><p>&#8220;Lukas?&#8221; The tiny, hesitant voice called out to him, now clutching a pillow with its back against the wall.</p><p>&#8220;Yeah, yeah sorry Jayce.&#8221; He tries for a laugh to ease up the tension, but Jayce doesn&#8217;t look any more convinced than he feels. &#8220;I just&#8230;had a weird thought about what you told me. Don&#8217;t worry about it bud.&#8221;</p><p>&#8220;Oh, okay&#8230;&#8221; Jayce shuffled over to the edge of the bed and hopped off. Picking up his backpack, he moved toward the door.</p><p>&#8220;I&#8217;m gonna go to my room now.&#8221;</p><p>Without looking back, Jayce opened the door and left. Daylight from the outside windows streamed and casted a light where he left, the only source of natural light penetrating the room. Lukas heard a door close down the hall with a light click.</p><p>Lukas pushed himself off the bed and flew downstairs, holding onto the railings for support. He squinted, blinded by the sudden light streaming in from all the surrounding windows.</p><p>Downstairs, his mother was sitting at the kitchen table, tapping on her laptop and sipping on tea as she worked. She adjusted her glasses and met his gaze as he came down the stairs.</p><p>&#8220;Mom.&#8221;&nbsp;</p><p>Lukas pulled out a chair at the table across from his mother and sat down. He noticed a bowl of carrots and ranch, and a small container of nuts and fruits in front of him.</p><p>&#8220;Hey honey,&#8221; she says with a smile. &#8220;Glad to see you&#8217;re out of your room. Are you hungry? I set these out for Jayce, but it doesn&#8217;t seem like he&#8217;s hungry right now.&#8221;</p><p>Lukas&#8217; heart squeezes with guilt, but he shoves it down.</p><p>&#8220;Mom. I have to go to school with Jayce tomorrow.&#8221; He demanded, popping a carrot into his mouth and crunching softly.</p><p>His mom looked up over the top of her laptop. She stopped typing, fully listening.</p><p>&#8220;What? Lukas, you can&#8217;t do that.&#8221;</p><p>&#8220;Why not? I&#8217;ll just like, be his little chaperone for the day or something. It won&#8217;t be a big deal.&#8221;</p><p>Lukas&#8217; mom sighed. &#8220;You can&#8217;t just show up to your little brother&#8217;s middle school, Lukas. That&#8217;s&#8230;weird.&#8221; She paused for a moment, considering what she said. &#8220;Why do you want to go anyway?&#8221;</p><p>&#8220;Mom.&#8221; Lukas leaned over the table, closer towards his mom. &#8220;I think they&#8217;re teaching Jayce bullshit.&#8221;</p><p>&#8220;<em>Lukas.&#8221;</em> his mom warned, her eyebrows furrowing. &#8220;You better not be using that language around Jayce.&#8221;</p><p>&#8220;Fine, sorry. I think they&#8217;re teaching him&#8230; the wrong stuff.&#8221;</p><p>&#8220;Is this another one of your conspiracies again? Don&#8217;t drag Jayce into this.&#8221; his mom answered, her attention going back to her laptop. Lukas could tell that he was losing her interest.</p><p>&#8220;No, mom, I swear.&#8221; Lukas insisted. He told me something today about the 2008 housing collapse, and it sounded all wrong. I swear they changed stuff in there.&#8221;</p><p>&#8220;And how do you know?&#8221; his mother challenged, her eyes staying on the laptop.</p><p>&#8220;Because I work on Solana, <em>mom.</em> I tell you this all the time.&#8221; Lukas huffed, trying to show his mom how urgent the conversation is with his annoyance, but she continued to stay glued on her laptop, clicking and typing. Lukas loudly bites into another carrot.</p><p>&#8220;Okay honey, but I don&#8217;t see how that has anything to do with the 2008 housing collapse.&#8221;</p><p>&#8220;Mom, I can&#8217;t explain it all right now, but Solana was created because of how the banks failed during the 2008 housing collapse. So people could use money without going through banks. And they&#8217;re teaching Jayce and all the other kids that the banks saved everyone and that it was the people&#8217;s fault, like we messed up and they came in and saved us or something.&#8221;</p><p>Lukas&#8217; mom looked up over the top of her laptop again.</p><p>&#8220;The banks&#8230;saved us? Say more,&#8221; she said, leaning slightly forward in the same way that he did when something piqued his interest. He had caught her.</p><p>&#8220;Yeah. They&#8217;re saying that it&#8217;s our fault, and the banks fixed us. At least that&#8217;s what Jayce said.&#8221; Lukas affirmed.</p><p>&#8220;I lived through the 2008 housing crisis. It was several decades ago but it had put my family out on the street&#8230;&#8221; she mumbled, her eye contact drifting and catching on the laced tablecloth that hugged the table.</p><p>Her gaze snapped back to mine. &#8220;They left us out on the street. The banks, the government. All of them. We saved ourselves.&#8221; Her gaze turned determined, and her smile curved slyly upward. &#8220;So honey, I&#8217;m not sure what Solana is or why it&#8217;s so important to you, but I believe you.&#8221;</p><p>&#8220;So&#8230;you&#8217;ll let me go tomorrow?&#8221; Lukas turned his head, trying to weaken her through her motherly instincts.</p><p>But she didn&#8217;t need any more weakening. She was already convinced. She looked at him with that glint that he had learned to pick up.</p><p>&#8220;I&#8217;ll see what I can do.&#8221;</p><p>&#8212;</p><p>&#8220;So, you&#8217;re&#8230; Jayce&#8217;s older brother?&#8221;&nbsp;</p><p>The gray-haired, bespeckled teacher peered at him curiously, clutching a couple of math textbooks in his hand. His other hand was leaning on his desk for support as he stood surveying the drowsy morning class, but more scrutinizingly, Lukas.</p><p>&#8220;Yep. My mom wanted me to come with him today, just to check on how things are going. She already called the school and everything.&#8221; Lukas explained. His mouth curved into a natural smile when he remembered how excited Jayce had been when he heard Lukas was coming with him. He had been bouncing around in the car so much that their mother threatened to cut his sugar from his lunchbox to get him to stop.</p><p>&#8220;And, what about you, young man?&#8221; the teacher asked, keeping an eye on him as he placed his books down. &#8220;Why aren&#8217;t you in school?&#8221;</p><p>Lukas thought about Solana, and about how he had dropped out of school to build the new world of finance, but looking at the teacher, he decided against it.</p><p>&#8220;My little brother is more important. Plus, it&#8217;s just one day.&#8221; Lukas answered, holding out the note that his mother had written for him.<br> Jayce looked at him curiously, but said nothing.</p><p>The teacher gave a little hmph and took the paper, but didn&#8217;t argue back. &#8220;Well, you can pull up a chair from the corner and sit next to Jayce. My name is Mr. Daniels. It&#8217;s been nice talking to you.&#8221;</p><p>&#8220;And to you, as well.&#8221; Lukas said as cheerfully as he could, and looked down at Jayce. &#8220;Alright buddy, where do you sit?&#8221;</p><p>Jayce broke out into a big smile again and gently took Lukas&#8217; hand, dragging him towards his desk. Pulling up a chair, they sat together, and Jayce was in the middle of showing Lukas his collection of animal erasures when Mr. Daniels cleared his throat.</p><p>&#8220;Okay class, today we&#8217;re going to start with history because we have a lot to cover today. We have a test coming up at the end of this week on Chapter 4, so we&#8217;re going to cover the rest of it, alright? So yesterday, we left off with-&#8221;</p><p>&#8220;Psst. Lukas.&#8221; Jayce tugged his flannel.</p><p>&#8220;Hold on Jayce. I&#8217;m trying to hear what your teacher is about to say.&#8221;</p><p>&#8220;Lukas. <em>Look</em>. It&#8217;s the part of the textbook I was trying to tell you about.&#8221; Jayce insisted.</p><p>Lukas&#8217; head snapped in Jayce&#8217;s direction and to where he was pointing on the textbook. Surely enough, it was there:</p><p><em>The 2008 housing crisis originated from the abject failure of the American people to sustain their housing requirements, resulting in the loss of tens of thousands of houses and the suffering of millions of families. The banks, as well as the government, were called on to step in, offering salvation during the time of economic crisis. However, their sacrifice was so large, that to this day, Americans are still paying back the gracious and bold favor the banks did to them, as the banks had had to sacrifice much in the past to keep our economy running. This is the origin of &#8220;interest,&#8221; previously used to help businesses and individuals take out loans; it is now exclusively paid to banks by the public as thanks for their work.</em></p><p>Lukas stopped reading, lost in his own thoughts. How was this possible? It changed everything that he had known, and his mother's strong reaction meant that she knew it wasn&#8217;t true, too.<br> &#8220;Jayce, don&#8217;t listen to the history books they give you.&#8221;</p><p>&#8220;What, why?&#8221; Jayce whined, sick of not being answered.</p><p>&#8220;Just listen to me. I-&#8221;</p><p>&#8220;Excuse me, Mr. Lukas. It is already an exception that you are in my class. Would you please stop disrupting it?&#8221; Mr. Daniels spat out, emphasizing the t&#8217;s in every word. He glared down at Lukas, who felt weak sitting in his little kid-sized chair.</p><p>&#8220;Yes, sir, I&#8217;m sorry&#8230;&#8221; Lukas drifted off. Was he sorry? No. So why would he tell the teacher that?<br> He knew that he had to say something. It had to start now. It had to start somewhere.</p><p>&#8220;Actually, Jayce and I were just discussing the contents of this week&#8217;s chapter.&#8221;</p><p>&#8220;Oh? And what was so important that it doesn&#8217;t require Jayce to listen to today&#8217;s lesson?&#8221; Mr. Daniels challenged, crossing his arms. The piece of the chalk he held in one hand shook as he moved, scattering chalk dust across his shirt sleeve.</p><p>&#8220;The 2008 housing crisis. It&#8217;s citing the wrong information. The banks weren&#8217;t the ones who saved people, it was the other way around. The banks screwed over the people, and everyone needed saving.&#8221;</p><p>&#8220;Language.&#8221; Mr. Daniels commanded, his voice more on edge. &#8220;And what proof do you have for that claim? To go against a published, peer-reviewed history textbook?&#8221;</p><p>&#8220;It&#8217;s not what I learned. And it&#8217;s not what my mom remembers either. She told me herself.&#8221; Lukas insisted, standing up. He was tired of craning his neck up from sitting on that kiddy chair.</p><p>&#8220;You may very well misremember. It&#8217;s not that important of a chapter in human history, and in current versions, it&#8217;s overshadowed by the events of 2020, which-&#8221; here he turned towards the class and smiled in an attempt to lighten the mood, &#8220;we&#8217;ll get to in a few short weeks! It was a crazy time to be alive.&#8221;</p><p>&#8220;Mr. Daniels,&#8221; Lukas said, trying to bring his attention back to the subject. &#8220;I know it was a few decades ago, but you&#8230;&#8221; Lukas looked up at the teacher&#8217;s graying hair. &#8220;You probably lived through it. You know the truth. It wasn&#8217;t like this at all.&#8221;</p><p>Mr. Daniels put a hand up to his face and ran it through his hair while deeply sighing. After a bit, he said, &#8220;Lukas, everyone remembers traumatic events differently. History textbooks just account for the most common experience and intersperse it with facts.&#8221;</p><p>&#8220;But those are not facts!&#8221; Lukas insisted, his voice slightly rising. He balled his fists at his side. &#8220;Why don&#8217;t you understand what I&#8217;m saying?&#8221;</p><p>&#8220;Lukas&#8230;&#8221; Jayce said, tugging at the sleeve of his flannel again. Lukas looked down. Jayce&#8217;s eyes were watery, and he was flicking them between him and the other kids in the classroom. Lukas&#8217; heart sank, knowing that the other kids would most likely make fun of him. And it would be Lukas&#8217; fault.</p><p>&#8220;I understand what you&#8217;re saying, and it seems to be mere opinion. You have nothing to prove it.&#8221; Mr. Daniels reiterated, keeping his stance firmly planted. &#8220;Now, I&#8217;m going to have to ask you to leave since you&#8217;ve been a huge disruption to my classroom, or security can come get you.&#8221;</p><p>&#8220;It doesn&#8217;t have to be this way. We can just use <em>Solana</em>.&#8221;</p><p>Lukas looked back up and saw the teacher&#8217;s nose twitch for an instant before his usual expression clouded over.</p><p>&#8220;Solana? You&#8217;re just making up words. This isn&#8217;t some video game, and I&#8217;m calling security.&#8221;</p><p>Lukas's palms began to sweat in his fists as he watched Mr. Daniels dial numbers in his keypad.&nbsp;</p><p>&#8220;No, Solana is what I work on, every single day. I had to teach myself. And one of the first things I learned was its history. It was created because the banks had failed the people, and we needed somebody to trust with our money. Who better to trust than ourselves?&#8221;</p><p>&#8220;Yes, this is classroom 221. We have a disruptive visitor who must be removed from the premises immediately.&#8221; Mr. Daniels said into the phone, ignoring Lukas.</p><p>The classroom had begun turning around and whispering to each other. Some kids got out their phones and began recording. Quiet laughter rang from behind Lukas somewhere.</p><p>Lukas raised his voice to drown out the noise. &#8220;We created Bitcoin because we needed a way to decentralize finance. And because we couldn&#8217;t trust anyone other than ourselves! It was the bank&#8217;s fault, and now they don&#8217;t want you knowing that.&#8221;<br> &#8220;Yes, yes, thank you.&#8221; Mr. Daniels hung up the phone, put his piece of chalk down, picked something up off his desk, and walked out from behind it. He folded his arms in an intimidating fashion as if waiting for Lukas to challenge him. Still, in cardigan pants and a bright sweater vest, he looked more like an intimidating uncle getting ready for a Christmas party than a threatening teacher.</p><p>&#8220;Security will be here shortly. I suggest you don&#8217;t do anything rash.&#8221;</p><p>Lukas walked towards the teacher, weaving around the heads of the whispering children, and stood close to the teacher.</p><p>&#8220;Mr. Daniels, you <em>can&#8217;t</em> teach them this stuff. None of it&#8217;s true. Solana was created on the need for efficiency, for autonomy, for decentralized finance. Teaching them that the banks saved us is changing everything. It should contradict the reason for Solana&#8217;s existence. Solana is <em>freedom</em>.&#8221;</p><p>&#8220;Pstch.&#8221; Mr. Daniels clicked, but with a slight tone of amusement. &#8220;You sound insane.&#8221;</p><p>&#8220;You can be insane, but that doesn&#8217;t mean you&#8217;re not <em>right.&#8221; </em>Lukas retorted.</p><p>&#8220;You can be right all you want, but -&#8221; Mr. Daniels unfolded his arms and quickly slipped a piece of paper into Lukas&#8217; hands. He folded his arms again as quickly as he had unfolded them.</p><p>&#8220;What good will arguing with a middle school teacher do for <em>you</em>, Lukas?&#8221;</p><p>A couple of guards came into the room, walking straight towards Lukas. Lukas quickly shoved the paper in his pocket as one of the guards grabbed his other arm.</p><p>&#8220;Come on kid. Let&#8217;s go.&#8221;</p><p>Lukas let himself be escorted out of the room. He glanced back and saw Mr. Daniels flick his eyes at his pocket, then quickly back at him, and held his gaze until the door closed.</p><p>&#8212;</p><p>Back in his room, Lukas sulked at his desk, hiding from his mother after she had yelled at him and sent him upstairs until dinner was ready.</p><p><em>Starting a fight with the teacher?! I barely got home before I had to turn around and get your ass!</em></p><p>Shame tinged his cheeks with heat as he fingered the paper in his hands. It was a cream sheet, torn around the edges, with a single phone number in the middle.</p><p>Why <em>had</em> he started that fight with Mr. Daniels? It&#8217;s not like he could do anything. What was the point of all of it?</p><p>Lukas looked at the number again. A try wouldn&#8217;t hurt now.</p><p>He got out his phone and dialed the number. It was picked up on the second ring. The same voice from this morning answered.</p><p>&#8220;Lukas.&#8221;</p><p>Lukas&#8217; head bobbed back, surprised. &#8220;Mr. Daniels?&#8221;</p><p>&#8220;I&#8217;m glad you called. I wanted to continue our conversation from earlier.&#8221;</p><p>&#8220;Continue?&#8221; Lukas&#8217; cheeks flushed with anger. &#8220;You had me kicked out!&#8221;</p><p>&#8220;It wasn&#8217;t a conversation for those kids to hear.&#8221; Mr. Daniels answered calmly. &#8220;But I believe you.&#8221;</p><p>&#8220;What?&#8221; Lukas gasped. Nothing was making sense.</p><p>&#8220;I believe you.&#8221; Mr. Daniels said again slowly. &#8220;I don&#8217;t want to teach those kids what they&#8217;re making me teach. I think it&#8217;s a part of their plan to reinstate power in the banks or something.&#8221;</p><p>&#8220;I..I don&#8217;t know what to say.&#8221; Lukas hesitated. &#8220;I didn&#8217;t think you would, I guess I was just looking for a fight, looking for someone to tell it to.&#8221;</p><p>&#8220;I still don&#8217;t know what Solana is, and from what you were saying, you have the right facts, kid. But you still made it sound like a cult.&#8221; Mr. Daniels answered, the hint of amusement strong in his voice.</p><p>&#8220;No, it&#8217;s not. I promise. I work with it every day.&nbsp;</p><p>&#8220;I want to change things. We have to change the way the school is teaching things. They&#8217;re rewriting history, Lukas. It&#8217;s not okay.&#8221;</p><p>&#8220;Do you think you can do anything about it?&#8221; Lukas asked, worry tinging his voice.</p><p>&#8220;Of course. You think I&#8217;ve lived this long without picking up a thing or two?&#8221; Lukas heard Mr. Daniels smile over the phone.</p><p>&#8220;What will we do?&#8221;</p><p>&#8220;We will fight for the truth of history, we will help the world use Solana. We will show them all freedom.&#8221;</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.xn--2-lmb.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 mu&#8217;s stack! 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>SUBMISSION FOR Lamport Dao&#8217;s Solana Scribes Competition.</p><p>Best Fictional Story, by the Scribes Committee.</p>]]></content:encoded></item><item><title><![CDATA[GloveBot Part 1. Under the Hood.]]></title><description><![CDATA[A complete tour of a Solana Telegram Bot's System Architecture]]></description><link>https://blog.xn--2-lmb.com/p/under-the-hood-of-glovebot</link><guid isPermaLink="false">https://blog.xn--2-lmb.com/p/under-the-hood-of-glovebot</guid><dc:creator><![CDATA[mu]]></dc:creator><pubDate>Fri, 16 Feb 2024 11:49:00 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%2F609c5013-b0c9-445d-ad4c-d5d83b1526fd_2048x2048.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h4>Hi! I&#8217;m honored you found this.  But it&#8217;s not quite ready yet. Maybe check back at the end of the week?</h4><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ICGv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21654185-0e36-4e6d-a14e-74ef5a446fad_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ICGv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21654185-0e36-4e6d-a14e-74ef5a446fad_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!ICGv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21654185-0e36-4e6d-a14e-74ef5a446fad_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!ICGv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21654185-0e36-4e6d-a14e-74ef5a446fad_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!ICGv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21654185-0e36-4e6d-a14e-74ef5a446fad_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ICGv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21654185-0e36-4e6d-a14e-74ef5a446fad_1024x1024.png" width="727" height="727" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/21654185-0e36-4e6d-a14e-74ef5a446fad_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:727,&quot;bytes&quot;:1661227,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ICGv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21654185-0e36-4e6d-a14e-74ef5a446fad_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!ICGv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21654185-0e36-4e6d-a14e-74ef5a446fad_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!ICGv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21654185-0e36-4e6d-a14e-74ef5a446fad_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!ICGv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21654185-0e36-4e6d-a14e-74ef5a446fad_1024x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">You waiting near the clock for my article to be done.</figcaption></figure></div><p></p><p></p><p></p><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_!Cq8x!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609c5013-b0c9-445d-ad4c-d5d83b1526fd_2048x2048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Cq8x!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609c5013-b0c9-445d-ad4c-d5d83b1526fd_2048x2048.png 424w, https://substackcdn.com/image/fetch/$s_!Cq8x!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609c5013-b0c9-445d-ad4c-d5d83b1526fd_2048x2048.png 848w, https://substackcdn.com/image/fetch/$s_!Cq8x!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609c5013-b0c9-445d-ad4c-d5d83b1526fd_2048x2048.png 1272w, https://substackcdn.com/image/fetch/$s_!Cq8x!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609c5013-b0c9-445d-ad4c-d5d83b1526fd_2048x2048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Cq8x!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609c5013-b0c9-445d-ad4c-d5d83b1526fd_2048x2048.png" width="463" height="463" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/609c5013-b0c9-445d-ad4c-d5d83b1526fd_2048x2048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1456,&quot;width&quot;:1456,&quot;resizeWidth&quot;:463,&quot;bytes&quot;:6304134,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Cq8x!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609c5013-b0c9-445d-ad4c-d5d83b1526fd_2048x2048.png 424w, https://substackcdn.com/image/fetch/$s_!Cq8x!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609c5013-b0c9-445d-ad4c-d5d83b1526fd_2048x2048.png 848w, https://substackcdn.com/image/fetch/$s_!Cq8x!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609c5013-b0c9-445d-ad4c-d5d83b1526fd_2048x2048.png 1272w, https://substackcdn.com/image/fetch/$s_!Cq8x!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609c5013-b0c9-445d-ad4c-d5d83b1526fd_2048x2048.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h1>Context</h1><p>Starting in July of 2023, I took on what was easily my most ambitious task to date.</p><p>Like a lot of other people, I was waiting out the bear market by trying my hand at picking the next up-and-coming meme coins, at first on Ethereum and later through Solana. I realized quickly that doing transactions through my PC and checking my portfolio through Metamask, Zerion, or whatever I happened to have downloaded on my phone at the time was NOT going to do. With OHM it was cool, but these tokens were another story. Narratives would get spun up at 10 pm and be completely gone by 5 am the next day. Execution speed seemed to be by far the most important thing.</p><p>Hanging out on Twitter, I found people having all sorts of success sniping token launches using Telegram trading bots like <a href="https://twitter.com/TeamUnibot">Unibot</a> and <a href="https://twitter.com/BananaGunBot">BananaGun</a>. </p><p>My friends gave me the full tour, how to set gas limits, how to find the good TG groups and eventually how to bribe my way onto pink-sale lists, the whole nine yards. </p><p>I like to think of myself as about average as a trader, caught some 10x&#8217;ers but also paid my dues with some projects rugging and leaving me going from $100 &#8594; $0.003 in a single candle of pure heartbreak. But unlike previous times in the &#8220;trenches,&#8221; I found much more fun on this run-through. Mainly because of these awesome Telegram bots! All I need is to text it a contract address, and it buys it all for me? What!</p><p>As I looked closer into the tech &amp; people behind these strange and convenient Telegram trading bots, I heard about <a href="https://twitter.com/bonkbot_io">BonkBot</a>: A company providing the exact same Telegram service on Solana. This company also happened to burn the Bonk meme token, leveraging the entire community for insane marketing power, and was created over the span of a short hackathon! I got super curious. I&#8217;ve always been pretty early to trends, and I thought that creating a competitor to BonkBot would not only be super feasible but fun! If they could do it, surely I could too!</p><p></p><p>So I got working.</p><p>Here&#8217;s what happened.</p><p><em><strong>This will be my attempt to log the entire process of building a Telegram trading bot. </strong></em></p><p>*<em><strong>This entry tells the story from the beginning (July 2023, to Feb 2024)</strong></em></p><p>There are updates after this point found in other articles tagged &#8220;GloveBot&#8221;</p><h1>PHASE 1. THE MVP</h1><p>This is always my favorite part.</p><p>The MVP stages are generally the same for my projects. </p><p>I just have to meet two simple goals.</p><ol><li><p>Do people <em><strong>ACTUALLY</strong></em> want this? </p><ol><li><p>This is deceptively simple, but people always miss this. We&#8217;re trying to convert people from a &#8220;Yeah, that would be nice to have&#8221; to &#8220;I use this every day/I always reach for this when I&#8217;m in XYZ situation&#8221;</p></li><li><p>The MVP doesn&#8217;t have to reach that level; it should show that the concept COULD trend in a direction where that would be possible.</p></li></ol></li><li><p>Can we get this working? Like&#8230;at all.</p><ol><li><p>Sometimes, problems are so ludicrously out of scope for my skill set that I have to abandon the project altogether. Don&#8217;t get me wrong, I&#8217;m not one to shy away from a challenge. But once in a while, I&#8217;ll do some initial scoping of the MVP and realize that it needs some insane Computational Power, Private/Hard to Scrape Data, or Knowledge that is just so far out of bounds and interest that it forces me to look for greener pastures. </p></li></ol></li></ol><p>This seemed like a manageable challenge. </p><p>So, on July 23, 2023, I decided to make the best Telegram Trading Bot on the market.</p><div><hr></div><p>Back in July, I had decided on the name &#8220;Thunderbot&#8221; because it sounded sick.</p><p>I later found out there are about 10 million separate applications named Thunderbot (and it also autocorrects to &#8220;ThunderBolt&#8221;), both of which are TERRIBLE for SEO, so at some point, I changed the name. I also decided to get the bot working for Ethereum first, as I assumed there was more documentation and support for ETH applications over Solana.</p><p>Here is a screenshot from the very first document of GloveBot:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!I0kI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29fb4a9e-6ef9-4a6a-ba03-9a801e999328_387x193.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!I0kI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29fb4a9e-6ef9-4a6a-ba03-9a801e999328_387x193.png 424w, https://substackcdn.com/image/fetch/$s_!I0kI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29fb4a9e-6ef9-4a6a-ba03-9a801e999328_387x193.png 848w, https://substackcdn.com/image/fetch/$s_!I0kI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29fb4a9e-6ef9-4a6a-ba03-9a801e999328_387x193.png 1272w, https://substackcdn.com/image/fetch/$s_!I0kI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29fb4a9e-6ef9-4a6a-ba03-9a801e999328_387x193.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!I0kI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29fb4a9e-6ef9-4a6a-ba03-9a801e999328_387x193.png" width="475" height="236.88630490956072" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/29fb4a9e-6ef9-4a6a-ba03-9a801e999328_387x193.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:193,&quot;width&quot;:387,&quot;resizeWidth&quot;:475,&quot;bytes&quot;:19925,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!I0kI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29fb4a9e-6ef9-4a6a-ba03-9a801e999328_387x193.png 424w, https://substackcdn.com/image/fetch/$s_!I0kI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29fb4a9e-6ef9-4a6a-ba03-9a801e999328_387x193.png 848w, https://substackcdn.com/image/fetch/$s_!I0kI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29fb4a9e-6ef9-4a6a-ba03-9a801e999328_387x193.png 1272w, https://substackcdn.com/image/fetch/$s_!I0kI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29fb4a9e-6ef9-4a6a-ba03-9a801e999328_387x193.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">Seems simple enough. Just a Flask App, A Telegram Bot, and a Database. How hard can it be?</figcaption></figure></div><p>I had a basic vision, broke it into daily goals, and kept track of what goals I set out for that day. At the end of each day, I logged whether I accomplished them or not, and if I didn&#8217;t complete them, I logged what stopped me to give hints to my future self.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LW3U!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c05931-5043-4a1c-abe3-70309144f64e_473x666.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LW3U!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c05931-5043-4a1c-abe3-70309144f64e_473x666.png 424w, https://substackcdn.com/image/fetch/$s_!LW3U!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c05931-5043-4a1c-abe3-70309144f64e_473x666.png 848w, https://substackcdn.com/image/fetch/$s_!LW3U!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c05931-5043-4a1c-abe3-70309144f64e_473x666.png 1272w, https://substackcdn.com/image/fetch/$s_!LW3U!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c05931-5043-4a1c-abe3-70309144f64e_473x666.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LW3U!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c05931-5043-4a1c-abe3-70309144f64e_473x666.png" width="443" height="623.7589852008457" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/54c05931-5043-4a1c-abe3-70309144f64e_473x666.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:666,&quot;width&quot;:473,&quot;resizeWidth&quot;:443,&quot;bytes&quot;:64618,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!LW3U!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c05931-5043-4a1c-abe3-70309144f64e_473x666.png 424w, https://substackcdn.com/image/fetch/$s_!LW3U!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c05931-5043-4a1c-abe3-70309144f64e_473x666.png 848w, https://substackcdn.com/image/fetch/$s_!LW3U!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c05931-5043-4a1c-abe3-70309144f64e_473x666.png 1272w, https://substackcdn.com/image/fetch/$s_!LW3U!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c05931-5043-4a1c-abe3-70309144f64e_473x666.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">Me trying to make the most basic. Stupid. Simple. AWS App.</figcaption></figure></div><p>My first big accomplishment was getting a Flask server set up on AWS. This was weirdly difficult, as I was mainly used to AWS systems being <em>*somewhat* </em>in place wherever I happened to work, and I just had to hop in to tweak some settings. AWS is a pain. But after a bit of research, I came to the realization that most other developers do: integration with all other AWS services, and the <em><strong>incredibly</strong></em> small possibility that this becomes a real app with serious traffic was worthy of wrestling with possibly the worst user experience on the planet.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tfF8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F566568ac-46ba-4fec-9f1c-773ad9a91f43_640x481.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tfF8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F566568ac-46ba-4fec-9f1c-773ad9a91f43_640x481.png 424w, https://substackcdn.com/image/fetch/$s_!tfF8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F566568ac-46ba-4fec-9f1c-773ad9a91f43_640x481.png 848w, https://substackcdn.com/image/fetch/$s_!tfF8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F566568ac-46ba-4fec-9f1c-773ad9a91f43_640x481.png 1272w, https://substackcdn.com/image/fetch/$s_!tfF8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F566568ac-46ba-4fec-9f1c-773ad9a91f43_640x481.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tfF8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F566568ac-46ba-4fec-9f1c-773ad9a91f43_640x481.png" width="640" height="481" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/566568ac-46ba-4fec-9f1c-773ad9a91f43_640x481.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:481,&quot;width&quot;:640,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;r/ProgrammerHumor - ME: I JUST NEED TO HOST 'HELLO WORLD' ON THE CLOUD. Is c K: aws AWS: NO PROBLEM. HAVE YOU CHECKED ALL OF OUR COOL NAMED PRODUCTS YOU'LL NEVER UNDERSTAND?&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="r/ProgrammerHumor - ME: I JUST NEED TO HOST 'HELLO WORLD' ON THE CLOUD. Is c K: aws AWS: NO PROBLEM. HAVE YOU CHECKED ALL OF OUR COOL NAMED PRODUCTS YOU'LL NEVER UNDERSTAND?" title="r/ProgrammerHumor - ME: I JUST NEED TO HOST 'HELLO WORLD' ON THE CLOUD. Is c K: aws AWS: NO PROBLEM. HAVE YOU CHECKED ALL OF OUR COOL NAMED PRODUCTS YOU'LL NEVER UNDERSTAND?" srcset="https://substackcdn.com/image/fetch/$s_!tfF8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F566568ac-46ba-4fec-9f1c-773ad9a91f43_640x481.png 424w, https://substackcdn.com/image/fetch/$s_!tfF8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F566568ac-46ba-4fec-9f1c-773ad9a91f43_640x481.png 848w, https://substackcdn.com/image/fetch/$s_!tfF8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F566568ac-46ba-4fec-9f1c-773ad9a91f43_640x481.png 1272w, https://substackcdn.com/image/fetch/$s_!tfF8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F566568ac-46ba-4fec-9f1c-773ad9a91f43_640x481.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">Actual footage of me setting up AWS Route 53&#8482; so I can set up AWS Elastic Beanstalk&#8482; to realize that it only <em>ALMOST </em>does what I need but not exactly. Forcing migration to AWS EC2&#8482; so I can use my Amazon Credit Card&#8482; on AWS US-East-1&#8482; allowing Daddy Bezos&#8482; to take the last of my AWS Sanity&#8482;</figcaption></figure></div><p>Okay, now we&#8217;ve finally got the server working. How do we interface with Telegram?</p><p>It&#8217;s a bit more nuanced than I thought, and it took me a few days to fully understand.</p><p>For those of you who don&#8217;t know the ins and outs of how messages are handled, a message never ACTUALLY goes straight to your phone. Messages sit on Telegram&#8217;s servers and <strong>Telegram</strong> manages user delivery. </p><p></p><p>This is <em><strong>super useful</strong></em>. Imagine situations where your phone is off, has a spotty connection, or even if it&#8217;s in some super aggressive Do Not Disturb mode. Telegram can just sit on the message. Then, when the app decides it&#8217;s a good time to send it to the user, it just delivers it. It also manages delivery confirmation, read receipts, and other headaches your average developer would rather not be involved with.  When the user responds, Telegram ALSO figures out Username &#8594; Internal User ID mapping, graphic content checks, and I&#8217;m sure a trillion other edge cases we don&#8217;t have to worry about. The only thing we care about is that Telegram decides if/when/how to alert our services of a user&#8217;s message to our bot.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ncRC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62a7b422-2d0b-4836-bbf1-9820715355b8_1148x296.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ncRC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62a7b422-2d0b-4836-bbf1-9820715355b8_1148x296.png 424w, https://substackcdn.com/image/fetch/$s_!ncRC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62a7b422-2d0b-4836-bbf1-9820715355b8_1148x296.png 848w, https://substackcdn.com/image/fetch/$s_!ncRC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62a7b422-2d0b-4836-bbf1-9820715355b8_1148x296.png 1272w, https://substackcdn.com/image/fetch/$s_!ncRC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62a7b422-2d0b-4836-bbf1-9820715355b8_1148x296.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ncRC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62a7b422-2d0b-4836-bbf1-9820715355b8_1148x296.png" width="1148" height="296" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/62a7b422-2d0b-4836-bbf1-9820715355b8_1148x296.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:296,&quot;width&quot;:1148,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:49641,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ncRC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62a7b422-2d0b-4836-bbf1-9820715355b8_1148x296.png 424w, https://substackcdn.com/image/fetch/$s_!ncRC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62a7b422-2d0b-4836-bbf1-9820715355b8_1148x296.png 848w, https://substackcdn.com/image/fetch/$s_!ncRC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62a7b422-2d0b-4836-bbf1-9820715355b8_1148x296.png 1272w, https://substackcdn.com/image/fetch/$s_!ncRC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62a7b422-2d0b-4836-bbf1-9820715355b8_1148x296.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">How the Telegram messaging system works</figcaption></figure></div><p>This was slightly different from how I thought it worked. I assumed that when chatting with a &#8220;Bot,&#8221; the User&#8217;s phone directly dumped raw data into the Bot&#8217;s servers. The developer&#8217;s servers and external services they chose to call were responsible for managing message history, coming up with responses, and eventually responding to the user.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!q29l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d40bfca-dc73-4d68-a74e-800711cc168c_792x486.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!q29l!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d40bfca-dc73-4d68-a74e-800711cc168c_792x486.png 424w, https://substackcdn.com/image/fetch/$s_!q29l!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d40bfca-dc73-4d68-a74e-800711cc168c_792x486.png 848w, https://substackcdn.com/image/fetch/$s_!q29l!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d40bfca-dc73-4d68-a74e-800711cc168c_792x486.png 1272w, https://substackcdn.com/image/fetch/$s_!q29l!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d40bfca-dc73-4d68-a74e-800711cc168c_792x486.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!q29l!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d40bfca-dc73-4d68-a74e-800711cc168c_792x486.png" width="792" height="486" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1d40bfca-dc73-4d68-a74e-800711cc168c_792x486.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:486,&quot;width&quot;:792,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:58045,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!q29l!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d40bfca-dc73-4d68-a74e-800711cc168c_792x486.png 424w, https://substackcdn.com/image/fetch/$s_!q29l!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d40bfca-dc73-4d68-a74e-800711cc168c_792x486.png 848w, https://substackcdn.com/image/fetch/$s_!q29l!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d40bfca-dc73-4d68-a74e-800711cc168c_792x486.png 1272w, https://substackcdn.com/image/fetch/$s_!q29l!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d40bfca-dc73-4d68-a74e-800711cc168c_792x486.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">My previous mental model of how Telegram worked</figcaption></figure></div><p>It&#8217;s a subtle difference but a SUPER important one. I was getting continually frustrated because I was looking for solutions for how to &#8220;store messages&#8221; or &#8220;connect to users&#8217; phones&#8221; via Telegram. With the wrong mental model, my searches were leading nowhere, and I couldn&#8217;t exactly understand what a &#8220;Bot&#8221; was. Much less how to build even the most basic Hello World bot.</p><p>I stumbled upon the <a href="https://github.com/python-telegram-bot/python-telegram-bot">Python Telegram Bot (PTB)</a> codebase, which had some wonderful examples, but even going through all the basic examples, this solution wasn&#8217;t exactly clear to me.</p><p>PTB showed that it was possible to get Hello World running on a bot via a CLI and basic app. However, until we hit the advanced tutorials where they used <a href="https://www.starlette.io/">Starlette</a> (an async web server library in Python), the actual &#8220;Server&#8221; was frustratingly hidden. I had NO CLUE where my requests were going or how they were coming back, but it was technically my first Telegram Hello World!</p><p>The <a href="https://github.com/python-telegram-bot/python-telegram-bot/blob/master/examples/customwebhookbot/starlettebot.py">Starlette Tutorial</a> opened my eyes to the truth.</p><p>The biggest issue facing this was the way that Telegram&#8217;s servers were called. Now that they weren&#8217;t being abstracted away, they became pedantic and demanding. They needed my little &#8220;Hello World&#8221; calls to be cloaked in the secure garden of HTTPS, and my Flask EC2 was the opposite of secure.</p><p>The solution to this was kind of involved, but I ended up being grateful for the complexity, as it made things easier later. </p><ul><li><p>We set up AWS ROUTE 53&#8482;</p></li><li><p>We set up NGROK&#8482;</p></li></ul><p>Again, this is much easier said than done. I don&#8217;t remember my exact issues with this; I might have blacked out. But it did end after multiple arguments with ChatGPT, strange config files, and a folder deep in Unix that I was afraid ever to touch again.</p><p>Lucky for us, kicking and screaming, we were able to spin up Ngrok and our Flask server. What do you know? We&#8217;re in business.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Fse3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f0980a0-6163-42c1-b9c8-eb6aecf84321_631x194.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Fse3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f0980a0-6163-42c1-b9c8-eb6aecf84321_631x194.png 424w, https://substackcdn.com/image/fetch/$s_!Fse3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f0980a0-6163-42c1-b9c8-eb6aecf84321_631x194.png 848w, https://substackcdn.com/image/fetch/$s_!Fse3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f0980a0-6163-42c1-b9c8-eb6aecf84321_631x194.png 1272w, https://substackcdn.com/image/fetch/$s_!Fse3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f0980a0-6163-42c1-b9c8-eb6aecf84321_631x194.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Fse3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f0980a0-6163-42c1-b9c8-eb6aecf84321_631x194.png" width="631" height="194" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6f0980a0-6163-42c1-b9c8-eb6aecf84321_631x194.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:194,&quot;width&quot;:631,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:84376,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Fse3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f0980a0-6163-42c1-b9c8-eb6aecf84321_631x194.png 424w, https://substackcdn.com/image/fetch/$s_!Fse3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f0980a0-6163-42c1-b9c8-eb6aecf84321_631x194.png 848w, https://substackcdn.com/image/fetch/$s_!Fse3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f0980a0-6163-42c1-b9c8-eb6aecf84321_631x194.png 1272w, https://substackcdn.com/image/fetch/$s_!Fse3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f0980a0-6163-42c1-b9c8-eb6aecf84321_631x194.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">Contact has been established.</figcaption></figure></div><p>The next step was modifying the Flask app from a thing that sits on the server shouting &#8220;HELLO WORLD!&#8221; to an app that can send something to the user via a web-hook (which I now learned Telegram uses to keep external servers in the loop, this is the basis of all &#8220;Bot&#8221; like entities on Telegram, and I suspect most other platforms as well) </p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!14DY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c17f05-daeb-4436-9633-da3c268c3558_524x103.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!14DY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c17f05-daeb-4436-9633-da3c268c3558_524x103.png 424w, https://substackcdn.com/image/fetch/$s_!14DY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c17f05-daeb-4436-9633-da3c268c3558_524x103.png 848w, https://substackcdn.com/image/fetch/$s_!14DY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c17f05-daeb-4436-9633-da3c268c3558_524x103.png 1272w, https://substackcdn.com/image/fetch/$s_!14DY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c17f05-daeb-4436-9633-da3c268c3558_524x103.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!14DY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c17f05-daeb-4436-9633-da3c268c3558_524x103.png" width="524" height="103" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/45c17f05-daeb-4436-9633-da3c268c3558_524x103.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:103,&quot;width&quot;:524,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:22246,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!14DY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c17f05-daeb-4436-9633-da3c268c3558_524x103.png 424w, https://substackcdn.com/image/fetch/$s_!14DY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c17f05-daeb-4436-9633-da3c268c3558_524x103.png 848w, https://substackcdn.com/image/fetch/$s_!14DY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c17f05-daeb-4436-9633-da3c268c3558_524x103.png 1272w, https://substackcdn.com/image/fetch/$s_!14DY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c17f05-daeb-4436-9633-da3c268c3558_524x103.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">Payloads? Now we&#8217;re cooking.</figcaption></figure></div><p>After we reached this point, it became pretty normal software development for a bit, </p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eWJi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc1751a4-33c5-487b-88f4-439e14ae51c5_429x254.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eWJi!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc1751a4-33c5-487b-88f4-439e14ae51c5_429x254.png 424w, https://substackcdn.com/image/fetch/$s_!eWJi!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc1751a4-33c5-487b-88f4-439e14ae51c5_429x254.png 848w, https://substackcdn.com/image/fetch/$s_!eWJi!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc1751a4-33c5-487b-88f4-439e14ae51c5_429x254.png 1272w, https://substackcdn.com/image/fetch/$s_!eWJi!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc1751a4-33c5-487b-88f4-439e14ae51c5_429x254.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eWJi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc1751a4-33c5-487b-88f4-439e14ae51c5_429x254.png" width="355" height="210.1864801864802" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cc1751a4-33c5-487b-88f4-439e14ae51c5_429x254.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:254,&quot;width&quot;:429,&quot;resizeWidth&quot;:355,&quot;bytes&quot;:95935,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!eWJi!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc1751a4-33c5-487b-88f4-439e14ae51c5_429x254.png 424w, https://substackcdn.com/image/fetch/$s_!eWJi!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc1751a4-33c5-487b-88f4-439e14ae51c5_429x254.png 848w, https://substackcdn.com/image/fetch/$s_!eWJi!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc1751a4-33c5-487b-88f4-439e14ae51c5_429x254.png 1272w, https://substackcdn.com/image/fetch/$s_!eWJi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc1751a4-33c5-487b-88f4-439e14ae51c5_429x254.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">Buttons!</figcaption></figure></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sJUh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d5bf16-7b1b-4247-834a-9af404a44c0f_402x230.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sJUh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d5bf16-7b1b-4247-834a-9af404a44c0f_402x230.png 424w, https://substackcdn.com/image/fetch/$s_!sJUh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d5bf16-7b1b-4247-834a-9af404a44c0f_402x230.png 848w, https://substackcdn.com/image/fetch/$s_!sJUh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d5bf16-7b1b-4247-834a-9af404a44c0f_402x230.png 1272w, https://substackcdn.com/image/fetch/$s_!sJUh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d5bf16-7b1b-4247-834a-9af404a44c0f_402x230.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sJUh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d5bf16-7b1b-4247-834a-9af404a44c0f_402x230.png" width="402" height="230" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/27d5bf16-7b1b-4247-834a-9af404a44c0f_402x230.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:230,&quot;width&quot;:402,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:78623,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!sJUh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d5bf16-7b1b-4247-834a-9af404a44c0f_402x230.png 424w, https://substackcdn.com/image/fetch/$s_!sJUh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d5bf16-7b1b-4247-834a-9af404a44c0f_402x230.png 848w, https://substackcdn.com/image/fetch/$s_!sJUh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d5bf16-7b1b-4247-834a-9af404a44c0f_402x230.png 1272w, https://substackcdn.com/image/fetch/$s_!sJUh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d5bf16-7b1b-4247-834a-9af404a44c0f_402x230.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">Little Bit of State Management!!!</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_!q4kF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc98275b-4421-4439-b260-38e384afc69b_620x577.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!q4kF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc98275b-4421-4439-b260-38e384afc69b_620x577.png 424w, https://substackcdn.com/image/fetch/$s_!q4kF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc98275b-4421-4439-b260-38e384afc69b_620x577.png 848w, https://substackcdn.com/image/fetch/$s_!q4kF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc98275b-4421-4439-b260-38e384afc69b_620x577.png 1272w, https://substackcdn.com/image/fetch/$s_!q4kF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc98275b-4421-4439-b260-38e384afc69b_620x577.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!q4kF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc98275b-4421-4439-b260-38e384afc69b_620x577.png" width="526" height="489.51935483870966" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bc98275b-4421-4439-b260-38e384afc69b_620x577.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:577,&quot;width&quot;:620,&quot;resizeWidth&quot;:526,&quot;bytes&quot;:275825,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!q4kF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc98275b-4421-4439-b260-38e384afc69b_620x577.png 424w, https://substackcdn.com/image/fetch/$s_!q4kF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc98275b-4421-4439-b260-38e384afc69b_620x577.png 848w, https://substackcdn.com/image/fetch/$s_!q4kF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc98275b-4421-4439-b260-38e384afc69b_620x577.png 1272w, https://substackcdn.com/image/fetch/$s_!q4kF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc98275b-4421-4439-b260-38e384afc69b_620x577.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">Proof Of Concept Menu</figcaption></figure></div><p></p><p>Next, we need to make the app do what we promised the users.</p><p>Let&#8217;s have it trade crypto!</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qJIb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3caca8e3-3e42-40c3-ad27-65542874d778_627x544.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qJIb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3caca8e3-3e42-40c3-ad27-65542874d778_627x544.png 424w, https://substackcdn.com/image/fetch/$s_!qJIb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3caca8e3-3e42-40c3-ad27-65542874d778_627x544.png 848w, https://substackcdn.com/image/fetch/$s_!qJIb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3caca8e3-3e42-40c3-ad27-65542874d778_627x544.png 1272w, https://substackcdn.com/image/fetch/$s_!qJIb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3caca8e3-3e42-40c3-ad27-65542874d778_627x544.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qJIb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3caca8e3-3e42-40c3-ad27-65542874d778_627x544.png" width="471" height="408.6507177033493" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3caca8e3-3e42-40c3-ad27-65542874d778_627x544.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:544,&quot;width&quot;:627,&quot;resizeWidth&quot;:471,&quot;bytes&quot;:240144,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!qJIb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3caca8e3-3e42-40c3-ad27-65542874d778_627x544.png 424w, https://substackcdn.com/image/fetch/$s_!qJIb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3caca8e3-3e42-40c3-ad27-65542874d778_627x544.png 848w, https://substackcdn.com/image/fetch/$s_!qJIb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3caca8e3-3e42-40c3-ad27-65542874d778_627x544.png 1272w, https://substackcdn.com/image/fetch/$s_!qJIb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3caca8e3-3e42-40c3-ad27-65542874d778_627x544.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">There&#8217;s a lot behind the scenes that I&#8217;ll show you later. At this point, it was just a UI mock.</figcaption></figure></div><p>But wait&#8230; </p><p>Before we even get to that&#8230; This one server is doing a lot of stuff. Isn&#8217;t it?</p><p>Even at this MVP phase, it&#8217;s going to be responsible for:</p><ul><li><p>Managing User&#8217;s Sign Ups</p><ul><li><p>Talking to a Database (DB)</p></li></ul></li><li><p>Handling Private Keys </p><ul><li><p>(Talking to a&#8230;more secure DB?)</p></li></ul></li><li><p>Checking Balance </p><ul><li><p>(Calling the blockchain)</p></li></ul></li><li><p>Displaying the Menu </p><ul><li><p>Calling some sort of Cache, so we DON&#8217;T have to talk to the blockchain every time someone does /menu</p></li></ul></li><li><p>Handling Buys/Sells</p><ul><li><p>(Calling the blockchain, waiting, confirming, returning result)</p></li></ul></li></ul><p>This seems like a lot. </p><p>I have big dreams. Milliseconds matter in trading, and what if 100,000 people try to trade at once? The server was going down; I just knew it.</p><p>There were a few options to consider. It didn&#8217;t <em><strong>technically</strong></em> matter right now, as I was my only user, and this was STILL MVP phase, but this seemed like the type of thing to decide early, as it sort of decides the direction and informs a lot of the technical decisions down the line.</p><p>We had a few directions we could go.</p><ol><li><p>Get a bigger server. Duh.</p><ol><li><p>This would have been the easiest option for sure. But I couldn&#8217;t really think of any companies that handled significant loads that did this. After some research, all the large examples that had &#8220;Monolithic&#8221; style architectures (Early Amazon, Netflix before streaming, Shopify) eventually moved to Microservices or such complex solutions within a Monolith that it might <em>as well</em> be a Microservice (Looking at you, Shopify)</p></li></ol></li><li><p>Serverless?</p><ol><li><p>Can I just shove Lambdas or GCloud functions everywhere? Maybe. It seemed like <a href="https://dashbird.io/blog/serverless-case-study-coca-cola/">Coca-Cola</a> was having a wonderful time with it. And that kind of makes sense. At a company where they just need tech to &#8220;Work,&#8221; why not outsource all DevOps to the big guys?</p></li><li><p>But they seemed super expensive? I&#8217;m not Coca-Cola. And without being able to model exactly what &#8220;Load&#8221; could look like for my app, I couldn&#8217;t even begin to estimate the cost of what it would be. A traditional server would at least have more transparent costs. And in all honesty, I&#8217;m not exactly building a mission-critical system. I&#8217;d rather it crash than get stuck with an eye-watering bill.</p></li></ol></li><li><p>What about MicroServices?</p><ol><li><p>It&#8217;s the &#8220;Hot&#8221; tech right now. But it seemed like it was for a good reason. </p></li><li><p>Certain parts of your apps are going to get hit more often than others. Certain parts of your app have more expensive functions to run and completely different jobs touching vastly different external services. If a server breaks down in a properly designed system, we may just be able to spin up another one before anybody notices or maintain core functionality if a new feature breaks!</p></li></ol></li></ol><p>I wasn&#8217;t too well versed in Microservices. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!489t!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89cc23ed-e6a6-436e-9efc-c4d6809c3787_960x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!489t!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89cc23ed-e6a6-436e-9efc-c4d6809c3787_960x720.png 424w, https://substackcdn.com/image/fetch/$s_!489t!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89cc23ed-e6a6-436e-9efc-c4d6809c3787_960x720.png 848w, https://substackcdn.com/image/fetch/$s_!489t!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89cc23ed-e6a6-436e-9efc-c4d6809c3787_960x720.png 1272w, https://substackcdn.com/image/fetch/$s_!489t!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89cc23ed-e6a6-436e-9efc-c4d6809c3787_960x720.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!489t!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89cc23ed-e6a6-436e-9efc-c4d6809c3787_960x720.png" width="727" height="545.25" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/89cc23ed-e6a6-436e-9efc-c4d6809c3787_960x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:960,&quot;resizeWidth&quot;:727,&quot;bytes&quot;:129201,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!489t!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89cc23ed-e6a6-436e-9efc-c4d6809c3787_960x720.png 424w, https://substackcdn.com/image/fetch/$s_!489t!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89cc23ed-e6a6-436e-9efc-c4d6809c3787_960x720.png 848w, https://substackcdn.com/image/fetch/$s_!489t!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89cc23ed-e6a6-436e-9efc-c4d6809c3787_960x720.png 1272w, https://substackcdn.com/image/fetch/$s_!489t!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89cc23ed-e6a6-436e-9efc-c4d6809c3787_960x720.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">I hadn&#8217;t given them much thought before; people online seemed to have pretty strong opinions, though.</figcaption></figure></div><p>I had worked on individual systems at companies that I vaguely knew talked to other systems, but deciding what talked to what was someone else&#8217;s job. As long as I stayed to the correct function signatures, nobody got hurt.</p><p>Even though I was essentially sentencing myself to what I assumed was DevOps hell, my use case seemed like it deserved a fair shot at it. After all, this is pretty much exactly the sort of situation Microservices were meant for.</p><p>Luckily, for the price of <a href="https://www.amazon.com/Building-Microservices-Designing-Fine-Grained-Systems/dp/B09RTQY7SX/">$42.71</a>, I can become an expert.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!s9Lu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F502f2677-d897-44d1-af9e-238fa8111dfb_500x500.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!s9Lu!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F502f2677-d897-44d1-af9e-238fa8111dfb_500x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!s9Lu!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F502f2677-d897-44d1-af9e-238fa8111dfb_500x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!s9Lu!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F502f2677-d897-44d1-af9e-238fa8111dfb_500x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!s9Lu!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F502f2677-d897-44d1-af9e-238fa8111dfb_500x500.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!s9Lu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F502f2677-d897-44d1-af9e-238fa8111dfb_500x500.jpeg" width="348" height="348" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/502f2677-d897-44d1-af9e-238fa8111dfb_500x500.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:500,&quot;width&quot;:500,&quot;resizeWidth&quot;:348,&quot;bytes&quot;:45445,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!s9Lu!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F502f2677-d897-44d1-af9e-238fa8111dfb_500x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!s9Lu!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F502f2677-d897-44d1-af9e-238fa8111dfb_500x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!s9Lu!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F502f2677-d897-44d1-af9e-238fa8111dfb_500x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!s9Lu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F502f2677-d897-44d1-af9e-238fa8111dfb_500x500.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">My new best friend for the next 4 months</figcaption></figure></div><h1>Phase 2. The Hive.</h1><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7DuK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa32ad6e-e5a5-4676-8808-b90c104eac4b_640x561.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7DuK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa32ad6e-e5a5-4676-8808-b90c104eac4b_640x561.png 424w, https://substackcdn.com/image/fetch/$s_!7DuK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa32ad6e-e5a5-4676-8808-b90c104eac4b_640x561.png 848w, https://substackcdn.com/image/fetch/$s_!7DuK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa32ad6e-e5a5-4676-8808-b90c104eac4b_640x561.png 1272w, https://substackcdn.com/image/fetch/$s_!7DuK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa32ad6e-e5a5-4676-8808-b90c104eac4b_640x561.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7DuK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa32ad6e-e5a5-4676-8808-b90c104eac4b_640x561.png" width="640" height="561" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aa32ad6e-e5a5-4676-8808-b90c104eac4b_640x561.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:561,&quot;width&quot;:640,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;r/ProgrammerHumor - Why would a fly land on something like this? Rats should be ashamed for falling in this trap BEARS!! This is ridiculous! This must be fun! aws FREE TIER&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="r/ProgrammerHumor - Why would a fly land on something like this? Rats should be ashamed for falling in this trap BEARS!! This is ridiculous! This must be fun! aws FREE TIER" title="r/ProgrammerHumor - Why would a fly land on something like this? Rats should be ashamed for falling in this trap BEARS!! This is ridiculous! This must be fun! aws FREE TIER" srcset="https://substackcdn.com/image/fetch/$s_!7DuK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa32ad6e-e5a5-4676-8808-b90c104eac4b_640x561.png 424w, https://substackcdn.com/image/fetch/$s_!7DuK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa32ad6e-e5a5-4676-8808-b90c104eac4b_640x561.png 848w, https://substackcdn.com/image/fetch/$s_!7DuK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa32ad6e-e5a5-4676-8808-b90c104eac4b_640x561.png 1272w, https://substackcdn.com/image/fetch/$s_!7DuK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa32ad6e-e5a5-4676-8808-b90c104eac4b_640x561.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">Me spinning up my 4th EC2 docker container expecting to pay $0.00</figcaption></figure></div><p></p><p></p><p></p><h1>This post is not finished. Here&#8217;s the memes I&#8217;m planning to use for the future sections.</h1><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Z2I1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d3a8a58-6e78-4e6d-9981-fcc8429a7c8f_1423x759.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Z2I1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d3a8a58-6e78-4e6d-9981-fcc8429a7c8f_1423x759.png 424w, https://substackcdn.com/image/fetch/$s_!Z2I1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d3a8a58-6e78-4e6d-9981-fcc8429a7c8f_1423x759.png 848w, https://substackcdn.com/image/fetch/$s_!Z2I1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d3a8a58-6e78-4e6d-9981-fcc8429a7c8f_1423x759.png 1272w, https://substackcdn.com/image/fetch/$s_!Z2I1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d3a8a58-6e78-4e6d-9981-fcc8429a7c8f_1423x759.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Z2I1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d3a8a58-6e78-4e6d-9981-fcc8429a7c8f_1423x759.png" width="1423" height="759" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5d3a8a58-6e78-4e6d-9981-fcc8429a7c8f_1423x759.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:759,&quot;width&quot;:1423,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:113350,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Z2I1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d3a8a58-6e78-4e6d-9981-fcc8429a7c8f_1423x759.png 424w, https://substackcdn.com/image/fetch/$s_!Z2I1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d3a8a58-6e78-4e6d-9981-fcc8429a7c8f_1423x759.png 848w, https://substackcdn.com/image/fetch/$s_!Z2I1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d3a8a58-6e78-4e6d-9981-fcc8429a7c8f_1423x759.png 1272w, https://substackcdn.com/image/fetch/$s_!Z2I1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d3a8a58-6e78-4e6d-9981-fcc8429a7c8f_1423x759.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">Final GloveBot Architecture</figcaption></figure></div><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_!tMe1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfc2a574-0c19-458a-9abb-3291b3fe577e_640x473.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tMe1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfc2a574-0c19-458a-9abb-3291b3fe577e_640x473.jpeg 424w, https://substackcdn.com/image/fetch/$s_!tMe1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfc2a574-0c19-458a-9abb-3291b3fe577e_640x473.jpeg 848w, https://substackcdn.com/image/fetch/$s_!tMe1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfc2a574-0c19-458a-9abb-3291b3fe577e_640x473.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!tMe1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfc2a574-0c19-458a-9abb-3291b3fe577e_640x473.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tMe1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfc2a574-0c19-458a-9abb-3291b3fe577e_640x473.jpeg" width="640" height="473" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dfc2a574-0c19-458a-9abb-3291b3fe577e_640x473.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:473,&quot;width&quot;:640,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;r/ProgrammerHumor - codeComplexity&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="r/ProgrammerHumor - codeComplexity" title="r/ProgrammerHumor - codeComplexity" srcset="https://substackcdn.com/image/fetch/$s_!tMe1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfc2a574-0c19-458a-9abb-3291b3fe577e_640x473.jpeg 424w, https://substackcdn.com/image/fetch/$s_!tMe1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfc2a574-0c19-458a-9abb-3291b3fe577e_640x473.jpeg 848w, https://substackcdn.com/image/fetch/$s_!tMe1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfc2a574-0c19-458a-9abb-3291b3fe577e_640x473.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!tMe1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfc2a574-0c19-458a-9abb-3291b3fe577e_640x473.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Kchd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc042bc5d-5ad6-4221-8314-f23cc994848c_800x945.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Kchd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc042bc5d-5ad6-4221-8314-f23cc994848c_800x945.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Kchd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc042bc5d-5ad6-4221-8314-f23cc994848c_800x945.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Kchd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc042bc5d-5ad6-4221-8314-f23cc994848c_800x945.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Kchd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc042bc5d-5ad6-4221-8314-f23cc994848c_800x945.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Kchd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc042bc5d-5ad6-4221-8314-f23cc994848c_800x945.jpeg" width="800" height="945" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c042bc5d-5ad6-4221-8314-f23cc994848c_800x945.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:945,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;We just pray to god instead : r/ProgrammerHumor&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="We just pray to god instead : r/ProgrammerHumor" title="We just pray to god instead : r/ProgrammerHumor" srcset="https://substackcdn.com/image/fetch/$s_!Kchd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc042bc5d-5ad6-4221-8314-f23cc994848c_800x945.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Kchd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc042bc5d-5ad6-4221-8314-f23cc994848c_800x945.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Kchd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc042bc5d-5ad6-4221-8314-f23cc994848c_800x945.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Kchd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc042bc5d-5ad6-4221-8314-f23cc994848c_800x945.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><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_!Xs02!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe92d7bf-25ca-460d-9af5-9521cd00df28_1080x1044.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Xs02!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe92d7bf-25ca-460d-9af5-9521cd00df28_1080x1044.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Xs02!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe92d7bf-25ca-460d-9af5-9521cd00df28_1080x1044.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Xs02!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe92d7bf-25ca-460d-9af5-9521cd00df28_1080x1044.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Xs02!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe92d7bf-25ca-460d-9af5-9521cd00df28_1080x1044.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Xs02!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe92d7bf-25ca-460d-9af5-9521cd00df28_1080x1044.jpeg" width="1080" height="1044" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/be92d7bf-25ca-460d-9af5-9521cd00df28_1080x1044.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1044,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;r/ProgrammerHumor - I just need to finish this project&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="r/ProgrammerHumor - I just need to finish this project" title="r/ProgrammerHumor - I just need to finish this project" srcset="https://substackcdn.com/image/fetch/$s_!Xs02!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe92d7bf-25ca-460d-9af5-9521cd00df28_1080x1044.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Xs02!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe92d7bf-25ca-460d-9af5-9521cd00df28_1080x1044.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Xs02!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe92d7bf-25ca-460d-9af5-9521cd00df28_1080x1044.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Xs02!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe92d7bf-25ca-460d-9af5-9521cd00df28_1080x1044.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div>]]></content:encoded></item><item><title><![CDATA[08052015]]></title><description><![CDATA[What happened on August 5th, 2015?]]></description><link>https://blog.xn--2-lmb.com/p/08052015</link><guid isPermaLink="false">https://blog.xn--2-lmb.com/p/08052015</guid><dc:creator><![CDATA[mu]]></dc:creator><pubDate>Sat, 05 Aug 2023 18:08:00 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!U2ib!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df90d26-baba-4653-9893-c788a1dca21c_1024x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!U2ib!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df90d26-baba-4653-9893-c788a1dca21c_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!U2ib!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df90d26-baba-4653-9893-c788a1dca21c_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!U2ib!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df90d26-baba-4653-9893-c788a1dca21c_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!U2ib!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df90d26-baba-4653-9893-c788a1dca21c_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!U2ib!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df90d26-baba-4653-9893-c788a1dca21c_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!U2ib!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df90d26-baba-4653-9893-c788a1dca21c_1024x1024.png" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1df90d26-baba-4653-9893-c788a1dca21c_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2195820,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!U2ib!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df90d26-baba-4653-9893-c788a1dca21c_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!U2ib!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df90d26-baba-4653-9893-c788a1dca21c_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!U2ib!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df90d26-baba-4653-9893-c788a1dca21c_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!U2ib!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df90d26-baba-4653-9893-c788a1dca21c_1024x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This event was particularly weird.</p><p>The stories do not add up.</p><ul><li><p>https://www.npr.org/sections/thetwo-way/2015/08/05/429811491/cell-phone-service-down-for-thousands-but-regulators-may-never-know-why</p></li><li><p>https://www.npr.org/2015/08/05/429773959/after-wireless-outage-some-wonder-if-old-phone-networks-at-fault</p></li><li><p>https://apnews.com/article/32bb1df1500d4779b468fa361355feae</p></li><li><p>https://arstechnica.com/information-technology/2015/08/an-att-problem-allegedly-caused-outage-on-verizon-sprint-and-t-mobile/</p></li><li><p>https://money.cnn.com/2015/08/05/technology/cell-phone-outage/</p></li><li><p>https://wirelessestimator.com/articles/2015/routers-fiber-line-cut-blamed-for-massive-cell-phone-outage-in-the-southeast/</p></li></ul><p>Anyways.</p>]]></content:encoded></item><item><title><![CDATA[House Rules.]]></title><description><![CDATA[Who, What, Why]]></description><link>https://blog.xn--2-lmb.com/p/coming-soon</link><guid isPermaLink="false">https://blog.xn--2-lmb.com/p/coming-soon</guid><dc:creator><![CDATA[mu]]></dc:creator><pubDate>Sun, 01 Jan 2023 10:07:00 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%2Fbc0e410d-e95c-487e-9d00-c2c50d86f423_2048x2048.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I&#8217;ve decided I&#8217;m writing this year.</p><p></p><p>Something I&#8217;ve noticed about highly technical folks is that they often struggle to get their ideas through.</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_!ewHD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0e410d-e95c-487e-9d00-c2c50d86f423_2048x2048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ewHD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0e410d-e95c-487e-9d00-c2c50d86f423_2048x2048.png 424w, https://substackcdn.com/image/fetch/$s_!ewHD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0e410d-e95c-487e-9d00-c2c50d86f423_2048x2048.png 848w, https://substackcdn.com/image/fetch/$s_!ewHD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0e410d-e95c-487e-9d00-c2c50d86f423_2048x2048.png 1272w, https://substackcdn.com/image/fetch/$s_!ewHD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0e410d-e95c-487e-9d00-c2c50d86f423_2048x2048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ewHD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0e410d-e95c-487e-9d00-c2c50d86f423_2048x2048.png" width="1456" height="1456" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bc0e410d-e95c-487e-9d00-c2c50d86f423_2048x2048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1456,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4738713,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ewHD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0e410d-e95c-487e-9d00-c2c50d86f423_2048x2048.png 424w, https://substackcdn.com/image/fetch/$s_!ewHD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0e410d-e95c-487e-9d00-c2c50d86f423_2048x2048.png 848w, https://substackcdn.com/image/fetch/$s_!ewHD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0e410d-e95c-487e-9d00-c2c50d86f423_2048x2048.png 1272w, https://substackcdn.com/image/fetch/$s_!ewHD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0e410d-e95c-487e-9d00-c2c50d86f423_2048x2048.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p></p><p>I&#8217;m grateful that I&#8217;ve never had a problem with this. Although I&#8217;m a hacker by trade, I have always spent a ton of time reading, writing, journaling, and generally having conversations with people around me.</p><p></p><p>This has often given me the somewhat strange compliment:</p><blockquote><p> &#8220;Mu will go far because he&#8217;s not just good with tech; he can also talk to people.&#8221; </p></blockquote><p>Apparently, that&#8217;s a cool combination.</p><p></p><p>I didn&#8217;t realize it until I noticed my roommate, who I consider much farther ahead than me in terms of technical theory, struggling to complete a basic book review for an English assignment at Uni. This happened a few weeks ago, and I know it&#8217;s something that I&#8217;m going to reference for the rest of my life. I know that some people specialize deeply in one or two things, but to be so gifted at one aspect of life and so just&#8230;bad at one as basic as writing seems a bit strange to me.</p><p></p><p>I'm not sure if it&#8217;s arrogance or what, because I&#8217;m sure that there are nearly infinite fields that I would definitely struggle with if I were tested on them as rigorously as a &#8220;Writing for Engineers&#8221; course. Maybe painting? Or singing? Carpentry? Not sure. Anyways.</p><p></p><p>I&#8217;m going to start writing here. I hope to get better.</p><p>And maybe share something with you.</p><p></p><p>I don&#8217;t want your money.</p><p>I don&#8217;t even really need your attention.</p><p>I&#8217;m writing to share what I&#8217;ve learned and hopefully meet other folks doing the same.</p><p></p><p>Cheers,</p><p>&#956;2</p><p></p><p></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.xn--2-lmb.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://blog.xn--2-lmb.com/subscribe?"><span>Subscribe now</span></a></p>]]></content:encoded></item></channel></rss>