Lập trình viên dùng 4 tháng tạo bản sao Hacker News bằng Common Lisp, gần như giống hệt nhưng hoàn toàn vô nghĩa
Một lập trình viên đã dành gần 4 tháng làm việc gần như mỗi ngày để tái tạo Hacker News bằng ngôn ngữ Common Lisp với độ chính xác gần như tuyệt đối. Ban đầu dự án nhắm tới việc dùng AI để tạo bình luận, nhưng cuối cùng chỉ là bản sao y hệt của HN — và tác giả thừa nhận nó hoàn toàn vô nghĩa.
Bản sao Hacker News bằng Common Lisp: 4 tháng cho một dự án "vô nghĩa" nhưng đầy tham vọng
Có những dự án ra đời không vì mục tiêu thương mại, mà chỉ để chứng minh giới hạn của bản thân. Đó chính là câu chuyện của sharc — một bản sao gần như chính xác đến từng pixel của Hacker News, được viết lại hoàn toàn bằng Common Lisp. Điều trớ trêu là bản thân tác giả cũng thừa nhận dự án này... chẳng có mục đích gì cả.
Từ ý tưởng "bình luận bằng AI" đến bản sao vô nghĩa
Ý tưởng ban đầu của dự án khá thú vị: xây dựng một phiên bản Hacker News mà toàn bộ bình luận đều do AI tạo ra, đặt tại địa chỉ news.ycombinator.lol. Tuy nhiên, kết quả hiện tại lại khiêm tốn hơn rất nhiều — tất cả bình luận đều giống y hệt bản gốc. Tác giả tự nhận xét một cách hài hước:
"Hiện tại nó là 'Hacker News, nhưng mọi bình luận đều giống hệt HN thật'. Vì thế nên nó hoàn toàn vô nghĩa."
Dù vậy, phần kỹ thuật của sharc lại không hề tầm thường. Đây là một bản port cực kỳ hiệu quả của HN sang Common Lisp, với mục tiêu then chốt là hiệu năng cao. Theo các kết quả đo đạc, hệ thống này có thể tạo trang chỉ chậm hơn một chút so với Hacker News thật.
Hiệu năng và những con số đáng nể
Một trong những điểm đáng chú ý nhất là khả năng chịu tải. Tác giả cho biết đã nhận được dữ liệu đo thời gian từ dang (quản trị viên của Hacker News) trên một trang đặc biệt đông truy cập, kèm theo số lượt xem trong một khoảng thời gian nhất định để làm mốc so sánh.
- Mục tiêu đặt ra: xử lý được 24 triệu lượt xem mỗi ngày
- Thực tế: tác giả chưa bao giờ kiểm chứng được liệu hệ thống có trụ nổi ở quy mô đó hay không
- Nhận định cá nhân: "Tôi nghĩ nó sẽ trụ được", dù có thể sẽ có vài chỗ hỏng khi mở rộng
Đáng chú ý hơn, dự án chỉ còn thiếu đúng hai tính năng để hoàn thiện bản sao: /ask và /show. Mọi thứ khác gần như đã có đủ, và hệ thống đã chạy ổn định trong vài tháng.
Cách "đòi lại" bình luận của chính bạn
Nếu bạn cảm thấy khó chịu vì bình luận của mình bị sao chép sang một trang khác, tác giả đã chuẩn bị sẵn một cơ chế xử lý. Quy trình cụ thể như sau:
- Truy cập vào trang cá nhân của bạn trên bản sao, ví dụ:
news.ycombinator.lol/user?id=ten-ban - Nhấn nút "claim" ở cuối trang
- Hệ thống sẽ yêu cầu bạn dán một mã 6 chữ số vào trang cá nhân thật trên Hacker News
- Sau khi xác minh, bạn có thể đặt lại mật khẩu cho tài khoản được sao chép
- Đăng nhập, vào trang cá nhân và đặt "redact" thành "yes" — tương tự như cách bạn bật "showdead" trên HN gốc
Điểm nhấn thú vị: đổi .com thành .lol
Điểm "ăn tiền" nhất của dự án nằm ở mức độ chính xác. Bạn có thể vào bất kỳ bình luận ngẫu nhiên nào trên Hacker News, sau đó thay .com trong URL thành .lol và bạn sẽ thấy một bản tái tạo gần như hoàn hảo đến từng pixel.
Ví dụ, hai đường dẫn sau dẫn tới cùng một nội dung:
https://news.ycombinator.lol/item?id=49996495https://news.ycombinator.com/item?id=49996495
Tuy nhiên, bạn không thể tạo ra một vòng lặp vô hạn. Nếu bạn sửa bình luận gốc để chèn liên kết trỏ về chính nó, bạn chỉ có thể đi từ HN sang .lol rồi quay lại HN mà thôi.
Bài học từ một dự án "khó nhằn"
Tác giả chia sẻ rằng đây là một trong những dự án đòi hỏi kỹ thuật cao nhất mà anh từng thực hiện. Nhiều người nhìn vào Hacker News và nghĩ rằng nó đơn giản, nhưng thực tế lại chứa vô số tính năng tinh tế mà người dùng thường không để ý.
"Nếu bạn nghĩ nó dễ, tôi mời bạn tự viết thử — đó là một bài tập chắc chắn sẽ giúp bạn trở thành lập trình viên giỏi hơn, và giúp bạn trân trọng hơn bao nhiêu tính năng tinh tế mà chúng ta đang được hưởng ở HN."
Ngay cả khi viết bài chia sẻ này, tác giả còn phát hiện thêm một chi tiết mới: khi nhập nhầm giữa ô "title" và ô "url", HN hiển thị một overlay đẹp mắt với thông báo "please enter a URL" trỏ đúng vào ô cần nhập. Anh thừa nhận đội ngũ HN liên tục bổ sung những tính năng nhỏ nhặt nhưng hữu ích, dù không phải lúc nào cũng hiển nhiên với người dùng.
Vậy rốt cuộc, mục đích là gì?
Tác giả gọi đây là một "dự án nghệ thuật" — cách nói ám chỉ rằng đáng lẽ nó sẽ thú vị hơn nhiều nếu có bình luận do AI tạo ra, nhưng anh đã tạm dừng công việc này. Chi phí API token cho AI được cho là một rào cản lớn, có thể lên tới hàng trăm đô la.
Thời gian phát triển kéo dài khoảng 4 tháng với tần suất gần như hàng ngày, có những ngày tác giả làm việc liên tục 16 tiếng. Anh cũng gửi lời cảm ơn đặc biệt đến dang vì đã hợp tác, thậm chí chính dang là người gợi ý tên "sharc" cho mã nguồn.
Đối với độc giả Việt Nam quan tâm đến lập trình và các dự án mã nguồn mở, sharc là một ví dụ thú vị về việc tối ưu hiệu năng và tái tạo giao diện có thể đòi hỏi bao nhiêu công sức. Ngay cả một trang web tưởng chừng đơn giản như Hacker News cũng ẩn chứa hàng trăm chi tiết nhỏ mà chỉ khi tự tay viết lại, bạn mới thực sự hiểu được giá trị của chúng.
Toàn bộ mã nguồn của dự án được công khai, dành cho những ai tò mò muốn xem cách một trang tin công nghệ phổ biến được tái tạo bằng một ngôn ngữ lập trình "cổ điển" như Common Lisp.
Bài viết liên quan

Công nghệ
Mô hình AI hàng đầu giỏi Vật lý đến đâu? Nghiên cứu mới chỉ ra các bài kiểm tra hiện hành đang đánh giá sai
16 tháng 9, 2026

Công nghệ
Nộp đơn xin việc lẽ ra nên khó hơn. Thật đấy
25 tháng 8, 2026

Công nghệ
Endeavor Catalyst gọi vốn 320 triệu USD để đầu tư cho các founder ngoài Thung lũng Silicon
07 tháng 10, 2026