Getting started with project-based learning
Courses have been all the rage in 2020, but are they really neccessary?
Welcome to MichiSpotlight! Today we have a bundle of resources in store for you with some suggestions on using them. Read till the end to learn about new communities you can become a part of.
Don’t forget to subscribe to MichiSpotlight’s brand new YouTube channel. It will be loaded with useful content just as I’m done with my end-semester exams.
Now back to the point.
If you’re active on LinkedIn, I’m sure you might’ve come across a gazillion certifications (especially course completion certificates). In 2020, we saw a surge in such posts on the platform, which led to more and more people getting inspired and completing courses at lightning speed. I’ve done quite a few courses myself in the past year, which have helped me polish my knowledge about various topics.
As you already know, you can never really “completely” master a topic. So you will always feel that you need more knowledge about the topic before you can attempt building something using your current expertise, which leads us to a very dark place called the tutorial hell.
You enter tutorial hell when you binge-watch courses and videos, do step-by-step tutorials, but when it comes to actual implementation, you’re clueless.
This is why today I will talk about how you should leverage courses and build your learning experience to be more project-based than some passive learning.
Gather information
To improve your learning experience, you first need to gather information.
What do I mean by that?
You need to understand what you want to learn and why? You could just be exploring different domains. But before you get started, you need some info about what, when, how, and where you’re going to learn something. To get these answers, you can either do some extensive google search or ask someone in the tech communities you’re a part of.
Let’s take an example.
What do I want to learn? Machine Learning
Where can I start? Either a python crash course or Andrew Ng’s Machine Learning course by Stanford Online on Youtube/Coursera.
How do I go about it? I’ll first learn the basics of python, some theory, and math. Then I’ll apply that knowledge to build a basic logistic regression model. And the journey begins.
When will I learn all this? *Fix a timing or deadline*
When you’re gathering this information, most of the time, you will come across courses. But it would be best if you were mindful that most computing domains are purely hands-on (like full-stack web development). You can’t truly be a developer by producing a tangible outcome out of your learnings.
Even if you’re a machine learning researcher, you need to publish papers and learn to deploy your models. Always have a tangible outcome.
Read, Read and Read.
If you know how to comprehend long text-based learning material, you’re going to be a golden developer. People who can understand concepts straight from the documentation of a programming language save way more time than those who do full-length video-based courses.
Reading docs, blogs, newsletters (like this one), and books would definitely save you the time you spend learning things and focus more on solving the problem you have at hand while building cool stuff that matters.
Brainstorm and hack
These days the number of boot camps for developers has increased astronomically. Most of them teach you how to build a replica of existing software. I have nothing against this kind of learning since replicating designs pixel by pixel and powerful features is an amazing skill.
But, I feel that building something new and meaningful would bring more weightage to your resume and your critical thinking skills, which are super important if you want to bag an internship at a startup or get a gig as a freelancer.
I mean, you can always start by building clones, but I would recommend brainstorming for genuine topics after a point when you are comfortable building stuff with your expertise. I have explained the entire design thinking process of coming up with creative ideas in this piece.
Here are a few things you can do: (most of them are web developement based but can be useful for those pursing other domains too)
Join a hackathon community and look for people interested in collaborating with you on a project that you can then submit in the hackathon.
Check out these project-based learning resources that I’ve put together, use them to get started with a more hands-on learning approach. I’m still adding on to it so bookmark this.
Once you know how to apply your skills, build more realistic projects.
Build your own portfolio website. Make sure it uses the best design.
Go to websites like Dribbble, where you can find many wireframe designs, try to code them out pixel by pixel.
If you like reading research papers on machine learning, make a python bot that emails you a research paper every week/day for you to summarize it.
Try to find lame projects that have no real use and make them useful. That is a real skill. Always imagine yourself to be the user and build it according to how you would like it. Would you want a good UI? or would you prefer faster performance? Either use your mind or google search on how you can implement those improvements using code.
Give back to the community.
The best way to retain your knowledge is by giving back to the community in the form of content (blogs, newsletters, videos, or just sharing the resources you’ve used to learn something). If you try to teach someone the complex concepts you’ve just learned, you’ll not only become a better developer who can communicate technical requirements effectively but also a better human being for helping out those in need.
As promised in the beginning, I would be sharing a few more tech communities that you can join:
That’s all, folks! See you in the next edition. Don’t forget to share this edition with someone in need, do your part in the community :)
Also, if you’re new here, do subscribe to the newsletter! TeeHee
Your newsletter guides us in the direction where each newbie in development searches for. Great work 👍
Excellent one Vaish!