Để trở thành lập trình viên giỏi

Để trở thành lập trình viên giỏi

Chuyên gia công nghệ người Mỹ Jeff Atwood, trong một bài viết trên blog cá nhân của mình đã phân tích hiệu quả của phương pháp dạy nghề vốn tưởng như chỉ áp dụng cho các công nhân lao động chân tay.

Theo ông, học lý thuyết và thực hành luôn mang lại hiệu quả hai chiều khi giúp lý thuyết mới nhanh chóng được kiểm nghiệp ở thực tế và mang lại cảm hứng khám phá cho người học.

Giáo dục truyền thống mất hàng năm trời để cung cấp kiến thức lý thuyết cho một người nhưng không đảm bảo người đó sẽ ngay lập tức làm được công việc đó mà khi đi làm phải làm quen từ đầu với các máy móc, thiết bị, kỹ năng để kiểm chứng, so sánh và điều chỉnh so với những gì từng được học.

Trong khi đó, việc dạy nghề lại áp dụng phương pháp vừa học vừa làm rất nhiều năm nay lại cho thấy hiệu quả, tính khoa học hơn nhiều.

Lấy ví dụ công ty điện lực của Mỹ International Brotherhood of Electrical Workers (I.B.E.W.) đào tạo thành công hàng nghìn thợ điện mỗi năm bằng phương pháp này.

Các buổi tối trong tuần, công nhân – học viên của họ tham gia các buổi học lý thuyết về điện và buổi ngày được làm việc trực tiếp trên công trường xây dựng để nghiệm thu, áp dụng lý thuyết vào thực hành. Để có thể học hỏi và làm việc trên công trường, những người thợ mới này sẽ được một người có kinh nghiệm hướng dẫn, làm mẫu và nhận xét về mức độ “hiểu bài” của người này. Quá trình học hỏi bao gồm 4 bước: nghe – xem – thực hành – nhận góp ý.

Atwood cho rằng mọi công việc nên được giáo dục, đào tạo theo cách này thay cho việc dạy lý thuyết trước, thực hành để sau. Quy trình nêu trên với nghề phần mềm có thể được thể hiện như sau: mentor (người hướng dẫn) lựa chọn một nhiệm vụ phù hợp với trình độ học viên; trao đổi, thảo luận về cách thực hiện; làm mẫu, chẳng hạn như viết một code minh họa để người học dễ hình dùng và để học viên thử tự làm. Cuối cùng, mentor sẽ nhận xét về sự thể hiện của học viên, bao gồm những ưu điểm, khuyết điểm và gợi ý để tiến bộ hơn.

Chìa khóa của bất kỳ hình thức đào tạo nào cũng luôn là bước “thực hành”. Phần lớn các khóa đào tạo lập trình viên chỉ cung cấp cho người học các bước “nghe” và “xem”, nhưng các bước “thực hành” và “nhận góp ý” mới thực sự là phần truyền cảm hứng giúp bạn tiến bộ và phát triển các kỹ năng của mình. Học nghề có một điểm thu hút là kết hợp được vận dụng lý thuyết vào những trải nghiệm thực tế với nhau.

Việc kết hợp này vốn không khó. Thay vì để các nội dung dạy học liên kết lỏng lẻo với nhau, một hình thức giáo dục mới như việc dạy nghề nêu trên nên được áp dụng với nghề lập trình. Sự kết hợp của việc học lý thuyết buổi tối, thực hành gõ code ban ngày thực sự hấp dẫn. Bản thân Jeff Atwood cũng chứng kiến nhiều thực tập sinh tài năng trở thành các lập trình viên giỏi nhờ duy trì ngày làm, đêm vẫn tham gia các khóa học về máy tính để bổ sung kiến thức lý thuyết.

Thu Ngân (theo Coding Horror)