Trong bài “what should we teach new software Developers? why?“, cha đẻ của C++ viết:
Also, many students fail to connect what they learn in one class to what they learn in another. Thus, we often see students with high grades in algorithms, data structures, and software engineering who nevertheless hack solutions in an operating systems class with total dis- regard for data structures, algorithms, and the structure of the software. The result is a poorly performing unmain- tainable mess.
Có lẽ software engineering là lớp khó dạy và khó học nhất trong tất cả các lớp của KHMT. Mười mấy năm trước, tôi lấy 3 lớp SE, được A tất cả, mà vẫn không biết gì về SE. Lý do chính là trong khuôn khổ của một học kỳ, làm thế nào có thể truyền tải được việc xây dựng một hệ thống phần mềm lớn mà trên thực tế đa phần cần nhiều năm để hiện thực hóa. Trước hết, người thầy phải có kinh nghiệm này, nhưng những người có kinh nghiệm xây dựng các hệ thống phần mềm lớn thì họ sẽ đi … xây dựng các hệ thống phần mềm lớn chứ đâu có đi dạy! Các sinh viên thông minh và chịu khó mày mò, chơi và viết mã nguồn mở chẳng hạn, sẽ có nhiều kinh nghiệm SE hơn thầy!
Bài này Strousrup viết rất tốt.

2 Comments
Ben truong em, RMIT, đều mời các chuyên gia SE nhiều năm kinh nghiệm đứng lớp. Em thấy có 2 kiểu chính là đứng 1 số tiết cực kỳ quan trọng và đòi hỏi kinh nghiệm industry hoặc mời giảng lecture cho cả học kỳ. Em thấy như vậy cũng khá hiệu quả, vì kết hợp nhiều giữa academic và industry. Không phải cái academic nào cũng tốt mà không hẳn là chỉ dạy industry là tốt (vì không đủ trừu tựơng). Nhưng bù lại mấy lớp đó toàn giờ tối, 5h30 – 7h30 hoặc 7h30 – 9h30 Không biết ở Mỹ thì có hay thường xuyên để những chuyên viên bên industry dạy không và cách như thế nào?
@Khang Vo: nhiều trường ở Mỹ dĩ nhiên là có các chuyên viên từ industry đến dạy, nhưng theo tôi quan sát thì không phải là phổ biến lắm.