“Perl: The only language that looks the same before and after RSA encryption“”
Hello, |LIST:NAME|
Hello from issue #342!
Today I'm excited to present you a slightly refined layout, which tries to package the same content in a more compact format (thank you so much to our reader Michael Allen for taking the time to give us some feedback). Let us know if you like it! And before we get into the full-stack content of this week, I also want to share some interesting stuff I bumped into reading last week. Last week was challenging for cloud providers as they dealt with massive DDoS attacks. Some articles summarise how they defended themselves: AWS, Google Cloud, Cloudflare. (Thanks to Yan Cui for sharing this content).
An open-source and extensible text editor framework that does things differently. There's no shortage of text editors to choose from, but one of the many things that set Lexical apart is how compact and minimal it can be, while still being extremely flexible and customizable. My favorite feature is the support out-of-the-box for slash commands, something you might have gotten used to if you are an eager Notion user. Now you can create Notion-like experiences for your projects too!
A function that computes to the first color if the used color scheme is light or unknown, or to the second color if the used color scheme is dark. Why should you care? Well, let's just think what's the alternative today: tons of media queries! With this alternative approach, you can have something really easy to use and, as a nice side effect, you can keep your CSS code to the minimal!
If you ever find yourself writing complex workflows involving multiple moving parts and tons of coordination logic (stuff that needs to run in parallel, retrying for errors, accumulating state before being able to proceed, etc), you probably know that writing all this logic yourself can be tedious and error-prone. If you are on AWS you can use Step Functions to offload all the orchestration to the service provider and focus only on the actual business logic that you ned to implement. This article gives you a very nice intro to how to use Step Functions with Node.js. BTW, FullStack Bulletin is actually built using step functions and I have a series of videos about that!
What is a barrel file? Don't worry, before reading this awesome article I didn't know either... A barrel file is a code file that exists only to re-export certain values, classes, or functions from another file. This is a common practice in many JS projects, but is there really value in it? This article showcases an alternative approach that can help you to keep your code cleaner and your applications more performant.
Did you know CSS now supports nesting natively? We have featured a few articles about that in the last few months... Now, while CSS nesting is great, it should be used with caution. As a rule, if a selector will work without being nested, don't nest it. However, there are certain situations where nesting can make things easier to understand. Also, CSS nesting works slightly differently than nesting with SASS, so if that's a feature you are planning to use, make sure to check out this article and learn about all the nuances...
There are many popular frameworks for writing little web applications. Go and JavaScript (Node.js) are among the most popular choices. Reportedly, Netflix runs on Node.js; Uber moved from Node.js to Go for better performance. But there are also less popular options such as Nim. This article showcases an in-depth review of their performance characteristics... If you are looking for an approach that would give you a great compromise between ease of use and performance, this article has you covered... oh yeah, it talks about Bun too!
The more I use Rust, the more I love its powerful and flexible type system. While I wouldn't be able to explain to you why in a convincing way, this article is probably a better place to start reading about why a good implementation of strong static typing can be so beneficial to developers. If you come from a JavaScript or Python-heavy background and you haven't dealt much with static types, this is probably a great read to get into.
Book of the week
The Go Programming Language
by Alan A. A. Donovan
The Go Programming Language is the authoritative resource for any programmer who wants to learn Go. It shows how to write clear and idiomatic Go to solve real-world problems. The book does not assume prior knowledge of Go nor experience with any specific language, so you’ll find it accessible whether you’re most comfortable with JavaScript, Ruby, Python, Java, or C++.