OpenNext is a tool that allows developers to deploy Next.js applications across various environments, including AWS Lambda and traditional Node.js servers. It aims to support all Next.js 14 features and is actively maintained by the SST community.
Expo Workflows is a new CI/CD service that allows developers to automate their entire app development process, from building and testing to submitting to app stores. It offers pre-packaged jobs for common tasks and the ability to create custom jobs, triggered by GitHub events or manually via EAS CLI.
Legend List is an experimental React Native library that aims to be a higher-performing replacement for FlatList, especially for lists with dynamically sized items.
Google created a culture of concealment to avoid antitrust litigation by encouraging employees to delete messages, avoid certain words, and include lawyers in communications. This practice was revealed through court documents and testimony in three antitrust trials against Google.
This article explores various anti-aliasing techniques in computer graphics, starting with simple methods like SSAA and MSAA and progressing to more advanced techniques. It then goes through post-processing methods such as MLAA and FXAA. The article's core focus is on Analytical Anti-Aliasing (AAA), a novel approach that achieves smooth, sharp results by directly calculating anti-aliased pixels based on the shape's mathematical definition.
The State of HTML 2024 report shows that developers are adopting new HTML features, such as dialog and inert, while being frustrated by areas of friction like inconsistent browser support. There's a growing reliance on modern standards for accessibility and interactivity.
Some important TypeScript tips for React devs include inferring output types, typing children with ReactNode, using ComponentProps for props, and using unions and tuples for better type management.
Leopards is a Python library that allows you to query lists of dictionaries or objects with a SQL-like syntax.
The latest release of sqlite-vec, a SQLite extension for vector search, now allows users to store and filter non-vector data like metadata and auxiliary columns within vector tables, which improves the efficiency of KNN queries.
Autotab is an AI-powered tool that automates repetitive computer tasks by learning from user demonstrations and executing actions with mouse and keyboard control.
Sponsored
“I love having a calendar full of meetings” — said no developer, ever. But is it really possible to deliver a project without any meetings at all?
Passing `useState` setter functions as props to child components is a React anti-pattern. This creates an abstraction leak, tightly coupling the child to the parent's internal state management and making the code fragile and less reusable. The solution is to instead pass a callback function that encapsulates the state change, allowing the child to update the parent's state without knowing the specific implementation details.
TypeScript's type discrimination can be used to manage conditional props in React components, making sure props are type-safe and mutually exclusive when required. This article shows practical examples, like defining components that accept either one prop or another but not both.
SQL pagination is complex and using the offset keyword can make it worse. `offset` can lead to duplicate results and degrade performance, especially with large datasets, due to its need to process and skip data. A better alternative is to use predicate-based pagination with a `where` condition.
A Tuesday-to-Tuesday on-call rotation is better than Monday-to-Monday because it accommodates weekend issue resolution and holiday scheduling, allowing for a more thorough follow-up on problems. It's a simple, low-cost improvement to overall team efficiency.
Engineers should prioritize impact over optics and focus on delivering meaningful results that improve metrics and benefit users. Trust and recognition are gained through impactful work and should not be the primary goal.
Sponsored
Learn how to secure real-time collaborative apps by integrating Liveblocks with Clerk in a Next.js setup. This guide addresses unauthorized access risks by ensuring only authenticated users can access Liveblocks rooms, enhancing security in apps like team-based task managers. Perfect for developers prioritizing data protection in collaborative environments.
React Scan is a tool that automatically detects and highlights performance issues in React applications. Unlike other tools, it requires minimal code changes and provides clear visual cues to pinpoint problematic components.
Pglite-fusion lets users embed SQLite databases into their PostgreSQL tables.
The BM25 algorithm is a full-text search algorithm widely used in systems like Lucene/Elasticsearch and SQLite. This post goes over the algorithm's mathematical components - inverse document frequency (IDF), term frequency, and document length normalization - showing how they contribute to a relevance score.
AWS Lambda launched in 2014 and quickly gained traction. Today, it has over 1.5 million users and tens of trillions of function invocations monthly.
Go recently celebrated its 15th anniversary as an open-source project. Its user base has more than tripled in the last five years. Recent Go releases (1.22 and 1.23) were focused on improving for loops, iterators, and generics, along with improvements to the standard library, including the HTTP router and execution traces.
A collection of data engineering resources, including projects, interview guides, roadmaps, books, and more.
This article goes over how to dynamically generate different Progressive Web App (PWA) icons for various environments (development, staging, and production) in a Next.js app, with code examples.
The word "just," when used to describe a software engineering solution, minimizes the complexity of the task, discourages critical thinking and alternative solutions, and contributes to imposter syndrome.
Tips for improving remote startup communication include keeping discussions public on platforms like Slack, recording and summarizing meetings, sharing solutions openly, maintaining clear documentation, and avoiding excessive DMs.
LinkedIn leverages event-driven architectures and the actor model to scale its infrastructure. The actor model is a concurrent computation model where independent actors communicate and coordinate solely through asynchronous message passing. The company uses this approach in several systems, including one for collecting and processing server metrics in near real-time and another for monitoring server consoles.
Effect Schema, a validation library, can be used for achieving full offline support with TanStack Query. It allows for bi-directional parsing, eliminating the need for separate schemas for encoding and decoding data. This article goes through how to store data locally (using IndexedDB or LocalStorage), implement cache removal, set cached data, and handle mutations.
Celine, a reactive HTML notebook library, can be used to improve scientific publishing workflows by consolidating data exploration, analysis, and typesetting within a single HTML file. The library uses existing technologies like Observable, Plot, and various WASM runtimes (Python, R, and SQLite) to enable interactive elements and diverse data visualizations directly within the HTML document. This article goes through various implementation examples, such as interactive code cells, plots, and even a slideshow presentation mode.
Blindly following “best practices” without considering context leads to poor decision-making. Instead, each "best practice” should be evaluated critically in the context of the application itself.
This developer attempted to update their four-year-old Gatsby website but ran into difficulties running the old Node project. The `npm install` command failed repeatedly due to missing Python 2 and incompatible C++ compiler versions. Troubleshooting involved installing Python 2, discovering a required older Node.js version (v12.2), and ultimately resolving the build errors after two hours.
This article uses the statement "Meetings are a waste of time" to illustrate Socratic questioning: clarification, challenging assumptions, seeking evidence, changing perspectives, exploring implications, and questioning the question itself. Each step is demonstrated through examples related to the initial statement to show how Socratic questioning can be used as a tool to think critically and challenge prior assumptions.
(the folks working on making this less painful) as they share how Sentry's AI speeds up debugging and impacts on your workflow. RSVP to
Sponsored
KokonutUI is a collection of 50+ modern, customizable UI components built with Next.js 15 and Tailwind CSS. These components are designed for quick and easy copy-pasting into applications.
Vercel's AI SDK 4.0 is an open-source JavaScript/TypeScript toolkit for building AI applications. This release adds PDF support for document analysis across multiple providers, computer use support with Anthropic's Claude for app interaction, and continuation support for generating long texts.
Tips.io is an AI-powered website builder that uses Tailwind CSS. It has an HTML editor with autocomplete, AI-assisted content generation, and pre-built themes and components.
Google Scholar, launched in 2004 by two researchers, aimed to improve access to academic information by creating a comprehensive online research library. Early challenges included slow internet speeds, leading to the creative "Sneakernet" method of delivering research data on hard drives. Beyond its core function, Scholar has revealed unexpected uses, from family history research to uncovering unusual and funny aspects within academic publications and legal documents.
The "uncanny valley” is a phenomenon where almost realistic depictions of humans appear unsettling - this applies to AI. Increasingly realistic AI chatbots, while convenient, erode our ability to distinguish between human and artificial interactions and potentially reduce empathy. Deliberately stylizing AI interfaces, making them easily distinguishable from humans, could mitigate these risks.
Rust's traits, while popular, suffer from the "orphan instance problem," where implementing a trait for a type from a different crate is restricted. This leads to potential coherence issues. A possible solution is local coherence using implicits. While implicits address the orphan instance problem, they introduce new challenges, including increased code repetition, potential loss of correctness guarantees, and reduced code readability compared to traits. Both traits and implicits represent local maxima in language design, but each have their own trade-offs.
Companies undervalue clear English writing skills, leading to wasted time and inefficient workflows.
Fast-Graphrag is an open-source framework for Retrieval Augmented Generation (RAG) that uses graphs to streamline agent-driven workflows.
The November 2024 Top500 supercomputer rankings show AMD surpassing Nvidia in aggregate peak performance, largely due to the debut of the "El Capitan" system, which uses AMD's hybrid CPU-GPU architecture.
MailCatcher is a simple SMTP server and web interface that allows developers to view emails sent during development by configuring their applications to send emails to it.
Async/await, which initially solved “callback hell,” introduces new problems, such as concerning back pressure and the inability to freely suspend execution.
2024.11.18·sourcegraph.registration.goldcast.io·TLDR Web Dev Sponsored
AI is transforming software development, and you can be part of the conversation.
2024.11.18·sourcegraph.registration.goldcast.io·Sponsor·TLDR Web Dev