Ekskul CSSE · SMAS St. John — BINUSPertemuan 17 · Demo Day
17
Demo Day — hari ini giliranmu di panggung
Final Project
Presentation & Demo

17 pertemuan lalu print("Hello World") terasa ajaib. Hari ini kamu naik panggung membawa aplikasimu sendiri — dan menamatkan program ini dengan gaya.

TUJUAN 01
Mempresentasikan proyek 5–7 menit dengan struktur baku 5 bagian
TUJUAN 02
Demo live anti-drama — tech check & Plan B siap sebelum naik
TUJUAN 03
Merefleksikan 17 pertemuan & menyusun langkah lanjutmu
Panggung sudah terpasang — apa yang kita capai hari ini?

Hari ini kamu yang jualan

Target Sesi 17
  1. Mempresentasikan proyek dengan jelas dalam waktu terbatas — 5–7 menit
  2. Mendemonstrasikan fitur live & menjelaskan logika 1 kode pilihan
  3. Menerima pertanyaan & umpan balik — jujur kalau belum tahu
  4. Merefleksikan 1 semester — apa yang dulu mustahil, sekarang bisa
MasalahDemo LiveKode dibanggakanQ&A
Alur 120 menit
10'Pembukaan & aturan presentasi
60'Presentasi & demo berurutan
30'Tanya jawab & umpan balik rubrik
15'Refleksi & penutupan semester
5'Pengumuman & apresiasi
!

Aturan nomor nol: tepuk tangan untuk setiap tim — sejak menit pertama. Ini pentas, bukan sidang.

Sebelum naik panggung — minggu lalu kamu bangun apa?

Rekap Sesi 16 · Final Project Development

Yang sudah kamu pegang
  • Menu loop — program yang terus melayani sampai user pilih Keluar
  • list[dict] — satu record = satu paket data utuh
  • File — load di awal, save tiap perubahan: data selamat
  • Fungsi modular — 1 menu = 1 fungsi, gampang dijelaskan

Minggu lalu kamu membangun. Hari ini kamu menjualnya — dan kodenya dinilai dengan rubrik yang sama persis.

Cek cepat sebelum tampil
  • Program jalan dari awal sampai Keluar tanpa crash
  • Data selamat setelah program ditutup & dijalankan lagi
  • 1 fungsi "kode dibanggakan" sudah kamu pilih
!

Posisimu: 17 dari 17 — 100% perjalanan. Barisan terakhir, dan yang paling seru.

Enam menit bisa jualan apa?

Struktur baku — 5 bagian, urut jualan

BagianWaktuIsi 1 kalimat
01 · Masalah30 detikUntuk siapa aplikasimu, menyelesaikan masalah apa
02 · Fitur45 detikSebut 4–5 fitur menu — tanpa demo dulu
03 · Demo Live2–3 menitJalankan aplikasi: tambah → lihat → cari → statistik → keluar
04 · Kode dibanggakan1 menit1 fungsi saja, jelaskan dengan kalimat sendiri
05 · Q&A1–2 menitJawab pertanyaan — jujur kalau belum diuji
Kenapa urutannya begitu?

Demo itu seperti jualan di pentas seni: mulai dari masalah nyata supaya audiens peduli, baru perlihatkan jawabannya. Kalau demo dulu, audiens masih bingung mereka sedang menonton apa.

→

Kode yang jalan itu hebat. Kode yang bisa kamu jelaskan itu lebih hebat lagi.

Bagian 1 · 30 detik — kenapa audiens harus peduli?

Masalah — buka dengan cerita, bukan fitur

Formula 1 kalimat

"Aplikasiku untuk siapa, yang selama ini menyelesaikan apa."

Contoh yang langsung nempel

"Nilai kelas masih dicatat di kertas — sering hilang, susah dihitung rata-ratanya. Aplikasi kami menyimpannya aman di file."

Jangan mulai dari sini

"Kami pakai Python, list, dict, dan file..." — itu alat, bukan cerita. Audiens belum peduli; alat menyusul di bagian kode.

