26th issue! If you missed them, you can read the previous issues of our Web Developer Monthly newsletter here.
Being a web developer is a fantastic career option. You have many job opportunities, you can work around the world, and you get to solve hard problems. One hard thing, however, is staying up to date with the constantly evolving ecosystem. You want to be a top-performing web developer, coder, programmer, software developer, but you don’t have time to select from hundreds of articles, videos and podcasts each day.
This monthly newsletter is focused on keeping you up to date with the industry, keeping your skills sharp, without wasting your valuable time. I will be sharing the most important articles, podcasts and videos of the month. Think Tim Ferriss and the Pareto Principle (80/20 rule) meeting the Software Development world. What’s the 20% that will get you 80% of the results?
Want to be the hippest of the hip? Try features so trendy that the fedora with a feather can't even handle? Check out this article to show you how to build the same app using both libraries. Speaking of React 17...
Mostly everyone's favourite frontend library. What crazy things have they been up to?
React 17 is coming! This update is almost as exciting as the TypeScript update this month (see below section) because React 17 changes nothing. Well, not nothing. But on your end, you don't really have to worry about it because it doesn't really have new features for you. Instead, this release is primarily focused on making it easier to upgrade React itself. If you want to dive deeper, read this.
Cool little React Component Library. Speaking of which, there are lots of these around. If you wanted to pick the 5 best ones though, here they are.
React based content loader library. Going to definitely be using this in the future.
AWS now has a Free React tutorial. Seriously.
4 tips for using useEffect
.
Some tools and assets to help you build your next project since we are best friends by now (unless this is your first time reading my articles… in that case let’s take things slow):
Ever thought to yourself... "Boy would I love to use some of that sweet sweet GPU power with my JavaScript". Well, somebody listened to those late night wishes, because this library now lets you use JavaScript with a GPU for some exciting parallel computing. Check it out.
Personally, I have seen a massive trend in the number of Web Developers entering the industry. However, the number of designers, UI/UX engineers has not seemed to have increased at the same pace. This means that a good designer is harder and harder to find. It's a valuable skill and it doesn't hurt to get some of the basics down with this: Laws of UX.
While we are on the topic, here are some UI best practices.
SameSite
Default 🌛Mozilla (and soon the other browsers) are changing the default value of the SameSite
attribute for cookies from None
to Lax
. This will greatly improve security for users (against CSRF attacks). They are strongly encouraging all web developers to test their sites with the new default to make sure it doesn't break anything. Read more here.
Speaking of Mozilla...
Mozilla had a tough month and they had to lay off a big part of their developer team. What will the future hold? Nobody knows. Show some support to the MDN team.
Resumes and Cover Letters are stressful enough to maintain. Let's add another one to the mix: Github READMEs. It's a new feature to make your Github profile standout. Here are 10 unique profiles to make you feel inadequate (I personally wouldn't stress too much about this, but interesting to know that you have a new way to wow employers).
If you're looking to get hired in the most efficient way, here's the steps I'd recommend.
So you don't want to use Wordpress. You want to use React and build a Content Management System that your client can easily update the website/blog with, like they were able to with Wordpress. Well, Tina CMS is a new tool that allows for your client to make updates visually to the React app you just built for them without them having to learn to code or some random CMS. Pretty neat. It allows users to manage content directly on their website instead of working from another platform. It exposes an editing interface to handle and update content in real-time. This is a nice tutorial to teach you about it. Good for all you freelancers out there.
Sure, the title may seem like an oxymoron but Facebook at the end of the day is at the forefront of web development since they have one of the most used apps on the web. So when they speak, I like to listen. This time, they talk about accessibility and how they were able to improve this for their facebook product. Some good insights here.
A good point is raised in the Node.js repository about the countless config files in the root directory. The solution? Nobody can agree but an interesting thing that probably should be changed/improved one of these days.
Just kidding. They updated their website and also updated their logo with.. wait for it.... rounded corners, some extra padding and a bold new font. Wild times. Sorry for wasting your time with this one but I have bookmarked it so it has to go in the newsletter 😛.
Ok, just so you don't get mad at me, here are some TypeScript exercises.
Ok, now that I think about it... AirBnB came out with a new tool to help you upgrade from plain old JS to TypeScript.
Angular is taking a new initiative to be more clear on what they are working on and future plans for new versions of Angular. This is probably due to many people asking the same questions over and over again and Angular wanting to answer everything by pointing them to the roadmap. Maybe I should do this for zerotomastery.io.
New tool/library from Microsoft for Web Developers. A set of components built with Web Components, which are like React or Vue components but using only standard HTML and JavaScript (no frameworks... kind of). Why should you care? I'll talk a bit more about this in the Best Resource Of The Month section, but it's from Microsoft... so you know, you should pay attention. Learn about it here.
A new library which I have mentioned in this newsletter before now has their beta release. The goal? Rome is not only a linter, but also a compiler, bundler, test runner, and more, for JavaScript, TypeScript, HTML, JSON, Markdown, and CSS. They aim to unify the entire frontend development toolchain. Ambitious project trying to take on all the tooling of the front end world and do it better. We'll see if it works. As expected lots of people with lots of opinion on this one. Or you know, just use Deno.
Quick question: can users see different versions of your website? Are they always seeing the latest version after your code updates? The truth is that they probably are (or at least not all of them are seeing the same thing). Here is an amazing article breaking down how you can have different versions of your website live inside of a user's browser.
New update to Chrome browsers will soon shame you if your website isn't fast enough for mobile.
If you want to confuse someone and make their head explode, here is the stackoverflow question of the month.
Ok, maybe not new, but here are the notable new updates from popular libraries:
GraphQL is perfect and there is nothing wrong with it right? As always, there are always pros and cons. Here is an article outlining some of the cons and when you should maybe stick with a nice little REST API.
A fun and free tutorial to get you started on your first WebAssembly project. That's about it for this section.
You may have heard of Pandas as a popular Python library used by Data Science and Machine Learning engineers. Well, JavaScript now has it's own version: Danfo.js
Google announced a bunch of new Pixel phones.
Apple says "nah" to Google and Microsoft gaming platforms Stadia and xCloud. Apple is getting into some hot water lately with their App store policies: Here is one with Wordpress. Then they apologized. They are also in a big fight with Epic Games (Creators of Fortnite).
Anthony Levandowski sentenced to 18 months in prison as new $4B lawsuit against Uber is filed. Pretty standard Silicon Valley news.
Facebook just doing Facebook things.
Trust me. You need to watch this. How can you make an impossibly diffcult maze in Roller Coaster Tycoon using the game algorithm? The power of understanding how an algorithm works.
Useless fact: We had the 10 year anniversary of Web Fonts!
A big trend I am seeing over the past year is this push towards doing something other than the popular client side rendered app with massive amounts of JavaScript (think bloated React, Angular and Vue apps). We have seen things like Svelte, Gatsby, Next.js and many others take off due to the potential benefits it offers by reducing the amount of work the client device has to do to load and execute your app. Have a read through this article. Definitely a trend to keep an eye out on. The "Client Side Rendered app is always better" will not be the case for much longer. Understanding the tradeoffs and knowing where to do the JavaScript work (client, server or build step) will be a critical skill of a web developer. Once you finish the above article, have a read through this one.
Also, not that I am a parent or anything, but if you are one, this is a good guide to getting your kid/kinds into the programming world.
See you next month everyone!
By the way, my full-time job is to teach people to code in the most efficient way possible as the Lead Instructor of Zero To Mastery Academy. You can see a few of my courses below or see all of my courses by visiting the courses page.