Không ai có thể học được tất cả mọi thứ cùng một lúc, nhưng cũng không có nguyên tắc hay quy tắc nào ngăn cản chúng ta học một chút trong ngày hôm nay, một chút những ngày sau đó, học những thứ mà ta còn chẳng từng hay biết, hoặc học đến mức mà chúng ta muốn dừng lại và chuyển sang học cái gì đó khác. Nếu muốn học một chương trình nhất định, chúng ta không cần phải đợi đến lịch trình đã đặt sẵn, cũng không cần học những thứ mà ta cảm thấy chưa sẵn sàng, không thú vị, đáng sợ, hay không cần thiết. Người học tạo chương trình học cho riêng mình.

— Hardard S. Becker, A School Is a Lousy Place to Learn Anything In

Bối cảnh

Sau khi phát triển đủ năng lực và kỹ năng để trở nên thông thạo trong Ngôn Ngữ Đầu Tiên, bạn đang bắt đầu để ý xung quanh và nhận ra số lượng thông tin đáng kinh ngạc mà bạn vẫn cần phải học.

Vấn đề

Số sách mà bạn cần đọc tăng nhanh hơn mức bạn có thể đọc được.

Giải pháp

Duy trì Danh Sách Đọc để theo dõi sách bạn định đọc và nhớ những cuốn sách đã đọc.

Theo tinh thần mẫu Chia Sẻ Những Gì Đã Học, hãy cân nhắc việc lưu trữ danh sách của bạn trong không gian công cộng. Điều này sẽ cho phép người khác được hưởng lợi từ những thứ bạn chia sẻ. Chúng tôi sử dụng wiki tại http://bookshelved.org (bắt đầu bởi Laurent Bossavit năm 2002), nhưng bất kỳ danh sách công khai nào cũng có thể có ích. Một cách lý tưởng là danh sách của bạn cho phép bạn sắp xếp các cuốn sách, đồng thời phân biệt những cuốn sách mà bạn đã đọc và thời điểm đọc chúng.

Mẫu này không chỉ quản lý các sách mà bạn định đọc. Đây cũng là một cách để phản ánh thói quen đọc trong quá khứ nữa. Với dữ liệu kéo dài trong nhiều năm, bạn có thể bắt đầu thấy các mẫu, xu hướng và lỗ hổng trong những gì bạn chọn học. Điều này có thể giúp bạn đưa ra quyết định về những gì cần đọc tiếp theo tốt hơn. Nếu bạn công khai những thông tin này, thì khả năng người khác sẽ đưa ra các gợi ý cho việc đọc trong tương lai. Nó thực sự có thể giúp bạn khám phá cả kho kiến thức tiềm tàng và đáng quý.

Một trong những điều có giá trị nhất mà bạn có thể thu nhận được từ bất kỳ cuốn sách nào là danh sách các cuốn sách khác đáng để đọc. Theo thời gian, bạn sẽ khám phá ra rằng, có một số đầu sách nhất định liên tục xuất hiện trong mục tham khảo, và bạn nên di chuyển những cuốn sách đó lên đầu danh sách đọc của mình. Những cuốn sách khác sẽ được xếp lại phía sau. Vì danh sách đọc của bạn thực ra là hàng đợi ưu tiên, cuối cùng bạn sẽ nhận ra rằng một số sách nhất định đã tụt trong bảng xếp hạng đến mức có thể bạn sẽ không bao giờ đọc chúng. Không sao cả. Vì mục đích của mô hình này là cung cấp cho bạn một cách để sắp xếp ưu tiên và lọc kiến thức trong biển rộng kiến thức bao la.

Khó khăn chính với việc thực hiện mẫu này là bạn cần sự hiểu biết sâu sắc về một chủ đề để tìm ra cuốn sách nào cần đọc và thứ tự của nó. Một cách để giải quyết nghịch lý này là bước đầu chọn các cuốn sách cung cấp cho bạn một sự hiểu biết rộng rãi về chủ đề đang được đề cập đến, sau đó chọn những cuốn sách hướng dẫn sâu vào các khía cạnh cụ thể mà bạn quan tâm. Cũng có một cách khác để giải quyết đó là phụ thuộc vào Người Cùng Chí Hướng và cố vấn của bạn. Những cố vấn có thể khuyên bạn nên đọc cuốn sách nào, trong khi thảo luận với các thợ học việc khác cũng có thể giúp bạn tìm ra thứ tự đọc. Bạn cũng có thể tận dụng các danh sách đọc công khai do những người cùng thực hiện khuôn mẫu này cung cấp.

Một khó khăn khác là tìm ra điểm để bắt đầu. Bạn có thể tìm thấy một danh sách các cuốn sách xuất sắc để củng cố Danh Sách Đọc của bạn trong Chương 35 của cuốn Code Complete, Microsoft Press, và trong mục tham khảo của cuốn The Pragmatic Programmer. Bạn cũng có thể xem mục tham khảo của cuốn sách này để biết được một số cuốn sách đã truyền cảm hứng cho chúng tôi.

Mẫu này chủ yếu nhờ vào ý tưởng của Ravi Mohan về Chuỗi Sách1và mẫu Nghiên Cứu Tuần Tự trong ngôn ngữ mẫu của Joshua Kerievsky dành cho các nhóm học.2 Trong khi Chuỗi Sách yêu cầu mọi người nêu ra gợi ý về các cuốn sách nên đọc về một chủ đề mới, mẫu này là còn hơn cả một luồng liên tục các cuốn sách bạn yêu thích. Mẫu này khác so với mẫu Nghiên Cứu Tuần Tự vì nó không tập trung vào việc đọc sách tuần tự theo thời gian để hiểu được cách các cuốn sách kết nối với nhau. Trong mẫu này, cuốn sách bạn nên đọc tiếp theo là cuốn sách giúp bạn có thể tiến thêm một bước trong cuộc hành trình.

Điều quan trọng cần nhớ là Danh Sách Đọc của bạn. Thật tuyệt khi được nghe góp ý của người khác, nhưng chỉ bạn mới thực sự biết được hoàn cảnh hiện tại của bạn. Vì vậy, bạn nên là người duy nhất đưa ra quyết định về cái gì bạn học tiếp theo. Tuy nhiên, điều quan trọng là phải đọc đúng sách vào đúng thời điểm. Làm như vậy là hiệu quả hơn nhiều so với khuấy trộn cả loạt cuốn sách mà bạn không có đủ kinh nghiệm hoặc chiều sâu kiến ​​thức để thực sự hiểu. Nhiều người đọc Design Patterns quá sớm trong chương trình học của họ, trong khi một cuốn sách như Refactoring lại là một lối giới thiệu nhẹ nhàng hơn cho các mẫu. Tìm Cố Vấn và xin họ khuyên bạn nên đọc cuốn nào tiếp theo. Thời gian thực sự có một tác động mạnh mẽ đến trải nghiệm của bạn đối với mỗi cuốn sách.

Hành động

Tạo một tập tin văn bản, tốt hơn là nên đặt nó dưới hệ quản lý phiên bản (source control). Nhập tất cả sách mà bạn hiện đang đọc. Đây là Danh Sách Đọc của bạn, và là điều đơn giản nhất có thể để thực hiện mẫu này. Bây giờ, tất cả những gì bạn phải làm là giữ cho tập tin văn bản này được cập nhập thường xuyên.

Đăng ký nhận bộ tài liệu học Java trên 2 trang giấy tại đây

Xem thêm: Java Coding Bootcamp là gì? Tổng quan về Java Coding Bootcamp


Hãy tham gia nhóm Học lập trình để thảo luận thêm về các vấn đề cùng quan tâm.