<?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[The Technically Challenged Newsletter]]></title><description><![CDATA["Tech made easy", exploring topics around technology in general, programming, learning to code, career growth, learning new technologies, tips and tricks, personal growth]]></description><link>https://technicallychallenged.substack.com</link><image><url>https://substackcdn.com/image/fetch/$s_!6-RT!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Ftechnicallychallenged.substack.com%2Fimg%2Fsubstack.png</url><title>The Technically Challenged Newsletter</title><link>https://technicallychallenged.substack.com</link></image><generator>Substack</generator><lastBuildDate>Tue, 09 Jun 2026 03:37:07 GMT</lastBuildDate><atom:link href="https://technicallychallenged.substack.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Jesse Peterman]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[technicallychallenged@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[technicallychallenged@substack.com]]></itunes:email><itunes:name><![CDATA[Jesse]]></itunes:name></itunes:owner><itunes:author><![CDATA[Jesse]]></itunes:author><googleplay:owner><![CDATA[technicallychallenged@substack.com]]></googleplay:owner><googleplay:email><![CDATA[technicallychallenged@substack.com]]></googleplay:email><googleplay:author><![CDATA[Jesse]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Retraining my terrible typing habits]]></title><description><![CDATA[As a software engineer who barely types code anymore (thanks AI), I have still been typing to make sure this muscle doesn&#8217;t atrophy prematurely (as well as to stay fresh for potential interviews).]]></description><link>https://technicallychallenged.substack.com/p/retraining-my-terrible-typing-habits</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/retraining-my-terrible-typing-habits</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Tue, 31 Mar 2026 01:01:03 GMT</pubDate><content:encoded><![CDATA[<p>As a software engineer who barely types code anymore (thanks AI), I have still been typing to make sure this muscle doesn&#8217;t atrophy prematurely (as well as to stay fresh for potential interviews). I&#8217;ve never been a super fast typer but one thing I noticed recently is that I really struggle in accuracy when I&#8217;m typing certain keys&#8212;in particular the top right of the keyboard. I&#8217;ve noticed a few key insights as I have spent probably more time than normal this last week or two thinking about this and have since started a new training program that targets that area specifically.</p><h2>Old Basketball injury</h2><p>For the record, I don&#8217;t play basketball and I never really did. But as a college student I would go play with my friend 1 on 1 for some exercise and we got pretty into it. One day I jammed my right pinky pretty bad. It took weeks to heal. Basically anytime of day now I can crack it. It&#8217;s always a little stiff/tight.</p><p>My theory for years of typing laziness, speed reduction, and lacking accuracy points back to this finger injury. I have been compensating virtually anytime I type because of this stiffness and how uncomfortable it is to stretch my pinky properly to reach the keys.</p><h2>The (over) compensation</h2><p>Instead of using my pinky for many of the keys in the top right of the keyboard what I actually do is a hybrid of pinky or ring finger. One of the biggest culprits is the delete button. I just go full force for it with my ring finger instead of my pinky (ironically as I&#8217;m typing this I&#8217;m consciously trying to force myself to use correct form and I&#8217;m failing miserably). I&#8217;ve noticed that this causes some inconsistencies and &#8220;cache-misses&#8221; when I try to hit the keys and recenter my self on home row. Because I&#8217;m moving my hand and rotating much more than I usually would, I now have to adjust back and I lose some speed and accuracy as a result. If I could keep my hands in the home row I think I would see an accuracy increase as well as a speed increase. This all was only made worse by a career change that involved a lot more typing.</p><h2>Changing careers to programming</h2><p>A number of years ago I changed my career to slinging code. Before this I didn&#8217;t type <code>+=-_()[{]}|\\</code> and delete nearly as much. I just typed normal words. A large part of my job was playing guitar and I don&#8217;t use my right pinky nearly as much when I play guitar. But now I type a lot of symbols and quasi-words combined with symbols. I&#8217;ve noticed that my typing accuracy is not as good as I would hope/expect and it annoys me as type and then press backspace a lot to fix it often with multiple re-attempts. I often delete entire words with opt+delete on Mac to speed things up instead of just fixing a few letters back. Apparently it&#8217;s faster in my injury-compensated typing flow to just delete the entire word and type it all again correctly&#8230; I&#8217;m not really sure if this is the case but it would be interesting to get some real analytics.</p><h2>Search for alternatives</h2><p>During this time I also realized that it&#8217;s weird having my pinky do all this heavy lifting of typing the programming symbols and as a result I&#8217;m also considering alternative keyboards that might better utilize other fingers that are stronger/faster or even different layouts in general that might help. Though I am nervous to attempt changing my keyboard layout. Let me know if you have any suggestions here.</p><h2>The training program</h2><p>This is definitely an over exaggerated heading name but I found this <a href="https://www.typingtom.com/custom/typing-test/2m">free typing website</a> that lets you add your own text and I randomly creating my own typing test that specifically targets this right pinky/upper row of the keyboard that I&#8217;m wasting a lot of time with. Here&#8217;s the random website I found https://www.typingtom.com/ and a link to the custom 2min timer section I use: <a href="https://www.typingtom.com/custom/typing-test/2m">https://www.typingtom.com/custom/typing-test/2m</a> (I&#8217;m not affiliated with them and this is not a recommendation). Here&#8217;s the text I feed it manually to start my morning practice:</p><pre><code><code>90-= 90-= 90-= ()-= ()-= ()-= (9)0 -_=+ 9=0- 9=0- 9=0- =9-0 =9-0 90-= 90-= 90-= ()-= ()-= ()-= (9)0
</code></code></pre><p>Basically I just paste this into it and start a 2 minute timer. I have yet to complete it in 2 minutes. I started at 9 wpm and just this morning have hit 24 wpm. This is after about a week of practicing for maybe 5 minutes per morning. I&#8217;d say that&#8217;s not too shabby. If you&#8217;re a software engineer (or not) I&#8217;m curious how fast you can type these as well on your first go and what keyboard you&#8217;re using. Comment if you&#8217;re interested!</p><h2>Looking ahead</h2><p>I think a followup I&#8217;d like to work on would be doing a proper typing test that highlights all of my top 5-10 trouble spots and systematically focusing on these. It would be nice to fix some of my other typing blunders of which I know there are many. For example when I&#8217;m typing a normal message in slack I still do a lot of this delete and retype back and forth.</p><p>While I&#8217;m pretty sure I have some other bad habits, from what I can tell this is the area with the largest to gain from some targeted re-training. If you have any recommendations or have had a similar experience please share!</p><p>-Jesse</p>]]></content:encoded></item><item><title><![CDATA[Code days are good days]]></title><description><![CDATA[I&#8217;m not sure if it&#8217;s because I&#8217;ve had a lot of non-coding days recently but I&#8217;ve been thinking about this idea that code days are good days (usually).]]></description><link>https://technicallychallenged.substack.com/p/code-days-are-good-days</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/code-days-are-good-days</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Thu, 08 May 2025 12:55:23 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/da19a193-8b61-431d-83e8-3222d19a5a59_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I&#8217;m not sure if it&#8217;s because I&#8217;ve had a lot of non-coding days recently but I&#8217;ve been thinking about this idea that <em><strong>code days are good days</strong></em> (usually). What do I mean by this?</p><p>As a software engineer, the days that I get to write code, test code, and ship code (can be same day or over multiple days) are good days. I feel energized, I enjoy my work and my &#8220;tank&#8221; is filled up.</p><p><em><strong>&#8220;Write code, test code, ship code&#8221;</strong></em></p><h2>Why not every day?</h2><p>So if code days are good days why not just have code days every day? Especially as a software engineer who gets paid to literally write code, why don&#8217;t I just make sure I&#8217;m writing code every day to keep myself energized?</p><p>When you&#8217;re just starting out as a junior engineer most of your day is likely coding. Outside of a few small meetings, juniors are usually figuring out how to write the code and learning the craft of software engineer best practices. They are also learning the build tools, potentially the programming language, as well as learning the coding standards of the team/company. More likely than not they are being introduced to product concerns, UI/UX considerations, and various other non-coding things that arise.</p><h3>Out of necessity and moving up</h3><p>But as you move up to more senior positions this isn&#8217;t the case. You&#8217;re expected to do everything faster, more reliably, and with higher-quality code. This is largely because you&#8217;ve seen a lot of patterns, you&#8217;re very fluent in the build tools, and you know your way around the code base and the general lay of the land.</p><p>As you get more experienced it&#8217;s not uncommon to be asked to design the systems themselves. You are needed more to do this than just write the code because there are usually junior/mid level engineers who can build your vision but likely they will not be as fast or as fault tolerant in designing the system due to limited experience. You also might be tasked with finding out if something is even feasible at all, if there are any major blockers or tradeoffs, and if you can get some very specific piece of information from an external API, etc.</p><h3>Role expectations</h3><p>Depending on your company the dev role can include project management, project tracking, and like the previous point it can also be part of your role to design the system and plan it out but not necessarily to write any of the code.</p><p>In a recent feature I helped design, lead, and launch I did get to write some of the code, but I&#8217;d say 70-80% of my efforts were geared towards making sure the engineers on my team were not blocked, had clear tasks with accurate acceptance criteria, and were making the necessary progress to hit the launch deadline. I spent a decent amount of time writing out testing plans, getting security sign off, as well as making sure the feature met certain operational standards like having adequate logging, metrics, and alarms.</p><p>Even though not every day can be a code day for me, the other parts of the job have interesting side quests and make it so there&#8217;s never a dull moment.</p><h2>Caveats</h2><p>Not every type of code day is enjoyable. Occasionally there&#8217;s a complicated refactor which involves dredging through a lot of code and for some reason I don&#8217;t enjoy those days nearly as much.</p><p>Then there&#8217;s the complicated/or sneaky bug I&#8217;m trying to fix. Even though I&#8217;m in the code it can be exhausting as I&#8217;m hit with error upon error. So maybe the coding days that I enjoy the most are largely new feature and ones that involve writing increasingly passing tests? Or bugs that I can fix within a &#8220;reasonable&#8221; about of time? </p><p>And I&#8217;d be remiss to not mention the AI coding requirement that most companies are expecting from their devs. Using AI to solve my problems and even write the majority of the code isn&#8217;t quite as enjoyable for me personally. Maybe not as bad as the previous two caveats but when I spend time researching, finding a potential solution, and then go and try it out, it feels a lot more rewarding than prompting an AI agent to iterate on it for me.</p><p>Yesterday was a code day and I&#8217;m hoping today is as well.</p><p>-Jesse</p>]]></content:encoded></item><item><title><![CDATA[Vibe coding my way through an insurance claim]]></title><description><![CDATA[Here are two realities of my life: 1) My wife and I are in the middle of an insurance claim for a sudden leak in our dishwasher that flooded our downstairs, and 2) I promised myself that I would really try to use AI to make something useful this year.]]></description><link>https://technicallychallenged.substack.com/p/vibe-coding-my-way-through-an-insurance</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/vibe-coding-my-way-through-an-insurance</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Sat, 19 Apr 2025 15:30:48 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/c6d165aa-55de-48e9-9d91-a4528b0e4ee9_512x512.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Here are two realities of my life: 1) My wife and I are in the middle of an insurance claim for a sudden leak in our dishwasher that flooded our downstairs, and 2) I promised myself that I would really try to use AI to make something useful this year. </p><p>Part of our insurance policy includes ALE (adjusted living expenses), which means that because our kitchen was gutted and all our things are being stored in boxes as we&#8217;re waiting for repairs, our policy covers a reasonable increase in living expenses due to eating out, ordering takeout, etc. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://technicallychallenged.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Technically Challenged Newsletter! 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>Sometime last month I realized that vibe coding could help ease my frustration with some of the manual administrative work. If you&#8217;re not familiar with what &#8220;vibe&#8221; coding is it&#8217;s basically asking AI to write code and you just accept whatever it changes until it starts working. The first thing I wanted to try to help solve was bulk uploading all of my receipts to an online form which includes uploading a photo of a receipt and inputting the date, store name, category of purchase, and the total. Fortunately this isn&#8217;t behind a login or anything like that so it made relatively simple. </p><p>The tool I decided to try for the job was <a href="https://codeium.com/windsurf">Windsurf</a> (very similar to Cursor which has been all the rage lately). Windsurf is actually the first AI product I have spent any money on&#8212;$15 a month. If you&#8217;ve never used it before it&#8217;s pretty crazy. After you open the app you start typing into the chat box and it starts creating files and folders, editing them, and running commands for you. It does all of this automagically until you have something you can see, test, and hopefully even use. One thing I did that made it easier for the tool to do its work was I labeled my receipts with a CSV inspired filename. Every receipt I scanned into my phone I saved with the format month-space-vendor-space-category-space-total for example &#8220;2025.01.01 TacoBell dinner 19.56.pdf&#8221;. Then I was able to tell Windsurf to pull all of the files from my iCloud folder, parse them in this specific format, navigate to the page my insurance company gave me, and do it&#8217;s magic. In less than an hour I had a working tool that I could run from the terminal and watch upload all my receipts for me!</p><p>I was a little nervous about the cost of using the User Prompt credits and Flow Action credits for the month (Windsurf-specific terminology), but I was pleasantly surprised to see this hour of vibe coding took only about $1 worth of my $15 monthly allotment. Not having to manually enter these receipts anymore for the foreseeable future is definitely worth a dollar. A follow up for this project would be loading this onto my Mac mini server and having it run on a weekly or bi-weekly cadence. Maybe I&#8217;ll do another vibe coding session for this!</p><p>Because this upload project went so well I was pretty excited to try another small AI project: making a dedicated iPhone app to help me log the receipts after a meal purchase. </p><p>My plan for this was pretty much the same. I would just open Windsurf and try to tell it everything it needed for context and then see how it did as it tried to automatically code things up. I knew I needed to access the camera, and I especially wanted it to use OCR to help me grab text from the image so I could automate capturing those four fields I mentioned above. Since my last project took about an hour I figured this would be similar (spoiler: it was even faster!). </p><p>I had a few hiccups on this project that involved some manual testing and required some light intervention. The biggest issue was working with Xcode. If you create files and folders outside of Xcode (like in Windsurf or in a terminal directly) they do not automatically show up in Xcode unless you add them manually to the project.pbxproj file. I looked into a terminal app that supposedly can help with this but I didn&#8217;t get too much further given the time constraints. It would be ideal if Windsurf added everything automatically to that file after it created it. </p><p>The next big issue was testing the app. I had my phone plugged into my computer so it would build and load directly onto it. When I first built the project it succeeded the build and loaded onto my phone but opening the camera feature froze it every single time. I copied and pasted the error message from Xcode into Windsurf and then it started working on a fix. Since the app was trying to open the camera it was crashing because it wasn&#8217;t coded in a way that asked the user for camera permissions, and instead it assumed the permissions were already approved and crashed as a result. After a few iterations and manual tests it started working. Once I passed this hurdle the app basically worked. It was only saving the text fields and not the receipt image which I also needed, so I asked it to prompt me to choose where to save it in iCloud first so I could store all the receipts ready for the bulk upload process. At this point I was about 40 min into vibe coding and maybe 50 cents worth of credits in&#8230; not too bad!  </p><p>There&#8217;s a few followup adjustments I hope to make soon. For example when scanning a receipt it doesn&#8217;t always get the store name correct, or the total. Sometimes it pulls from some random area of the receipt, or is even blank. If it can&#8217;t auto match it, I&#8217;d like it to let me tap any block of text on the receipt and have it pull that text into the field automatically for me. Maybe I could even train an ML model to categorize receipts it sees regularly more accurately&#8230;probably not this time around. Or even easier would be to send the image to an LLM API and have it parse out the relevant details for me.  </p><p>Let me know any of your vibe coding stories and whether they were successes or failures!</p><p>-Jesse</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://technicallychallenged.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Technically Challenged Newsletter! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[JavaScript: The Gateway Language]]></title><description><![CDATA[This is how JavaScript became my gateway language.]]></description><link>https://technicallychallenged.substack.com/p/javascript-the-gateway-language</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/javascript-the-gateway-language</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Sun, 24 Mar 2024 12:02:09 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!xIU8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0354dd07-bb0d-4a2e-9a29-0287403cb2c4.heic" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>This is how JavaScript became my gateway language. If you&#8217;re unfamiliar with the term &#8220;gateway&#8221; it&#8217;s often referred to as the &#8220;gateway drug&#8221; something small you do that ends up hooking you on more serious drugs. Usually this is negative&#8230;</p><p>But in this context I&#8217;m referring to JavaScript as the gateway drug of programming languages (in a positive way). Or at least it was for me.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xIU8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0354dd07-bb0d-4a2e-9a29-0287403cb2c4.heic" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xIU8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0354dd07-bb0d-4a2e-9a29-0287403cb2c4.heic 424w, https://substackcdn.com/image/fetch/$s_!xIU8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0354dd07-bb0d-4a2e-9a29-0287403cb2c4.heic 848w, https://substackcdn.com/image/fetch/$s_!xIU8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0354dd07-bb0d-4a2e-9a29-0287403cb2c4.heic 1272w, https://substackcdn.com/image/fetch/$s_!xIU8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0354dd07-bb0d-4a2e-9a29-0287403cb2c4.heic 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xIU8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0354dd07-bb0d-4a2e-9a29-0287403cb2c4.heic" width="373" height="286.9230769230769" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0354dd07-bb0d-4a2e-9a29-0287403cb2c4.heic&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1120,&quot;width&quot;:1456,&quot;resizeWidth&quot;:373,&quot;bytes&quot;:435630,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/heic&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_!xIU8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0354dd07-bb0d-4a2e-9a29-0287403cb2c4.heic 424w, https://substackcdn.com/image/fetch/$s_!xIU8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0354dd07-bb0d-4a2e-9a29-0287403cb2c4.heic 848w, https://substackcdn.com/image/fetch/$s_!xIU8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0354dd07-bb0d-4a2e-9a29-0287403cb2c4.heic 1272w, https://substackcdn.com/image/fetch/$s_!xIU8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0354dd07-bb0d-4a2e-9a29-0287403cb2c4.heic 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><h2>A little history</h2><p>When I was younger I really wanted to learn programming and make things, especially games. But the languages that I researched and heard talked about over and over again were C and C++. <em><strong>This is how you make real apps and this is how you make games in particular</strong></em>. Not only was that advice completely wrong, it prevented me from being able to learn a simpler, more accessible language that could help me get my feet wet and build up my knowledge earlier in life.</p><p>Instead what happened is a got a big book on C++ (actually a few over the years) and spent hours and hours working through the book only to get discouraged midway through with little but a text-based/terminal app that didn&#8217;t really do anything cool and that certainly didn&#8217;t look like a game or a more useful application I could use or be excited about (now I find terminal applications fascinating).</p><h2><strong>Enter Node.js (aka JavaScript everywhere)</strong></h2><p>Fast-forward to JavaScript. Years later after I had basically given up trying to learn programming JavaScript had become somewhat of a superstar. This was just after Ruby&#8217;s glory was puttering out (though it&#8217;s still widely in use). JavaScript had a huge resurgence with the release of Node.js and frontend frameworks like Angular and React, (<a href="https://www.youtube.com/watch?v=LB8KwiiUGy0">interesting documentary</a>just released on Node.js on YouTube). Now you could learn JavaScript and make a backend AND a frontend, talk to a database, and make REAL apps (of course I didn&#8217;t know any of this at the time). And you could do all of this without worrying about pointers or memory allocation (even though you still need to worry about this eventually).</p><h2>The bigger picture</h2><p>Once I set out to learn JavaScript and Node and write servers and frontends and learned about authentication and API keys and calling databases I finally understood the lifecycle of how things worked at a high level. Building out this foundational picture was essential. I needed to know the purpose behind what I was building to see how it contributed to the whole.</p><p>One of the biggest things that helped me break through my initial barriers was the built in nature of JavaScript and its ability to control UI (user interface) elements on the web browser. I could visualize and see my code working immediately after saving my changes (thank you <a href="https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer">LiveServer</a> and <a href="https://vscode.dev/">VSCode</a>). I now had the puzzle pieces starting to form, or at least the outer edge to give me some frame of reference.</p><p>Once I opened up the can-of-computer-programming-worms with JavaScript and finally writing my own programs things changed. My mental model for what computers actually do and how applications actually do things changed forever. I now understood at a surface level what was going on. And it wasn&#8217;t just pointing and clicking a few UI elements together and copying commands from a tutorial or book (though that can be a good start). I realized that building things took time, thought, design, and hard work.</p><h2>One thing at a time</h2><p>Apparently apps are not easy to build. You have to design the user interface, the database model, the business logic. You have to call dependencies, and wait for things that might not be ready or that take longer than expected. You have to deal with how long things take and how that looks and feels to the user. You have to take into consideration the data you&#8217;re collecting, storing, and transmitting and encryption and keeping things safe. There&#8217;s so much more to making programs that I originally thought. But fortunately you can break these steps down into smaller blocks of work, and test each piece independently to make sure things work as you go.</p><h2>Final thoughts</h2><p>JavaScript was my gateway into computer programming. It was much easier to get started because of the simpler non-strict typing (which results in less syntax to remember and write), and the fact that I could write it on the backend and the frontend. But probably the biggest game changer for me was that I could hit <strong>save</strong> and I could see my changes instantly. I can&#8217;t stress the importance of a fast feedback loop enough! Also because I could see my code, see a button, see text popup, see a list populate with data from API, and it wasn&#8217;t just stuck in text-based land I started to see potential in how to actually build an app that seemed useful to me.</p><p>Fast-forward to today. I find myself writing some Java, Kotlin, and TypeScript for work and JavaScript and Swift for side projects. I&#8217;m by no means an expert but after 5+ years writing code I can finally say that I understand at least a little what is going on under the hood. And I can&#8217;t wait to learn more about how things work on an even deeper level.</p><p>-Jesse</p>]]></content:encoded></item><item><title><![CDATA[Frustrating Apple Watch “features”]]></title><description><![CDATA[I&#8217;ve been an Apple Watch user since the beginning.]]></description><link>https://technicallychallenged.substack.com/p/frustrating-apple-watch-features</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/frustrating-apple-watch-features</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Mon, 26 Feb 2024 01:00:42 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/150954a0-d267-4566-a4f8-5f8064caac88_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I&#8217;ve been an Apple Watch user since the beginning. Years ago I bartered for the original Series 1 from my landlord. A number of years later I bought a Series 3 off eBay. Most recently I was gifted an Ultra 2.</p><p>I am by no means an Apple Watch hater. I think the Apple Watch is very convenient and the most useful features for me include:</p><ol><li><p>Siri access</p></li><li><p>Timers/alarms</p></li><li><p>Weather app/widget</p></li><li><p>Fitness tracking</p></li></ol><p><em><strong>But</strong></em> there&#8217;s a couple features that have really been frustrating me. One is old and one is brand new.</p><p>Let&#8217;s start with the older feature first.</p><h2>Raise to Speak (raise to be annoyed)</h2><p>When I first heard of &#8220;Raise to Speak&#8221; I thought: <em>That&#8217;s awesome. Makes perfect sense. I&#8217;ll use this all the time. I won&#8217;t have to say &#8220;hey siri&#8221; all the time and I won&#8217;t have to hold the Digital Crown button down to manually trigger Siri. </em>Reality has been a much different experience.</p><p>On Apple&#8217;s website the feature is explained like this: &#8220;Raise your wrist and speak into your Apple Watch.&#8221; Ha! If only it was <em>that</em> simple.</p><p>In preparing for this blog I googled this feature and found another blog claiming to have solved the inconsistency issue but even after trying their suggestion the consistency is not there. They suggested bringing the watch exaggeratedly up to your mouth real close before speaking. I&#8217;ve tried everything. I tried speeding up how quickly I raise my arm. I&#8217;ve tried tilting the watch even more aggressively towards my mouth. I&#8217;ve brought it really close to my mouth. I&#8217;ve tried speaking as I raise it. I&#8217;ve tried waiting to speak after I raise it.</p><p>This feature is supposed to be easy to use yet I&#8217;m a software engineer and I can&#8217;t even figure it out. &#129318;&#127995;&#8205;&#9794;&#65039;I literally read the instruction manual when I get something new.</p><p>If you know the magic incantation to get the feature to work please let me know in the comments.</p><p>How does the newest Apple feature perform?</p><h3>The New Double tap feature</h3><p>What about the brand spanking new hardware-limited feature Apple is calling double tap? Well my new Apple Watch supports it and I was definitely eager to test it out. Especially in those obvious nose-tapping, one hand is tied up scenarios&#8230;boy was I in for a let down.</p><p>Now I recognize the double tap gesture is brand new so I give Apple a little more slack (but Raise to Speak has been supported for years and I give it no excuse).</p><p>The new double tap gesture is frustrated by at least 2 key things: 1) by the cryptic times when it does not work and 2) by the felt delay of the feature when it does work.</p><h3>1. Scenarios it doesn&#8217;t work</h3><p>It&#8217;s pretty difficult to know if the feature is supported on a specific screen/app or if it&#8217;s not. I understand that it doesn&#8217;t really make sense to have one default action for every page, some pages/apps can&#8217;t be boiled down to one default action. But the flip side is confusing as well. How do I know where or when the feature will work? For example, if I&#8217;m laying down on my side and try to double tap to dismiss a timer or pause music it doesn&#8217;t work at all. But if I sit up or stand it does work. But nowhere is this horizontal vs vertical orientation of the arm described on the website from what I can see. When you use the feature a little small hand icon appears, but it almost seems like they need to add that icon to the places where you can use it, and not only show it after you&#8217;ve tried and randomly succeeded (though I admit it would look really funny having that icon everywhere). </p><h3>2. Significant Delay</h3><p>It&#8217;s just too slow to feel good. Like trying to catch a ball through delayed VR goggles.</p><p>Playing some music on your phone and then pausing it is an easy way to see this. It takes about 2 seconds to perform that action&#8230; that&#8217;s pretty long. I would expect that the double tap would trigger the action almost immediately after detecting it. I wonder if the haptic feedback and the icon animation can just be replaced by the action or made to happen at the same time.</p><p>Here&#8217;s my theory for what went wrong: Apple had a really great feature idea and a proof of concept that everyone loved. Then they started testing it on other watches and realized it wasn&#8217;t working as well due to CPU limitations. So they focused on the most powerful watches (9 and Ultra 2). And then after testing it more they realized it still has some significant lag due to the computation required. So now we have a 3-step process that takes over 2 seconds: Double tap &#8594; haptic feedback and icon animation &#8594; action taken.</p><h3>Conclusion: Reliability</h3><p>Both of these features do not work reliably for me at all.</p><p>And when I say &#8220;reliably&#8221; I mean maybe 1 in 4 times at best which is really bad. I&#8217;m not sure the gold standard in user experience testing but I would imagine a new feature&#8217;s success to failure ratio needs to be extremely low to gain user adoption. Compare my experience with the AirPods Pro volume control feature which I was originally skeptical about&#8230; it works 95%+ of the time which honestly surprised me. I use it all the time and it&#8217;s very reliable.</p><p>For the price of these devices and for the quality I expect from Apple this should really be addressed.</p><h3>Wearables tangent</h3><p>Wearables are clearly a growing industry with lots of experimentation. I suppose I see the draw of smart glasses that extend Siri or put AI in quick grasp because I use my watch for something similar, but I don&#8217;t see myself getting a pair smart glasses anytime soon. I&#8217;m really not a glasses person at all (and I would hate to lose them at the current prices).</p><p>But if I could just ask my glasses with natural speech to show me a recipe for dinner or a YouTube video on how to fix the sink without obstructing my view or requiring my hands. Or if I could ask my glasses to overlay the translation of something I&#8217;m looking at in realtime I would definitely be tempted to try it. Or even better than smart glasses, let&#8217;s just go straight to smart contacts!</p><p>-Jesse</p>]]></content:encoded></item><item><title><![CDATA[Debugging my daughter’s broken e-reader]]></title><description><![CDATA[A few weeks ago my daughter brought me her Kobo e-reader and said she thought it might be beyond repair.]]></description><link>https://technicallychallenged.substack.com/p/debugging-my-daughters-broken-e-reader</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/debugging-my-daughters-broken-e-reader</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Sat, 07 Oct 2023 14:30:24 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!jPhu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c11d973-1f3d-4141-b367-a97218c29013_712x686.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A few weeks ago my daughter brought me her Kobo e-reader and said she thought it might be beyond repair. Up to this point the Kobo had worked pretty well. Though she&#8217;s had some issues with it rebooting this was nothing a soft reset wouldn&#8217;t remedy.</p><p>This device being unusable was a pretty big deal because my daughter is an avid reader. I realized quickly that I would be broke if I tried to satiate her desire for books by purchasing physical copies every time she finished one. An ebook reader became the obvious choice especially with the local library providing digital options!</p><h2>Initial troubleshooting</h2><p>When I started testing the device I noticed it would reboot every time I pressed the sleep button and it would also reboot after using it for about a minute or so. And if I tried holding the power button for a while it would also reboot and start the cycle over again.</p><p>Approaching this problem my thought process was as follows:</p><ul><li><p>Charge it up full - to see if that solves it and go from here</p></li><li><p>Soft reset - she had tried and I had tried a few times to no avail</p></li><li><p>Full reset - annoying to completely wipe the device and re-login to everything but it could help</p></li><li><p>Check the charging port - micro usb aren&#8217;t the most reliable</p></li><li><p>Check the battery - something I could potentially fix</p></li><li><p>Blame it on the motherboard - this would be beyond my abilities</p></li></ul><p>I had issues with the first step of charging it fully and could tell the port was already an issue, but decided to go through the entire process to make sure I&#8217;d covered my bases.</p><p>The software-only troubleshooting was unsuccessful (including a full reset) so I moved on to hardware debugging.</p><p></p><h2>Fix Attempt #1: Charging port</h2><p>Before I could get to the charging port I needed to remove the back cover. I used some leftover phone screen replacement tools I had lying around. Fortunately this was pretty simple and I didn&#8217;t break any ribbon cables in the process. </p><p>Next my goal was to remove the micro usb port and then see which type it was to get a replacement on Amazon. This was a bit harder than I expected especially since I don&#8217;t have the right tools (mainly a heat gun).</p><p>I watched a bunch of YouTube videos to get an idea of the process and then decided to give it a try with my soldering iron which was a mistake on my part. I also didn&#8217;t have any flux which I noticed a lot of people used for the non-heat gun approach so I basically tried to forge my own path.</p><p>After 5-10 minutes of struggle and impatience I wiggled the port up and down with heat and was successful in <strong>snapping off</strong> the piece of the motherboard that the micro usb port attaches to. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jPhu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c11d973-1f3d-4141-b367-a97218c29013_712x686.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jPhu!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c11d973-1f3d-4141-b367-a97218c29013_712x686.jpeg 424w, https://substackcdn.com/image/fetch/$s_!jPhu!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c11d973-1f3d-4141-b367-a97218c29013_712x686.jpeg 848w, https://substackcdn.com/image/fetch/$s_!jPhu!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c11d973-1f3d-4141-b367-a97218c29013_712x686.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!jPhu!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c11d973-1f3d-4141-b367-a97218c29013_712x686.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jPhu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c11d973-1f3d-4141-b367-a97218c29013_712x686.jpeg" width="274" height="263.9943820224719" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2c11d973-1f3d-4141-b367-a97218c29013_712x686.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:686,&quot;width&quot;:712,&quot;resizeWidth&quot;:274,&quot;bytes&quot;:179634,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!jPhu!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c11d973-1f3d-4141-b367-a97218c29013_712x686.jpeg 424w, https://substackcdn.com/image/fetch/$s_!jPhu!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c11d973-1f3d-4141-b367-a97218c29013_712x686.jpeg 848w, https://substackcdn.com/image/fetch/$s_!jPhu!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c11d973-1f3d-4141-b367-a97218c29013_712x686.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!jPhu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c11d973-1f3d-4141-b367-a97218c29013_712x686.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>Fix Attempt #2: Charging port surgery</h2><p>Since I completely snapped off the micro usb port AND the part of the motherboard a replacement port would connect to &#129318;&#127995;&#8205;&#9794;&#65039;&#8230;&nbsp;I somehow decided not to give up and brainstorm another potential solution.</p><p><em>I&#8217;ll bypass that part of the motherboard entirely and look for a 3rd party charger that will connect straight to the battery.</em></p><p>When I was looking around I found a USB-C to LiPo battery charger with a small board and decided that was the perfect solution since even the iPhone is switching to USB-C (RIP lightning cable you were well loved). I just needed to confirm the specs of the charger matched the polarity of the battery. Fortunately for me they both were red = positive, and black = negative so I was good to go.</p><p>The one I ordered came in a two pack and when it arrived I was ready to start testing the original battery with a reliable charging port.</p><p>After a little testing I realized the problem was still happening. Putting it to sleep or using it for a minute would still cause it to freeze and the e-ink would start to slightly scramble the image.</p><p>My new theory was that the battery was totally shot and has run out of cycles. And because it can&#8217;t sustain the energy output it causes the e-ink to spasm as it tries to refresh to a new page state.</p><p>As I was coming to this hypothesis I remembered my daughter mentioning recently that the battery life seemed to be getting worse and she needed to charge it much more frequently than usual. This all but confirmed my suspicions. Now I needed to find a replacement battery.</p><h2>Concerns</h2><p>Days have gone by at this point and my wife has started to question the value of my hobby project and disappearing into dark rooms late at night to try to fix it. But I reassured her that me spending a little time here and there is better than a $150 replacement e-reader of similar quality if I&#8217;m successful (I bought the original one used at a much cheaper price, but for the sake of argument&#8230; &#128517;).</p><p>I was also not super confident at this point since I had completely busted the original charging port, but I wanted to hold out hope. And if nothing else than to encourage a fellow dad out there to reduce unnecessary waste if possible it would be worth it. But ideally I could increase the usable life in years&#129310;&#127995;for a fraction of the cost of a replacement.</p><h2>Fix Attempt #3: New battery</h2><p>Finding a battery was pretty straightforward. This model e-reader was pretty old so I had trouble finding the same 1200mAh battery but I did find the newer cousin model which had a 1500mAh. But before I pulled the trigger the one I had in my cart was unavailable so I decided to get a larger generic battery (2300mAh) and hopefully boost the usable time my daughter could read it between charges. (The fact that a larger battery is thicker wasn&#8217;t something I wanted to acknowledge yet&#8230;how in the world would I get the back cover on?)</p><p>The battery took way longer to ship than I was planning so I waited all week until it arrived on a Friday. Finally when it arrived I turned on my soldering iron and jerry-rigged it to both the e-reader&#8217;s battery connector and my new USB-C charging board. </p><p>And of course the battery was completely dead so I had to leave it charging for 10-15 minutes to test it properly. I tried to test it a few times impatiently but it just booted up and powered off each time. This was due to not enough charge and it cleanly shutdown, which was different than the issue I was trying to fix where the e-ink would spasm and freeze mid refresh.</p><p>Finally the moment I was waiting for: does it get power, hold a charge, and power the e-reader? &#9989; Yes, but more importantly does it prevent the weird sleep button or use-more-than-a-minute freeze/e-ink screen scramble problem? Maybe.</p><h3>Tests</h3><p>I tested the sleep button and it went to sleep and woke up as expected. &#9989;</p><p>I powered it off and back on and used it for more than a minute. &#9989;</p><p>I showed my daughter and had her test it and download a book. It froze once but after watching her use it I think it froze in a normal way which occurs from how fast she navigates the device being a digital native herself. &#9989;</p><p>The last &#8220;test&#8221; was letting it sit over night and seeing if it powered back on from sleep like it should do normally (this failed in my initial debugging). And it worked! &#9989;</p><p>I wasn&#8217;t entirely in the clear yet but I was feeling super close especially after 2 weeks of debugging. </p><h2>Mini-crisis</h2><p>After a few days my daughter was beta testing it and left it in reach of my 3 year old unattended. At this point it was loosely taped together and pretty fragile. The charging port specifically was not secured, though I did tape the battery down pretty good. </p><p>She brought it to me in despair. Half of the connectors were removed, the back case half held on by tape flapping half open. Fortunately none of the delicate ribbon connectors were torn or damaged!</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8iiY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F433f1f74-ad1c-4a7e-90e9-456f4b80d94b_4032x3024.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8iiY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F433f1f74-ad1c-4a7e-90e9-456f4b80d94b_4032x3024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!8iiY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F433f1f74-ad1c-4a7e-90e9-456f4b80d94b_4032x3024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!8iiY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F433f1f74-ad1c-4a7e-90e9-456f4b80d94b_4032x3024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!8iiY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F433f1f74-ad1c-4a7e-90e9-456f4b80d94b_4032x3024.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8iiY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F433f1f74-ad1c-4a7e-90e9-456f4b80d94b_4032x3024.jpeg" width="331" height="441.25755494505495" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/433f1f74-ad1c-4a7e-90e9-456f4b80d94b_4032x3024.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1941,&quot;width&quot;:1456,&quot;resizeWidth&quot;:331,&quot;bytes&quot;:4621135,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!8iiY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F433f1f74-ad1c-4a7e-90e9-456f4b80d94b_4032x3024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!8iiY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F433f1f74-ad1c-4a7e-90e9-456f4b80d94b_4032x3024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!8iiY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F433f1f74-ad1c-4a7e-90e9-456f4b80d94b_4032x3024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!8iiY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F433f1f74-ad1c-4a7e-90e9-456f4b80d94b_4032x3024.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>Final(ish) fix attempt #4</h2><p>I used this opportunity to buy a more reliable and super cool soldering iron called the <a href="https://www.pine64.org/pinecil/">Pinecil</a> (not a sponsor). It&#8217;s open firmware, smart, compact, and it heats up incredibly fast. It arrived that night and I was able to beef up a few of the solder joints with it.</p><p></p><p>Instead of trying to find a slimmer battery to fit in the case I discussed with my daughter and we decided to make it seal up as much as possible with the help of some gaffers tape.</p><p>I used my dremel to give a little notch for the USB-C motherboard to fit in upside down. And I added a little two-part epoxy to hopefully stabilize the USB-C connector which at this point was my biggest concern.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!RIFt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc522372c-5200-4151-b954-0786779a5a1a.heic" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!RIFt!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc522372c-5200-4151-b954-0786779a5a1a.heic 424w, https://substackcdn.com/image/fetch/$s_!RIFt!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc522372c-5200-4151-b954-0786779a5a1a.heic 848w, https://substackcdn.com/image/fetch/$s_!RIFt!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc522372c-5200-4151-b954-0786779a5a1a.heic 1272w, https://substackcdn.com/image/fetch/$s_!RIFt!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc522372c-5200-4151-b954-0786779a5a1a.heic 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!RIFt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc522372c-5200-4151-b954-0786779a5a1a.heic" width="427" height="320.25" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c522372c-5200-4151-b954-0786779a5a1a.heic&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1092,&quot;width&quot;:1456,&quot;resizeWidth&quot;:427,&quot;bytes&quot;:1328107,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/heic&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!RIFt!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc522372c-5200-4151-b954-0786779a5a1a.heic 424w, https://substackcdn.com/image/fetch/$s_!RIFt!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc522372c-5200-4151-b954-0786779a5a1a.heic 848w, https://substackcdn.com/image/fetch/$s_!RIFt!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc522372c-5200-4151-b954-0786779a5a1a.heic 1272w, https://substackcdn.com/image/fetch/$s_!RIFt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc522372c-5200-4151-b954-0786779a5a1a.heic 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>My daughter has been using it a few days so far and it seems almost better than the original.</p><h2>Tradeoffs &amp; Future Improvements</h2><p>The biggest downside to how I &#8220;fixed&#8221; it" is that when you&#8217;re charging with USB-C it bypasses the motherboard so you don&#8217;t get an accurate battery estimate while the device is on. I did notice a soft reset would update the battery calibration so I think we&#8217;ll have to settle for that unless a reader can explain to me how I can patch into the board with an extra wire to let it know it&#8217;s charging or not. &#128527;</p><p>The other improvement I&#8217;d like to make is a 3D printed back piece that I could glue on properly. I haven&#8217;t done any 3D printing and don&#8217;t have one so not sure when this would happen.</p><p>I know this one was a little different and a little longer than usual but I hope you enjoyed it. I&#8217;ll likely post an update if anything interesting happens to it or if I figure out a way to improve my repair.</p><p>Thanks for reading and to any fix-and-repair dads out there: keep up the good work!</p><p>-Jesse</p><p>&#8220;Final&#8221; form -</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!f_K6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53d5fa2a-78d0-4ee8-b4a6-90e7fd94b881_960x1280.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!f_K6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53d5fa2a-78d0-4ee8-b4a6-90e7fd94b881_960x1280.jpeg 424w, https://substackcdn.com/image/fetch/$s_!f_K6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53d5fa2a-78d0-4ee8-b4a6-90e7fd94b881_960x1280.jpeg 848w, https://substackcdn.com/image/fetch/$s_!f_K6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53d5fa2a-78d0-4ee8-b4a6-90e7fd94b881_960x1280.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!f_K6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53d5fa2a-78d0-4ee8-b4a6-90e7fd94b881_960x1280.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!f_K6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53d5fa2a-78d0-4ee8-b4a6-90e7fd94b881_960x1280.jpeg" width="348" height="464" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/53d5fa2a-78d0-4ee8-b4a6-90e7fd94b881_960x1280.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1280,&quot;width&quot;:960,&quot;resizeWidth&quot;:348,&quot;bytes&quot;:403879,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!f_K6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53d5fa2a-78d0-4ee8-b4a6-90e7fd94b881_960x1280.jpeg 424w, https://substackcdn.com/image/fetch/$s_!f_K6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53d5fa2a-78d0-4ee8-b4a6-90e7fd94b881_960x1280.jpeg 848w, https://substackcdn.com/image/fetch/$s_!f_K6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53d5fa2a-78d0-4ee8-b4a6-90e7fd94b881_960x1280.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!f_K6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53d5fa2a-78d0-4ee8-b4a6-90e7fd94b881_960x1280.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_!CBC4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c69415-f738-4891-a87a-44e92ebb09e2_4032x3024.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!CBC4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c69415-f738-4891-a87a-44e92ebb09e2_4032x3024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!CBC4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c69415-f738-4891-a87a-44e92ebb09e2_4032x3024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!CBC4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c69415-f738-4891-a87a-44e92ebb09e2_4032x3024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!CBC4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c69415-f738-4891-a87a-44e92ebb09e2_4032x3024.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!CBC4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c69415-f738-4891-a87a-44e92ebb09e2_4032x3024.jpeg" width="358" height="477.2513736263736" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/57c69415-f738-4891-a87a-44e92ebb09e2_4032x3024.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1941,&quot;width&quot;:1456,&quot;resizeWidth&quot;:358,&quot;bytes&quot;:3616184,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!CBC4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c69415-f738-4891-a87a-44e92ebb09e2_4032x3024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!CBC4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c69415-f738-4891-a87a-44e92ebb09e2_4032x3024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!CBC4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c69415-f738-4891-a87a-44e92ebb09e2_4032x3024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!CBC4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c69415-f738-4891-a87a-44e92ebb09e2_4032x3024.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="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://technicallychallenged.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Technically Challenged Newsletter! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Buying an iPad Pro for coding was a mistake]]></title><description><![CDATA[I bought the iPad Pro M1 chip in hopes of a lightweight, fast, multi-purpose device that I could also code on.]]></description><link>https://technicallychallenged.substack.com/p/buying-an-ipad-pro-for-coding-was</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/buying-an-ipad-pro-for-coding-was</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Thu, 29 Jun 2023 15:46:01 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!VrF3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feebf7a86-db1f-4b01-8c85-fb9ce20cfa36_1920x1080.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I bought the iPad Pro M1 chip in hopes of a lightweight, fast, multi-purpose device that I could also code on. It delivered in <em>almost</em> all areas.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!VrF3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feebf7a86-db1f-4b01-8c85-fb9ce20cfa36_1920x1080.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VrF3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feebf7a86-db1f-4b01-8c85-fb9ce20cfa36_1920x1080.jpeg 424w, https://substackcdn.com/image/fetch/$s_!VrF3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feebf7a86-db1f-4b01-8c85-fb9ce20cfa36_1920x1080.jpeg 848w, https://substackcdn.com/image/fetch/$s_!VrF3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feebf7a86-db1f-4b01-8c85-fb9ce20cfa36_1920x1080.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!VrF3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feebf7a86-db1f-4b01-8c85-fb9ce20cfa36_1920x1080.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VrF3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feebf7a86-db1f-4b01-8c85-fb9ce20cfa36_1920x1080.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/eebf7a86-db1f-4b01-8c85-fb9ce20cfa36_1920x1080.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:596009,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!VrF3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feebf7a86-db1f-4b01-8c85-fb9ce20cfa36_1920x1080.jpeg 424w, https://substackcdn.com/image/fetch/$s_!VrF3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feebf7a86-db1f-4b01-8c85-fb9ce20cfa36_1920x1080.jpeg 848w, https://substackcdn.com/image/fetch/$s_!VrF3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feebf7a86-db1f-4b01-8c85-fb9ce20cfa36_1920x1080.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!VrF3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feebf7a86-db1f-4b01-8c85-fb9ce20cfa36_1920x1080.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h2>Why an iPad in the first place?</h2><p>The #1 reason I started to consider buying an iPad a few years ago was for one thing, and one thing only: to read coding books. I have a kindle and I love it, but for coding books it is terrible. The large color screen especially comes in handy with code snippets as well as for color syntax highlighting. I definitely don't like reading programming books on my computer, and I'm trying to minimize physical book purchasing since my book shelves at home are already maxed out (&#129760; my wife appreciates my self-control). So the iPad seemed like a good middle ground. </p><p>The #2 reason I considered the iPad was because Apple had announced at WWDC 2021 that their Swift Playgrounds app would be updated to support SwiftUI and be able to release complete iOS apps on Apple's AppStore. This seemed promising and I wanted to learn Swift and SwiftUI better. I also didn&#8217;t have a personal laptop to do this on so I ended up pulling the trigger.</p><h3>What does the iPad do well?</h3><p>Tons of stuff. You can use it for any form of writing, spreadsheets, music production, video editing. It's obviously great for media consumption and entertainment on the go, or if you're just snuggled in bed with your significant other (&#128521;) and want to watch a quick show together. People even make movies with it all by itself.</p><p>It also excels when it comes to things that use the pencil: note taking, drawing, photo editing, and most recently I've been using it with Final Cut Pro to edit my last few YouTube videos (I've been impressed with it to say the least). The precision of the pencil and the jog wheel are &#128076;&#127995;. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://technicallychallenged.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Technically Challenged Newsletter! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h3>Accessories</h3><p>Because I planned to code on it I ended up getting the <a href="https://www.apple.com/shop/product/MXQT2LL/A/magic-keyboard-for-ipad-pro-11-inch-4th-generation-and-ipad-air-5th-generation-us-english-black">Magic Keyboard</a>. And I have to say it is really nice. Expensive, but nice. It acts as a really nice case to protect your iPad. And as a keyboard it works really well. For the most part I feel like I'm able to use 80% or so of the Mac keyboard shortcuts I use daily (though I wish I could do more complex key remapping with something like <a href="https://karabiner-elements.pqrs.org">Karabiner-Elements</a>. </p><p>I wasn&#8217;t sure how I&#8217;d like the new mouse dot feature which was added to the iPad. But after some use I found it also works really well. While it isn&#8217;t completely like a MacOS experience it feels totally fine in the context of an iPad. But this goes to show that the iPad still fees like a separate device category. All of these small differences add up. </p><p>Also the Apple Pencil v2 that attaches magnetically and charges automatically was an obvious choice. I've been very pleased with the reliability and the precision of the pencil. It's great for taking handwritten notes with or sketching out a problem I'm trying to solve at work. Or even journaling when I'm feeling introspective. The shear fact that you don&#8217;t have to awkwardly plug the pencil into the bottom of your iPad to to charge the pencil it is worth the extra $30 bucks in my opinion!  </p><h3>Performance and Battery life</h3><p>Performance is snappy and battery life is excellent. The power and energy efficiency of the new M1 series of chips is top notch. Apple really accomplished something special with the chip transition. I can't wait to see how this improves workflows and even brings AAA games to the Mac in the near future.</p><p>For battery life, I can reliable throw my iPad in my backpack and not use it for days, pull it out, and be pleasantly surprised that I have plenty of battery life. The M1 chipset really did wonders on my battery anxiety issues especially when compared with my old work computer&#8212; an Intel 16in MacBook Pro that lasted 1.5 hrs when not plugged in. </p><h3>Lightweight</h3><p>By itself the iPad is incredibly sleek and light weight, but once you add the accessories, especially the Magic Keyboard, the weight (and thickness) increases a lot. The most noticeable of the two is the weight which increases by more than double after adding the Magic Keyboard. But this is replacing a keyboard and a mouse so that is not to be taken lightly, and you save a considerable amount of space compared to bringing a separate keyboard and mouse wherever you go. A tradeoff for sure but worth it in my opinion. </p><p>But how does the iPad fare as a coding device? Does it live up to my expectations?</p><h3>Can you code on an iPad?</h3><p>Short answer: Yes. Long answer: it really depends on why type of coding you want to do, and what type of development environment you'll be using. If you're just learning Swift in Swift Playgrounds then sure, you can use it for coding, but you could also do the same thing with the base model iPad for a fraction of the cost.</p><p>If you're a sysadmin working mainly in SSH terminals, or if you have access to a browser-based cloud development environment, then I could see the iPad fitting into a workflow, especially if you want to pair it with an external monitor of USB-C to HDMI. </p><p>But if you need to run Xcode, VSCode, WebStorm, or Intellij than as far as I can tell the iPad is a no go.</p><p>For my needs the iPad did not deliver, but that is OK. I still love you iPad. </p><h2>Why not buy an iPad in 2023?</h2><p>Aside from the mixed bag regarding coding...</p><ol><li><p>It's expensive. After buying a powerful pro model, a decent keyboard, and a pencil the price ended up being MORE than a laptop I could have used for even more coding activities.</p></li><li><p>The keyboard shortcuts and operating system aren't quite as power-user friendly as I would prefer. Some of my shortcuts don't work in certain apps because it depends on how the developer coded their app and what they support. And other types of customizations are not available that I would like. </p></li><li><p>Small screen - to save on cost a bit I opted for the 11in instead of the 12.6in. Even if I went for the 12.6in it would be too small for me. I feel most comfortable with a 15 or 16in laptop so an 11in is just miniscule. But to it&#8217;s credit you can add an external monitor. </p></li></ol><p>Would I recommend buying an iPad in 2023? If you have a good use for it, I'd say sure. But it doesn't really do much more than an inexpensive Macbook Air and so I'd probably consider that first. If you need it for the artistic tools with the pencil, or want a multi-functional device that's lightweight, portable, and largely can do real work on, then I'd recommend it if you're considering one. </p><p>-Jesse</p><p></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://technicallychallenged.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share&quot;,&quot;text&quot;:&quot;Share The Technically Challenged Newsletter&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://technicallychallenged.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share"><span>Share The Technically Challenged Newsletter</span></a></p>]]></content:encoded></item><item><title><![CDATA[Why someone might not have Netflix]]></title><description><![CDATA[A friend of mine has said to me on more than one occasion, &#8220;Oh yeah you don&#8217;t have Netflix, well there&#8217;s this show&#8230;&#8221;]]></description><link>https://technicallychallenged.substack.com/p/why-someone-might-not-have-netflix</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/why-someone-might-not-have-netflix</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Wed, 10 May 2023 18:00:30 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!u4KO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd3874d5-95c2-4464-a1da-6b7441baa132_1954x1300.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A friend of mine has said to me on more than one occasion, &#8220;Oh yeah you don&#8217;t have Netflix, well there&#8217;s this show&#8230;&#8221;</p><p>And I was thinking, why <em>don&#8217;t</em> I have Netflix? I mean I&#8217;m sure there&#8217;s a lot of interesting TV shows, documentaries, and movies my family would enjoy. We used to have it. We enjoyed it.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!u4KO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd3874d5-95c2-4464-a1da-6b7441baa132_1954x1300.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!u4KO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd3874d5-95c2-4464-a1da-6b7441baa132_1954x1300.jpeg 424w, https://substackcdn.com/image/fetch/$s_!u4KO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd3874d5-95c2-4464-a1da-6b7441baa132_1954x1300.jpeg 848w, https://substackcdn.com/image/fetch/$s_!u4KO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd3874d5-95c2-4464-a1da-6b7441baa132_1954x1300.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!u4KO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd3874d5-95c2-4464-a1da-6b7441baa132_1954x1300.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!u4KO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd3874d5-95c2-4464-a1da-6b7441baa132_1954x1300.jpeg" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cd3874d5-95c2-4464-a1da-6b7441baa132_1954x1300.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:299596,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!u4KO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd3874d5-95c2-4464-a1da-6b7441baa132_1954x1300.jpeg 424w, https://substackcdn.com/image/fetch/$s_!u4KO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd3874d5-95c2-4464-a1da-6b7441baa132_1954x1300.jpeg 848w, https://substackcdn.com/image/fetch/$s_!u4KO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd3874d5-95c2-4464-a1da-6b7441baa132_1954x1300.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!u4KO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd3874d5-95c2-4464-a1da-6b7441baa132_1954x1300.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>The day I deleted Netflix (and probably Disney plus) I was realizing:</p><ul><li><p>Our children ALWAYS want to watch shows during any free period of time (except for one that wants to be outside with friends)</p></li><li><p>My wife and I aren&#8217;t actually using it very much ourselves to justify the cost</p></li><li><p>One of our family values is to read more and let our brains create worlds (albeit a little slower to consume) and this competes directly with that value</p></li></ul><p>My wife and I have tried to instill in our kids the joy of reading, thinking, and playing. And it&#8217;s become apparent that TV and video game time is lower on the list of providing benefits in these areas. (Though I&#8217;d argue a good strategy heavy RPG hits all three).</p><p>We're not complete luddites (though I AM a programmer&#8230;maybe I should work towards destroying ChatGPT before it replaces me?!). We have some other streaming services for free or bundled that have decent TV shows/movies from time to time but I personally don't think we need 5 different ones. Basically we&#8217;re recreating cable TV with all these al a cart channels and we haven&#8217;t had a TV payment for years, why start now?!</p><p>Have you cut any popular services because you realized it didn&#8217;t fit into your life or values?</p><p>-Jesse</p>]]></content:encoded></item><item><title><![CDATA[My $40 Coding Bootcamp]]></title><description><![CDATA[I spent $40 to learn to code.]]></description><link>https://technicallychallenged.substack.com/p/my-40-coding-bootcamp</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/my-40-coding-bootcamp</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Sun, 16 Apr 2023 12:01:28 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!JUAi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad33f454-577f-4be9-8989-00cbd45b5df7_1864x1416.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I spent $40 to learn to code. This is overly simplistic, but in general I spent only about $40 on paid resources. I didn't go to a coding bootcamp, and I didn&#8217;t go to college for a Computer Science degree. I've been working as a software engineer for the last 4+ years, mostly at a fast growing YC startup and more recently at a big scary FAANG company &#128561;. Why did I choose this path? What resources did I pick and how did I go about choosing them? And would I do anything differently if I were to do it today?</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JUAi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad33f454-577f-4be9-8989-00cbd45b5df7_1864x1416.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JUAi!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad33f454-577f-4be9-8989-00cbd45b5df7_1864x1416.png 424w, https://substackcdn.com/image/fetch/$s_!JUAi!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad33f454-577f-4be9-8989-00cbd45b5df7_1864x1416.png 848w, https://substackcdn.com/image/fetch/$s_!JUAi!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad33f454-577f-4be9-8989-00cbd45b5df7_1864x1416.png 1272w, https://substackcdn.com/image/fetch/$s_!JUAi!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad33f454-577f-4be9-8989-00cbd45b5df7_1864x1416.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JUAi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad33f454-577f-4be9-8989-00cbd45b5df7_1864x1416.png" width="1456" height="1106" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ad33f454-577f-4be9-8989-00cbd45b5df7_1864x1416.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1106,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:227598,&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_!JUAi!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad33f454-577f-4be9-8989-00cbd45b5df7_1864x1416.png 424w, https://substackcdn.com/image/fetch/$s_!JUAi!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad33f454-577f-4be9-8989-00cbd45b5df7_1864x1416.png 848w, https://substackcdn.com/image/fetch/$s_!JUAi!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad33f454-577f-4be9-8989-00cbd45b5df7_1864x1416.png 1272w, https://substackcdn.com/image/fetch/$s_!JUAi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad33f454-577f-4be9-8989-00cbd45b5df7_1864x1416.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>Why a $40 bootcamp?!</strong></h2><p>First off what is a coding bootcamp? If you haven&#8217;t heard of them, they are basically occupational schools that teach computer programming. Usually in the flavor of full-stack, front-end, backend, data engineering, or even something like design/UI/UX. They are short, intensive training programs with the goal of getting their graduates employed in high paying jobs quickly. Many of them have promised very high job placement ratings, and some have also been embroiled in scandals from their claims. They are pretty pricy, ranging from free with a percentage of your income going back to them after getting hired all the way up to between $10,000-$30,000. I know a number of people who attended bootcamps and got great jobs after and it really changed their lives. So I&#8217;m not going to bash bootcamps in any way but wanted to highlight what they are and especially the high price tag. (There are free versions of bootcamps that are fully self-paced with online support communities as well if you&#8217;re interested checkout <a href="http://freecodecamp.org">FreeCodeCamp</a>, or the <a href="https://www.theodinproject.com">Odin Project</a>). I&#8217;ve gone through some of FreeCodeCamp curriculum and it is pretty awesome. </p><p>Given this, why did I choose to do a self-taught $40 bootcamp? The quick answer is money or lack thereof. Income sharing wouldn&#8217;t work for me because I knew that when I got my first job I was going to need all the income as well to support my family. I also didn't have the ability to cash-roll a bootcamp 10&#8217;s of thousands of dollars (though this would have probably reduced my overall stress). I already had a lot of student loans and I didn't want to take on anymore debt. One of my goals was (and still is) paying off student loans, so I was really committed to figuring out my career change in a way that honored that goal (I transitioned from working at a non-profit/church).</p><p>Time was also a big factor in my decision making. At the time I had 4 kids (now 5), and was living in SF. With the crazy cost of housing in 2018 I needed to figure out a way to get a job as quick as possible. In my mind I couldn't afford to wait for bootcamp applications or the next cohort rotations even though in retrospect it might have been faster. With my cheap (and stressful) plan I was able to start learning right away with the resources I had on hand.</p><h2><strong>The Resources</strong></h2><p>I kind of stumbled onto this path but here&#8217;s how it started&#8230;</p><p>A friend of mine had told me about Udemy which I had never heard of before and he recommended a course that was apparently really popular and a great starting point. That course was Colt Steele's - <em><a href="https://www.udemy.com/course/the-web-developer-bootcamp/">The Web Developer Bootcamp</a>.</em> And boy was that a great suggestion. I looked it up and saw 100s of thousands of students and reviews and had a $10 coupon for it. There was very little risk involved. Even though the content was dated (more so in 2018 when I went through it), the course was updated enough to complete without any major headaches. He made the content interesting, covered a bunch of technologies, and he even had a paid TA that answered questions in the forum which was really helpful. Overall it was a great beginner course for full-stack web development and I believe he keeps updating and modernizing it, so I'd definitely check it out if you're curious. Colt, if you ever read this&#8230; thank you. </p><blockquote><p>I have no affiliation with Udemy or any of the content I recommend, just sharing my personal experience</p></blockquote><p>As I finished this course insanely quickly I had another formative conversation with a different friend who attended a Hack Reactor bootcamp and he shared some technologies and key words with me that I wasn't familiar with. Things like <strong>React.js</strong>, <strong>backend</strong>, <strong>frontend</strong>, and <strong>full-stack</strong>. I started researching those concepts on Google and a picture of the path forward slowly formed in my mind. After my googling I realized that front-end/full-stack was a good path for me and I realized I needed at least two things on top of Colt's course: a course on JavaScript and a course on React. At the time, Brad Traversy's <em><a href="https://www.udemy.com/course/modern-javascript-from-the-beginning/">Modern JavaScript from the Beginning</a> </em>looked like a great next step, and I also found Andrew Mead's <em><a href="https://www.udemy.com/course/react-2nd-edition/">The Complete React Developer Course (with Redux)</a></em>. Both of these courses were excellent albeit a bit over my head at times. Especially the React course, but I pushed through it.</p><p>In one of my random Google searches I was looking for what courses I should take after Colt Steele's course that would help me better prepare for a job and I found some random Redit thread where the person recommended a Udemy course on Git and web development creatively titled <em><a href="https://www.udemy.com/course/git-a-web-developer-job-mastering-the-modern-workflow/">Git a Web Developer Job: Mastering the Modern Workflow</a></em> by Brad Schiff. Outside of Colt's course this course is what actually got me my first job. The company was looking for pixel perfect frontend help and this course helped me learn the process of systematically taking a mock (image or pdf) and creating it in code. Thank you Brad...</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://technicallychallenged.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://technicallychallenged.substack.com/subscribe?"><span>Subscribe now</span></a></p><h2><strong>What would I change?</strong></h2><p>Going through these courses worked really well for me. I did a lot of other things afterward like building projects and learning random things but this was the bulk of my curriculum. </p><p>With that being said, there was a lot of stress and a lot of unknowns with the whole process. It was hard not having a super clear timeline for how and when I would actually get a job. I think I applied to about 500 jobs on linked in and mostly didn't get responses or had auto-rejections. I don't think I even had one interview from those applications. In retrospect, I&#8217;ve identified at least a few things that I think could have helped me in the process.</p><h3><strong>Things that would reduce stress</strong></h3><p>First, if I did it again I would definitely find a mentor earlier in the process who had accomplished what I was attempting. I did pay for a mentor during my last month or two before I got a job, but having one earlier would have potentially helped. I&#8217;ve thought about mentoring others in this process, let me know if that&#8217;s something you&#8217;d be interested in. Somewhat related&#8230; I&#8217;ve recently started an <a href="https://youtu.be/nhTBSdqvby4">Essential JavaScript</a> series on YouTube, check it out if your learning. </p><p>Second, I would build more personal projects between classes and even between class modules. I was so focused on completed classes for the "knowledge" that I didn&#8217;t spend enough time with the practical aspect of building smaller projects to really internalize it. </p><p>Third, I would have benefited greatly from a better roadmap and maybe some general introductory material to the industry. Maybe some blogs about what it&#8217;s like learning to code on your own and what it takes overall. It turns out things were much more complicated than I realized and I had to learn a lot of different technologies and skills to become proficient. </p><p>Lastly, learning the basics of algorithms and data structures earlier in the process would have also helped a lot. A Leetcode roadmap organized systematically by importance would have made future interviews much less stressful. If I could have started with <em><strong>easy</strong></em> and worked my way up to <em><strong>medium</strong></em> with a clear plan &#8212; that would have been invaluable. </p><h3>Course Specific Changes</h3><p>Would I change anything related to the courses I chose? </p><p>In retrospect I would probably take a React course that doesn't use Redux, or just skip the Redux part. That made learning React a lot more difficult than it needed to be. I should have been focusing on practicing React proper, but instead I got a bit overwhelmed and confused with all the terminology and additional concepts. Plus, all of the projects I have worked on since have not used Redux to date. Most have used <a href="https://react.dev/reference/react/useContext">React's Context API</a>. I have heard people rave about Redux, but I just haven&#8217;t needed it myself. </p><p>Also, at the time Colt Steele's course focused on some dated technologies. I would have saved some time with the modern version of his course (which didn&#8217;t exist at the time), something that jumps you straight into JavaScript and React more quickly. I learned a lot of older technologies with Colt's course that were generally helpful but it&#8217;s probably less efficient to start there today. </p><p>As I mentioned earlier I would also probably add a course on Leetcode, since a lot of companies still use Leetcode style interview questions. Knowing how data structures work is really helpful for writing more efficient code. I&#8217;m not sure if there are any good Leetcode specific Udemy courses but something like <a href="https://neetcode.io/">Neetcode.io</a> is a steal for what it offers. </p><p>Let me know if you have any similar experiences, course recommendations, and any questions in the comments. </p><p>-Jesse</p>]]></content:encoded></item><item><title><![CDATA[The next smallest thing]]></title><description><![CDATA[What&#8217;s the next smallest thing I can do that will contribute to my...]]></description><link>https://technicallychallenged.substack.com/p/the-next-smallest-thing</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/the-next-smallest-thing</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Wed, 22 Feb 2023 16:15:06 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!QTyC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cc12d71-6122-4a06-af7f-92559f96433e_4032x3024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Software engineering can be quite overwhelming, heck, life can be overwhelming. One thing that I&#8217;ve found that helps me keep some sanity in work (and life) is tackling the next smallest thing. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QTyC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cc12d71-6122-4a06-af7f-92559f96433e_4032x3024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QTyC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cc12d71-6122-4a06-af7f-92559f96433e_4032x3024.png 424w, https://substackcdn.com/image/fetch/$s_!QTyC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cc12d71-6122-4a06-af7f-92559f96433e_4032x3024.png 848w, https://substackcdn.com/image/fetch/$s_!QTyC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cc12d71-6122-4a06-af7f-92559f96433e_4032x3024.png 1272w, https://substackcdn.com/image/fetch/$s_!QTyC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cc12d71-6122-4a06-af7f-92559f96433e_4032x3024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QTyC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cc12d71-6122-4a06-af7f-92559f96433e_4032x3024.png" width="1456" height="1092" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5cc12d71-6122-4a06-af7f-92559f96433e_4032x3024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1092,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:10255149,&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_!QTyC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cc12d71-6122-4a06-af7f-92559f96433e_4032x3024.png 424w, https://substackcdn.com/image/fetch/$s_!QTyC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cc12d71-6122-4a06-af7f-92559f96433e_4032x3024.png 848w, https://substackcdn.com/image/fetch/$s_!QTyC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cc12d71-6122-4a06-af7f-92559f96433e_4032x3024.png 1272w, https://substackcdn.com/image/fetch/$s_!QTyC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cc12d71-6122-4a06-af7f-92559f96433e_4032x3024.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>Don&#8217;t get me wrong sometimes you have a clear picture of what you need to do and you know how to do it. If that&#8217;s the case just go do it! But I often find myself tangled up in a ball of confusion as I try to wrap my mind around a new concept, or a new system. After I dizzy myself into a frenzy I take a break and begin to systematically break down what&#8217;s in front of me. I usually start by asking myself <em>What am I trying to accomplish? &#8212;</em> it might not be what you were told you needed to accomplish.</p><p>I find this set of questions helpful:</p><ul><li><p>What is the next smallest <em>question </em>I can answer?</p></li><li><p>What is the next smallest <em>concept </em>I can learn?</p></li><li><p>What is the next smallest <em>thing </em>I can do?</p></li></ul><p>Sometimes I just sit there thinking about the problem before one of these 3 areas become clear.</p><p>As things grow in complexity I find myself having to do this more often than not. Gone are the days when I can just start working and see tangible progress in the next hour or two. </p><p>This has become more apparent at my new company which is a FAANG company (Facebook Apple Amazon Netflix Google) where it seems that every system I interact with has years of complexity built into it. How do you fix a bug in a system that has 10+ different teams that make it work even at a basic level? It&#8217;s not easy. So my new mantra has become: <em>What&#8217;s the next smallest thing I can answer, learn, or do to make progress?</em></p><p>-Jesse</p>]]></content:encoded></item><item><title><![CDATA[Goodbye Stadia]]></title><description><![CDATA[I was an early adopter of Stadia but since it was a Google product I was hesitant to put any money towards it (see killedbygoogle.com if haven&#8217;t already &#128579;), and if you&#8217;re not living under a gaming/technological rock you&#8217;ve likely heard that Stadia was shutting down this month&#8230; let me back up a bit.]]></description><link>https://technicallychallenged.substack.com/p/goodbye-stadia</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/goodbye-stadia</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Sat, 28 Jan 2023 17:00:21 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!makB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F420a249b-7402-4bdf-96fc-e725b689837b_2006x992.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I was an early adopter of Stadia but since it was a Google product I was hesitant to put any money towards it (see <a href="https://killedbygoogle.com/">killedbygoogle.com</a> if haven&#8217;t already &#128579;), and if you&#8217;re not living under a gaming/technological rock you&#8217;ve likely heard that Stadia was shutting down this month&#8230; let me back up a bit.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!makB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F420a249b-7402-4bdf-96fc-e725b689837b_2006x992.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!makB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F420a249b-7402-4bdf-96fc-e725b689837b_2006x992.png 424w, https://substackcdn.com/image/fetch/$s_!makB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F420a249b-7402-4bdf-96fc-e725b689837b_2006x992.png 848w, https://substackcdn.com/image/fetch/$s_!makB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F420a249b-7402-4bdf-96fc-e725b689837b_2006x992.png 1272w, https://substackcdn.com/image/fetch/$s_!makB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F420a249b-7402-4bdf-96fc-e725b689837b_2006x992.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!makB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F420a249b-7402-4bdf-96fc-e725b689837b_2006x992.png" width="1456" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/420a249b-7402-4bdf-96fc-e725b689837b_2006x992.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:332493,&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_!makB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F420a249b-7402-4bdf-96fc-e725b689837b_2006x992.png 424w, https://substackcdn.com/image/fetch/$s_!makB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F420a249b-7402-4bdf-96fc-e725b689837b_2006x992.png 848w, https://substackcdn.com/image/fetch/$s_!makB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F420a249b-7402-4bdf-96fc-e725b689837b_2006x992.png 1272w, https://substackcdn.com/image/fetch/$s_!makB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F420a249b-7402-4bdf-96fc-e725b689837b_2006x992.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>If you&#8217;re not familiar with <a href="https://stadia.google.com/gg/">Google&#8217;s Stadia</a> product (RIP) it&#8217;s premise was essentially the Netflix of video games. Stream 4k video games with a Chromecast (or a web browser) from Google&#8217;s servers to your living room. You don&#8217;t have to worry about game updates, you don&#8217;t have to worry about computer updates. And you don&#8217;t have to wait for large game downloads. Just turn on the controller and start playing from where you left off.</p><p>The controller &#127918; had some magic in it as well because you could use the same controller and continue your game from your iPhone or computer, or living room TV. (I actually really like the Stadia controller and I&#8217;m very pleased that they released a <a href="https://stadia.google.com/controller/">firmware update</a> to unlock the bluetooth functionality).</p><p>I was actually the perfect target demographic for Stadia. I was a gamer when I was younger but college/university, marriage, kids, and work had me focused on other priorities for many years. I also didn&#8217;t own any consoles or gaming computers. And there&#8217;s always been this little part of me that&#8217;s wanted to be able to try out some of the newer games that have come out with crazy good graphics.</p><p>Enter Stadia: <em>inexpensive hardware and al a cart AAA games on my terms.</em> And I have to say it almost delivered on it&#8217;s promise. In 2021 I had a blast playing <em><a href="https://www.ea.com/games/starwars/jedi/jedi-fallen-order">Star Wars</a></em><a href="https://www.ea.com/games/starwars/jedi/jedi-fallen-order"> Jedi: Fallen Order</a> while my kids watched on the couch coaching and correcting my every move as I slowly beat the increasingly difficult worlds and bosses. I&#8217;ll never forget the moment my kids and I stood up and cheered after I got the amazing <strong>[NOT A SPOILER]</strong> on the mountain. </p><p>That&#8217;s not to say the experience was flawless, but it was really close. I experienced a few glitches here and there but I was largely able to turn on the TV, select my game, and pretty quickly get going. I remember one night it kept freezing for about 15 minutes and I gave up after turning off the Chromecast three times to no avail. Other than that I didn&#8217;t have any major issues during gameplay. </p><p>I had another moderately frustrating issue with the hardware. After turning on the Stadia controller it was supposed to automatically turn on the TV and load up Stadia. Turning the controller on would actually turn on the TV as expected but then the Chromecast would show &#8220;no connection&#8221; or some related message and I would have to power cycle it for it to turn on properly. I ended up having my Chromecast replaced due to this issue, but if I remember correctly it still happened intermittently afterward.</p><p>Regardless of these small(ish) issues, ultimately, it seems the product didn&#8217;t have the adoption that Google needed to justify keeping it around.</p><p>A few other reasons why I think Stadia didn&#8217;t make it include its confusing business model and it&#8217;s limited game selection. </p><p>It really did have a confusing model. Originally I thought it was a Netflix for games and then for the longest time I didn&#8217;t know if I had to buy games at full price or pay a monthly membership fee or if I needed both. It looks like they eventually settled on two options: 1) offering Stadia for free and you just need to buy the games for full or discounted prices, and 2) you could pay $10 monthly and get unlimited play of whatever was on that month&#8217;s game streaming title lineup.</p><p>Another big issue was that they had a pretty limited selection of games. I personally felt this a lot. I would search for a game I was interested in and then realize that the available game options were much, much smaller. It turns out, I wasn&#8217;t really interested in most of their games. And for the longest time I don&#8217;t even think you could search the games at all. I think I only bought like three games in total which clearly isn&#8217;t sustainable if the adoption was already quite low. </p><p>Combine the confusing purchase model with a small game selection and a technology that was arguably ahead of its time and required a decent internet speed and we have lackluster adoption.</p><p>So Goodbye Stadia, Hello SteamDeck?</p><p>-Jesse</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://technicallychallenged.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Technically Challenged Newsletter! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[How I finally learned to code]]></title><description><![CDATA[First software engineer offer in 7 months]]></description><link>https://technicallychallenged.substack.com/p/how-i-finally-learned-to-code</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/how-i-finally-learned-to-code</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Mon, 16 Jan 2023 22:00:56 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/y29w0LrAHKk" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A few weeks ago I posted a <a href="https://youtu.be/eIOuog3QGHc">video</a> on why I think I failed to learn programming many times over the years. Here&#8217;s a quick a summary:</p><ol><li><p>I only read books</p></li><li><p>I thought I could do it all by myself</p></li><li><p>The things I was making with code didn&#8217;t look like what I wanted to make</p></li><li><p>I gave up when things got difficult</p></li><li><p>I didn&#8217;t have a good roadmap</p></li><li><p>I underestimated how many different things I needed to learn in the process</p></li></ol><p>How did I do things differently this time? What did I focus on? What changed? </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://technicallychallenged.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">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>Click for the <a href="https://youtu.be/y29w0LrAHKk">video version</a> if you&#8217;d rather watch than read. </p><div id="youtube2-y29w0LrAHKk" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;y29w0LrAHKk&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/y29w0LrAHKk?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>*These principles apply to learning all kinds of things, I just happened to notice their prominence after reflecting on my learning to code failures.</p><h2>1. I focused on online courses</h2><p>Instead of reading books, I referenced online courses, YouTube videos, , tutorials, and even asked other people for feedback. Ironically I didn&#8217;t use books at all during this time. This worked for me because book learning turns out to be not as effective of a way to learn something as complex as computer programming and full stack development. Its heavily graphical in nature (using code editors or IDE&#8217;s, terminals, graphics and styling). And I suppose since it&#8217;s largely visual and spatial, that&#8217;s the way I learn it best as well.</p><h2>2. I didn&#8217;t think I could do it alone</h2><p>I didn&#8217;t expect to silo myself in and just learn everything completely on my own; especially after failing so many times. This last time around I was older and a little wiser so maybe that helped, but I <em>assumed</em> I would need help along the way. Also when I asked people for help I took their advice and constructive criticism.</p><h2>3. I picked interesting projects and learning materials that had me building things like I&#8217;d be doing on the job</h2><p>This one is twofold: a) the output should be interesting to you, b) as well as produce things like you&#8217;d be producing on the job. I found resources that taught me things I knew I needed to learn in a way that was still interesting to me. For me this was everything around making full stack applications. Essentially web apps with a frontend, a server, and a database. Anything that acts like an &#8220;App&#8221; but is on a website. I also made some small games for fun as well.</p><p>I see this a LOT of good examples on YouTube. If you&#8217;re interested in iPhone programming I&#8217;d pick a video like &#8220;Your first iOS app in 1 hour.&#8221; Pick an app idea that excites you. It might be a TODO app, or a restaurant app, or a game. Whatever idea energizes you the most.</p><p>I still practice this today when I need to learn something new and it&#8217;s proven much faster to get results.</p><h2>4. I did not give myself an out</h2><p>Even when it got difficult I kept learning and kept applying to jobs. Even if I was staring at the <em><strong>same error message for 10 hours</strong></em> that day.</p><p>This of reminds me of one of the final scenes in Gattaca when Ethan Hawk&#8217;s character out swims brother even though his DNA is not as good (potential heart defect I believe). After the race where his brother almost drowns we find out his secret: he didn&#8217;t save anything for the swim back&#8230; I didn&#8217;t save anything for the swim back. For me this meant quitting my job and going all in. My old job and my old industry weren&#8217;t fallback options for me. While this last part isn&#8217;t something I&#8217;d recommend for everyone, it ended up working for me. Regardless, if you really want to learn programming, don&#8217;t quit until you have actually learned it!</p><h2>5. I researched a decent roadmap</h2><p>I didn&#8217;t have a perfect roadmap, but I didn&#8217;t need one (SPOILER: I don&#8217;t think there is a perfect roadmap). To get a decent roadmap I talked to people in the industry and then researched the topics I wanted to learn after our discussions. Then I began to plan a fairly simple learning roadmap that I thought would give me the skills I needed to be employable&#8230; and it worked!</p><p>I also have an article that touches on this topic in: <em><a href="https://technicallychallenged.substack.com/p/ultralearning-aka-how-i-learned-to">Ultralearning aka how I learned to code</a></em> if you&#8217;re interested.</p><h2>6. I embraced the chaos</h2><p>Lastly, I embraced the fact that I had a lot of different things I needed to learn and then started chiseling away at those topics on my roadmap. I let the resources and my roadmap slowly guide me to comprehension. Gradually I got more and more familiar with the topics until I became proficient. Programming. Databases, SQL, Mongodb, HTTP requests, servers, JavaScript, React, CSS styling, authentication, etc.</p><p>And about 7 months after I started this learning-to-code journey I had my first offer! And the rest is history. I&#8217;ve been coding full time since then and I enjoy it so much that I hope to be able to encourage and share that joy with others through videos and writing.</p><p>If you know anyone learning to code, or learning something challenging right now send this their way if you think it might encourage them!</p><p>-Jesse</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://technicallychallenged.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Ultralearning aka how I learned to code]]></title><description><![CDATA[Ultralearning&#8230; I hadn&#8217;t heard this term until recently when I started an audiobook with the title.]]></description><link>https://technicallychallenged.substack.com/p/ultralearning-aka-how-i-learned-to</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/ultralearning-aka-how-i-learned-to</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Wed, 04 Jan 2023 16:00:06 GMT</pubDate><enclosure url="https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/d27d246e-cc5c-42ae-b96e-5aa4acac0510_1526x900.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em><a href="https://www.amazon.com/Ultralearning-Strategies-Mastering-Skills-Getting/dp/0008305706/ref=sr_1_1?crid=2ZBXS91XXATM3&amp;keywords=ultralearning&amp;qid=1667692999&amp;sprefix=ultralearni%2Caps%2C260&amp;sr=8-1">Ultralearning</a>&#8230;</em> I hadn&#8217;t heard this term until recently when I started an audiobook with the title. I&#8217;ve been on a productivity audiobook kick recently (<a href="https://www.amazon.com/Atomic-Habits-Proven-Build-Break/dp/0735211299/ref=sr_1_1?crid=2TWK9MTA4UO91&amp;keywords=atomic+habits&amp;qid=1667692954&amp;sprefix=atomic+habit%2Caps%2C291&amp;sr=8-1">Atomic Habits</a>, <a href="https://www.amazon.com/Good-They-Cant-Ignore-You/dp/1455509124/ref=sr_1_1?crid=GZX713DKJKE2&amp;keywords=So+Good+they+Can%E2%80%99t+Ignore+You&amp;qid=1667692972&amp;sprefix=atomic+habits%2Caps%2C200&amp;sr=8-1">So Good They Can&#8217;t Ignore You</a>) and Ultralearning popped up in my recommendations.</p><p>As I started reading the book I realized that this is exactly how I learned how to code. About 5 years ago I went from not knowing how to code to working at a startup in about 7 months. How did I do it? I guess I used ultralearning which the author Scott Young describes as &#8220;self-directed and intense&#8221; learning. In his book Young describes 9 key components and I thought it would be interesting to break down my experience with each idea while learning to code and how it lines up with Young&#8217;s list.</p><h2>1. Meta-Learning</h2><p>This is where you spend time researching and learning the <em>What</em> and the <em>How</em> of what you want to learn. Not everything is learned the same exact way, so this step helps the learning process be more efficient.</p><p>For me this started with a conversation I had with a friend of mine where he explained to me some of the technologies and concepts in modern full stack programming. Things like Front End, Backend, Full Stack, React, JavaScript. What are the topics I need to learn to actually learn programming? I posted a <a href="https://youtu.be/iqUm_3rOp7M">video</a> recently about this, essentially four things I think you need to learn to get a front end junior engineer.</p><p>After this conversation I spent some more time researching different resources that I would go through to help with specific areas I had identified that I needed to hone in on. Some of those areas included:</p><ul><li><p>JavaScript: I knew the basics but I realized I needed to learn it much better.</p></li><li><p>Web design fundamentals: I wanted to learn how to build websites at a deeper level so this was clearly one of my priorities. The resource I chose was a little dated and more old school but gave me a really solid foundation.</p></li><li><p>Using <a href="https://git-scm.com/">Git</a> (and also <a href="https://github.com/">GitHub</a>): Git is an extremely popular way to save your code online, as a well as a powerful tool that immensely helps you when one or more people are writing code on the same project, so I planned to dive into this.</p></li><li><p>React: This was one of the main areas I had decided to focus on, and this ended up being a really good bet. It&#8217;s still in incredibly high demand today. And I also enjoy it so that helps!</p></li></ul><h2>2. Focus</h2><p>I realize this in retrospect but this was absolutely essential to my learning-to-code success. To perform ultralearning you have to be laser-focused and to learn something difficult like computer programming takes immense focus. I basically had to kill all distractions. I basically cut out social media, tv shows, movies&#8212;anything non-essential.</p><p>I started studying first thing in the morning and didn&#8217;t stop until about 10pm (or when my brain turned off), with a few breaks for food and putting the kids to bed. I did this 6 days a week for just about three months. This gave me a solid foundation for the more subtle learning I would undertake for a few more months before finally getting my first job offers. But the focus aspect was non-negotiable.</p><h2>3. Directness</h2><p>Study the things you actually need to learn. If I would have started my coding journey by spending months studying abstract computer science fundamentals I would not have gotten a job as quickly as I did and possibly would have failed or given up altogether. (I have later spent many months studying CS fundamentals which are quite interesting).</p><p>This principle of directness is essential and ties directly (no pun intended) to the meta-learning principle above. Research the things you need to learn and then practice those things. Want to learn to cook? Watch a video on basic cooking techniques and then try them out in the kitchen. Do you want to learn JavaScript? Then practice JavaScript. Don&#8217;t watch videos on Python or machine learning. Write <em><strong>JavaScript</strong></em>. If you watch a video on JavaScript, practice whatever JavaScript you learned from the video.</p><h2>4. Drill</h2><p>The point here is to repeat the things you need practice in. If you want to be able to write full stack applications like I did, then practice building full stack applications. Setup a database. Setup a server. Setup the front end. Rinse and repeat. Young says you need to &#8220;drill the weak points.&#8221; Are you confused by how arrays work? Practice mainly with arrays until you improve. Learn the most important array methods and repeat them until they come naturally.</p><h2>5. Retrieval</h2><p>You might watch a video or a blog tutorial and think you learned something new, but if you can&#8217;t repeat it on your own did you really learn it? People often call this being stuck in <em>tutorial hell</em>. You get trapped watching videos of other people programming but you never actually learn it for yourself. You never graduate from beginner, and then you jump to another tutorial. You might even jump languages or technologies. Watch out for this because it&#8217;s <em>hella</em> discouraging &#129315;!</p><p>Instead of getting stuck in tutorial hell, watch a video and then try to do it yourself 5 or 10 times from scratch. It&#8217;s OK if you need to rewatch the video a few times on things you miss or forget, but if you do this enough times you&#8217;ll actually learn the concept. For more on this topic read my post on <a href="https://technicallychallenged.substack.com/p/how-to-learn-hard-things-in-tech">How to learn hard things in tech</a>.</p><h2>6. Feedback</h2><p>Feedback is one of the most important things when learning a new skill&#8230; <em>Am I even doing this right?</em> When I think of feedback I almost always go to the concept of deliberate practice which was really mind blowing to me. I wish I could remember who I first learned the concept from, but I&#8217;ve now heard it repeated liberally by many others (Cal Newport and Angela Duckworth to name a few). I&#8217;ve used it at various times in my life and now I have a phrase to describe it. I&#8217;d summarize deliberate practice as repeated intentional practice with quick feedback.</p><p>The faster you can make your feedback loop (how long it takes you to get feedback) the better. Also you want the highest quality feedback you can find (master/expert level if possible). This is one of the most important things that helped me learn computer programming in general and front end in particular. When I wanted to make a button match the button design of a mockup I could see my changes after saving using <a href="https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer">live server</a>/hot-reloading. I could tell right away if my button design matched and that was a pretty fast feedback loop. This quick iteration was essential to my ultralearning. I also talk about it in my <a href="https://youtu.be/bzCB77_4EjM">YouTube video</a> on why I think Javascript is an amazing first programming language because you can see your changes in basically realtime. I plan to record a followup video to this one with examples so stay tuned if you&#8217;re interested!</p><h2>7. Retention</h2><p>What are you forgetting? Learn to remember things long term. Use spaced-repetition apps like <a href="https://ankiweb.net/about">Anki</a>. Modern programming is interesting because you have to know how to use so many different technologies and tools. In practice you are learning <em>how</em> to use technologies but you don&#8217;t necessarily need to memorize all of the specifics. If you need to setup a new database for example you can just look at the documentation for the setup steps since you usually only do that once at the beginning of starting a new project. Whereas something you might do multiple times a day like to filter or sort an array is something you&#8217;d likely want committed to memory.</p><p>I noticed my retention improving when I was able to recall JavaScript language syntax more quickly. The more I practiced each day and worked on new projects the more I actively tried to remember and use the skills I needed to retain. I probably could have sped this up with some strategic flashcard drilling.</p><h2>8. Intuition</h2><p>Intuition is quite valuable. You may not know exactly what to do or what is causing an error message, but if you have good intuition it will help you look in the right direction and ultimately get where you need to go much faster. Developing an intuition for things takes time but does eventually build up. I remember feeling helpless countless times while learning to code. After getting an error message I would have no idea where to look or what to do to solve it. I remember having to ask for help for the simplest of things. But intuition is like a crock pot, it needs to simmer and eventually with enough time you have it! You start to develop the feel for how things work and what to do when things break or go south, but it does take time.</p><h2>9. Experimentation</h2><p>Young says you need to &#8220;explore outside your comfort zone&#8221;. This one is one that I personally loathe. It&#8217;s called a comfort zone for a reason.</p><p>When I think about learning something completely new or foreign to me, a new concept or a new technology, my brain starts to hurt. I <em>feel</em> like it&#8217;s a self-protective mechanism but in reality it&#8217;s just part fear and part unknown which leads to some form of anxiety. But the more you go outside your comfort zone the less scary it gets even if it&#8217;s only incremental. I still feel the brain hurt daily at my job, but it&#8217;s not as severe. And the benefit you gain from experimenting is something you don&#8217;t always feel right away but pays off later when your combined experiences help build intuition.</p><p>If you apply these principles to whatever you want to learn you might just benefit from ultralearning too. Let me know if you&#8217;ve had any ultralearning experiences in your life. What did you learn? Were any of the steps above more impactful to you than the others?</p><p>-Jesse</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://technicallychallenged.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://technicallychallenged.substack.com/subscribe?"><span>Subscribe now</span></a></p>]]></content:encoded></item><item><title><![CDATA[What you ACTUALLY need to learn to get a job as a programmer🧑‍💻]]></title><description><![CDATA[I recently posted a short YouTube video on this topic (see below) and thought I&#8217;d share a quick summary of what I think is the MINIMUM someone needs to learn to get a job as a (frontend) software engineer.]]></description><link>https://technicallychallenged.substack.com/p/what-you-actually-need-to-get-a-job</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/what-you-actually-need-to-get-a-job</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Wed, 02 Nov 2022 14:15:55 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/iqUm_3rOp7M" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I recently posted a short YouTube video on this topic (see below) and thought I&#8217;d share a quick summary of what I think is the MINIMUM someone needs to learn to get a job as a (frontend) software engineer. If you or anyone you know is interested in learning to code don&#8217;t forget to share it! </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://technicallychallenged.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Technically Challenged Newsletter! 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><ol><li><p>&#129489;&#8205;&#128187;Beginner/intermediate coding ability - Know your if/else&#8217;s, for loops, and basic control logic. Know how to work with arrays and objects, error handling, etc.</p></li><li><p>&#128228;/&#128229;Know how to use APIs. Know how to get data from a 3rd party or from your own server&#8212;usually this involves working with JSON. This includes a little about how the internet works and HTTP requests. GET, POST, PUT, DELETE &#8212; *bonus if you can build your own API and hit a database to save your data. **bonus2 if you can use an api key to get your data. </p></li><li><p>&#128133;Styling and positioning - Take the data, display it, and make it look good (like the picture/mock-up). Learn how to put something wherever you want it to go on the screen or app. Learn how to move it 1 or 100 pixels left/right/up/down. Learn how to position something in relation to another item. Learn how to place items on top of or below each other. </p></li><li><p>&#128134;&#8205;&#9794;&#65039;Problem solving and tenacity - You need to be able to solve problems. Solve whatever is in front of you using the tools you have (this includes documentation, asking for help, watching a video tutorial). And you can&#8217;t stop until you solve it. Period.</p></li></ol><p>And that&#8217;s it. These are THE essentials for getting hired as a junior software engineer (or just making your own stuff!). These 4 things could definitely get you a junior frontend job. And if you know more about servers and databases you could get a junior full stack or even junior backend position. How do I know? Because this is essentially how I got my first software engineering job!</p><p>Let me know if you&#8217;d add anything to the list! </p><p>-Jesse</p><div id="youtube2-iqUm_3rOp7M" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;iqUm_3rOp7M&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/iqUm_3rOp7M?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>]]></content:encoded></item><item><title><![CDATA[Quick Thanks]]></title><description><![CDATA[Just wanted to send a quick thanks for reading.]]></description><link>https://technicallychallenged.substack.com/p/quick-thanks</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/quick-thanks</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Mon, 31 Oct 2022 12:01:18 GMT</pubDate><content:encoded><![CDATA[<p>Just wanted to send a quick thanks for reading. I really appreciate getting to share some technically challenging topics with you! </p><p>I&#8217;d love to know a little bit about you, and maybe a topic you&#8217;re interested in? Just reply to this email and I will definitely respond! </p><p>I have a bunch of content coming down the pipeline, but I&#8217;m starting a new job this week so it might take me a bit to get into a new groove. </p><p>Looking forward to hearing from you! </p><p>-Jesse</p>]]></content:encoded></item><item><title><![CDATA[Why my first iOS app’s name is so weird and other things]]></title><description><![CDATA[The real story behind GainTracker Water Edition]]></description><link>https://technicallychallenged.substack.com/p/why-my-first-ios-apps-name-is-so</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/why-my-first-ios-apps-name-is-so</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Fri, 14 Oct 2022 12:01:16 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!8lXF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F6d1ad22f-4d1f-4676-9d87-311e1f04f752_1400x802.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I didn&#8217;t really plan on building a water tracking app. There&#8217;s a ton of amazing looking water tracking apps in the App Store that have all kinds of great features (not to mention in-app purchases and/or subscriptions). So how did I end up building a simple water tracking app and where did it get its name <a href="https://gaintrackerapp.com/water.html">GainTracker Water Edition</a>?</p><h2>&#127947;&#65039;&#8205;&#9792;&#65039; The workout app</h2><p>This water tracking app actually started a few years ago as a workout tracking app called <a href="https://gaintrackerapp.com/">GainTracker</a>, hence the weird name <em>GainTracker Water Edition</em>. I didn&#8217;t have any better names, and WaterTracker was already taken so I just attached <em>Water Edition</em> to the end.</p><p>I&#8217;ve been wanted a quick and easy cloud-syncing weightlifting tracking app and I didn&#8217;t see any that I really liked so I decided to build it myself. SwiftUI had just come out and I figured it would be a great opportunity to learn iOS programming. I spent a few years on and off learning Swift and SwiftUI and built out a POC that I could use myself. I slowly added features to it and it had a lot of the basic features I wanted. </p><p>I had been pushing off paying for an <a href="https://developer.apple.com/programs/">Apple Developer</a> account since I didn&#8217;t really need one while I was learning, but a few months ago I bit the bullet and paid for it so I could properly share it with friends and family to test out (<a href="https://testflight.apple.com/">TestFlight</a> is pretty cool btw). After a few more error messages I finally got it accepted for beta testing and sent it to my friend to test. It crashed right away &#129318;&#127995;&#8205;&#9794;&#65039;. I tried to debug the issue but it was too frustrating. My &#8220;learning&#8221; code was just too messy to use for a real production app and I needed to start over from scratch to figure out a few more things I still had questions about. I had already identified a few areas I needed to learn some better practices in so I hit the pause button on <em>GainTracker</em> and <em>GainTracker Water Edition</em> was born.</p><h2>&#128167; The water tracking app</h2><p><em>How much water do I drink daily?</em> I had been wanting to know the answer to this for a while now but hadn&#8217;t gotten around to documenting it, so I figured building a simple water tracking app would help me solve two problems in one. It would help me understand the things that weren&#8217;t working in my hodgepodge spaghetti code workout app, and it would also help me realize how much water I&#8217;m drinking daily. I decided that I would only add code that I knew had to be in the app which should make adding features and debugging things easier&#8212;I <em>almost</em> kept that promise. Some of the features I needed to test were: loading data when the app starts up, iCloud sync between all my devices (iPhone, iPad, and MacBook Air), notifications, notification actions, configurable settings that are accessible throughout the app&#8217;s various pages, and visuals like charts and graphs (coming soon in the water app).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8lXF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F6d1ad22f-4d1f-4676-9d87-311e1f04f752_1400x802.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8lXF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F6d1ad22f-4d1f-4676-9d87-311e1f04f752_1400x802.png 424w, https://substackcdn.com/image/fetch/$s_!8lXF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F6d1ad22f-4d1f-4676-9d87-311e1f04f752_1400x802.png 848w, https://substackcdn.com/image/fetch/$s_!8lXF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F6d1ad22f-4d1f-4676-9d87-311e1f04f752_1400x802.png 1272w, https://substackcdn.com/image/fetch/$s_!8lXF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F6d1ad22f-4d1f-4676-9d87-311e1f04f752_1400x802.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8lXF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F6d1ad22f-4d1f-4676-9d87-311e1f04f752_1400x802.png" width="1400" height="802" data-attrs="{&quot;src&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/6d1ad22f-4d1f-4676-9d87-311e1f04f752_1400x802.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:802,&quot;width&quot;:1400,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:176459,&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_!8lXF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F6d1ad22f-4d1f-4676-9d87-311e1f04f752_1400x802.png 424w, https://substackcdn.com/image/fetch/$s_!8lXF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F6d1ad22f-4d1f-4676-9d87-311e1f04f752_1400x802.png 848w, https://substackcdn.com/image/fetch/$s_!8lXF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F6d1ad22f-4d1f-4676-9d87-311e1f04f752_1400x802.png 1272w, https://substackcdn.com/image/fetch/$s_!8lXF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F6d1ad22f-4d1f-4676-9d87-311e1f04f752_1400x802.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>&#128242; Coding the app</h2><p>The actual coding part was fairly straightforward. I had spent the last few years learning the basic syntax of Swift and SwiftUI and felt pretty comfortable with it. I just needed to come up with the app&#8217;s main functionality and then use basic programming logic to figure out what was needed in code to do that functionality. The other thing I needed to do was learn the specific areas of iOS programming I was lacking in the workout app. For example, things like <a href="https://developer.apple.com/documentation/swiftui/scenes?changes=la">scene modifiers</a>that control what happens if your app becomes active or goes into the background. I also learned about a concept I hadn&#8217;t used before called <a href="https://developer.apple.com/documentation/combine/observableobject">ObservableObject</a> which allowed me to improve how data flowed through the app and across multiple pages while updating the screen for the user accordingly if any of the information changes.</p><h2>&#128187; macOS support</h2><p>Supporting the Mac was really important for me. But to my frustration, not every feature available in iOS is available on macOS in SwiftUI which meant I needed to customize the code to work on both operating systems. (Technical comment: I had to use a few <a href="https://docs.swift.org/swift-book/ReferenceManual/Statements.html">compiler control statements</a> like <code>#if os(MacOS)</code> to only run certain code for Mac.)</p><p>But since I really wanted the app to sync between my iPhone, iPad, and especially my MacBook I spent the time and a little extra effort and it works! The docs weren&#8217;t the clearest, and I ran into a few bonus error messages but I made it through them.</p><p>Adding MacOS support wasn&#8217;t as hard as I thought it would be given that SwiftUI is largely cross-platform. But at the time of coding my app some features weren&#8217;t implemented like NavigationStacks, so I had to end up customizing a few screens to fit macOS as well as postpone a few features until an upcoming release. Despite a few customizations both operating systems share the same code.</p><h2>&#128452; Administrative tasks</h2><p>Now it wasn&#8217;t <em>that</em> bad, but I spent a decent number of hours on administrative work to fully setup my app in the App Store. I needed to create icons and have all the correct sizes. I also needed to fill out all the questions and add all of the screenshots. I also setup a <a href="https://gaintrackerapp.com/water.html">simple website</a> for the app but that was a pretty quick and fun project.  The most time-consuming activity was probably learning how to use <a href="https://www.gimp.org/">Gimp</a> (an open source and freeware Photoshop style image manipulation program) and then actually editing the screenshots for the App Store. I might end up just learning photoshop next time around but Gimp seems to work perfectly fine and it&#8217;s free.</p><p>Overall I would say the experience was worth it. I don&#8217;t think anyone except friends and family have seen the app, and I&#8217;m pretty sure no one has purchased it, but it was a bucket-list <em>dream come true</em> for me to launch my own app and being a self-taught programmer makes it feel a little more rewarding. It took a while but I did it. Do I expect to earn a bunch of money from a very simple water tracking app? No, of course not. But do I think the features are valuable and could help others out there like me who need to drink more water? Yes!</p><p>And for <a href="https://gaintrackerapp.com/">GainTracker</a> (the weightlifting app) I hope to release it in early 2023. I have a few more features I&#8217;d like to add to <a href="https://gaintrackerapp.com/water.html">GainTracker Water Edition</a> first and then I&#8217;ll start work on the true <a href="https://gaintrackerapp.com/">GainTracker</a> app. Stay tuned!</p><p>Have you ever wanted to make an app? Did you make it? What is holding you back? If you&#8217;ve tried my app let me know what you think as well!</p><p>-Jesse</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://technicallychallenged.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Technically Challenged Newsletter! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[“Creative” ways to use a $30 Wyze camera]]></title><description><![CDATA[I&#8217;m always looking for little ways to use technology to improve my daily life or solve real life problems I&#8217;m facing (like waking up early).]]></description><link>https://technicallychallenged.substack.com/p/creative-ways-to-use-a-30-wyze-camera</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/creative-ways-to-use-a-30-wyze-camera</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Mon, 03 Oct 2022 12:23:07 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!5fTH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F33b60da9-281e-4d1b-b5ad-880dc90ef243_974x788.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_!5fTH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F33b60da9-281e-4d1b-b5ad-880dc90ef243_974x788.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5fTH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F33b60da9-281e-4d1b-b5ad-880dc90ef243_974x788.png 424w, https://substackcdn.com/image/fetch/$s_!5fTH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F33b60da9-281e-4d1b-b5ad-880dc90ef243_974x788.png 848w, https://substackcdn.com/image/fetch/$s_!5fTH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F33b60da9-281e-4d1b-b5ad-880dc90ef243_974x788.png 1272w, https://substackcdn.com/image/fetch/$s_!5fTH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F33b60da9-281e-4d1b-b5ad-880dc90ef243_974x788.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5fTH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F33b60da9-281e-4d1b-b5ad-880dc90ef243_974x788.png" width="974" height="788" data-attrs="{&quot;src&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/33b60da9-281e-4d1b-b5ad-880dc90ef243_974x788.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:788,&quot;width&quot;:974,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:213161,&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_!5fTH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F33b60da9-281e-4d1b-b5ad-880dc90ef243_974x788.png 424w, https://substackcdn.com/image/fetch/$s_!5fTH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F33b60da9-281e-4d1b-b5ad-880dc90ef243_974x788.png 848w, https://substackcdn.com/image/fetch/$s_!5fTH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F33b60da9-281e-4d1b-b5ad-880dc90ef243_974x788.png 1272w, https://substackcdn.com/image/fetch/$s_!5fTH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F33b60da9-281e-4d1b-b5ad-880dc90ef243_974x788.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I&#8217;m always looking for little ways to use technology to improve my daily life or solve real life problems I&#8217;m facing (like <a href="https://technicallychallenged.substack.com/p/how-i-finally-tricked-myself-into">waking up early</a>). Here&#8217;s a few ways I&#8217;ve used a $30 Wyze camera (I think it was $20 when I got mine) to improve my life in small ways:</p><h2>#1 - Pest catching</h2><p>After moving into a new house, I was greeted with the presence of a mouse in my garage. I wasn&#8217;t happy about this because I had a pretty terrible experience with mice before at a previous place. When I realized there was an intruder I set up some traps that night. But after a few failed attempts at catching the little guy I remembered I had a cheap HD, motion-sensing, night-vision enabled camera at my disposal. I tried to catch mice in my garage before and having a camera this time around changed the game entirely by showing me exactly where he was traveling (for a lot of interesting trapping content check out Shawn Woods Mousetrap Monday on <a href="https://www.youtube.com/c/ShawnWoodsprimitive-archer">YouTube</a>). </p><p>I was able to dig up the original video of when I spotted the mouse. It&#8217;s kind of hard to see in the zoomed in screenshot but it was obvious with motion. He&#8217;s almost dead center (&#128561;)  and a little to the right. If you squint enough, you can see his beady little eyes glowing in the night vision infrared light. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XGS0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F1918b73b-c77a-4cb7-a6cf-50756655b13b_1167x807.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XGS0!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F1918b73b-c77a-4cb7-a6cf-50756655b13b_1167x807.png 424w, https://substackcdn.com/image/fetch/$s_!XGS0!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F1918b73b-c77a-4cb7-a6cf-50756655b13b_1167x807.png 848w, https://substackcdn.com/image/fetch/$s_!XGS0!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F1918b73b-c77a-4cb7-a6cf-50756655b13b_1167x807.png 1272w, https://substackcdn.com/image/fetch/$s_!XGS0!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F1918b73b-c77a-4cb7-a6cf-50756655b13b_1167x807.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XGS0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F1918b73b-c77a-4cb7-a6cf-50756655b13b_1167x807.png" width="1167" height="807" data-attrs="{&quot;src&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/1918b73b-c77a-4cb7-a6cf-50756655b13b_1167x807.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:807,&quot;width&quot;:1167,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:667371,&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_!XGS0!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F1918b73b-c77a-4cb7-a6cf-50756655b13b_1167x807.png 424w, https://substackcdn.com/image/fetch/$s_!XGS0!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F1918b73b-c77a-4cb7-a6cf-50756655b13b_1167x807.png 848w, https://substackcdn.com/image/fetch/$s_!XGS0!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F1918b73b-c77a-4cb7-a6cf-50756655b13b_1167x807.png 1272w, https://substackcdn.com/image/fetch/$s_!XGS0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F1918b73b-c77a-4cb7-a6cf-50756655b13b_1167x807.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><h2>#2 - Pet monitoring</h2><p>My family got an adorable puppy earlier this year and I was helping crate train her. After leaving the house for longer periods of time I wanted to be able to check up on her to see how she was doing, the camera was a god-send. Anytime my family was out of the house&#8212;at a restaurant or running errands&#8212; I was able to quickly check on her to see if she was in distress or peacefully sleeping. </p><h2>#3 - Food thief detection</h2><p>I&#8217;m not usually into child surveillance but one of my kids was struggling pretty hard with lying and this helped me gain confidence in my suspicions. After setting up the Wyze camera in my kitchen I was able to better answer questions that frequent many a young parent&#8217;s mind. <em>Why aren&#8217;t they eating their dinner? Why are they having unusual bursts of energy throughout the day?</em> Sweets! I received some interesting revelations from this experiment for sure. </p><h2>#4 - Water heater fixing</h2><p>I recently had an issue with my water heater not working but being able to use the Wyze camera has saved me many trips to the garage by placing it in front of the pilot light window. It&#8217;s also helped me troubleshoot the issue with more accuracy and confirm the status of my pending solution&#129310;&#127995;. I&#8217;ll write more on this in a longer post. If you&#8217;re interested stay tuned!</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!TQA3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F56d01d51-187f-4e03-898e-78fa8c496704_2064x1170.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!TQA3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F56d01d51-187f-4e03-898e-78fa8c496704_2064x1170.jpeg 424w, https://substackcdn.com/image/fetch/$s_!TQA3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F56d01d51-187f-4e03-898e-78fa8c496704_2064x1170.jpeg 848w, https://substackcdn.com/image/fetch/$s_!TQA3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F56d01d51-187f-4e03-898e-78fa8c496704_2064x1170.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!TQA3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F56d01d51-187f-4e03-898e-78fa8c496704_2064x1170.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!TQA3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F56d01d51-187f-4e03-898e-78fa8c496704_2064x1170.jpeg" width="1456" height="825" data-attrs="{&quot;src&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/56d01d51-187f-4e03-898e-78fa8c496704_2064x1170.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:825,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:287153,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!TQA3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F56d01d51-187f-4e03-898e-78fa8c496704_2064x1170.jpeg 424w, https://substackcdn.com/image/fetch/$s_!TQA3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F56d01d51-187f-4e03-898e-78fa8c496704_2064x1170.jpeg 848w, https://substackcdn.com/image/fetch/$s_!TQA3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F56d01d51-187f-4e03-898e-78fa8c496704_2064x1170.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!TQA3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F56d01d51-187f-4e03-898e-78fa8c496704_2064x1170.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>#5 Sourdough proofing</h2><p>I&#8217;ve been making sourdough as a hobby for a few years now (its quite a delicious hobby). And one of the things that still gets me is over-proofing. If I wait too long for the dough to rise it turns into a goopy, sticky mess and while it usually still bakes and tastes decent, it doesn&#8217;t rise the same or look very appetizing. In the summer it&#8217;s pretty hot where I live so I can usually cook bread within the same day if I leave it outside for a few hours. In order to help me not screw it up I usually set reminders on my phone, but recently I setup my Wyze camera so I could check on it periodically. That way I can make sure it hasn&#8217;t risen too high in its final rise step so the bread turns out&#128076;&#127995;. Often, with the recipe I usually make, if it gets to the 4L mark I&#8217;ve waited too long! </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vSyH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F96458804-0a2e-4e38-ae91-6e659ae712b5_2040x1148.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vSyH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F96458804-0a2e-4e38-ae91-6e659ae712b5_2040x1148.png 424w, https://substackcdn.com/image/fetch/$s_!vSyH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F96458804-0a2e-4e38-ae91-6e659ae712b5_2040x1148.png 848w, https://substackcdn.com/image/fetch/$s_!vSyH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F96458804-0a2e-4e38-ae91-6e659ae712b5_2040x1148.png 1272w, https://substackcdn.com/image/fetch/$s_!vSyH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F96458804-0a2e-4e38-ae91-6e659ae712b5_2040x1148.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vSyH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F96458804-0a2e-4e38-ae91-6e659ae712b5_2040x1148.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/96458804-0a2e-4e38-ae91-6e659ae712b5_2040x1148.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3575042,&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_!vSyH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F96458804-0a2e-4e38-ae91-6e659ae712b5_2040x1148.png 424w, https://substackcdn.com/image/fetch/$s_!vSyH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F96458804-0a2e-4e38-ae91-6e659ae712b5_2040x1148.png 848w, https://substackcdn.com/image/fetch/$s_!vSyH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F96458804-0a2e-4e38-ae91-6e659ae712b5_2040x1148.png 1272w, https://substackcdn.com/image/fetch/$s_!vSyH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F96458804-0a2e-4e38-ae91-6e659ae712b5_2040x1148.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>There you have it! A bunch of ways to use  the cheap little Wyze camera to help out with random issues around the house. Let me know if you have any other creative uses for a cheap HD camera!</p><p>-Jesse</p><p>*Nerd Bonus: I was recently looking into viable solutions for a work issue that could benefit from a live camera to help monitor something and I found out that the Wyze camera unofficially supports a <a href="https://support.wyze.com/hc/en-us/articles/360026245231-Wyze-Cam-RTSP">beta firmware</a> that you can install to view your Wyze camera over RTSP&#8230; so maybe another project will come out of that as well.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://technicallychallenged.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Technically Challenged Newsletter! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Do non-tech things, preferably physical]]></title><description><![CDATA[A lot of my day is spent in front of a computer screen and keyboard which can be tiring and straining in itself, but I&#8217;ve found having outside non-tech things to do helps me balance the screen-centered daily work.]]></description><link>https://technicallychallenged.substack.com/p/do-non-tech-things-preferably-physical</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/do-non-tech-things-preferably-physical</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Fri, 30 Sep 2022 12:00:55 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!7WlM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F8a848483-13fe-433e-9bfd-9dbba36f5fa0_1925x1164.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7WlM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F8a848483-13fe-433e-9bfd-9dbba36f5fa0_1925x1164.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7WlM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F8a848483-13fe-433e-9bfd-9dbba36f5fa0_1925x1164.jpeg 424w, https://substackcdn.com/image/fetch/$s_!7WlM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F8a848483-13fe-433e-9bfd-9dbba36f5fa0_1925x1164.jpeg 848w, https://substackcdn.com/image/fetch/$s_!7WlM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F8a848483-13fe-433e-9bfd-9dbba36f5fa0_1925x1164.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!7WlM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F8a848483-13fe-433e-9bfd-9dbba36f5fa0_1925x1164.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7WlM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F8a848483-13fe-433e-9bfd-9dbba36f5fa0_1925x1164.jpeg" width="1456" height="880" data-attrs="{&quot;src&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/8a848483-13fe-433e-9bfd-9dbba36f5fa0_1925x1164.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:880,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:312816,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!7WlM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F8a848483-13fe-433e-9bfd-9dbba36f5fa0_1925x1164.jpeg 424w, https://substackcdn.com/image/fetch/$s_!7WlM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F8a848483-13fe-433e-9bfd-9dbba36f5fa0_1925x1164.jpeg 848w, https://substackcdn.com/image/fetch/$s_!7WlM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F8a848483-13fe-433e-9bfd-9dbba36f5fa0_1925x1164.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!7WlM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F8a848483-13fe-433e-9bfd-9dbba36f5fa0_1925x1164.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>A lot of my day is spent in front of a computer screen and keyboard which can be tiring and straining in itself, but I&#8217;ve found having outside non-tech things to do helps me balance the screen-centered daily work. These outside non-screen things can also give me a break from the more brain-heavy tasks of thinking through problems and their potential solutions which also consumes a decent amount of my day. </p><p>Here&#8217;s a few things I&#8217;ve noticed that help balance things out for me a bit:</p><h2>&#129366;Making sourdough bread</h2><p>Apparently I enjoy baking sourdough bread (also a big feature in my favorite board game <a href="https://boardgamegeek.com/boardgame/31260/agricola">Agricola</a>). Sometime before the pandemic my wife bought herself a popular bread book from Tartine&#8212;and by herself I mean she bought it for me since I&#8217;m more of the baker in the house while she&#8217;s the cook(er). Since we were living in San Francisco at the time it seemed like a good place to start. The book was moderately interesting to me but I never got over the hump of actually trying to make the starter. </p><p>Around a year later I attempted to make a starter for a few weeks. I&#8217;d see signs of some activity and then after a few days it seemed to die&#129318;&#127995;&#8205;&#9794;&#65039;. I put it on hold for a while and then a friend mentioned he&#8217;d give me some starter, which worked out great. And the rest is history.</p><p>After I received the starter it took a few weeks of trial and error but I eventually got more comfortable and was making bread consistently. I guess I&#8217;ve been making bread for a few years now. The family loves it and I enjoy it. But more importantly it gives me something to take my mind off of technology and work and screens. It feels simple to a degree&#8212;tactile. It brings with it smell, taste, touch, and visual stimuli. It also forces me to slow down since it takes anywhere from 12-24hrs to get starter and dough ready. After-which it needs to be shaped,  baked, and rested. And of course eaten which is the best part. And because the temperature is so important it makes me pay extra attention to the weather inside and outside of my house depending on how quickly I want to bake it. </p><h2>&#127947;&#65039;Exercise and Lifting Weights</h2><p>I&#8217;ve also discovered that I enjoy weightlifting. I&#8217;m not much of a cardio person, but I really enjoy lifting moderate to heavy weights. Not only is this good for my body and back since I&#8217;m sitting (recently standing) or not moving much during the workday, but I&#8217;ve found it also improves my focus, energy, and overall mood. I can always tell when I haven&#8217;t been working out. I feel extra irritable, tired, and have more aches and pains. And of course it can make you feel stronger and look better  (for those significant others in your life &#128521;, or for yourself). </p><p>There&#8217;s probably a number of other things I do like fix broken things in my house, go on walks with the family, etc, but these are the main &#8220;hobbies&#8221; I seem to do most regularly. If you don&#8217;t already have some outside hobbies that are primarily physical or maybe just different than your work activities categorically, I&#8217;d highly recommend giving something new a try. Maybe one of the things I&#8217;ve mentioned here? Maybe something you&#8217;ve been wanting to try but haven&#8217;t pulled the trigger on yet. Maybe it will be energizing?</p><p>*Coincidentally as I&#8217;m writing this I realized that I&#8217;m both working out in my garage and waiting for some dough to rise so I can make some bread to celebrate a friend&#8217;s newborn baby girl!</p><p>-Jesse</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://technicallychallenged.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Technically Challenged Newsletter! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Software engineering changed my life]]></title><description><![CDATA[Switching &#8220;careers&#8221; to software engineering literally changed my life.]]></description><link>https://technicallychallenged.substack.com/p/software-engineering-changed-my-life</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/software-engineering-changed-my-life</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Sat, 24 Sep 2022 12:01:46 GMT</pubDate><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ez34!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3495d2f-c942-44d2-a130-0b324ace1d8d_786x182.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ez34!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3495d2f-c942-44d2-a130-0b324ace1d8d_786x182.png 424w, https://substackcdn.com/image/fetch/$s_!ez34!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3495d2f-c942-44d2-a130-0b324ace1d8d_786x182.png 848w, https://substackcdn.com/image/fetch/$s_!ez34!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3495d2f-c942-44d2-a130-0b324ace1d8d_786x182.png 1272w, https://substackcdn.com/image/fetch/$s_!ez34!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3495d2f-c942-44d2-a130-0b324ace1d8d_786x182.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ez34!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3495d2f-c942-44d2-a130-0b324ace1d8d_786x182.png" width="786" height="182" data-attrs="{&quot;src&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/b3495d2f-c942-44d2-a130-0b324ace1d8d_786x182.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:182,&quot;width&quot;:786,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:17939,&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_!ez34!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3495d2f-c942-44d2-a130-0b324ace1d8d_786x182.png 424w, https://substackcdn.com/image/fetch/$s_!ez34!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3495d2f-c942-44d2-a130-0b324ace1d8d_786x182.png 848w, https://substackcdn.com/image/fetch/$s_!ez34!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3495d2f-c942-44d2-a130-0b324ace1d8d_786x182.png 1272w, https://substackcdn.com/image/fetch/$s_!ez34!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3495d2f-c942-44d2-a130-0b324ace1d8d_786x182.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><p>Switching &#8220;careers&#8221; to software engineering literally changed my life. I say &#8220;careers&#8221; because it&#8217;s changed a lot more than my day job. I don&#8217;t want to sound overly dramatic, but it&#8217;s true. Here&#8217;s how it&#8217;s affected at least four areas of my life:</p><h2>Financially</h2><p>This is probably the most obvious &#8220;changed my life&#8221; point. I imagine anytime you go from not-paid-super-well to being paid much better this would be true for you as well. But it&#8217;s true, financially going from working in non-profit church-based work to a for-profit technology based startup (or more established company) really can improve your financial situation. It sure did for me. The ability to work remote as a software engineer in general combined with the push for remote work specifically during the pandemic also allowed me to buy my first home, which was a huge deal for my family, and our financial stability.</p><h2>Personally</h2><p>My day-to-day work is usually doing things that I enjoy. I love learning new things, understanding how things work, and solving problems. And now I literally get paid to do that. Of course there&#8217;s other things I need to do here and there like administrative things, write Jira tickets (to track bugs or features), write documentation, help unblock other team members, but by and large the types of things I do daily are things I enjoy and it&#8217;s likely why the switch was really good for me personally. It&#8217;s got to be pretty obvious because my wife regularly tells me that she has never seem me happier. Thanks babe! &#128521;</p><h2>In Confidence</h2><p>The previous two reasons were more expected I suppose since I&#8217;ve always liked computers and troubleshooting things in general, and people have told me that Software Engineering paid well. So I guess those would be more obvious. But the more surprising benefit is that I&#8217;ve noticed my confidence start to blossom.</p><p>As I think about it, a growth in confidence makes sense. If I&#8217;m good at working with computers, troubleshooting technology, programming, designing systems, and solving real problems for my users and/or coworkers, and if I also enjoy it, then my confidence should rise somewhat proportionally. I remember previous jobs where I wasn&#8217;t working in my strengths.</p><ol><li><p>I used to do sales at a cellphone company. The commission was decent and it helped me get through college. I really enjoyed the technology part and helping customers with their new phones and tablets, but the sales part was the death of me. I can&#8217;t help but tell people the truth, especially when I don&#8217;t think buying something is a good idea or isn&#8217;t needed, or if the product is trash. I probably got more sales because of my honesty in this area. But definitely not a strength of mine.</p></li><li><p>I also worked in music and performance, leading bands and performing live with guitar and singing. The singing and performance part in particular aren&#8217;t in my strengths. I can lead bands from a technical and efficiency prospective but I&#8217;m not a performer. Can I &#8220;perform&#8221; to a degree? Yes, but it&#8217;s not in my strengths and it doesn&#8217;t bring me the deepest joy daily.</p></li></ol><h2>In Creativity</h2><p>Another interesting side effect for me has been the jolt in creativity. When I was younger I didn&#8217;t really think of myself as a creative, but after making a bunch of random things, writing guitar riffs and piano loops, creating my own apps, and always being able to brainstorm ways to solve lots of different problems I&#8217;ve realized that I <em>am</em> creative and it&#8217;s really starting to reveal itself. This newsletter is an unexpected result of the creative juices flowing after switching to software engineering somewhat later in life.</p><p>I&#8217;ve also started a <a href="https://www.youtube.com/channel/UCUL8hNSz4tSvCpbUhnjVGtQ">YouTube channel</a> which will probably be more programming-specific for the foreseeable future&#8230; (if you&#8217;re in to that kind of thing check it out).</p><p>And hopefully very soon I&#8217;ll be finishing up a v1 of a water tracking app to help people keep track of their daily water intake made entirely in <a href="https://developer.apple.com/xcode/swiftui/">SwiftUI</a> (Apple&#8217;s newest technology designed in-house to make it easier to build apps for their devices). I&#8217;ll share my learnings from the whole experience of building my first iOS app as well as the back story of how it was really supposed to be a weight lifting app in a followup blog.</p><p>-Jesse</p><p>*If you&#8217;re interesting in learning programming or know someone who is, consider sharing this blog with them or my YouTube channel. I&#8217;ll be posting more content on how to learn programming to YouTube very soon. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://technicallychallenged.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Technically Challenged Newsletter! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Notion can almost replace Apple Notes]]></title><description><![CDATA[I have to admit that I&#8217;m surprised how much I like Notion, I can&#8217;t remember why I started to use it last year but there&#8217;s a certain type of workflow that I&#8217;ve found I absolutely love Notion for.]]></description><link>https://technicallychallenged.substack.com/p/notion-can-almost-replace-apple-notes</link><guid isPermaLink="false">https://technicallychallenged.substack.com/p/notion-can-almost-replace-apple-notes</guid><dc:creator><![CDATA[Jesse]]></dc:creator><pubDate>Fri, 23 Sep 2022 01:00:33 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Yt2K!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fff570958-8113-4d34-b819-015a3efe5a72_512x512.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><br>I have to admit that I&#8217;m surprised how much I like <a href="http://notion.so">Notion</a>, I can&#8217;t remember why I started to use it last year but there&#8217;s a certain type of workflow that I&#8217;ve found I absolutely love Notion for.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Yt2K!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fff570958-8113-4d34-b819-015a3efe5a72_512x512.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Yt2K!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fff570958-8113-4d34-b819-015a3efe5a72_512x512.png 424w, https://substackcdn.com/image/fetch/$s_!Yt2K!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fff570958-8113-4d34-b819-015a3efe5a72_512x512.png 848w, https://substackcdn.com/image/fetch/$s_!Yt2K!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fff570958-8113-4d34-b819-015a3efe5a72_512x512.png 1272w, https://substackcdn.com/image/fetch/$s_!Yt2K!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fff570958-8113-4d34-b819-015a3efe5a72_512x512.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Yt2K!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fff570958-8113-4d34-b819-015a3efe5a72_512x512.png" width="512" height="512" data-attrs="{&quot;src&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/ff570958-8113-4d34-b819-015a3efe5a72_512x512.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:512,&quot;width&quot;:512,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:11406,&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_!Yt2K!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fff570958-8113-4d34-b819-015a3efe5a72_512x512.png 424w, https://substackcdn.com/image/fetch/$s_!Yt2K!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fff570958-8113-4d34-b819-015a3efe5a72_512x512.png 848w, https://substackcdn.com/image/fetch/$s_!Yt2K!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fff570958-8113-4d34-b819-015a3efe5a72_512x512.png 1272w, https://substackcdn.com/image/fetch/$s_!Yt2K!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fff570958-8113-4d34-b819-015a3efe5a72_512x512.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>Notion is what I always dreamed Evernote, or Dropbox, or the Apple Notes app could be (I&#8217;m a big fan of Apple Notes by the way).</p><p>Ironically my work tried it a few years ago as a replacement for Jira and project management and we all hated it. But fast forward to sometime last year I decided to try it for some personal note taking and thought organizing. I used it for one type of note-taking and it did really well, and now I&#8217;ve started to add other categories to it. The current type of note-taking I&#8217;ve been using it for is writing these blogs. Sometimes it&#8217;s just the idea for the title, other times it&#8217;s the entire rough draft, or final version. I am very pleased with the flow so far.</p><p>But I do have one fear: <a href="https://killedbygoogle.com/">Killed by Google</a>. Remember free photo storage for life? <a href="https://www.pcmag.com/news/google-is-killing-free-unlimited-photo-storage-7-alternatives">Not anymore</a>. Like others that have gone before it, Notion could change its policy, or go out of business, or be acquired and then my amazing free tier experience is gone. Why not just pay a monthly user fee? For something like Notion I just might actually. The other note platforms haven&#8217;t been able to deliver what I&#8217;ve been experiencing with Notion. Here&#8217;s my current Pros &amp; Cons list:</p><h2>Pro #1: Shortcuts and things</h2><p>Adding different types of heading levels or different types of resources is as easy as typing a forward slash &#8220;/&#8221; and then typing the thing you want to add. If Apple Notes had this I would love it. But Notion goes about and beyond with their concept of Pages where you can create instant link to a completely new document and start editing that document right away. This is great for quick placeholders or organized brain-dumping.</p><h2>Pro #2: Reliable sync</h2><p>This is really important when you&#8217;re working from multiple devices. Currently I switch between my iPhone, my laptop, and my iPad. Notion&#8217;s sync functionality has worked great whether I&#8217;m using the native app on my phone or iPad, or whether I&#8217;m using the web browser version on my laptop. &#128076;&#127995;</p><p>Related to sync is offline mode. Offline mode I when you&#8217;re working with an iPhone or iPad on a native app and your app loses connection to the internet so it unable to save your data immediately when you write it. This is pretty common while traveling on a plane, train, or bus, or if you just hit a bad service area while on the go. So far my experience with offline mode has been solid meaning I have yet to lose any work. Whenever I see offline mode I always get a little nervous because the syncing process always has potential for data loss.</p><h2>Pro #3: Generous sharing policy</h2><p>Services like Notion often limit sharing with other users or guests to a paid feature but Notion allows this with the free plan and it&#8217;s really smart. If you like the app share it, if you really like it, share it use it and upgrade for more features.</p><p>Now it&#8217;s not complete perfection so here&#8217;s a few cons I&#8217;ve experienced using it the last year or so.</p><h2>Con #1: New things to learn</h2><p>Still have to learn a new platform, new shortcuts, and a new workflow. This is not anything new, but if you&#8217;re used to one note-taking platform you might like the way it works or know it&#8217;s shortcuts and that&#8217;s always a potential barrier. Notion has A LOT of functionality. But the nice thing is you don&#8217;t have to use fancy things like Tables, Toggle Lists, or Databases (that&#8217;s right it has databases built into it that you an add at will&#8212;serious power user stuff here). You can just use basic headings and pages like I do and it adds a ton of value to my daily workflow.</p><h2>Con #2: Moving Blocks/Drag and drop</h2><p>Notion works with blocks. So a paragraph of text is treated as a &#8220;block&#8221; or &#8220;object&#8221; that can be moved independently. This is awesome for users to move things around, delete things, etc. But I&#8217;ve had some odd drag and drop experiences. Selecting text has been a little inconsistent, as well as trying to select all text in a document.</p><h2>Con #3: Undo is finicky</h2><p>I&#8217;ve lost some work with the undo feature. It&#8217;s not perfect but usually works pretty well for me. Because Notion works with &#8220;blocks&#8221; as I mentioned above I think they bypass the normal undo &#8220;tree&#8221; which is not an easy problem to solve. Nevertheless this has been pretty rare so I will just mention it but not harp on it.</p><p>Overall I&#8217;m pretty impressed with how Notion has fit into my workflow and opened up new creative ways for me to organize thoughts, writing, links, etc.</p><p>Will Notion replace Apple Notes for me? I don&#8217;t think so. Apple has a pretty solid app and they continue to add useful features, so I think it will continue to have a place in my daily life for the foreseeable future. Also, if Notion does disappear I don&#8217;t see that happening to Apple Notes anytime soon!</p><p>Let me know your experience with Notion if you&#8217;ve used it before!</p><p>-Jesse</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://technicallychallenged.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Technically Challenged Newsletter! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item></channel></rss>