Việc học khoa học máy tính tại Việt Nam. Phân nửa số học sinh lớp 11 có thể có khả năng đậu cả quá trình phỏng vấn của Google

Khoa học máy tính ở Việt Nam

16 tháng 3, 2013

Trong chuyến đi gần đây của tôi đến Việt Nam, tôi đã có cơ hội đến thăm một số trường học và xem khoa học máy tính được giảng dạy như thế nào.

Các lớp tin học bắt đầu từ lớp 2. Học sinh bắt đầu với những điều rất cơ bản – bao gồm cách sử dụng và bảo quản ổ đĩa mềm.

Hình 1: Học sinh lớp 2 học cách bào quản đĩa mềm.

Đến lớp 3, học sinh được học cách sử dụng Microsoft Windows. Việt Nam là nước hầu như sử dụng 100% Windows XP. Có lẽ tất cả đều từ một bản sê ri mà sao ra. Tuy nhiên, vì một bản Windows có giá bằng một tháng lương, điều này cũng dễ hiểu.

Hình 2: Đến lớp 3, học sinh được học cách sử dụng Microsoft Windows.

Cách gõ văn bản được dạy bằng Microsoft Word. Như với tất cả các phần mềm của họ, mọi thứ đều là tiếng Anh, và điều này làm tăng thêm khó khăn khi học tin học ở độ tuổi này.

Hình 3: Cách gõ văn bản được dạy bằng Microsoft Word.

Đến lớp 4 các em bắt đầu học lập trình Logo. Học sinh bắt đầu với chuỗi lệnh, sau đó tiến dần đến các vòng lặp.

Hình 4: Đến lớp 4 các em bắt đầu học lập trình Logo. Học sinh bắt đầu với chuỗi lệnh, sau đó tiến dần đến các vòng lặp.

Đến lớp 5 các em được học viết các lệnh chứa vòng lặp, trong đó cũng chứa các vòng lặp khác.

Hình 5: Đến lớp 5 các em học viết các lệnh chứa vòng lặp, trong đó cũng chứa các vòng lặp khác.

Nếu so sánh với Hoa Kỳ thì với kinh nghiệm đã đi vài chuyến thăm đến trường chuyên khoa học và công nghệ của San Francisco (Học viện Galileo), các học sinh lớp 11 và 12 ở Hoa Kỳ vẫn gặp khó khăn khi thao tác thẻ hình ảnh của HTML. Và các em cũng mơ hồ về các vòng lặp và điều kiện. Ở một số trường, ban giám hiệu còn cấm cho học sinh bài tập về nhà môn Khoa học Máy tính.

Có thể nói là tôi rất ấn tượng với chương trình KHMT dành cho học sinh tiểu học của Việt Nam. Tôi hỏi xem hiện tại họ đang gặp khó khăn ở đâu. Thật bất ngờ, câu trả lời là “phần mềm”. Phần mềm giáo dục thậm chí không tồn tại dưới dạng tiếng Việt, và ngay cả khi có tồn tại, thì cũng không có ngân sách để mua phần mềm cho học sinh. Vì vậy, phần còn lại của kỳ nghỉ của tôi đã được dành ra để viết phần mềm. Kết quả là Blockly Maze, một bộ hướng dẫn tự học giới thiệu các vòng lặp và điều kiện. Sau đó mọi thứ được ghi vào đĩa CD vì trường học không đủ khả năng cung cấp mạng Internet.

Hình 6: Blockly Maze, một bộ hướng dẫn tự học giới thiệu các vòng lặp và điều kiện.

Thầy dạy Tin rất hào hứng và hứa sẽ dạy Blockly vào ngày hôm sau. Nhưng có một vấn đề khác ảnh hưởng đến lớp học. Do thiếu kinh phí, trường không đủ tiền cho hai giáo viên dạy Tin, nên một nửa học sinh trong trường không được học môn Tin. Tôi hỏi lương của một giáo viên là bao nhiêu. Câu trả lời là 100 đô la mỗi tháng. Vì vậy, tôi đã đến một máy ATM và trả lương cho một giáo viên thứ hai cho năm học sau.

Hình 7: Giấy xin tiếp nhận tài trợ

Nếu học sinh lớp 5 ở Việt Nam đã học Tin học với trình độ ngang bằng với các bạn lớp 11 ở Mỹ, thì lớp 11 ở Việt Nam sẽ như thế nào? Đây là một bài tập lớp 11. Đưa ra một tệp dữ liệu mô tả một mê cung với các bức tường chéo, hãy đếm số lượng các khu vực được bao bọc và đo kích thước của một mê cung lớn nhất.

Hình 8: Bài tập tin lớp 11

