63rd issue! If you missed them, you can read the previous issues of our Web Developer Monthly newsletter here.
If itβs your first time here, welcome, keep reading. If you're a long time reader, welcome back, you can skip to the next section to dive right into this month's newsletter.
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 interesting problems.
One of the hardest parts? Staying up-to-date with the constantly evolving ecosystem.
Of course you want to be a top-performing web developer, coder, programmer, software developer, but you donβt have time to select from 100s of articles, videos and podcasts coming out every day.
This monthly web development newsletter is focused on keeping you up-to-date with the industry, without wasting your valuable time.
I curate and share the most important articles, news, resources, podcasts and videos of the month.
Think the Pareto Principle (80/20 rule) meeting the Software Development world. Whatβs the 20% that will get you 80% of the results?
Hear me out. React Server Components and the ever expanding complexity that comes with the whole React ecosystem is finally having some senior developers say "enough".
Here are some comments from Hackernews this month that I thought were valid:
#1 - I think I am getting old. These frameworks are so big and complex. For a simple web hello world you need a huge build and compile pipeline. And now its extended with serverside components. I really wonder what the overhead is.
How many of layers of frontend and backend framework code is executed to get the hello world example running. I retreat back to my simple 10kb component framework in which i need only f5 to rebuild
#2 - In server-side rendering, clients are sent HTML that they can see immediately. I noticed this too. You can put a plaintext file on the server and it gets transferred to the browser pretty fast. You can also put another plaintext file ending with .css on the server and it can make things on the first page move and look really nice just because the browser knows what to do with it.
(This is sarcasm by the way π¬).
#3 - Stop a second before you go into RSCs. Whatever you want to achieve ultimately is much easier/quicker/scalable done in real fullstack (or classic web-) frameworks!
Rails/Django/Laravel/β¦ + Turbolinks/Htmx/β¦ or even sprinkle some light clientside JS for fancyness. Or go best-of-all-worlds if you happen to know Elixir/Phoenix. But donβt continue the descent into RSCs, now matter how many people tweet about it.
These folks with less than 10y industry experience will run into all the basic problems we had in vanilla PHP sites years ago, I even spotted react components with inline-sql-hooks already. This time with much accidental complexity overhead!
React fatigue is starting to set in...
Speaking of React... it's still mostly everyone's favourite frontend library (so let's pretend that you didn't read the section above). What crazy things have they been up to?
A fun slideshow going over when React re-renders a component and what you can do about it.
How to pass a React component down as a prop.
If you want to be the hippest of hip React developer, here is how to Server-Side Rendering (SSR) with Bun and React.
React Suspense has had a strange journey: for years it was little used and was seen as having little benefit, just a fancy way to render a loading state. With the recent release of React 18, however, Suspense provides a whole new set of benefits which deserve a second look. Take a look at the three most common rendering architectures today and how React Suspense can play a role.
The great thing about measuring developer productivity is that you can quickly identify the bad programmers. I want to tell you about the worst programmer I know, and why I fought to keep him in the team.
An insightful article from a developer who has worked for Facebook and Stripe during their growing days. Although luck and timing is a big part of this person's journey, some of the points made in this article will be valuable to most of you. Enjoy it.
With the recent release of version 20.6.0, Node.js now has built-in support for .env
files.
You can now load environment variables from a .env
file into process.env
in your Node.js application completely dependency-free (no more dotenv npm package).
Loading an .env file is now as simple as:
node --env-file .env
Rome was something I was pretty excited about (a toolchain for web projects).
Biome is the official fork of Rome and it will continue to be Romeβs legacy.
Biome is led and maintained by the same people that maintained Rome so far... long story short Rome has some political/ego/Meta issues and now moving to a more open model.
The rome package wonβt be maintained anymore by the core team, so you wonβt get any more releases... so switch over to Biome.
Read about what it does and all the drama behind this project here.
Trust me and read this. This was a great comment from an ex-Netflix engineer (jedberg):
*I am one of the biggest proponents of microservices. I helped build the platform at Netflix, I've literally traveled around the world extolling the virtues of microservices.
But I also advise a lot of startups, and you know what I tell them nearly every time?*
Build a monolith.
It's so much easier to start out with one codebase and one database, and that will scale for a while. Especially if you use a key/value store like DynamoDB (although you will lose relational functionality that can be helpful at the start). And did you know that you can deploy a monolith to Lambda and still get all the benefits of Lambda without building services?
And then, when you start growing, that's when you break out an independently scalable part of the system into a microservice (with it's own data store!). The one that may need to scale independently, or that you want to be able to deploy separately.
Microservices takes at least 25% of your engineering time just maintaining the platform. It's not worth it unless you can recoup that 25% in efficiency.
Everyone loves talking about some of the JavaScript "weirdness". Here is another fun one: Why does every() return true for empty arrays?
How nerdy can you be? How about a full feature length documentary on TypeScript. It's actually pretty good and fun to watch.
P.S. ZTM JUST released their latest course from one of the most popular instructors and it's all about TypeScript.
There are a ton of shiny new libraries and tools every month which is why I have this dedicated section for them...
Bun 1.0 if finally out! It's trying to steal Deno's thunder but can it? You decide... I'm still #teamDeno
Speaking of Deno... Deno v1.37, you can now use the new deno jupyter
command to create a Deno kernel that can be used within Jupyter notebooks. Eat that Bun!
Astro 3.0 is out! That web framework that everyone talks about but nobody actually uses.
Next.JS 13.5 is out... same old same old.
Wow, did Unity have an intense month...They pissed off pretty much everybody and are kind of sort of backtracking.
Vercel came up with this: https://v0.dev/ ... tell the AI what you want to build and it will build it for you.
With 2β3Γ the speed of the previous generation, and featuring silicon designed inβhouse for the best possible performance, Raspberry Pi 5 is coming out in Cctober. One of the coolest things to get for yourself as a hacker/programmer.
OpenAI released a guide for teachers using ChatGPT in their classroom including suggested prompts, an explanation of how ChatGPT works and its limitations, the efficacy of AI detectors, and bias.
Apple released their latest phones: iPhone 15 and iPhone 15 Plus
Cisco bought Splunk. Goodbye Splunk.
Not to get left behind in the AI war, Amazon also bought Anthropic. Read about it here. Oh and FTC is suing Amazon mainly to target how drop shipping businesses on Amazon are getting screwed over. (P.s. starting a drop shipping on Amazon is the best way to waste your time)
Meta is releasing smart glasses (remember Snap?). Can't imagine this selling too well with Meta's reputation.
Programmer or Serial Killer? Not sure what this says about programmers...
You may have noticed that this month's newsletter and probably a lot of the previous issues talk about the importance of keeping things simple and not over-engineering.
For this month's best resource, you have to read this excellent article: How Instagram scaled to 14 million users with only 3 engineers.
Instagram's guiding principles and tech stack explained simply. Learn to architect your big projects properly instead of focusing on the latest twitter/x hype and the so called advice of twitter "experts".
RecipeUI - the open source Postman alternative with type safety built in... very cool!
Thanks for reading!
Don't be shy now... Share this newsletter with your friends.
See you next month! β€οΈ
By the way, I teach people how to code and get hired in the most efficient way possible as the Lead Instructor of Zero To Mastery Academy. You can see a few of our popular courses below or see all ZTM courses here.