Tes 5 detik: kalau adik kelas dengar 1 kalimatmu lalu bertanya "terus gimana solusinya?" — kamu berhasil.

Bagian 2 · 45 detik — jual menu dulu, tunjuk belakangan

Fitur — sebut 4–5, tonton nanti

Contoh daftar fitur — bacakan, jangan jalankan
1 · LihatTampilkan semua data yang tersimpan
2 · TambahInput data baru, langsung aman ke file
3 · CariTemukan berdasarkan nama — sebagian pun ketemu
4 · HapusBuang data dengan sopan + konfirmasi
5 · StatistikJumlah, tertinggi, terendah, rata-rata
Kenapa fitur dipisah dari demo?

Kalau demo sambil nyebut fitur, dua-duanya berantakan. Sebut semua dulu = audiens punya peta. Demo = jalanin peta itu berurutan.

Fitur bonus yang belum stabil? Ceritakan saja, jangan didemokan — jangan korbankan demo utama demi fitur yang nomor terbesarnya belum 100%.

Bagian 3 · 2–3 menit — panggung utamamu

Demo Live — skenario 2 menit yang aman

Urutan yang terbukti tidak bikin panik
tambah → 1 data baru masuk
lihat → semua data tampil
cari → yang ADA ketemu
cari → yang TIDAK ADA → "tidak ketemu"
statistik → jumlah · tertinggi · terendah · rata
keluar → program tutup rapi
jalan lagi → data MASIH ADA (bukti file)

Puncak dramanya justru langkah terakhir: tutup program, buka lagi, data selamat. Itu momen "oooh" dari audiens.

Jangan lupakan si penonton di baris belakang
  • Font terminal diperbesar — Ctrl + + sebelum naik
  • Cari yang tidak ada juga didemokan — program menolak dengan sopan
  • Bicara sambil jalan: "sekarang kami tambah data..."
!

Latih urutan ini sampai otomatis — gladi bersih di slide 12.

Bagian 4 · 1 menit — 1 fungsi, kalimat sendiri

1 potongan kode dibanggakan

Contoh — cari_data() dari aplikasi Sesi 16
def cari_data(kata):
    hasil = []
    for item in data:
        if kata.lower() in item["nama"].lower():
            hasil.append(item)
    return hasil   # kosong = jujur "tidak ketemu"
case-insensitivecari sebagian pun ketemukosong = tidak crash
KANDIDAT 1

cari_data() — logika pencarian yang sopan

KANDIDAT 2

tambah_data() — try-except anti user nakal

KANDIDAT 3

statistik() — sum/max/min + penjaga data kosong

?

Pilih satu yang paling kamu pahami. Jelaskan maksimal 3 poin kenapa ditulis begitu — bukan dibaca ulang baris per baris. Contoh pembuka: "Fungsi ini saya paling bangga karena..."

Ketiganya ada lengkap di kode.py pendamping sesi ini — lengkap dengan alasan layak pamer.

Bagian 5 · 1–2 menit — pertanyaan tanda mereka peduli

Q&A — jawab jujur, senyum dulu

3 pertanyaan yang hampir pasti muncul
Q1"Kenapa pakai list[dict], bukan dua list terpisah?"
Q2"Kalau user mengetik huruf di kolom nilai, apa yang terjadi?"
Q3"Data kamu hilang nggak kalau listrik mati?"

Kunci jawabannya sudah kamu pegang: satu record = satu dict · try-except menolak dengan sopan · save tiap perubahan + load di awal.

Kalau blank — kalimat penyelamat

"Belum kami coba, tapi rencananya seperti ini..."

Jujur itu dinilai. Mengarang jawaban yang kelak ketahuan — tidak.

Aturan audiens: pertanyaan boleh, menggurui jangan. Kamu juga penilai — isi 1 hal keren + 1 saran untuk tiap tim.

Satu panggung — semua kelompok kebagian sama rata

Aturan main — 5–7 menit & urutan tampil