Sau khi trở về Mỹ, tôi đã hỏi một kỹ sư cấp cao rằng anh ấy xếp hạng câu hỏi này như thế nào trong một cuộc phỏng vấn của Google. Không cần biết nguồn gốc của câu hỏi, anh ta đánh giá rằng đây sẽ nằm trong top ba. Cả lớp có 45 phút để thiết kế một giải pháp và triển khai nó trong Pascal. Hầu hết trong số họ đã hoàn thành, một số chỉ cần thêm năm phút nữa. Không nghi ngờ gì rằng một nửa số học sinh trong lớp 11 đó có thể vượt qua quá trình phỏng vấn của Google.

Tôi đã bước vào tiết Tin học với tâm thế sẵn sàng giúp đỡ họ. Nhưng thay vì nhà trường học hỏi kinh nghiệm của tôi, tôi lại học hỏi từ họ. Họ đã chỉ ra cách giáo dục khoa học máy tính nên được thực hiện như nào. Bắt đầu sớm với tất cả mọi học sinh, và dành cho những ai đam mê môn học này một cơ hội phát triển vô hạn.

Tuy nhiên, vẫn còn những hạn chế lớn trong hệ thống. Việc đưa khoa học máy tính vào hệ thống giáo dục Việt Nam là tương đối gần đây. Nó dường như đã xuất hiện đồng thời ở tất cả các cấp cách đây vài năm. Một hậu quả tạm thời của việc này là khi tôi đến thăm một trường đại học, tôi không ấn tượng chút nào với những gì sinh viên ở đó đang làm. Nhưng điều này sẽ thay đổi nhanh chóng khi sinh viên năm nhất mới nhập học khi đã có nhiều năm kinh nghiệm học môn Tin.

Ở Việt Nam thì việc đầu tư sớm cho Tin học hoàn toàn ngược lại ở Hoa Kỳ. Trường học, giáo viên, phụ huynh và học sinh háo hức theo cách mà tôi chưa từng thấy ở Mỹ. Chỉ mất chưa đầy mười phút để chứng kiến sự hưng phấn khi thầy dạy Tin sử dụng Blockly. Những học sinh đã vượt qua trò đó chỉ trong một lớp học, với hầu hết học sinh đều hoàn thành chín cấp độ đầu tiên. Và các em ấy còn muốn học nhiều cấp độ hơn nữa!

Hình 9: Ảnh lớp học Tin học

_____________________

Link Reddit: https://redd.it/1nsga1

_____________________

u/t05ter (99 points)

Nếu ông nghĩ quy trình phỏng vấn của Google chỉ đơn giản là trả lời mấy câu hỏi kỹ thuật về linked-list hay “nắp cống”, thì chà chắc sắp tới ông sẽ mệt đây…

>u/stichtom (8 points)

Ủa chứ họ hỏi gì?

>>u/Darthblaker7474 (37 points)

“Anh đã từng gõ ‘Google’ vào Google chưa?”

>>u/Hougaiidesu (21 points)

Đối với vị trí lập trình, họ hỏi những câu hỏi khá hóc búa. Thiết kế một máy trạng thái để làm được việc này việc kia. Giải quyết các biến thể của bài toán xếp ba lô. Làm thế nào bạn sẽ lật các bit X qua Y trong một tập hợp N bit (được lập chỉ mục theo byte). Các câu hỏi về cách bạn xử lý song song một lượng lớn dữ liệu khi cho hạn chế bộ nhớ, v.v. và họ sẽ ước tính bạn mất bao nhiêu thời gian để trả lời.

_____________________

u/guiguiguig (20 points)

Tôi không biết bài đăng có bao nhiêu phần trăm là sự thật, nhưng các bài học trong đó thì rất đúng: Luôn nên bắt đầu sớm.

Khoa học máy tính không khó. Phần toán học mới khó, nhưng do học sinh thì đã được rèn luyện qua các loại toán “nâng cao” rồi nên cũng không thành vấn đề. Tuy nhiên khoa học máy tính rất rộng. Có rất nhiều thứ để dạy, và chúng là một bộ kỹ năng rất hữu ích cần phải có.

Đúng vậy, với tư cách là một lập trình viên thì tôi hay nói kiểu “mọi người đều nên biết lập trình”. Và khác với nhiều môn học khác, thường ngày mọi người cũng sử dụng máy tính rất nhiều. Tôi nghĩ mọi loại kiến thức đều đáng để tiếp thu, nhưng việc dạy khoa học máy tính từ khi còn nhỏ thực sự có thể giúp xã hội tiến bộ rất nhiều, cả về công nghệ và xã hội.

____________________

u/[deleted] (6 points)

Ngôn ngữ máy tính cũng giống như bất kỳ ngôn ngữ nào khác, bắt đầu học từ lúc càng trẻ thì càng tốt.

_____________________

Dịch bởi Lờ

Leave a Reply

Your email address will not be published. Required fields are marked *