TLDR Web Dev

TLDR WEB DEV 2024-03-05

6 sections20 entrieslinks blockcomplete parse

Parse notes

  • Subscription/account footer truncated before parsefooter_truncated

01GENERAL

Sponsored

POST/CON 24 SPEAKER LINEUP AND AGENDA HAS BEEN ANNOUNCED!

Postman’s annual user conference (April 30 - May 1 in San Francisco) is shaping up to be one of 2024’s top developer events—featuring workshops [6], in-depth presentations, and an awesome after-party. Hear from Postman experts and industry leaders [7] including:

postman.comSponsor

02ARTICLES & TUTORIALS

JSDOC AS AN ALTERNATIVE TYPESCRIPT SYNTAX

TypeScript has become the default language of choice as web development has embraced static typing during the past decade. However, there are times when you don’t want to use TypeScript, whether due to tooling constraints, longer setup and compile time, or a team member who does not like static typing. JSDoc is a good alternative as it can be understood by the TypeScript compiler and lets you take advantage of some of the benefits of static typing without needing a single .ts file. This post serves as a crash course in using JSDoc as an alternative syntax for TypeScript and covers the important TypeScript-related features.

alexharri.com10 min read

CONSOLE.DELIGHT

Developer consoles in web browsers offer more than just text logging. You can use the %c format specifier to insert CSS, SVG, and even limited HTML directly into console.info() or console.log() output. This opens up possibilities for stylized text, animated graphics, and interactive elements right in the console. While there are limitations, like no external images or event listeners, this technique offers a unique way to enhance debugging and add surprises for curious users.

frontendmasters.com23 min read

THE HUNT FOR THE MISSING DATA TYPE

Graphs are powerful data structures, but they lack first-class support in most programming languages. This is due to the sheer number of design choices involved in representing graphs, as well as the importance of performance in graph algorithms. Graph libraries often try to balance flexibility and performance, but this can be difficult as different algorithms work best with different representations. As a result, using graphs often requires developers to make difficult trade-offs or implement custom solutions.

hillelwayne.com10 min read

03OPINIONS & ADVICE

HOW I KEEP MYSELF ALIVE USING GOLANG

This author leverages their experience with software incident management to manage their Type 1 diabetes. They use various tools and technologies to monitor blood glucose levels, contextualize readings, and create alerts to gain better visibility into their condition. These tools are integrated into an incident management system that allows them to receive notifications and even escalate alerts to designated contacts when blood glucose reaches dangerous levels.

bytesizego.com12 min read

JAVA IS BECOMING MORE LIKE RUST, AND I AM HERE FOR IT!

Java is evolving to incorporate concepts popularized by Rust, such as immutable data structures by default and algebraic data types. These changes were inspired by Rust's emphasis on compile-time safety guarantees. Developers can now define immutable records in Java. Java's new sealed interfaces and exhaustive switch syntax enable the use of algebraic data types so that code handles all possible states of a variable in a type-safe manner.

joshaustin.tech3 min read

BLAMELESS CULTURE SHOULD BE A STANDARD IN THE ENGINEERING INDUSTRY

Engineering teams should practice blameless culture. Assigning blame to negative incidents can hinder collaboration and growth. Mistakes should be treated as a team responsibility. A blameless culture creates psychological safety as opinions are valued, allowing lessons to be learned from incidents and encouraging collaboration.

open.substack.com5 min read

04LAUNCHES & TOOLS

with QA Wolf.

24-hour maintenance. On-demand test creation. Unlimited parallel test runs. Zero flakes guaranteed. What’s not to like? Get a quick demo

qawolf.com

PUTER

Puter is an open-source desktop environment that runs in a web browser. It is designed to be feature-rich, exceptionally fast, and highly extensible. Puter can be used to create remote desktop environments and serve as an interface for various services, including cloud storage, remote servers, and web hosting platforms.

github.comGitHub repository

UBICLOUD

Ubicloud provides cloud services on bare metal providers, such as Hetzner, OVH, or AWS Bare Metal. You can set it up yourself or use its managed service. Ubicloud aims to offer an open alternative to cloud providers while reducing costs.

ubicloud.comTool

05MISCELLANEOUS

CSS FOR PRINTING TO PAPER

CSS offers control over the printed appearance of web pages, including page size, margins, and repeating elements across multiple pages. The @page rule sets printing defaults (often Letter size with zero margins), while the @media print query hides on-screen elements during printing. To ensure predictable layouts, it's best to manage margins within the DOM using padding rather than the @page rule's margin. JavaScript can be used when creating multi-page printouts to dynamically generate elements while ensuring headers and footers repeat correctly on each page.

voussoir.net10 min read

BUGS I’VE FILED ON BROWSERS

Web developers can directly contribute to improving browser compatibility by filing detailed bug reports. An analysis of bug reports across Chromium, Firefox, and WebKit confirms that browser teams are receptive, with high fix rates for valid bugs. Interestingly, the data suggests that cross-browser compatibility has improved over time, potentially due to efforts like the Interop project.

nolanlawson.com3 min read