Search the archive

Full-text search across article titles and summaries. Refine with sector, year, content type, and reading-time filters.

Results

9,381 matches

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.

2024.03.05
alexharri.com10 min readTLDR Web Dev

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.

2024.03.05
frontendmasters.com23 min readTLDR Web Dev

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.

2024.03.05
hillelwayne.com10 min readTLDR Web Dev

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.

2024.03.05
bytesizego.com12 min readTLDR Web Dev

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.

2024.03.05
joshaustin.tech3 min readTLDR Web Dev

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.

2024.03.05
open.substack.com5 min readTLDR Web Dev

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

2024.03.05
qawolf.comTLDR Web Dev

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.

2024.03.05
github.comGitHub repositoryTLDR Web Dev

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.

2024.03.05
ubicloud.comToolTLDR Web Dev

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.

2024.03.05
voussoir.net10 min readTLDR Web Dev

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.

2024.03.05
nolanlawson.com3 min readTLDR Web Dev

MAKING META (102 MINUTE PODCAST)

Andrew Bosworth, the CTO of Meta, speaks about how Meta’s success stems from a blend of a top-down vision from Mark Zuckerberg and a bottom-up execution culture that encourages employees to contribute, question, and share ideas.

2024.03.05
open.substack.comTLDR Web Dev

INCREASE TEST FIDELITY BY AVOIDING MOCKS

Use real dependencies or high-fidelity fakes when unit testing, as using mocks reduces test effectiveness by potentially masking discrepancies between test behavior and the actual production code.

2024.03.05
testing.googleblog.com2 min readTLDR Web Dev

HOW TO BUILD AN OFFLINE-FIRST APP USING EXPO & LEGEND STATE

Legend State is a React state management library optimized for offline-first persistence. Expo is a React Native mobile app development framework. Offline-first applications have challenges like conflict resolution to deal with. This tutorial walks readers through how to deal with offline sync, offline conflicts, real-time collaboration, and other common offline-first challenges.

2024.03.04
expo.dev9 min readTLDR Web Dev

REPORTING CORE WEB VITALS WITH THE PERFORMANCE API

The Performance API is a set of standards for measuring and evaluating performance metrics with JavaScript. This article demonstrates how to use the Performance API to generate performance metrics directly in the DOM to create your own reporting. Chromium-based browsers have the best support for all Core Web Vitals (CWV) properties. Firefox offers partial support.

2024.03.04
smashingmagazine.com13 min readTLDR Web Dev

HOW LINKEDIN SERVES 5 MILLION USER PROFILES PER SECOND

LinkedIn's user profile views created a massive read workload that pushed the limits of its existing document database, Espresso. To solve this, its team introduced Couchbase, a distributed NoSQL database, as a caching layer to reduce the read load on Espresso. They designed the caching layer to be independent of Espresso to avoid cascading failures if Couchbase experienced issues. The entire profile dataset is cached in every data center for quick access.

2024.03.04
blog.quastor.org10 min readTLDR Web Dev

ASK HN: HOW CAN I LEARN ABOUT PERFORMANCE OPTIMIZATION? (HACKER NEWS THREAD)

Various commenters write about how to learn about performance optimization better. It’s important to start with fundamentals, such as the sources of performance issues and how CPU cycles are wasted. Further techniques can be studied depending on the tech stack and use case. Concepts like parallelization, data structure optimization, and latency versus throughput are mentioned.

2024.03.04
news.ycombinator.comTLDR Web Dev

QUALITY IS A HARD SELL IN BIG TECH

Big tech companies often release products with issues like unintuitive UIs, outdated code, unfixed bugs, and poor developer experience. This focus on quantity over quality stems from a prioritization of short-term stock gains driven by flashy new features, rather than investments in long-term product improvement. This strategy involves intentionally degrading product quality after establishing user dependence.

2024.03.04
pcloadletter.dev3 min readTLDR Web Dev

5 LESSONS I LEARNED THE HARD WAY FROM 6 YEARS AS A SOFTWARE ENGINEER

Software engineers should propose solutions, not just problems, and focus on team goals over just personal goals. Collaboration trumps code perfection. Software engineers should build relationships for influence, as building trust makes it easier to get buy-in and support for one’s ideas.

