“Sáng thứ bảy nào, cả gia đình cũng có mặt đầy đủ và hào hứng nghe giảng các buổi học lập trình cùng thầy cô trong STEAM for Vietnam. Bởi vì cả bố và mẹ đều không biết nhiều về lập trình nên những buổi học lập trình của con cũng là những cơ hội để bố mẹ mở mang kiến thức ở mảng này. Khi đó, chị cảm thấy khoảng cách thế hệ dường như được rút ngắn lại, bố mẹ trở thành những người bạn thân thiết, đồng hành và phát triển cùng con. Cả gia đình chị còn dành thời gian cùng nhau ôn bài và làm game mới mỗi cuối tuần. Điều này vừa giúp con vững kiến thức hơn và vừa tạo cho con không gian để giải trí một cách bổ ích. Nói chung, nhờ STEAM for Vietnam mà nhà chị đã “sưu tầm” được rất nhiều kỷ niệm dễ thương, đồng thời có cơ hội gắn kết tình cảm giữa con với ba mẹ nhiều hơn nữa.
Nhờ cách giảng bài rất cặn kẽ của các thầy cô trong STEAM for Vietnam, con chị đã có thể thực hành bài tập ngay sau buổi học. Ngoài ra, chị luôn mong muốn con có thể áp dụng những kiến thức đã được học vào đời sống một cách thật sáng tạo bằng khả năng suy luận và tư duy của mình Vì thế, chị đã luôn động viên và hỗ trợ con trong quá trình phát triển game dựa trên các ý tưởng lấy từ đời sống thường ngày. Đó chính là lý do mà game “Miu đi siêu thị” ra đời. Đây là chủ đề thú vị mà chị đã gợi ý cho con khi cả nhà cùng nhau đi mua sắm. Chị rất tự hào khi thấy con hăng say lên nội dung chi tiết cho game và cặm cụi quên giờ giấc để hoàn thành dự án đầy tâm huyết của mình.
Chị cảm thấy khóa học lập trình này là một trải nghiệm hết sức thú vị của con và cả gia đình. Nhờ có các buổi học lập trình trực tiếp cùng STEAM for Vietnam mỗi thứ bảy mà cả gia đình có thêm một hoạt động sinh hoạt cùng nhau. Một điều chị muốn nhắn nhủ với các phụ huynh còn đang e ngại chưa dám cho con học lập trình đó là các con đang ở độ tuổi mà khả năng tư duy và tiếp thu rất nhạy bén, vì vậy bố mẹ hãy tự tin cho con được tiếp xúc với lập trình từ sớm nhé!
– Chia sẻ từ chị Dương Minh Phương – phụ huynh bé Minh Sơn (7 tuổi), đang theo học khóa CS 001 – Nhập môn Tư duy máy tính và Lập trình Scratch tại STEAM for Vietnam-
— — —
“Nhật ký Lập trình” là series thuật lại những câu chuyện mà phụ huynh, học sinh, và các thầy cô chia sẻ về chặng đường theo học các khoá lập trình cùng STEAM for Vietnam.
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.
Sau khi học về câu điều kiện và vòng lặp, chúng ta đã có thể tạo được một game nhập vai đơn giản giống như bạn Hoàng Long. Một số kiến thức cần thiết để áp dụng trong game mà các bạn học sinh cần nhớ:
Sử dụng Thonny để tạo một game đơn giản bằng Python.
Câu lệnh input() để nhập dữ liệu trong Python.
Câu lệnh print() để in thông báo ra màn hình.
Câu điều kiện với if, elif, và else trong Python.
Kiểu dữ liệu booleantrong Python với so sánh ==.
Thư viện randomđể tạo số ngẫu nhiên.
Vòng lặp whiletrong Python.
Hành trình đầy thử thách của nhân vật trong game
Cốt truyện game là hành trình hết sức khó khăn của một nhà thám hiểm vô tình đi lạc vào một tòa lâu đài cổ kính. Xung quanh là không gian tối tăm, tĩnh mịch không một tiếng động, bạn ấy vừa hoang mang, vừa lo sợ khi trên tay chỉ cầm một ngọn đuốc le lói ánh sáng. Liệu điều gì đang chờ nhà thám hiểm trong tòa lâu đài này đây?
Bỗng nhiên, nhà thám hiểm tìm thấy 4 căn phòng bí ẩn. Mỗi căn phòng lại có một kết cục khác nhau cho số phận của nhà thám hiểm đó! Các bạn học sinh có thể trải nghiệm game bằng cách nhấn vào đường link sau trước khi bắt tay vào code nhé!: https://s4v.trinket.io/sites/adventure-game
Bắt tay viết code thôi nào!
Trước khi bắt đầu viết code, chúng ta sẽ xây dựng một sơ đồ để hình dung thuật toán của game. Điều này rất cần thiết để chúng ta có thể hình dung các bước giải quyết một bài toán và code dễ dàng hơn.
Hãy bắt đầu với vị trí đầu tiên của nhà thám hiểm, đối diện với 4 cánh cửa trong tòa lâu đài tối tăm.
Sơ đồ 1: Nhà thám hiểm chọn phòng
Căn phòng thứ nhất: nhà thám hiểm ngỡ ngàng trước vô số vàng bạc, kim cương lấp lánh. Nếu may mắn chọn đúng căn phòng này, nhà thám hiểm sẽ có thể thoát khỏi tòa lâu đài và trở nên giàu có với rương kho báu khổng lồ.
Căn phòng thứ hai: một con yêu tinh xấu xí, đáng sợ đang ẩn náu trong căn phòng để chờ nhà thám hiểm đi đến. Nó xông ra với một cây chùy trên tay và khiến nhà thám hiểm phải bỏ mạng ngay tại căn phòng này.
Căn phòng thứ ba: một con rồng khổng lồ đang nằm ngủ ngay góc phòng. Nếu nhà thám hiểm hoảng hốt và hét lên, con rồng sẽ tỉnh giấc và phun lửa thiêu rụi nhà thám hiểm ngay lập tức. Còn khi nhà thám hiểm đứng im không nhúc nhích, con rồng vô tình thức dậy thì sẽ trông thấy và nuốt trọn nhà thám hiểm. Vậy phải làm thế nào đây? Cách an toàn nhất là nhẹ nhàng đi ra khỏi phòng. Thế nhưng không hiểu sao cánh cửa lại bị khóa. Khi đó, tay nắm cửa đột nhiên phát ra tiếng động, bẫy được kích hoạt và khiến cho nhà thám hiểm bị rơi ra khỏi tòa lâu đài. Nhà thám hiểm đã trở về thành phố mà không có kho báu.
Sơ đồ 2: Các trường hợp trong căn phòng 3
Căn phòng thứ tư: Bước vào căn phòng cuối cùng, nhà thám hiểm sẽ gặp con nhân sư với một câu đố hóc búa. Nhân sư rất thông minh và nó bắt nhà thám hiểm đoán đúng con số nó đang nghĩ trong đầu. Con số từ 1 đến 10. Nếu đoán đúng, nhân sư sẽ cho nhà thám hiểm đi khỏi lâu đài. Nếu đoán sai, nhà thám hiểm sẽ phải ở lại làm nô lệ cho nhân sư.
Sơ đồ 3: Các trường hợp trong căn phòng 4
Để hoàn thiện trò chơi, các bạn học sinh cần hỏi thêm người chơi có muốn tiếp tục chơi hay dừng lại sau khi đã mở cửa 1 căn phòng không nhé!
Tiến hành code
Bước 1: Viết giới thiệu game
Chúng ta sẽ sử dụng chương trình Thonny để thực hiện game này. Trước tiên, chúng ta cần sử dụng câu lệnh print() để in ra màn hình vị trí bắt đầu của nhà thám hiểm. Để cho game sinh động, chúng ta sẽ thêm hình vẽ lâu đài bằng các ký tự ASCII (Nguồn: https://www.asciiart.eu/buildings-and-places/castles).
LAUDAI = """
|>>> |>>>
| |>>> |>>> |
* | | *
/ \ * * / \
/___\ _/ \ / \_ /___\
[ ] |/ \_________/ \| [ ]
[ I ] / \ / \ [ I ]
[ ]_ _ _ / \ / \ _ _ _[ ]
[ ] U U | {#########} {#########} | U U [ ]
[ ]====/ \=======/ \=======/ \====[ ]
[ ] | | I |_ _ _ _| I | | [ ]
[___] |_ _ _ _ _ _| | U U U | |_ _ _ _ _ _| [___]
\===/ I | U U U U U | |=======| | U U U U U | I \===/
\=/ |===========| I | + W + | I |===========| \=/
| I | | |_______| | | I |
| | | ||||||||| | | |
| | | I ||vvvvv|| I | | |
_-_-|______|-----------|_____|| ||_____|-----------|______|-_-_
/________\ /______|| ||______\ /________\
|__________|-------|________\_____/________|-------|__________|
"""
print("Bạn đang ở trong một căn phòng tối tăm nằm trong một lâu đài bí hiểm.")
print(LAUDAI)
print("Có 4 cánh cửa trước mặt bạn, bạn hãy chọn một cánh cửa để thám hiểm.")
Để yêu cầu người chơi chọn cửa để khám phá, chúng ta sẽ sử dụng câu lệnh input():
a = input("Bạn chọn cánh cửa sổ: ")
Bước 2: Viết phần lựa chọn phòng
Câu lệnhinput()chuyển dữ liệu người dùng nhập thành chuỗi nên a sẽ có kiểu dữ liệu chuỗi (string). Các bạn sẽ kiểm tra giá trị người chơi nhập vào từ bàn phím để xem người chơi chọn cửa số mấy để thám hiểm. Vì a có kiểu dữ liệu chuỗi nên chúng ta sẽ kiểm tra với “1”, “2”, “3”, “4”. Chúng ta lưu ý phải có dấu "". Để kiểm tra xem hai chuỗi có giống nhau không chúng ta có thể sử dụng ==. Khi kiểm tra, kết quả trả về sẽ có kiểu dữ liệu boolean True hoặc False. Vì có bốn phòng nên chúng ta sẽ sử dụng câu lệnh điều kiện rẽ nhánh để kiểm tra xem người chơi chọn thám hiểm phòng nào:
if a == "1":
print("Bạn đang ở phòng 1.")
elif a == "2":
print("Bạn đang ở phòng 2.")
elif a == "3":
print("Bạn đang ở phòng 3.")
elif a == "4":
print("Bạn đang ở phòng 4.")
else:
print("Xin lỗi, bạn chỉ có thể nhập 1,2,3 hoặc 4")
Câu lệnh điều kiện rẽ nhánh sẽ kiểm tra điều kiện ở câu lệnh if trước, sau đó sẽ đến điều kiện ở các câu lệnh elif. Nếu tất cả điều kiện đó đều không thoả mãn thì sẽ thực hiện dòng lệnh ở else. Dòng lệnh ởelsegiúp nhắc nhở người chơi phải nhập các số 1, 2, 3, hoặc 4. Chúng ta lưu ý đi sauifvà elif là điều kiện nhưng ở elsethì không. Có một cách rất hay để chúng ta có thể kiểm tra code mình viết (debug) đó là sử dụng câu lệnhprint(). Khi chạy code, chúng ta hãy nhập vào bất kì phòng nào và xem chương trình in ra màn hình đúng phòng không.
Sau khi kiểm tra phần chọn phòng, chúng ta sẽ thêm vào một câu lệnh để hỏi người chơi muốn chơi tiếp hay dừng lại:
exit_choice = input("Ấn Enter để chơi lại, hoặc gõ thoát để đóng trò chơi.")
Sau khi người dùng nhập câu trả lời, chúng ta phải kiểm tra và nếu người chơi muốn chơi tiếp, chúng ta sẽ thực hiện lại toàn bộ các câu lệnh ở trên. Các bạn hãy sử dụng kiến thức vòng lặp while. Trong khi biến exit_choice không phải là “thoát” thì chúng ta sẽ quay lại thực hiện toàn bộ các câu lệnh. Để kiểm tra điều kiện không phải, chúng ta sử dụng !=:
while exit_choice != "thoát":
Tuy nhiên, chương trình chúng ta vẫn còn một lỗi nho nhỏ đấy. Đó chính là khi lần đầu tiên chơi, biến exit_choice chưa được gán bất kỳ giá trị nào. Chúng ta có thể gán biến đó với bất kỳ giá trị nào, ngoại trừ “thoát” để có thể bắt đầu trò chơi:
exit_choice = "c"
Chương trình hoàn chỉnh sẽ là:
exit_choice = "c"
while exit_choice != "thoát":
if a == "1":
print("Bạn đang ở phòng 1.")
elif a == "2":
print("Bạn đang ở phòng 2.")
elif a == "3":
print("Bạn đang ở phòng 3.")
elif a == "4":
print("Bạn đang ở phòng 4.")
else:
print("Xin lỗi, bạn chỉ có thể nhập 1,2,3 hoặc 4")
exit_choice = input("Ấn Enter để chơi lại, hoặc gõ thoát để đóng trò chơi.")
Bước 3: Viết phần lựa chọn từng phòng:
Phòng 1:
Sau khi đã chia thành từng trường hợp, chúng ta sẽ đi theo sơ đồ đã vẽ ở sơ đồ 1. Với phòng 1, chúng ta sẽ in ra màn hình chúc mừng người chơi đã chọn đúng phòng có kho báu và hỏi người chơi muốn chơi tiếp hay dừng lại:
if a == "1":
print("Bạn đã tìm thấy một căn phòng chứa kho báu, phát tài rồi!")
print("Bạn đã thắng cuộc, trò chơi kết thúc.")
print("(Khởi động lại để tiếp tục khám phá.)")
Phòng 2:
Với phòng 2 có con yêu tinh, chúng ta sẽ in ra màn hình chia buồn với người chơi và hỏi người chơi muốn chơi tiếp hay dừng lại:
elif a == "2":
print("Cửa bật mở, một con yêu tinh xông ra và phang chuỳ vào đầu bạn.")
print("Bạn đã chết, trò chơi kết thúc.")
print("(Khởi động lại để tiếp tục khám phá.)")
Phòng 3:
Với phòng 3 có con rồng, chúng ta sẽ yêu cầu người chơi chọn làm gì sau khi thấy con rồng. Có ba lựa chọn tương ứng với ba số 1, 2, 3:
elif a == "3":
print("Bạn bước vào căn phòng và thấy một con rồng đang ngủ say, bạn sẽ: ")
print("1: Hét to lên để hăm doạ con rồng.")
print("2: Từ từ đi ra khỏi phòng.")
print("3: Chả làm gì cả.")
b = input("Nhập lựa chọn của bạn vào đây: ")
Chúng ta sử dụng biến mới b để lưu câu trả lời của người chơi, tương tự như khi chúng ta hỏi người chơi chọn phòng nào. Và chúng ta cũng sẽ sử dụng câu lệnh điều kiện rẽ nhánh để chia thành các trường hợp lựa chọn:
if b == "1":
print("Con rồng giật mình và phun lửa vào bạn.")
print("Bạn đã bị thiêu rụi, trò chơi kết thúc.")
elif b == "2":
print("Bạn định ra khỏi phòng thì nhận ra cánh cửa đã khóa, bạn chạm vào tay nắm cửa cũ kỹ và nó phát ra tiếng động!")
print("Bẫy được kích hoạt, bạn rơi ra khỏi lâu đài và bạn thấy thành phố trước mắt mình.")
print("Bạn đã thoát, trò chơi kết thúc.")
print("(Khởi động lại để tiếp tục khám phá.)")
elif b == "3":
print("Bạn đứng đó hồi lâu và con rồng thức dậy, vừa nhìn thấy bạn, con rồng lập tức nuốt chửng bạn ngay!")
print("Bạn đã trở thành bữa ăn ngon cho rồng, bạn đã chết, trò chơi kết thúc.")
print("(Khởi động lại để tiếp tục khám phá.)")
else:
print("Xin lỗi, bạn chỉ có thể nhập 1,2,3.")
Phòng 4:
Ở căn phòng cuối cùng có một con nhân sư yêu cầu nhà thám hiểm phải đoán được số nó đang nghĩ. Chúng ta cũng bắt đầu nhánh ở phòng 4 bằng việc hỏi người chơi đoán số nhân sư đang nghĩ:
elif a == "4":
print("Căn phòng bạn bước vào có một con nhân sư.")
print("Nhân sư bắt bạn phải đoán được số mà nó đang nghĩ đến trong các số nguyên từ 1 đến 10.")
print("Nếu bạn đoán đúng, nhân sư sẽ cho bạn đi.")
print("Ngược lại bạn phải làm nô lệ cho nó!")
number = int(input("Bạn chọn số nào: "))
Chúng ta cùng tìm hiểu cách để nhân sư nghĩ ra một số ngẫu nhiên. Để có thể tạo một số nguyên ngẫu nhiên từ 1 đến 10, chúng ta sẽ sử dụng thư viện (library) random trong Python. Thư viện random sẽ gồm rất nhiều câu lệnh nhỏ với những chức năng khác nhau. Ở đây chúng ta sẽ sử dụng random.randint() với hai input là 1 và 10. Tuy nhiên trước hết, chúng ta phải gọi thư viện đó trong Python bằng câu lệnh import.
Chúng ta sử dụng câu lệnh int()để chuyển kiểu dữ liệu từ chuỗi (string) sang số nguyên (int). Mục đích để kiểm tra số người dùng nhập và số nguyên tạo ngẫu nhiên bằng random.randint():
import random
if number == random.randint(1,10):
print("Nhân sư gầm lên thất vọng. Bạn đã đoán đúng.")
print("Nhân sư phải thả bạn đi.")
print("Bạn đã chiến thắng. Trò chơi kết thúc.")
print("(Khởi động lại để tiếp tục khám phá.)")
else:
print("Nhân sư cười khoái trá. Bạn đã đoán sai!")
print("Bạn đã trở thành nô lệ của nhân sư!")
print("Bạn đã thua, trò chơi kết thúc.")
print("(Khởi động lại để tiếp tục khám phá.)")
Chương trình hoàn chỉnh của game
Chúng ta sẽ thêm câu lệnh # -*- coding: utf-8 -*- để hiển thị tiếng Việt. Đồng thời, các bạn học sinh lưu ý chương trình hoàn chỉnh phải lùi lề. Chương trình Python hoàn chỉnh của game sẽ là:
# -*- coding: utf-8 -*-
import random
LAUDAI = """
|>>> |>>>
| |>>> |>>> |
* | | *
/ \ * * / \
/___\ _/ \ / \_ /___\
[ ] |/ \_________/ \| [ ]
[ I ] / \ / \ [ I ]
[ ]_ _ _ / \ / \ _ _ _[ ]
[ ] U U | {#########} {#########} | U U [ ]
[ ]====/ \=======/ \=======/ \====[ ]
[ ] | | I |_ _ _ _| I | | [ ]
[___] |_ _ _ _ _ _| | U U U | |_ _ _ _ _ _| [___]
\===/ I | U U U U U | |=======| | U U U U U | I \===/
\=/ |===========| I | + W + | I |===========| \=/
| I | | |_______| | | I |
| | | ||||||||| | | |
| | | I ||vvvvv|| I | | |
_-_-|______|-----------|_____|| ||_____|-----------|______|-_-_
/________\ /______|| ||______\ /________\
|__________|-------|________\_____/________|-------|__________|
"""
exit_choice = "c"
while exit_choice != "thoát":
print("Bạn đang ở trong một căn phòng tối tăm nằm trong một lâu đài bí hiểm.")
print(LAUDAI)
print("Có 4 cánh cửa trước mặt bạn, bạn hãy chọn một cánh cửa để thám hiểm.")
a = input("Bạn chọn cánh cửa số: ")
if a == "1":
print("Bạn đã tìm thấy một căn phòng chứa kho báu, phát tài rồi!")
print("Bạn đã thắng cuộc, trò chơi kết thúc.")
print("(Khởi động lại để tiếp tục khám phá.)")
elif a == "2":
print("Cửa bật mở, một con yêu tinh xông ra và phang chuỳ vào đầu bạn.")
print("Bạn đã chết, trò chơi kết thúc.")
print("(Khởi động lại để tiếp tục khám phá.)")
elif a == "3":
print("Bạn bước vào căn phòng và thấy một con rồng đang ngủ say, bạn sẽ: ")
print("1 : Hét to lên để hăm doạ con rồng.")
print("2 : Từ từ ra khỏi phòng.")
print("3 : Chả làm gì cả.")
b = input("Nhập lựa chọn của bạn vào đây: ")
if b == "1":
print("Con rồng giật mình và phun lửa vào bạn.")
print("Bạn đã bị thiêu rụi, trò chơi kết thúc.")
elif b == "2":
print("Bạn định ra khỏi phòng thì nhận ra cánh cửa đã khóa, bạn chạm vào tay nắm cửa cũ kỹ và nó phát ra tiếng động!")
print("Bẫy được kích hoạt, bạn rơi ra khỏi lâu đài và bạn thấy thành phố trước mắt mình.")
print("Bạn đã thoát, trò chơi kết thúc.")
print("(Khởi động lại để tiếp tục khám phá.)")
elif b == "3":
print("Bạn đứng đó hồi lâu và con rồng thức dậy, vừa nhìn thấy bạn, con rồng lập tức nuốt chửng bạn ngay!")
print("Bạn đã trở thành bữa ăn ngon cho rồng, bạn đã chết, trò chơi kết thúc.")
print("(Khởi động lại để tiếp tục khám phá.)")
else:
print("Xin lỗi, bạn chỉ có thể nhập 1,2,3.")
elif a == "4":
print("Căn phòng bạn bước vào có một con nhân sư.")
print("Nhân sư bắt bạn phải đoán được số mà nó đang nghĩ đến trong các số nguyên từ 1 đến 10.")
print("Nếu bạn đoán đúng, nhân sư sẽ cho bạn đi.")
print("Ngược lại bạn phải làm nô lệ cho nó!")
number = int(input("Bạn chọn số nào: "))
if number == random.randint(1,10):
print("Nhân sư gầm lên thất vọng. Bạn đã đoán đúng.")
print("Nhân sư phải thả bạn đi.")
print("Bạn đã chiến thắng. Trò chơi kết thúc.")
print("(Khởi động lại để tiếp tục khám phá.)")
else:
print("Nhân sư cười khoái trá. Bạn đã đoán sai!")
print("Bạn đã trở thành nô lệ của nhân sư!")
print("Bạn đã thua, trò chơi kết thúc.")
print("(Khởi động lại để tiếp tục khám phá.)")
else:
print("Xin lỗi, bạn chỉ có thể nhập 1,2,3 hoặc 4")
exit_choice = input("Ấn Enter để chơi lại, hoặc gõ thoát để đóng trò chơi.")
STEAM for Vietnam khuyến khích các bạn học sinh hãy thử sáng tạo cốt truyện, tạo nhiều phòng và thử thách cho nhà thám hiểm hơn. Bên cạnh đó, các bạn cũng có thể cải tiến thêm cho game như thế này: khi người chơi nhập sai yêu cầu (Ví dụ: không phải các số từ 1 đến 4 cho số phòng), chương trình sẽ cho người chơi nhập lại đến khi đúng.
Chỉ với những kiến thức từ hai bài đầu tiên của khoá CS101, bạn Hoàng Long đã tạo ra được một game đơn giản nhưng cũng không kém phần thú vị và gay cấn. STEAM for Vietnam tin rằng bạn học sinh nào cũng có thể sáng tạo dự án cá nhân đầy ấn tượng như vậy. Các bạn hãy thử bắt tay vào thực hiện dự án nhé! Sau khi hoàn thành game, các bạn có thể chia sẻ game của mình trên STEAMese Profile để khoe cùng mọi người.
— — —
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.
STEAM for Vietnam đã đem đến cho các bạn nhỏ một hành trình thú vị để nắm được các thao tác lập trình căn bản, cũng như nâng cao tư duy máy tính. Theo mình, khóa học CS101 được thiết kế với nội dung và tài liệu rất phù hợp với các em nhỏ. Đặc biệt, bé nhà mình rất thích phần làm đồ họa nhảy theo nhạc. Trong quá trình học, các thầy cô luôn tận tình hướng dẫn dễ hiểu cho các bé. Nhờ vậy mà học sinh không chỉ học được cách “dịch từ “ngôn ngữ người” sang “ngôn ngữ máy” mà còn học được cách tư duy và làm ra sản phẩm cụ thể. Dự án cuối khóa chắc hẳn là cột mốc đặc biệt đối với các em học sinh. Bé nhà mình cũng học hỏi được nhiều khi phải phải chuẩn bị video giới thiệu về dự án cuối khóa, từ nội dung đến cách nói, cách trình bày. Con đóng cửa phòng viết, sửa, tìm hiểu… rất hăng say. Con đã học được rất nhiều sau khi hoàn thành dự án, đồng thời tạo ra một sản phẩm cụ thể mà con chưa bao giờ có.
(Mẹ của bé Quỳnh Mai – lập trình viên nhí đạt giải Demo Day CS 001 đã chia sẻ cho STEAM for Vietnam về những cảm xúc khi cho con theo học CS 001 & CS 101)
“Chị muốn con học tư duy trước khi học kiến thức”
Lúc đầu thì mình cũng chỉ muốn cho cháu làm quen với lập trình thôi vì đây cũng là một kỹ năng quan trọng như ngoại ngữ vậy. Chị cảm thấy cháu tự tin hơn hẳn vì lập trình là một kỹ năng khá mới mẻ với các bạn nhỏ. Các bé được học cách tư duy, làm việc khoa học qua hình thức sắp xếp đoạn code và “Tách-Tìm-Nhìn-Viết”. Đồng thời, chị thấy rằng việc học lập trình sẽ giúp cho con tăng khả năng sáng tạo và giải quyết vấn đề. Cho nên, chị khuyến khích ba mẹ hãy cho con cái học lập trình từ sớm. Không hẳn học lập trình sẽ thành lập trình viên, dù rằng gia đình mình cũng rất mong muốn điều đó. May mắn là hiện tại cháu cũng rất yêu thích lập trình và muốn theo đuổi ngành này trong tương lai. Thế nhưng, chị tin rằng việc học lập trình sẽ trao cho các bé nhiều giá trị hữu ích hơn thế!
(Chia sẻ của phụ huynh bé Minh Đức – đạt giải Demo Day CS 101 khóa Spring Coding Bootcamp 2021)
“Con chưa bao giờ quen được nhiều bạn mới đến vậy”
Mỗi bài học của các con mình đều theo dõi, mình thấy rằng học với STEAM các bé còn học được nhiều điều ngoài kiến thức. Chẳng hạn các con hay chấm bài cho bạn, rất chăm chỉ và cẩn thận. Đồng thời khi viết code cũng gọn gàng, ngay ngắn hơn trước nhiều. Nhờ học STEAM for Vietnam mà các con có thêm nhiều bạn mới ở khắp nơi. Hai anh em thường xuyên trao đổi với nhau và với các bạn trên STEAMese Profile. Cứ làm xong bài tập về nhà là lại đăng lên cho các bạn xem liền, háo hức lắm. Bình thường mỗi buổi học các con đều vào ngay LMS sớm để chat với các bạn nữa!
(Anh Tuấn – phụ huynh của Trung Hiếu – có hai con đều đạt giải Weekly Challenge vui vẻ chia sẻ cảm nhận về khóa học)
STEAM for Vietnam rất vui vì phụ huynh và các em nhỏ đã cùng đồng hành trên hành trình thực hiện sứ mệnh lan tỏa công nghệ đến với hơn 20 triệu trẻ em Việt Nam trong 5 năm tới. Những phản hồi tích cực từ cha mẹ là động lực giúp cho STEAM for Vietnam tiếp tục thực hiện sứ mệnh ý nghĩa này.
— — —
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.
Là một người theo chủ nghĩa giáo dục sớm, chị rất tâm đắc câu nói này: “Mỗi đứa trẻ sinh ra đã là một thiên tài, chỉ có bản thân bố mẹ là giới hạn con thôi”. Vì vậy, chị luôn cố gắng động viên để con có thể phát huy hết khả năng của bản thân từ sớm. Cũng đã có rất nhiều người hỏi chị rằng dạy con học lập trình từ sớm như vậy (bé có tự học từ khi lên 4) có khó không? Câu trả lời là có, nhưng nếu mình chịu khó tìm cách, thì việc gì cũng có thể làm được cả thôi!
Với con trẻ, việc dành cho con những lời động viên cùng với sự đồng hành của bố mẹ là điều vô cùng quan trọng. Mình hay áp dụng những biện pháp như khen con, nhảy múa hay tập thể dục mỗi khi con đang học mà buồn ngủ để tinh thần con phấn chấn hơn. Ngoài ra, mình còn tập cho con tính kỷ luật bằng cách đặt ra mục tiêu mỗi ngày về phần việc mà con cần làm. Khi con hoàn thành chỉ tiêu thì sẽ được tích điểm vào quyển sổ sao để nhận được phần thưởng từ mẹ. Phần thưởng cũng không cần phải to tát gì với các bạn bé đâu, đơn giản là chiếc cặp tóc xinh xinh, hay chiếc bút chì mới là đủ tạo động lực cho các con rồi!
Bố mẹ thường nghĩ lập trình là cái gì rất cao siêu nhưng thật ra thì không phải vậy, vì bây giờ đã có những ngôn ngữ lập trình thân thiện với trẻ em như Scratch với giao diện tươi mới nhiều sắc màu, giúp các con có thể rèn luyện tư duy logic và tư duy sắp đặt không chỉ trong học tập mà còn trong cuộc sống nữa. Bố mẹ nào còn đang lăn tăn thì hãy cho con học thử lập trình tại STEAM for Vietnam ngay hôm nay để thấy được những lợi ích mà lập trình có thể mang lại cho con nhé!
– Chia sẻ từ chị Trịnh Thùy Linh – phụ huynh bé Mật Ong (4 tuổi), đang theo học khóa CS 001 – Nhập môn Tư duy máy tính và Lập trình Scratch tại STEAM for Vietnam-
— — —
“Nhật ký Lập trình” là series thuật lại những câu chuyện mà phụ huynh, học sinh, và các thầy cô chia sẻ về chặng đường theo học các khoá lập trình cùng STEAM for Vietnam.
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.
Thân chào các Thầy/Cô và đại gia đình STEAM for Vietnam,
Hè vừa qua là một mùa hè có lẽ thật khó quên với hai đứa trẻ nhà chúng mình. Một mùa hè Covid tưởng chừng sẽ buồn nhưng thật may, nhờ có khóa học lập trình CS 001 mà mùa hè đó lại là một mùa hè thật ý nghĩa, mang lại cho các con thêm trải nghiệm mới. Con Phạm Minh Khoa (10 tuổi) và bạn của con là Nguyễn Thị Thùy Dương (9 tuổi) của nhóm Star đã tham gia khóa CS 001, Trại hè lập trình 2021 và nhận được giải thưởng “Giải thiết kế độc đáo”.
Là người mẹ nhìn đứa con của mình khôn lớn và vui tươi mỗi ngày, mình thật lòng biết ơn STEAM for Vietnam rất nhiều. Các bạn, các Thầy/Cô là những người đã vẽ giấc mơ thật đẹp cho con mình, cũng như rất nhiều các bạn nhỏ khác ở Việt Nam. Cảm ơn STEAM for Vietnam vì đã lan tỏa tình yêu, niềm đam mê lập trình cho các bạn nhỏ Việt Nam.
P/s: Cô Quỳnh Anh* ơi, thật sự con mình hâm cô các thầy cô ở STEAM for Vietnam nhiều lắm. Con đã tự đặt tên tiếng anh cho mình là Justin vì hâm mộ thầy Justin Hoàng* (thầy vừa đẹp trai, vui tính và còn thiết kế giỏi). Con cũng vô cùng yêu quý các thầy cô đã dạy con suốt khóa học vừa qua như thầy Song Hà, cô Nga, cô Trang, thầy Dương và nhiều thầy cô nữa. Con cũng biết đến cả cô Joy Vũ, cô hoa hậu Phương Thủy, chị Nghi tài giỏi biết nhiều thứ tiếng nữa.
Cảm xúc của con vỡ òa khi xem clip giới thiệu về các thầy cô, con thật sự hâm mộ và lòng đầy rạo rực khi được học lập trình từ các thầy cô làm ở các công ty công nghệ hàng đầu thế giới. Và sự thật chứng minh con đã rất phấn khởi, tích cực trong suốt quá trình học bài. Con sẽ luôn dõi theo STEAM for Vietnam và các Thầy/Cô.
Chúc đội ngũ STEAM for Vietnam và các Thầy/Cô luôn mạnh khỏe, hạnh phúc và thành công trong công việc của mình. Yêu thương STEAM for Vietnam rất nhiều.
Trân trọng,
Đặng Thị Minh Huệ
*Cô Quỳnh Anh – Thành viên đội ngũ Vận hành tại STEAM for Vietnam
*Thầy Justin Hoàng – Design Lead (Trưởng đội ngũ Thiết kế) tại STEAM for Vietnam
Chia sẻ từ chị Đặng Thị Minh Huệ – phụ huynh bạn Phạm Minh Khoa (10 tuổi) – học sinh khóa CS001 Trại hè lập trình 2021-
— — —
“Nhật ký Lập trình” là series thuật lại những câu chuyện mà phụ huynh, học sinh, và các thầy cô chia sẻ về chặng đường theo học các khoá lập trình cùng STEAM for Vietnam.
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.
1. Học phần Get Started Course là gì? Tại sao cần phải hoàn thành khoá này trước khi tham gia vào khoá học.
Get Started Course là học phần tìm hiểu về hệ sinh thái công nghệ của STEAM for Vietnam (bao gồm Learning Management System – LMS, Live Apps, STEAMese Profile), được dùng để hướng dẫn và mô phỏng những giao diện trên nền tảng trong khoá học chính thức.
Get Started Course sẽ cung cấp những hướng dẫn cụ thể những thao tác mà học sinh cần biết để tham gia khoá học một cách hiệu quả: cách xem bài giảng trực tuyến, xem lại bài giảng, trả lời câu hỏi điểm danh, làm bài tập về nhà (bao gồm nộp bài tập và chấm điểm cho bạn). Điểm của học phần Get Started Course không nằm trong điểm của khoá học chính thức.
Học sinh cần hoàn thành học phần Get Started Course trước 11:59 tối ngày 3/10/2021 để tiếp tục truy cập vào các bài học chính thức của khoá học.
2. Có bắt buộc phải hoàn thành học phần Get Started Course không? Nếu không làm thì có được tham gia khoá học CS 001 không?
Các học sinh bắt buộc phải hoàn thành học phần Get Started Course thì mới có thể tiếp tục học các bài giảng tiếp theo trong khoá học. Với những học sinh chưa hoàn thành học phần Get Started Course đúng hạn, tuy rất tiếc nhưng học sinh không thể truy cập vào các bài học tiếp học của khoá học.
3. Làm thế nào để hoàn thành học phần Get Started Course?
Để hoàn thành học phầnGet Started Course, học sinh cần:
Trả lời 10 câu hỏi trắc nghiệm trong phần Quiz + Project;
Nộp đường link sau scratch.mit.edu/projects/568229548 vào phần Project Scratch (Lưu ý: Vì các con chưa được học lập trình Scratch, chưa được hướng dẫn tạo project nên chỉ cần copy và nộp đúng đường link trên để hoàn thành phần này); và
Chấm bài 5 bạn khác: Các con chọn “Bài làm hợp lệ” nếu bài của bạn khác nộp đúng đường link trên. Ngược lại, học sinh chọn “Bài làm không hợp lệ” nếu bài của bạn khác nộp không đúng đường link yêu cầu.
Lưu ý: Sau khi học sinh hoàn thành cả 3 bước trên, học sinh sẽ cần chờ một vài ngày để được hiển thị điểm và mở khoá bài học tiếp theo. Lý do cho việc cần chờ một vài ngày là vì bài của mỗi học sinh đều cần được các bạn khác chấm thì hệ thống mới có thể hiển thị được điểm cuối cùng.
4. Nộp gì cho phần “Project Scratch” trong Get Started Course? Thế nào là đường link hợp lệ?
Để mô phỏng lại cách thức nộp đường link dự án trong các bài học chính thức, phần câu hỏi trong học phần Get Started Course yêu cầu học sinh nộp đường link mẫu vào phần câu trả lời. Đường link để trả lời đã được cung cấp bởi BTC trong phần hướng dẫn: “https://scratch.mit.edu/projects/568229548”. Với câu hỏi này, học sinh chỉ cần sao chép và dán đường link này vào phần trả lời bên dưới. Bài làm có đường link hợp lệ là bài làm có đường link giống với đường link đã được BTC cung cấp như trên.
5. Làm thế nào để Chấm điểm cho bạn – Peer Assessment là gì?
Với những học sinh đã nộp đường link hợp lệ, hệ thống sẽ mở ra phần “Chấm điểm bài nộp của bạn” để học sinh có thể hoàn thành phần Chấm điểm cho bạn.
Học sinh cần phải chấm đường link cho 5 bạn khác xem bài làm có hợp lệ hay không:
Bài làm KHÔNG hợp lệ là bài làm có đường link KHÁC với đường link BTC đã cung cấp.
BTC khuyến khích các học sinh cần hoàn thành phần chấm điểm này càng sớm càng tốt, để không chỉ giúp bài của học sinh có điểm sớm (để có thể truy cập vào các nội dung tiếp học của khoá học) mà còn giúp các bạn cùng học được nhận đánh giá đầy đủ.
Đây là hình thức chấm điểm Peer Assessment, một trong những hình thức đánh giá kết quả học tập phù hợp đề cao hiệu quả trong môi trường số. Chi tiết về lý do chọn Peer Assessment cho khoá học CS001 đã được anh Hùng Trần – người sáng lập STEAM for Vietnam – chia sẻ trong bài viết sau đây.
6. Tại sao học sinh đã hoàn thành phần nộp Project Scratch và Chấm điểm cho bạn mà vẫn chưa có điểm và chưa truy cập được các bài học tiếp theo?
Sau khi học sinh nộp bài, học sinh sẽ cần chờ một vài ngày để được hiển thị điểm và mở khoá bài học tiếp theo. Lý do của việc chờ này là vì ngay tại lúc nộp bài, bài của học sinh chưa được các bạn khác chấm. Học sinh cần chờ một vài ngày để các bạn khác chấm điểm cho mình thì hệ thống mới có thể hiển thị được điểm cuối cùng.
Mọi câu hỏi thắc mắc khác về học phần Get Started Course các phụ huynh học sinh và các con học sinh có thể gửi câu hỏi lên mục “Thảo luận” (Discussion) trên hệ thống LMS, hoặc thông qua email hello@steamforvietnam.org.
— — —
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.
Trò chơi của bạn Hồ Nhật Quang (12 tuổi) vô cùng sáng tạo khi truyền tải thành công thông điệp 5K phòng chống COVID-19, mỗi màn chơi là một của bạn chính là sự tổng hợp của từng bài học trong khóa học CS 001 – đây chính là điều khiến Ban Giám khảo đánh giá rất cao khi Quang đã ghi nhớ tốt các kiến thức được thầy cô giảng dạy. Hãy cùng STEAM for Vietnam tìm hiểu câu chuyện thú vị của lập trình viên nhí đã đạt giải Xuất sắc nhất từ phụ huynh của bạn nhé!
“Nguồn cảm hứng từ người thân trong gia đình đã đưa con nhà mình đến với lập trình và STEAM for Vietnam. Con có lập một kênh Youtube để review game, vì vậy con cũng tò mò những tựa game mình thường chơi được làm ra như thế nào.
Trong quá trình thực hiện dự án, Nhật Quang đã có ý tưởng tạo một trò chơi có thể tổng kết được toàn bộ khoá học. Vì vậy con đã liên kết nhiều bài học với nhau.
Sau quá trình học hỏi và làm dự án tại STEAM for Vietnam, Nhật Quang đã học được sự kiên nhẫn trong khi học tập và làm việc. Ngoài ra, con đã biết quản lý thời gian tốt hơn để hoàn thiện dự án trong thời gian ngắn. Trải nghiệm tự làm một dự án đã giúp con hiểu hơn về lập trình và có mục tiêu cho mình trong tương lai. ”
Nhóm CODER (An Giang) – Giải Xuất sắc nhất + Giải được Yêu thích nhất
Nhóm CODER gồm bạn Trần Trung Hiếu (12 tuổi) và Trần Hoàng Long (9 tuổi) đã giành cùng lúc 2 giải thưởng từ buổi Demo Day cuối khoá với Giải Trò chơi Xuất sắc nhất và Giải được Yêu thích nhất. Trò chơi của nhóm đã rất sáng tạo khi đưa mọi người đi khám phá các địa danh của tỉnh An Giang cùng hai quần đảo Hoàng Sa và Trường Sa. Hai bạn cũng có bài thuyết trình rất tự tin và chuyên nghiệp. Chính nỗ lực này đã giúp nhóm CODER xuất sắc giành 2 giải thưởng của lớp CS 001: giải Trò chơi Xuất sắc nhất do Ban Giám khảo bình chọn và giải Yêu thích nhất do các bạn nhỏ khác bình chọn trên hệ thống STEAMese Profile.
“Trong suốt quá trình thực hiện dự án, hai anh em cùng bàn nhau phân chia công việc. Hoàng Long nhỏ hơn nên làm phần tìm kiếm thông tin về các địa danh của An Giang cùng phần nhạc nền. Còn Trung Hiếu kĩ năng tốt hơn nên làm phần nâng cao, tìm kiếm thêm ý tưởng cho dự án (biển đảo, phòng chống COVID – 19) và xử lý các lỗi phát sinh.
Sau khóa học, các con đã học thêm được rất nhiều kỹ năng hữu ích, bao gồm: Lập bản thảo và hoàn thiện ý tưởng, thuyết trình, làm việc nhóm, xử lý lỗi code.”
Nhóm Kuties Ponies (Hoa Kỳ) –Giải Trò chơi Sáng tạo
Nhóm Kutie Ponies của Bùi Nguyễn Phúc Khánh (12 tuổi) và Bùi Nguyễn An Nhiên (7 tuổi) đã xuất sắc giành Giải Trò chơi Sáng tạo với sự khen ngợi của các thầy cô STEAM for Vietnam. Ý tưởng dự án của hai em rất thú vị khi nói về hành trình thu thập các vật phẩm như khẩu trang, nước rửa tay, vaccine và tránh COVID-19. Đặc biệt, hai bạn nhỏ cũng chính là hai chị em ruột, đã cùng đồng hành và hỗ trợ lẫn nhau trong dự án lập trình này.
“Trong quá trình học tập, hai bé cũng gặp một số khó khăn. Những khái niệm về lập trình như biến, vòng lặp, tạo bản sao vẫn còn khó hiểu. Do đó, gia đình phải giải thích chi tiết, cặn kẽ cho các con và xem lại nhiều lần. Bởi vì hai bé có niềm đam mê với mỹ thuật và hoạt hình nên chị đã khuyến khích con làm game theo ý tưởng sáng tạo của riêng mình.
Gia đình rất bất ngờ và tự hào khi hai con xuất sắc nhận Giải Trò chơi Sáng tạo. Đồng thời, chị mong rằng những thành công đầu tiên này sẽ khơi gợi niềm đam mê yêu thích lập trình của hai bé. Sau khi học ở STEAM for Vietnam, hai bé không chỉ học được những kiến thức lập trình bổ ích mà còn rèn giũa các kỹ năng mềm. Con chị đã hình thành khả năng tự học và làm việc nhóm thông qua những tranh luận giữa hai chị em khi làm dự án cuối khóa.”
Nhóm Lập trình viên Việt Nam (Hà Nội, Đà Nẵng, Quảng Ngãi, Hồ Chí Minh) – Giải Nỗ lực
Các học sinh Nguyễn Tấn Hy Hữu, Lê Xuân Ngọc Mai, Nguyễn Hàng Tâm Minh và Lê Đặng Huyền Trâm đã tạo ra nhóm Lập trình viên Việt Nam và xuất sắc giành Giải Nỗ lực của khóa CS 001 trong Trại hè Lập trình 2021. Dù các thành viên đều chỉ 10 tuổi, nhóm Lập trình viên Việt Nam được ban giám khảo đánh giá cao vì sự phối hợp ăn ý khi làm việc nhóm. Ý tưởng trò chơi là đưa chúng ta tham quan 5 thành phố cũng chính là quê hương của các thành viên trong nhóm.
“Khi thực hiện dự án, bạn Trâm được phân công làm thư ký, chịu trách nhiệm chính trong việc liên lạc và tổng hợp đóng góp từ các bạn. Bạn Hữu thích lập trình nên con xung phong làm thêm các tính năng mới trong game. Còn 2 bạn Nga và Mai tìm hình backdrop cho game và test game.
Ban đầu các con đều không rõ phải làm việc nhóm online như thế nào, nhưng sau buổi họp đầu tiên, các con đã có thể tự chủ động email/meeting làm online khá ăn ý. Các bố mẹ cũng bất ngờ khi con có thể tự chủ động sắp xếp hoàn thành công việc với nhau: Tự tạo link online để meeting qua Google Meet, Zoom; tự dùng email liên lạc sắp xếp thời gian làm online; remix nhiều project trên Scratch với nhau.”
Dù các em học sinh của STEAM for Vietnam ở độ tuổi còn nhỏ thế nhưng đã rèn luyện được rất nhiều kỹ năng mềm khi hoàn thiện dự án cuối khóa. Không chỉ vậy, các em còn đạt được những thành tích đáng nhớ, làm động lực để phát triển niềm đam mê lập trình tốt hơn trong tương lai. Phụ huynh quan tâm có thể đăng ký các khóa học sắp tới vào Học kỳ Mùa thu 2021 của STEAM for Vietnam.
Học kỳ Mùa thu bắt đầu mở đơn đăng ký từ 01/09/2021 và dự kiến khai giảng vào cuối tháng 09 hoặc tháng 10/2021 (tuỳ khoá học). Hãy theo dõi fanpage của STEAM for Vietnam để cập nhập những thông tin mới nhất về khoá học nhé!
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.
Sinh ra và lớn lên tại một thị trấn nhỏ thuộc miền núi tỉnh Phú Yên, thầy cô, bạn bè và người thân xung quanh đều vẫn còn lạ lẫm với lập trình. Vì thế, con ít có cơ hội tiếp xúc với công nghệ và cộng đồng lập trình. Muôn vàn rào cản là vậy, con luôn tự tìm kiếm cơ hội để theo đuổi đam mê trở thành một kỹ sư. Chính vì thế, con đã rất vui mừng khi tìm được những khóa học lập trình của STEAM for Vietnam. Không chần chừ, con đã mạnh dạn đăng ký khoá học CS 101 – Nhập môn Khoa học Máy tính với Python của Trại hè Lập trình 2021.
Nhờ có khóa học này, con đã thành công tạo ra trò chơi Ai là Triệu Phú. Trò chơi đã nhận được Giải Trò chơi Xuất sắc nhất và Giải Được yêu thích nhất trong ngày Demo Day – Ngày hội của các Lập trình viên nhí. Chỉ trong 2 tuần trước hạn nộp dự án cuối khoá, con đã dốc toàn lực từ 2 – 3 tiếng mỗi ngày để xây dựng dự án. Do chưa quá thành thạo ngôn ngữ lập trình Python, con cũng đã gặp nhiều khó khăn. Lỗi khó nhất mà con gặp phải là ngay sau khi ấn nút “Start”, trò chơi tự động chọn đáp án cho câu hỏi số 1. Để sửa lỗi đó, con đã nghĩ ra một thuật toán ra lệnh cho trò chơi bắt đầu chỉ khi người chơi đã thả ấn chuột ra.
Trong quá trình làm trò chơi Ai là Triệu Phú, con đã có cơ hội áp dụng các kiến thức từ khoá học CS 101 – Nhập môn Khoa học Máy tính với Python để xây dựng sản phẩm cuối cùng. Con đã sử dụng Module Pygame và Module Time để hỗ trợ tạo giao diện và các thao tác giữa người dùng và trò chơi. Còn để điều khiển các thành phần trong game, con đã áp dụng lập trình hướng đối tượng. Ngoài sử dụng những kiến thức đã học, con cố gắng lên mạng để tra những câu lệnh cũng như tham khảo bạn bè và nhờ người thân chơi thử trò chơi.
Dù ở một thị trấn nhỏ ở Phú Yên, nhưng nhờ có các khóa học lập trình đẳng cấp quốc tế của STEAM for Vietnam, con có được thêm cơ hội học tập và tiếp cận với lập trình cùng thầy cô là các chuyên gia hàng đầu trong lĩnh vực lập trình. Trong thời gian tới, điều con mong muốn nhất là có thể tiếp tục học cùng STEAM for Vietnam, phát triển kỹ năng lập trình và học thêm thuật toán nâng cao để phát triển những trò chơi phức tạp và có nhiều tính năng thú vị hơn. Điều mơ ước lớn nhất của con là trở thành một kỹ sư chế tạo robot giúp đỡ mọi người xung quanh. Cùng với sự giúp đỡ của STEAM for Vietnam và nỗ lực của bản thân, con sẽ cố gắng hết mình để đạt được giấc mơ ấy.
Chia sẻ từ Đặng Kỳ Anh, học sinh khóa học CS 101 – Trại hè Lập trình 2021
— — —
“Nhật ký Lập trình” là series thuật lại những câu chuyện mà phụ huynh, học sinh, và các thầy cô chia sẻ về chặng đường theo học các khoá lập trình cùng STEAM for Vietnam.
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.
“Con rất vui vì có cơ hội rèn luyện kỹ năng thuyết trình”
Giải thưởng Thuyết trình ấn tượng (Presentation Award) đã gọi tên Nguyễn Minh Thiện (10 tuổi, TP. Hồ Chí Minh) vì sự tự tin, ngôn ngữ hình thể linh hoạt trong suốt quá trình thuyết trình về Dự án Cuối khoá Trí tuệ lập trình – trò chơi đố vui về lịch sử, toán học và lập trình. Không những được đánh giá cao về khả năng lập trình, ứng dụng linh hoạt các lệnh đã học, Minh Thiện cũng “ghi điểm” khi thuyết trình trôi chảy, dẫn dắt tự nhiên cùng bố cục bài thuyết trình hợp lý.
Phụ huynh Minh Thiện cho biết con đã say mê với Scratch từ khi học tại STEAM for Vietnam trong Trại hè Lập trình 2021, sau đó tiếp tục khám phá Python nhờ sự dẫn dắt tận tình của các thầy cô lớp CS 001 trong Trại hè Lập trình 2021. Sau hai năm học, niềm đam mê lập trình của Minh Thiện lớn dần lên, là động lực để con tích cực giao lưu cùng các bạn trong khoá học, chủ động tự học, rèn luyện kỹ năng thuyết trình để thể hiện tốt nhất trong dự án cuối khóa.
“Con rất vui vì cơ hội rèn luyện kỹ năng thuyết trình” – Nguyễn Minh Thiện
“Con được sáng tạo ra dự án mang phong cách riêng của con”
Từ chối làm theo những ý tưởng ba mẹ gợi ý, Bùi Hải Nam (10 tuổi, TP. Hồ Chí Minh) luôn suy nghĩ về một dự án cuối khoá mới lạ và theo phong cách riêng của mình. Sau hơn một tuần nỗ lực, cùng ba thức tới 12h khuya để sửa bug, hoàn thiện hơn 600 dòng code, cuối cùng Hải Nam đã thực hiện được ý tưởng của mình. Những trò chơi trên lớp của thầy cô đã được “lột xác” trong dự án Đố vui lập trình: Phiên bản Python của Hải Nam với nhiều tính năng mới để khuyến khích người chơi như thưởng điểm, thưởng tiền cực hấp dẫn, mức thưởng tăng dần theo độ khó của câu hỏi. Cậu học sinh thích đổi mới này đã xứng đáng được nhận giải thưởng Trò chơi Sáng tạo (Creative Project Award) cho dự án cuối khóa đầy tâm huyết của mình.
“Con muốn sáng tạo ra dự án mang phong cách riêng” – Bùi Hải Nam
“Con có khả năng tự học và kỹ năng giao tiếp tốt hơn”
Giải thưởng mà các bạn nhỏ khao khát nhất sau khóa học có lẽ là Giải Xuất sắc nhất (Best Performance Award) dành cho những dự án đáp ứng đủ tất cả các yếu tố: ý tưởng & lập trình sáng tạo, thiết kế đặc sắc và thuyết trình ấn tượng. Và trong Trại hè Lập trình 2021, dự án “Ai là triệu phú” của bạn Đặng Kỳ Anh (12 tuổi, Phú Yên) gây ấn tượng tuyệt đối khi nhận được cùng lúc cả hai giải thưởng: Giải Xuất sắc nhất (Best Performance Award) do Ban Giám khảo đánh giá và Giải Được yêu thích nhất (People’s Choice Award) do học sinh bình chọn với 147 lượt yêu thích trên STEAMese Profile.
Chia sẻ với STEAM for Vietnam, mẹ của Kỳ Anh cho biết con yêu thích lập trình từ sớm. Kỳ Anh đã từng tự mình loay hoay tìm cách học, không có lộ trình và người hướng dẫn bài bản. May mắn tìm được khóa học miễn phí ở STEAM for Vietnam, con rất hào hứng, mong đợi đến sáng Chủ nhật hàng tuần để được học vì thầy cô dạy tận tình và gặp nhiều bạn cùng đam mê. “Gia đình xin chân thành cảm ơn quý Thầy Cô, biết ơn chương trình đầy ý nghĩa này” – Phụ huynh chia sẻ.
“Con có khả năng tự học và kỹ năng giao tiếp tốt hơn” – Đặng Kỳ Anh
KẾT LUẬN
“Giáo dục không phải là đổ đầy bình nước mà là thắp sáng ngọn lửa ham học” (William Butler Yeats)
Với định hướng đó, các lớp học tại STEAM for Vietnam không chỉ nhằm mục đích truyền tải kiến thức lập trình cho các bạn học sinh, mà là môi trường học tập hiện đại, tích cực. Thầy cô luôn tôn trọng và giúp các em nuôi dưỡng đam mê lập trình, mài giũa tư duy logic cùng các kỹ năng mềm hữu ích.
Tiếp nối thành công của các học kỳ trước, STEAM for Vietnam chính thức mở đơn đăng ký cho Học kỳ Mùa thu 2021 với ba lớp học trực tuyến miễn phí, bao gồm:
Các khóa học dự kiến sẽ diễn ra theo hình thức livestream trực tuyến vào sáng Thứ bảy hoặc Chủ nhật hàng tuần, khai giảng vào cuối tháng 09/2021 hoặc cuối tháng 10/2021 (tùy theo khoá học) và dự kiến kết thúc vào cuối tháng 12/2021.
Thời hạn đăng ký: 01/09/2021 – 15/09/2021 (gia hạn đến tháng 10/2021)
— — —
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.
STEAM for Vietnam: Chào chị, chị có thể chia sẻ về dự án cuối khóa của team Among Us được không ạ?
Chị Mỹ Hạnh (phụ huynh bé Thiên Thanh): Xin chào STEAM for Vietnam, trước tiên mình xin thay mặt các phụ huynh và các bé nhóm Among Us gửi lời cảm ơn đến Tổ chức vì đã đem đến cho các con khóa học thật lý thú.
Học kỳ vừa qua, khi biết đến STEAM for Vietnam qua lời giới thiệu của chị Bích Lý – mẹ của bé Khôi Nguyên, các mẹ đã quyết định đăng ký cho các con cùng học với nhau. Thật may mắn vì các con đã chơi thân với nhau từ trước nên trong quá trình học, cả nhóm thường xuyên trao đổi bài học với nhau. Đến dự án cuối khóa, khi biết chương trình cho phép làm nhóm, các con háo hức rủ nhau cùng thực hiện chung 1 dự án luôn!
Chị Bích Lý (phụ huynh bé Khôi Nguyên): Dự án cuối khóa tại STEAM for Vietnam chính là lần đầu tiên các con được làm việc nhóm (teamwork) một cách đúng nghĩa. Các con tự bàn bạc và trao đổi với nhau qua phần mềm Microsoft Teams, bạn nào giỏi phần nào nhất sẽ nhận phần việc của mình và cùng nhau cố gắng để hoàn thành thật tốt.
Chị Mỹ Hạnh (phụ huynh bé Thiên Thanh): Theo mình đánh giá, học nhóm là một phương pháp mang lại rất nhiều hiệu quả cho các con. Khi có bài nào khó, các con có thể trao đổi với nhau, tự động viên nhau không được nản lòng mà cùng nhau học tập. Đối với dự án cuối khóa này, mình thấy việc để cho các con làm nhóm là một lựa chọn rất đúng đắn, giúp các bé phát huy được thế mạnh của riêng mình. Ví dụ như: Thiên Thanh mạnh về phần coding thì sẽ phụ trách phần chủ đề, bạn Khánh Linh giỏi tiếng Anh nên sẽ phụ trách phần dịch,…
(Còn tiếp)
– Chia sẻ từ chị Bùi Phan Mỹ Hạnh – Phụ huynh bé Châu Ngọc Thiên Thanh và chị Nguyễn Thị Bích Lý – Phụ huynh bé Trịnh Khôi Nguyên – học sinh lớp CS001 Khóa học mùa hè Summer Bootcamp 2021.
— — —
“Nhật ký Lập trình” là series thuật lại những câu chuyện mà phụ huynh, học sinh, và các thầy cô chia sẻ về chặng đường theo học các khoá lập trình cùng STEAM for Vietnam.
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.