Bloom Filters are a probabilistic data structures useful for checking membership in a set with efficient space usage. They store information using bits and hash functions and offer fast membership checks. They can give false positives (claiming an item exists when it doesn't), but they never give false negatives (missing an item that exists). In the real world, Bloom filters are commonly used for caching and distributed databases.
SPAs (Single Page Applications) are defined by a core feature: they dynamically rewrite their content as users interact with them instead of the default method of loading entirely new pages from the server. SPAs are able to provide this feature via the History API, a clunky API developed long before SPAs were the norm. The Navigation API is a newly proposed API that completely overhauls this space that promises to be easier to adapt. This page describes the Navigation API at a high level with code examples on popular usages.
100 million people were using ChatGPT weekly by November 2023. Scaling ChatGPT to such a large user base was not an easy feat. OpenAI faced a few key challenges when scaling: managing GPU RAM, avoiding cache misses, finding the right batch size, measuring the right metrics, and handling a shortage of GPUs. The company found that taking a system-wide approach to optimization and being adaptable in the face of changing constraints allowed it to scale efficiently. Many of the lessons learned are applicable to general software systems.
Simple architectures can be surprisingly effective, even for large-scale applications. For example, Wave is a $1.7B fintech company with a CRUD app built on a Python monolith and Postgres database. The benefits of this simple architecture include lower cost, easier maintenance, and faster development. There are some areas where complexity is unavoidable, such as telecom integrations. Simple architectures are a good choice for many businesses, especially those that are not ad-supported or businesses without high traffic levels.
Picat is a research language that combines logic programming, imperative programming, and constraint solving. “Planning" in Picat is when the program finds variable mutations to reach a desired end state. Instead of defining algorithms, Picat defines starting states, actions, and final states, allowing the program to find solutions through mutations. Planning helps minimize cost and is best used for applications in AI, robotics, and video games.
Coding interviews are effective for companies despite their limitations because they help minimize the risk of hiring bad candidates. While there are downsides to coding interviews, like pressure and filtering out good candidates who don't perform well, they can be useful for assessing a candidate's problem-solving skills and their potential as a future teammate. Automated assessments aren’t as reliable as they lack human interaction and can’t always catch cheating.
Dax is a collection of cross-platform shell tools for Deno and Node.js. It allows users to export the shell’s environment to the current process. Dax has support for a global configuration. It brings extra features to Windows that are natively available on Unix-based systems.
Hyperdiv is a Python framework for developing reactive browser UI apps. It features built-in components, terse immediate-mode syntax, and minimal tool boilerplate. Hyperdiv supports Markdown, charts, styled web components, local storage, and forms.
Valve has made the Steam Audio SDK fully open-source, with plug-ins included. Steam Audio is an immersive audio solution for games and VR. It has real-time sound propagation, VR integration, and 3D audio capabilities. There are plug-ins to make it compatible with Unity, Unreal Engine, and other game engines.
Cloud storage performance lags far behind the advancements in SSD technology. Major cloud vendors are offering read/write speeds 10x slower than high-end SSDs available on the market. The reasons for this big difference are unclear but could be due to concerns about SSD durability, lack of demand, or potential disruption to existing cloud storage services.
This article provides twenty examples of how people are using custom GPTs in the workplace to make their teams more productive. It walks through how to create a custom GPT and demonstrates some interesting real-world use cases, such as figuring out internal ownership and technical dependencies, learning from past user research studies, and grading the relevance of search results.
This author spent a year cleaning medical device data from the FDA's 510k database website. The website's interface was outdated and lacked functionalities like fuzzy search and keyboard shortcuts. To save time and improve their workflow, the author wrote userscripts to automate repetitive actions by adding shortcuts for opening search, focusing on search input, and copying device ID.
Node developers are wrestling with the decision to enable Corepack (a tool for managing package managers that lets you use npm/yarn/pnpm without having to install them) by default. This has sparked a debate about the possibility of even removing npm from the Node.js binary.