I took quarantine as an opportunity to brush up my front-end coding skills and happy with my progress so far. Here I want to share my thoughts, tips and study notes with those who're interested in teach themselves coding (thread):
1. Setup a good roadmap. I find this video very helpful, and I'm following the exact steps mentioned:
2. Pick a medium that works best for you. I personally don't like watching videos and prefer doing small challenges instead. So I picked @freeCodeCamp as my starting point. If you prefer videos then something like @treehouse might work better for you.
Here's my progress on @freeCodeCamp https://www.freecodecamp.org/torizhao Took me about 2 weeks to go through the responsive web design course. I leave out the final project to finish later after I'm more comfortable with CSS.
3. Practice with doing code snippets. Whatever medium you choose, you'll *never* really learn with only following tutorials. Check https://www.w3schools.com/howto/ for lists of stuff you can work on.
I personally chose to work on real world examples although they're harder than W3S ones. I learned a ton during this process. So far I've made 3 snippets from my favorite websites. My goal is to make at least 12.
As an example, here's the @reddit leader-board code snippet I made a few days ago https://codepen.io/tori_zhao/pen/MWaXrze
4. Make sure you're comfortable with current level before moving on. Don't learn bootstrap until you understand CSS. Don't learn React until you understand pure Javascript. Take baby-steps, make sure your skills are solid.
5. Pick good tools. I use @VisualStudio as my code editor and @FirefoxDevTools as my browser for learning (it's MUCH better than Chrome, trust me! ) Remember “Good tools are prerequisite the successful execution of a
job” (工欲善其事,必先利其器)
job” (工欲善其事,必先利其器)
6. Do it consistently. I tell myself to write "just 1 line of code per day". This helped me tremendously on building learning habits. Don't burn yourself out, just do it slowly and consistently instead.
7. This is just a start of my self-teaching coding journey. I'm in no rush. I'm not doing it for changing jobs, getting a raise or anything like that. I just do it for fun, and to make myself feel accomplished during this special time.
9. I don't set "final goals" of what I'm hoping to accomplish "at the end" because that gives so much pressure. All I'm focusing on is NOW: Do I enjoy working on this specific code snippet *right now*? As long as I have a yes answer, I'm in good spot.
I find this "focusing on now" mentality very important for me to keep the momentum going on, so I'd love to share with all of you. If you feel like constantly giving up and don't know how to build a learning habit, try this! And let me know what you think.
10. I'm sharing all my learning notes and progress tracking on this Notion page: https://www.notion.so/toriz/Coding-Study-Notes-b8d71c6628c442bab2e108d53a5b9125 Feel free to reach out if you got any question regarding self-teaching code. Happy coding!