Đây là cuốn sách kinh điển – tức là có giá trị vượt thời gian và chúng ta phải đọc đi đọc lại nhiều lần. Có rất nhiều ý tưởng thú vị từ cuốn sách mà mỗi người đọc sẽ thu lượm cho mình và những ý tưởng sau là những ý tưởng tôi thích nhất và luôn luôn tham chiếu trong quá trình phát triển cá nhân.

Những người lập trình thực dụng (the pragmatic programmers) – Họ là ai?

Những người lập trình thực dụng là những người có các đặc điểm sau:

  • Thích ứng nhanh, sớm với sự thay đổi của kỹ thuật và công nghệ
  • Luôn tò mò về mọi thứ với những câu hỏi bất tận
  • Có tư duy phê phán, không chấp nhận những thứ quy ước, mặc định.
  • Nhìn nhận các vấn đề đến tận bản chất của chúng
  • Luôn học hỏi, cập nhật cái mới

Hành trình trở thành một người lập trình thực dụng

Tạo và không ngừng cập nhật hồ sơ cá nhân bằng cách:

  • Đầu tư kiến thức và kỹ năng một cách thường xuyên, liên tục
  • Luôn học hỏi các kỹ thuật, công nghệ mới
  • Chấp nhận rủi ro, sẵn sàng thay đổi
  • Tư duy như một nhà đầu tư: mua giá rẻ và bán giá cao. Điều này có nghĩa rằng, chúng ta luôn “đi tắt – đón đầu” để nắm bắt những kỹ thuật, công nghệ mới mẻ trước khi chúng trở nên phổ biến. Cần nhớ rằng: “Cái phổ biến là cái tầm thường” và điều này thì rất chính xác trong lĩnh vực công nghệ
  • Luôn luôn làm mới bản thân

Để có thể có một hồ sơ cá nhân chất lượng như trên, chúng ta cần có những mục tiêu cụ thể sau:

  • Mỗi năm học ít nhất một ngôn ngữ lập trình mới: nếu bạn đã quen thuộc Java thì có thể học thêm Kotlin, nếu quen thuộc C++ thì có thể làm quen Swift,…
  • Trong vòng 3 tháng đọc ít nhất một cuốn sách chuyên ngành cuốn sách không chuyên ngành (tiểu thuyết, sách kỹ năng sống, v.v.) hoặc đọc những cuốn sách kết hợp cả hai, ví dụ như cuốn sách này.
  • Tham gia các khóa đào tạo chất lượng có thể là trường cao đẳng, đại học, trung tâm, hay các khóa học trực tuyến như Udemy, CodeAcademy, FreeCodeCamp,…
  • Tham gia và chia sẻ ý tưởng đến cộng đồng: nhận ý kiến đóng góp từ các chuyên gia là một điều vô cùng quan trọng như Dzone, CodeProject, Mozilla,…
  • Trải nghiệm trên nhiều môi trường khác nhau, ví dụ nếu đã quen dùng hệ điều hành Windows thì có thể thử chuyển qua dùng hệ điều hành Linux.
  • Cập nhật kiến thức bằng cách đăng ký các tạp chí định kỳ như Java Magazine hay MSDN Magazine, Hacker News,…
  • Thực hành: để lập trình hiệu quả thì cách tốt nhất vẫn là thực hành mỗi ngày bằng cách dạy lại cho người khác hay tham gia làm dự án thực tế.

Tham khảo ý tưởng gốc từ cuốn sách >

Một tóm lược từ blog Coding Horror >

Bên cạnh cuốn sách này, tôi cũng đang đọc các cuốn sách trong danh sách My Reading 2018.