Codeminer42 Dev Weekly #6

HELLO EVERYONE!!! It is April 12th, 2024 and you are reading Codeminer42’s tech news report. Let’s check out what the tech world showed us this week!

Optimizing WebKit & Safari for Speedometer 3.0 – by Alan Baradlay, Antti Koivisto, Matt Woodrow, Patrick Angle, Ryosuke Niwa, Vitor Ribeiro Roriz, Wenson Hsieh, and Yusuke Suzuki

Great news! The team of the fast, open-source web browser engine, Webkit, used by Safari, Mail, App Store, and many other apps on macOS, iOS, and Linux, discusses the various optimizations made by the team to improve the performance of WebKit and Safari based on the Speedometer 3.0 benchmark. These optimizations include improvements in tools, JavaScriptCore, JSON, inlining heuristics, JIT code destruction, garbage collection, DOM code, layout and rendering, style engine, SVG layout, IOSurface cache hit rate, GPU process wait time, compositing, and Safari’s AutoFill code. The optimizations resulted in a 60% improvement in the Speedometer 3.0 score between Safari 17.0 and Safari 17.4. It’s worth the full read!

Next.js 14.2 – by Delba de Oliveira & Tim Neutkens

The Next.js 14.2 version is out!!! This version includes improvements in development, production, and caching. It introduces Turbopack for development, build and production enhancements, caching improvements with configurable invalidation periods, and error DX improvements (HALLELUJAH, I think you were also tired of incorporating Sherlock Holmes to debug the code via Next.js error dialog 😅). The post also mentions other improvements and the much awaited React 19 integration.

How To Create A Blog With NextJS – by Paul Underwood

In this tutorial, you will learn how to create a blog using the popular JS framework: NextJS. It covers how to set up the project, create content folders, fetch content API, create home, post, and tag pages, and convert markdown content to HTML.

Cross-Site Request Forgery (CSRF) – by Hussain

This article discusses Cross-Site Request Forgery (CSRF) attacks, how they work, and the potential impact on web applications. It also provides practical labs to understand and exploit CSRF vulnerabilities. The author emphasizes the importance of understanding web application code to identify vulnerabilities and provides resources for further learning.

A Technical Introduction to Stable Diffusion – by Vidhi Chugh

The article discusses Stable Diffusion, a member of the GenAI family for image generation, and its technical details. It explains how diffusion models work, the mathematics behind them, why Stable Diffusion is special, and how to install Stable Diffusion WebUI. The post also covers how to download models and offers further readings on the topic.

JavaScript Signals standard proposal🚦- by Rob Eisenberg and Daniel Ehrenberg

The JavaScript Signals standard proposal aims to align the JS ecosystem by providing a common model for signals. The proposal focuses on the core semantics of the underlying signal graph, rather than a developer-facing API. Signals are designed to manage application state efficiently, particularly in complex UI scenarios. The proposal is currently at Stage 0 and is being prototyped and tested before advancing further. The goal is to standardize Signals if they prove to be beneficial across multiple frameworks. The proposal addresses various design goals, including interoperability, performance, and memory management.

How to Send Emails With Nodemailer in NestJS – by Okure U. Edet

The article discusses how to send emails with Nodemailer in a NestJS application. It provides step-by-step instructions on setting up a NestJS project, configuring Nodemailer, and sending emails using Nodemailer.

How to Build a Marquee Component with React – by Jaja Ibifubara David

Have you ever stopped to think about how to build a marquee component with React? The author helps us understand marquee components, its benefits, and planning and designing the component. The guide emphasizes user experience (UX), creativity, and experimentation in creating dynamic scrolling elements for web projects.

13 Mistakes you should not make in Open Source – by Mohd Imran

This useful article talks about some common mistakes to avoid when contributing to open source projects, such as thinking only code matters, starting with too big contributions, not sharing learnings publicly, and more. It emphasizes the importance of communication, testing code, seeking mentorship, and making friends in the open-source community. And riding the train of the open-source subject, I invite you to read this excellent post written by our contributor Kim Emmanuel about his experience with a local problem that led him to contribute to the open-source world

Google Chrome Adds V8 Sandbox – A New Defense Against Browser Attacks

This interesting article talks about a new defense against browser attacks in Google Chrome, specifically the V8 Sandbox. The V8 Sandbox aims to prevent memory corruption issues in the V8 engine. To know more, access the full article.

Apple relaxes App Store rules to permit game emulators – by Ryan Daws

The big tech Apple decides to relax its App Store rules to allow retro game console emulator apps. This move comes after pressure from users and legislators, particularly in Europe. The article also mentions the potential impact on competition in the app store market and the ongoing investigations by the EU under the Digital Markets Act (DMA), which is a key piece of legislation designed to promote fair competition in the digital market.

Introducing pgzx: create PostgreSQL extensions using Zig – by Cezzaine Zaher

This great article introduces pgzx, an open-source framework for developing PostgreSQL extensions using the Zig programming language. It explains what Zig is, how it can be used for Postgres development, and provides a walkthrough of pgzx features like error handling, memory management, and unit tests. The text also discusses why this framework was created, and its status as an alpha project.

Queuing Theory for Non-Functional Testing – by Stelios Manioudakis

Warning: this article can be dense, but if you like this topic, the author talks about the Queuing theory, a mathematical branch that analyzes system waiting lines. In non-functional software testing, this theory helps predict performance issues by analyzing queue lengths, waiting times, and server utilization. The article will cover the basics of queuing theory, benefits and limitations, a case study on mobile gaming applications, and tools for analysis.

Fixing Duplicate API Requests – by Nicolas Fränkel

The author talks about the challenges of designing distributed systems and the concept of idempotence in the context of API requests. It explains how the Idempotency-Key HTTP header can be used to prevent duplicate API requests and outlines error scenarios that may occur.

Rust Tutorial – Learn Multi-Scale Processing of Astronomical Images – by Anshul Sanghi

This expansive article shows us the implementation of the À Trous transform algorithm using the friendly version of C/C++ language: Rust, for image processing. It covers topics such as multi-scale processing, convolution, and recomposition and provides a step-by-step guide on how to implement the algorithm.

Write less code with these 5 CSS tips – by Kevin Powell

Our friend Kevin Powell shows us various techniques for writing more efficient CSS code. They emphasize the importance of using more specific selectors, such as attribute selectors and descendant selectors, to target elements effectively. Kevin also demonstrates how to use the has selector to select elements based on their relationship to other elements. Additionally, they show how to use the "preceding-sibling" and "adjacent-sibling" selectors to target elements before and after a specific element.

And that’s all for this week! Wish you all a great weekend and happy coding!

We want to work with you. Check out our "What We Do" section!