800 Peserta, 1 Mentor: Gimana Mastiin Mereka Praktek?
Cerita gimana gue handle assessment 800+ peserta shortcourse dengan bikin PDF similarity checker pakai TF-IDF dan cosine similarity.
Di artikel sebelumnya gue cerita soal pengalaman jadi mentor shortcourse AI for Future Software Engineers. Nah artikel ini fokus ke satu masalah spesifik yang muncul: gimana caranya mastiin 800+ peserta beneran praktek, bukan cuma jadi penonton pasif.
Masalahnya
Shortcourse ini online, pesertanya 800+ orang. Format webinar 3 jam per sesi. Lo bisa bayangin, di setting kayak gini gampang banget buat peserta cuma “hadir” tapi gak ngapa-ngapain. Buka tab, mute, lanjut main game.
Padahal inti dari course ini bukan teori. Gue mau mereka dapet pengalaman langsung pakai AI. Rasain sendiri gimana nulis prompt yang bagus, gimana debugging pakai AI, gimana workflow-nya. Pengalaman ini gak bisa digantikan cuma dengan dengerin orang ngomong.
Solusi Awal: Kasih Tugas, Kumpulin PDF
Pendekatan paling straightforward: setiap sesi ada deliverable yang harus dikumpulkan dalam bentuk PDF.
Day 1 misalnya, tugas mereka bikin Prompt Library untuk kebutuhan akademik. Day 2 bikin mini coding exercise pakai AI. Day 3 bikin project planning document. Semua dikumpulin ke Google Form sebagai PDF.
Tapi ini langsung munculin masalah berikutnya.
Problem: 800 PDF, 1 Orang
Gak mungkin gue baca 800 PDF satu per satu. Bahkan kalau cuma skim 2 menit per file, itu 1.600 menit. Hampir 27 jam. Per sesi. Gue bukan robot.
Tapi gue juga gak mau asal kasih nilai rata tanpa verifikasi apapun. Kalau gitu buat apa ada tugas.
Yang Gue Bilang ke Peserta
Sebelum bikin solusi teknis, gue komunikasiin dulu ke peserta:
“Tugas ini bukan soal nilai. Gue gak peduli lo dapet berapa. Goal-nya adalah mastiin kamu beneran nyoba sendiri. Kalau kamu cuma copy-paste dari temen, kamu yang rugi karena gak dapet pengalamannya.”
Ini penting. Ekspektasi harus di-set dari awal. Gue bukan dosen yang obsesif soal grading. Tapi gue tetap perlu cara buat verify bahwa mereka minimal udah nyoba.
Solusinya: PDF Similarity Checker
Akhirnya gue bikin tool sederhana. Konsepnya: bandingin isi semua PDF yang dikumpulin, flag yang terlalu mirip satu sama lain.
Stacknya:
- PyMuPDF buat extract text dari PDF (plus OCR fallback pakai Tesseract kalau PDF-nya image-based)
- TF-IDF Vectorization dengan bigrams buat represent setiap dokumen sebagai vector
- Cosine Similarity buat hitung kemiripan antar dokumen
- Multiprocessing buat handle 800+ file tanpa nunggu seharian
Flow-nya simpel:
Scan directory PDF
↓
Extract text (parallel)
↓
Clean & normalize
↓
TF-IDF vectorize
↓
Compute similarity matrix
↓
Flag pairs above threshold
Kenapa TF-IDF + Cosine?
Beberapa orang mungkin mikir, kenapa gak pakai diff biasa atau string matching? Karena copy-paste itu jarang 100% identik. Biasanya ada variasi: beda nama, beda urutan, beberapa kata diganti. TF-IDF + cosine similarity robust terhadap variasi kayak gini. Dia capture “makna” dokumen, bukan exact string match.
Bigrams (pasangan 2 kata) juga ngebantu detect kalau seseorang copy paragraf utuh tapi ngubah 1-2 kata di sana-sini.
Hasil
Ini yang menarik. Di Day 1 dan Day 2, sebelum gue announce soal tool ini, ada sekitar 15% submission yang kedetect similar. Mereka terbagi ke beberapa cluster (kelompok yang isinya mirip satu sama lain).
Lalu di Day 3, gue mention ke peserta: “By the way, gue punya tool buat cek kemiripan antar submission kalian.”
Hasilnya drastis. Di final submission, yang kedetect similar cuma kurang dari 20 orang dari 800+ peserta. Drop signifikan.
Yang penting: mayoritas peserta memang nyoba sendiri sejak awal. Dan yang sebelumnya “nebeng”, begitu tau ada checker, langsung usaha sendiri. Toolnya lebih berfungsi sebagai deterrent daripada sebagai penghukum.
Bukan Soal Nilai
Gue harus tekanin lagi: goal gue bukan ngasih punishment ke yang mirip. Gue cuma mau data. Dan data-nya nunjukin pattern yang jelas: begitu orang tau ada accountability, perilaku berubah.
Dari 15% yang similar di awal turun ke kurang dari 20 orang di akhir. Itu bukan karena ancaman hukuman. Itu karena mereka sadar kalau shortcut gak ada gunanya di context ini. Pengalaman praktek-nya yang valuable, bukan nilainya.
Transparansi Sebagai Deterrent
Satu hal yang gue learn: kadang lo gak perlu enforcement yang ketat. Cukup bilang “gue punya tool buat cek kemiripan” dan kebanyakan orang udah jadi honest.
Ini mirip prinsip CCTV. Banyak CCTV di toko itu dummy. Tapi efek deterrent-nya nyata. Orang tau ada kamera, perilaku berubah.
Tool-nya Open Source
Gue publish tool-nya di GitHub: pdf-similarity-checker. Kalau kamu punya use case serupa (cek plagiarism tugas, compare dokumen, dll), silakan pakai atau modifikasi.
Tech stack-nya cuma Python, scikit-learn, dan PyMuPDF. Gak butuh GPU, gak butuh cloud. Laptop biasa cukup buat handle ratusan PDF dalam hitungan detik.
Kesimpulan
Ngajar 800+ orang itu challenging. Tapi dengan kombinasi yang tepat antara komunikasi (set ekspektasi), teknologi (automation buat verification), dan trust (percaya mereka dewasa), hasilnya bisa bagus.
Goal gue dari course ini simpel: materi yang gue share jadi referensi dan framework yang bisa mereka pakai kedepannya. Sukur-sukur pola mereka pakai AI jadi lebih intentional, gak asal copy-paste.
Dan dari data yang gue liat, mayoritas memang dapet sesuatu dari course ini. Itu cukup buat gue.