Yang berlaku untuk semua tim
  • 5–7 menit per kelompok — timer jalan + sinyal "1 menit tersisa"
  • Semua anggota bicara minimal sekali — bukan satu orang bawakan semua
  • Urutan diundi (atau daftar) — rotasi cepat antar kelompok
  • Tepuk tangan untuk tiap tim — pertanyaan boleh, ejekan tidak
Suasana suportif — kenapa ini penting

Yang di Sesi 03 belum berani nulis print dan hari ini mendemokan aplikasi ber-menu adalah bintang hari itu — apa pun nilainya. Kita mengapresiasi kemajuan, bukan cuma hasil akhir.

→

Feedback dinilai pakai rubrik — bukan perbandingan antar siswa. Sama persis dengan Sesi 16.

Program error di depan kelas? Persiapanmu yang menyelamatkan

Tech check & Plan B — siap sebelum naik

Checklist panggung — centang sebelum sesi mulai
  • Laptop terhubung proyektor sebelum sesi mulai — bukan saat tim pertama naik
  • Program jalan penuh dari awal sampai Keluar — uji cepat 2 menit
  • Semua menu diuji — termasuk cari nama yang tidak ada
  • Font terminal diperbesar (Ctrl + +), laptop tidak sleep
Plan B — jalan keluar saat demo macet
  • Video/screenshot fitur jalan — rekam di rumah, simpan di folder
  • Backup copy program di flashdisk / email / cloud

Kalimat penyelamat: "Kemarin fitur ini jalan — mari lihat rekamannya sementara saya cek errornya."

Bisa bilang "ini ValueError dari input huruf, penanganannya di sini"? Itu bukan gagal demo — itu poin Demo & Penjelasan.

Giliran kamu — panggung dulu 1× sebelum yang asli

Tugas · Gladi bersih 1×

Kerjakan berurutan — 3 langkah
  1. Jalankan skenario demo 2 menit lengkap di depan kelompok lain — tambah → lihat → cari → statistik → keluar → buka lagi
  2. Ukur waktu pakai timer HP — target 5–7 menit termasuk Q&A mini
  3. Rekam Plan B sekarang — video/screenshot fitur jalan, simpan di folder + backup copy
Petunjuk kalau macet

Buka kode.py pendamping sesi ini — ada app panggung mini + skenario demo yang sama persis. Gladi di situ dulu, terapkan ke Final Project-mu.

Hasil yang harus tercapai
  • Skenario 2 menit jalan utuh tanpa buka kode
  • Waktu terukur — tahu posisi "1 menit tersisa" itu di mana
  • File Plan B benar-benar ada — bukan "nanti direkam"
!

Waktu: 15 menit. Tim yang gladi bersih rapih hampir selalu demo paling tenang.

Nilaimu dihitung dari apa — sebelum kamu bertanya

Rubrik — sama persis dengan Sesi 16

Porsi nilai — 100%
Fungsi jalan
30%
Struktur kode
25%
Logika
20%
Demo & penjelasan
15%
Kreativitas
10%

Panjang bar proporsional terhadap porsi terbesar (30%).

Cara membacanya
  • Fungsi jalan = bobot terbesar — 1 fitur selesai sempurna mengalahkan 5 fitur setengah jadi
  • Struktur + Logika = 45% — kode rapi & masuk akal, itu setengah nilai
  • Baseline B wajib: menu loop + list[dict] + file + modular

Rubrik dibagikan di awal — tiap tim tahu di mana fokus sebelum naik panggung.

Panggung bisa goyang — kenali 4 jebakannya

Kotak masalah — 4 jebakan demo day

Jebakan 01
Waktu kebablasan

Gejala: demo semua fitur + Q&A memanjang → kelompok lain kehilangan panggung. Obat: demo inti saja (tambah → lihat → cari → statistik → keluar); fitur bonus cukup diceritakan.

Jebakan 02
Program macet

Gejala: error muncul persis saat demo. Obat: baca errornya dengan tenang — 1 menit tidak selesai? Lompat ke Plan B (video/screenshot) dan lanjut cerita. Error = alarm, bukan aib.

Jebakan 03
Lupa switch file

Gejala: buka folder yang salah, atau file data.txt tertinggal di laptop lain. Obat: backup copy di 2 tempat + cek jalankan dari awal saat tech check.

