Hiện nay đang có một trào lưu cho trẻ em học lập trình từ nhỏ. Hòa chung với không khí đổi mới của cuộc cách mạng 4.0, báo chí, truyền hình rồi các trang mạng rầm rộ đưa tin, nêu ra những lợi ích cho trẻ em khi học lập trình. Cũng có những ý kiến phản đối việc này, vì họ cho rằng việc lập trình khá là phức tạp với các dòng lệnh sẽ gây khó khăn, gượng ép và nhàm chán cho trẻ em, đặc biệt khi trẻ còn quá nhỏ, mới chỉ tầm 6-7 tuổi. Điều này có thể phản tác dụng với đầu óc còn non nớt của trẻ. Tuy nhiên những ý kiến phản đối thì vô cùng ít ỏi và chìm nghỉm trong vô vàn lời quảng cáo về những lợi ích mang lại. Trong bài viết này, mình sẽ phân tích lợi hại của việc cho trẻ học lập trình trên quan điểm cá nhân.
Liệu lập trình sớm liệu có tăng khả năng tư duy?
Nếu bạn lướt một hồi trên mạng Internet, bạn sẽ không khó để bắt gặp nhiều bài viết nói về ích lợi của việc cho trẻ em học lập trình từ sớm. Rất nhiều trong số các bài viết đến từ các trung tâm dạy lập trình cho trẻ em. Lợi ích đầu tiên được nói đến chính là lập trình giúp trẻ rèn luyện tư duy, kích thích phát huy trí tưởng tượng, rèn luyện khả năng sáng tạo, giải quyết vấn đề. Độ tuổi khuyến khích trẻ học lập trình là từ 6 đến 13 tuổi. Không biết có nghiên cứu khoa học nào ở đây không nhưng mình thì thấy không ổn. Trước tiên việc ngồi máy tính từ sớm sẽ ảnh hưởng tới sức khỏe nhất là về mắt. Với việc học tập trên lớp còn đang vô cùng bận rộn và có phần quá tải, việc ngồi trước máy tính chỉ làm tăng thêm tỉ lệ đeo kính của trẻ nhỏ. Đó là chưa kể đến thời lượng sử dụng điện thoại, máy tính bảng, nếu dành thêm thời gian ngồi máy tính thì thời gian ngồi lỳ một chỗ là rất lớn.
Mình nghĩ vào độ tuổi này hãy cho các em hòa mình vào thiên nhiên để được vui chơi, và khám phá thế giới, điều này giúp các em năng động và khỏe mạnh hơn. Thực tế có rất nhiều trò chơi ngoài trời cũng giúp rèn luyện tư duy hay phát huy trí tưởng tượng. Đố vui, trò chơi dân gian, hay đuổi bắt, các trò chơi tập thể đều rất tốt cho não bộ và sức khỏe của trẻ. Có lẽ việc học lập trình sẽ giúp rèn luyện tư duy, nhưng cái đánh đổi lại còn lớn hơn nhiều. Cá nhân mình thì thấy không đáng.
Đợt trước mình có xem ti vi, thấy có người nói 3 tuổi có thể lập trình. Thật không thể tin nổi. Thì ra họ có một món đồ chơi, đó là một con sâu lắp ghép, với mỗi đốt có một chức năng riêng. Có đôt thì phát tiếng kêu, đốt thì rẽ trái, đốt thì rẽ phải, có đốt lại phát sáng. Các bé sẽ lắp ghép theo các thứ tự khác nhau thì con sâu sẽ thực hiện tuần tự các bước theo những cách khác nhau giống như việc sắp xếp các khối lệnh trong lập trình. Really? Cái đó cũng được gọi là dạy trẻ em lập trình? Mình thì thấy không khác gì xếp hình LEGO cả.
Việc dạy lập trình ở các trung tâm
Mình cũng có tìm hiểu một số trung tâm dạy lập trình cho trẻ em, và mình cũng là một lập trình viên nên không khó để biết họ đang dạy lập trình cho trẻ em thế nào. Hiểu đơn giản, lập trình là việc gõ những dòng lệnh, hoặc kết hợp những dòng lệnh để điều khiển hay thực thi một cách tự động các thao tác trên máy tính. Đó là việc những người như mình đang làm, nhưng với trẻ em, viết những dòng lệnh đó thực sự là một ác mộng, với một độ tuổi quá bé là bất khả thi. Ngay cả lứa tuổi teen cũng vậy, hãy thử hỏi những người bạn không phải học chuyên ngành công nghệ thông tin, mà hồi học phổ thông cũng từng phải học 1 ngôn ngữ lập trình là Pascal xem họ cảm thấy thế nào.
Tất nhiên các trung tâm không làm như vậy, họ có những công cụ lập trình dành cho trẻ em, được quảng cáo là chỉ việc kéo thả, lắp ghép cái khối lệnh có sẵn, là có thể lập trình được. Các công cụ lập trình cho trẻ em có thể kể đến như Scratch, Tynker hay là Code Monkey. Nếu không phải trong nghề thì hơi khó tưởng tượng, bạn có thể tưởng tượng nó giống xếp các khối hình Lego lại với nhau là có thể lập trình xong một chương trình đơn giản. Mình thì nghĩ, hãy để trẻ em chơi xếp hình Lego hơn là lắp ghép cái khối lệnh trên máy tính, cùng là rèn luyện tư duy nhưng sẽ vui hơn, trẻ sẽ có sự kết nối với cha mẹ tốt hơn và còn đỡ hại mắt. Trên thực tế, việc sắp xếp các khối lệnh còn cách rất xa so với việc lập trình thực tế, cha mẹ có thể nghĩ rằng con mình là thần đồng, hay thực sự tài giỏi, với mình thì mình không thấy như vậy.
Một lợi ích khác cũng được nói đến, lập trình được dự báo là môn học nền tảng, khi trẻ em cần hiểu việc tạo ra phần mềm thế nào, điều này giúp ích rất lớn cho việc đón đầu cuộc cách mạng công nghiệp lần thứ tư. Thậm chí dự báo đây sẽ còn là kĩ năng bắt buộc trong tương lai. Mình chỉ thấy nực cười vì có vẻ con người thích dự đoán tương lai bằng cách dựa vào hiện tại. Hiện tại ngành công nghệ đang hot, nhu cầu nhiều, nhưng ai dám chắc tương lại còn hot nữa, hãy nhớ lại ngành kinh tế, ngân hàng cũng một thời rất hot, rất nhiều bạn theo học, nhưng hiện tại thì đã hạ nhiệt khi cung đã vượt cầu với số lượng cử nhân kinh tế rất nhiều. Hãy nghĩ đến một ngày có rất nhiều người học lập trình thì mình nghĩ nó cũng sẽ giống ngành kinh tế, ngân hàng vậy.
Chưa hết, có những ý kiến cho rằng đã đến lúc phụ huynh cần phải coi việc cho các con học công nghệ cũng cần thiết như học một ngôn ngữ cơ bản khác (Tiếng Anh, Tiếng Trung Quốc, Tiếng Hàn, .v.v.). Có lẽ những người này đang đánh đồng việc sử dụng thành thạo công nghệ với việc lập trình. Thực tế đây là hai việc hoàn toàn khác nhau. Lập trình là việc tạo ra những phần mềm, còn kĩ năng công nghệ trong thời đại số là việc sử dụng những phần mềm đó. Ví dụ như việc lập trình có thể tạo ra phần mềm Word, kĩ năng công nghệ là nói đến việc sử dụng Word thành thạo ra sao. Một nhà văn học cách sử dụng thành thạo phần mềm Word để giúp ích cho việc viết lách của mình khác hoàn toàn với việc anh ta đi học lập trình. Việc học lập trình chẳng giúp ích gì cho nghề viết văn cả.
Hay một người kỹ sư nông nghiệp trồng cây trong nhà kính, cái anh ta cần quan tâm là hiểu biết về IoT, ứng dụng công nghệ về cảm biến để lấy dữ liệu về cây cối, kết hợp với phần mềm quản lý để có thể dễ dàng hơn trong việc quản lý cây trồng. Có thể thấy, kĩ năng lập trình không đóng góp gì nhiều ở đây cả, cái hầu hết mọi người cần học trong thời đại công nghệ là cách sử dụng công nghệ, không phải là học lập trình.
Lập trình dưới góc nhìn nghề nghiệp
Nói rộng ra trên thế giới cũng đang có trào lưu như vậy, khuyến khích mọi người hãy học lập trình. Rất nhiều lời quảng cáo được đưa ra, thế giới đang cần rất nhiều lập trình viên, lập trình là cánh cửa mở ra tương lai tươi sáng, hãy dạy lập trình cho con bạn từ bé, con bạn sẽ có thu nhập vô cùng hấp dẫn trong tương lai. Mình thì thấy đây đơn giản chỉ là những lời quảng cáo sáo rỗng. Trên thực tế, hiện tại rất nhiều phần mềm và chương trình tiện ích mà mọi người dùng sau nhiều năm phát triển cũng đang đạt đến độ hoàn thiện, và không hẳn cần cập nhật thêm quá nhiều. Đồng thời các công cụ lập trình cũng ngày càng phát triển giúp cho năng suất của từng cá nhân liên tục tăng lên gấp nhiều lần qua các năm. Do vậy thực tế thế giới cũng không hoàn toàn cần quá nhiều nhân lực như vậy mà sẽ có xu hướng tập trung vào số ít nhân lực trình độ cao.
Một điều nữa đó là nếu ai cũng học và làm tốt việc lập trình, thì nghề lập trình sẽ không còn nữa, nó sẽ trở thành 1 kĩ năng bắt buộc như tin học văn phòng word, excel, ai cũng cần biết để có được một công việc. Ví dụ vào những năm 2000, một người có khả năng đánh máy thành thạo đã là rất tốt, nhưng đến thời điểm này, không chỉ là kĩ năng đánh máy, thành thạo các kĩ năng của word, biết các câu lệnh cơ bản để xử lý excel, làm silde trình chiếu đều là những kĩ năng cơ bản cần có để làm việc. Tuy nhiên viễn cảnh mà ai ai cũng có thể lập trình xem ra cũng khó xảy ra, ít nhất là mình dự đoán vậy, cũng có thể sai, ai mà đoán được tương lai ra sao chứ.
Tuy nhiên có một điều gần như chắc chắn sẽ xảy ra đó là quy luật cung cầu trong kinh tế học. Hiện nay nhu cầu của thị trường với nghề lập trình là rất lớn. Để có được nhân sự chất lượng, nhiều công ty liên tục tuyển những lập trình viên có kinh nghiệm từ các công ty khác về với mức lương cao hơn. Việc này dẫn đến mức lương của lập trình viên tăng nhanh khi nhảy việc, điều này tạo nên làn sóng chuyển việc liên tục trong giới lập trình viên. Mình không bình luận về việc nhảy việc ở đây, điều mình muốn nói là khi nhu cầu lớn hơn cung, thì mức lương sẽ tăng cao. Nhưng nếu có nhiều người học lập trình thì sẽ góp phần tăng nguồn cung và làm hạ nhiệt cho phía cầu, khi có quá nhiều lập trình viên thì sẽ tạo sự cạnh tranh và mức lương sẽ giảm xuống. Các doanh nghiệp sẽ được hưởng lợi từ điều nay.
Vậy suy cho cùng khi khuyến khích trẻ em học lập trình, những ai sẽ được hưởng lợi. Đầu tiên là trường học và những nơi dạy về công nghệ thông tin. Những người làm nghề dạy lập trình đương nhiên sẽ khuyến khích điều này. Sau đó chính là những doanh nghiệp hoạt động trong lĩnh vực công nghệ thông tin, số lượng lập trình viên càng nhiều, thì doanh nghiệp càng có lợi, khi cung lớn hơn cầu thì họ sẽ dễ dàng trong việc tuyển dụng và chi phí nhân công sẽ giảm.
Kết luận
Với hàng loạt lý do kể trên, và đứng trên quan điểm của một người cũng là lập trình viên, mình không có hứng thú với việc cho con em đi học lập trình sớm như vậy, và với con mình thì mình cũng không khuyến khích, ít nhất là khi con còn quá nhỏ. Mình vẫn nghĩ rằng hiểu biết công nghệ là điều tốt, đó nhất định là một kĩ năng cần thiết, tuy nhiên mọi người cần nhìn nhận một cách tỉnh táo để có thể có những lựa chọn đúng đắn cho con em mình hơn là chạy theo trào lưu và những lời quảng cáo của hàng loạt trung tâm đang mọc lên như nấm.
Qua bài viết này, mình đã chia sẻ những mặt trái về việc cho cho trẻ em học lập trình, tuy nhiên không thể phủ nhận việc trẻ em học lập trình cũng có những điểm tốt. Nếu con bạn thực sự có năng khiếu và hứng thú với lập trình, hãy cho con thỏa đam mê nhưng hãy coi nó như một hoạt động vui chơi hơn là một kỹ năng vào đời. Hy vọng bài viết của mình giúp được gì đó cho các bậc cha mẹ đang có con em trong độ tuổi ăn học. Dù sao đi nữa, tất cả cũng là vì tương lai con em chúng ta.