Stack Overflow - Công cụ giúp bạn làm việc hiệu quả hơn qua các ví dụ
Bài đăng này đã không được cập nhật trong 3 năm
Trong những năm gần đây, con số các công cụ được thiết kế để hỗ trợ cho các kĩ sư phát triển phần mềm thực sự bùng nổ. Những frameworks giúp bạn nối các ứng dụng lại nhanh hơn, các thư viện mã nguồn mở giúp bạn tránh phải dựng và tái dựng những phần nhỏ nhặt thông thường. Đồng thời, các dịch vụ đám mây giúp cho việc thêm các đặc tính dễ dàng và tiết kiệm hơn rất nhiều so với khi bạn tự dựng.
Nhưng nếu bạn muốn học cách làm thế nào để sử dụng tất cả các công nghệ đó thì nó đồng nghĩa với việc bạn phải đọc sách rất nhiều. Đọc hàng tá các tập tài liệu có thể là một việc quá khó khăn và dễ gây chán nản, đặc biệt là nếu tài liệu không cho bạn biết những gì bạn cần biết. Nhiều devs cuối cùng đành phải tìm đến các trang web để được giúp đỡ, và có lẽ nhiều người thường dừng chân tại Stack Overflow, một trang web có tiếng nơi mà các kĩ sư có thể đặt câu hỏi và tìm lời giải đáp cũng như chia sẻ những thông tin liên quan đến lập trình.
Kể từ khi được đưa vào vận hành vào năm 2008, Stack Overflow đã trở thành một nguồn trợ giúp thiết yếu. Công ty chủ quản cùng tên Stack Overflow cho biết có tới 40 triệu devs truy cập trang web này mỗi tháng.
Giờ đây, họ muốn Stack Overflow không đơn thuần chỉ là một nơi người ta tìm đến khi họ bế tắc mà còn muốn nó trở thành một địa chỉ nơi họ có thể tìm thấy những tài liệu, thông tin hữu ích, giúp họ giải đáp những thắc mắc trước khi họ phải hỏi và chờ đợi câu trả lời.
Đó là lí do tại sao Stack Overflow Documentation được cho ra mắt. Với mục đích hướng tới việc tạo dựng một kho tài liệu tổng hợp, phát triển bằng hình thức “crowdsourcing”, mỗi vấn đề đều sẽ được chia sẻ công khai và kêu gọi tất cả mọi người trong chính cộng đồng devs đó đóng góp ý kiến và giải quyết.
Vì thể có thể nói Stack Overflow đã thành công trong lĩnh vực hỏi - đáp này. Một vài tên tuổi lớn đã bắt tay và lưu trữ một số tài liệu với Stack Overflow trong đó có thể kể đến Dropbox, Microsoft, PayPal, và Twitch.
Câu hỏi lớn đặt ra là làm thế nào để các kĩ sư phần mềm có thể thực hiện được nhiệm vụ nặng nề, đó là, viết những bài viết chất lượng. Phó Chủ tịch Stack Overflow, ông Jay Hanlon cho biết phía công ty đã làm một vài nghiên cứu để tìm hiểu xem những kĩ sư phần mềm sẽ quan tâm và tìm kiếm những gì trong những tài liệu này.
Và họ đã đi đến kết luận rằng, cách tốt nhất để cải tiến chất lượng của những bài viết này đó là đưa thêm nhiều ví dụ minh họa vào. “Một trong số những điều mà chúng ta thường hay thấy khi nghiên cứu tài liệu đó là nội dung của chúng nhìn chung quá đặt nặng vào cú pháp và mô tả chi tiết trong khi không có sự liên hệ và không thể hiện đủ những gì mà người đọc cần biết. Trong công việc code, phương án viết ra cho người khác nhìn luôn luôn ưu việt hơn là nói cho người ta nghe.”
Thay vì cố gắng thuyết phục mọi người tình nguyện ghi lại cả một ngôn ngữ lập trình hay framework từ đầu, Stack Overflow đề nghị mọi người đưa ra những ví dụ hay cho mỗi tính năng của một công nghệ. Nếu bạn đã thành thục việc lập trình đa luồng trong Java, bạn có thể đưa lên một đoạn code mẫu để mọi người dễ hiểu và hiểu chính xác hơn. Hoặc bạn có thể lấy ví dụ bằng cách sửa hay viết lại hay nhận xét những đoạn code được đưa lên.
Ý tưởng ở đây là mỗi kĩ sư phần mềm đều có thể đóng góp một phần đáng kể mà chỉ cần trong một khoảng thời gian ngắn. Ví dụ như trong giờ nghỉ trưa chẳng hạn, đây là một phương án khả thi hơn nhiều so với việc yêu cầu họ dành thời gian rảnh của mình ra để làm một bài tuyển tập ghi lại tất cả về ngôn ngữ Java.
Nếu trước đây người dùng Stack Overflow có thể bầu chọn cho những câu trả lời mà họ cho là hay nhất thì giờ đây họ có thể bầu chọn cho những ví dụ về code được đưa ra mà họ cho là hay và hữu ích nhất. Những người thường xuyên đăng những bài viết và ví dụ hay sẽ có điểm số cao vì họ được bầu chọn, giống như một trò chơi chạy đua điểm số. Thế nhưng, Hanlon cho rằng đó không phải là lí do thực sự, lí giải tại sao con người ta lại “cống hiến” như vậy cho Stack Overflow. “Những người làm ra các trò chơi chưa bao giờ có thể khiến người ta chơi những trò người ta không thích. Nhưng chúng tôi có thể động viên, tiếp thêm động lực cho họ làm những việc đó”
Thay vào đó, Hanlon cho biết, chính những động cơ cơ bản của con người là những yếu tố khuyến khích các kĩ sư phần mềm giúp đỡ người khác và vượt qua các thử thách. Con người luôn có nhu cầu và những nhu cầu ấy đã tạo ra những động cơ khiến ta muốn thu nhặt, học hỏi, kết nối, bảo vệ ý kiến của bản thân và cảm thấy mình đã làm được việc có ích, giúp đỡ người khác. Nếu những bộ tài liệu được ghi chép lại này được hoàn thiện với chất lượng tốt hơn thì chắc chắn rằng nó sẽ vô cùng hữu ích cho những người làm phát triển phần mềm. Thế nhưng, không thể phủ nhận được là việc đảm bảo chất lượng của những thông tin đến từ nhiều người như vậy sẽ rất khó khăn và đầy thách thức.
Nguồn: http://www.wired.com/2016/07/stack-overflow-devs-help-us-make-code-better-example/
All rights reserved