Email Details

Companies need junior devs 💡, how Linux sleeps 💤, ArXiv paper discussions💬

There’s a current trend of solely hiring experienced "elite" developers, which ignores the value of junior employees in driving knowledge creation 

TLDR

Together With

 TLDR Web Dev 2024-09-09

🤺 Jira change management showdown (Sponsor)

When you need a Jira change management tool, you'll find two strong contenders on the market — Project Configurator (PC) and Configuration Manager for Jira (CMJ).

Both apps help administrators move projects and configurations between Jira sites for a variety of use cases, like migration and change promotion. But they are not the same when it comes to:

🔒 In-app safeguards

⚡️ Data capacity and speed

💁‍♂️ Overall user experience

If you're using Project Configurator, it might be time to switch to Configuration Manager for Jira (CMJ). Read why (and how) to make the change on the Appfire blog

🧑‍💻

Articles & Tutorials

Creating a Git commit: The Hard Way (8 minute read)

This blog post shows how to create a Git commit using low-level commands. It explains fundamental Git concepts like blob, tree, and commit objects, showing how they interact to form a commit. The post walks through a step-by-step guide on creating a commit using commands like `hash-object`, `update-index`, `write-tree`, and `commit-tree` to teach Git's object-based architecture.
WebP: The WebPage compression format (15 minute read)

This post explores different compression methods to improve the loading time of a website hosted on GitHub Pages. The author uses WebP to compress their blog's HTML content. This is done as a workaround because their blog hosting platform, GitHub Pages, doesn't support Brotli compression. They describe the process of encoding the HTML as a WebP image and then using JavaScript and the Canvas API to decode it back to HTML on the client-side.
Multithreading in Node.js: Using Atomics for Safe Shared Memory Operations (8 minute read)

Multithreading in Node comes with the risk of race conditions, where multiple threads accessing the same memory location can lead to inconsistent results. Atomics is a JavaScript API designed to address this issue by providing atomic operations that guarantee the integrity of shared memory access. It can be used to prevent race conditions and make sure that operations on shared resources occur as a single, uninterruptible unit.
🧠

Opinions & Advice

Your company needs Junior devs (6 minute read)

There's a current trend of solely hiring experienced "elite" developers, which ignores the value of junior employees in driving knowledge creation and psychological safety within teams. By teaching juniors, senior employees deepen their own knowledge and learn to challenge their assumptions. It also overall helps create a culture of learning, where mistakes are seen as opportunities for growth and juniors are encouraged to ask "dumb" questions, which can often lead to groundbreaking ideas.
The “email is authentication” pattern (3 minute read)

The common practice of using "Forgot Password" links as a primary authentication method is inefficient and risky. It relies on disposable passwords and ignores better security practices like password managers and multi-factor authentication. This behavior is not a conscious decision, but rather a learned process that people have adopted over time.
Asking the wrong questions (6 minute read)

With fundamental technological change, we tend to make predictions about the wrong things rather than getting our predictions wrong. This has been illustrated in the past, such as in 1950s science fiction, which was unable to envision women working, or the RAND study from 1964 which predicted automatic doctors and robots but missed the rise of general-purpose computing and the internet. This pattern continues today, with the focus on predicting the next big thing like VR or autonomous vehicles while overlooking the potential implications of underlying technological shifts.
🚀

Launches & Tools

Defeating the final boss of endpoints (Sponsor)

Imagine an endpoint that involves a long series of HTTP calls, file I/O, third-party calls (AI generation), and finally a couple of DB queries. Where do you even start debugging performance issues?! Learn how developer and podcaster Dan Mindru shaved off 22.3 seconds per call with Sentry Trace View. Read the blog or join the workshop
Reclaim the Stack (Website)

Mynewsdesk.com open-sourced its Kubernetes-based platform, which helped it to reduce costs, improve performance, and make its developer experience better.
JSON diff and patch (GitHub Repo)

JSON diff and patch, or jd, is a command-line tool and Go library for comparing and modifying JSON and YAML data using various diff and patch formats, including its own native format, JSON Merge Patch, and a subset of JSON Patch.
Inertia.js (Website)

Inertia is a tool that allows developers to build single-page applications without needing to create an API by utilizing existing server-side patterns and connecting them to client-side frameworks like React, Vue, and Svelte.
🎁

Miscellaneous

Linux's Bedtime Routine (28 minute read)

This article presents an overview of how Linux hibernates, focusing on the initial steps leading up to the system freeze. It starts by examining the system files /sys/power/state and /sys/power/disk, which serve as entry points for debugging and controlling hibernation. It then explores the autosleep mechanism, a feature borrowed from Android, which automatically suspends or hibernates the system when it's inactive. Finally, it goes over the steps involved in preparing the system for hibernation, including locking the system, preparing the console, notifying power management components, and synchronizing filesystems to disk.
ATProto for distributed systems engineers (7 minute read)

The AT Protocol is a technology by Bluesky designed for open social networking. It utilizes a decentralized backend architecture that leverages a shared data model called the "user data repository". This allows applications to share data and interact easily.
A Post-Google World (19 minute read)

Google's dominance in the advertising and tech industries is a major threat to innovation and democracy. Its business model, built on controlling both the buyers and sellers of ads, has led to ongoing antitrust trials.

Quick Links

Bitten by Unicode (4 minute read)

A programmer discovered a bug in his code that failed to correctly identify negative dollar figures due to variations in hyphen characters in Unicode and he fixed it by using Unicode categories to identify any preceding dash.
AlphaXiv (Website)

An open research discussion board built directly on top of ArXiv to discuss papers.
Preloading files to reduce download chains in the browser (4 minute read)

The "preload" attribute in HTML improves website performance by preloading necessary files, such as fonts and data fetched by JavaScript, so the browser downloads them simultaneously.
Behind The Scenes: The Making of VS Code (96 minute video)

A detailed conversation with two of VSCode's principal engineers on how it was built.

Love TLDR? Tell your friends and get rewards!

Share your referral link below with friends to get free TLDR swag!
Track your referrals here.

Want to advertise in TLDR? 📰

If your company is interested in reaching an audience of web developers and engineering decision makers, you may want to advertise with us.

If you have any comments or feedback, just respond to this email!

Thanks for reading,
Priyam Mohanty, Jenny Xu & Ceora Ford


If you don't want to receive future editions of TLDR Web Dev, please unsubscribe from TLDR Web Dev or manage all of your TLDR newsletter subscriptions.

© 2024 Email Dashboard. All rights reserved.