Pascal thời xa vắng, nay đã là Python, C++

Hôm qua đọc báo mạng, tôi thấy bộ Giáo Dục quyết định thay thế môn lập trình Pascal bằng Python và C++.  Nhiều người vui vì từ nay, học sinh sẽ được học ngôn ngữ lập trình có tính áp dụng thực tế cao hơn bởi Pascal, một ngôn ngữ không còn dùng nhiều trong thực tế từ 20 năm nay. Tuy nhiên không thể phủ nhận Pascal là một ngôn ngữ có cú pháp trong sáng, dễ học, dễ hiểu, phù hợp cho việc dạy và học. Vấn đề ở chỗ: Học sinh học Pascal xong, lên đại học lại phải học ngôn ngữ lập trình mới, khá mất thời gian, công sức, trong khi kiến thức lập trình Pascal cũ sau 2 năm họ quên rất nhiều. Cách dạy lập trình Pascal ở trường PTTH hơi nặng về bài tập cú pháp chỉ phù hợp thời kỳ hệ điều hành DOS. Trong thời đại Internet, Vlog, Facebook, Tiktok, học sinh được tiếp xúc với phim ảnh, âm nhạc, games, tương tác mạng xã hội, số lượng thông tin đến bộ não của một thanh niên quá nhiều. Lẽ tự nhiên, họ tiếp nhận những thông tin vui vẻ, dễ chịu, không phải động não quá lâu, còn những thông tin phải học thuộc, hoặc động não trong thời gian quá dài sẽ bị cho xuống thứ yếu.

Liệu học Python, C++ có hiệu quả hơn?

Python là ngôn ngữ thông dịch, gõ lệnh đến đâu, Python intepreter xử lý trả về kết quả đến đó. Tốc độ thực thi chậm, nhưng trực quan. Có thể nhiều bạn học sinh sẽ đỡ áp lực khi học.

Top 10 Most Popular Programming Languages 2004 - 2020 I PYPL Index - YouTube

Ngược lại C++ là ngôn ngữ biên dịch cú pháp rất chặt chẽ, ngắn gọn. Một số chức năng con trỏ, quản lý bộ nhớ, hướng đối tượng, interface, generics, đè, chồng toán tử sẽ rất khó cho những bạn học sinh cấp 3. Tôi còn nhớ khi học ở Hàn Quốc, lớp học lập trình C++ cho sinh viên cao học, mà đến gần nửa lớp phải học thêm và cũng trên 60% sinh viên chỉ đạt B và B+ cho môn này. Có lẽ bộ giáo dục đang nói đến ngôn ngữ C thì đúng hơn chứ không phải C++.

Dạy Python sẽ thuận tiện hơn cho cả giảng viên tin học dạy và học sinh lớp phổ cập

Tuy nhiên nếu chỉ dừng lại ở mức độ dạy cú pháp cho biết thì sẽ có hơn nửa lớp sẽ ngủ gật hoặc bật máy tính để lướt Face và Youtube. Khoảng 20% học sinh trong lớp sẽ thích thú và tiếp tục tận dụng những kiến thức Python học ở lớp 11, 12 để lên đại học tiếp tục chuyên ngành CNTT. Ít nhất là lãi rồi. Làm thôi, sao phải sợ nhỉ.

Nếu dạy lập trình C phù hợp lớp chuyên Tin, Toán, Lý

Đối với những lớp chuyên Toán, chuyên Tin học, chuyên Lý, có thể dạy lập trình C. Khi chọn lựa đội tuyển tin học, ngôn ngữ C luôn là lựa chọn hàng đầu để học sinh giải bài tập lập trình. Đối với các lớp có thiên hướng kỹ thuật, STEM, có thể dùng C để lập trình bo mạch Arduino chi phí khoảng 60k VND/1 bo mạch, học sinh sẽ phấn khich và cảm giác được làm thật hơn rất nhiều.

Lập trình C điều khiển Arduino để đọc cảm biến nhiệt độ - độ ẩm.
Hộp thực hành lập trình C trên bo mạch điều khiển Arduino UNO

 

Làm sao để nuôi dưỡng đam mê lập trình cho học sinh cấp 2 - 3

