Appearance
Scratch: bật, cài trình soạn, hạn mức
Module ScratchStudio đưa trình soạn Scratch 3 vào LMS: học sinh có Xưởng Scratch riêng và làm hoạt động Lập trình Scratch trong bài học; giáo viên soạn mẫu, xem lưới bài làm, chấm. Mọi dự án, ảnh, âm thanh của học sinh nằm trên máy chủ của tổ chức — không có dữ liệu nào đi ra MIT.
Bật cho tổ chức
Bật module ScratchStudio (tenant tạo theo mẫu Trường phổ thông / Trung tâm đào tạo / Nền tảng online đã bật sẵn). Module cần CourseManagement, Learnspace, UserManagement — đều là lõi, luôn có.
Trình soạn là một bản phát hành riêng (repo công khai codegym-vn/nextlms-scratch) cài vào máy chủ lúc dựng bản, không phải cấu hình trong tổ chức. Nếu mục Xưởng Scratch không hiện ở Learnspace và trang bài học báo "Trình soạn Scratch chưa được cài" thì máy chủ chưa cài — báo đội vận hành (lệnh php artisan scratch:install-editor, chi tiết trong tài liệu triển khai).
Cài đặt → Học tập → Xưởng Scratch
| Ô | Ý nghĩa | Mặc định |
|---|---|---|
| Bật xưởng tự do | Học sinh tạo dự án ngoài bài học. Tắt thì Scratch chỉ xuất hiện trong hoạt động; người đã có dự án vẫn mở/tải về/dọn thùng rác được, chỉ mất tạo mới. Tắt cũng làm mục Xưởng Scratch biến khỏi menu của người chưa có dự án nào (xem Mục menu hiện ở đâu). | Bật |
| Dung lượng mỗi người | Tổng dự án + tài nguyên tự tải lên; nhân vật thư viện không tính. Thùng rác vẫn tính — xoá vĩnh viễn mới giải phóng. | 200 MB |
| Trần một dự án | Kích thước tối đa của phần chương trình (không gồm ảnh/âm thanh). | 10 MB |
| Trần một tệp | Ảnh/âm thanh tải lên tối đa. | 10 MB |
| Tự lưu mỗi | Chu kỳ trình soạn tự lưu khi có thay đổi. | 60 giây |
Quyền pane: configure_scratch_studio (Admin có sẵn).
Mục "Xưởng Scratch" hiện ở đâu
Mục Xưởng Scratch của Learnspace không cố định một chỗ. Nó tuỳ vào trình soạn, ô Bật xưởng tự do, và việc người đó đã có dự án hay chưa:
| Tình huống | Học sinh thấy |
|---|---|
| Máy chủ chưa cài trình soạn | Không có mục nào, với mọi người |
| Đã có ít nhất một dự án (kể cả dự án trong thùng rác) | Mục nằm trên sidebar Learnspace, bất kể ô Bật xưởng tự do |
| Chưa có dự án nào, xưởng tự do bật | Mục rời sidebar, nằm ở trang Khám phá thêm (/learnspace/discover) kèm một dòng mô tả |
| Chưa có dự án nào, xưởng tự do tắt | Không có mục nào |
Bài làm của hoạt động Lập trình Scratch cũng là một dự án, nên học sinh mở bài Scratch đầu tiên trong khoá học là mục quay về sidebar. Học sinh hỏi "không thấy Xưởng Scratch" thì kiểm theo đúng thứ tự trong bảng.
Bộ mẫu sẵn cho kho mẫu
Hệ thống có sẵn 30 dự án mẫu (5 bậc: làm quen → tuần tự & lặp → rẽ nhánh & sự kiện → biến/danh sách/khối tự tạo → trò chơi & mô phỏng; mỗi mẫu kèm ghi chú "Bài tập" 3 ý cho học sinh). Chúng không tự xuất hiện — nhờ đội vận hành chèn bộ mẫu cho tổ chức của bạn; sau đó chúng nằm trong Kho mẫu dưới tên tài khoản admin đầu tiên của tổ chức và là mẫu thường: giáo viên dùng, admin gỡ/sửa như mọi mẫu khác. Chèn lại lần nữa không tạo bản thứ hai, và mẫu đã gỡ hay đã đưa vào thùng rác không quay lại (xoá vĩnh viễn rồi thì mới được tạo lại).
Quyền chấm bài
Người sửa được khoá học chấm được bài Scratch của khoá đó. Vai trò không sở hữu khoá cần quyền Chấm bài làm Scratch (grade_scratch_activity) — mặc định có ở Trainer, Trợ giảng, Giáo viên bộ môn, Giáo viên chủ nhiệm, Course manager; role tự tạo thì tick trong Phân quyền.
Dung lượng máy chủ
Mỗi học sinh tối đa theo hạn mức; 500 học sinh dùng hết 200 MB là 100 GB. Ảnh/âm thanh trùng nhau giữa các học sinh (cùng một tệp) chỉ lưu một lần; nhân vật thư viện không tốn chỗ. Điều chỉnh hạn mức trước khi mở cho toàn trường.
Giấy phép và tên gọi
Trình soạn dùng mã nguồn Scratch (Scratch Foundation, giấy phép AGPL-3.0) nguyên vẹn qua một trang nhúng công khai; LMS chỉ lưu dự án. Không dùng logo Scratch hay hình mèo Scratch trong tài liệu, trang giới thiệu của tổ chức — "Scratch" chỉ được nhắc như tên ngôn ngữ lập trình. Màn hình Giới thiệu trong trình soạn ghi "Based on Scratch from the MIT Media Laboratory" và link mã nguồn; giữ nguyên.
Sự cố thường gặp
| Dấu hiệu | Nguyên nhân | Xử lý |
|---|---|---|
| Không thấy "Xưởng Scratch", trang bài học báo chưa cài | Máy chủ chưa cài trình soạn | Đội vận hành chạy scratch:install-editor / dựng lại bản |
| Học sinh không lưu được, báo hết dung lượng | Đầy hạn mức | Học sinh xoá vĩnh viễn dự án trong thùng rác, hoặc nâng hạn mức |
| Nhân vật thư viện hiện ô trắng | Bản sao thư viện thiếu tệp (đổi phiên bản trình soạn) | Cài lại đúng phiên bản; dự án cũ vẫn lưu được |
| Giáo viên vào lưới bài làm bị 403 | Không sở hữu khoá và thiếu grade_scratch_activity | Cấp quyền cho role |
| Mở mẫu vừa chèn báo "project.json … không đọc được" hoặc "missing" | Bộ mẫu được chèn với quyền ghi file sai trên máy chủ | Nhờ đội vận hành sửa quyền thư mục dự án Scratch của tổ chức; không cần chèn lại |
Quản lý dự án của người dùng
Menu Khoá học → Dự án Scratch liệt kê mọi dự án trong tenant (chủ, hoạt động, dung lượng, đã nộp, lần sửa cuối). Quản trị viên không sửa nội dung — chỉ xem, Chạy, đưa vào thùng rác, khôi phục, xoá vĩnh viễn. Cột Khoá xoá vĩnh viễn cho biết vì sao một dòng không xoá vĩnh viễn được: đang là mẫu của một hoạt động, hoặc là bài đã nộp của người học cho một hoạt động còn tồn tại (kể cả trong thùng rác). Khoá này áp cho cả quản trị viên; muốn xoá phải gỡ mẫu khỏi hoạt động hoặc xoá vĩnh viễn hoạt động trước.
Xoá vĩnh viễn giải phóng dung lượng của chủ dự án ngay (tệp và tài nguyên chỉ dự án đó dùng). Quyền: *_scratch_project — mặc định chỉ vai trò admin.
Dọn thùng rác tự động (Cài đặt chung → Dọn thùng rác) áp dụng cả dự án Scratch khi tenant bật; dự án bị khoá không bao giờ bị dọn tự động.
Tài nguyên mồ côi (ảnh/âm thanh không dự án nào còn dùng, vd tải lên rồi không lưu): đội vận hành chạy php artisan tenants:run scratch:prune-assets --pretend để đếm, bỏ --pretend để xoá.