"Tôi ngưỡng mộ Fabrice Bellard" - John Carmack
(twitter.com/ID_AA_Carmack)- John Carmack, người tạo ra Doom/Quake, nói rằng ông ngưỡng mộ Fabrice Bellard
"Gần như chắc chắn ông ấy có năng lực lập trình tổng thể vượt trội hơn tôi rất nhiều"
- Đây là bình luận ông để lại khi trích dẫn một bài viết do ai đó đăng kèm trang wiki của Fabrice Bellard
Một kỹ sư người Pháp sống lặng lẽ ở Paris đã viết phần mềm mà toàn bộ Internet hiện nay phụ thuộc vào trong suốt 30 năm, gần như không ai biết tên
- Phần lớn mã cốt lõi chống đỡ cho streaming video toàn cầu và ảo hóa đám mây được xây dựng dựa trên mã nguồn mở do một kỹ sư ở Paris tự tay tạo ra, bên ngoài Thung lũng Silicon
- FFmpeg, công cụ xử lý định dạng video và âm thanh, đóng vai trò như động cơ vô hình của Internet, vận hành phía sau YouTube, Netflix, VLC và nhiều dịch vụ khác
- Trình giả lập máy QEMU là nền tảng của ảo hóa hiện đại; hypervisor Linux KVM chạy trên đó, và hạ tầng VM của các đám mây lớn được xây dựng từ nền tảng này
- Ngoài ra ông còn một mình phát triển nhiều dự án như TCC, JSLinux, QuickJS, NNCP, và từng tính được số chữ số của π nhiều nhất lịch sử vào thời điểm đó bằng một công thức do chính mình suy ra
- Không cần marketing hay mạng xã hội, ông giữ vai trò CTO của công ty viễn thông Amarisoft và đến nay vẫn tiếp tục phát hành các dự án cá nhân
Tổng quan nhân vật
- Tên là Fabrice Bellard, sinh năm 1972 tại Grenoble, Pháp
- Từng học tại École Polytechnique, trường kỹ thuật hàng đầu nước Pháp
- Ông chưa từng chuyển đến Thung lũng Silicon hay xây dựng một đế chế startup, mà tập trung vào việc viết mã
- Không dùng Twitter hay Instagram, cũng hiếm khi nhận phỏng vấn
- Trang web cá nhân chỉ là một danh sách đơn giản gồm tên dự án và liên kết, không phong cách, không font đặc biệt, không khẩu hiệu marketing
FFmpeg — động cơ vô hình của Internet
- Framework đa phương tiện mã nguồn mở cho mã hóa, giải mã và streaming mà ông bắt đầu vào năm 2000 khi 28 tuổi
- Một mình hiện thực mục tiêu xử lý gần như mọi định dạng video và âm thanh bằng một thư viện duy nhất, trên mọi hệ điều hành
- Ông trực tiếp dẫn dắt dự án trong nhiều năm
- Hiện được YouTube, Netflix, VLC sử dụng; Chrome và Firefox cũng dùng một phần
- FFmpeg đang hoạt động bên trong mọi điện thoại Android, iPhone, smart TV và công cụ chỉnh sửa video
- Nếu trong 20 năm qua bạn từng xem video trên màn hình, rất có thể chính đoạn mã này đã xử lý video đó
QEMU — nền tảng của ảo hóa hiện đại
- Trình giả lập máy và công cụ ảo hóa bắt đầu từ năm 2003, được ông viết một mình cho đến phiên bản 0.7.1 vào năm 2005
- Cho phép chạy một hệ điều hành bất kỳ trên một hệ điều hành khác
- Hypervisor nhân Linux KVM chạy trên QEMU
- AWS, Google Cloud, Microsoft Azure, IBM Cloud và mọi nhà cung cấp đám mây lớn đều chạy VM trên hạ tầng được xây dựng dựa trên nó
- Được xem là một trong những đoạn mã hạ tầng đám mây được trích dẫn nhiều nhất trên Trái Đất
Các dự án cá nhân quan trọng khác
- Tác phẩm chiến thắng International Obfuscated C Code Contest năm 2001 là một trình biên dịch C nhỏ gọn, sau này phát triển thành TCC (Tiny C Compiler)
- TCC có thể biên dịch và khởi động Linux kernel từ mã nguồn trong chưa đến 15 giây
- Năm 2004, ông dùng máy tính desktop cá nhân và thuật toán Bellard's formula do chính mình suy ra để tính số chữ số của π nhiều nhất vào thời điểm đó
- Năm 2011, công bố JSLinux, trình giả lập PC viết hoàn toàn bằng JavaScript cho phép chạy Linux trong trình duyệt
- Năm 2019, công bố QuickJS, một JavaScript engine nhỏ gọn và đầy đủ, phù hợp với những môi trường mà V8 không thể triển khai
- Năm 2021, công bố NNCP, bộ nén dữ liệu lossless dựa trên mạng nơ-ron, ngay lập tức dẫn đầu Large Text Compression Benchmark
Các dự án liên quan đến LLM
- Xây dựng TextSynth Server, web server REST API để chạy LLM cục bộ
- Công bố ts_zip, ts_sms, dùng language model để nén văn bản và câu ngắn với tỷ lệ nén mà các thuật toán trước đây chưa đạt được
- Công bố TSAC, hệ thống nén âm thanh bitrate cực thấp
- Tháng 12 năm 2025, công bố Micro QuickJS, JavaScript engine cho vi điều khiển, tách biệt với QuickJS và nhắm đến các môi trường gần như không có bộ nhớ
Amarisoft và cách ông hoạt động
- Năm 2012, đồng sáng lập công ty viễn thông Amarisoft và giữ chức CTO
- Amarisoft phát triển phần mềm trạm gốc 4G·5G được các nhà mạng và viện nghiên cứu trên toàn thế giới sử dụng
- Trong hơn 10 năm điều hành công ty, ông vẫn tiếp tục phát hành các dự án cá nhân qua trang chủ (bellard.org)
- Không chuyển đến Thung lũng Silicon, ông vẫn lặng lẽ tiếp tục phát hành những đoạn mã đang chống đỡ Internet cho đến hôm nay
1 bình luận
Ý kiến trên Hacker News
Nhìn vào danh sách những đóng góp của Bellard, năng lực thuần túy của ông ấy đã rất đáng nể, nhưng điều nổi bật hơn là cảm quan biết chọn việc gì để làm
Ông ấy liên tục chọn những việc có thể trở nên hữu ích cho vô cùng nhiều người, và điều này còn gây kinh ngạc hơn cả năng lực kỹ thuật
Có lẽ câu hỏi quan trọng nhất trong cuộc đời là quyết định mình sẽ làm gì
Trong điện toán hiện đại có quá nhiều vũng lầy về trải nghiệm lập trình viên, ai cũng từng gặp nhưng gần như chẳng mấy ai thật sự đứng ra sửa chúng
Tóm lại đó là triết lý kiểu “những thứ lẽ ra phải tốt thì lại không tốt lắm, và tôi có thể học để làm nó tốt hơn”, rộng hơn nữa thì gần với “cứ làm đi là được”
Cả lựa chọn lẫn thực thi đều quan trọng, nhưng nhiều ngành đã được mở ra nhờ có ai đó biến điều trước đây khó làm trở nên dễ làm
Đặc biệt nếu muốn tạo ra ảnh hưởng, việc chọn sẽ dành cả đời cho điều gì là rất quan trọng, và nhiều khi chọn đúng vấn đề còn khó hơn nghĩ ra lời giải phù hợp
Với Bellard thì có thể là hơn 100x
Không phải ở chỗ làm việc 19 tiếng một ngày hay tăng số dòng code, số PR, mà là đưa ra những lời giải thanh nhã có tầm ảnh hưởng rộng lớn mà không ai khác nghĩ ra được
Những bài toán khó của mỗi lĩnh vực không phải bí mật gì, rốt cuộc chỉ là bạn có đủ năng lực, gan lì và ý chí để đổ vài năm vào chúng hay không
Phần lớn công việc của Bellard, thú vị thay, trông giống như chuyển đặc tả sang C
Các dự án quan trọng gồm ffmpeg (đặc tả codec), qEmu (đặc tả tập lệnh), QuickJS (đặc tả EcmaScript), tinyC (đặc tả C), viễn thông (đặc tả LTE), còn các công trình tính số pi và mạng nơ-ron thì gần như là ngoại lệ
Điều đó không có nghĩa là kém ấn tượng hơn; việc hiện thực codec hiệu năng cao và trình giả lập tuyệt đối không hề dễ, nhưng thật thú vị khi thấy rất nhiều công việc tập trung trong một miền tương đối hẹp
Tiêu chuẩn cố ý để decoder ở trạng thái mở nhằm phục vụ cạnh tranh triển khai và tiến bộ công nghệ, còn decoder phải xử lý nhiễu và các hiệu ứng của kênh nên thường phức tạp hơn
Vì vậy, việc xây dựng một decoder tuân chuẩn có sức cạnh tranh không phải là đi theo lộ trình đã vạch sẵn mà gần với R&D hơn, và Bellard có vẻ giống một kỹ sư biết lập trình hơn là một lập trình viên thuần túy
Codec thường được hiện thực bằng đảo ngược kỹ thuật, thậm chí có khi còn không có đặc tả, và ngay cả codec đã được tài liệu hóa cũng không nói cho bạn cách mã hóa/giải mã hiệu quả
Chính những người như Bellard mới là người phát triển ra các thuật toán hiệu quả đó
Ngày nay có xu hướng trộn cả ba với nhau, và tôi thấy kết quả cũng khá ổn
Chỉ là dạo này nhiều người dường như chỉ làm mỗi phần triển khai trong số đó
Giờ thì lại thành thuê ngoài đặc tả để có thể dành thật nhiều thời gian cho code
Các codec có rất nhiều điểm lệch khỏi khái niệm cơ bản và vô số đặc thù, khái niệm “frame” cũng khác nhau giữa thế giới âm thanh, phụ đề và video, còn cách chuyển frame giữa coder phần mềm và phần cứng thì lại hoàn toàn khác
Việc có thể gần như tự do phối trộn xử lý từ những thế giới khác nhau như vậy là một thành tựu lớn, và libav theo tôi được thiết kế đủ tốt để làm được điều đó
Bellard hiện đã không còn tham gia FFmpeg hơn 20 năm, thực tế gần 23 năm
Thời đó FFmpeg chưa có framework chia sẻ mã giữa các thành phần và codec nên code của ông ấy không tốt, có mùi spaghetti code, và giờ gần như chẳng còn lại mấy code của ông ấy
FFmpeg ngày nay trở thành như hiện tại là nhờ các nhà phát triển khác, thế nhưng ông ấy lại thường bị đối xử như thể là nhà độc tài nhân từ trọn đời duy nhất còn các nhà phát triển khác chỉ xây thêm lên cái khung đầy minh triết của ông
Công việc hiện tại của ông chỉ là giữ thương hiệu và quyết định dự án hay lãnh đạo nào được phép dùng tên FFmpeg, thậm chí từng có lần loại các nhà phát triển libav và đứng về phía một nhà độc tài khác
FFmpeg và Videolan khởi đầu trong phòng ký túc xá, được sinh viên dùng để stream TV và chia sẻ phim trong ký túc
Khuôn viên Polytechnique và École Centrale chỉ cách nhau vài km, và cả hai dự án đều bắt đầu vào khoảng năm 1997~1998
Nếu là thời sinh viên thì chắc người ta còn bận uống bia hơn là viết code sạch
Bản quyền thuộc về người viết code, chủ lao động của họ, v.v. vì không có yêu cầu chuyển nhượng bản quyền
Điều này tương tự việc Linus Torvalds nắm thương hiệu “Linux” ở một số khu vực pháp lý, trong khi phần lớn bản quyền lại thuộc về những người đóng góp khác
Tôi không rành ffmpeg lắm, nhưng điều này khá khớp với những gì tôi từng trải qua ở các dự án mã nguồn mở khác
Tôi còn nhớ thời AviDemux có hiện thực bộ mã hóa H.264 nhanh và tốt hơn ffmpeg rất nhiều
Đúng tinh thần mã nguồn mở, ffmpeg đã hấp thụ code của AviDemux, và cuối cùng chính AviDemux cũng chọn cách thực dụng là dùng ffmpeg làm backend thay vì tiếp tục cạnh tranh
Tôi nghĩ đây là một ví dụ hay cho việc đón nhận tinh thần mã nguồn mở
Việc nó có phải spaghetti code hay không cũng không quá quan trọng ở giai đoạn đầu
Khi người ta còn chưa biết rõ phạm vi và tương lai của dự án, có lẽ bắt đầu trong trạng thái spaghetti còn đúng hơn là bị lôi kéo bởi những vấn đề tương lai mang tính giả định; sau đó khi hiểu rõ yêu cầu hơn thì refactor là được
Việc cộng đồng đã làm như vậy là điều rất đáng khen
Có thể xem trang web của Fabrice tại đây: https://bellard.org/
Có danh sách đầy đủ các dự án
Mọi thứ rất rõ ràng và hoàn toàn không có sự trùng lặp không cần thiết
Bellard có một dự án rất thú vị tên là
ts_zip, một thuật toán nén dựa trên LLMNó chỉ là một “thí nghiệm” và không nên dùng trong môi trường production, nhưng rất thông minh
Phần mô tả trên website cũng rất vui: “The ts_zip utility can compress (and hopefully decompress) text files using a Large Language Model”
https://bellard.org/ts_zip/
Mô hình trong đầu tôi, và là phép ví von tôi dùng khi giải thích cho trẻ con, là “toàn bộ Internet đã được nén thành một kho lưu trữ kiểu zip, và có một cách rất thông minh, hiệu quả để tìm dữ liệu trong đó”
Tôi đủ già để nhớ thời người ta đặt mua Wikipedia trên CD, và tôi không thấy có khác biệt lớn nào giữa chuyện đó và việc tải về một LLM
Đã có người tạo ra các bộ nén mất hàng giờ, thậm chí hàng ngày, chỉ để nén một test corpus
Câu đùa lâu đời trong lĩnh vực này là nén dữ liệu là “AI-complete”, ví dụ thay vì nén toàn văn tác phẩm Shakespeare thì chỉ mã hóa “The Complete Works of Shakespeare”, rồi bộ giải nén AI sẽ tái tạo đầu ra từ prompt đó
Với sự xuất hiện của LLM, Bellard về cơ bản đã biến câu đùa đó thành hiện thực
“Fabrice Bellard” by Andy Gocke and Nick Pizzolato
https://www.ipaidia.gr/wp-content/uploads/2020/12/117-2020-f...
Tôi từng thắc mắc liệu nếu hỏi ai đó “người thông minh nhất còn sống là ai”, rồi lại hỏi tiếp người mà họ chỉ ra, có phải cuối cùng cũng sẽ hội tụ về cùng một nhóm thiên tài nhỏ hay không
Nếu làm vậy với coder giỏi nhất còn sống thì chắc có thể bắt đầu từ Carmack, rồi bước tiếp theo sẽ là Bellard
Chỉ mong là câu trả lời của Bellard đừng lại quay về Carmack
Đây là lần đầu tôi thấy ảnh của ông ấy, và hơi có cảm giác như danh tính của Satoshi Nakamoto đã bị lộ, một người cố giữ riêng tư và tránh sự chú ý
Ông ấy tạo cảm giác như kiểu người luôn có việc tốt hơn để làm là suy nghĩ thật kỹ và giải những bài toán khó, thay vì giao tiếp trên Internet rộng lớn
Bản thân công việc đã rất đáng nể, nhưng đạo đức làm việc còn đáng nể hơn
Nếu bạn có một tầm nhìn mạnh mẽ, thì kiểu phát triển trong tháp ngà là cần thiết hơn là ngồi tranh cãi cả ngày với người lạ trên mạng và bảo vệ các lựa chọn của mình
Nếu tìm thì vẫn có thể thấy ảnh
Không nên so sánh với Satoshi
Tôi không sở hữu hay quan tâm đến Bitcoin, nhưng cái tên đó là một sự hiện diện huyền thoại được đóng dấu trên tài liệu gốc
Fabrice Bellard là một con người có thật xuất bản code, chứ không phải một danh tính ẩn danh trên Internet
Cả hai đều tuyệt vời, nhưng ngay khi tên họ được nhắc tới, người ta bắt đầu nói về những kỳ vọng kỳ lạ kiểu “họ sẽ nghĩ gì” hơn là những gì họ thực sự đã làm
Kiểu thần thoại hóa đó lại khiến thành tựu của họ trông nhỏ đi
Bức ảnh đã phá hỏng tưởng tượng đó, và giờ tôi muốn được trả lại trí tưởng tượng của mình
Tôi hiểu người ta muốn nói gì với câu “ngày nay FFmpeg là động cơ vô hình của Internet”, nhưng tôi cực kỳ ghét kiểu cường điệu đó
Dù FFmpeg có đột ngột biến mất thì Internet vẫn sẽ ổn thôi
Những công ty phụ thuộc vào nó ở lõi sản phẩm có thể sẽ khổ sở, nhưng bản thân Internet và phần lớn website, dịch vụ Internet vẫn sẽ tiếp tục hoạt động bình thường
Tweet/bài viết đó là do LLM viết, và nó viết theo kiểu đó
Internet của ngày mai có thể sẽ khác
Hơi lạc đề và chấp nhận bị downvote, nhưng gần đây trào lưu X-article làm tôi cực kỳ khó chịu
Trên di động, để đọc được bài phải qua 3–4 bước, và các bài viết lúc nào cũng có dạng được tối ưu quá mức cho kiểu tương tác của độc giả chú ý ngắn như bài đăng LinkedIn
Hơn nữa, sự tương phản quá rõ giữa bài X này và website của chính Bellard lại càng mang tính mỉa mai
Ở các ngành khác thì đó là chuyện thường thấy với những người nổi tiếng có cùng mức tài sản ròng, nhưng với tôi nó vẫn có gì đó kỳ lạ