<?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:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Alan Colver on Medium]]></title>
        <description><![CDATA[Stories by Alan Colver on Medium]]></description>
        <link>https://medium.com/@acolve?source=rss-3b0d4a03f9b5------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*yHoEv0q8y5xakM7bjCfAVQ.jpeg</url>
            <title>Stories by Alan Colver on Medium</title>
            <link>https://medium.com/@acolve?source=rss-3b0d4a03f9b5------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sat, 14 Nov 2026 23:21:40 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@acolve/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[How to stop “Vibe Coding” and get your AI to actually understand your project.]]></title>
            <link>https://medium.com/@acolve/how-to-stop-vibe-coding-and-get-your-ai-to-actually-understand-your-project-24ae35d7833c?source=rss-3b0d4a03f9b5------2</link>
            <guid isPermaLink="false">https://medium.com/p/24ae35d7833c</guid>
            <category><![CDATA[ai]]></category>
            <category><![CDATA[philosophy]]></category>
            <category><![CDATA[vibe-coding]]></category>
            <category><![CDATA[coding]]></category>
            <dc:creator><![CDATA[Alan Colver]]></dc:creator>
            <pubDate>Wed, 19 Nov 2025 03:37:38 GMT</pubDate>
            <atom:updated>2025-11-19T03:37:38.037Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*x9bNLjZv9tKZrt_B" /><figcaption>Photo by <a href="https://unsplash.com/@resumegenius?utm_source=medium&amp;utm_medium=referral">Resume Genius</a> on <a href="https://unsplash.com/?utm_source=medium&amp;utm_medium=referral">Unsplash</a></figcaption></figure><h3>The Problem: “Vibe Coding”</h3><p>Most developers currently use AI by just typing a quick request like “fix this button.” This is called “<strong>Vibe Coding</strong>.”</p><ul><li><strong>The issue:</strong> The AI guesses what you want based on limited information. It doesn’t know your long-term goals, your security rules, or <em>why</em> you are building this feature.</li><li><strong>The result:</strong> The AI writes code that works right now but might break things later or fail to match your company’s style.</li></ul><h3>The Solution: “Deep Context”</h3><p>The <a href="https://github.com/telos-framework/init">Telos Framework</a> fixes this by giving the AI a “brain” (or a constitution) for your project. It forces the AI to check your goals before it writes a single line of code.</p><p>Think of a standard company structure: you have strategic executives setting the vision, product managers defining features, and engineers handling the details. Telos mimics this structure for your AI. It establishes a <strong>9-Level Hierarchy</strong> where information flows from the top (L9: Purpose/Mission) down to the bottom (L1: Syntax/Code).</p><p>It establishes this bi-directional flow in nine levels, with the top being the “why” gradually flowing downwards to the “how”.</p><h3>How the framework functions</h3><p>When you run thenpx telos-framework init command in your project, the wizard will discover your project and make intelligent inferences about your project’s goals and structures. You’re encouraged to talk with it too. Once it has a good grasp of your goals and current assets, the telos framework builds the following files:</p><ol><li><strong>Context Files (</strong><strong>TELOS.md):</strong> A file where you write down the &quot;Mission&quot; (what we are doing) and &quot;Strategy&quot; (how we are doing it).</li><li><strong>Agent Rules (</strong><strong>AGENTS.md or </strong><strong>CLAUDE.MD):</strong> A rulebook for the AI. (e.g., &quot;Always use TypeScript,&quot; &quot;Never leave hardcoded passwords&quot;). It respects your existing files and merges in its commands.</li><li><strong>The 9-Level Hierarchy:</strong> The framework organizes the AI’s thinking into 9 levels (L1–L9), ensuring it connects the big picture (L9: Purpose) to the tiny details (L1: Syntax/Code).</li></ol><h3>The Workflow: Spec-Driven Development (SDD)</h3><p>Instead of “Chat -&gt; Code,” the workflow becomes “Plan -&gt; Code.”</p><ol><li><strong>Proposal:</strong> You tell the AI your intent on what you’d like to build and use the added /telos-validate commands</li><li><strong>Review:</strong> The AI will then leverage the telos framework to ensure the intent aligns with strategic goals, measurable outcomes, and practical abillity to implement</li><li><strong>Build:</strong> Once you approve the plan, the AI builds it exactly as described.</li></ol><p>While the tool itself is a technical utility — installing slash commands, generating Markdown files, and configuring MCP servers — its value lies in the methodology it enforces. It compels developers to define <em>what</em> matters before asking an AI to build it. In doing so, it paves the way for a future where software is built faster, with greater alignment, and with a permanent, audit-able history of intent. The init command is more than a setup script; it is a declaration of intent. It signifies the transition of a codebase from a passive collection of files to an active, self-describing entity capable of collaborating with AI coding agents.</p><p>Check it out, and feel free to share feedback: <a href="https://github.com/telos-framework/init">https://github.com/telos-framework/init</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=24ae35d7833c" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Juggling Google Cloud Projects Like a Pro]]></title>
            <link>https://medium.com/google-cloud/juggling-google-cloud-projects-like-a-pro-52657f44baac?source=rss-3b0d4a03f9b5------2</link>
            <guid isPermaLink="false">https://medium.com/p/52657f44baac</guid>
            <category><![CDATA[gcloud-commands]]></category>
            <category><![CDATA[google-cloud-platform]]></category>
            <category><![CDATA[direnv]]></category>
            <category><![CDATA[development]]></category>
            <category><![CDATA[linux]]></category>
            <dc:creator><![CDATA[Alan Colver]]></dc:creator>
            <pubDate>Mon, 10 Mar 2025 14:29:23 GMT</pubDate>
            <atom:updated>2025-03-10T15:16:02.750Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*DqOqbHHv7ACK1o9EJ_Q4eg.jpeg" /><figcaption>Generated by Imagen 3</figcaption></figure><h3><strong>Reduce the Friction of Multiple Cloud Profiles</strong></h3><p>If you’re like many cloud developers today, you’re probably working across multiple Google Cloud organizations — maybe you have one for your day job, another for a consulting gig, and perhaps even a personal or school organization. Each of these likely has different email accounts, varying levels of permissions, and multiple projects within them.</p><p>If you’re manually switching between these, you’ve probably typed gcloud config set project and gcloud auth application-default login more times than you’ve had coffee today. It’s a productivity killer, and let’s be honest — we’ve all accidentally deployed to the wrong project with the wrong credentials at least once (I’m not the only one, right?).</p><h3><strong>Enter direnv: Your Cloud Configuration Butler</strong></h3><p>Meet <a href="https://direnv.net/">direnv</a> (for Mac and Linux), the magical tool that makes your shell environment adapt faster than you can say “wrong organization”. Here’s how to make it work with Google Cloud:</p><p>1. First, create a .envrc file in your project directory:</p><pre># .envrc<br>export GOOGLE_APPLICATION_CREDENTIALS=~/.config/gcloud/work-admin-account.json<br>export CLOUDSDK_ACTIVE_CONFIG_NAME=work-admin-config</pre><p><strong>Note</strong>: direnv will load parent .envrc files if they exist. So you can have a single .envrc file at the top of your work projects that defines the application credentials and the children will only need to specify the active configuration.</p><p>2. Allow direnv to work its magic:</p><pre>direnv allow</pre><p><strong>Note</strong>: As a security feature, direnv requires you to explicitly reauthorize any changes to your .envrc file. If the file is modified, direnv will stop loading it until you run direnv allow again. This prevents malicious scripts from sneaking in environment changes without your knowledge.</p><h3><strong>A Note about Source Control</strong></h3><p>You <em>can</em> add your .envrc file to source control since it only contains <em>references</em> to your credentials and configuration files. Your credentials and configuration files should <strong>not</strong> be added to source control. If you do this and you are working on a project with a team, make sure you share common naming of your configuration and credential files.</p><h3><strong>Setting Up Your gcloud Configurations</strong></h3><p>Before our direnv magic works, we need to set up our <a href="https://cloud.google.com/sdk/docs/configurations">gcloud configurations</a>. Think of these as preset profiles for your different cloud identities:</p><pre># Create a new configuration<br>gcloud config configurations create work-admin-config<br># Set it up with your organization details<br>gcloud config set project my-project-id<br>gcloud config set compute/zone us-central1-a<br>gcloud config set compute/region us-central1</pre><p>Here’s what a typical configuration looks like (with the placeholders):</p><pre>[core]<br>account = work-admin@company.com<br>project = primary-project-id<br>[compute]<br>zone = your-preferred-zone<br>region = your-preferred-region<br>[billing]<br>quota_project = primary-project-id</pre><p><strong>Note</strong>: You can manually edit these configuration files in ~/.config/gcloud/configurations/config_[config_name], where [config_name] is the name of the configuration you created.</p><h3><strong>The Secret Sauce: Organized Credentials</strong></h3><p>Here’s where things get interesting. When you run gcloud auth application-default login, Google Cloud saves your credentials in a single file: application_default_credentials.json. The catch? Each time you authenticate with a different account, it overwrites this file. This means you can’t easily switch between your work account, personal account, and consulting account credentials.</p><p>The solution? Rename these files to match your accounts:</p><pre># After authenticating with each account, rename the credentials file<br>gcloud auth application-default login # Authenticate with your work account<br>mv ~/.config/gcloud/application_default_credentials.json ~/.config/gcloud/work-admin-account.json<br>gcloud auth application-default login # Authenticate with your personal account<br>mv ~/.config/gcloud/application_default_credentials.json ~/.config/gcloud/personal-account.json<br>gcloud auth application-default login # Authenticate with your consulting account<br>mv ~/.config/gcloud/application_default_credentials.json ~/.config/gcloud/consulting-account.json</pre><p>Now your .envrc files can point to the exact account credentials you need!</p><h3><strong>Putting It All Together</strong></h3><p>Here’s how your project structure might look:</p><pre>~/projects/<br>├── work/<br>│ ├── .envrc # Points to work-admin-account.json<br>│ ├── work-project-1/<br>│ │ ├── .envrc # Points to work-project-1 config<br>│ ├── work-project-2/<br>│ │ ├── .envrc # Points to work-project-2 config<br>├── other-projects/<br>│ ├── personal-project/<br>│ │ ├── .envrc # Points to personal-account.json and personal-project config<br>└── |── consulting-project/<br>├── .envrc # Points to consulting-account.json and consulting-project config</pre><p>Now when you cd into any project directory, direnv automatically switches your Google Cloud configuration and credentials. It’s like having a personal assistant who knows exactly which organization and account you need to use!</p><h3><strong>The Grand Finale</strong></h3><p>With this setup, you can bounce between organizations and projects without missing a beat. No more accidental deployments with the wrong credentials, no more “oops, wrong organization” moments, and definitely no more credential juggling.</p><p>Remember: Work smarter, not harder — let your tools do the heavy lifting while you focus on building awesome things!</p><p>Happy clouding!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=52657f44baac" width="1" height="1" alt=""><hr><p><a href="https://medium.com/google-cloud/juggling-google-cloud-projects-like-a-pro-52657f44baac">Juggling Google Cloud Projects Like a Pro</a> was originally published in <a href="https://medium.com/google-cloud">Google Cloud - Community</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Accelerate Grant Funding with Generative AI]]></title>
            <link>https://medium.com/@acolve/accelerate-grant-funding-with-generative-ai-50284d9d7886?source=rss-3b0d4a03f9b5------2</link>
            <guid isPermaLink="false">https://medium.com/p/50284d9d7886</guid>
            <category><![CDATA[grant]]></category>
            <category><![CDATA[university]]></category>
            <category><![CDATA[machine-learning]]></category>
            <category><![CDATA[generative-ai-tools]]></category>
            <category><![CDATA[research]]></category>
            <dc:creator><![CDATA[Alan Colver]]></dc:creator>
            <pubDate>Tue, 27 Aug 2024 20:55:38 GMT</pubDate>
            <atom:updated>2024-08-27T20:56:27.197Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*dqyhoC8wUuLqSMbb" /></figure><p>Securing grant funding is critical for research institutions to continue operations and make technical advancements. However, crafting a winning application response is not a trivial effort.</p><p>Creating a compelling application<a href="https://www.niaid.nih.gov/grants-contracts/timelines-plan-write"> can take months</a>. It involves understanding the scientific research landscape (to ensure new contributions), writing a response to meet the application requirements, several rounds of reviews, ensuring accurate citations, and more. This is valuable time that a researcher would rather spend… researching!</p><p>Additionally, the success rate of grant applications has declined over time as more applications have been submitted per grant (<a href="https://report.nih.gov/nihdatabook/category/10">source</a>). This is a competitive landscape, wherein those who maintain the status quo will fall behind.</p><p>Working at Google Public Sector’s Rapid Innovation Team, I’ve had the opportunity to explore this problem and innovate on potential applications of generative AI to address these problems. Our team works closely with customers to rapidly experiment and develop demos and prototypes that show the art-of-the-possible.</p><p>The next sections will highlight several of the approaches we took.</p><h3>Funding Opportunity / Grant Search</h3><p>The most obvious time-wasters we observed is trying to find the grants that the researcher was most likely to win. Many grants are not relevant at all, and some only moderately so; these actually distract the researcher from investing their efforts in the best grant matches.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4y0jVw_MZxjN5jQByBhtYw.png" /><figcaption>Leveraging generative AI to find relevant grants and generate draft applications</figcaption></figure><ol><li><strong>Get the data: </strong>This can include data from APIs, web scraping, or internal databases</li><li><strong>Create a vector search</strong>: Modern gen AI can capture the semantic meaning of text in a high-dimensional space called an “embedding.” So we converted the text from the grant into an embedding space and built a search UI on top of that with <a href="https://cloud.google.com/vertex-ai/docs/vector-search/overview">Vector Search</a>. Researchers leverage this powerful search and get results that show the relevancy score. With traditional searches, if you add too much in the search you get little/no results. With Vector Search, the more data the researcher uses to search (e.g. their previous publications or their new research proposal), the better the results. We can also infuse the search with the researcher’s backgrounds, past publications, and interests to further tailor the available grants.</li><li><strong>Generate draft response</strong>: Taking into account the researcher’s background, their new proposal, and the grant requirements, we leverage Gemini to quickly create a draft response. This draft can serve as a basis to add more content, citations, and reviews.</li></ol><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*h4YqOvv0_vIEgXbvYnI55g.gif" /><figcaption>Draft application response via Gemini (combining researcher’s proposal, profile, and grant information)</figcaption></figure><p>We are also hearing universities and researchers say that they want the ability to find collaborators for a given grant. This could be done by loading the collaborators’ profiles into a vector embedding and doing a search on this dataset. And by giving the researcher ability to control the prompt they can influence the result by passing it more search criteria; for example, they may want a collaborator with a specific background or access to equipment.</p><h3>Publication Review</h3><p>Keeping up to date with all the published literature is a daunting (if not impossible) task. Reading a single article can take hours. With Gemini we can have it read the articles for us, summarize them, and tell them if they are relevant to our area of research.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*42k1RCcHGu0FicCH" /><figcaption>Analyzing publications to determine relevancy</figcaption></figure><ol><li>We first loaded many articles into Cloud Storage</li><li>When the user requests a summarization we load the article</li><li>The article content is injected into the prompt</li><li>Gemini then uses its multi-modal capabilities to understand the document and provide us a summarization and tell us if the article is relevant to our research</li></ol><p>This works great on an article-by-article basis, but we can even scale this up to analyze thousands of articles and find the subset of most relevant ones for us.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*ytRngJVErV3DWzXq" /><figcaption>Generative AI summarizing a research paper</figcaption></figure><p>Gemini also provides us with “Safety Ratings” that we can use to determine if we want to show the results to our end users.</p><p>Additional information about analyzing scientific literature can be found in<a href="https://www.youtube.com/watch?v=sPiOP_CB54A"> this video</a>.</p><h3>Conclusion</h3><p>Google is committed to responsible AI. Accordingly, all the above mentioned technology runs in the customer’s own Google Cloud project. No one, but you, can read the data. Your data is your own, and Google is committed to securing it. Google does not use enterprise customer data to train its models.</p><p>We are working closely with researchers and Google Cloud partners to iteratively enhance the grant process. We are rapidly seeing how Google’s industry-leading generative AI can help researchers secure funding. If you have use cases or ideas, please let us know.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=50284d9d7886" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How I taught my 4-year old to ride a bike in 7 minutes]]></title>
            <link>https://medium.com/@acolve/how-i-taught-my-4-year-old-to-ride-a-bike-in-7-minutes-4874c8c39979?source=rss-3b0d4a03f9b5------2</link>
            <guid isPermaLink="false">https://medium.com/p/4874c8c39979</guid>
            <category><![CDATA[bikes]]></category>
            <category><![CDATA[parenting]]></category>
            <category><![CDATA[education]]></category>
            <category><![CDATA[tutorial]]></category>
            <category><![CDATA[kids]]></category>
            <dc:creator><![CDATA[Alan Colver]]></dc:creator>
            <pubDate>Tue, 25 Sep 2018 04:29:41 GMT</pubDate>
            <atom:updated>2018-09-25T04:29:41.712Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*jF-SjLhQKQAVveuv5ZxwMw.jpeg" /></figure><p>Seriously, 7 minutes. That is all the time I had to put in until my 4-and-half year old son could ride a bike.</p><p>With training wheels gone, he was pedaling around the sidewalk all by himself. He was elated with his new accomplishment (rightfully so), and I was too at the prospect of hitting this milestone with minimal effort.</p><p>I found this technique by chance, but it worked. The fundamentals are sound, and the results were phenomenal.</p><h3>The Process</h3><p>80% of riding a bike is balancing. This is learned in two ways. First, <strong>balance</strong>: acquiring the motor skills to shift your weight to avoid toppling over. And second, <strong>pedaling</strong>:<strong> </strong>mastering the forward locomotion (that makes balancing easier too). The most common mistake that parents make is trying to teach both of these at the same time.</p><p>The key to success is to teach these two phases separately.</p><p>After the child has mastered both balancing and pedaling, you will help him/her combine them effortlessly. This step took 5 minutes of effort from me (the remaining 2 minutes were in the pedaling phase, mentioned below). The bulk of my child’s progress came from having the right equipment and letting him practice.</p><h3>Step 1: The motor skill of balance</h3><p>The old adage that it’s “like riding a bike” is referencing motor skills, that once learned, are not forgotten. These are skills that can be taught only through experience.</p><p>To most effectively learn a skill, it’s important to have focused practice. The most effective way that I know for children to learn to balance on a bike is with a “strider” or “balance bike”. If you’ve been around kids for the last couple years, you’ve probably seen them; they’re becoming quite popular.</p><p>These are small bikes that have no pedals. The child’s feet should be able to touch the ground. This allows the child to start riding with no obstacles such as being able to get on a tall bike, operating the brakes, pedaling, etc. This allows your child to focus solely on balance.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*P6q345tsq8roHgHGAy1JSQ.jpeg" /><figcaption>Step 1: Mastering balance</figcaption></figure><p>The optimal time to start training on a balance bike is between 2 to 3 years old. My son was about 2 and half when he started. In the spring we got him a balance bike. He had seen cousins and neighborhood kids riding these, so he knew exactly what to do. He hopped on and began shuffling around.</p><p>After several months of this he had progressed from merely walking about with the balance bike beneath him to doing long distance strides. He had begun to master balance. I spent no time teaching him how to ride the balance bike, and he absolutely loved it.</p><p>Now don’t get me wrong: I spend time with my son while he rides his bike. We take him to the park, or I ride my bike along side him. What’s important to get straight is that I spent no time in the standard way parents teach their kids to ride bikes: backs painfully arched over for extended periods of time while they scuttle behind their children assisting them. Luckily, that form of back-breaking work is not required.</p><p>We chose <a href="https://amzn.to/2xOxvwg">this budget bike</a> for him, and it worked well, but if I did it again, I would pick one that was a bit bigger (<a href="https://amzn.to/2OQEXOy">like this one</a>), so it would fit my child longer.</p><h3>Step 2: Pedaling</h3><p>Pedaling is the 2nd fundamental skill for your child to master.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*MM3uAd_VzOKkHW3g5smZJQ.jpeg" /><figcaption>Step 2: Mastering pedaling</figcaption></figure><p>Again, focused practice will be key in teaching this. Remove all other distractions. Pick a flat/level location to remove the complexity of braking or sliding backwards. Take your child to a location with lots of space and virtually no cars (I find church parking lots to work well). And finally, we need to remove the element of balance; this is where training wheels come in.</p><p>To effectively teach your child to pedal, it’s crucial to have the right bike. Luckily, if you understand the criteria, there are plenty of affordable options.</p><p>The most important aspect is the height of the bike. It’s important that your child can get on the bike by him/herself, but that it’s also high enough that their feet don’t reach the ground when riding (a few inches up will do). They need to become comfortable with pedaling as the new mechanism for balance. <a href="https://amzn.to/2xOxLve">Bikes with 16-inch wheels</a> worked well for my son. He’s quite a bit taller, so check out <a href="https://amzn.to/2QUxj7c">14-inch bikes</a> too. Make sure the height of the seat is adjustable. This will allow it to fit your child now and as they grow.</p><p>Finally, make sure it has training wheels. Pretty obvious, right? This is important because it will allow your child to focus entirely on learning to pedal (as the the training wheels take care of balancing).</p><p>We entered this phase soon after my son turned 4-years old. It was important to me to find somewhere for my child to practice that I also enjoyed being. The goal here is for your child to learn this skill and for you to enjoy that time too. I personally enjoy riding my bike, so I rode along with my son in the church parking lots and on the sidewalks. I also let him ride around the sidewalk in front of our home while I read e-books.</p><p>After a few months, he was confidently pedaling back and forth. I spent a total of 2 minutes of hands-on training with him. He only needed some assistance and confidence on getting on the bike. Everything else was him practicing over time.</p><h3>Step 3: Combining</h3><p>The final step is combining balance and pedaling, which, essentially, is riding a bike. The other aspects like turning, braking, bike safety, etc are easily taught or are mastered while learning to balance and pedal.</p><p>This stage happened when my son was 4 and half, and it took only 5 minutes of coaching from me.</p><p>It happened when visiting my brother and his family. My son saw his 8-year old, role-model cousin riding a bike, which inspired my son to try it. Fortunately, my brother owned a <a href="https://amzn.to/2Du2d3M">kid’s pedal bike</a> that had a handle behind the seat for a parent to hold on to while their kid rode. I encouraged my son to give it a try, and I promised him that I wouldn’t let him fall while he rode. He hopped on, I grabbed the handle, and he started pedaling. He was very nervous. I soon found that I could hold my son’s arm instead of the handle; this provided the needed assurance to my son that I was there for him.</p><p>He started down the sidewalk with me holding his arm. About 20 seconds in, I tried letting go while still remaining nearby. He panicked and stopped. We tried a second time after I again promised I would not let him fall. This time when I let go, an amazing thing happened: he kept going… and going… and going. When he realized what was happening he was both euphoric and terrified. I told him “pedal! pedal!”, and as he did, he easily maintained his balance. It wasn’t until we reached the end of the sidewalk that I had to help him with the turn.</p><p>High-fives were in order. My son was ecstatic. I was ecstatic. How could this have happened already? Wasn’t this supposed to take months? years? Not with the fundamentals already mastered. We turned around and headed back. He did the entire 500 ft sidewalk without any assistance. Incredible.</p><p>I’ve now got my current 2-year old (different kid) on this deliberate learning schedule. He’s riding my first son’s balance bike and beginning to master balance. And apart from constantly having to remind him to not go in the street, I’ve done no coaching. Will he also prove to require minimal hands-on training? His trajectory is appearing that way, and I’ll update this post as he moves to the later phases.</p><p>It took me some time to piece together why my oldest son had been so successful. Frankly, I got lucky. I stumbled upon this method, but from a hindsight perspective, it all seems so simple: balance, pedal, combine. This methodology, with the right equipment, allows the child to learn the core concepts in isolation, and once proficient, to combine them with stunning results.</p><h4>Schedule</h4><p>Ages 2/2.5–3.5/4 Balance: strider/balance bike<br>Ages 3.5/4–4.5/5 Pedaling: kid’s bike with training wheels<br>Ages 4.5/5 Combining: kid’s bike with training wheels removed</p><h4>Other notes</h4><p>Make sure you keep a sharp eye on your child while they practice. Watch out for cars backing up from driveways and ensure your child doesn’t go in the street. Also, make sure your child wears a <a href="https://amzn.to/2OOMz4h">helmet</a> from day one. This is an important habit to learn early.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=4874c8c39979" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>