Dạy là truyền đạt kiến thức. Nhưng nuôi dưỡng đam mê lập trình cũng quan trọng không kém. Thay vì những tiết học nhàm chán lý thuyết, rồi thực hành máy móc rồi kiểm tra, thi. Nếu một học sinh bị điểm kém môn lập trình, liệu sau này họ còn tự tin học CNTT không? Có thể nội dung học chưa phù hợp, thời điểm học chưa phù hợp, khiến học sinh đó chưa thực sự đam mê, nhập tâm để học. Hãy nhớ đến trường hợp Edison đã từng bị trường học từ chối vì Edison tỏ ra không hiểu bài và luôn hỏi những câu hỏi kỳ quặc.

CNTT có quá nhiều chuyên nghành nhỏ như lập trình ứng dụng (Web - Mobile), lập trình games, thiết kế đồ hoạ, hậu kỳ - hiệu ứng video, âm thanh. Ví dụ Adam Walker một nhạc sỹ trẻ nổi tiếng với bản nhạc Fade, từng học lập trình và áp dụng kỹ năng này để tạo ra hiệu ứng âm thanh điện tử. Dạy lập trình căn bản cho học sinh ok, nhưng hãy cho học sinh biết còn rất nhiều lựa chọn thú vị khác mà họ có thể thử nghiệm.

Faded Sheet Music by Alan Walker for Piano/Keyboard - Noteflight Marketplace

Chương trình đào tạo CNTT của Techmaster học sinh cấp 1, cấp 2, cấp 3

Ngày từ những ngày đầu thành lập 2011, Techmaster dành một phần tài nguyên giảng viên, hệ thống cơ sở vật chất để phục vụ đào tạo đối tượng học sinh cấp 2, 3. Năm 2015, Techmaster bắt đầu tổ chức khoá học lập trình Arduino qua chủ đề Đội bóng Robot do thầy Phan Hoàng Anh dạy. Các robot là những chiếc xe có motor điện được điều khiển từ smart phone qua kênh bluetooth. Từ năm 2018, Techmaster tổ chức khoá học lập trình Arduino Scratch và C cho học sinh cấp 1,2, thậm chí cấp 3. Cùng một bài thực hành, ở mỗi độ tuổi khác nhau, học sinh sẽ nhìn nhận bài giảng ở mức độ khác nhau. Tuy nhiên tất cả đều có một điểm chung là các buổi thực hành đều rất vui, phấn khích, cuốn hút.

Lớp học Arduino cho học sinh cấp 1, 2

Trong thời gian tới, Techmaster bổ xung thêm khoá học lập trình Python trên Rasberry PI, lập trình vi điều khiển Arduino bằng micro Python.

Chương trình hướng nghiệp Programming Foundation cho học sinh cấp 3, sinh viên năm đầu

Với học sinh lớp 11 trở đi, khi thiên hướng kỹ thuật, tò mò công nghệ đã rõ ràng, Techmaster có chương trình hướng nghiệp CNTT Nền tảng lập trình - Programming Foundation. Đây là khoá học kéo dài 4.5 tháng, mỗi tuần học 2 buổi, tối 6:30 - 9:30. Học sinh chỉ đến lớp thực hành mà không phải làm bài tập ở nhà, có giáo trình trực tuyến để học sinh ôn lại bài. Khoá học có 5 môn thực hành:

  1. Lập trình Web căn bản 8 buổi
  2. Lập trình IOT 7 buổi
  3. Lập trình JavaScript 6 buổi
  4. Lập trình Game JavaScript 8 buổi
  5. Lập trình Cơ sở dữ liệu  7 buổi

Tổng số buổi 36 buổi thực hành tương đương 144 tiết học 45'. 

Chi tiết khoá học tại đây https://techmaster.vn/lo-trinh/foundation

Techmaster sẽ khai giảng khoá học Foundation Programming hàng tháng tại ở cả 2 cơ sở:

  • Tầng 12A, Viwaseen Tower, 48 Tố Hữu, quận Nam Từ Liêm
  • 14 Ngõ 4, Nguyễn Đình Chiểu, quận Hai Ba Trưng

Liên hệ đăng kí học : Ms Hương 0382416368, huong@techmaster.vn

Lớp Foundation Programming cho học sinh cấp 3 và năm đầu đại học