15 Apr, 2021
Dạy lập trình cho trẻ em
Tuần trước, một người bạn cho tôi xem một bài trên báo nói về trẻ em, quãng mười tuổi, đang viết một đoạn mã hại để chọc ngoáy vào tài khoản của một trạm trò chơi video để ăn cắp mật khẩu và “tiền ảo” để cho chúng có thể chơi trò chơi máy tính trực tuyến mà không phải trả tiền. Anh ta nói: “Tôi không thể tin được trẻ em có thể làm cái gì đó như điều đó.”
Tôi hỏi: “Anh ngạc nhiên bởi vì chúng có thể viết mã hay bởi vì chúng chọc ngoáy vào hệ thống máy tính?”
Anh ta nói: “Cả hai, tôi nghĩ trẻ con phải được giáo dục về viết mã “đúng và sai.”
Tôi nói với anh ta: “Nếu các trường vẫn dạy trẻ em viết mã mà không dạy chúng về trách nhiệm thì vấn đề này sẽ tiếp tục.” Theo bài báo này, các chuyên gia an ninh thấy rằng phần mềm hại được viết trong Visual Basic – ngôn ngữ được dạy ở trường phổ thông. Những mã hại này chứa nhiều lỗi mà hacker chuyên nghiệp không bao giờ phạm phải. Một số mã thậm chí còn phơi ra cả nguồn gốc như đánh cắp “mật khẩu” và “tiền ảo” rồi gửi lại theo địa chỉ email riêng của hacker. Đó là lí do tại sao người an ninh biết rằng hacker là kẻ nghiệp dư, phần lớn là trẻ em. Tất nhiên, những hacker có kinh nghiệm không bao giờ để thông tin này vào mã của họ. Nhiều trường hợp có móc nối tới trường tiểu học trẻ em ở Canada nơi bố mẹ chúng mới mua cho chúng iPads hay Laptops mùa giáng sinh vừa rồi. Trong những năm qua, Canada, Anh, và các nước Scandinavian là vài nước bắt đầu dạy trẻ em viết mã ở trường tiểu học.”
Bạn tôi nói: “Chúng ta cần dạy cho con trẻ rằng chúng không thể lên trực tuyến và chơi trò chơi mà không trả tiền. Thầy giáp phải dạy chúng về đạo đức khi họ dạy lập trình.”
Tôi hỏi anh ta: “Sao chúng ta vội vàng dạy cho con trẻ dùng công cụ mạnh thế trước khi chúng đủ trưởng thành? Anh có đưa cho đứa con mười tuổi khẩu súng thật và bảo nó đừng bắn không? Có những điều trẻ con nên học vào tuổi trẻ đó nhưng dứt khoát KHÔNG lập trình. Chúng có thể học điều đó về sau.”
Bạn tôi ngạc nhiên: “Nhưng chúng ta đang sống trong “Thời đại thông tin,” chúng ta phải dạy trẻ con về công nghệ như đọc và viết. Chúng phải biết lập trình máy tính nữa. Làm sao một giáo sư Khoa học máy tính như thầy lại bất đồng với cách nhìn này?”
Tôi giải thích: “Có thời điểm để học dùng máy tính; cũng có thời điểm để học về viết mã nhưng KHÔNG vào độ tuổi sớm này. Trẻ em cần xây dựng một nền tảng cơ sở mạnh như đọc, viết, đạo đức và trách nhiệm trước hết. Từ nền tảng vững chắc này, chúng có thể xây dựng khoa học, toán học và công nghệ trên đỉnh của nó khi chúng trưởng thành và vào trung học. Bằng việc phát triển tính cách đạo đức mạnh trước hết, chúng sẽ học về trách nhiệm với gia đình, xã hội, và đất nước. Trường tiểu học là chỗ xây dựng nền tảng cho tính cách đạo đức vì chúng có thể thu được tri thức kĩ thuật về sau. Không có những tính cách đạo đức này, tri thức có thể là hại nhiều hơn là tốt. Nhiều phụ huynh lo lắng rằng con cái họ có thể không cạnh tranh được trong công nghệ, cho nên họ mua máy tính, kết nối Internet, cho chúng tới trường để học lập trình mà không biết rằng không có nền tảng cơ sở về đạo đức, trách nhiệm và luân lí, con trẻ có thể nhiễm thói quen xấu và viết mã hại chỉ là một trong những cái xấu đó.”
Trường tiểu học là chỗ chúng ta dạy con trẻ về trung thực, về đạo làm con với bố mẹ, về trách nhiệm với gia đình của chúng, với xã hội, với đất nước của chúng. Trường tiểu học là nơi chúng học nói ra sự thực, về kính trọng và trung thực, và về tự giác. Trường tiểu học là nơi học về văn hoá, về di sản của chúng, về lịch sử, ngôn ngữ, về tổ tiên, những anh hùng thế hệ quá khứ. Có nhiều điều con trẻ phải học để cho chúng có thể xây dựng nền tảng vững chắc và trưởng thành người lớn có trách nhiệm. Chỉ với tính cách đạo đức vững vàng, chúng biết cách phân biệt điều phải với điều trái. Chỉ với tính cách đạo đức vững vàng, ngay cả khi chúng giữ vị trí nào đó, chúng vẫn có khả năng duy trì sự chính trực của chúng. Chỉ với tính cách đạo đức vững vàng, ngay cả khi chúng đối diện với khó khăn, chúng sẽ không từ bỏ. Chỉ với tính cách đạo đức vững vàng chúng sẽ không bị cám dỗ bởi việc kiếm lợi cá nhân và đánh mất sự kính trọng và tính chính trực của chúng.
Là thầy giáo, tôi chưa bao giờ lo nghĩ về liệu trẻ em có thể hay không thể học về công nghệ hay lập trình. Những điều này sẽ thay đổi vì chúng sẽ tới và đi. Tuy nhiên tôi lo nghĩ rằng bằng việc vội vàng dạy chúng cái gì đó quá nhanh, quá sớm hay vội vàng đi theo xu hướng xã hội nào đó nhưng quên mất giáo dục cho chúng về nền tảng cơ sở thì chúng ta đang làm mất đi mục đích giáo dục để phát triển công dân có trách nhiệm cho đất nước chúng ta.
—-English version—-
Teaching programming to young children
Last week, a friend showed me a newspaper article about young children, as young as ten years old, are writing malicious code to hack into accounts of video gaming sites to steal passwords and “virtual money” so they can play on line computer games without paying. He said: “I cannot believe that young children can do something like that.”
I asked: “Are you surprise because they can write code or because they hack into a computer system?”
He said: “Both, I think children must be educated on coding “rights and wrongs.”
I told him: “If schools are still teaching young children to write code without teaching them about responsibilities then this problem will continue. According to the newspaper article, Security specialists found that these malware were written in Visual Basic – the language that is taught in elementary school. These malicious codes contain many errors that professional hackers were never made. Some even expose the original source such as stealing “passwords” and “virtual money” then sends back to hackers’ own email addresses. That was why security people knew that hackers were amateurs, mostly young children. Of course, experienced hackers would never put this information in their code. Several cases were linked to elementary school children in Canada where their parents just brought them iPads or Laptops last Christmas. In past years, Canada, the UK, and Scandinavian countries were few countries that begun to teach children to write code in elementary school.”
My friend said: “We need to teach children that they cannot go online and play games without paying. Teachers must teach them about ethic when they teach programming.”
I asked him: “Why do we hurry to teach children to use such powerful tool before they are matured enough? Would you give a ten years old child a real gun and tell him not to shoot? There are things children should learn at that young age but definitely NOT programming. They can learn about it later.”
My friend was surprised: “But we are living in the “Information Age”, we must teach children about technology just like read and write. They must know computer programming too. How could a Computer Science professor like you disagree with this view?
I explained: “There is a time to learn to use a computer; there is also a time to learn about writing code but NOT at this early age. Young children need to build a strong basic foundation such as reading, writing, moral and responsibilities first. From this strong foundation, they can build science, math, and technology on top on it as they grow up and go to high school. By developing strong moral characters first, they will learn about responsibilities for their family, their society, and their country. Elementary school is the place to build the foundation for moral characters as they can acquire technical knowledge later. Without these moral characters, knowledge could be more harm than good. Many parents are worrying that their children may not be able to compete in technology, so they buy computers, connect to the Internet, send them to school to learn programming without knowing that without a basic foundation on moral, responsibilities and ethics, young children could get into bad habits and writing malicious code is only one of them.”
Elementary school is the place that we teach children about honesty, about being filial to parents, about being responsible to their family, to their society, to their country. Elementary school is where they learn to speak the truth, about honor and integrity, and to be self-conscious. Elementary school is where they learn about culture, about their heritage, their country, their history, their language, about their ancestors, their heroes from past generations. There are so many thing young children must learn so they can build a strong foundation and grow up to be responsible adults. Only with strong moral characters, they know how to distinguish rights from wrongs. Only with strong moral characters, even when they occupy certain position, they still are able to maintain their integrity. Only with strong moral characters, even when they face difficulties, they will not give up. Only with a strong moral characters they will not be lure by personal benefits gain and lose their honor and integrity.
As a teacher, I never worry about whether young people can or cannot learn about technology or programming. These things will change as they will come and go. However I do worry that by hurry to teach them something too fast, too soon or hurry to follow some social trends but forget to educate them on the basic foundation then we are losing our education goal to develop responsible citizens to our country.