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

HAS IT BEEN 50 YEARS OF SQL ALREADY?

SQL has become the dominant language for interacting with relational databases in the last 50 years. It faced competition from other query languages like QUEL, but its adoption by IBM's Db2 and subsequent endorsement by standards bodies cemented its position as the industry standard. SQL has evolved a lot since then to stay relevant.

2024.06.05
theregister.com13 min readTLDR Web Dev

WORKING AS UNEXPECTED

A security vulnerability in GitHub's branch protection feature allows for protected credential exfiltration. This occurs when a wildcard branch protection rule is used, as it immediately protects any newly created branches, making them eligible to access secrets restricted to protected branches. This can be exploited to exfiltrate sensitive information, such as signing keys, by creating a new branch and setting up a workflow to access the secret.

2024.06.05
chainguard.dev5 min readTLDR Web Dev

PROMISES FROM THE GROUND UP

Promises in JavaScript aren't always intuitive to use, but they're required to be productive with JavaScript. Promises are needed because JavaScript is single-threaded, which can cause issues when blocking operations like window.prompt() are used. This post dives into the mechanics of Promises, their states (pending, fulfilled, rejected), and how to work with them using the .then() and .catch() methods. It also covers creating custom Promises, chaining them together, passing data between them, and the modern async/await syntax for a more synchronous-like experience.

2024.06.04
joshwcomeau.com19 min readTLDR Web Dev

THE ARCHITECTURE OF GRAB'S DATA LAKE

Grab manages its data using a data lake, using different storage formats for high and low throughput data. For high-throughput data, which is frequently updated, it uses Apache Avro with a Merge on Read (MOR) strategy, appending new data to log files for efficient writes and periodically compacting them for manageable reads. For low-throughput data with infrequent updates, it uses Parquet with Copy on Write (CoW), creating new file versions for each write.

2024.06.04
blog.quastor.org6 min readTLDR Web Dev

PARSING JSON IS A MINEFIELD

Parsing JSON, despite its seemingly simple format, is actually quite challenging because there are so many specifications that can be interpreted in different ways. This has led to inconsistencies in how different JSON parsers handle edge cases, extreme values, and maliciously crafted payloads, resulting in potential bugs, crashes, and denial-of-service vulnerabilities. This article goes into detail about this issue with examples of different types of objects (arrays, objects, numbers, and strings) combined with different types of parsers (C Parsers, Regex, and more).

2024.06.04
seriot.ch33 min readTLDR Web Dev

WHY I RETIRED FROM THE TECH CRUSADES

The creator of Ruby on Rails, David Heinemeier Hansson, realized that the success of the framework was not due to his attempts to convince others, but rather by showcasing its capabilities and letting others decide for themselves. He now believes in respecting the various preferences of programmers and encouraging them to find the language that best suits their individual style and needs.

2024.06.04
world.hey.com3 min readTLDR Web Dev

Sponsored

😘 KISS BUGS GOODBYE

QA Wolf [10] gets web apps to 80% automated end-to-end test coverage in just 4 months — and it requires zero effort (your team will thank you).

2024.06.04
qawolf.comSponsorTLDR Web Dev

NEW TO THE WEB PLATFORM IN MAY

Several new features were added to web browsers in May 2024, including CSS anchor positioning and stepped value functions in Chrome 125, the Screen Wake Lock API in Firefox 126, and the Compute Pressure API in Chrome 125.

2024.06.04
web.dev4 min readTLDR Web Dev

ANNOUNCING BRIOCHE!

Brioche is a new package manager and build tool inspired by Nix, Homebrew, and Cargo. It is a flexible and easy-to-use tool for managing software projects across different platforms and languages.

2024.06.04
brioche.dev7 min readTLDR Web Dev

QSTUDIO 3.0

QStudio 3.0 is an SQL editor that supports DuckDB as a local database. It has a Parquet file viewer and can convert a query result from any database to store it locally.

2024.06.04
timestored.comToolTLDR Web Dev

RADIAL MENUS IN VIDEO GAMES

Radial menus, also known as pie menus, are circular context menus used in video games to provide a smooth way for players to select options through directional input. They originated in console RPGs like "Secret of Mana" to streamline actions during battles, but have since evolved to be used in various ways, such as for quick actions in games or for selecting dialogue options in conversations.

2024.06.04
champicky.com8 min readTLDR Web Dev

PYTHON'S MANY COMMAND-LINE UTILITIES

Python modules can be run as command-line tools using the "-m" argument, providing functionality like starting web servers, opening URLs, formatting JSON data, and managing Python environments. This article goes through a bunch of examples, such as using libraries to read email, unzip files, and more.

2024.06.04
pythonmorsels.com15 min readTLDR Web Dev

DO NEW DEVS RELY ON AI TOO MUCH? (REDDIT THREAD)

Developers have been copy-pasting code from various sources even before AI existed, so it's up to new developers who want to be good at their job to use AI productively while still understanding the code being produced.

2024.06.04
links.tldrnewsletter.comTLDR Web Dev

“JUST” ONE LINE

The phrase "it's just one line of code" is misleading because it often hides the actual cost of the code, which can be massive in terms of complexity and performance impact on the end user.

2024.06.04
blog.jim-nielsen.com2 min readTLDR Web Dev

Sponsored

WANT TO REACH TLDR'S AUDIENCE?

Fortune 50 companies like AWS and Google Cloud and fast growing startups like Vercel and Secureframe work with TLDR to reach our audience of over 4 million tech-savvy decision makers with highly customized campaigns (like this one!).

