-
Tóm tắt lập luận của Jonathan Blow
- Việc truyền đạt thông tin giữa các thế hệ đang bị pha loãng.
- Thực hành quan trọng hơn lý thuyết trong việc duy trì công nghệ.
- Phần mềm đang vận hành thế giới.
- Trừu tượng hóa khuyến khích sự thiếu hiểu biết về lập trình mức thấp.
- Nếu quên đi kiến thức mức thấp, chúng ta sẽ không thể duy trì phần mềm quan trọng và nền văn minh sẽ sụp đổ.
-
Phê bình và phản biện
- Lập luận của Blow chứa nhiều sai sót và hiểu lầm.
- Tính xác thực của thông tin là quan trọng, và thông tin của Blow sai ở nhiều khía cạnh.
- Chỉ số "Five nines" (99,999% thời gian hoạt động) vẫn đang được sử dụng.
- Phần mềm vững chắc vẫn tồn tại và tiến bộ công nghệ vẫn tiếp diễn.
- Nhận định rằng trừu tượng hóa dẫn đến mất năng lực là một sự phóng đại.
-
Tiến bộ công nghệ và trừu tượng hóa
- Nhiều lập trình viên không muốn xử lý quản lý bộ nhớ và con trỏ.
- Vẫn còn nhiều người viết mã C và assembly.
- Các ngôn ngữ mới như Rust tập trung vào tính vững chắc.
- Trừu tượng hóa góp phần thúc đẩy sự phát triển của công nghệ mới.
-
Tranh cãi về năng suất của Facebook
- Sản phẩm thực sự của Facebook là nền tảng phân phối quảng cáo.
- Nhiều lập trình viên đóng góp vào việc cải thiện hệ thống quảng cáo.
-
So sánh quá khứ và hiện tại
- Môi trường phát triển phần mềm trong quá khứ và hiện tại rất khác nhau.
- Máy tính hiện đại vững chắc hơn rất nhiều so với trước đây.
- Khi kỳ vọng của người dùng tăng lên, độ phức tạp của phần mềm cũng tăng theo.
-
Trừu tượng hóa và sự mất mát tri thức
- Trừu tượng hóa có thể đẩy nhanh sự mất mát tri thức.
- Nhưng trừu tượng hóa cũng mang lại cho nhiều người cơ hội thể hiện sự sáng tạo.
- Điều quan trọng là duy trì nền tảng kỹ năng có thể bảo trì các hệ thống quan trọng.
-
Kết luận
- Lập luận của Blow có phần hợp lý, nhưng ở nhiều điểm bị phóng đại và hiểu sai.
- Độ phức tạp của phần mềm và trừu tượng hóa là những vấn đề có thể giải quyết được.
- Vấn đề lớn hơn của thế giới số là quyền riêng tư và tự do.
1 bình luận
Ý kiến Hacker News
Tôi dạy các lớp về hệ thống tại Montana State, và nhiều sinh viên thường không hiểu hệ thống tệp là gì khi bắt đầu môn học
Tôi đồng ý với ý kiến của bạn. Tôi đã xem bài nói chuyện của Blow và nghĩ rằng những chỉ trích đó là quan trọng
Khi một lập trình viên web kỳ cựu phàn nàn về abstraction, họ đang nhắm vào lập trình viên React
Những thứ như JavaScript trên server và React đã biến web thành một mớ hỗn loạn của phát triển phần mềm
Blow thường chỉ ra những điểm rất hay về phát triển phần mềm, nhưng ông ấy cũng thường bỏ lỡ trọng tâm
Môi trường phần mềm hiện đại có rất nhiều vấn đề, và tôi nghĩ abstraction quá mức là một trong số đó
Không phải mọi sự đơn giản hóa đều là abstraction. Và không phải mọi abstraction đều là sự đơn giản hóa
Có rất nhiều abstraction tồi. Vì "tôn giáo của tốc độ" trong công nghệ và sự tự mãn, chúng thường dừng lại ngay ở lần thử đầu tiên
Tác giả thuộc về thế hệ mới hơn và không hiểu điều Blow đang nói
Tôi phản đối lập luận rằng "quên đi những thứ ở mức thấp thì văn minh sẽ sụp đổ"