Fabrice Bellard: Tiểu sử (2009)
(ipaidia.gr)- Lập trình viên người Pháp Fabrice Bellard là một trong những nhà phát triển có ảnh hưởng lớn nhất trong gần 20 năm qua, nổi bật với việc phát hành nhiều dự án đổi mới dưới dạng phần mềm mã nguồn mở
- Từ thuở nhỏ ông đã say mê thiết bị điện tử và lập trình cấp thấp, và ở tuổi 15 đã đạt thành công ban đầu khi phát triển trình nén tệp thực thi LZEXE
- Sau đó, khi học tại École Polytechnique, ông tiếp tục tích lũy nền giáo dục kỹ thuật toàn diện và xây dựng hiểu biết sâu sắc về tính toán toán học và kiến trúc máy tính
Tuổi thơ và khởi đầu lập trình
- Năm 1972, ông sinh tại Grenoble, Pháp và lớn lên ở Montpellier
- Từ thời thơ ấu, ông đã quan tâm đến thiết bị điện tử và kể rằng từ đầu tiên của mình là “máy ghi âm băng từ (magnétophone)”
- Ở tuổi 9, ông bắt đầu lập trình với máy tính cầm tay lập trình được TI-59
- Dù bị giới hạn về hiển thị và bộ ký tự, ông vẫn học được các khái niệm cấp cao như vòng lặp và phát triển cảm nhận mã cấp thấp
- Ở tuổi 11, ông mở rộng lập trình trên máy vi tính gia đình TI-99/4A bằng TI BASIC
- Cấu trúc cho phép nhập đúng một lệnh mỗi dòng giúp quá trình chuyển từ lập trình máy tính bỏ túi sang lập trình máy tính diễn ra tự nhiên
LZEXE và thành tựu sớm
- Ông bắt đầu hoạt động phát triển nghiêm túc sau khi mua Amstrad PC1512 ở tuổi 15
- Để giải quyết hạn chế về không gian lưu trữ, ông phát triển trình nén file thực thi LZEXE
- Viết lại thuật toán LZSS bằng hợp ngữ 8086 để thực hiện nén và giải nén nhanh
- Được phân phối qua BBS và đạt thành công ngay lập tức
Giáo dục tại École Polytechnique
- Ông thi đỗ vào École Polytechnique (X), trường danh tiếng hàng đầu của Pháp
- Chương trình cấp bằng kỹ thuật 5 năm, bao gồm 1 năm quân sự bắt buộc
- Giáo dục toàn diện và kỹ thuật giúp nhấn mạnh tư duy phản biện và năng lực liên ngành
- Bellard khẳng định trong quá trình học này tầm quan trọng của kiến trúc máy tính và lý thuyết tính toán
- Ông đặc biệt nhấn mạnh việc hiểu hợp ngữ và phần cứng là bắt buộc
Nghiên cứu toán học và phát triển thuật toán
- Năm 1995, ông bắt đầu nghiên cứu thuật toán số khi hiện thực hóa phương pháp nhân FFT của Pollard bằng C
- Thông qua tính toán đại số dùng FFT (biến đổi Fourier nhanh), ông thực hiện tính toán hàng triệu chữ số của π
- Năm 1997, ông công bố công thức tính chữ số nhị phân thứ n của π
- Tối ưu hóa xuống độ phức tạp O(n²) nhanh hơn 43% so với công thức Bailey–Borwein–Plouffe
VReng và TinyGL
- Năm 1998, ông phát triển VReng (Virtual Reality Engine) như một dự án sinh viên
- Một công cụ khám phá thế giới 3D ảo dựa trên multicast qua internet
- Sau đó, để cải thiện hiệu quả của OpenGL, ông chế tạo TinyGL
- Trình kết xuất 3D nhẹ 40KB, nhanh hơn rất nhiều so với Mesa và độc lập nền tảng
Sự ra đời của FFmpeg
- Năm 2000, ông khởi xướng dự án FFmpeg với bí danh “Gerard Lantau”
- Công cụ hỗ trợ mã hóa, giải mã, streaming và chuyển đổi âm thanh, video
- Gồm libavcodec (thư viện codec) và libavformat (thư viện xử lý container)
- FFmpeg hỗ trợ chuyển đổi giữa nhiều định dạng khác nhau và được tích hợp vào nhiều phần mềm đa phương tiện như VLC
Giải thưởng IOCCC và TinyCC
- Năm 2000 đoạt giải tại International Obfuscated C Code Contest (IOCCC)
- Tạo ra một trình biên dịch C dưới 4KB, sau đó phát triển thành TinyCC
- TinyCC là trình biên dịch siêu nhỏ tương thích ANSI C99, có thể biên dịch hạt nhân Linux trong vòng 15 giây
- Tác phẩm đoạt giải thứ hai năm 2001 là chương trình tính số nguyên tố kích thước 475 byte
- Dùng thuật toán dựa trên FFT để tính nhanh hàng triệu chữ số số nguyên tố
QEMU và đột phá ảo hóa
- Năm 2005, QEMU ra mắt, mô phỏng kiến trúc bộ xử lý bằng phần mềm
- Dịch động (dynamic translation) gom các khối lệnh lại để biến đổi và cache, giúp cải thiện hiệu năng
- Trong một số trường hợp đạt tốc độ gần mức native
- QEMU sau đó được chọn làm thành phần cốt lõi trong các công nghệ ảo hóa lớn như VirtualBox, Xen, KVM
Triết lý phần mềm tự do và thái độ phát triển
- Bellard công bố tất cả dự án lớn của mình theo giấy phép phần mềm tự do
- Ông ưu tiên sự hứng thú và tính hữu ích hơn lợi ích tài chính, và đặc biệt coi trọng việc chia sẻ mã nguồn
- Tập trung vào hoạt động phát triển thuần túy hơn là các công việc hành chính, truyền thông
- Về lý do thử thách nhiều chủ đề khác nhau, ông nói: “cùng một việc lặp đi lặp lại dễ gây chán”
Quan điểm về khoa học máy tính và lời khuyên
- Bellard phân biệt khoa học máy tính thành khám phá thực hành (ứng dụng) và khám phá lý thuyết (lý thuyết tính toán)
- Ông nhấn mạnh việc mở rộng giới hạn trong cả hai hướng là quan trọng
- Đối với lập trình viên trẻ, ông khuyên nên ưu tiên các nền tảng lý thuyết và hiểu phần cứng
- Trong học thuật toán, ông khuyên đọc The Art of Computer Programming của Donald Knuth
- Công trình nghiên cứu thời điểm đó tập trung vào xử lý tín hiệu số với bộ xử lý đa lõi, đặc biệt các dự án về Software Defined Radio
1 bình luận
Ý kiến trên Hacker News
Anh ấy chắc chắn là một nhân vật cấp GOAT, nhưng bài này dường như do người không hiểu nhiều về kỹ thuật phần mềm viết Chẳng hạn, tác giả mô tả cơ chế cache dịch mã của QEMU là ‘trình giả lập có hiệu năng bản địa đầu tiên’, trong khi thực tế công nghệ JIT đã tồn tại từ rất lâu rồi
Anh ấy tung ra ffmpeg và QEMU trong vòng 5 năm, rồi còn đoạt IOCCC đến hai lần — đúng là quá điên rồ
Bài tiểu sử này có nhiều thông tin mới hơn bất kỳ điều gì mình từng đọc về lập trình viên huyền thoại này
Sau đó, ông ấy cũng làm về trạm gốc 5G dựa trên phần cứng PC và các dự án liên quan đến LLM
Thành thật mà nói, mình băn khoăn xem Fabrice Bellard đã bắt đầu dùng công cụ lập trình LLM chưa Nếu có thì năng suất sẽ tăng lên, và điều đó thật đáng sợ luôn Ông ấy đã từng làm nghiên cứu nén LLM rồi, và chủ yếu lập trình bằng C Một người dùng C suốt hàng chục năm thường có thể nhớ lại và tái sử dụng hầu hết code của mình Vì vậy LLM có thể không giúp ích nhiều Ngược lại, có lẽ ông ấy sẽ huấn luyện LLM từ chính code của chính mình — có thể sẽ phát triển thành một dự án trả phí kín như dự án LTE
Khi công khai MicroQuickJS gần đây, ông ấy bỗng thành người mà cộng đồng luôn chờ đợi phải tạo ra ‘kết quả huyền thoại’ Mọi người đều kỳ vọng rất lớn ở ông ấy
Mình tự hỏi Bellard có giàu như antirez không
(Bài này có từ năm 2009)