As someone who helps people navigate tech careers, I'm always looking for the best learning resources to recommend. But different people have different goals - some want to get their first job, others want to switch specialties, and some just want to learn for personal projects.
I'd love to hear your tech education recommendations based on specific goals. What would you recommend for:
1. Someone trying to get their first web dev job
2. A backend developer wanting to learn frontend
3. A non-technical person wanting to understand tech basics
4. An experienced dev wanting to learn a new language/framework
5. Someone preparing for technical interviews
What platforms, courses, or tutorial creators have you found most effective for these different scenarios?
Based on my research, here are my tech education recommendations for different goals:
**1. First web dev job:**
- freeCodeCamp (free, comprehensive)
- The Odin Project (free, project-based)
- Scrimba (interactive, good for visual learners)
- Frontend Masters (paid, high quality)
**2. Backend to frontend:**
- CSS for JavaScript Developers (Josh Comeau)
- Epic React (Kent C. Dodds)
- Frontend Masters workshops on specific topics
**3. Non-technical to tech basics:**
- CS50 (Harvard's free intro course)
- How to Design Programs (free book)
- Codecademy's introductory courses
**4. Experienced dev learning new tech:**
- Official documentation (always start here)
- Egghead.io (short, focused lessons)
- Pluralsight paths (comprehensive)
- Books from O'Reilly or Manning
**5. Technical interview prep:**
- LeetCode (practice problems)
- Grokking the Coding Interview (Educative)
- Interviewing.io (mock interviews)
- Cracking the Coding Interview (book)
The key is matching the learning style to the goal. For job readiness, project-based learning is essential. For interview prep, problem-solving practice is key.
Great question! Here are my tech education recommendations based on experience:
**1. First web dev job:**
The Odin Project is hard to beat. It's free, comprehensive, and forces you to figure things out (which is what you'll do on the job). Supplement with YouTube tutorials for specific topics when you get stuck.
**2. Backend to frontend:**
Start with a focused course on modern JavaScript (ES6+), then learn a framework. I'd recommend Maximilian Schwarzmüller's courses on Udemy - he explains concepts clearly and includes real projects.
**3. Non-technical to tech basics:**
CS50 is amazing but intense. For a gentler start, try Codecademy or freeCodeCamp. The key is to start building things immediately, even if they're simple.
**4. Experienced dev learning new language/framework:**
Read the official documentation first. Then build a small project. Then read The [Language] Programming Language" book if there is one. Then build a bigger project. Tutorials are less important at this stage.
**5. Technical interview prep:**
LeetCode for practice, but also study system design. The "System Design Interview" books are excellent. Mock interviews are crucial - use Pramp or interview.io.
General advice: Don't get stuck in tutorial hell. Use tutorials to get started, then build your own things. That's where real learning happens.
As someone who made a career change, here are my personal tech education recommendations:
**1. First web dev job:**
I tried many resources, but what worked was The Odin Project combined with building my own projects. The projects are what got me interviews. Also, join a community - I learned so much from the TOP Discord.
**2. Backend to frontend:**
Take a design basics course too! I see backend devs struggle with CSS and UX. Kevin Powell's YouTube channel is fantastic for CSS. For React, the official docs plus building projects works well.
**3. Non-technical to tech basics:**
Start with something visual and immediate. Scratch or p5.js can be more engaging than traditional programming. Or try web development - you can see results in the browser immediately.
**4. Experienced dev learning new language/framework:**
Find a project you want to build with the new tech. Learning with a purpose is much more effective. Also, pair program with someone who knows it.
**5. Technical interview prep:**
Practice explaining your thinking out loud. Record yourself solving problems. The technical part is only half the battle - communication matters too.
My biggest recommendation: whatever you choose, commit to it for at least a month before switching. Jumping between resources is a common trap.