A lighthearted roundup of oddball software error messages and UI mishaps submitted by readers, including a nonsensical negative latency error from Chromium's source code, a half-finished government website, and a confusing API documentation example.
Why read it: Bài viết này giúp lập trình viên học hỏi từ những thất bại kỳ quặc để tránh mắc phải lỗi tương tự trong dự án của mình.
Source: https://thedailywtf.com/articles/failure-after-failure-after-failure. 8 Sync News only summarizes and links out; content copyright belongs to the authors and original sources.
Đang tải bình luận…
Trước đây @supports chỉ có thể kiểm tra tính năng dựa trên tên thuộc tính hoặc giá trị, không thể phát hiện các hành vi phụ thuộc vào triển khai như tương tác giữa hai thuộc tính hoặc hỗ trợ một phần. Để khắc phục, CSS Working Group đã chấp nhận đề xuất của David Baron và thêm hàm @supports named-feature() với hai từ khóa mới: anchor-position-follows-transforms (được hỗ trợ trong Chrome 150, Firefox 156, Safari Technology Preview) và single-axis-scroll-container (được hỗ trợ trong Chrome 153, chưa có trong Firefox hoặc Safari). Với hàm này, nhà phát triển có thể viết điều kiện chính xác hơn để áp dụng các quy tắc CSS chỉ khi tính năng thực sự hoạt động trong môi trường cụ thể, tránh những trường hợp giả dương như Flexbox gap hoạt động với Grid nhưng không với Flex. Điều đáng học là khi làm việc với các tính năng mới hoặc chưa đồng nhất giữa các trình duyệt, việc kiểm tra qua named-feature() giúp giảm thiểu lỗi giao diện và giảm phụ thuộc vào polyfill hoặc hack dựa trên user-agent. Tác giả cũng đã đề xuất cả hai từ khóa và làm việc trực tiếp với đội ngũ Safari để đưa chúng vào bản phát hành.
Lập trình viên nên đọc bài này vì @supports named-feature() cho phép phát hiện các hành vi CSS cụ thể của trình duyệt mà cách kiểm tra truyền thống không thể, giúp viết CSS tương thích tốt hơn trên mọi nền tảng.
Electron 44 vừa được ra mắt với việc nâng cấp nền tảng bên trong. Nó cập nhật Chromium lên phiên bản 152.0.7977.54, V8 lên 15.2 và Node.js lên v24.18.1. Những thay đổi này mang lại cải thiện tốc độ thực thi JavaScript, hỗ trợ các tính năng web mới nhất và vá các lỗ hổng bảo mật đã được sửa trong Chromium. Vì vậy, các ứng dụng Electron sẽ chạy mượt hơn và tương thích tốt hơn với các trang web hiện đại. Điều này nhắc nhở nhà phát triển nên thường xuyên kiểm tra và cập nhật các dependency Electron để tận dụng tối đa những cải tiến nền tảng.
Bài viết này cung cấp thông tin quan trọng về bản cập nhật mới nhất của Electron với các phiên bản nâng cấp của Chromium, V8 và Node.
Trò chơi T-Rex trong Chrome xuất hiện khi mất kết nối mạng, cho phép người chơi điều khiển khủng long chạy qua sa mạc bằng phím spacebar.
Để hiểu sâu sắc về cách Chrome xử lý các ứng dụng web và hiệu năng hệ thống, bạn nên đọc bài này để khám phá cách Chromium tích hợp game Dino như một ví dụ nhỏ về kiến trúc xử lý sự kiện và optimisation trong motor rendering của trình duyệt.
Brave Origin là phiên bản tối giản của trình duyệt Brave, loại bỏ các tính năng AI, ví crypto, phần thưởng, VPN và giữ lại chặn quảng cáo/người theo dõi. Phiên bản này có giá 59,99 USD cho Windows, Android, macOS và iOS, nhưng hoàn toàn miễn phí trên Linux mà không cần tài khoản. Origin dùng chung codebase với Brave-core, có thể cài đặt song song và chuyển đổi dễ dàng qua flag.
Lập trình viên nên đọc bài này vì Origin của Brave không chỉ là phiên bản tối giản mà còn là cơ sở mã nguồn sạch cho phát triển các ứng dụng web riêng lẻ, tối ưu hóa hiệu năng và bảo mật cho các dự án Linux.
Electron 43 vừa ra mắt với Chromium 150.0.7871.46, Node.js v24.17.0 và V8 15.0, cải thiện hiệu suất khởi động ứng dụng nhờ snapshot và bytecode caching, hỗ trợ cửa sổ không viền có góc bo tròn trên Linux, API quản lý thông báo mới trên macOS, và tải xuống mặc định vào thư mục Downloads. Phiên bản này cũng đánh dấu chấm dứt hỗ trợ binary 32-bit (Windows x86, Linux ARM) và có một số thay đổi phá vỡ (breaking changes) như chuẩn hóa pixel nativeImage sang SRGB.
Lập trình viên cần đọc bài này để cập nhật kiến thức về các cải tiến hiệu suất khởi động ứng dụng và tính năng mới như cửa sổ không khung trên Linux, quản lý thông báo macOS, và các thay đổi quan trọng về API như loại bỏ showHiddenFiles trên Linux để tránh rủi ro về tính bảo mật và tương thích.
Sau vài năm dùng Brave, tác giả chuyển sang Zen Browser vì Brave trở nên nặng nề, phần thưởng BAT mất hứng thú và lo ngại về sự độc quyền của Chromium. Zen Browser dựa trên Gecko của Firefox, cung cấp tính năng quản lý tab, tương thích add-on Firefox, giao diện mới và chú trọng quyền riêng tư.
Lập trình viên nên đọc bài này để hiểu cách các công cụ web mới như Zen Browser, dựa trên nền tảng mở rộng của Firefox, có thể cải thiện hiệu suất và tính riêng tư bằng cách tách biệt khỏi sự phụ thuộc vào Chromium của Google, đồng thời mở rộng khả năng tương thích với các công cụ mở rộng của cộng đồng.
Vivaldi 8.2 được phát hành ngày 3/9/2026, mang tính năng tính toán nhanh trong thanh địa chỉ. Công nghệ này dựa trên bộ máy tính toán JavaScript nội bộ, thực hiện toàn bộ phép toán ở local mà không gửi dữ liệu ra máy chủ. Nhờ vậy, người dùng có thể nhập biểu thức như "2* (3+4)" trực tiếp vào thanh địa chỉ và ngay lập tức thấy kết quả, tránh việc mở tab hoặc công cụ bên ngoài. Tính năng này đặc biệt hữu ích cho các nhà phát triển khi cần kiểm tra giá trị nhanh trong quá trình gỡ lỗi hoặc viết mã. Điều đáng học là việc tích hợp các công cụ nhỏ, riêng tư vào giao diện trình duyệt có thể nâng cao hiệu suất làm việc mà không làm mất bảo mật, và các dự án tương tự nên xem xét việc thực hiện các phép toán ở client-side.
Tính năng máy tính trong thanh địa chỉ của Vivaldi 8.2 giúp lập trình viên thực hiện các phép toán nhanh chóng và riêng tư ngay khi duyệt web.
Kỹ sư Google Tom Anderson đã tích hợp hỗ trợ đóng gói Flatpak thử nghiệm vào mã nguồn Chrome/Chromium. Merge tạo thư mục chrome/installer/linux/flatpak/ chứa script packaging, cờ GN enable_flatpak (mặc định false), mapping App ID cho Chromium và Google Chrome, đồng thời tắt setuid sandbox và nén zlib cho bản build không chính thức. Google nhấn mạnh đây là tính năng thử nghiệm, chưa cam kết cung cấp gói Flatpak chính thức, nhưng mục tiêu là hỗ trợ cấu hình sandbox hạn chế và mở rộng hỗ trợ XDG portal. Nếu phát triển thành công, cách này có thể cung cấp đường dẫn phân phối sạch hơn ngoài các gói RPM và Debian, cho thấy xu hướng chuyển sang packaging universal. Lời khuyên cho lập trình viên là cân nhắc mức độ ổn định và tác động đến sandbox trước khi quyết định theo dõi hoặc áp dụng trong dự án riêng.
Bài này giúp lập trình viên nắm bắt xu hướng đóng gói phần mềm bằng Flatpak trong dự án Chrome/Chromium, một phương pháp phân phối ngày càng phổ biến trong hệ sinh thái Linux.
Read the news here, practice coding, follow structured courses and train for IELTS on our sibling products — all connected through one 8 Sync account.
The ecosystem home: product overviews, blog and full pricing.
ExploreLearn along a clear roadmap: videos, auto-graded quizzes, certificates and mentors who ship for a living.
View the roadmap1,000+ DSA problems in Vietnamese, auto-graded across 7 languages — many FREE, right in your browser.
Practice for freeAI grading for all four IELTS skills with detailed rubric feedback.
Try it freeA 22 MB AI IDE for Vietnamese devs.
Download freeOrganizational memory for AI agents.
ExploreAI that staffs your Fanpage and qualifies leads for you.
Try it