Thấy hay hay nên post lên đây mọi ng đọc cùng
nguồn: http://forum.vnoss.org/sq.php
nguồn: http://forum.vnoss.org/sq.php
Đặt một câu hỏi thông minh như thế nào ?
Smart Questions (Vietnamese)
Tác giả: Eric Steven Raymond, Rick Moen
Biên dịch: Hoàng Tuấn Quỳnh, Nguyễn Tiến Hải Bình, Nguyễn Minh Hương
Mục lục
1. Giới thiệu
- Giới thiệu
- Trước khi bạn hỏi
- Khi bạn hỏi
- Hãy chọn diễn đàn cẩn thận
- Các diễn đàn trên Web và IRC dành cho người bắt đầu thường có câu trả lời nhanh nhất
- Bước kế tiếp, hãy sử dụng các nhóm thư của các dự án
- Hãy viết tiêu đề một cách rõ ràng, mạch lạc
- Hãy giúp việc trả lời dễ dàng
- Hãy viết bằng ngôn ngữ rõ ràng, đúng ngữ pháp và chính tả
- Hãy gửi câu hỏi bằng định dạng dễ hiểu
- Hãy mô tả vấn đề của bạn một cách chính xác và với đầy đủ thông tin
- Dài dòng không có nghĩa là chính xác
- Đừng tuyên bố rằng bạn đã tìm ra lỗi
- Khổ nhục kế sẽ không giúp giải bài tập về nhà
- Hãy mô tả triệu chứng sự cố, chứ không phải những phỏng đoán
- Hãy mô tả triệu chứng sự cố theo trình tự thời gian
- Hãy mô tả mục đích cần đạt được, chứ không phải các bước
- Đừng đòi hỏi được trả lời bằng thư riêng
- Hãy dứt khoát với các câu hỏi của bạn
- Đừng hỏi các câu hỏi trong bài tập về nhà
- Hãy lược bớt các câu hỏi vu vơ
- Đừng đánh dấu câu hỏi của bạn là ``Khẩn cấp'', cho dù nó là khẩn cấp đối với bạn
- Phép lịch sự không bao giờ thừa, và đôi khi rất có ích
- Hãy thông báo về kết quả của các giải pháp được tư vấn (chốt lại vấn đề)
- Hiểu câu trả lời như thế nào
- Làm thế nào để không cư xử như một kẻ thất bại
- Những câu hỏi không nên hỏi
- Câu hỏi hay và dở
- Nếu bạn không nhận được câu trả lời
- Làm thế nào để trả lời có thể giúp ích cho người hỏi
- Các bản dịch
- Miễn trừ trách nhiệm
- Nguồn tài liệu liên quan
- Các đóng góp
Trong thế giới của hacker(2) , loại câu trả lời mà bạn nhận được cho các câu hỏi kỹ thuật của bạn phụ thuộc vào cách bạn đặt câu hỏi cũng như là vào sự khó khăn để nghĩ ra câu trả lời. Tài liệu này sẽ hướng dẫn bạn cách đặt câu hỏi để có khả năng có được câu trả lời vừa ý cao nhất. Hiện nay việc sử dụng phần mềm mã nguồn mở đã trở nên phổ biến, bạn có thể có được câu trả lời từ các người dùng có kinh nghiệm khác hơn là từ các hacker. Đây là một điều tốt; người dùng thường có chút gì đó dễ thông cảm hơn cho các thất bại mà những người mới sử dụng gặp phải. Mặc dù vậy, cư xử với các người dùng có kinh nghiệm như đối với hacker theo cách mà chúng tôi đề nghị ở đây sẽ thường là cách hiệu quả nhất để có được câu trả lời có ích từ họ.
Điều đầu tiên cần ghi nhớ là hacker thực sự thích các vấn đề hóc búa và các câu hỏi hay, đòi hỏi nhiều suy nghĩ. Nếu chúng ta không làm thế, chúng ta sẽ không có mặt ở đây. Nếu bạn đưa ra một câu hỏi thú vị để nghiền ngẫm chúng tôi sẽ rất biết ơn bạn; các câu hỏi hay không những là sự kích thích mà còn là món quà thú vị. Các câu hỏi hay giúp chúng tôi phát triển sự hiểu biết và thường giúp khám phá ra các vấn đề mà chúng tôi không để ý hoặc chưa từng nghĩ tới. Trong giới hacker, "Hỏi hay lắm!'' là một lời khen nồng nhiệt và chân thành.
Mặc dù vậy, từ lâu hacker đã nổi tiếng với cách cư xử như thù địch hoặc kiêu ngạo trước những câu hỏi thiếu suy nghĩ. Đôi khi có vẻ như chúng tôi đối xử một cách thô lỗ với những người mới bắt đầu hoặc những người kém cỏi. Nhưng điều này không thực sự đúng. Điều chúng tôi làm, một cách không thương tiếc, là căm ghét những kẻ dường như không sẵn sàng suy nghĩ hay làm bài tập ở nhà của họ trước khi bắt đầu đặt các câu hỏi. Loại người như vậy thật là phí thời gian - họ chỉ biết lấy mà không biết cho lại, họ làm phí thời gian mà chúng tôi có thể dành cho các câu hỏi khác thú vị hơn hay dành cho người đáng có câu trả lời hơn. Chúng tôi gọi loại người này là ``những kẻ thất bại (losers)'' (và vì các lý do của lịch sử mà thỉnh thoảng chúng tôi viết là ``lusers'').
Chúng tôi nhận ra rằng rất nhiều người chỉ muốn dùng các phần mềm chúng tôi viết mà chả quan tâm gì đến việc học các chi tiết về cách viết các chương trình như thế. Với phần lớn mọi người, máy tính chỉ đơn thuần là một công cụ, một phương tiện cho một mục đích nào đó; họ có điều khác quan trọng hơn để làm và cuộc sống quan trọng hơn để sống. Chúng tôi thấu hiểu điều đó và không mong mọi người quan tâm đến các vấn đề kỹ thuật đã làm cho chúng tôi say mê. Vì vậy, cách trả lời của chúng tôi được làm cho phù hợp với những người thực sự quan tâm và sẵn sàng tham gia tích cực trong việc giải quyết các sự cố. Điều này sẽ không thay đổi. Và cũng không nên thay đổi; nếu sự việc thay đổi thì chúng tôi sẽ trở nên kém hiệu quả trong những việc mà chúng tôi có thể làm tốt nhất.
Phần lớn chúng tôi là những người tình nguyện. Chúng tôi tranh thủ thời gian trong cuộc sống bận rộn để trả lời các câu hỏi và nhiều lần chúng tôi bị chìm ngập trong các câu hỏi đó. Vì vậy chúng tôi chọn lọc một cách không thương tiếc. Cụ thể là chúng tôi cho vào sọt rác các câu hỏi từ những người có vẻ là một kẻ thất bại nhằm mục đích sử dụng thời gian trả lời câu hỏi của chúng tôi một cách hiệu quả hơn, cho những người tỏ ra là thành công. Nếu bạn thấy thái độ này là đáng ghét, ghê tởm hay ngạo mạn, hãy xem lại các trách nhiệm của bạn.
Chúng tôi không yêu cầu bạn phải quỳ gối trước chúng tôi - mà thực tế là chúng tôi không mong ước điều gì hơn là đối xử công bằng với các bạn và chào đón các bạn đến với nền văn hóa của chúng tôi, nếu như bạn cố gắng biến điều đó trở thành hiện thực. Nhưng đơn giản là sẽ không hiệu quả nếu chúng tôi cố gắng giúp những người không sẵn sàng giúp chính bản thân mình. Không biết thì không có vấn đề gì, nhưng hành động ngu ngốc thì không thể chấp nhận được.
Vì vậy không nhất thiết phải thành thạo về kỹ thuật mới có được sự quan tâm của chúng tôi, mà nhất thiết phải tỏ ra là có năng lực, nhanh nhẹn, chịu khó suy nghĩ, có óc quan sát, sẵn sàng là một thành viên tích cực trong việc phát triển một giải pháp. Nếu bạn không thể sống với sự phân biệt đối xử này, chúng tôi khuyên bạn là trả tiền cho dịch vụ hỗ trợ thay vì yêu cầu hacker tặng cho bạn sự giúp đỡ cá nhân. Nếu bạn quyết định đến với chúng tôi để được giúp đỡ, bạn sẽ không muốn mình là một kẻ thất bại. Bạn cũng không muốn giống như một người trong số kẻ thất bại đó.
Cách tốt nhất để có câu trả lời nhanh và hào hứng là hỏi như thể bạn là một người thông minh, tự tin và có đầu có cuối, người mà chỉ đôi khi mới cần sự giúp đỡ cho một vấn đề cụ thể. (Những đóng góp làm cho tài liệu này trở nên tốt hơn rất được hoan nghênh. Bạn có thể gửi các gợi ý bằng thư điện tử tới [email protected]. Xin chú ý là dù sao tài liệu này không có mục đích trở thành hướng dẫn chung cho netiquette(3) , và tôi sẽ bỏ qua các gợi ý không liên quan trực tiếp tới việc làm thế nào để có được các câu trả lời tốt trong các diễn đàn kỹ thuật.)
2. Trước khi bạn hỏi
Trước khi đặt các câu hỏi kỹ thuật bằng thư điện tử, trong các nhóm tin, hay trong các diễn đàn trực tuyến, hãy làm các điều sau:
Khi bạn đặt câu hỏi thì hãy nói ngay là bạn đã làm các bước ở trên rồi; điều này sẽ giúp chứng tỏ là bạn không phải là một kẻ lười biếng và làm phí thời gian của người khác. Sẽ tốt hơn nữa nếu bạn nói là bạn đã học được nhiều điều khi thực hành các bước trên. Chúng tôi thích trả lời các câu hỏi cho những người chứng tỏ rằng họ có thể học hỏi từ các câu trả lời.
- Cố gắng tìm câu trả lời bằng cách tìm kiếm trên Web
- Cố gắng tìm câu trả lời bằng cách đọc tài liệu hướng dẫn
- Cố gắng tìm câu trả lời bằng cách đọc FAQ(4)
- Cố gắng tìm câu trả lời bằng các kiểm tra hoặc thí nghiệm
- Cố gắng tìm câu trả lời bằng cách hỏi một người bạn có kỹ năng tốt
- Nếu bạn là một lập trình viên thì hãy cố gắng tìm câu trả lời bằng cách đọc mã nguồn.
Sử dụng các chiến thuật như tiến hành tìm kiếm trên Google với các dòng chữ của tất cả các thông báo lỗi mà bạn gặp phải (và tìm kiếm trên các nhóm tin Google song song với tìm kiếm trên các trang Web). Điều này có thể mang bạn tới thẳng các tài liệu hướng dẫn sửa lỗi hay một nhóm thư(5) có thể trả lời cho câu hỏi của bạn.
Thậm chí nếu không được thì nói ``Tôi đã tìm trên Google đoạn thông báo sau nhưng vẫn chưa tìm thấy gì có ích'' cũng là một điều tốt để đặt trong câu hỏi ở thư điện tử hoặc các tin nhắn nhờ giúp đỡ. Hãy chuẩn bị câu hỏi của bạn. Hãy suy nghĩ thật thấu đáo. Các câu hỏi vội vàng sẽ có câu trả lời vội vàng hoặc không có câu trả lời nào cả.
Bạn càng chứng tỏ là đã cố gắng đầu tư nhiều công sức vào việc giải quyết vấn đề của bạn trước khi hỏi thì bạn càng có cơ hội được giúp đỡ. Hãy cẩn thận với việc đặt nhầm câu hỏi. Nếu bạn đặt câu hỏi dựa trên những phỏng đoán sai lầm thì Hacker Bất Kỳ sẽ tự nhủ ``Thật là một câu hỏi ngu ngốc...'' rồi trả lời một câu thật vô dụng và hi vọng là lần hỏi gì được nấy này sẽ dạy cho bạn một bài học.
Đừng bao giờ nghĩ rằng bạn có quyền có câu trả lời. Nói cho cùng thì bạn không phải trả tiền cho dịch vụ. Bạn sẽ có được câu trả lời, nếu có, bằng việc hỏi các câu hỏi thực tế, thú vị và lôi cuốn - câu hỏi mà sẽ đóng góp cho kinh nghiệm của cộng đồng chứ không chỉ đơn thuần là đòi hỏi một cách thụ động trí thức từ những người khác. Mặt khác, bạn phải làm rõ rằng bạn có thể và sẵn sàng giúp đỡ trong quá trình tìm ra giải pháp và đó sẽ là một sự khởi đầu tốt.
Các câu hỏi như: ``Ai đó vui lòng cho xin một chỉ dẫn được không?'', ``Ví dụ của tôi thiếu cái gì?'' và ``Tôi nên kiểm tra trên trang web nào?'' thường dễ có được câu trả lời hơn là ``Vui lòng hãy viết cho tôi chính xác các bước tôi cần tiến hành.'' bởi vì bạn đã làm rõ rằng bạn sẵn sàng hoàn tất việc tìm kiếm giải pháp nếu có ai đó cho bạn một chỉ dẫn đúng hướng.