Hôm nay mình chia sẻ một cách học lập trình để thất bại.
Một điều rất kỳ lạ là các bạn sinh viên rất thích học lập trình thất bại. Đạt đã nhận được rất nhiều câu hỏi ở dạng “anh ơi, chỉ em cách học lập trình thất bại”. Các câu hỏi đó trông như thế này
- Anh có sách có bài tập C/C++/Java/XYZ và lời giải cho em xin với?
- Xin bài tập của ngôn ngữ XYZ
Đạt không nói cách học này sai, nhưng cách học này chỉ phù hợp với học sinh tiểu học thôi. Học lập trình không phải để giải bài tập. Học lập trình để giải quyết vấn đề thực tế. Và một vấn đề thực tế thì không có lời giài như một bài toán
1 + 1 = ?
Nên nếu các bạn cứ chăm chăm tìm thêm bài tập để giải thì các bạn thất bại rồi. Đạt cũng từng giải bài tập khi mới học lập trình để lấy kiến thức cơ bản. Nhưng Đạt chưa bao giờ thấy việc tìm bài tập để giải là một giải pháp hay để nâng cao kỹ năng lập trình. Khi các bạn học cơ bản, số lượng bài tập các bạn cần quan tâm chỉ là để làm quen với các câu lệnh thôi. Thế nên các bài tập trên trường là đủ dùng.
Tìm thêm bài tập rồi giải nhiều bài tập cho đến khi nhuần nhuyễn là một thất bại của giáo dục. Cái các bạn trở thành sau khi giải nhiều bài tập không phải là một lập trình viên giỏi, mà các bạn trở thành thợ giải bài tập.
Đạt không phủ nhận việc làm thật nhiều đề toán, lý, hóa đã giúp Đạt đậu ĐH. Nhưng Đạt phủ nhận việc làm nhiều “bài tập” giúp mình kiếm được việc làm. Giải quyết các vấn đề mình gặp trong thực tế mang lại nhiều lợi ích hơn.
Hãy tập trung vào việc giải quyết những vấn đề mình gặp phải trong thực tế, giải quyết nó. Có rất nhiều vấn đề các bạn có thể làm được thông qua lập trình.
Ví dụ nhé
Ở nhà bố mẹ bạn mở quán ăn, có nhiều món ăn thay đổi giá tiền liên tục. Các bạn hãy viết một chương trình để in ra thực đơn, chọn thực đơn in ra giá tiền.
Nếu các bạn giỏi hơn, có thể làm nhiều thứ phức tạp hơn:
Viết chương trình nén và giải nén sử dụng thuật toán XYZ
Viết chương trình tìm đường đi ngắn nhất từ nhà mình tới trường
Viết lại một trò chơi mô phỏng một game cổ điển, caro, cờ tướng, …
Viết chương trình để chat nội bộ
Viết chương trình giống Teamviewer
Bạn thấy xyz hay, thử bắt chước làm theo. Nếu bạn làm như vậy bạn sẽ giỏi.
Bổ sung thêm một bài viết trên vinacode.net