
A Daily WTF submission from a finance developer showcasing a decade-old legacy C# codebase with two deeply problematic methods. The first method, ValueAGPFund, has numerous side effects including mutating reference-type parameters and modifying internal class state. It calls a second method, CheckPreviousValuationIfRequired, which in turn calls back into ValueAGPFund — creating a circular call pattern. The real WTF is in the return statement: the current code inverts the null check compared to the commented-out original, meaning the function either returns null or throws a NullReferenceException when openingValuation is null. The practical result is that the circular call and side effects are moot since the function never actually recurses. The submitter is now unsure whether to remove the dead code, fearing hidden side effects or code that relies on the NullReferenceException being thrown.
Nguồn: https://thedailywtf.com/articles/do-a-lot-to-do-nothing. 8sync News chỉ tóm tắt và dẫn link; bản quyền nội dung thuộc tác giả và nguồn gốc.
Bài viết hướng dẫn tối ưu hiệu suất EF Core trong .NET 10 với 10 kỹ thuật quan trọng như AsNoTracking(), compiled queries, eager loading, ExecuteUpdateAsync/ExecuteDeleteAsync, Select() projections, quản lý DbContext bằng IDbContextFactory, parameterized queries, và logging. Ngoài ra còn cung cấp kế hoạch hành động ưu tiên và giải đáp những hiểu lầm phổ biến.
Là người phát triển .NET, bạn cần phải hiểu cách tối ưu EF Core để giảm thời gian xử lý và tránh tình trạng hiệu suất kém trong ứng dụng thực tế, đặc biệt khi xử lý dữ liệu lớn hoặc giao dịch thường xuyên.

Tài liệu hướng dẫn phỏng vấn .NET toàn diện với hơn 300 câu hỏi thực tế, bao gồm 20 tình huống đa dạng về C#, async/multithreading, LINQ, ASP.NET Core, EF Core, thiết kế hệ thống và kiến trúc. Mỗi câu hỏi có đáp án mẫu, những câu trả lời cảnh báo (red-flag) cần tránh và các câu hỏi theo sau phổ biến, cập nhật cho .NET 10 và C# 14.
Bạn nên đọc để chuẩn bị chắc chắn cho các cuộc phỏng vấn .NET hiện đại, đặc biệt là với kiến thức thực tế về C# 14, ASP.NET Core 10 và các vấn đề thiết kế hệ thống như Kubernetes, cache và API idempotent—các chủ đề ngày càng được ưu tiên trong các công ty công nghệ hàng đầu.
Kỹ sư phần mềm Avital Tamir đề xuất thay thế việc review code thủ công bằng AI, cho rằng peer review truyền thống chậm chạp, kém hiệu quả và chỉ phát hiện lỗi định dạng thay vì lỗi thật sự. Ông ủng hộ mô hình tự review nghiêm ngặt với sự hỗ trợ của AI (như CodeRabbit, Claude Code Review) nhằm nâng cao chất lượng code và trách nhiệm thuộc về lập trình viên nắm rõ nhất dự án.
Những lập trình viên muốn nâng cao hiệu quả phát triển bằng cách giảm thiểu lỗi do thiếu tập trung và nhầm lẫn từ quá trình đánh giá đồng nghiệp truyền thống phải tìm hiểu cách áp dụng AI để tự kiểm tra và cải thiện mã một cách hiệu quả.
Qt Bridges vừa phát hành phiên bản beta 0.3.0 cho C# Bridge, cho phép nhà phát triển .NET xây dựng ứng dụng với giao diện Qt Quick/QML mà không cần binding đầy đủ. Bản cập nhật cải thiện hỗ trợ Linux (yêu cầu cài đặt Qt for Linux và biến môi trường QtDir), đồng thời bổ sung extension cho Visual Studio với templates dự án và QML IntelliSense. Tiếp theo là bản Technology Preview, và Rust sẽ là ngôn ngữ tiếp theo được hỗ trợ sau C#.
Những người phát triển C# có thể nhanh chóng tích hợp giao diện Qt Quick/QML vào ứng dụng mà không cần phụ thuộc vào các gói kết nối đầy đủ, nhờ công cụ này hỗ trợ cải thiện hiệu suất và tính tương thích trên nhiều nền tảng.
SpaceX's reported $60B acquisition of Anysphere (Cursor's parent company) is framed as a signal that the real bottleneck in AI-assisted development is no longer code generation but code quality. As AI tools dramatically increase code volume, verification and automated quality analysis become scarcer and more valuable resources. Research supports this: studies show AI-assisted projects accumulate more static analysis warnings and complexity over time. The argument is that the next wave of developer tooling will be layered — AI generates code, static analysis validates it, security scanners flag vulnerabilities, and CI/CD enforces quality gates. JetBrains positions its Qodana platform as part of this 'quality layer' that complements rather than replaces AI coding assistants.
Qodo has released version 2.8 of its AI code review platform, introducing an AI agent capable of reviewing code across multiple repositories. The update also adds a custom rules miner that extracts coding patterns from existing codebases and PR history to create enforceable rules, plus a portal for centrally managing AI skills across repositories. The multi-repo review agent, currently in beta, uses graph technology to track relationships between code and surfaces impact findings — such as API contract breaks, schema changes, and infrastructure drift — before pull requests are merged. The underlying premise is that as AI-generated code volumes grow, human reviewers can no longer keep pace, making AI-driven code review a necessity.
EF Core cung cấp hai tùy chọn nhanh chóng, không phụ thuộc hạ tầng để unit test code truy cập cơ sở dữ liệu: provider in-memory tích hợp sẵn (lưu trữ entities trong bộ nhớ .NET, không SQL/constraints) phù hợp cho business logic, và SQLite in-memory (chạy SQL engine thật trong RAM, hỗ trợ ràng buộc, giao dịch) lý tưởng cho repository/data-access tests. Bài viết hướng dẫn thiết lập cả hai, nhấn mạnh yêu cầu giữ kết nối SQLite mở, sử dụng IDbContextFactory cho cách ly test, seeding data qua context riêng biệt, pattern xUnit class fixture vs IDisposable, logging query, và tránh các lỗi phổ biến như chia sẻ DbContext hay kết hợp Migrate() với EnsureCreated().
Lập trình viên nên đọc bài này để hiểu cách tối ưu hóa cách kiểm tra đơn vị với Entity Framework Core bằng hai phương pháp in-memory và SQLite, từ đó tránh những lỗi phổ biến như nhầm lẫn giữa logic nghiệp vụ và layer dữ liệu trong các test.

A developer's personal plea for simpler, more concise code descriptions, commit messages, and merge request descriptions. The author, who has ADHD, argues that reviewers need to know the 'why' behind changes, not the 'what', and that atomic commits with clean rebases make reviews easier. Also advises against using LLMs to write commit messages and comments, encouraging developers to write them personally for better understanding and accessibility.