Chuyện về các cây đa cây đề trong làng Software Engineering

Để thành một lập trình viên giỏi, có rất nhiều bạn phải học và phải biết: Cách viết code sạchrefactor code, design thế nào để code SOLID, Inversion of Control và  Dependency Injection, Agile methodology, …

Tuy nhiên, đã bao giờ bạn tự hỏi: “Ai là người đã nghĩ ra những thứ đấy” chưa?. Bài viết này sẽ kể bạn nghe về những người đó. Đây là những cái tên có nhiều đóng góp to lớn cho ngành phần mềm. Họ nổi tiếng không chỉ nhờ khả năng code, mà còn nhờ khả năng viết và diễn đạt, truyền cảm hứng.

img

Ko chỉ là một developer, họ còn là một writer. Mỗi người đều có trang web/blog, sách được xuất bản, rất có tiếng tăm trong cộng đồng developer. Nhờ khả năng viết, những ý tưởng/đóng góp của họ được cộng đồng tiếp thu, cải tiến và trân trọng. Mình cũng viết blog để chia sẻ kiến thức, ý tưởng, tiếc là chưa tiếng tăm chưa được bao nhiêu.

Dưới đây là vài cái tên (theo mình) đã góp phần làm thay đổi bộ mặt của ngành Software Engineering chúng ta.

1. Dennis Ritchie

Ông là cha đẻ của ngôn ngữ C – ngôn ngữ mà hầu như developer nào cũng phải học khi “Nhập môn lập trình”. Ông còn góp phần vào phát triển hệ điều hành Unix, tiền thân của Linux và OS X. Ông mất ngày 12/10/2011, hưởng thọ 70 tuổi. Đám ma không kèn không trống, chẳng bù với Steve Jobs.

Sách đã xuất bản: Unix Programmer’s Manual; The C Programming Language

220px-Dennis_Ritchie_2011

2. Uncle Bob

Với hơn 35 năm tuổi nghề, ông được giới Software Engineer gọi bằng cái tên thân thương là “Chú Bob”. Ông là một trong những tác giả của Agile Manifestor. Với lối viết vui nhộn, hài hước, ông viết về Testing, Software Design, Design Pattern rất sâu sắc vào dễ hiểu. Hai cuốn sách Clean Code và Agile Software Development là sách gối đầu của nhiều thế hệ developer.

Sách đã xuất bản: Clean Code: A Handbook of Agile Software Craftsmanship;, The Clean Coder: A Code of Conduct for Professional Programmers; Agile Software Development, Principles, Patterns, and Practices; …

Robert_Cecil_Martin

3. Martin Fowler

Ông là một lập trình viên, kiêm tác giả và diễn giả. Ông cũng là một trong những người “có cổ phần” trong Agile Manifestor. Những bài viết blog của ông về Agile, Refactoring, Inversion of Control, Continuous Integration được đánh giá là “tài liệu tham khảo kinh điển”.

Những sách ông đã xuất bản cũng gây ra tiếng vang lớn trong giới Software Engineer. Cuốn Refactoring giúp mọi người nhận ra tầm quan trọng của việc refactor code. Bản thân mình từng viết 1 bài tổng quát về NoSQL nhờ đọc qua cuốn NoSQL Distilled của ông.

Sách đã xuất bản: Refactoring: Improving the Design of Existing Code; Patterns of Enterprise Application Architecture; NoSQL Distilled; …

Martin_Fowler

4. Joel on Software

Mình đã từng giới thiệu về ông ở bài trước “Các blog IT đáng đọc“. Ông nổi tiếng cũng nhờ các bài viết trên blog của mình. Mỗi bài viết đều được chăm chút kĩ lưỡng, khá hài hước, sâu sắc và bổ ích. Ông cũng là những người đầu tiên đưa ra lời khuyên: “Lập trình viên nên luyện kĩ năng viết lách (writing) song song với kĩ năng viết code (coding)“.

Sách đã xuất bản: User Interface Design for Programmers; Joel on Software; More Joel on Software; Smart and Gets Things Done; …

Joel_Spolsky_2014-06-18

5. David Hansson

Anh (Sinh năm 79, vẫn còn trẻ) là cha đẻ của Ruby on Rail – một framework từng gây bao nhiêu sóng gió trong cộng đồng developer. Các framework ra đời sau như ASP.NET MVC cũng chịu ảnh hưởng từ RoR. Sau khi sáng lập công ty 37signals, anh mở thêm blog signal VS noise, nơi chia sẻ kinh nghiệm về UI/UX và lập trình Ruby.

Mình từng đọc hai cuốn do anh viết: Getting Real, Rework, … Getting Real (Ebook được 37signals phát miễn phí) không phải sách về lập trình, mà là sách về “cách làm một phần mềm tốt, được nhiều người dùng”. Cuốn Rework là tổng hợp những kinh nghiệm, kiến thức khi bạn muốn khởi nghiệp với ngành IT. Cả 2 cuốn đều hay, các bạn nên tìm đọc.

Sách đã xuất bản: Agile Web Development with Rails; Getting Real; Rework; Remote: Office not Required; …

220px-David_Heinemeier_Hansson

Bạn nào muốn đóng góp thêm về các “Cây đa cây đề” trong ngành mình thì cứ thoải mái đóng góp trong phần comment nhé.

7 thoughts on “Chuyện về các cây đa cây đề trong làng Software Engineering”

Leave a comment