Chỉ là cho vui thôi. Không, thật đấy. - Tôi đã phát triển nó chỉ để vui. Thật mà. (2022)
(justforfunnoreally.dev)- "Chúng tôi thích phát triển phần mềm"; việc lập trình là một hành trình ngoằn ngoèo để giải quyết vấn đề, và đích đến kém quan trọng hơn nhiều so với điều nhiều người nghĩ
- Chúng tôi thường nhận được những câu hỏi như:
- "Tại sao lại làm việc này?"
- "Mục đích của dự án này là gì?"
- "Dự án này tốt hơn X ở điểm nào?"
Sự khắc nghiệt của Thung lũng Silicon
- Nếu bạn dành nhiều thời gian trên Hacker News hoặc các trang tin thiên về startup khác, bạn có thể tin rằng ai cũng đang bám lấy startup triệu đô tiếp theo hoặc chiến lược thoái vốn
- Có thể sẽ khó hình dung rằng mọi người lại làm mã nguồn mở hoàn toàn chỉ vì niềm vui
- Có những hacker yêu nghệ thuật xây dựng phần mềm. Họ làm điều đó vì thử thách, vì niềm vui. Họ không cố để trở thành triệu phú
Văn hóa tiêu dùng
- Hoặc nếu bạn chỉ tiêu thụ phần mềm của người khác mà hầu như không tự làm gì, bạn có thể bị mắc kẹt trong suy nghĩ: "Dự án này có thể làm gì cho tôi?" (và nếu dự án không liên quan đến họ, họ sẽ tự hỏi tại sao nó lại tồn tại)
- Có những hacker không cần người khác phải tiêu thụ phần mềm của họ. Tất nhiên, sẽ rất tuyệt nếu người khác thích thú, ngưỡng mộ hoặc trân trọng công việc của họ, nhưng điều đó không thực sự cần thiết. Chỉ riêng việc tạo ra nó đã là niềm vui rồi.
Chúng tôi làm điều đó chỉ vì vui thôi. Thật đấy.
- Cuối cùng, những người chỉ học các kỹ năng lập trình cần cho công việc hằng ngày có thể sẽ không hiểu được các lập trình viên luôn thử những điều mới mẻ
- Có những hacker sống và thở cùng code
- Thật đáng buồn khi phải nghĩ rằng từng dòng code đều phải chứng minh giá trị tiền bạc của nó, rằng từng giờ vất vả trước bàn phím đều phải được giải thích
- Bản thân quá trình đã có giá trị. Dù có khiếm khuyết, nó vẫn có giá trị tự thân. Không phải chỉ sản phẩm cuối cùng mới quan trọng
- Tôi xin kết lại bằng câu trích dẫn yêu thích của mình về lập trình:
Lập trình viên, cũng như thi sĩ, làm việc chỉ hơi tách ra khỏi chất liệu thuần túy của tư duy. Anh ta dùng trí tưởng tượng của mình để xây lâu đài trong không trung. Rất ít phương tiện sáng tạo nào linh hoạt đến vậy, dễ dàng tinh chỉnh và làm lại đến vậy, và có thể hiện thực hóa những cấu trúc ý niệm hùng vĩ một cách dễ dàng đến vậy. Nhưng khác với lời thơ của thi sĩ, cấu trúc chương trình là có thật ở chỗ, tách biệt khỏi chính cấu trúc đó, nó tạo ra những kết quả hữu hình, chuyển động và vận hành.
— Fred Brooks, The Mythical Man-Month
Hãy thử đi!
- Nếu bạn nghĩ mình đã lạc lối — nếu việc code từng vui, nhưng giờ chỉ còn là cực hình để chấm công và nhận lương — chúng tôi muốn mời bạn quay lại!
- Hoặc nếu bạn đã bị thuần hóa để nghĩ rằng việc lập trình những ý tưởng kỳ quặc chỉ dành cho chuyên gia và học giả, thì trang này là dành cho bạn. Bạn có quyền mày mò và tận hưởng niềm vui trong quá trình đó!
- Hãy nghĩ đến một thứ gì đó mà bạn muốn tạo ra, học hỏi và trải nghiệm bên trong máy tính. Và đừng tìm kiếm hay nghiên cứu trước, cứ lao vào đi. Biết đâu bạn sẽ cảm thấy được một chút niềm vui. Thật đấy.
Câu lạc bộ
Không theo thứ tự nào, dưới đây là một vài dự án tự hào gắn nhãn "chỉ vì vui thôi".
- Natalie - Trình biên dịch Ruby làm cho vui
- ZigSelf - Bản hiện thực Self bằng Zig làm cho vui
- php-parser-rs - Trình phân tích cú pháp PHP viết bằng Rust làm cho vui
- ex6502 - Trình giả lập bộ xử lý 6502 viết bằng Elixir làm cho vui
- Piko-piko OS - Toy OS x86 16-bit làm cho vui
- Folders2kt - Ngôn ngữ lập trình esoteric làm cho vui
- GCC Rust - Trình biên dịch Rust làm cho vui
- Soul - Máy chủ SQLite REST và thời gian thực làm cho vui
- hssp - CLI mã trạng thái HTTP làm cho vui
- PyCraft - Trình khởi chạy Minecraft viết bằng Python làm cho vui
- hashsearch - Công cụ tìm kiếm ảnh ngược làm cho vui
- quackspeak - Công cụ chuyển văn bản thành giọng nói bằng vịt làm cho vui
- Quark - Phương ngữ Lisp hiệu năng cao làm cho vui
- Whitecat - CLI cho phát triển PHP làm cho vui
- eClient - Trình khởi chạy Minecraft viết bằng Python làm cho vui
- CascadeOS - Hệ điều hành đa dụng làm cho vui
- Kiesel - Engine JavaScript viết bằng Zig làm cho vui
- github-pewpew - Công cụ CLI xóa repository làm cho vui
- dt - Ngôn ngữ kiểu AWK có chaining làm cho vui
- grab - Bản sao grep gọn nhẹ làm cho vui
- math-with-regexps - Làm toán bằng regex cho vui
- noro - Trình soạn thảo văn bản có window manager làm cho vui
- Vox - Trình dựng static site viết bằng Elixir làm cho vui
- jimson - Trình phân tích cú pháp JSON làm cho vui
- txt2tufte - Trình dựng website kiểu Tufte làm cho vui
- Azure Storage Trình khám phá web - Trình khám phá web Azure Storage làm cho vui
- renam - Tiện ích đổi tên tệp cực nhanh làm cho vui
- Funciton - Ngôn ngữ lập trình bằng các chiếc hộp làm cho vui
Ý kiến của GN⁺
- Bài viết này nói về giá trị và tầm quan trọng của việc các lập trình viên theo đuổi niềm vui đơn thuần. Trong văn hóa tiêu dùng và startup ngày nay, có áp lực rằng mọi thứ đều phải thực dụng và sinh lời, nhưng điều đó có thể cản trở tính sáng tạo và đổi mới của việc lập trình.
- Cộng đồng mã nguồn mở là một ví dụ điển hình thể hiện tinh thần "chỉ vì vui thôi" này. Nhiều dự án mã nguồn mở quan trọng ban đầu bắt đầu như một dự án sở thích của ai đó, và trong quá trình đó, những ý tưởng và cách tiếp cận mới đã được khám phá.
- Tuy nhiên, nếu theo đuổi thái độ này một cách quá mức, nó cũng có thể dẫn đến việc sản sinh hàng loạt dự án kém tính thực dụng. Cuối cùng, có lẽ sự cân bằng giữa niềm vui và tính thực dụng mới là điều quan trọng. Dù vậy, bài viết này vẫn có ý nghĩa ở chỗ nó nhắc chúng ta nhớ đến giá trị của niềm vui thuần túy và sự tò mò mà ta thường hay quên mất.
- Với những nhà phát triển đang mệt mỏi vì công việc thường nhật, các dự án sở thích kiểu này có thể là nguồn cảm hứng và động lực tốt. Đây cũng là bài viết mà tôi muốn giới thiệu cho những ai muốn học ngôn ngữ hay công nghệ mới nhưng cảm thấy mình không có thời gian.
5 bình luận
Tôi được biết ngay cả bản thân ngôn ngữ Python cũng là một language được tạo ra cho vui trong kỳ nghỉ khoảng một tuần.
Tôi cũng thích phát triển những thứ cho vui, nhưng dạo này cứ tan làm là kiệt sức nên có vẻ đến tưởng tượng cũng không nổi nữa. Có nhiều người thật đáng nể.
Bạn cũng có thể hỗ trợ khắc phục sự cố trên issue tracker của các dự án mã nguồn mở mình thường dùng hoặc đóng góp cho tài liệu. Có vẻ không nhất thiết phải bắt đầu một dự án mới hay phải tự mình viết code.
Đến năm 94 tôi vẫn chỉ là một người dùng máy tính đơn thuần, rồi học ngôn ngữ lập trình và đến năm 95 thì làm một nghề liên quan đến "tin học".
Bây giờ nghĩ lại, tôi đúng là một kẻ cực kỳ may mắn.
Ý kiến trên Hacker News
Thích tạo ra thứ gì đó bằng code, đôi khi cũng cân nhắc lợi ích tài chính, nhưng chủ yếu làm dự án vì vui
Đã giải thích về dự án cá nhân trong buổi phỏng vấn, nhưng cảm thấy khó chịu vì người phỏng vấn cứ liên tục hỏi tại sao lại làm dự án đó
Khi giải thích động lực làm phần mềm, ví nó giống như một mình xây lâu đài cát trên bãi biển và cảm thấy thỏa mãn
Nhờ các mô hình ngôn ngữ lớn (LLM), việc bắt đầu những dự án thú vị trở nên dễ hơn
Để dành thời gian cho dự án cá nhân, đã cắt giảm chi phí sinh hoạt và tận dụng khoảng thời gian giữa các hợp đồng
Thấy tiếc khi danh sách các dự án làm vì vui chỉ bao gồm những dự án đã hoàn thành
Trong cuộc trò chuyện với đồng nghiệp hôm qua, đã đi đến kết luận rằng phát triển kỹ năng thông qua khối lượng công việc lớn là điều quan trọng
Cả sản phẩm làm vì vui lẫn sản phẩm làm vì lợi nhuận đều có thể kém chất lượng
Đây là một trải nghiệm nội tại, giống như tự mình nấu ra một món ăn tuyệt vời, nhưng bản thân nó đã có giá trị
Khi đọc các trang như Hacker News, người ta có thể nghĩ nhiều người đang chuẩn bị cho startup bom tấn tiếp theo