2024.03.04
careercutler.substack.com8 min readTLDR Web Dev

Sponsored

TURN YOUR MAC INTO A PRODUCTIVITY POWERHOUSE

If you’re a Mac user, you need to check out Raycast [12]. It’s a blazingly-fast, totally extendible launcher that lets you do pretty much everything: search files, run system commands, calculate anything, manage windows (!), see clipboard history, and much more! Raycast is always free to download [12]. Go Pro for always-on ChatGPT wherever you’re working, cloud sync, and other power features.

2024.03.04
ray.soSponsorTLDR Web Dev

WAKU

Waku is a minimal React framework designed for small to medium-sized React projects.

2024.03.04
waku.ggToolTLDR Web Dev

HANCHO

Hancho is a build system written in Python designed for small to medium-sized projects.

2024.03.04
github.comGitHub repositoryTLDR Web Dev

TAB AUTOCOMPLETE (BETA)

Continue, an open-source code copilot, now provides support for tab autocomplete in VS Code based on local models, which means that there are no server costs or online server calls.

2024.03.04
continue.dev3 min readTLDR Web Dev

INSIDE THE CRISIS AT GOOGLE

Google's recent AI debacle with its Gemini image and text generation tool has sparked an internal crisis, with plummeting morale and calls for CEO Sundar Pichai's resignation. While the public focuses on potential bias in the tool, the root cause lies in organizational chaos: unclear ownership of Gemini's development and a lack of accountability within Google teams. This dysfunction led to hasty decision-making and insufficient coordination, resulting in the tool's problematic outputs.

2024.03.04
bigtechnology.com6 min readTLDR Web Dev

APPLE REVERSES COURSE ON DEATH OF PROGRESSIVE WEB APPS IN EU

Apple planned to disable Progressive Web Apps (PWAs) in iOS for European users, citing EU regulations as a cause. However, these changes sparked criticism and threats of investigation by the European Commission. Apple has now reversed course, restoring PWA functionality, but states that PWAs will still need to be built on WebKit to comply with Apple's security and privacy standards.

2024.03.04
appleinsider.com4 min readTLDR Web Dev

INTERESTING IDEAS IN OBSERVABLE FRAMEWORK

Observable Framework is a new open-source tool for building interactive data apps and dashboards. Framework projects are built from Markdown files with embedded JavaScript, enabling the usage of standard text editors and version control. Everything is still reactive, ensuring updates flow seamlessly throughout your document.

2024.03.04
simonwillison.net8 min readTLDR Web Dev

GOOGLE SRE BOOK

The Google SRE Book is a comprehensive guide on how Google manages reliability for its production environments.

2024.03.04
sre.googleToolTLDR Web Dev

A FUN LINE OF CODE

The Deno Audio Duration package races two asynchronous file searches to find audio file duration.

2024.03.04
dbushell.com2 min readTLDR Web Dev

HAPPY LEAP DAY!

Software systems that don't properly account for Leap Days have a tendency to glitch or fail on February 29th. This year is no exception, with reports of failures in supermarket payment systems, airline ticketing, gas station payment terminals, smartwatches, and even a major video game. To prevent this from happening, software engineers should use framework-level date libraries wherever possible, be wary of edge cases, and not assume fixed durations for months and years.

2024.03.01
blog.pragmaticengineer.com6 min readTLDR Web Dev

HOW APPLE BUILT ICLOUD TO STORE BILLIONS OF DATABASES

Apple's iCloud and CloudKit were built using a combination of Cassandra and FoundationDB. Cassandra, which is being actively improved by Apple engineers, handles exabytes of data and millions of queries. FoundationDB powers CloudKit, Apple’s cloud backend service. It provides key features like transactional guarantees and solves scalability issues that Cassandra alone could not address. Each iCloud user gets their own database, resulting in billions of databases. This is made possible by the Record Layer's stateless architecture and resource allocation using a “record store” abstraction.

2024.03.01
read.engineerscodex.com10 min readTLDR Web Dev

