Trong chương một của "Lập trình viên thực dụng" , mục tiêu học tập đầu tiên là:
Học ít nhất một ngôn ngữ mới mỗi năm. Các ngôn ngữ khác nhau giải quyết cùng một vấn đề theo những cách khác nhau. Bằng cách học một số cách tiếp cận khác nhau, bạn có thể giúp mở rộng suy nghĩ của mình và tránh bị getter tấn công. [...]
Để đạt được điều này trong sự nghiệp, danh sách các ngôn ngữ có thể sẽ khá dài (đặc biệt nếu bạn không muốn "tiến bộ" trong quản lý). Rõ ràng việc giáo dục một lập trình viên (hoặc bất kỳ hình thức nào) sẽ giúp bạn bắt đầu với cốt lõi của các ngôn ngữ có ích về mặt thương mại (danh sách thông thường từ việc đăng công việc: C, C ++, Ruby, Python, JavaScript, C #, Java, VB, .. .). Ngoài ra, một chương trình học chính thức hoặc không chính thức có thể có các phương pháp tiếp cận chức năng (thông qua một cái gì đó như Haskell, LISP hoặc một ngôn ngữ có nguồn gốc ML)
Nhưng một khi một tập hợp con hợp lý của danh sách đó được học - tiếp theo là gì và tại sao ?