Bun v1.1.22 introduces performance enhancements, bug fixes, and Node.js compatibility improvements, including faster Express execution, ES module loading, and Bun.serve() POST requests, as well as reduced memory usage and improved stack traces.
Klarna aims to replace 2/3rds of customer support roles with its OpenAI-powered AI chatbot designed to handle basic customer support inquiries. While the chatbot is well-built and handles common questions effectively, it relies on human agents for more complex issues, effectively automating only "L1" support. Automating L1 support is not a revolutionary concept - companies have been doing so for years using various methods.
2024.08.09·blog.pragmaticengineer.com·13 min read·TLDR Web Dev James Park envisioned a fitness tracker that could encourage people to be active outside the home. Along with his friend Eric Friedman, he co-founded Fitbit, which initially focused on women. After many prototypes and overcoming hurdles in manufacturing and software development, the first Fitbit launched in 2009. The company was sold to Google in 2021 for $2.1B.
Intel's Q2 2024 results were disastrous, with revenue down a third compared to three years ago and a bleak outlook for the upcoming quarter. The company announced a 15% headcount reduction in an attempt to cut costs and turn around its fortunes. Despite receiving billions in government subsidies, Intel has struggled to keep up with competitors in the rapidly evolving semiconductor market, particularly in the mobile and AI chip segments.
2024.08.09·thechipletter.substack.com·9 min read·TLDR Web Dev The AI Act, which focuses on safe and ethical AI development by categorizing AI systems into risk levels from minimal to unacceptable, is the European Union's first comprehensive regulation on artificial intelligence.
Jim Nielsen describes his failed attempt to redesign his personal website, showcasing the iterations and the challenges he faced in trying to achieve a hand-drawn comic style.
Create radial interfaces using only CSS.
Build iOS apps with English.
Uber tests payment systems in production, since traditional staging environments aren't enough for catching real-world bugs. It treats deployments as experiments, carefully selecting a region for initial rollout and continuously monitoring business metrics. This allows it to identify and resolve issues early on with real-world data while reducing the impact on users.
This article explains how React compiler works, specifically how it applies memoization techniques for efficiency on functions and hooks. The compilation involves traversing nodes, compiling functions, and replacing original functions with optimized versions. If memoization is applied, the compiler adds an import for `useMemoCache`. The article details the compiler's operation from entry through Babel to function transformation.
A buffer overflow vulnerability was found in the "Create-A-Park" feature of various Tony Hawk's Pro Skater games. The vulnerability, dubbed "Tony Hawk's Pro Strcpy", allows attackers to gain code execution on multiple gaming consoles, including the original Xbox, PlayStation 2, GameCube, and even the Xbox 360 (on a specific older kernel version). This article explores the various methods used to exploit the bug, ranging from simple save game hacks to intricate ROP chains and network-based attacks.
This Redditor regrets becoming an Engineering Manager, finding the role soul-sucking, boring, and tedious. They miss the hands-on coding work they used to do and feel the management role is significantly different and more complex than being a lead. Commenters note that management is not a progression from engineering but rather a different job entirely.
This post debunks common misconceptions about senior engineers, revealing that they are not coding superheroes but rather seasoned professionals with experience dealing with complexity. Seniority involves handling legacy systems, managing stakeholder expectations, and orchestrating teams, not just writing code. True seniority comes with continuous learning and adaptability.
Python's "everything is an object" philosophy slows down the parsing of large codebases with the ast module due to the overhead of converting C structs to Python objects. This conversion results in excessive memory allocations and garbage collection. To address the issue, this developer implemented a Rust extension that processed the ASTs in Rust, only returning the final results to Python, resulting in a 16x speedup and significantly reduced memory pressure. They argue that Python extensions should be designed to be lazy, meaning that they should only create Python objects when explicitly required, and instead keep data in a compact, optimized format within their own language.
Puppeteer, a browser automation library, now officially supports Firefox. Users can now write automation and perform end-to-end testing using Puppeteer across both Chrome and Firefox. This support is built on WebDriver BiDi, a cross-browser protocol currently undergoing standardization.
Vercel AI SDK 3.3 introduces several new features for building AI applications with JavaScript and TypeScript, including tracing with OpenTelemetry for observability, multi-modal file attachments for chat applications, a `useObject` hook for streaming structured object generation to clients, and additional LLM settings like JSON schema support, stop sequences, and custom headers.
A web-based CSS editor with a GUI.
This article benchmarks the cold start performance of AWS Lambda functions using Deno, Node.js, and Python runtimes. Deno shows significantly better performance with faster startup times, especially in smaller function configurations. This is likely due to Deno's various runtime caches. You can make your Deno app start time even faster by populating these caches ahead of time during the Docker image creation so that they're immediately available when your application executes in AWS Lambda.
Gleam is a functional programming language targeting both the BEAM and JavaScript. Its strengths lie in its excellent documentation, welcoming community, and powerful features like pattern matching and shadowing. However, the lack of loops, confusing type aliases, and idiosyncratic grouping mechanisms may pose challenges for developers accustomed to more traditional syntax.
The foundations of each cloud platform are the same - edge cases are where deeper knowledge and experience help one be more productive in one cloud stack over another.
Apple broke its promise to allow Mac users to opt out of Developer ID certificate revocation checks, erasing the promise from its support document shortly after releasing macOS 14 Sonoma.
Release is an AI development and deployment platform.
Despite its current allure, the field of AI research is likely to become increasingly competitive and less lucrative due to the dominance of large, capital-intensive companies and an oversupply of talent, mirroring the decline of chip design as a high-status profession.
This article goes through the process of building a website for tracking supermarket prices in Greece. The main challenge was scraping JavaScript-heavy websites, which was solved using Playwright. The scraping pipeline was automated using Concourse CI and ran on a Hetzner server, with the author's old laptop acting as an exit node to avoid IP restrictions.
This article compares different full text search (FTS) options for Postgres databases, focusing on Elasticsearch and Postgres' native FTS. While Postgres FTS is simple and real-time, it lacks features and performs poorly on large datasets. Elasticsearch requires ETL pipelines, leading to data freshness issues and operational overhead. The article introduces and compares alternative search engines like Algolia, Meilisearch, ParadeDB, and Typesense.
The phrase "just implementation details" often underestimates the complexity and difficulty involved in building and deploying software. Designing good software involves challenges like designing a maintainable system, having robustness and observability, and providing a good user experience. The perception that "CRUD" applications are simple is not true since they also require careful database design, production support, and handling of background jobs, user logins, and permissions.
Dedicating 20% of engineering capacity to technical debt doesn't work as effectively as it seems. This article highlights five common traps that hinder this approach, such as creating separate backlogs for product and tech, failing to communicate the value of technical work, and diluting focus on specific initiatives. Technical work should be integrated into the product roadmap and clearly demonstrate its business value in order to actually be prioritized.
2024.08.07·zaidesanton.substack.com·10 min read·TLDR Web Dev Angular is still used in enterprise-scale applications a lot, such as in banks and government agencies. React is seemingly more popular with startups and scale-ups though.
OpenAI has introduced Structured Outputs in its API, allowing developers to have model-generated outputs adhere to provided JSON schemas. This guarantees output consistency and format compliance. It's available in the API today.
2024.08.07·links.tldrnewsletter.com·28 min read·TLDR Web Dev Fleak is a low-code serverless API Builder for data teams that requires no infrastructure and allows you to embed API endpoints to your existing modern AI & Data tech stack.
Plunk is an open-source email platform built on top of AWS SES. It allows you to easily send emails from your applications.
The US v. Google antitrust ruling revealed that Apple considers Bing an inferior search engine and wouldn't switch to it, even for a huge payment. The judge declared that TikTok and other social media platforms are not competitors to Google Search because they lack the ability to index the entire web. The ruling further stated that AI search technology is not yet advanced enough to replace traditional search engine methods - this was used to justify the final call that Google is a monopoly.
The Blue Screen of Death, a notorious part of Microsoft's history, has a clear authorship for each of its iterations. Steve Ballmer is credited with the text of the error message in Windows 3.1, which was not a true "blue screen of death" as it displayed a black screen with an error message. The Windows 95 kernel error was actually brought to its final form by Raymond Chen. John Vert is the author of the true "blue screen of death" associated with Windows NT.
There was a controversy surrounding Microsoft's commitment to open-source development, specifically regarding the .NET framework. Microsoft was seemingly starting to shift away from open-source practices by removing features like "Hot Reload" from the .NET SDK and making them exclusive to Visual Studio. However, the community's strong reaction to this prompted Microsoft to reverse its decision and bring back Hot Reload as an open-source feature.
This author built a simulated 8-bit computer from scratch in code to gain a better understanding of how CPUs work, specifically how bits move, how an ALU functions, and the basic fetch-decode-execute cycle.
This article provides a comprehensive overview of fundamental concepts in 3D graphics, focusing on shape and color representation.
Niall Crosby, the CEO and founder of AG Grid, passed away recently in a helicopter crash.
X is closing its San Francisco headquarters and relocating employees to the South Bay near Palo Alto and San Jose, California.
Sponsored
Learn to build a multi-tenant task manager that solves team isolation, user role management, and authentication challenges.
Airbnb's migration from a monolithic Ruby on Rails architecture to a service-oriented architecture (SOA) in 2018 was driven by the need for improved maintainability and reduced single points of failure. The company outlined four key lessons learned during this transition: invest in shared infrastructure early, simplify service dependencies, centralize data hydration, and separate UI logic from backend logic. This article discusses the transition and compares Airbnb's architectural choices with those of other tech giants like Meta, Google, and Uber.
Postgres stores data on disk by using a system of files and folders for each database. This post explains the structure of these folders, including the 'base' directory which contains subdirectories for each database, and the various files within, such as 'pg_hba.conf' for authentication. The post then focuses on the 'heap,' where actual table data is stored, and the 'pages' that make up the heap, each containing fixed-size blocks of data.
Faire's migration to the NextJS framework improved its web application's load performance by leveraging server-side rendering and other modern techniques. This transition reduced its page load times and abandonment rates, while improving metrics like Largest Contentful Paint. The migration also included custom solutions for localization and maintaining compatibility with existing systems, setting the stage for future performance optimizations.
2024.08.06·links.tldrnewsletter.com·13 min read·TLDR Web Dev This article presents a learning technique for understanding and retaining complex concepts: iterative compression through repeated explanation. The idea is to repeatedly explain a concept, with the goal of simplifying it and making it easier to understand. This process involves refining your explanation, focusing on clarity and using first principles, eventually reaching a point where you can explain it from scratch. By doing so, you create a deeper understanding of the concept and make it easier to work with.
The daily stand-up meeting has become a tedious and time-consuming ritual in many organizations. However, many agile coaches and leaders argue that the stand-up itself isn't the problem, but rather the way it is implemented. They advocate for a shift in focus from status reporting to collaboration and communication instead, making changes for the team's specific needs.
Sponsored
Stop coding forms! Use the SurveyJS [10] drag-and-drop form builder to generate and style dynamic, JSON-driven forms [10] of any complexity, right in your JavaScript application (Angular / React / Vue.js / jQuery). SurveyJS comes with a friendly UI, form branching, CSS theme editor, and integrations with your backend systems. Try a
iso20022.js is a low-dependency, open-source Node library that helps companies communicate with banks using open ISO20022 standards. You can send a SWIFT payment in three lines of code.
The emoji-picker-element is a web component for selecting emojis, with support for Emoji v15.1 and custom emoji. It has a small bundle size and efficient memory usage thanks to IndexedDB. It also offers customization options for styling and functionality, and can be used with or without frameworks by including a `script` tag.
JS-PyTorch is a JavaScript library that emulates PyTorch's functionality and supports GPU acceleration using GPU.js. It allows users to perform deep learning tasks in JavaScript, with features for tensor operations, autograd, and model management.
A US judge ruled that Google illegally monopolized the search market by paying billions to make its search engine the default on smartphones and web browsers, effectively blocking competitors. This decision is the US government's first major antitrust case win against a US tech giant in over two decades. Judge Amit Mehta found that Google's exclusive deals with companies like Apple and Samsung foreclosed competition and enabled the company to raise advertising prices without consequence.