Jebakan 04
Q&A blank

Gejala: ditanya kenapa pakai try-except, otak tiba-tiba kosong. Obat: kalimat penyelamat — "belum kami coba, tapi rencananya seperti ini". Jujur dinilai, mengarang tidak.

Aturan 3 menit: jangan biarkan 3 menit habis untuk 1 bug — panggungmu lebih penting daripada satu error yang bisa diperbaiki nanti.

Rangkuman · Yang kita bawa ke panggung

5 poin demo day — kamu siap tampil

01
Struktur 5 bagian — Masalah → Fitur → Demo Live → 1 kode dibanggakan → Q&A, total 6 menit
02
Skenario demo aman — tambah → lihat → cari → statistik → keluar → buka lagi: data masih ada
03
Tech check + Plan B — proyektor, font besar, uji penuh; video/screenshot cadangan siap di folder
04
Rubrik Sesi 16 — Fungsi 30% · Struktur 25% · Logika 20% · Demo 15% · Kreativitas 10%
05
Suasana suportif — tepuk tangan tiap tim, apresiasi kemajuan, jujur saat Q&A
Panggung menantimu — tampil! Next → Refleksi & penutupan
Sebelum tamat — lihat dulu jarak yang sudah kamu tempuh

17 pertemuan — dari Hello World ke aplikasimu

Peta perjalanan
[ 01-02 ] Fondasi: konsep program, algoritma, flowchart [ 03-05 ] Mulai coding: print, variabel, input/output [ 06-07 ] Operator & percabangan if/elif/else [ 08 ] Mini Project 1: Decision Making [ 09-10 ] Looping & Nested Loop / Pattern [ 11-13 ] List, Functions, String [ 14 ] Mini Project 2: Simple App [ 15 ] AI-Assisted Coding [ 16-17 ] Final Project: Development & Presentation <-- HARI INI
Refleksi — tulis untuk dirimu sendiri
  • "Hal baru yang kupelajari semester ini adalah ___"
  • "Bagian tersulit & cara aku mengatasinya ___"
  • "Jika ada 1 minggu lagi, aku akan menambah ___"
?

Pertanyaan kuncinya: apa 1 hal yang dulu terasa mustahil — sekarang bisa kamu jelaskan ke adik kelas?

Program tamat — tapi jalanmu baru mulai

Setelah ekstrakurikuler: 3 langkah lanjut

01
Portfolio

Taruh Final Project-mu di GitHub — kode + README 5 baris + screenshot fitur. Proyek jadi yang bisa ditunjukkan lebih berharga daripada seratus yang setengah jadi.

02
Python lanjutan

Urutan wajar setelah hari ini: OOP (class & object) → modul eksternal (csv untuk data sungguhan) → GUI/web sederhana. Semua fondasinya sudah kamu pegang.

03
Versi 2.0

Ambil jawaban refleksimu: edit data, sorting, laporan otomatis, tampilan lebih baik. 1 proyek yang terus dikembangkan mengajarkan lebih banyak daripada 10 yang baru dimulai.

→

Pertanyaan penutupnya bukan "sudah selesai?" — tapi "selanjutnya saya bangun apa?"

Penutup program · Semester Ganjil 2026/2027

Kamu sudah jadi programmer pemula
yang sesungguhnya

Bukti perjalananmu

17 pertemuan lalu: print("Hello World")
Hari ini: aplikasi rancanganmu sendiri, jalan utuh, data aman.

Itu bukan bakat — itu 17 pertemuan kerja yang menumpuk. Jaga kebiasaan baikmu: alur dulu sebelum kode, 1 fitur selesai daripada 5 setengah jadi, dan error selalu alarm.

Bawa pulang 3 hal ini
  • Struktur jualan 5 bagian — bisa dipakai presentasi apa pun
  • Rubrik 30/25/20/15/10 — ukuran objektif untuk proyek berikutnya
  • 3 langkah lanjut: portfolio · Python lanjutan · versi 2.0
Sampai jumpa! 17 pertemuan · 1 semester · tamat