14 điểm bởi kuroneko 2023-07-07 | 11 bình luận | Chia sẻ qua WhatsApp
  • Một nghiên cứu do Jan Strehmel, sinh viên tại Viện Khoa học Máy tính Lý thuyết thuộc Viện Công nghệ Karlsruhe, công bố.
  • Thu thập hơn 3.800 kho mã có chứa chửi thề và hơn 7.600 kho mã không có chửi thề.
  • Đo chất lượng mã bằng SoftWipe, một công cụ đo chất lượng mã C/C++, và phân tích bằng nhiều phương pháp thống kê khác nhau.
  • Kết quả xác nhận rằng, trung bình, mã có chửi thề có chất lượng cao hơn.
  • Giả thuyết cho rằng việc sử dụng chửi thề thể hiện sự can dự cảm xúc vào độ phức tạp của mã, đồng thời phân tích mã một cách phê phán để tạo ra mã tốt hơn.
  • Tuy nhiên, phần phản biện nghiên cứu cho rằng khó tìm thấy mối liên hệ giữa chửi thề và chất lượng mã, đồng thời phê bình rằng tính đại diện của nghiên cứu còn thiếu.

11 bình luận

 
budlebee 2023-07-07

Nhắc tôi nhớ đến đoạn mã thuật toán tính toán vector của Quake.

float Q_rsqrt( float number )
{
long i;
float x2, y;
const float threehalfs = 1.5F;

x2 = number * 0.5F;
y = number;
i = * ( long * ) &y; // trò hack mức bit số thực dấu chấm động đầy tà đạo
i = 0x5f3759df - ( i >> 1 ); // cái quái gì vậy?
y = * ( float * ) &i;
y = y * ( threehalfs - ( x2 * y * y ) ); // lần lặp thứ 1
// y = y * ( threehalfs - ( x2 * y * y ) ); // lần lặp thứ 2, có thể bỏ dòng này

return y;
}

 
laeyoung 2023-07-07

Trái với quan niệm phổ biến rằng “hay chửi thề là do không được giáo dục tử tế”, đã có một nghiên cứu cho thấy những người sử dụng từ chửi thề thành thạo lại có vốn từ tương đối phong phú hơn." - https://www.mk.co.kr/news/society/7115122

Cũng có nghiên cứu cho rằng những người chửi thề giỏi có vốn từ vựng cao hơn. Nếu so sánh một người chỉ dùng cách diễn đạt 'không' với một người phân biệt và dùng cả 'không' lẫn 'không, đm', thì có vẻ người sau có vốn từ và khả năng biểu đạt tốt hơn.

 
secrasm 2023-07-07

Đọc bài này xong tôi đã thống nhất đổi loại commit trong commit message từ feat: sang f-word.

 
[Bình luận này đã bị ẩn.]
 
asdwqr 2023-07-07

Có phải là vì người viết ra đoạn code đó giỏi đến mức nhìn code của đồng nghiệp mà không nhịn được chửi thề không?
Hoặc là người viết code đó giỏi đến mức dù có nhét chửi thề vào code thì cũng chẳng ai dám ý kiến, haha

 
roxie 2023-07-07

Tôi cũng nghĩ vậy. Với trình độ bình thường thì ai dám chửi thề trong comment chứ... chắc sẽ tự kiểm duyệt bản thân thôi. Có lẽ chỉ một số ít trong số những lập trình viên xuất sắc, hoặc là không biết kiềm chế hoặc cố tình không kiềm chế, mới để lại lời chửi thề. Nhìn comment gốc thì còn thấy nhắc đến Torvalds nữa haha

 
laracool 2023-07-07

Đúng là một chủ đề mà các phóng viên thích giật tít sẽ rất khoái.

 
xguru 2023-07-07

Đây đúng là một nghiên cứu hơi kỳ. Nhìn thấy chú thích chửi thề chắc sẽ khiến tâm trạng không tốt mất -. -;

 
kuroneko 2023-07-07

Về cơ bản, ngay trong nghiên cứu cũng nói rằng tuy có mối tương quan giữa việc chửi thề và chất lượng mã, nhưng không có quan hệ nhân quả, nên không phải cứ chửi thề là chất lượng mã sẽ tốt hơn.
Và cũng có ý rằng vẫn còn hơi sớm để đưa ra kết luận, cần thêm nhiều nghiên cứu hơn.

Bên Hacker News cũng có khá nhiều tranh luận trái chiều. Có người nói có vẻ đúng thật, có người lại bảo không phải vậy...

Trong phần bình luận cũng có ý kiến rằng người ta sẽ chửi thề trong một môi trường an toàn (không bị áp chế), và chính trong môi trường như vậy thì chất lượng mã tốt hơn được tạo ra...
Cũng có người nói rằng chửi thề giúp giải tỏa cảm xúc phần nào, nên có thể tập trung vào chất lượng mã tốt hơn.

Không rõ điều này có đúng không, nhưng nghe nói ngay cả OpenJDK cũng có chửi thề trong mã.

 
kuroneko 2023-07-07

Tóm tắt AI về bài báo

Bản PDF thảo luận về việc liệu việc sử dụng lời chửi thề trong mã nguồn mở có liên quan đến chất lượng mã hay không.
Để điều tra điều này, tác giả đã thu thập dữ liệu từ GitHub với hơn 3.800 kho lưu trữ C có chứa lời chửi thề và hơn 7.600 kho lưu trữ C không chứa lời chửi thề.

Tác giả đã sử dụng một công cụ tên là SoftWipe để định lượng chất lượng mã của các kho lưu trữ dựa trên mức độ tuân thủ các tiêu chuẩn lập trình.
Kết quả, dựa trên kiểm định thống kê, cho thấy các kho lưu trữ có chứa lời chửi thề đạt điểm chất lượng mã cao hơn đáng kể so với các kho lưu trữ không có lời chửi thề.

Tác giả đưa ra giả thuyết rằng việc dùng lời chửi thề phản ánh sự dấn thân về mặt cảm xúc của lập trình viên và việc phân tích mã kỹ lưỡng hơn, từ đó dẫn đến chất lượng tốt hơn.
Tuy nhiên, tác giả cũng thừa nhận rằng tương quan không đồng nghĩa với quan hệ nhân quả, và lời chửi thề không tự động cải thiện chất lượng mã.

Nghiên cứu này đưa ra những kết quả ban đầu thú vị, nhưng tác giả lưu ý rằng việc thu thập bộ dữ liệu lớn hơn (bao gồm mã C++ và nhận diện lời chửi thề chính xác hơn),
và điều tra chi tiết hơn ảnh hưởng của số dòng mã, số sao và số lượng lời chửi thề đối với kết quả chất lượng mã có thể mang lại thêm nhiều hiểu biết.

Tóm lại, phát hiện chính của nghiên cứu này là đã tìm thấy một mối tương quan có ý nghĩa thống kê giữa việc sử dụng lời chửi thề và điểm chất lượng mã cao trong mã C nguồn mở.
Tuy nhiên, tác giả cảnh báo rằng vẫn cần thêm nghiên cứu để hiểu rõ hơn lý do của mối tương quan này và các hàm ý thực tiễn của nó.

 
americanpub 2023-07-10

Có lẽ cũng vì văn hóa chủ đạo của C là văn hóa phê bình quyết liệt.