5 things I learned mentoring 2500 aspiring developers

5 things I learned mentoring 2500 aspiring developers

Earlier this month, I started a free mentorship program for everyone who aspires to become a developer and would want a little nudge from me, or maybe you might want some tips and tricks from me on some of the things I know. The response there was tremendous, and almost a month in, after talking one-on-one to so many developers for a whole month on WhatsApp, I have a much better understanding than before of the current generation of aspiring developers.

#1: Web Development is popular

Overall the messages exchanged between me and 2500 other developers, I have seen this trend of "web development". People want to learn web development, almost over 80% of people want to learn web dev, are learning web dev, or want to switch careers into web development.

Why is that? Well, if you look at the data, it becomes much clear:

  1. Almost every business that sells has a website.
  2. Web developers are needed to create/maintain/update and change technology powering so many websites.
  3. The web is rapidly expanding, improving, and growing. More people are getting online each day, the opportunity is tremendous for the people who control what millions of people could see through web pages.
  4. The web is vast - you can pick up your little tech stack, master it, and earn through freelancing or as an independent contractor or firm.

Does that mean you should learn web development? Well, it depends. Keep reading the article to know why.

#2: A good chunk of people are doing it wrong

I won't write "most of the people", but yes, a lot of people are learning competitive programming when they should really be learning web development, or music, or anything.

I see a lot of people I talked to are "stuck" learning a thing because their job apparently demands it and they did not know about it, because they are sitting for internships or on-campus placements 100 years from now (sarcasm), because that's what it is taught in their universities, and because their "friends" are doing it. If you fall into any category, you're doing yourself no favor. Take a step back and seriously reconsider the road you're walking - if you're not happy with the end goal and the path, if you're not excited about programming, coding, doing and learning what you do right now, it's not going to be something you'll master - you are going to give up somewhere along the way.

Don't get twisted though, this doesn't mean the "usual because-it-does-not-work" code frustration that happens, that happens all the time when you're learning. Please reconsider your fields, but make sure you're doing what makes and keeps you happy. There's no shame in picking up things you like and things you don't.

#3: You want to master everything

I saw so much confusion you wouldn't imagine. People want to become full-stack developers, contribute to all Open Source projects, get a job at Facebook, create a rocket at NASA, leave the solar system, and set up another civilization in another galaxy all at once.

This is not how any of this works at all. You cannot be a full-stack or even a frontend developer in a day. And if anyone says you that, that person is lying. Being a full-stack developer or mastering a tech stack isn't a destination. You would never wake up one day and say that this is the day when I become a full-stack developer. It is a journey. You'll learn so much along the journey. And the journey is going to be a long one, whether you like it or not. You also cannot effectively master everything.

Remember that my definition of mastering is not watching a 4 hour YouTube video on React and considering yourself eligible to work on the flight control dashboard on SpaceX rocket. It takes time and experience to master a tech stack, and you probably won't feel that you-know-everything when you really know a lot of stuff.

Although the secret of being successful is mastering one thing, I often say to a lot of people to try out as many things as they can - just to develop a taste of what they like and what they don't. Maybe you'll like Rust, maybe someone else would like C++. You would never know until you try.

#4: You don't want to put in the work

I contacted so many people and told me to report their progress in a week. What surprised me is that most of them didn't complete the work I assigned them. "I was busy this week due to work", "I had a test coming up", "I was busy learning X" - excuses. Plain excuses. Please realize that putting in constant effort for a sustained amount of time is one of the few things which cannot be bought or transferred with a hyperlink. You have to do it. If you're not doing it, figure out why - is it because you don't like the thing you're doing? If that's the case, consider point #2. Is it because you don't have resources/you get confused? - ASK me! Is it because of some other reason? - TELL me!

People don't like to share things online fearing that they would be judged. Trust me, I and you are not that interesting, when you share things - you give a chance to someone in a situation similar to yours to relate and get motivated and even help you out.

#5: Know your tools - Ask for help

A technology you might be learning might not be for you at all. I chatted with so many Python enthusiasts because of ML/AI struggling to learn backend because they couldn't make sense of Node.js. Why would you want to learn Node for backend when you know Python? Go and learn about flask and Linux systems. This is one example from many people who didn't have the guidance and mentorship earlier, and I wonder how many human hours can be saved if everyone can be mentored and given a slight push to correct their journey trajectory. When in doubt, ask for help - dev forms, google, Reddit, StackOverflow, Twitter, so many places to ask for help! I can't imagine how hard it would be for someone to get stuck and ask questions without the internet or very smart people around you. Please use this blessing in the form of the internet!

Conclusion

I'm trying my best to manage those 2500 people for now and would plan to open mentorship again when I see things are controllable. This mentorship was part of codedamn - a platform for developers to connect and learn. If you want, you can follow me on Twitter and Instagram to keep yourself updated about my stupid coding things and my life in general. Let's connect!

Gulshan Aggarwal

Full-Stack Dev | Building & Breaking at Skai Lama

4 年

amazing content !

Pankaj Rajan

?? ????-?????????????? ???? ???????????????? | ?? Transforming Knowledge Work with AI - Effortlessly ??

4 年

Great write up Mehul!

要查看或添加评论,请登录

Mehul Mohan的更多文章

  • Why should you learn Next.js as a React developer?

    Why should you learn Next.js as a React developer?

    We can all agree on one thing, React is one of the most popular solutions out there for building interactive web…

    4 条评论
  • Mythbusting Competitive Programming - You don't need to learn it

    Mythbusting Competitive Programming - You don't need to learn it

    Now that I have your attention with the post title, let me go in-depth in this article on my views and general views…

    15 条评论
  • codedamn - Today and Tomorrow

    codedamn - Today and Tomorrow

    codedamn - a name which doesn't really mean anything, was started as a YouTube channel back in 2015 just as a way to…

    5 条评论
  • I'm providing free mentorship to aspiring developers!

    I'm providing free mentorship to aspiring developers!

    Hi! If you're new here, get to know a bit about me. It is important because I consider education as a serious thing, so…

    9 条评论
  • My college friends, you're doing it wrong

    My college friends, you're doing it wrong

    Before every single person wishes to throw a chair on my head, just hold on and read the article till the end. I…

    19 条评论

社区洞察

其他会员也浏览了