Scaling Down Costs, Not Performance: How We Migrated from Couchbase to PostgreSQL
Trendyol's product content team details a phased, zero-downtime migration of five 'helper bucket' datasets (2.24 billion documents across two clusters) from Couchbase to PostgreSQL to cut infrastructure costs while preserving read performance. The strategy combined dual-writes via Kafka consumers, a custom CDC-based migrator tool for historical backfill, and feature-flagged cutover of read traffic. Key production challenges included a mysterious TPS spike traced to PgBouncer's server_reset_query_always setting, a connection-limit incident causing a primary node failover, and a hidden scaling issue where PgBouncer's own horizontal autoscaling multiplied backend connections beyond expectations (20 pods ร 150 default_pool_size = 3000 potential connections). Final production benchmarks showed stable P50 latency and only a brief P99 spike (200ms to 400ms) under peak load, validating the migration.
โค10๐4๐ฟ1
React 19.3 โ React
React 19.3 is now available on npm, stabilizing two previously experimental APIs: View Transitions and Fragment Refs. The new <ViewTransition> component animates elements entering, exiting, moving, or resizing using the browser's View Transition API, with support for custom animations via addTransitionType and integration with Suspense for coordinated loading of fallbacks, images, and fonts. Fragment Refs let developers attach DOM behaviors (event listeners, focus management, IntersectionObserver/ResizeObserver) to a group of sibling elements without needing a wrapper div, by passing a ref to a Fragment. React DOM adds a new browser() API to opt components out of server-side rendering when they depend on browser-only APIs, plus Trusted Types support to prevent DOM-based XSS. Server Components can now render Context directly from a 'use client' module without a wrapper Provider. The release also includes numerous other changelog items and bug fixes across react, react-dom, and react-server
โค12๐ฅ3๐2
Dates Are Not Data, They Are Context ยท Nikhil Gautam
A developer recounts a bug where a billing report showed bills from the wrong day due to a timezone mismatch: the frontend sent plain calendar dates (e.g. '2026-01-01') without timezone context, and the backend converted them directly to JavaScript Date objects while MongoDB stored timestamps in UTC. The core lesson is that a calendar date is not the same as a timestamp - a date needs a timezone to be meaningful, and query boundaries should be computed in the user's local timezone before converting to UTC. Also covers using half-open [start, end) ranges to avoid excluding the last day of a range, and a mental model separating calendar dates, timestamps, and local date/time.
โค15๐7๐3๐1
WhatsApp Computer Science and Technology
๐18โค11๐7๐ฟ4
Lessons From Four Years of Writing a Weekly Newsletter
A .NET blogger reflects on four years and 210 weekly issues of his newsletter, distilling four lessons: consistency beats brilliance, teaching accelerates learning, fundamentals (modular monoliths, domain-driven business rules, API contracts, idempotency, outbox pattern) outlast frameworks, and audience feedback sharpens thinking. He also shares his bullish stance on AI coding agents, arguing fundamentals become the review checklist for judging AI-generated code, and teases more AI-focused content ahead
โค13๐4
The strangler fig pattern: modernizing without a big-bang rewrite
A detailed guide to the strangler fig pattern for modernizing legacy systems capability by capability rather than through a big-bang rewrite. It covers how the facade layer routes traffic, the tradeoffs between dual writes and change data capture for data ownership during migration overlap, how to choose which capability to strangle first, why migrations commonly stall around 80% completion, the real infrastructure and reconciliation costs of running two systems in parallel, when the pattern is a poor fit, and how to define when a migration is actually finished versus just feature-complete
๐7โค4๐ฅ1
Introduction to Solon
A comprehensive tutorial walks through building a REST API with Solon, an independent enterprise Java framework, starting from a basic greeting endpoint and extending it into a task management API backed by H2 and MyBatis-Flex. It covers Solon's architecture, dependency injection, configuration layering, HTTP handling, and testing with solon-test, drawing comparisons to Spring Boot concepts throughout. The example uses Solon 4.1.0, Java 21, Maven 3.9.16, and MyBatis-Flex 1.11.8, with full source code available on GitHub.
โค13๐1๐ฅ1
Chrome for Developers
Chrome 146 introduces three notable features for web developers. Scroll-triggered animations enable declarative CSS-based control of animations based on scroll position, replacing common JavaScript-based scroll detection patterns. Scoped custom element registries allow multiple custom element definitions for the same tag name within a page, preventing naming conflicts when using libraries from multiple sources. The Sanitizer API provides a built-in way to strip script-executing content from user-supplied HTML, making it easier to build XSS-free web apps โ this updated version is also available in Firefox.
๐10โค3
Introducing G#: A Go-like language for .NET
G# is a new open-source, Go-inspired programming language that compiles to .NET, targeting systems programming and mobile applications while interoperating with existing .NET libraries and NuGet packages. It supports .NET 8 through 10 (10 preferred), offers a VS Code extension with language server support, and blends .NET-style async/await with Go-like fire-and-forget concurrency and channels via an optional extensions package. The language uses packages, funcs, structs and classes, and features like if let and for in for concise null checks and iteration. Beyond general development, it's positioned as an educational language and a lightweight candidate for WebAssembly and Hyperlight microVM scenarios, useful for developers moving from Swift or Kotlin into the .NET ecosystem.
โค8๐4
BYD says it will have a solid-state car next year, the earliest date anyone has given
BYD executive Stella Li claims the company will have a solid-state battery model next year, the earliest date any automaker has cited, though no model, sales plan, or confirmation was given. Toyota targets 2027-2028, Honda and Mercedes around 2030, and LG Energy Solution estimates roughly a decade away for cars. Mercedes and VW's PowerCo are partnered with US-based Factorial Energy, while Taiwan's ProLogium is building a plant in Dunkirk, France. CarNewsChina speculates, via unconfirmed sources, that BYD's car will be a Yangwang flagship rivaling Rolls-Royce. Hyundai's research chief doubts the raw material cost problem will be solved within five years.
โค15๐5
Dark mode toggles: two states are enough โข Lea Verou
(Light, Dark, System). The core argument is that users only seek out theme toggles when something is wrong โ not to preemptively express intent โ making the 'System' state irrelevant at the moment of interaction. Tri-state toggles expose the underlying data model rather than aligning with actual user goals, adding cognitive load and UI friction for an extremely rare use case. A well-implemented two-state toggle can still represent all three underlying states: the first click overrides to the opposite of the current resolved value, and the second click removes the override and returns to system default. Common mistakes include storing a value that matches the system preference (silently pinning the theme) or removing overrides when the OS preference changes. Exceptions where tri-state controls are appropriate include dedicated settings panels and sites that implement meaningfully different color schemes depending on the OS setting.
โค9๐จโ๐ป2๐1