Dưới đây tôi sẽ liệt kê 35 thói quen xấu thường gặp mà các lập trình viên nên lưu ý. Có thể là sẽ còn có nhiều hơn 35, nhưng tôi thấy số 35 đẹp.

Ngoài ra tôi để 2 điều quan trọng nhất ở #17 và #35, để các bạn có thể đọc toàn bộ bài viết của tôi.

Hy vọng các bạn sẽ cảm thấy có ích.

1. Thể hiện mình biết tất cả các câu trả lời

Cho rằng mình biết mọi thứ là 1 suy nghĩ rất nguy hiểm. Bạn ko thể biết đc hết, và điều đó ko vấn đề gì cả.

2. Tham gia họp hành cả ngày

Nếu bạn sử dụng quá nhiều thời gian trong ngày chỉ để họp, bạn nên cân nhắc sử dụng thời gian của mình hiệu quả hơn.

3. Cố chấp khi người khác nhận xét code của mình

Những lập trình viên tốt luôn sẵn sàng đón nhận 1 cuộc tranh luận thẳng thắn về code mình viết để có thể nâng cao khả năng bản thân.

4. Từ bỏ quá sớm

Rất nhiều lập trình viên đã tiến rất sát đến đáp án nhưng họ lại từ bỏ ngay trc khi họ có thể giải quyết đc vấn đề.

5. Từ chối sự giúp đỡ

Khi trình bày vấn đề của mình cho người khác, thường thì bạn sẽ tìm ra được phương án giải quyết.

6. Đổ lỗi

1 lập trình viên tốt sẽ có trách nhiệm với những dòng code mà họ viết.

7. Thực hiện tối ưu hoá code trước khi hoàn thành những đoạn code khác

Trong hầu hết các trường hợp, việc tối ưu hoá 1 phần code trước khi code xong toàn bộ sẽ rất khó để đánh giá thay đổi về hiệu năng.

8. Lờ đi ý kiến của các dev khác

1 trong những cách để học và phát triển kỹ năng tốt nhất là đc làm cùng với những dev có kinh nghiệm hơn mình. Do đó, hãy tìm kiếm ý kiến của họ.

9. Ko biết làm thế nào để tối ưu hoá code

Có 1 số trường hợp mà performance thực sự là vấn đề lớn, ví dụ khi làm việc với:

  • Các thuật toán phức tạp
  • Các thao tác với database ko hiệu quả
  • APIs của 3rd party
  • N+1 Queries

Khi vấn đề liên quan đến performance xuất hiện, bạn cần phải biết làm sao để phân tích chúng, hiểu đc nguyên do tại sao chúng xuất hiện, và làm sao để sửa.

10. Đánh giá thấp mối quan hệ với đồng nghiệp

Bạn được thuê để viết code, nhưng đừng quên là bạn cũng cần phải gắn kết với những members khác trong team.

11. Tranh luận gay gắt trong công ty

Thỉnh thoảng, những teams khác sẽ đưa ra quyết định rằng ý kiện của bạn là sai. Tuy nhiên, chỉ cần bạn có thể hoàn thành được mục tiêu của team mình, thì tốt nhất là nên làm việc kệ những lời châm chọc khác, hơn là cứ phải sa đà vào cãi vã.

12. Ko chịu nổi áp lực

Khi bạn đang xử lý 1 bug khiến user không thể sử dụng được sản phẩm, có rất nhiều áp lực đang đè lên đôi vai bạn. Cái bạn cần là phải nâng cao khả năng giữ bình tĩnh để có thể hoàn thành công việc.

13. Không thể không viết code đẹp

Thực tế, có rất nhiều điều phải đánh đổi, ví dụ như:

  • Deadline
  • Kinh nghiệm
  • Những bugs khẩn cấp cần fix ngay lập tức

Nhiều khi, bạn ko cần phải quá trau chuốt vào những dòng code, để đáp ứng được những yêu cầu cần thiết hơn.

14. Dùng dao mổ trâu để giết gà

Ko cần thiết phải sử dụng các phương án phức tạp cho các vấn đề đơn giản.

15. Thể hiện mình như boss, chứ ko phải là leader

Quá nhiều dev ko biết làm thế nào để quản lý người khác. Bạn nên là người để mọi người tìm đến khi cần phương hướng, chứ ko phải là cần những lời chỉ bảo step-by-step.

16. Sử dụng sai tool cho công việc

Đừng đưa ra quyết định chỉ vì “đó là thứ tôi biết”. Hãy tập sử dụng các công nghệ, ngôn ngữ, hay frameworks khác nữa.

17. Từ chối tìm hiểu những câu hỏi về code

Google thực sự là một trong những công cụ mạnh mẽ nhất dành cho những lập trình viên.

18. Ko nắm rõ những gì mình đang sử dụng

Có rất nhiều công cụ bạn đang sử dụng như text editors, command line v.vv.. và việc nắm rõ chúng là hết sức cần thiết. Hãy dành thời gian để đọc về những tips và tricks, chúng sẽ giúp bạn có thể sử dụng các tools hiệu quả hơn.

