Hello, community of amazing FCC
I’m a 22 years old guy and I’ve been studying programming for a while to this day. But my main problem always was my laziness so I didn’t move a lot. I found myself watching and repeating tutorials/guides/courses one after another without using knowledge on practice. The practice is always harder, so I lied to myself about acquired skills, just feeding myself with another course or guide.
Of course, this learning process didn’t bring me any positive results. My mindset was messy, my goals unclear and uncertain. I gave up on programming for 2 years.
After a lot of thinking, I’ve decided to return to this road but learning from my mistakes this time.
My main goal for this year is to get a job to bring value to the world, solve interesting and challenging tasks and get rewarded for it.
I need advice on these questions:
How to find a mentor for boosting the learning process?
What is the most productive way from almost-but-not-but-close-to-0 student to getting a programmer job?
Which amount of time should be spent on theory and which on practice for actual results?
I will be super grateful for any advice, suggestions, and motivation. Thanks for reading and Happy Coding!
- Mentors are going to hard to come by. Most people who know how to do this are going to be busy working and mentoring the junior devs with whom they work. I think a better bet is to look for a meetup (FCC has a list, also meetup[dot]com and FB). There will be different people of different levels from whom you can get advice and encouragement.
- Learn and build things. Don’t worry about finding a “perfect” path. Just find a good path. I have a doc that you read, but again, learn and build.
- Again, don’t worry about “perfect”, just learn and build. I would break it down several ways:
- theoretical - reading books, blogs, tutorials, reading docs - These will always be a part of your learning. Even this could probably be broken down into things that are more high minded (CS theory vs. reading MDN).
- impractical practice - FCC lessons, algorithm challenges - These build skills but aren’t necessarily “practical” in that they don’t necessarily correlate exactly to real world problems. But they are still valuable and build skills.
- artificial practical practice - FCC projects, build along tutorials - This is building things where your hand is guided. You are told what the requirements are and are often given a set of tools.
- real-world practical practice - you or a small group conceive, design, and implement a project - Here you have to step out and design things. You are confronted with unexpected problems and you have to find a solution without a safety net.
- real-world experience - working a real job - You have specs that are written by other people, and you have to find solutions within a deadline. It’s a job, but it’s still learning.
All of these things come into play. Sure, it’s a weird list. On another day I might break it down differently - this is just off the top of my head. You start out at the first level and slowly at others. As you become more advanced, some of these will fade, but there will always be learning.
Just keep learning and building things.
To complete kevinSmith, about mentors, I personally have found mines when I have already been employed. And now it is my turn to teach juniors at my company, as we are on same team, it feels just natural to help colleagues, and I think this way is quite common to most of the companies.
I could be your mentor if you want, I would enjoy, but not for free because it demands lot of work and there are just too many opportunities.
Thanks a lot for the answers and sharing your doc (it seems very tasty)!
You’re right, the main focus on learning and building things without overthinking. I will apply this on my way.
Interesting discussion I have to admit.