Best of General ProgrammingJanuary 2026

  1. 1
    Article
    Avatar of yhf9cpdgtqetokv6d8qhmJohn Liter·18w

    Learning C++ in College and Why I’m Bringing It Home to My Kids

    A college student learning C++ shares their motivation for studying the language—not for trends, but for foundational skills like logic, memory management, and problem-solving. They plan to teach these fundamentals to their children, emphasizing understanding systems over consuming tools, and using AI as an assistant rather than a crutch. The approach focuses on building blocks: step-by-step logic, input/output, variables, loops, and debugging with patience.

  2. 2
    Article
    Avatar of ploehploeh blog·18w

    Filtering as domain logic

    Complex database filtering logic can be split between server and client to balance performance and correctness. Keep simple, coarse-grained filtering in SQL queries for performance, while implementing precise filtering logic in the domain model where it's easier to test and maintain. This separation of concerns makes the filtering logic more testable through unit tests rather than slow integration tests, strengthens domain model contracts, and can improve cache hit ratios. The domain model should tolerate wider datasets and filter them down, ensuring correctness even if the database query is slightly imprecise.

  3. 3
    Article
    Avatar of rustRust·20w

    Project goals update — December 2025

    The Rust project is working toward 41 goals for the second half of 2025, with 13 flagship initiatives. Progress updates include advances in field projections and reborrowing, compilation flexibility improvements with multiple RFCs in review, work on the new trait solver and polonius borrow checker, generic const arguments reaching prototype completion, and GPU offload capabilities nearing nightly availability. Several goals report steady progress on RFCs and implementations, while the cranelift backend goal was closed due to lack of funding.

  4. 4
    Article
    Avatar of dotnet.NET Blog·19w

    How We Synchronize .NET’s Virtual Monorepo

    The .NET team built a Virtual Monolithic Repository (VMR) that aggregates source code from dozens of standalone repositories into a single git repository for unified builds. The VMR uses a custom two-way synchronization algorithm based on git patches to keep changes flowing between product repositories and the monorepo. The synchronization evolved through three stages: tarball-based Source Build, read-only VMR-lite with one-way sync, and finally a writable VMR with bidirectional flow. The team encountered challenges with conflicting changes, branch lifecycle mismatches, and metadata corruption, ultimately settling on a rebase-based approach that handles conflicts interactively. This infrastructure now powers .NET SDK builds starting from .NET 10 Preview 4.