code-motivation learning

2 Years of Self-Learning Into a Developer: Eulercoder Motivation

Kevin Hsu teaching students - eulecoder
Kevin taking a workshop

First thing first. Self-learning and Why did I even start coding?

My first try with coding was with Dr Wu at National Taiwan Normal University. I was a high school student at the time and Dr Wu was my mentor. During the weekends, he would lead me and another friend to learn coding with assignments like developing a Big Two game with C++. And that was without any GUI, you would have to play my game with C++ consoles…

And it was certainly fun. The sense of achievement when my program compiles and runs properly was thrilling.

I really liked it, but when the time came to choose a major to pursue in my University career, I was more gravitated towards Business subjects — They somehow seemed cooler to me.

I think I will skip the part where I had my miserable experiences studying Business and doing my first internships (If you are actually interested in knowing this suffering part, do check out my post on LinkedIn — From a Business/Startup Kid to a Software Engineer Intern at Microsoft), but anyway, that was how I started to reconsider my career choices and decided to give coding a second chance.

Read: Summer Internship: The Ultimate Guide Recommended by 1000+ students

Have a Clear Goal

In addition to studying Business is really just not my thing, another dominant reason for me to start coding was that I wanted to develop a platform for students to meet other student talents from different backgrounds. I have always been a startup enthusiast. So the ability to develop and deliver a website or app to users was really in demand from myself.

I later think this is also one of the crucial reasons I made it through — I had a straight and clear goal and rationale behind these learning activities.

This is definitely something I would recommend beginners to think about. Try to come up with a goal, the reason why you are thinking about self-learning to code, or even reading this article. That would help you a lot on the way through. In my case, I was motivated to dive into web programming.

But you might ask this. How would you know what the right languages or knowledge to start with are?

My answer is that you really have to do your own research. Take me for example, I learned that web development can be broke down into frontend and backend components and that frontend typically consists of HTML, CSS while backend can be JavaScript, Python or even Java, C#. And all these research is also a crucial part of my self-learning process. On the other hand, or hands, if you are more into the hot topics like AI, Machine Learning or VR, there are yet other toys to play with.

Learning with Online Resources

Once you have your own goal, it’s the exciting fun time to mine useful resources online. There are really just a number of great tutorials available on the Internet. A lot of them are even free. Let me try to list down the ones I used and would recommend.

  • FreeCodeCamp is a great example of online resources that are free when it comes to getting started with learning web programming. It provides detailed step-by-step instructions to create and style website elements (which is called DOM) as well as using JavaScript to interact with them. They did a great job gamify the learning process and community building. You can pretty much find a FreeCodeCamp meetup group in every city (FCC TP, for example). I would definitely recommend this to fresh starters to finish until at least the section of JSON APIs and AJAX. These are really important foundations to any complex projects.
image - self-learning on Freecodecamp website
Freecodecamp course
  • Scott from Levelup Tutorials is someone I secretly feel like I can’t thank enough to. Once I finish most of the FreeCodeCamp content, I went on to find some video tutorials with real-life examples. I mean, I agree with how some people say technology stacks grow fast nowadays, you don’t have to re-invent the wheel when there are tools and frameworks available to help you build efficient server and UI. After building up solid foundations from FreeCodeCamp, the Meteor For Everyone and Meteor & React For Everyone series from Levelup Tutorials (both free of charge) really prepared me to apply HTML, CSS, JavaScript knowledge onto modern frameworks like Meteor and React using real-world web development examples.
Image - Self-learning on LevelTuts by eulercoder
LevelTuts
  • Udemy is another platform that I would definitely recommend you to check out. Both FCC and LevelupTuts lean towards introducing web technologies. On the other hand, Udemy is a platform where teachers from all over the world upload paid or free tutorials with contents ranged from web development to native apps and even chatbots. Now, because a lot of them are paid, I won’t do specific recommendations on purchasing which ones of them here, but Udemy did do an interview with me (see how active I was using this platform haha). You can always check out the post for some more information.
Self-learning on Udemy website image - eulercoder
Udemy Website

Build Your Own Projects

After finishing a couple Meteor tutorials with Levelup Tutorials, I really felt empowered and had that desire and confidence to develop projects myself. At the time, I also just bumped into Dr Ray when I interned at Cocoon, a coworking space, who runs CityU Apps Lab. So I randomly just asked Dr Ray if I can join his lab although I don’t even study at City University.

He said yes. Why not.

We were both excited really. I was the first guy to actually join his lab as a trainee I think. But yeah, this is also something I learn along the way — the Can Do Spirit. If I hadn’t interned at a coworking space, I wouldn’t have met Dr Ray. And if I hadn’t overcome the shyness and demanded challenges for myself, I wouldn’t have come to develop a file streaming web app with the lab — with which experience, I got my first internship as a developer at a wonderful startup called 25Sprout in Taiwan.

Everything above, from getting started to getting my first internship, happened in exactly one year since I started to learn to code.

The point is: try to always look for opportunities building projects with the technologies you like. They are your resume and therefore valuable tickets to your next bigger and more exciting opportunities.

But, you may think, what if there is just no opportunity.

Then make one. Build your own personal website for example. This is also something I think every developer should do. I also made mine (which I am currently revamping) when I finished FreeCodeCamp with Bootstrap. Getting one up and running isn’t just a fine exercise, you will also get to try to ship a website by buying and configuring your first domain and hosting server.

Keep Learning

Now it’s been another year since I joined 25Sprout as a summer intern. In this year, I do feel like my learning curve has not been as thrilling as it was before, but there are different exciting exposures as I started to lead and develop my dream projects with friends, had my first experience being a speaker in a student tech conference introducing React and Meteor. I can, in fact, keep this list on and on. I met my partner to co-host a Hackathon that is nominated as one of the Ten Mind-blowing Student Hackathons [Medium Blog Link] from around the world, and finally now working as an intern at Microsoft, a tech giant company I am personally a fan of.

I too had my setbacks along the way, which I mentioned in my blog post on Medium, but all of them have nurtured me to become more ready for my next success (if it does exist, of course, you never know).

If I had to say there’s one thing I’ve learned from the 2 years of self-learning, that is more important than the coding skills, it has to be the ability to be proactive and always looking for next opportunities in the current ones. This is what truly drove and supported me to make every single challenging yet rewarding decisions including even to start learning something that is once completely alien to me — coding.


That’s it!

This article was written by Kevin Hsu, read all his articles and follow Kevin on Medium also, connect with Kevin on LinkedIn.

Have something to talk about? Want to contribute in our Mission and Goal? Write on Eulercoder. Write an email to us or contact us for guest posts. 

Did you found this article useful? Write in comments, your thoughts on Kevin’s journey and wish him luck. 🙂

If you found this article motivating, do share with your friends. Let’s help everyone in getting a better internship, job and help them in learning programming. Subscribe to our newsletter and get weekly curated content directly in your mail box. Also, we have our own group on FB, we take Q&A, post materials in the group. I’ll highly recommend you to join our FB Group.

Subscribe to our mailing list

* indicates required


Other Recommended articles:

IT Certification Category (English)728x90