TLDR Web Dev

TLDR WEB DEV 2024-02-13

6 sections22 entrieslinks blockcomplete parse

Parse notes

  • Subscription/account footer truncated before parsefooter_truncated

01GENERAL

Sponsored

FRONT-END DEVELOPER KIT FROM DATADOG

If you’re dealing with complex front-end frameworks and single-page applications, your approach to monitoring needs to evolve. This free developer kit [5] is packed with helpful resources to adopt a user-centric approach.

datadoghq.comSponsor

02ARTICLES & TUTORIALS

A CRASH COURSE ON DATABASE QUERY OPTIMIZATION BASICS

As databases grow, query optimization becomes more important to combat slow data retrieval and loading times. There are various strategies to optimize queries, including index creation, analyzing query execution plans, and understanding specific database engine optimization techniques. This article uses a real-world example to show how to optimize a query from start to finish.

swequiz.com5 min read

THE ADVANTAGES OF QUEUES ON LOGS

While logs and queues share temporal ordering, they differ fundamentally. Queues adhere to a First-In-First-Out (FIFO) principle, allowing for sequential consumption from the head or tail. In contrast, logs require readers to maintain a pointer and read by position rather than by order of arrival. This distinction leads to advantages in scalability when implementing logs as queues, particularly in enabling parallel consumption and efficient load distribution among multiple consumers without necessitating knowledge of the internal structure. Additionally, queues offer benefits such as replay and durability, explored in detail in the article.

jack-vanlightly.com14 min read

TOO DANGEROUS FOR C++

This article compares Rust's memory safety with C++ by illustrating a scenario involving an internal library written in Rust. Initially, the author used Rust's “Rc” type for reference counting but encountered thread safety issues. Upon switching to Rust's “Arc” type, which provides atomic reference counting, the compiler enforced thread safety, ensuring data race conditions were prevented at compile time. C++ lacks such safety features, relying on developers to manually handle thread safety, which can lead to subtle bugs and undefined behavior. Rust's borrow checker and type system statically prevents data races, making it unique among programming languages.

blog.dureuill.net7 min read

03OPINIONS & ADVICE

WHY WRITE SMALL DIFFS

Small diffs facilitate faster and more thorough code reviews, reduce the likelihood of introducing bugs, minimize merge conflicts, and make it easier to roll back changes if needed. While there may be exceptions for large diffs, such as when adding boilerplate or auto-generated code, the general rule is to aim for small, focused changes to codebases.

developing.dev3 min read

WHY ELIXIR IS THE BEST LANGUAGE FOR BUILDING A BOOTSTRAPPED, B2B SAAS IN 2024

Elixir is a great language for simplified web app development as it allows developers to collapse the tech stack through features like Phoenix LiveView, built-in concurrency and fault tolerance, and integration with familiar tools. The language also has a fairly stable ecosystem with mature tooling to speed up development, making it ideal for bootstrapped startups.

sleepeasy.app12 min read

(ALMOST) EVERY INFRASTRUCTURE DECISION I ENDORSE OR REGRET AFTER 4 YEARS RUNNING INFRASTRUCTURE AT A STARTUP

An infrastructure lead had to make various infrastructure decisions for a startup over the past four years. He endorses choosing AWS, RDS, and Redis ElastiCache, but regrets opting for other things, like AWS’s premium support. He also recommends considering dependency management and identity platforms earlier rather than later in order to save the company from a painful migration later on.

cep.dev19 min read

04LAUNCHES & TOOLS

STRACT

Stract is an open-source web search engine targeted towards tinkerers and developers. It features keyword search, advanced query syntax, a Wikipedia and StackOverflow sidebar, priority of personally-selected trusted websites, and more.

github.comGitHub repository

SAPLING

Sapling is a code editor that prioritizes editing speed, allowing users to edit code at the pace of their thoughts. It is similar to editors like Vim and supports editing in any language through plugins.

github.comGitHub repository

SWEEP ASSISTANT

Sweep Assistant, a locally operating developer tool, collaborates with you while coding. It prioritizes your security by exclusively transmitting code to your OpenAI endpoint. When using Azure OpenAI, all your code remains within the confines of your network.

docs.sweep.dev2 min read

05MISCELLANEOUS

GOOGLE AND AI | ELON MUSK ON TESLA COMP

A Google engineer named Eric Lehman warned in 2018 that AI posed a serious threat to Google's search dominance. This concern stemmed from Google's BERT project, which achieved impressive results in web answers (featured snippets). Lehman urged proactive measures to avoid being blindsided by a potential competitor, even a startup, using a similar approach. While Google acknowledged the threat, Lehman eventually left the company in 2022. This internal email highlights Google's early concerns about AI disruption and foretells the rise of alternative search engines like Perplexity, which capitalize on unsupervised learning from raw text.

techemails.com7 min read

DEVELOPERS ARE IN OPEN REVOLT OVER APPLE’S NEW APP STORE RULES

European app developers are expressing discontent with Apple's new App Store rules, criticizing Apple's fees and restrictions. Despite the potential for alternative app stores and payment systems, developers feel pressured to adhere to Apple's terms to avoid warnings and fees. Apple is defending its changes as compliant with regulations and necessary for user security.

bit.ly6 min read