Nhóm Blockly có nhiều năm kinh nghiệm thiết kế các ứng dụng giáo dục. Sau đây là một số điều mà họ đã học được và có thể giúp bạn thiết kế ứng dụng giáo dục của riêng mình.
Ưu tiên bài tập tự do hơn là bài tập điền vào chỗ trống
Các bài tập được thiết kế để dạy một khái niệm cụ thể thường cung cấp giải pháp một phần mà học viên cần sửa đổi để đạt được hiệu quả mong muốn. Một lớp gồm các khối không thể chỉnh sửa, không thể di chuyển và không thể xoá đã được tạo trong Blockly để hỗ trợ việc này. Tuy nhiên, học viên không thích những bài tập điền vào chỗ trống này. Họ không cảm thấy có quyền sở hữu đối với giải pháp.
Việc thiết kế các bài tập tự do dạy cùng một khái niệm sẽ khó khăn hơn. Một kỹ thuật đã được chứng minh là thành công là sử dụng giải pháp của chính học viên cho một bài tập làm điểm bắt đầu cho bài tập tiếp theo.
Đề xuất: Đừng viết mã cho người dùng.
Sử dụng chỉ dẫn liên tục
Blockly Games được thiết kế đặc biệt để người dùng tự học mà không cần giáo viên hoặc kế hoạch giảng dạy. Để đạt được điều này, phiên bản đầu tiên của Blockly Games có hướng dẫn ở mỗi cấp độ. Hầu hết học viên sẽ không đọc chúng. Chúng tôi đã rút gọn thành một câu, tăng cỡ chữ và làm nổi bật trong một bong bóng màu vàng. Hầu hết học viên sẽ không đọc những thông tin này. Chúng tôi đã tạo cửa sổ bật lên phương thức kèm theo hướng dẫn. Hầu hết học viên đều đóng các cửa sổ bật lên một cách bản năng mà không đọc chúng, sau đó họ không biết phải làm gì.
Cuối cùng, chúng tôi đã tạo ra những cửa sổ bật lên không thể đóng. Chúng được lập trình để theo dõi hành động của học viên và chỉ đóng khi học viên đã thực hiện hành động bắt buộc. Rất khó để lập trình các cửa sổ bật lên nhận biết theo ngữ cảnh này, nhưng chúng lại khá hiệu quả. Điều quan trọng nữa là các thiết bị này phải nằm trong tầm nhìn mà không gây cản trở không gian làm việc.
Đề xuất: Hướng dẫn nên ngắn gọn và xuất hiện liên tục nhưng không gây khó chịu.
Sử dụng hình ảnh khối trực tiếp trong phần trợ giúp
Tài liệu về các khối phải có hình ảnh của các khối mà tài liệu đó đề cập đến. Bạn có thể dễ dàng chụp ảnh màn hình. Nhưng nếu có 50 hình ảnh như vậy và ứng dụng được dịch sang 50 ngôn ngữ, thì đột nhiên bạn phải duy trì 2.500 hình ảnh tĩnh. Sau đó, bảng phối màu thay đổi và 2.500 hình ảnh cần được cập nhật – một lần nữa.
Để thoát khỏi cơn ác mộng bảo trì này, Blockly Games đã thay thế tất cả ảnh chụp màn hình bằng các phiên bản Blockly chạy ở chế độ chỉ đọc. Kết quả trông giống hệt một bức ảnh, nhưng chắc chắn là thông tin mới nhất. Chế độ chỉ đọc đã giúp việc quốc tế hoá trở nên khả thi.
Đề xuất: Nếu bạn hỗ trợ nhiều ngôn ngữ, hãy sử dụng chế độ chỉ đọc.
Có chiến lược rút lui cho học viên
Lập trình dựa trên khối thường là điểm bắt đầu cho việc lập trình. Trong bối cảnh giảng dạy lập trình máy tính, đây là một chất gây nghiện khiến học viên nghiện trước khi chuyển sang những thứ khó hơn. Thời gian lập trình dựa trên khối này nên kéo dài bao lâu cho học viên là vấn đề gây nhiều tranh cãi, nhưng nếu mục tiêu của bạn là dạy lập trình thì thời gian này chỉ nên là tạm thời.
Do đó, môi trường lập trình dựa trên khối dùng để dạy lập trình phải có một lối thoát phù hợp với học viên. Blockly Games có 4 chiến lược:
Tất cả văn bản trên các khối (ví dụ: "if", "while") đều là chữ thường để khớp với các ngôn ngữ lập trình dựa trên văn bản.
Phiên bản JavaScript của mã học viên luôn xuất hiện sau mỗi cấp độ để tăng độ quen thuộc.
Trong trò chơi gần cuối, văn bản khối sẽ được thay thế bằng JavaScript thực tế (như minh hoạ ở bên phải). Tại thời điểm này, học viên đang lập trình bằng JavaScript.
Trong trò chơi cuối cùng, trình chỉnh sửa khối sẽ được thay thế bằng trình chỉnh sửa văn bản.
Môi trường lập trình dựa trên khối dùng để dạy lập trình cần có một kế hoạch cụ thể để giúp học viên tiến bộ. Một chiến lược thoát vững chắc cũng sẽ giúp xoa dịu những người cho rằng lập trình dựa trên khối không phải là "lập trình thực sự".
Đề xuất: Cân nhắc mục tiêu cuối cùng của người dùng và thiết kế cho phù hợp.