19. Bỏ qua error messages

Các thông báo lỗi hiện ra rất thường xuyên. Chúng mang rất nhiều thông tin như: lỗi gì, tại sao lại lỗi, dòng code nào lỗi. Bạn nên tìm hiểu các message lỗi, thay vì cứ tránh né nó.

20. Đếm giờ

Những lập trình viên tốt sẽ thực sự đắm mình trong việc viết code và tìm thấy chính mình trong đó. Không phải là cứ code 10,000 giờ là sẽ có gì thay đổi.

21. Ko học hỏi từ những sai lầm cũ

Điều này thực sự phản tác dụng. Khi có lỗi xuất hiện, hãy tập trung vào nó và rút ra 3 điều sau:

  • Đâu là nguyên nhân gây ra lỗi?
  • Phải làm gì để tránh lỗi tương tự xảy ra ở sau này?
  • Liệu lỗi này có thể đc phát hiện sớm hơn và gây ít ảnh hưởng hơn ko?

Việc ko có được bài học từ những lỗi cũ sẽ khiến bạn lặp lại chúng.

22. Lo sợ việc phải từ bỏ những gì đã code

Know that spending three days to write the wrong solution will teach you more falling victim to analysis paralysis.

23. Quá mộng tưởng vào toolkit của bản thân

Một vài dev yêu vim, 1 số người khác lại ghét nó và yêu emacs. Tuy nhiên, tuỳ vào trường hợp mà sẽ có tool này thích hợp hơn những tools còn lại.

24. Tách biệt bản thân khỏi cộng đồng lập trình viên

Có rất nhiều cộng đồng lập trình viên trên thế giới, như Railsbridge, Girl Develop It, hay những event như RubyConf, RailsConf v.vv.. và có rất nhiều thứ để bạn có thể học được từ đó.

25. Ko có tài khoản Twitter

Những lập trình viên đã tạo ra ruby, rails, javascript v.vv.. đều sử dụng Twitter. Việc cập nhật thông tin trên Twitter có thể giúp bạn hiểu được họ đang suy tính làm những gì.

26. Ko đáp trả lại cộng đồng

Bạn nên gắn mình với cộng đồng lập trình càng sớm càng tốt. Nếu bạn có thể làm j đó cho cộng đồng, bạn sẽ thấy điều đó có ích như thế nào.

27. Loay hoay hàng giờ để giải quyết vấn đề nhưng ko ghi chép lại

Bạn sẽ thường xuyên phải đối mặt với những vấn đề đặc biệt mà ko có câu trả lời trên Internet. Sau khi vật lộn hàng giờ để giải quyết chúng, bạn nên viết lại để có thể giúp đỡ những ng khác khi họ gặp phải vấn đề tương tự.

28. Viết quá nhiều (hoặc quá ít) comment cho code

Comment rất cần thiết cho code, tuy nhiên cũng phải có mức độ nhất định.

29. Lười cập nhật tình hình các vấn đề cho Product Managers

Product Managers là những người cần biết trạng thái của sản phẩm kịp thời, nên nếu bạn ko cập nhật cho họ thì sẽ thực sự rất đau đầu.

30. Khởi đầu những chức năng ko liên quan cùng lúc

Nếu những chức năng đó thực sự lớn, những issues tạo ra sẽ vô cùng phức tạp.

31. Bắt đầu với 1 phương án, nhưng hoàn toàn từ bỏ và thay đổi nó khi có 1 vấn đề ko lường trước phát sinh

Đó là điều tệ nhất bạn có thể làm.

32. Dính với 1 phương án ko hiệu quả

Điều duy nhất tệ hơn việc từ bỏ hoàn toàn phương án ở phút cuối, là cố chấp ko dừng lại việc triển khai 1 phương án tồi.

33. Liên tục xin lỗi về đoạn code xấu đang viết

Nếu bạn nhận thấy mình cứ phải xin lỗi cho những đoạn code xấu của mình, thì bạn cần đánh giá lại những deadlines.

34. Ko để tâm đến việc thực hiện code review

Toàn bộ dev team là 1 khối, và trách nhiệm của từng member là phải đảm bảo code của tất cả mọi người đạt tiêu chuẩn cao nhất.

35. Ko dành thời gian hướng dẫn những dev khác trong team

Đây là điều bắt buộc phải làm để team của bạn có thể phát triển ngày càng tốt lên.

Tôi nghĩ bất cứ lập trình viên nào cũng có những thói quen ko tốt, điều đó hoàn toàn bình thường. Để có thể nhìn lại chính mình qua 3 bước sau:

  • Nhận ra mình có những thói quen xấu
  • Tìm động lực để thay đổi thói quen đó
  • Biến động lực thành hành động để từ bỏ thói quen đó.

Source: What are some bad programming practices every programmer needs to be aware of in order to avoid them?