Một bài viết blog của nhà phát triển phần mềm so sánh công việc của họ trên thư viện định dạng dữ liệu RDX với các nguyên tắc nghệ thuật của M.C. Escher đã châm ngòi cho một cuộc thảo luận sôi nổi trong cộng đồng công nghệ về văn phong khoa trương và sự cân bằng giữa khám phá nghệ thuật và phát triển thực tiễn.
Bài viết gốc, được viết sau khi thăm bảo tàng Escher tại The Hague, đã rút ra những điểm tương đồng giữa các tác phẩm đệ quy và toán học nổi tiếng của nghệ sĩ này với trải nghiệm của tác giả khi xây dựng librdx, một hệ thống định dạng dữ liệu và đồng bộ hóa đa mục đích. Nhà phát triển đã sử dụng tác phẩm Drawing Hands của Escher như một ẩn dụ cho việc xây dựng công cụ bằng chính những công cụ mà bạn tạo ra, và thảo luận về cách các hệ thống phần mềm phức tạp có thể đạt được sự tự tổ chức một cách thanh lịch.
Tính năng của thư viện RDX:
- Định dạng tài liệu giống JSON (JDR)
- Định dạng tuần tự hóa nhị phân
- Kho lưu trữ key-value LSM
- Đồng bộ hóa dữ liệu local-first
- Kho lưu trữ dữ liệu hỗ trợ mã hóa Merkle-graph
- Tổng cộng 20.000 dòng code (bao gồm 6.000 dòng code parser được tạo tự động)
Phản ứng dữ dội của cộng đồng về sự kiêu ngạo được cảm nhận
Bài viết nhanh chóng nhận được sự chỉ trích từ độc giả, những người cảm thấy văn phong quá tự cao tự đại. Một số người bình luận phản đối những gì họ coi là tác giả đang so sánh bản thân với một thiên tài thế hệ chỉ vì tạo ra một thư viện định dạng dữ liệu. Sự chỉ trích tập trung vào giọng điệu và sự hoành tráng được cảm nhận khi đánh đồng các thách thức phát triển phần mềm với những thành tựu nghệ thuật đột phá của Escher.
Tuy nhiên, không phải tất cả phản hồi đều tiêu cực. Một số nhà phát triển đã bảo vệ bài viết như là đại diện cho một giai đoạn quan trọng trong quá trình phát triển của một lập trình viên, lập luận rằng loại tư duy triết học này về cấu trúc mã và các mẫu thiết kế là có giá trị cho sự phát triển nghề nghiệp.
Sự kiểm tra thực tế của phát triển thương mại
Cuộc thảo luận đã tiết lộ một căng thẳng rộng lớn hơn trong thế giới phát triển phần mềm giữa khám phá lý tưởng hóa và áp lực thương mại. Một người bình luận đã lưu ý về việc theo đuổi vẻ đẹp và khám phá trong lập trình thường bị nghiền nát bởi nhu cầu cung cấp kết quả mà khách hàng trả tiền thực sự muốn. Tình cảm này đã cộng hưởng với những người khác, những người mô tả việc rời bỏ các chương trình học thuật vì không còn chỗ cho loại tư duy khám phá này trong các môi trường tập trung vào sản xuất.
Không còn chỗ cho khám phá và tìm kiếm vẻ đẹp nữa. Mọi thứ đều xoay quanh năng suất sản xuất.
Phản hồi và quan điểm của tác giả
Tác giả gốc cuối cùng đã tham gia vào cuộc thảo luận, thừa nhận chất lượng thô sơ trong văn phong của họ và giải thích rằng nó được viết một cách nhanh chóng trong khoảnh khắc phấn khích sau khi hoàn thành một cột mốc quan trọng. Sự thừa nhận này dường như đã làm dịu bớt một số lời chỉ trích và cung cấp bối cảnh cho giọng điệu nhiệt tình.
Cuộc tranh luận cũng đề cập đến một điểm tương đồng thú vị với chính Escher, người được báo cáo là đã nhận được thư từ các nhà toán học tuyên bố rằng nghệ thuật của ông đã hình dung hoàn hảo các lý thuyết phức tạp, mặc dù Escher không hiểu toán học mà họ đề cập. Điều này cho thấy rằng việc tìm ra ý nghĩa sâu sắc trong các tác phẩm sáng tạo, dù là nghệ thuật hay mã, đôi khi có thể nói lên nhiều điều về người quan sát hơn là người sáng tạo.
Cuộc tranh cãi làm nổi bật những câu hỏi đang diễn ra về cách các nhà phát triển nên thảo luận về công việc của họ và liệu việc mang các khuôn khổ nghệ thuật hoặc triết học vào phát triển phần mềm có tăng cường sự hiểu biết hay chỉ đơn giản tạo ra sự phức tạp không cần thiết.
Tham khảo: Escher's art and computer science