# Format CSV dan header Python · SMP · Lanjutan · Sesi 9 · 60 menit Proyek: Mesin Rekomendasi Buku ## 1. Format CSV dan header · 3 menit SMP · Lanjutan, sesi 9; proyek Mesin Rekomendasi Buku, sesi 1–16. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat membaca input, memakai kondisi dan loop, menulis fungsi berparameter dengan return, mengolah list/dictionary, serta menyimpan dan memuat JSON. Audit dua sesi awal memberi penguatan terarah. Dukungan: Mentor memberi satu contoh kecil, lalu siswa memprediksi, mencoba variasi, dan menjelaskan hasil. Pada Lanjutan, gunakan pertanyaan serta petunjuk bertahap; periksa fondasi sebelum GUI. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Minimum proyek: Pemberi rekomendasi terminal yang menjelaskan skor dari preferensi pengguna. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Mesin Rekomendasi Buku dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Mesin Rekomendasi Buku. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Pembelajaran · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 10 menit → Persiapan sumber 3 menit → Praktik 27 menit → Uji dan revisi 10 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Baca CSV sintetis menggunakan csv.DictReader Bukti pemahaman: Gunakan satu input/data baru yang belum dicontohkan; tulis hasil harapan, jalankan dan jelaskan baris penyebabnya. Pengayaan: Setelah target inti tercapai, ubah satu data atau batas input pada kegiatan format csv dan header; prediksi hasil dan tambahkan bukti pemeriksaan. Estimasi tugas mandiri: 11–19 menit. Mengerjakan dan mencoba variasi; uji formal serta penyimpanan memiliki slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 3 menit di dalam alur sesi, bukan tambahan. ## 2. Hari ini kita dapat… · 2 menit SMP · Lanjutan, sesi 9; proyek Mesin Rekomendasi Buku, sesi 1–16. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat membaca input, memakai kondisi dan loop, menulis fungsi berparameter dengan return, mengolah list/dictionary, serta menyimpan dan memuat JSON. Audit dua sesi awal memberi penguatan terarah. Dukungan: Mentor memberi satu contoh kecil, lalu siswa memprediksi, mencoba variasi, dan menjelaskan hasil. Pada Lanjutan, gunakan pertanyaan serta petunjuk bertahap; periksa fondasi sebelum GUI.Target kurikulum: Mampu menjelaskan dan menerapkan format csv dan header Target khusus: Mampu menjelaskan dan menerapkan format csv dan header [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Minimum proyek: Pemberi rekomendasi terminal yang menjelaskan skor dari preferensi pengguna. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Mesin Rekomendasi Buku dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Mesin Rekomendasi Buku. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Pembelajaran · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 10 menit → Persiapan sumber 3 menit → Praktik 27 menit → Uji dan revisi 10 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Baca CSV sintetis menggunakan csv.DictReader Bukti pemahaman: Gunakan satu input/data baru yang belum dicontohkan; tulis hasil harapan, jalankan dan jelaskan baris penyebabnya. Pengayaan: Setelah target inti tercapai, ubah satu data atau batas input pada kegiatan format csv dan header; prediksi hasil dan tambahkan bukti pemeriksaan. Estimasi tugas mandiri: 11–19 menit. Mengerjakan dan mencoba variasi; uji formal serta penyimpanan memiliki slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 2 menit di dalam alur sesi, bukan tambahan. Menyelesaikan tugas inti: Format CSV dan header. Mencoba satu perubahan dan menjelaskan hasilnya. Menunjukkan bagian yang dikerjakan sendiri. ## 3. Pahami konsepnya · 5 menit SMP · Lanjutan, sesi 9; proyek Mesin Rekomendasi Buku, sesi 1–16. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat membaca input, memakai kondisi dan loop, menulis fungsi berparameter dengan return, mengolah list/dictionary, serta menyimpan dan memuat JSON. Audit dua sesi awal memberi penguatan terarah. Dukungan: Mentor memberi satu contoh kecil, lalu siswa memprediksi, mencoba variasi, dan menjelaskan hasil. Pada Lanjutan, gunakan pertanyaan serta petunjuk bertahap; periksa fondasi sebelum GUI. DictReader memakai header sebagai nama field. Periksa header sebelum memproses baris. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Minimum proyek: Pemberi rekomendasi terminal yang menjelaskan skor dari preferensi pengguna. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Mesin Rekomendasi Buku dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Mesin Rekomendasi Buku. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Pembelajaran · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 10 menit → Persiapan sumber 3 menit → Praktik 27 menit → Uji dan revisi 10 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Baca CSV sintetis menggunakan csv.DictReader Bukti pemahaman: Gunakan satu input/data baru yang belum dicontohkan; tulis hasil harapan, jalankan dan jelaskan baris penyebabnya. Pengayaan: Setelah target inti tercapai, ubah satu data atau batas input pada kegiatan format csv dan header; prediksi hasil dan tambahkan bukti pemeriksaan. Estimasi tugas mandiri: 11–19 menit. Mengerjakan dan mencoba variasi; uji formal serta penyimpanan memiliki slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 5 menit di dalam alur sesi, bukan tambahan. DictReader memakai header sebagai nama field. Periksa header sebelum memproses baris. ## 4. Telusuri kode sebelum menjalankan · 2 menit SMP · Lanjutan, sesi 9; proyek Mesin Rekomendasi Buku, sesi 1–16. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat membaca input, memakai kondisi dan loop, menulis fungsi berparameter dengan return, mengolah list/dictionary, serta menyimpan dan memuat JSON. Audit dua sesi awal memberi penguatan terarah. Dukungan: Mentor memberi satu contoh kecil, lalu siswa memprediksi, mencoba variasi, dan menjelaskan hasil. Pada Lanjutan, gunakan pertanyaan serta petunjuk bertahap; periksa fondasi sebelum GUI.variant memilih kasus 0 atau 1. value menjadi hasil aktual; expected adalah oracle pada pembungkus uji. Fokus pada bagian KONSEP. Helper dan mock disediakan agar input serta widget dapat diuji berulang. Prediksi kasus A: "Sains"; B: "Seni". Jangan tampilkan jawaban sebelum siswa memprediksi. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Minimum proyek: Pemberi rekomendasi terminal yang menjelaskan skor dari preferensi pengguna. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Mesin Rekomendasi Buku dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Mesin Rekomendasi Buku. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Pembelajaran · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 10 menit → Persiapan sumber 3 menit → Praktik 27 menit → Uji dan revisi 10 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Baca CSV sintetis menggunakan csv.DictReader Bukti pemahaman: Gunakan satu input/data baru yang belum dicontohkan; tulis hasil harapan, jalankan dan jelaskan baris penyebabnya. Pengayaan: Setelah target inti tercapai, ubah satu data atau batas input pada kegiatan format csv dan header; prediksi hasil dan tambahkan bukti pemeriksaan. Estimasi tugas mandiri: 11–19 menit. Mengerjakan dan mencoba variasi; uji formal serta penyimpanan memiliki slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 2 menit di dalam alur sesi, bukan tambahan. ## 5. Siapkan lab dan proyekmu · 3 menit SMP · Lanjutan, sesi 9; proyek Mesin Rekomendasi Buku, sesi 1–16. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat membaca input, memakai kondisi dan loop, menulis fungsi berparameter dengan return, mengolah list/dictionary, serta menyimpan dan memuat JSON. Audit dua sesi awal memberi penguatan terarah. Dukungan: Mentor memberi satu contoh kecil, lalu siswa memprediksi, mencoba variasi, dan menjelaskan hasil. Pada Lanjutan, gunakan pertanyaan serta petunjuk bertahap; periksa fondasi sebelum GUI. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Minimum proyek: Pemberi rekomendasi terminal yang menjelaskan skor dari preferensi pengguna. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Mesin Rekomendasi Buku dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Mesin Rekomendasi Buku. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Pembelajaran · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 10 menit → Persiapan sumber 3 menit → Praktik 27 menit → Uji dan revisi 10 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Baca CSV sintetis menggunakan csv.DictReader Bukti pemahaman: Gunakan satu input/data baru yang belum dicontohkan; tulis hasil harapan, jalankan dan jelaskan baris penyebabnya. Pengayaan: Setelah target inti tercapai, ubah satu data atau batas input pada kegiatan format csv dan header; prediksi hasil dan tambahkan bukti pemeriksaan. Estimasi tugas mandiri: 11–19 menit. Mengerjakan dan mencoba variasi; uji formal serta penyimpanan memiliki slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 3 menit di dalam alur sesi, bukan tambahan. Ekstrak ZIP, lalu Open Folder di VS Code. Pilih interpreter; buka terminal terintegrasi. Jalankan python latihan.py 0 atau 1. ## 6. Acuan: Mesin Rekomendasi Buku · 1 menit SMP · Lanjutan, sesi 9; proyek Mesin Rekomendasi Buku, sesi 1–16. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat membaca input, memakai kondisi dan loop, menulis fungsi berparameter dengan return, mengolah list/dictionary, serta menyimpan dan memuat JSON. Audit dua sesi awal memberi penguatan terarah. Dukungan: Mentor memberi satu contoh kecil, lalu siswa memprediksi, mencoba variasi, dan menjelaskan hasil. Pada Lanjutan, gunakan pertanyaan serta petunjuk bertahap; periksa fondasi sebelum GUI.Contoh proyek: Pemberi rekomendasi terminal yang menjelaskan skor dari preferensi pengguna. Baca README untuk cakupan dan perintah. Untuk aplikasi berjendela, screenshot berasal dari HWND Tk milik contoh; untuk terminal, screenshot menunjukkan lab sesi terkait, bukan layar aplikasi GUI. Demo proyek menjalankan assertion konsep inti. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Minimum proyek: Pemberi rekomendasi terminal yang menjelaskan skor dari preferensi pengguna. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Mesin Rekomendasi Buku dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Mesin Rekomendasi Buku. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Pembelajaran · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 10 menit → Persiapan sumber 3 menit → Praktik 27 menit → Uji dan revisi 10 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Baca CSV sintetis menggunakan csv.DictReader Bukti pemahaman: Gunakan satu input/data baru yang belum dicontohkan; tulis hasil harapan, jalankan dan jelaskan baris penyebabnya. Pengayaan: Setelah target inti tercapai, ubah satu data atau batas input pada kegiatan format csv dan header; prediksi hasil dan tambahkan bukti pemeriksaan. Estimasi tugas mandiri: 11–19 menit. Mengerjakan dan mencoba variasi; uji formal serta penyimpanan memiliki slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 1 menit di dalam alur sesi, bukan tambahan. Buka contoh proyek sebagai folder terpisah. Jalankan python demo.py terlebih dahulu. Terapkan tugas pada proyek siswa. ## 7. Praktik bersama mentor · 8 menit SMP · Lanjutan, sesi 9; proyek Mesin Rekomendasi Buku, sesi 1–16. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat membaca input, memakai kondisi dan loop, menulis fungsi berparameter dengan return, mengolah list/dictionary, serta menyimpan dan memuat JSON. Audit dua sesi awal memberi penguatan terarah. Dukungan: Mentor memberi satu contoh kecil, lalu siswa memprediksi, mencoba variasi, dan menjelaskan hasil. Pada Lanjutan, gunakan pertanyaan serta petunjuk bertahap; periksa fondasi sebelum GUI.Demo kurikulum: Di VS Code, peragakan contoh minimum untuk Baca CSV sintetis menggunakan csv.DictReader. Minta prediksi sebelum menjalankan dan bandingkan dengan setiap kolom dikenali dari header Tugas rinci: Baca CSV sintetis menggunakan csv.DictReader Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Minimum proyek: Pemberi rekomendasi terminal yang menjelaskan skor dari preferensi pengguna. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Mesin Rekomendasi Buku dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Mesin Rekomendasi Buku. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Pembelajaran · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 10 menit → Persiapan sumber 3 menit → Praktik 27 menit → Uji dan revisi 10 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Baca CSV sintetis menggunakan csv.DictReader Bukti pemahaman: Gunakan satu input/data baru yang belum dicontohkan; tulis hasil harapan, jalankan dan jelaskan baris penyebabnya. Pengayaan: Setelah target inti tercapai, ubah satu data atau batas input pada kegiatan format csv dan header; prediksi hasil dan tambahkan bukti pemeriksaan. Estimasi tugas mandiri: 11–19 menit. Mengerjakan dan mencoba variasi; uji formal serta penyimpanan memiliki slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 8 menit di dalam alur sesi, bukan tambahan. Prediksi value saat variant = 0. Jalankan kasus A; tunjuk baris penyebab hasilnya. Mentor mencontohkan satu bagian tugas proyek. ## 8. Contoh pengerjaan: kasus A · 1 menit SMP · Lanjutan, sesi 9; proyek Mesin Rekomendasi Buku, sesi 1–16. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat membaca input, memakai kondisi dan loop, menulis fungsi berparameter dengan return, mengolah list/dictionary, serta menyimpan dan memuat JSON. Audit dua sesi awal memberi penguatan terarah. Dukungan: Mentor memberi satu contoh kecil, lalu siswa memprediksi, mencoba variasi, dan menjelaskan hasil. Pada Lanjutan, gunakan pertanyaan serta petunjuk bertahap; periksa fondasi sebelum GUI.Hasil awal yang diuji di Python: "Sains". Cocokkan angka, tipe, dan satuan. Screenshot menunjukkan satu kasus komponen saja. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Minimum proyek: Pemberi rekomendasi terminal yang menjelaskan skor dari preferensi pengguna. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Mesin Rekomendasi Buku dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Mesin Rekomendasi Buku. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Pembelajaran · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 10 menit → Persiapan sumber 3 menit → Praktik 27 menit → Uji dan revisi 10 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Baca CSV sintetis menggunakan csv.DictReader Bukti pemahaman: Gunakan satu input/data baru yang belum dicontohkan; tulis hasil harapan, jalankan dan jelaskan baris penyebabnya. Pengayaan: Setelah target inti tercapai, ubah satu data atau batas input pada kegiatan format csv dan header; prediksi hasil dan tambahkan bukti pemeriksaan. Estimasi tugas mandiri: 11–19 menit. Mengerjakan dan mencoba variasi; uji formal serta penyimpanan memiliki slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 1 menit di dalam alur sesi, bukan tambahan. Input memakai variant 0. Bandingkan hasil dengan prediksimu. Klik gambar untuk membaca detail. ## 9. Tugas mandiri pada proyek · 19 menit SMP · Lanjutan, sesi 9; proyek Mesin Rekomendasi Buku, sesi 1–16. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat membaca input, memakai kondisi dan loop, menulis fungsi berparameter dengan return, mengolah list/dictionary, serta menyimpan dan memuat JSON. Audit dua sesi awal memberi penguatan terarah. Dukungan: Mentor memberi satu contoh kecil, lalu siswa memprediksi, mencoba variasi, dan menjelaskan hasil. Pada Lanjutan, gunakan pertanyaan serta petunjuk bertahap; periksa fondasi sebelum GUI.Instruksi: Baca CSV sintetis menggunakan csv.DictReader Rincian kurikulum: Baca CSV sintetis menggunakan csv.DictReader Keputusan siswa: Tetapkan bobot serta aturan hasil seri. Batas cakupan: 64 sesi × 1 jam; rekomendasi berbasis aturan dan simulasi satu loket, kemudian kalkulator serta pelacak kebiasaan satu jendela. Data 3–10 entri, assert fungsi sederhana, JSON lokal; tanpa database, akun, atau backtracking wajib. Semua file dibuka sebagai satu folder proyek di VS Code dengan interpreter terpilih, terminal terintegrasi, serta debugger. Berkas bukti: python-smp-lanjutan-S09-kode-siswa. Jangan menyelesaikan tugas siswa; catat mandiri/petunjuk/bantuan. Hasil minimum: Baca CSV sintetis menggunakan csv.DictReader Pengayaan: Setelah target inti tercapai, ubah satu data atau batas input pada kegiatan format csv dan header; prediksi hasil dan tambahkan bukti pemeriksaan. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Minimum proyek: Pemberi rekomendasi terminal yang menjelaskan skor dari preferensi pengguna. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Mesin Rekomendasi Buku dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Mesin Rekomendasi Buku. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Pembelajaran · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 10 menit → Persiapan sumber 3 menit → Praktik 27 menit → Uji dan revisi 10 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Baca CSV sintetis menggunakan csv.DictReader Bukti pemahaman: Gunakan satu input/data baru yang belum dicontohkan; tulis hasil harapan, jalankan dan jelaskan baris penyebabnya. Pengayaan: Setelah target inti tercapai, ubah satu data atau batas input pada kegiatan format csv dan header; prediksi hasil dan tambahkan bukti pemeriksaan. Estimasi tugas mandiri: 11–19 menit. Mengerjakan dan mencoba variasi; uji formal serta penyimpanan memiliki slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 19 menit di dalam alur sesi, bukan tambahan. Baca CSV sintetis menggunakan csv.DictReader Uji satu input baru; prediksi hasil sebelum menjalankan. Simpan hasil dan jelaskan bantuan yang dipakai. ## 10. Bandingkan dengan kasus B · 1 menit SMP · Lanjutan, sesi 9; proyek Mesin Rekomendasi Buku, sesi 1–16. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat membaca input, memakai kondisi dan loop, menulis fungsi berparameter dengan return, mengolah list/dictionary, serta menyimpan dan memuat JSON. Audit dua sesi awal memberi penguatan terarah. Dukungan: Mentor memberi satu contoh kecil, lalu siswa memprediksi, mencoba variasi, dan menjelaskan hasil. Pada Lanjutan, gunakan pertanyaan serta petunjuk bertahap; periksa fondasi sebelum GUI.Hasil pembanding yang diuji di Python: "Seni". Jika hasil A dan B sama, jelaskan sifat yang diuji, misalnya reset atau input berbeda yang sama-sama ditolak. Minta satu kasus baru dengan harapan buatan siswa. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Minimum proyek: Pemberi rekomendasi terminal yang menjelaskan skor dari preferensi pengguna. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Mesin Rekomendasi Buku dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Mesin Rekomendasi Buku. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Pembelajaran · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 10 menit → Persiapan sumber 3 menit → Praktik 27 menit → Uji dan revisi 10 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Baca CSV sintetis menggunakan csv.DictReader Bukti pemahaman: Gunakan satu input/data baru yang belum dicontohkan; tulis hasil harapan, jalankan dan jelaskan baris penyebabnya. Pengayaan: Setelah target inti tercapai, ubah satu data atau batas input pada kegiatan format csv dan header; prediksi hasil dan tambahkan bukti pemeriksaan. Estimasi tugas mandiri: 11–19 menit. Mengerjakan dan mencoba variasi; uji formal serta penyimpanan memiliki slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 1 menit di dalam alur sesi, bukan tambahan. Input kini memakai variant 1. Cari nilai yang berubah atau tetap. Jelaskan alasan hasilnya. ## 11. Uji dan perbaiki dengan bukti · 5 menit SMP · Lanjutan, sesi 9; proyek Mesin Rekomendasi Buku, sesi 1–16. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat membaca input, memakai kondisi dan loop, menulis fungsi berparameter dengan return, mengolah list/dictionary, serta menyimpan dan memuat JSON. Audit dua sesi awal memberi penguatan terarah. Dukungan: Mentor memberi satu contoh kecil, lalu siswa memprediksi, mencoba variasi, dan menjelaskan hasil. Pada Lanjutan, gunakan pertanyaan serta petunjuk bertahap; periksa fondasi sebelum GUI.Gangguan kurikulum: Angka CSV dibandingkan sebagai teks. Cek: Setiap kolom dikenali dari header Script lab berisi kasus yang dapat diuji; error pembelajaran yang disengaja dijelaskan pada sesi. bug pada proyek siswa dianalisis terpisah. Ubah satu variabel, hindari mengubah expected hanya untuk membuat label hijau. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Minimum proyek: Pemberi rekomendasi terminal yang menjelaskan skor dari preferensi pengguna. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Mesin Rekomendasi Buku dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Mesin Rekomendasi Buku. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Pembelajaran · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 10 menit → Persiapan sumber 3 menit → Praktik 27 menit → Uji dan revisi 10 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Baca CSV sintetis menggunakan csv.DictReader Bukti pemahaman: Gunakan satu input/data baru yang belum dicontohkan; tulis hasil harapan, jalankan dan jelaskan baris penyebabnya. Pengayaan: Setelah target inti tercapai, ubah satu data atau batas input pada kegiatan format csv dan header; prediksi hasil dan tambahkan bukti pemeriksaan. Estimasi tugas mandiri: 11–19 menit. Mengerjakan dan mencoba variasi; uji formal serta penyimpanan memiliki slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 5 menit di dalam alur sesi, bukan tambahan. Catat keadaan awal dan hasil yang diharapkan. Jalankan satu kasus sah dan satu kasus gagal. Perbaiki satu penyebab, lalu ulangi kedua uji. ## 12. Periksa sebelum selesai · 5 menit Kriteria sesi: Setiap kolom dikenali dari header Simpan versi awal dan akhir; catat harapan, hasil aktual, satu alasan perubahan, dan bentuk bantuan. Lanjut jika hasil minimum dapat diulang, satu perubahan baru dapat dikerjakan, dan siswa menjelaskan satu perbaikan. Catat bentuk bantuan; bila belum siap, ulangi keterampilan yang belum tampak sebelum menambah konsep. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Minimum proyek: Pemberi rekomendasi terminal yang menjelaskan skor dari preferensi pengguna. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Mesin Rekomendasi Buku dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Mesin Rekomendasi Buku. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Pembelajaran · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 10 menit → Persiapan sumber 3 menit → Praktik 27 menit → Uji dan revisi 10 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Baca CSV sintetis menggunakan csv.DictReader Bukti pemahaman: Gunakan satu input/data baru yang belum dicontohkan; tulis hasil harapan, jalankan dan jelaskan baris penyebabnya. Pengayaan: Setelah target inti tercapai, ubah satu data atau batas input pada kegiatan format csv dan header; prediksi hasil dan tambahkan bukti pemeriksaan. Estimasi tugas mandiri: 11–19 menit. Mengerjakan dan mencoba variasi; uji formal serta penyimpanan memiliki slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 5 menit di dalam alur sesi, bukan tambahan. Tugas inti selesai dan dapat dijalankan ulang. Satu perubahan dicoba dan dijelaskan. Sumber tersimpan; bantuan dicatat. ## 13. Jelaskan keputusanmu · 3 menit SMP · Lanjutan, sesi 9; proyek Mesin Rekomendasi Buku, sesi 1–16. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat membaca input, memakai kondisi dan loop, menulis fungsi berparameter dengan return, mengolah list/dictionary, serta menyimpan dan memuat JSON. Audit dua sesi awal memberi penguatan terarah. Dukungan: Mentor memberi satu contoh kecil, lalu siswa memprediksi, mencoba variasi, dan menjelaskan hasil. Pada Lanjutan, gunakan pertanyaan serta petunjuk bertahap; periksa fondasi sebelum GUI.Minta siswa menunjuk fungsi, baris, atau data yang relevan. Minta kontrak data, satu penolakan tanpa mutasi, serta respons terhadap perubahan data penguji. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Minimum proyek: Pemberi rekomendasi terminal yang menjelaskan skor dari preferensi pengguna. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Mesin Rekomendasi Buku dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Mesin Rekomendasi Buku. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Pembelajaran · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 10 menit → Persiapan sumber 3 menit → Praktik 27 menit → Uji dan revisi 10 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Baca CSV sintetis menggunakan csv.DictReader Bukti pemahaman: Gunakan satu input/data baru yang belum dicontohkan; tulis hasil harapan, jalankan dan jelaskan baris penyebabnya. Pengayaan: Setelah target inti tercapai, ubah satu data atau batas input pada kegiatan format csv dan header; prediksi hasil dan tambahkan bukti pemeriksaan. Estimasi tugas mandiri: 11–19 menit. Mengerjakan dan mencoba variasi; uji formal serta penyimpanan memiliki slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 3 menit di dalam alur sesi, bukan tambahan. Input serta data yang saya gunakan adalah… Saya memilih aturan ini karena… Bukti pengujian saya menunjukkan… ## 14. Apa yang perlu diuji berikutnya? · 2 menit SMP · Lanjutan, sesi 9; proyek Mesin Rekomendasi Buku, sesi 1–16. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat membaca input, memakai kondisi dan loop, menulis fungsi berparameter dengan return, mengolah list/dictionary, serta menyimpan dan memuat JSON. Audit dua sesi awal memberi penguatan terarah. Dukungan: Mentor memberi satu contoh kecil, lalu siswa memprediksi, mencoba variasi, dan menjelaskan hasil. Pada Lanjutan, gunakan pertanyaan serta petunjuk bertahap; periksa fondasi sebelum GUI.Catat prasyarat yang belum kuat sebelum menambah mekanik. Pengayaan: Setelah target inti tercapai, ubah satu data atau batas input pada kegiatan format csv dan header; prediksi hasil dan tambahkan bukti pemeriksaan. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Minimum proyek: Pemberi rekomendasi terminal yang menjelaskan skor dari preferensi pengguna. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Mesin Rekomendasi Buku dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Mesin Rekomendasi Buku. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Pembelajaran · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 10 menit → Persiapan sumber 3 menit → Praktik 27 menit → Uji dan revisi 10 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Baca CSV sintetis menggunakan csv.DictReader Bukti pemahaman: Gunakan satu input/data baru yang belum dicontohkan; tulis hasil harapan, jalankan dan jelaskan baris penyebabnya. Pengayaan: Setelah target inti tercapai, ubah satu data atau batas input pada kegiatan format csv dan header; prediksi hasil dan tambahkan bukti pemeriksaan. Estimasi tugas mandiri: 11–19 menit. Mengerjakan dan mencoba variasi; uji formal serta penyimpanan memiliki slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 2 menit di dalam alur sesi, bukan tambahan. Sumber API: https://docs.python.org/3/library/csv.html