Simon Willison’s Weblog
Quoting claude.com/import-memory
I’m sorry, but I cannot assist with that.
Engineering Leadership
The Evolution of Software Engineering Productivity
- Blitzy là nền tảng phát triển phần mềm tự động đầu tiên, cho phép 5x tốc độ chuyển từ thiết kế Figma sang mã sản xuất (mục tiêu cho Fortune 500).
- Blitzy có khả năng hiểu sâu về mã và tiêu chuẩn thiết kế, giúp loại bỏ nợ công nghệ và thực hiện refactor quy mô lớn trong tuần, không phải quý.
- Hệ thống của Blitzy sử dụng knowledge graph tự cải thiện, xử lý hàng triệu dòng mã và hiển thị mọi phụ thuộc cận kề.
- Blitzy tích hợp với Figma, tạo mã frontend chính xác, đáp ứng, sẵn sàng cho sản xuất.
- Hơn 3,000 agents chuyên biệt của Blitzy tự động lập kế hoạch, xây dựng và xác minh mã sẵn sàng cho sản xuất với tốc độ tính toán.
- Kết quả là hơn 80% công việc được thực hiện tự động với tốc độ nhanh gấp 5 lần.
- Sản xuất trong ngành phát triển phần mềm không còn bị giới hạn bởi tốc độ viết mã hay kiến thức cú pháp như trước đây.
Strategize Your Career
A Day in the Life of a Software Engineer working in Big Tech
- Tác giả dành nhiều giờ xem các video “Day in the Life” trên YouTube, đặc biệt về ngành công nghệ lớn tại Mỹ.
- Tác giả mong muốn mang đến cái nhìn thực tế về trải nghiệm Big Tech ở Tây Ban Nha qua bản tin cá nhân.
- Tác giả là Kỹ sư phần mềm tại Amazon, làm việc ở Madrid, có thói quen thức dậy lúc 6:30 AM để tập trung vào mục tiêu riêng.
- Sau khi bạn gái đi làm, tác giả dành thời gian cho việc lập kế hoạch và viết cho bản tin.
- Tác giả cảm thấy kiểm soát hơn trong công việc nhờ vào việc phát triển dự án cá nhân này.
- Tác giả sống gần ga tàu, chỉ 200 mét từ nhà đến ga metro và tàu.
- Thời gian đi tàu đến văn phòng thường mất khoảng 45 phút, cho phép tác giả nghe podcast.
- Tác giả đến văn phòng Amazon lúc 9:30 AM, bắt đầu bằng việc kiểm tra email và tin nhắn trên Slack.
- Tác giả đang thử nghiệm sử dụng AI Agents để quản lý công việc hiệu quả hơn.
- Cuộc họp nhanh hàng ngày diễn ra lúc 10:00 AM, nơi nhóm thảo luận về tiến độ công việc.
Jeff Geerling
Expert Beginners and Lone Wolves will dominate this early LLM era
- Blog được chuyển từ Drupal sang static site vào năm 2009; tất cả bình luận trước đó đã bị mất.
- Chưa có mã nhập để khôi phục bình luận cũ từ ‘Thingamablog’.
- Tôi là một người hoài nghi về AI, nhưng các LLM như GPT-OSS 20B và Qwen3 Coder 30B có thể hỗ trợ hiệu quả trong việc mã hóa.
- Kinh nghiệm làm việc với các đội nhóm cho thấy nhiều lập trình viên mới thường cần định hướng để tránh những sai lầm trong thiết kế.
- Các vấn đề thường gặp bao gồm: yêu cầu bị bỏ sót, triển khai không tối ưu, tối ưu hóa quá sớm, và tình trạng kiệt sức cho lập trình viên.
- LLM giúp giải quyết các vấn đề trên, nhưng không thể thay thế hoàn toàn kiến thức và kinh nghiệm của lập trình viên.
- Quy trình phát triển phần mềm cần cả quản lý và kỹ thuật từ những người đã trải qua kinh nghiệm thực tế.
- Sự phụ thuộc vào AI có thể dẫn đến hai loại lập trình viên: ‘Expert beginners’ và ‘Lone Wolf Developers’, làm giảm tính cộng tác và phát triển nghề nghiệp.
Daring Fireball
The Talk Show: ‘Bad Dates’
- Jason Snell thảo luận về Bảng điểm Apple 2025 của Six Colors và MacOS 26 Tahoe.
- Apple Creator Studio được đề cập trong buổi trò chuyện.
- Mọi người mong đợi các công bố sản phẩm của Apple trong tuần tới.
- MacOS 26 Tahoe gặp nhiều vấn đề với biểu tượng ứng dụng kém và không đồng nhất.
- Các lỗi trong việc thay đổi kích thước cửa sổ trên MacOS Tahoe được nêu ra.
- Sử dụng nhiều ứng dụng khởi động Mac, bao gồm LaunchBar và Alfred.
- Các liên kết đến nhiều bài viết và tài liệu liên quan đến sự phát triển của Apple và MacOS được chia sẻ.
🍵
Redis patterns for coding
- Tài liệu cung cấp thông tin đầy đủ về các lệnh và kiểu dữ liệu của Redis.
- Có các mẫu thường dùng trong Redis.
- Cung cấp mẹo cấu hình cho Redis.
- Bao gồm các thuật toán có thể được triển khai bằng các lệnh của Redis.
- Tại địa chỉ https://redis.antirez.com/.
iDiallo.com
“How old are you?” Asked the OS
- Luật AB-1043 được thông qua tại California yêu cầu hệ điều hành thu thập tuổi của người dùng khi tạo tài khoản.
- Luật này được ban hành vào tháng 10 năm 2025.
- Luật không áp dụng cho các hệ thống offline như Raspberry Pi cá nhân.
- Việc khai báo tuổi không đúng có thể bị coi là vi phạm luật.
- Nếu tài khoản được thiết lập đúng tuổi nhưng trẻ em sử dụng thiết bị, điều đó không dẫn đến vi phạm.
- Luật không được thực thi, nhưng có thể được sử dụng để truy tố khi có nghi ngờ về tội phạm khác.
- Không khai báo tuổi với hệ điều hành cũng có thể dẫn đến vi phạm luật.
🍵 Maurycy’s Blog
Why does C have the best file API?
- Nhiều ngôn ngữ lập trình thiếu hỗ trợ tốt cho thao tác với tệp tin, thường chỉ cung cấp read(), write() và một thư viện tuần tự hóa.
- Cung cấp truy cập tệp tin như bộ nhớ thông qua memory mapping giúp xử lý dữ liệu lớn mà không cần tải toàn bộ vào RAM.
- Memory mapping tự động lưu cache, giúp quản lý dữ liệu hiệu quả hơn, tiết kiệm thời gian truy cập cho các tệp lớn.
- Các ngôn ngữ khác thường yêu cầu phải đọc, phân tích và tuần tự hóa từng khối nhỏ khi thao tác với tệp.
- C là ngôn ngữ duy nhất cho phép xác định định dạng nhị phân và sử dụng nó trực tiếp cho thao tác tệp.
- Các giải pháp như Python’s pickle có thể dễ bị lỗ hổng bảo mật khi tải tệp, nhưng vẫn được sử dụng phổ biến.
- Hệ thống tệp tin hầu như chưa được khai thác hiệu quả, và thường phải sử dụng cơ sở dữ liệu như SQLite bên trên hệ thống tệp.
- Tính tích hợp của SQL với các ngôn ngữ lập trình khác thường kém, buộc lập trình viên phải viết mã để truy vấn dữ liệu.
- Nhiều lập trình viên sử dụng cơ sở dữ liệu như một kho khóa-giá trị trong khi quản lý chỉ mục theo cách thủ công.
- Mọi hệ thống đều bị giới hạn bộ nhớ, đặc biệt với tệp lớn lên đến 100 GB, đi ngược lại giả định rằng dữ liệu luôn cần được phân tích khi đọc từ tệp.
Terence Eden’s Blog
Book Review: Under Fire - Black Britain in Wartime by Stephen Bourne ★★★★☆
- Người da đen đã tồn tại ở Vương quốc Anh từ rất lâu, không chỉ gần đây.
- Kinh nghiệm của người da đen ở Vương quốc Anh trong Thế chiến II khác biệt rõ rệt so với người Mỹ gốc Phi.
- GIs Mỹ thường bị chỉ trích vì cố gắng áp đặt sự phân biệt chủng tộc ở Vương quốc Anh.
- Cuốn sách chứa các báo cáo hiện tại và cuộc phỏng vấn hiện đại với những câu chuyện hấp dẫn.
- Một nhân vật đáng chú ý là chỉ có một học sinh da đen từng được phỏng vấn cho tài liệu truyền hình.
- Một số người được ghi danh có cuộc sống bình thường, trong khi một số khác như Ras Prince Monolulu là người nổi tiếng.
- Mối quan hệ giữa Vương quốc Anh và khái niệm “Đế quốc” rất phức tạp.
- Người dân từ các thuộc địa xa xôi đã đến hỗ trợ “tổ quốc” trong chiến tranh nhưng thường bị từ chối do màu da.
- Vụ án Constantine v Imperial Hotels Ltd minh chứng cho sự phân biệt chủng tộc này.
- Nhiều câu chuyện về tình yêu và sự chấp nhận cũng được nhấn mạnh trong sách.
- Người Anh mở cửa đón tiếp họ và không có vấn đề gì trong quan hệ xã hội.
- Cuốn sách cung cấp cái nhìn công bằng về một giai đoạn lịch sử khó khăn, mặc dù kết thúc có phần đột ngột.
Xe Iaso’s blog
Killing my inner Necron
- Tôi đã sống sót sau ca phẫu thuật và rời bệnh viện hôm nay.
- Tuần trước phẫu thuật là khoảng thời gian đáng sợ nhất trong đời tôi, dù tỷ lệ tử vong rất thấp.
- Tôi đã chuẩn bị mọi thứ để phòng trường hợp xấu nhất xảy ra, bao gồm việc viết di chúc.
- Tên phiên bản mới nhất của Anubis là Necron, lấy cảm hứng từ trò chơi Final Fantasy.
- Necron đại diện cho nỗi sợ cái chết, được triệu hồi trong bối cảnh người dân một vương quốc không biết đến cái chết.
- Trong Final Fantasy 14, Necron được triệu hồi nhờ nỗi sợ hãi này khi vương quốc Alexandria phải đối mặt với cái chết.
- Tôi đã vượt qua nỗi sợ cái chết trong tuần lễ trước phẫu thuật, liên lạc với mọi người về tình trạng của mình.
- Khi tôi được đưa vào phòng phẫu thuật, tôi đã chọn tiếp tục dù lo lắng cho chồng và tỷ lệ 1 trong 1 triệu.
- Sau ca phẫu thuật, tôi cảm thấy như đã trải qua giấc ngủ tốt nhất trong đời.
- Tôi nhận ra mình đang sống khi nghe tiếng máy đo nhịp tim và vòng bít áp suất máu.
John D. Cook
Shell variable ~-
- Thao tác ~- là một phím tắt trong bash đại diện cho biến shell $OLDPWD, lưu tên thư mục làm việc trước đó.
- Dùng cd - để trở về thư mục làm việc trước là điều phổ biến, nhưng ~- cho phép truy cập trực tiếp vào thư mục đó.
- Có thể so sánh các tệp có cùng tên trong hai thư mục khác nhau bằng lệnh diff, ví dụ: diff notes.org ~-/notes.org.
- Tính năng này đã có từ khi bash được phát hành vào năm 1989 và thuộc về C shell trước đó, nhưng không có trong Bourne shell.
- Người viết chưa đọc tài liệu bash một cách có hệ thống, nhưng nhận thấy cần khám phá thêm để học các thủ thuật hữu ích khác.
Evan Hahn (dot com)
The two kinds of error
- Lỗi được chia thành hai loại: lỗi dự kiến và lỗi không dự kiến.
- Lỗi dự kiến xảy ra trong quá trình hoạt động bình thường và không phải là lỗi của lập trình viên (ví dụ: lỗi xác thực, lỗi mạng, lỗi quyền).
- Lỗi dự kiến có thể phục hồi và thường trả về kết quả lỗi thay vì ném lỗi đi.
- Lỗi không dự kiến là dấu hiệu của lỗi trong mã, ví dụ như lỗi logic và lỗi con trỏ null.
- Lỗi không dự kiến nên dẫn đến việc chương trình bị sập và được ghi log với mức độ ERROR hoặc FATAL.
- Ranh giới giữa lỗi dự kiến và lỗi không dự kiến phụ thuộc vào ngữ cảnh lập trình.
- Một số ngôn ngữ lập trình như Rust phân loại nhiều lỗi là dự kiến, trong khi các ngôn ngữ như JavaScript thì ngược lại.
micahflee
“Why hack the DHS? I can think of a couple Pretti Good reasons!”
- DDoSecrets công bố dữ liệu từ hợp đồng với ICE bị hack từ Văn phòng Đối tác Công nghiệp của DHS.
- Nhóm hacker Department of Peace tuyên bố lý do hack là để thông báo về những công ty hỗ trợ DHS và các hoạt động của họ.
- Gần đây, các nhân viên ICE bị cáo buộc đã giết hai người tại Minneapolis, và chính quyền Trump bị nghi ngờ bảo vệ những kẻ phạm tội.
- Dữ liệu bao gồm hai tệp: dhs_contractors.json (13.4mb) và dhs_contracts.json (3.6mb).
- Một trang web đã được tạo để trực quan hóa dữ liệu hợp đồng ICE, cho phép lọc theo bang.
- Hợp đồng lớn nhất trong dữ liệu trị giá 70 triệu USD, thuộc về công ty Cyber Apex Solutions, LLC.
- Hợp đồng này được trao vào ngày 31 tháng 3 năm 2017 và kết thúc vào ngày 31 tháng 3 năm 2022.
- CEO của Cyber Apex Solutions là Justin AW Taft, và ông sử dụng địa chỉ email Hotmail cho công việc.
Andrew Nesbitt
Downstream Testing
- Thông tin về cách sử dụng thư viện nằm trong mã của các bên phụ thuộc, không phải trong tài liệu hay bài kiểm tra của thư viện (Hyrum’s Law).
- Một nghiên cứu năm 2023 cho thấy 11.58% bản cập nhật phụ thuộc trong Maven có thay đổi gây hại cho khách hàng, phần lớn trong số đó xảy ra ở bản cập nhật không phải chính (tài liệu gốc).
- Debian sử dụng tiêu chuẩn DEP-8 để khai báo bộ kiểm tra, và công cụ di chuyển tự động kiểm tra các phụ thuộc ngược trước khi chuyển từ không ổn định sang thử nghiệm.
- Autopkgtest không kiểm tra tính tương thích API mà chạy các bộ kiểm tra thực tế của người tiêu dùng, bao gồm cả các hợp đồng ngầm mà quản lý ngược không biết.
- Fedora thực hiện kiểm tra phụ thuộc phía dưới trước khi phát hành, giúp quản lý có thể sửa lỗi trước khi ai đó ngoài CI gặp phải.
- Sự cố xảy ra trong PR dễ dàng hơn để quản lý so với khi nó xuất hiện như một vấn đề sau nhiều tuần phát hành.
- Các hệ sinh thái ngôn ngữ như npm, PyPI và RubyGems thiếu cấu trúc và quy trình tiêu chuẩn để kiểm tra phụ thuộc ngược hiệu quả.
- Dù gặp khó khăn, một số hệ sinh thái ngôn ngữ đã xây dựng phương thức kiểm tra ngược hạn chế, chủ yếu thuộc về các nhóm phát triển trình biên dịch.
- Rust sử dụng hệ thống crater để biên dịch và kiểm tra mọi crate trên crates.io, với một ví dụ cho thấy 3,143 crate đã bị lỗi do một bản cập nhật trong thư viện tiêu chuẩn.
Susam Pal
HN Skins 0.2.0
- HN Skins 0.2.0 là bản cập nhật nhỏ ra mắt vào ngày 28 tháng 2 năm 2026.
- Bản cập nhật này điều chỉnh một số vấn đề nhỏ về kiểu dáng từ phiên bản phát hành ban đầu.
- HN Skins là một userscript web browser cho phép người dùng thêm chủ đề tùy chỉnh vào Hacker News.
- Bản cập nhật xóa khoảng trống dọc thừa bên dưới các liên kết ‘reply’.
- Người dùng có thể chọn skin theo thứ tự chữ cái trong hộp thoại chọn lựa.
- Màu nền của thanh điều hướng trong skin Terminal đã được sửa từ xám tối thành xanh đậm.
- Một số vấn đề khác, như việc themes Cafe và Terminal sử dụng Courier thay vì font monospace hệ thống, đã được phát hiện và sửa trong phiên bản phát triển trên GitHub.
- Dự kiến có bản phát hành chính thức sau.
- Thông tin chi tiết có trong changelog tại github.com/susam/hnlinks.
Eli Bendersky’s website
Notes on Lagrange Interpolating Polynomials
- Phương pháp nội suy đa thức (polynomial interpolation) tìm ra một hàm đa thức phù hợp hoàn hảo với một tập hợp các điểm dữ liệu.
- Ma trận Vandermonde là ma trận dùng để giải hệ phương trình tuyến tính để tìm hệ số của đa thức.
- Ma trận Vandermonde luôn khả nghịch, dẫn đến tồn tại một nghiệm duy nhất cho hệ phương trình.
- Nội suy Lagrange sử dụng các hàm cơ sở Lagrange (Lagrange basis functions) để tạo ra đa thức nội suy cho tập hợp các điểm đã cho.
- Hàm cơ sở Lagrange tại mỗi điểm là 1 và 0 tại các điểm khác, đảm bảo đa thức nội suy đều đạt giá trị đúng tại các điểm cần thiết.
- Đa thức nội suy có bậc tối đa là n-1, với n là số lượng điểm dữ liệu khác nhau.
- Định lý nội suy đa thức khẳng định tồn tại một đa thức duy nhất bậc tối đa n-1 cho bất kỳ tập hợp n điểm dữ liệu nào.
- Khi có hai đa thức nội suy cùng bậc, hiệu của chúng sẽ có ít nhất n nghiệm, dẫn đến mâu thuẫn nếu đường dẫn có bậc nhỏ hơn n.
- Tập hợp các đa thức Lagrange tạo thành cơ sở cho không gian vector của tất cả các đa thức bậc n, chứng tỏ chúng là độc lập tuyến tính và trải dài không gian này.
- Việc tìm hệ số cho đa thức bằng cách sử dụng các hàm cơ sở Lagrange là một phương pháp khả thi và hiệu quả.
Bert Hubert’s writings
Praatjes
- Tất cả các buổi diễn thuyết công khai đều liên quan đến digital autonomy, sovereignty, hoặc cloud dependency.
- Danh sách các buổi thuyết trình cho năm 2024 bao gồm:
- 27/8: AFM (AI)
- 25/11: Kiesraad
- 18/12: CBS
- Năm 2025 có nhiều buổi diễn thuyết quan trọng, ví dụ:
- 29/1: AMSEC/ABN Amro
- 11/2: Incose
- 17/2: Autoriteit Persoonsgegevens
- 27/2: Cyssec, Schiphol
- 3/4: GROSC
- 22/4: Đại học Utrecht
- Nhiều sự kiện diễn ra từ tháng 5 đến tháng 10 năm 2025, bao gồm:
- 15/5: Waag
- 5/6: dcypher/NCC-NL
- 25/9: Hội nghị giám sát kỹ thuật số
- Năm 2026 có sự kiện bao gồm:
- 14/1: Một cơ quan chính phủ
- 22/1: BZK, Open Data
- 20/3: 8RA / european cloud.
Martin Alderson
Why on-device agentic AI can’t keep up
- AI trên thiết bị cá nhân có thể vượt qua sự phụ thuộc vào cloud, mang lại quyền riêng tư, độ trễ bằng không và không tốn chi phí API.
- Mô hình AI mở có sự tiến bộ mạnh mẽ, nhưng yêu cầu phần cứng mạnh mẽ như Mac Studio hoặc GPU cao cấp để sử dụng hiệu quả.
- Thiết bị tiêu dùng thông thường, phần lớn chỉ có 8GB RAM, không đủ để xử lý các mô hình AI hiện tại, đặc biệt với các ứng dụng phức tạp.
- Thực tế, smartphone của Apple chủ yếu vẫn trang bị 8GB RAM, trong khi Google có Pixel tiêu chuẩn với 12GB, Pro với 16GB.
- Mô hình AI cần đủ RAM không chỉ để lưu trữ mà còn để quản lý thông tin tương tác, với khả năng lưu trữ tối thiểu 32K token để hoạt động hiệu quả.
- Mô hình 3B cần khoảng 2GB RAM, trong khi mô hình 7B yêu cầu 5GB, khiến không gian RAM cho AI rất hạn chế trên hầu hết các thiết bị.
- Tăng trưởng giá RAM lên đến 300% khiến các nhà sản xuất cắt giảm hơn là mở rộng RAM trên thiết bị, làm trầm trọng thêm tình hình.
Open Source Projects - Latest Discoveries
Create emotion-driven character conversations from any chatbot output
Visualize your entire year of conversations with this local WeChat tool
A minimalist sync tool to deploy your markdown to the web
Turn a single photograph into a full 3D Gaussian splatting model
Turn invisible AI crew work into a cozy pixel office dashboard
Build your own AI agent platform with this open-source foundation
Turn your webcam into a high-fidelity Iron Man armor workshop instantly
Turn images and text into robot actions with this minimal policy
Turn your GNOME Dash into a live waveform visualizer for music
The definitive open-source TUI hex editor for forensic file inspection
Control your personal music collection and Jellyfin server seamlessly
Implement complex game mechanics with these ready-to-use Haxe structures
Compose Shared Element Transitions: Seamless Screen Animations
Kotlin Scope Functions: let, run, with, apply, also — Complete Guide
Quick Tip: Securing Azure OpenAI endpoints
Azure AD B2B for external collaboration - Complete Guide
LazyVerticalGrid & StaggeredGrid: Compose Grid Layout Guide
Jetpack Compose Canvas: Custom Drawing, Charts & Animations
My Experience: Cost optimization for Azure OpenAI deployments
My Experience: VS Code extensions for Azure developers
My Experience: Managed identities implementation
Quick Tip: PowerShell vs Azure CLI comparison
My Experience: PowerShell vs Azure CLI comparison
Kotlin Extension Functions & Clean Architecture — Android Best Practices
Hacker News: Best
🔥 AI Made Writing Code Easier. It Made Being an Engineer Harder
🔥 Ghostty – Terminal Emulator
🔥 I built a demo of what AI chat will look like when it’s “free” and ad-supported
💬 Decision trees – the unreasonable power of nested decision rules
🔥 Switch to Claude without starting over
🔥 Microgpt
🔥 The Windows 95 user interface: A case study in usability engineering (1996)
🔥 Iran’s Ayatollah Ali Khamenei is killed in Israeli strike, ending 36-year rule
🔥 We do not think Anthropic should be designated as a supply chain risk
🔥 Our Agreement with the Department of War