Lập trình (coding) là gì? Thế nào là Lập trình không sử dụng công nghệ (unplugged coding)?
Lập trình là quá trình giao tiếp giữa con người với các thiết bị điện tử (ví dụ như đèn, quạt, máy tính, điện thoại, thiết bị điện tử, v.v.). Vì máy tính và con người sử dụng hệ thống ngôn ngữ khác nhau, lập trình đóng vai trò như người phiên dịch, giúp con người và máy tính hiểu được nội dung cần truyền tải. Nhờ đó, lập trình xử lý yêu cầu của người dùng, sử dụng các thuật toán để tạo ra kết quả mong muốn.
Lập trình không sử dụng công nghệ là một cách hướng dẫn các khái niệm lập trình nhưng không dùng máy tính. Các khái niệm lập trình cơ bản như: biến (variables), cấu trúc dữ liệu (data structures), cấu trúc điều khiển (control structures), cú pháp (syntax), và công cụ (tools), có thể được mô phỏng hoàn toàn không cần đến công nghệ.
Với lập trình không công nghệ, bạn sẽ học lập trình thông qua việc vận dụng những kiến thức để giải quyết các vấn đề tính toán, từ đó rút ra tư duy và khái niệm của một dự án lập trình.
Ví dụ về lập trình không công nghệ
Một trò chơi phổ biến ứng dụng Lập trình không công nghệ là “Robot di chuyển theo ma trận”. Nhiệm vụ của trò chơi này là thoát khỏi mê cung được mô phỏng trong lớp học.
Bạn cần chuẩn bị bút, bút màu, thước, kéo, giấy màu, giấy khổ to để làm ma trận. Trong trò chơi này, người chơi được phát các tấm thẻ với nhiều màu sắc khác nhau, mỗi màu tượng trưng cho một chuyển động, chẳng hạn như:
- Màu xanh lá: Xoay phải 90 độ
- Màu xanh dương: Xoay trái 90 độ
- Màu vàng: Tiến tới 1 bước
- Màu đỏ: Lùi 1 bước
Số người chơi có thể lên đến một lớp học. Đầu tiên, bạn chia tất cả học sinh thành nhiều nhóm nhỏ. Trong từng nhóm, mỗi học sinh có một vai trò nhất định như:
- Thiết kế (Designer): Thiết kế tấm thẻ câu lệnh.
- Lập trình viên (Coder/Programmer): Sử dụng các tấm thẻ di chuyển để điều khiển.
- Người chơi (Player/ Program): sẽ nghe theo hiệu lệnh từ Lập trình viên, sau đó di chuyển.
Sau khi phân vai trò, học sinh sẽ tiến hành chơi. Nhiệm vụ của học sinh là di chuyển Người chơi thoát khỏi một mê cung được mô phỏng trong lớp học.
Bước 1: Chuẩn bị vật liệu cho trò chơi, phân chia nhóm và vai trò mỗi thành viên. Trong lập trình, đây là bước cài đặt môi trường, tài nguyên, với phân chia thiết kế và lập trình để công việc rõ ràng và hiệu quả. Đặc biệt là mỗi nhóm nên có 1 người quản lý dự án để có thể phân chia và quản lý công việc dễ dàng hơn.
Bước 2: Người quản lý dự án sẽ chia nhỏ công việc cho các bạn trong nhóm cùng thực hiện. Trong lập trình, đây còn gọi là kỹ thuật WBS (Work Breakdown Structure), để việc hoàn thành dự án dễ dàng, rõ ràng và nhanh hơn.
Bước 3: Người điều khiển (Coder) sẽ sử dụng các tấm thẻ di chuyển, sau đó lần lượt sử dụng tấm thẻ để đưa người chơi (player) thoát khỏi mê cung. Trong coding, đây là bước tạo ra thuật toán. Bước tiếp theo là chạy chương trình.
Bước 4: Người chơi sẽ di chuyển lần lượt theo các lệnh đã được lập trình. Trong lập trình, đây là bước chạy chương trình.
Bước 5: Có thể ở lần thử đầu tiên, người chơi di chuyển theo chương trình nhưng không đạt được kết quả (ví dụ code bị sai (syntax error) hoặc là code thiếu), vì vậy chưa đến đích. Trong lập trình, đây là bước Compile trước khi Run, để chương trình có thể chạy hoàn chỉnh và đúng thì yêu cầu code phải chính xác.
Bước 6: Lập trình viên sẽ xem lại các bước di chuyển mình sắp xếp của mình, tìm lỗi sai sau đó sửa lại để chương trình hoạt động đúng. Trong lập trình, đây là bước sửa lỗi (Debug).
Bước 7: Sau khi chương trình hoàn chỉnh và code đã hoạt động như ý muốn, chúng ta có thể tối ưu hoá đoạn code (để giảm thời gian thực hiện hoặc tăng tốc độ chương trình). Trong coding, đây là bước cải tiến code, giúp code hoạt động tốt với nhiều trường hợp được đặt ra (test cases).
Học sinh học được gì qua lập trình không công nghệ?
Trò chơi ứng dụng Lập trình không công nghệ “Robot di chuyển theo ma trận” dạy học sinh về:
- Khả năng tư duy máy tính, giải quyết vấn đề một cách hợp lý, logic.
- Khả năng làm việc nhóm hiệu quả, giao tiếp tốt, hiểu ý đồng đội.
- Áp dụng một số cách giải quyết vấn đề (Work Breakdown Structure (WBS), v.v.)
- Hiểu thêm 1 số kiến thức về vòng lặp, biến, điều kiện, v.v.
- Hiểu thêm về cách hoạt động của 1 số câu lệnh như for, while, v.v.
- Hiểu thêm về debug.
Vào mùa hè này, STEAM for Vietnam sẽ triển khai chương trình đào tạo Train the Trainer 2024, nối tiếp sự thành công của Train the Trainer 2023 để tiếp tục mang đến chuỗi hoạt động đào tạo giáo viên tiền phương nhằm nâng cao chuyên môn giảng dạy. Tham gia vào chương trình này, các thầy cô sẽ được cung cấp các bí kíp để có thể thiết kế các hoạt động trong lớp học giúp học sinh hiểu hơn về tư duy máy tính, vừa sử dụng công nghệ, vừa không sử dụng công nghệ. Đặc biệt trong chương trình năm nay, các thầy cô không chỉ được tìm hiểu về Tư duy máy tính, cách ứng dụng tư duy vào giảng dạy với một ví dụ cụ thể là công cụ Scratch mà còn được tìm hiểu về AI – tương lai của giáo dục.
Train the Trainer 2024 tiếp tục nối tiếp Train the Trainer 2023 mang đến một chương trình đào tạo giáo viên với các bài học về Tư duy máy tính, cách ứng dụng tư duy máy tính vào giảng dạy và đặc biệt là AI và các chuyên đề về dạy học.
Người viết: Phan Xuân Phát
— — —
STEAM for Vietnam Foundation là tổ chức phi lợi nhuận 501(c)(3) được thành lập tại Hoa Kỳ với sứ mệnh thúc đẩy các hoạt động liên quan tới giáo dục STEAM (Science — Khoa học, Technology — Công nghệ, Engineering — Kỹ thuật, Arts — Nghệ thuật, Mathematics — Toán học) tại Việt nam. STEAM for Vietnam được thành lập và vận hành bởi đội ngũ tình nguyện viên là du học sinh và chuyên gia người Việt trên khắp thế giới.
— — —
📧Email: hello@steamforvietnam.org
🌐Website: www.steamforvietnam.org
🌐Fanpage: STEAM for Vietnam
📺YouTube: http://bit.ly/S4V_YT
🌐Zalo: Zalo Official
📍Donation: https://www.steamforvietnam.org/donation