TLDR Web Dev 2023-06-12

All-cash vs stock compensation for devs 💰, CS:GO security issues 🔓, LLM unit testing 📝

Articles & Tutorials

What is a Vector Database? (12 minute read)

Many AI applications that involve large language models or generative AI rely on vector embeddings, a type of data representation that carries within it semantic information that’s critical for the AI to gain understanding and maintain a long-term memory they can draw upon when executing complex tasks. Vector databases offer optimized storage and querying capabilities for embeddings. They have the capabilities of a traditional database that are absent in standalone vector indexes and the specialization of dealing with vector embeddings, which traditional scalar-based databases lack.

CS:GO: From Zero to 0-day (16 minute read)

Neodyme identified three independent remote code execution (RCE) vulnerabilities in the popular Counter-Strike: Global Offensive game. Each vulnerability can be triggered when the game client connects to their malicious Python CS:GO server. This post details their journey through the CS:GO binary and conducts a technical deep dive into various identified bugs. They conclude by presenting a proof of concept (POC) exploit that leverages four different logic bugs into remote code execution in the game’s client, triggered when a client connects to the server.

Gotchas of Streaming Pipelines: Profiling & Performance Improvements (9 minute read)

Lyft's engineering blog discusses strategies for identifying and addressing performance issues in streaming pipelines. The author emphasizes the importance of an iterative process involving measurement, root cause identification, and fixing. Key performance issues they address include data skewness, large window size, interaction with low-speed services, and serialization/deserialization, with solutions ranging from avoiding unnecessary operations to optimizing network aspects.
Launches & Tools

TinyBase (GitHub Repo)

TinyBase is a reactive data store for local-first apps. It has many features, like support for both KV stores and tabular data, a powerful query engine, flexible UI reactivity to data updates, data sync between remote and local storage, and more. When compressed, TinyBase is less than 10kB and has zero dependencies.

Faker.js UI (GitHub Repo)

Faker.js UI provides an easy way to generate fake, but realistic data, for testing and development.

Ozone (Website)

Ozone is software to help developers build unit tests for LLMs. Ozone enables developers to ensure prompt reliability, increase security, and foster efficient collaboration. It provides intuitive prompt testing and refinement, including automated registered tests, for reliable and secure AI interactions.

The Myth of the AI Infrastructure Phase (2 minute read)

Can LLM infrastructure be built before LLM applications? The phrase “sell shovels in a gold rush” has led to a host of infrastructure for LLMs startups in the wake of the LLM boom. However, knowing the correct APIs and use cases for LLM infrastructure before real LLM-enabled applications are deployed for a long time is difficult. It may not be the time yet for AI infrastructure companies as actual AI applications need time to grow first so that actual problems can be discovered.

Mental Liquidity (5 minute read)

Mental liquidity is the ability to quickly abandon previous beliefs when the world changes or when you come across new information. However, mental liquidity is rare and can be hard to change as you get older. Morgan Housel, the author of Psychology of Money, lays out some anecdotes about how Albert Einstein himself even had a problem with mental liquidity. It’s important to be careful about what beliefs you let become a part of your identity and how most fields have theories, ideas, and hunches, but not laws - things that are unimpeachable and cannot ever change.

How Much Does it Cost to Develop an App Like Shein? (15 minute read)

Shein is a fashion shopping app that contains basic features like authentication, payment, and more. This article contains numerous business aspects of developing an app like Shein. It starts by explaining how much it costs to develop the app, which depends on factors like app size, platform and location of app developers. A basic small-scale app can cost between $25,000-$35,000 and take 4-6 months to develop. The article then focuses on the business model of Fashion apps like Shein, what makes it popular and key features to include in a fashion app. On the technical side, it covers the process of developing such an app, from market analysis to development and to testing.
Quick Links

10 Unix File Management Commands That Every Developer Should Know (7 minute read)

Knowing some handy Unix-based commands to communicate with the system via terminal can save you time as a developer.

Awesome Codebases (GitHub Repo)

A collection of awesome open-source codebases worth exploring.

Reddit’s users and moderators are revolting against its CEO (5 minute read)

In protest to Reddit’s new proposed API changes, many popular subreddits are shutting down their communities temporarily, on June 12th.

EP63: Linux file system explained (2 minute read)

This system design refresher goes over how the Linux file system is designed and provides a handy cheat sheet for SQL vs NoSQL databases.
Get our free, 5-minute newsletter read by 350,000 frontend, backend, and full stack developers
Join 300,000 readers for