TLDR Web Dev

TLDR WEB DEV 2024-07-15

5 sections17 entrieslinks blockcomplete parse

Parse notes

  • Subscription/account footer truncated before parsefooter_truncated

01ARTICLES & TUTORIALS

BUILDING AND SCALING NOTION'S DATA LAKE

As Notion grew exponentially, it had to build a scalable data lake. Its solution involves incrementally ingesting updated data from Postgres to Kafka, then using Hudi to write to S3 for processing. Spark is used for complex tasks like tree traversal and denormalization. This approach has resulted in cost savings, improved data freshness, and has unlocked new possibilities for AI and search features.

notion.so14 min read

HOW WE SAVED 300MS FROM EVERY AWS POD STARTUP WITH A SINGLE GRAFANA LOKI QUERY

Checkly, a synthetic monitoring tool, reduced its pod startup time by optimizing the AWS SDK and changing the order of operations. It initially used large containers with long startup times, but switching to ephemeral pods required a faster startup. The company found that multiple versions of the AWS SDK were causing delays. Standardizing the version led to a bunch of savings in compute costs.

checklyhq.com12 min read

SPEEDING UP THE JAVASCRIPT ECOSYSTEM

TypeScript's new isolated declarations feature simplifies code packaging by automatically generating .d.ts files. This improves the "go to source" functionality and also removes the need to manually create these files. It makes publishing packages faster by shifting definition file generation from the publishing process to the installation process.

marvinh.dev9 min read

02OPINIONS & ADVICE

WORKING WITH STACKED BRANCHES IN GIT IS EASIER WITH --UPDATE-REFS

Git 2.38 introduced the --update-refs feature to streamline the process of rebasing stacked branches. This new feature automatically updates dependent branches when the base branch is rebased, eliminating the need for manual rebasing and potential conflicts. It can be used in various scenarios, including rebasing a stack of branches, updating stacked branches on a changed branch, and interactive rebasing.

andrewlock.net8 min read

03LAUNCHES & TOOLS

Sponsored

👀 OBSERVING AWS MICROSERVICES

Join Lumigo CTO, Aviad Mor, and AWS Serverless Hero, Yan Cui! On the agenda: why observability for AWS microservices [9] has gotten so expensive and complicated [9] — and what you can do about it. Featured topics include AI and ML for observability, distributed tracing, cost management techniques, and more! Join live to attend the

info.lumigo.ioSponsor

Q&A

info.lumigo.io

PLV8

PLV8 is a trusted Javascript language extension for PostgreSQL. It can be used for stored procedures, triggers, etc.

plv8.github.ioTool

QUARTZ

Quartz is a set of tools that helps you publish your notes as a website for free. It converts Markdown notes into a fully functional website.

github.comGitHub repository

GPU.CPP

gpu.cpp is a lightweight library that makes portable GPU computation with C++ simple. It focuses on general purpose native GPU computation, using the WebGPU specification as a portable low-level GPU interface. This means developers can drop in GPU code in C++ projects and have it run on Nvidia, Intel, AMD, and other GPUs, along with a wide variety of laptops, workstations, mobile devices, and more.

github.comGitHub repository

04MISCELLANEOUS

WE NEED VISUAL PROGRAMMING. NO, NOT LIKE THAT

Visual programming often fails to gain traction among developers because it focuses on replacing code syntax instead of visualizing important, implicit aspects of software that developers already struggle with. Developers already use visual representations like treemaps, code retention diagrams, network topologies, and memory layouts to understand and analyze different aspects of their code and systems. These visualizations can be immensely helpful for tasks like onboarding in large codebases, diagnosing performance problems, understanding data layouts, and tracking complex client-server interactions, so there still is a lot of opportunity here for startups.

blog.sbensu.com13 min read

UNIVERSAL CODE EXECUTION BY CHAINING MESSAGES IN BROWSER EXTENSIONS

By chaining various messaging APIs in browsers and browser extensions, it's possible to achieve 'universal code execution', breaking Same Origin Policy and browser sandbox. This vulnerability allows malicious web pages to communicate with an extension's content script and then relay messages to the background script, which can further communicate with a native application on the host operating system. This means that the chain can execute arbitrary code on the victim's machine.

spaceraccoon.dev11 min read

RESPONSIVE BAR CHARTS IN HTML AND CSS

Using SVG for responsive web visualization can be difficult. This article presents an alternative hybrid approach that combines HTML, CSS, and SVG. A grid-based layout with logical properties can be used to handle bidirectional text and accommodate positive and negative values.

9elements.com10 min read