INSIDE IMESSAGE EXTENSIONS — THE QUIRKY WORLD OF APPLE’S NICHE DEVELOPMENT TOOLS

Together To Do is an iMessage extension designed to replace comma-separated text messages with a checkable list. Its developer found it challenging to integrate SwiftUI into iMessage extensions as Apple doesn’t use SwiftUI by default yet. Adding to this, iMessage functionality in the iOS 17 simulator was broken, making testing difficult and necessitating workarounds with older simulators or physical devices. While the potential audience within the iMessage App Store is smaller than the regular App Store, Together To Do has achieved notable rankings and consistent organic downloads, suggesting that iMessage extensions may be a viable niche.

2024.03.01
bit.ly12 min readTLDR Web Dev

YOU'VE JUST INHERITED A LEGACY C++ CODEBASE, NOW WHAT?

When first starting work on a legacy C++ codebase, you should prioritize making the codebase manageable in terms of security, development experience, correctness, and performance by focusing on small, incremental changes. Aim for a passing test suite, remove dead code, enforce linters and code formatters, set up automated builds, and clearly document how to build and test the project. It’s also important to obtain buy-in from management by explaining the issues with the codebase and proposing solutions in non-technical terms.

2024.03.01
gaultier.github.io16 min readTLDR Web Dev

WHERE I’M AT ON THE WHOLE CSS-TRICKS THING

The founder of the CSS-Tricks website sold the website in March 2022 to DigitalOcean, who promptly fired the content team and stopped publishing new content. He tried to regain control of CSS-Tricks and proposed running the site himself, but DigitalOcean ultimately declined the proposal due to a lack of internal support. Today, CSS-Tricks remains in a somewhat abandoned state.

2024.03.01
chriscoyier.net6 min readTLDR Web Dev

NOTES FROM “WHY CAN’T WE MAKE SIMPLE SOFTWARE?”

It’s important to be “scale appropriate” when architecting software. Complexity multiplies with factors like supported browsers, platforms, and screen sizes. The tools that worked previously may no longer be suitable as you scale. Embrace the need to rebuild with new tools to manage the increased complexity.

2024.03.01
blog.jim-nielsen.com3 min readTLDR Web Dev

NEW TO THE WEB PLATFORM IN FEBRUARY

The stable releases of Firefox 123 and Chrome 122 have updates including declarative shadow DOM, a new Storage Buckets API, and a feature that preloads resources with the 103 Early Hints HTTP code.

2024.03.01
web.dev2 min readTLDR Web Dev

PINGORA

Pingora is a Rust framework for building fast, reliable, and programmable networked systems. Cloudflare uses it to serve more than 40 million requests per second.

2024.03.01
github.comGitHub repositoryTLDR Web Dev

AWS LAMBDA WEB ADAPTER

AWS Lambda Web Adapter is a tool for running web applications on AWS Lambda. It allows developers to build web apps that use an HTTP API with familiar frameworks like Express.js, Laravel, Next.js, Flask, and more on AWS Lambda.

2024.03.01
github.comGitHub repositoryTLDR Web Dev

HOW DO COMPANIES SHIP CODE TO PRODUCTION?

The typical code deployment process for companies starts with planning and development, where developers work in sprints while product owners refine requirements as user stories. Automated systems are then used to verify that the code passes tests. The code is deployed to dev and QA environments for testing before being deployed to production.

2024.03.01
x.com3 min readTLDR Web Dev

ON GETTING PAID FOR OPEN SOURCE

Open source can be integrated into your job, but not every company offers these roles. This author's open source work began as part of their regular job, evolving into dedicated company time and side consulting gigs. Despite various funding models, including sponsorships and partnerships, they found it difficult to make a living solely from open source outside of a company.

2024.03.01
radekmie.dev9 min readTLDR Web Dev

PREVENTING SQL INJECTION ATTACKS IN NODE.JS

SQL injection can occur when user input is used in SQL queries without validation, allowing attackers to manipulate queries for malicious purposes. To prevent SQL injection attacks, developers should use query placeholders or prepared statements to ensure user input is treated as data, not code. They should also validate and sanitize user input to enforce format and character restrictions.

2024.03.01
snyk.io10 min readTLDR Web Dev