know where to find the right answer</i> (e.g., Google).</p><div id="8854"><pre><span class="hljs-attribute">Stage</span> <span class="hljs-number">3</span> (mid-level): You know that you know</pre></div><p id="7b2b">With enough practice (e.g., 1000 hours), you will find yourself in <b>stage three</b> <b><i>where you know that you know</i></b>. <i>This is the goal for these courses</i>. When you are a Mid-Level, you Google less and less for the answers; thus you become a faster and more confident coder.</p><div id="f02e"><pre>Stage <span class="hljs-number">4</span> (seniors): You don<span class="hljs-comment">'t know that you know</span></pre></div><p id="a5bd">With enough experience (e.g., 2 years), you will find yourself in the <b>fourth and final stage</b> <b><i>where you don’t know that you know</i></b>. <i>You have such a great intuition</i> from all your years of coding that you are able to <i>learn new things faster and faster</i>. This is the stuff of Seniors and Rockstar Engineers.</p><div id="5b5f"><pre><span class="hljs-keyword">Mid</span>-Level: What <span class="hljs-built_in">and</span> How
<span class="hljs-symbol">Senior:</span> Why <span class="hljs-built_in">and</span> <span class="hljs-keyword">When</span></pre></div><p id="eacb">Another difference between a Mid-Level and a Senior is that a Mid-Level may know <b>what to do</b> and <b>how to do it</b>, but not necessarily know <b>why</b> or <b>when</b> to do it. Unfortunately, this is very difficult to teach because it’s not black and white. Paradoxically, <i>it will come naturally with enough hands-on experience</i>.</p><figure id="0882"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/1*P__UhgZHVbFnJQJ8W0IN1A.png"><figcaption>The Learning Curve</figcaption></figure><p id="eaef">These <b>four stages</b> can be visualized as a <b>learning curve</b>. To summarize, in <b>stage one</b> <i>where we don’t know that we don’t know</i>, ignorance is indeed <b><i>blissful</i></b>. And when we begin to <i>know that we don’t know </i>in <b>stage two</b>, it can be a tough <b><i>uphill</i></b> battle. And sadly many people quit at this stage. When things are difficult, keep in mind that there is a <b><i>plateau</i></b> that exists in <b>stage three</b>. When we keep at it for long enough, the intuition we develop will make learning <b><i>effortless</i></b> in <b>stage four</b>.</p><div id="d2e4"><pre><span class="hljs-attribute">Learning Curve</span><span class="hljs-punctuation">:</span>
<span class="hljs-attribute">Stage 1</span><span class="hljs-punctuation">:</span> <span class="hljs-string">Ignorance may be blissful</span>
<span class="hljs-attribute">Stage 2</span><span class="hljs-punctuation">:</span> <span class="hljs-string">Uphill battle</span>
<span class="hljs-attribute">Stage 3</span><span class="hljs-punctuation">:</span> <span class="hljs-string">Plateau</span>
<span class="hljs-attribute">Stage 4</span><span class="hljs-punctuation">:</span> <span class="hljs-string">Effortless</span></pre></div><h1 id="7e78">How I Will Teach</h1><div id="facd"><pre>Your Goal: <span class="hljs-built_in">Mid</span>-Level Engineer</pre></div><p id="041c">As a student of these courses, <i>you should set yourself the goal of reaching</i> <b>Mid-Level.</b></p><div id="d9d2"><pre>My <span class="hljs-keyword">Goal</span>: Senior-Level Engineer</pre></div><p id="f32f">But as your instructor, I will challenge myself to help you reach a <b>Senior Level</b>. As the saying goes:</p><p id="5a95" type="7">If I aim for the Moon, even if I miss, you might hit a Star. 😄</p><p id="9f3d">To achieve this, every programming concept for each lesson will be taught in three parts:</p><h2 id="1ad3">Part 1: Learn</h2><div id="86f0"><pre><span class="hljs-symbol">Learn:</span> Easy-<span class="hljs-keyword">to</span>-understand Data Structures + Relatable Algorithms</pre></div><p id="bf55">In <b>part one</b>, I will teach you the programming concept using an <b><i>easy-to-understand </i>data structure</b>, and show you <b><i>relatable examples</i></b> of the <b>algorithms</b> you can use on that data structure.</p><div id="54f4"><pre>Scientific Method (MDN): <span class="hljs-function"><span class="hljs-params">Cause</span> =></span> Effect</pre></div><p id="9ad3">I will do this in a very <b><i>methodical</i></b> and <b><i>scientific</i></b> <b>manner</b> so you can clearly see the <b>cause</b> and <b>effect</b>. Whenever possible, I will reference the <b>Mozilla Developer Network</b> (<b>MDN</b>) to ensure my coverage of the material is <b><i>complete</i></b> and <b><i>comprehensive</i></b>.</p><div id="4df5"><pre><span class="hljs-type">Line</span>-<span class="hljs-keyword">by</span>-<span class="hljs-type">line</span> Explanations => Valuable Experience</pre></div><p id="6a77">To help you quickly gain <b>valuable experience</b>, I will walk you through my solutions <b><i>line-by-line</i></b> and explain <b>common code patterns</b> and <b>best practices</b>.</p><div id="ce4e"><pre>Mind Transfer: My Coding Experience => Your Coding Experience</pre></div><p id="f3e3">To take you into my mind (of a Senior Engineer), I will expose all my <b>thought processes</b> as I contrast the tradeoffs between various approaches that emphasize code readability, performance, security, and/or accessibility.</p><div id="a65e"><pre><span class="hljs-attribute">Complementary Concepts are taught together</span></pre></div><p id="562a">Oftentimes, programming concepts come in <b><i>complementary</i></b> <b>pairs</b>. In such instances, I will teach them <b><i>together</i></b><i> at the same</i> <i>time</i> to highlight their differences and maximize your understanding and retention.</p><div id="1d89"><pre>Current<span class="hljs-regexp">/Faster way of coding VS Older/</span>Longer way of coding</pre></div><p id="055f">And to help you really appreciate the <b>current way of coding</b>, I will always try to <b>contrast</b> <b>it</b> with an<b> <i>older and longer way of coding</i></b> the same thing.</p><div id="4189"><pre><span class="hljs-attribute">Part</span> <span class="hljs-number">1</span> => Good Mental Model + Great Intuition</pre></div><p id="b9d0">By the end of part one, you will have developed a <b>good mental model</b> and a <b>great intuition</b>.</p><figure id="e6ae"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/1*ly8Bn8RYYMpOfxQwoi6Oww.png"><figcaption><a href="https://quiz.siliconwat.com/">https://quiz.siliconwat.com</a></figcaption></figure><blockquote id="77d0"><p>My course websites provide <b>lots of quiz questions</b> to help you engage with the programming concepts and to point out which ones need more review.</p></blockquote><figure id="3be5"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/1*Hvhb8vDtkjubWFTF13S_zg.png"><figcaption><a href="https://quiz.siliconwat.com/">https://quiz.siliconwat.com</a></figcaption></figure><blockquote id="e03a"><p>Moreover, for every correct choice, you will earn <b><i>SW Coins</i></b> which you can redeem for <b>coupons</b> towards the purchase of any of my <a href="https://siliconwat.com">Udemy courses</a>!</p></blockquote><h2
Options
id="96c2">Part 2: Practice</h2><div id="7f9b"><pre><span class="hljs-symbol">Practice:</span> Interactive Coding Exercises</pre></div><p id="3ca8">In <b>part two</b>, to help you get plenty of practice, I will create <b>coding exercises</b> for you to do for every programming concept. These exercises will be <b><i>interactive</i></b> so you can check your answers right away.</p><div id="7389"><pre>TDD: Interactive <span class="hljs-keyword">Test</span> Cases => <span class="hljs-keyword">Immediate</span> Feedback</pre></div><p id="8cb8">Just like on <i>a real development project</i>, I will begin by introducing all the <b>test cases</b> your code will need to satisfy. This way, just like on <i>a real development team</i>, <b><i>you are free to code however way you want</i></b>, so long as your code passes all the required unit tests. For engineers, this way of coding is called <b>Test Driven Development</b> (<b>TDD</b>) and is a <b>best practice</b> in our industry.</p><blockquote id="69a3"><p>These <b><i>interactive coding exercises</i></b> are located at my course websites. There, you will also find <b>interactive hints</b> to help you understand<i> </i><b>each line of code</b><i>.</i></p></blockquote><blockquote id="aec6"><p>Likewise, for every correct solution, you will earn <b><i>SW Coins</i></b> which you can redeem for <b>coupons</b> towards the purchase of any of my <a href="https://siliconwat.com">Udemy courses</a>!</p></blockquote><h2 id="ec50">Part 3: Review</h2><div id="8857"><pre><span class="hljs-symbol">Review:</span> Syntax Flashcard Games</pre></div><p id="fee8">To help you <b><i>commit to memory</i></b> all the <b><i>new</i></b> <b>code</b> <b>syntaxes</b> you learned in this lesson, I will create <b>flashcards</b> that are <i>interactive</i> as well.</p><figure id="83d5"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/1*e0v4DkRpSRSDv9sL5MVYEQ.png"><figcaption><a href="https://flashcard.siliconwat.com/">https://flashcard.siliconwat.com</a></figcaption></figure><blockquote id="2df0"><p>These <b><i>syntax flashcard games </i></b>are also located at my course websites. Likewise, for every correct answer, you will earn <b><i>SW Coins</i></b> which you can redeem for <b>coupons</b> towards the purchase of any of my <a href="https://siliconwat.com">Udemy courses</a>!</p></blockquote><figure id="208d"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/1*WzaXmjM5x5VOk5Bqzpu6aQ.png"><figcaption><a href="https://flashcard.siliconwat.com/">https://flashcard.siliconwat.com</a></figcaption></figure><div id="8be7"><pre><span class="hljs-attribute">Senior-Level</span><span class="hljs-punctuation">: </span>Great Intuition + Lots of Practice + Valuable Experience</pre></div><p id="219f">To summarize, I will do my best to help you achieve a <b>Senior-Level</b> of understanding. I will do this by helping you develop a great <b>intuition</b>, get plenty of <b>practice</b>, and gain valuable <b>experience</b>. When you have these three things, I believe you will stand out amongst your peers as <b><i>the</i></b> <b>Buddha</b> Engineer. 😇</p><div id="f0e5"><pre>Enlightened Engineer: Continuing Education <span class="hljs-keyword">is</span> Effortless</pre></div><p id="a4ff">With this strong triple foundation, continuing education will be easy for you. <b><i>Future language features</i></b> like <b>ES12 </b>and<b> ES.Next</b>, and <b><i>new</i></b><i> <b>JavaScript libraries</b></i> and <b><i>frameworks</i></b> like <a href="https://github.com/facebook/react"><b>React</b> <b>18</b></a> and <a href="https://github.com/angular/angular"><b>Angular</b> <b>15</b></a> will be easy for you to pick up.</p><h1 id="9134">Remote Cohort Program</h1><p id="f1be">All my courses can be <b>self-paced</b> for <b><i>self-motivated</i> students</b>. However, if you prefer more <b><i>structure</i></b>, consider joining my <a href="https://siliconwat.com"><b>Remote Cohort Program</b></a> to study alongside other students from around the world!</p><p id="2a22">After you successfully complete the Cohort Program, you will have the opportunity to come back and <b><i>tutor</i> future students</b>. Helping to teach the course materials will help you to completely <i>master</i> them, plus you will also be able to earn even more <b>SW Coins</b>!</p><p id="6b17">→ <a href="https://siliconwat.com">Join Remote Cohort Program</a></p><blockquote id="a82f"><p>There are <b>full-time</b> and <b>part-time</b> programs in Spring, Summer, Fall, and Winter. <b>Top graduates</b> will have the opportunity to interview for a <b>paid consultancy</b>!</p></blockquote><h1 id="f624">About the Instructor</h1><p id="cda8"><a href="undefined"><b>Thon Ly</b></a> (tawn lee) is the Founder of <a href="undefined">HeartBank®</a>, an Instructor at <a href="undefined">Silicon Wat</a> University, a Game Creator at <a href="https://medium.com/thonly">THonly<b>™</b></a> Metaverse, and an Organic Farmer at <a href="undefined">Nhia Kou</a> Orchard. He holds a Bachelor in Economics and a Master in Software Engineering, and is currently researching <a href="https://thonly.org">Enlightened Intelligence</a> for his Doctoral Dissertation. In his free time, he enjoys meditating atop his four-story Sequoia Treehouse that he hand-built in Fresno, California</p><div id="98c9" class="link-block">
<a href="https://thonly.org">
<div>
<div>
<h2>Thon Ly</h2>
<div><h3>Certified Fullstack Blockchain & iOS Engineer</h3></div>
<div><p>thonly.org</p></div>
</div>
<div>
<div style="background-image: url(https://miro.readmedium.com/v2/resize:fit:320/0*5fnmn9KTEsa9cdrc)"></div>
</div>
</div>
</a>
</div><p id="718e"><i>If you want some <b>study tips</b> or just <b>motivations</b>, check out <a href="https://podcast.thonly.org">The Code of Success Podcast</a> co-hosted with his smart bot called Kiitos! Also, they co-produce and live stream <b>coding music</b> to help coders stay focused at <a href="https://music.siliconwat.com">music.siliconwat.com</a> </i>🧑🏻💻💪🏼</p><div id="d4f3" class="link-block">
<a href="https://medium.com/@thonly/membership">
<div>
<div>
<h2>Join Medium with my referral link — Thon Ly</h2>
<div><h3>As a Medium member, a portion of your membership fee goes to writers you read, and you get full access to every story…</h3></div>
<div><p>medium.com</p></div>
</div>
<div>
<div style="background-image: url(https://miro.readmedium.com/v2/resize:fit:320/0*gOmGdkmkAHn0xYBV)"></div>
</div>
</div>
</a>
</div><blockquote id="b80d"><p>When you use my <a href="https://medium.com/@thonly/membership">referral link</a> above 👆 to become a Medium member, <b>all proceeds</b> will be donated towards the construction of the <a href="https://siliconwat.org">Silicon Wat Campus</a> for children in <b>Ukraine</b> and <b>Cambodia</b> ❤️</p></blockquote></article></body>
Trilogy Curriculum for Complete Beginners Aspiring to Become Fullstack Engineers
Exclusively on Medium
There is no wealth like knowledge, no poverty like ignorance.
— Buddha
All three textbooks are published exclusively on Medium by Silicon Wat, an online Temple for coding Monks to achieve code Enlightenment! 😇
The curriculum consists of my three textbooks which correspond to my threeUdemy video courses in a foundationaltrilogy that helps a completebeginner to become a well-rounded and future-proof Fullstack Engineer.
Every chapter of my textbooks is published exclusively on Medium for premium members. However, to help students who cannot afford a Medium membership, the Tables of Contents are located at my course websites. From there, the chapter titles link to the free versions foranyone to readfreelyanytime.
Moreover, the Tables of Contents are interactive. As you complete each chapter, you can check it off and the progress bars will update in realtime. To help you stay focused and productive, I have also built-in a Pomodoro Timer and a Coding Music Radio Station! 🧑🏻💻💪🏼
When you use my referral link above 👆 to become a Medium member, all proceeds will be donated towards the construction of the Silicon Wat Campus for children in Ukraine and Cambodia ❤️
Textbook One: A Complete Frontend Developer Course for Beginners
First Course: Complete Beginner => Frontend Engineer
The student’s journey begins with this course designed to help a complete beginner learn the programming languages of Frontend Development.
To help you achieve full mastery, all three web languages (HTML, CSS, and JavaScript) are taught together in parallel within a musical context in order to deepen your understanding of their interrelationships in a fun and memorable way!
The thing is, whenever we learn something new, there are four stages we go through:
Stage 1 (complete beginners): You don't know that you don't know
In the first stage, we don’t know that we don’t know. All complete beginners in any endeavor are ignorant at first. As long as you’re excited and curious to explore the unknown, you have all the necessary prerequisites for success.
Stage 2 (juniors): You know that you don't know
In stage two, we begin to know that we don’t know. As you go through these courses, you will find yourself here most of the time. Don’t give up because all Juniors experience this. Keep in mind that you are not expected to know everything, but just enough so that you at least know where to find the right answer (e.g., Google).
Stage3 (mid-level): You know that you know
With enough practice (e.g., 1000 hours), you will find yourself in stage threewhere you know that you know. This is the goal for these courses. When you are a Mid-Level, you Google less and less for the answers; thus you become a faster and more confident coder.
Stage 4 (seniors): You don't know that you know
With enough experience (e.g., 2 years), you will find yourself in the fourth and final stagewhere you don’t know that you know. You have such a great intuition from all your years of coding that you are able to learn new things faster and faster. This is the stuff of Seniors and Rockstar Engineers.
Mid-Level: What and How
Senior: Why andWhen
Another difference between a Mid-Level and a Senior is that a Mid-Level may know what to do and how to do it, but not necessarily know why or when to do it. Unfortunately, this is very difficult to teach because it’s not black and white. Paradoxically, it will come naturally with enough hands-on experience.
The Learning Curve
These four stages can be visualized as a learning curve. To summarize, in stage onewhere we don’t know that we don’t know, ignorance is indeed blissful. And when we begin to know that we don’t know in stage two, it can be a tough uphill battle. And sadly many people quit at this stage. When things are difficult, keep in mind that there is a plateau that exists in stage three. When we keep at it for long enough, the intuition we develop will make learning effortless in stage four.
Learning Curve:Stage 1:Ignorance may be blissfulStage 2:Uphill battleStage 3:PlateauStage 4:Effortless
How I Will Teach
Your Goal: Mid-Level Engineer
As a student of these courses, you should set yourself the goal of reachingMid-Level.
My Goal: Senior-Level Engineer
But as your instructor, I will challenge myself to help you reach a Senior Level. As the saying goes:
If I aim for the Moon, even if I miss, you might hit a Star. 😄
To achieve this, every programming concept for each lesson will be taught in three parts:
Part 1: Learn
Learn: Easy-to-understand Data Structures + Relatable Algorithms
In part one, I will teach you the programming concept using an easy-to-understand data structure, and show you relatable examples of the algorithms you can use on that data structure.
Scientific Method (MDN): Cause => Effect
I will do this in a very methodical and scientificmanner so you can clearly see the cause and effect. Whenever possible, I will reference the Mozilla Developer Network (MDN) to ensure my coverage of the material is complete and comprehensive.
Line-by-line Explanations => Valuable Experience
To help you quickly gain valuable experience, I will walk you through my solutions line-by-line and explain common code patterns and best practices.
Mind Transfer: My Coding Experience => Your Coding Experience
To take you into my mind (of a Senior Engineer), I will expose all my thought processes as I contrast the tradeoffs between various approaches that emphasize code readability, performance, security, and/or accessibility.
Complementary Concepts are taught together
Oftentimes, programming concepts come in complementarypairs. In such instances, I will teach them together at the sametime to highlight their differences and maximize your understanding and retention.
Current/Faster way of coding VS Older/Longer way of coding
And to help you really appreciate the current way of coding, I will always try to contrastit with anolder and longer way of coding the same thing.
Part1 => Good Mental Model + Great Intuition
By the end of part one, you will have developed a good mental model and a great intuition.
Moreover, for every correct choice, you will earn SW Coins which you can redeem for coupons towards the purchase of any of my Udemy courses!
Part 2: Practice
Practice: Interactive Coding Exercises
In part two, to help you get plenty of practice, I will create coding exercises for you to do for every programming concept. These exercises will be interactive so you can check your answers right away.
TDD: Interactive Test Cases => Immediate Feedback
Just like on a real development project, I will begin by introducing all the test cases your code will need to satisfy. This way, just like on a real development team, you are free to code however way you want, so long as your code passes all the required unit tests. For engineers, this way of coding is called Test Driven Development (TDD) and is a best practice in our industry.
These interactive coding exercises are located at my course websites. There, you will also find interactive hints to help you understandeach line of code.
Likewise, for every correct solution, you will earn SW Coins which you can redeem for coupons towards the purchase of any of my Udemy courses!
Part 3: Review
Review: Syntax Flashcard Games
To help you commit to memory all the newcodesyntaxes you learned in this lesson, I will create flashcards that are interactive as well.
These syntax flashcard games are also located at my course websites. Likewise, for every correct answer, you will earn SW Coins which you can redeem for coupons towards the purchase of any of my Udemy courses!
Senior-Level: Great Intuition + Lots of Practice + Valuable Experience
To summarize, I will do my best to help you achieve a Senior-Level of understanding. I will do this by helping you develop a great intuition, get plenty of practice, and gain valuable experience. When you have these three things, I believe you will stand out amongst your peers as theBuddha Engineer. 😇
Enlightened Engineer: Continuing Education is Effortless
With this strong triple foundation, continuing education will be easy for you. Future language features like ES12 and ES.Next, and newJavaScript libraries and frameworks like React18 and Angular15 will be easy for you to pick up.
Remote Cohort Program
All my courses can be self-paced for self-motivated students. However, if you prefer more structure, consider joining my Remote Cohort Program to study alongside other students from around the world!
After you successfully complete the Cohort Program, you will have the opportunity to come back and tutor future students. Helping to teach the course materials will help you to completely master them, plus you will also be able to earn even more SW Coins!
There are full-time and part-time programs in Spring, Summer, Fall, and Winter. Top graduates will have the opportunity to interview for a paid consultancy!
About the Instructor
Thon Ly (tawn lee) is the Founder of HeartBank®, an Instructor at Silicon Wat University, a Game Creator at THonly™ Metaverse, and an Organic Farmer at Nhia Kou Orchard. He holds a Bachelor in Economics and a Master in Software Engineering, and is currently researching Enlightened Intelligence for his Doctoral Dissertation. In his free time, he enjoys meditating atop his four-story Sequoia Treehouse that he hand-built in Fresno, California
If you want some study tips or just motivations, check out The Code of Success Podcast co-hosted with his smart bot called Kiitos! Also, they co-produce and live stream coding music to help coders stay focused at music.siliconwat.com🧑🏻💻💪🏼
When you use my referral link above 👆 to become a Medium member, all proceeds will be donated towards the construction of the Silicon Wat Campus for children in Ukraine and Cambodia ❤️