2024.06.03
advertise.tldr.techSponsorTLDR Web Dev

WANT TO UNLOCK PERFORMANCE AND CLARITY? USE STRONG TYPES!

Strong types in programming languages like C++ and Rust, which enforce specific data types and rules for variables, lead to fewer bugs, more expressive APIs, and potentially better performance. They prevent invalid input, improve code clarity, and reduce the need for repetitive error checking (like in JavaScript with undefined).

2024.06.03
ekxide.io5 min readTLDR Web Dev

GEOGRAPHICALLY DISTRIBUTED POSTGRES FOR MULTI-TENANT APPLICATIONS

This article describes a pattern for geographically distributing PostgreSQL databases for multi-tenant applications using only standard PostgreSQL functionality. The pattern involves separating per-tenant data from control plane data, placing tenant data in the nearest region, creating a global view using Foreign Data Wrappers, and partitioning, while keeping authentication and control plane data centralized. This approach lowers latencies, complies with data residency laws, and allows edge computing while maintaining most PostgreSQL features and ACID guarantees within tenants.

2024.06.03
xata.io11 min readTLDR Web Dev

SOME THOUGHTS AS I SIT HERE IN ANOTHER STANDUP

Agile and Scrum are too rigid and bureaucratic as implemented in the industry right now. Daily standup is a prime example of a pointless and unproductive ceremony that wastes developers' time and fails to actually foster progress.

2024.06.03
lloydatkinson.net12 min readTLDR Web Dev

MY 3-STEP PROCESS FOR WRITING CLEAN CODE

A three-step process for writing clean code: first, prioritize making the code work, then add testing for correctness, and finally, refactor and clean up the code while relying on the tests.

2024.06.03
thesweekly.com4 min readTLDR Web Dev

TWINNY

Twinny is a free private AI extension for VS Code. It comes with fill-in-the-middle code completion, AI chat, customizable prompt templates, and more. Twinny supports both API endpoints and local LLMs.

2024.06.03
github.comGitHub repositoryTLDR Web Dev

SANDBOX

Sandbox is an open-source cloud-based code editing environment with custom AI code autocompletion and real-time collaboration.

2024.06.03
github.comGitHub repositoryTLDR Web Dev

WHAT DO I THINK ABOUT LUA AFTER SHIPPING A PROJECT WITH 60,000 LINES OF CODE?

Ivan Trusov, the lead programmer for a project, shares his experience using Lua for game development within the Defold engine. Trusov encountered some surprises with Lua's syntax and quirks, particularly with table handling. Despite these challenges, he found Lua's simplicity and speed very useful. Trusov also discusses the limitations of Lua's lack of strict typing and modules.

2024.06.03
blog.luden.io15 min readTLDR Web Dev

HTMX: SIMPLICITY IN AN AGE OF COMPLICATED SOLUTIONS

htmx offers a simpler alternative to frameworks in frontend development by enhancing HTML with attributes that enable AJAX-like functionality, utilizing the hypermedia concept to create RESTful applications without excessive JavaScript.

2024.06.03
erikheemskerk.nl17 min readTLDR Web Dev

GCSS

Gcss is CSS written in Pure Go.

2024.06.03
github.comGitHub repositoryTLDR Web Dev

Sponsored

Your site was super fast when you built it – but now it's 6 months later, and that thing feels slower than a 4-hour Scorcese movie.

2024.05.31
speedcurve.comSponsorTLDR Web Dev

DON'T DRY YOUR CODE PREMATURELY

The DRY (Don't Repeat Yourself) principle can be harmful if applied prematurely. Early abstractions can lead to unnecessary complexity where future requirements may require independent evolution of seemingly similar looking pieces of code. Instead of blindly following DRY, developers should always think through what code sections are truly redundant or may evolve in the future based on business requirements.

2024.05.31
testing.googleblog.com2 min readTLDR Web Dev

THE DECLINE OF THE USER INTERFACE

UI and UX over time have gotten worse. For example, current web interfaces often lack basic functionalities like "Ok" and "Cancel" buttons, require overly precise mouse movements, and lack clear visual cues for active elements or application identification.

2024.05.31
infoworld.com7 min readTLDR Web Dev

UNEXPECTED ANTI-PATTERNS FOR ENGINEERING LEADERS — LESSONS FROM STRIPE, UBER & CARTA

This article challenges three common engineering leadership anti-patterns. First, it argues against always avoiding micromanagement, suggesting that leaders should engage in "conflict mining" to understand context and write down the details of company strategies. Second, it advocates for measuring imperfect but useful metrics over waiting for perfect ones. Lastly, it challenges the idea of managers as umbrellas, suggesting that exposing teams to the "gory details" and providing less buffered information is probably better in the long run.

2024.05.31
review.firstround.com32 min readTLDR Web Dev

WHY, AFTER 6 YEARS, I'M OVER GRAPHQL

After initially being a GraphQL advocate, this developer now advises against its use due to several issues he encountered. These include increased attack surface due to query language exposure, difficulties in implementing effective rate limiting, challenges with query parsing and server overload, performance issues like N+1 problems and data authorization inefficiencies, and the overall complexity of maintaining a GraphQL codebase.

2024.05.31
bessey.dev12 min readTLDR Web Dev

Sponsored

7 ESSENTIAL APPS FOR MONDAY.COM

On monday.com [17]? If you're not using the app marketplace, you're seriously missing out. Check out this handy guide [16] to learn how to

2024.05.31
appfire.comSponsorTLDR Web Dev