Approaching this behemoth of an industry called web development can be overwhelming at times, everybody had that feeling of missing out on web development, especially the chaos that's happening in the front-end world...
...But just like any other problem, you break it down into smaller pieces. Think of the areas in web development you're lacking knowledge, then look for resources to fill that gap.
You also need to practice learning to be more proficient in it. Have a really good understanding of the basic programming principles first, that drive web development.
Focus on the fundamentals if you think you're lacking knowledge in that area, then build on top of that the new techniques and strategies that interest you.
There's too much noise on the Internet as it is, especially in tech, you need to focus on extracting the signal from the noise. By focusing on the programming principles you're building on top of a solid foundation because programming principles rarely change, it gets re-invented.
With experience, you'll realize that a solid foundation is key, and the major difference between most web development programming languages is just the syntax only.
You’ll need to have a very narrow set of problems that only a specific programming language can solve, in other cases it truly is just a matter of preference, community adoption and the available resources you have on hand.
If you want to know more about good programming principles, check out my blog post on the 10 books every programmer should read where I cover books presenting these programming principles.
The bottom line is you need to love web development, love programming, then learning will be easy, but if you're a 9 to 5 programmer, not really interested in software, then you're going to have a hard time leveling up to be a better programmer.
This doesn’t mean that you shouldn’t have a life outside work, on the contrary, work-life balance is really important.
You need to invest time and energy every week to learn something new.
Old is New Again
There's no such thing as the wrong approach in web development, it's more like the wrong solution to that set of problems you're trying to solve, and showing off your new programming techniques is usually the wrong solution for the problem. 😃
It's perfectly okay NOT to use the latest and greatest packages, modules, or techniques in your codebase, changing it out every day because something newer and shinier was released is almost always the wrong approach.
It's a much better strategy to use tried and battle-tested code instead, especially because of the dynamic nature of software development.
It's also a fallacy that not using the newest programming language or the latest framework you'll be doing a disservice to your project. You can solve 99% of the problems with any programming language.
Cut out 90% of the news
Get off social media, stop procrastinating, and cut out any distractions while you're working. Practice async, passive information gathering, meaning, not to jump on a new video, blog, or podcast instantly, instead save it for later and keep a schedule for learning new things.
You can organize your streams and feed with a note-taking app, and keep a log of what you've learned on a weekly basis.
You can use apps like Feedly, created for this purpose, to filter the information overload you're being bombarded with daily. They even use an AI assistant that will learn from your habits and will filter out news for you.
Start your own blog
If you want to really get neck-deep in a subject you want to learn, I think, the best way to do it is to write about it. You'll be forced to research the topic in-depth filling the gaps in your knowledge in the process.
The benefit of creating a blog on such services is that you will also get a huge audience from the get-go.
Read source code: most beginner developers I've met just don't read other developers source code at all. Why? Reading source code should be thought in schools 😁, it's one of the most fundamental things you should do if you're in software development.
Ask yourself this: Do you know what's inside
node_modules? Do you know what code a module or package contains?
You can learn awesome techniques, simply by, reading other developer's code, and more importantly, you can vet that code for security exploits, maybe even fix it and create PRs, it's a win-win.
Share and discuss: news, tutorials, and techniques with your friends in tech or your co-workers. It's very important to get feedback on your ideas, programming techniques, and the like.
Get active on forums: it may be counterintuitive, and I personally, don't like to follow a bunch of people on social media, because it usually adds noise to my daily work, but by following a narrow set of topics on Reddit or Twitter can be okay.
Get familiar with Github: look at what's trending on the website, watch releases for repositories you're interested in, or popular repos, just to stay up to date on what direction the industry is pulling right now.
It's important to learn how to learn new things, but also to find the signal in the noise. Here are a couple of resources, that you could use to stay up-to-date with the new info.
Find information hubs on the topics you're interested in. Blogs are a great resource for that, subscribe to influential authors' feed, remember RSS? Google tried to kill it, but it's coming back! 😊
Follow tech information hubs, but be vary, the content on these websites can be overwhelming and of lower quality unless it’s a curated feed.
- Hashnode - is a good place to find articles organized by topics (e.g. tags), just follow a couple of tags that you're interested in.
- Dev.to - same as Hashnode, subscribe to topics of interest and you'll get a timeline with posts from those topics.
- Daily.dev - a website where you'll get daily curated programming news.
- Hackernoon - another curated news website including everything tech and software.
- DZone - a massive news website giving you the highlights and trends in tech.
- LinkedIn - as surprising as it sounds, there is a lot of really good content on the website. You can join tech groups or follow hashtags. It evolved a lot in recent years.
Newsletters are an awesome way to get tech-related content that's curated by other developers. Getting a weekly e-mail overview on web development is almost guaranteed that it keeps you in the loop.
- TLDR - byte sized news for busy techies.
- Pony Foo Weekly - really good, curated, weekly news on web development.
- Frontend Focus - a once-weekly roundup of the best front-end news, articles, and tutorials. HTML, CSS, WebGL, Canvas, browser tech, and more.
- React Status - a weekly roundup of the latest React and React Native links and tutorials.
- Changelog Weekly - an editorialized take on this week in open source and software development.
Podcasts are a great resource where experts give their opinion on web development, it's great if you can listen to it in the background while you're working. If you like podcasts you can subscribe to these ones:
- Syntax FM - specifically created for web developers.
- Stack Overflow Podcast - gives you the news in tech right now.
- Codepen Radio - did you knew Codepen has a podcast? 😊
- Full Stack Radio - a podcast for web developers interested in creating great software.
- Front End Happy Hour - thoughtful discussions on front-end web development.
- ShopTalk Show - web design and development-related discussions.
- Devmode.fm - podcast dedicated to modern web development.
If you want to watch videos instead of reading or listening to podcasts, check out these channels on YouTube. I like to subscribe to smaller upcoming channels, I find that they give more hands-on information than the bigger channels, can't relate to devs working at companies with thousands of co-workers, they have a very specific set of problems they're solving.
- Dev Ed - fun videos on web development, design, tools, etc.
- Jack Herrington - full-stack web development videos.
- Fireship - coding tutorials related to web development.
- Traversy Media - programming tutorial videos.
- LearnCode.academy - 100% free web development tutorials, web site design tutorials and more.
- RealThoughCandy - Real-world, hands-on web development tutorials, tips & tricks.
- Computerphile - videos on all things related to computers.
- Google Developers - up to date news on Chrome and software development at Google.
Educational websites are also a great way to level up on web development. You can look at the trending or what's hot sections on these websites to get the best courses on the topics you're interested in.
Even though these services are not free, it's worth the investment, because you'll get a reviewed, well-thought-out video course covering the topic from A to Z.
Books can offer great value if you want to either learn new web development techniques or just simply staying up to date with the industry.
Look for best sellers on Amazon or Goodreads, and check out my blog post on the 10 books every programmer should read.
- Amazon Best Sellers on Web Development & Design
- Amazon Best Sellers on Computer & Technology - root category for best sellers related to computer and technology in general.
- Goodreads Web Development Books
- Goodreads Web Development Lists - lists put together by other software engineers.
Remember, fight the urge of FOMO!
Also, please comment and consider sharing this article; and if you have any questions you can contact me here in the comments or on Twitter.