← Kembali ke Modul 📖 Modul Pelajar ✏️ 10 Latihan 📄 Cheatsheet
Fasa 2 — Panduan Pengajar

Seni Prompting

Panduan lengkap untuk mengajar sesi 2–3 jam tentang teknik penulisan prompt yang berkesan untuk Claude Code dan Codex.

2–3 jam
Tempoh Sesi
3 Demo
Demonstrasi Langsung
10 Latihan
Aktiviti Hands-On
Claude + Codex
Tools Utama
📋

Ringkasan Sesi

Gambaran keseluruhan sesi Seni Prompting — objektif, struktur, dan bahan yang diperlukan.

🎯 Objektif Pembelajaran

Di akhir sesi ini, pelajar dapat:

  • Memahami anatomi prompt yang baik: Context + Instruction + Constraint
  • Menulis prompt berstruktur untuk hasil yang konsisten dan berkualiti
  • Mengaplikasikan teknik prompting seperti role-play, few-shot, dan chain-of-thought
  • Membandingkan gaya prompting Claude Code (nuanced) vs Codex (direct)
  • Melakukan iterative refinement untuk memperbaiki output AI
  • Mendiagnosis dan memperbaiki prompt yang gagal

📦 Bahan Diperlukan

  • Claude Code (CLI) — dipasang dan dikonfigurasi dengan API key
  • Claude Codex (atau GitHub Copilot) — sebagai perbandingan
  • Terminal / editor code (VS Code digalakkan)
  • Projek direktori kosong untuk latihan
  • Modul Pelajar — diedarkan kepada pelajar (digital atau cetakan)
  • 10 Latihan Prompt — untuk aktiviti hands-on
  • Cheatsheet Prompt — rujukan pantas

⏱ Struktur Sesi (2–3 jam)

10 minit

Pengenalan & Konteks

Apa itu prompting? Kenapa prompting yang baik penting? Perbezaan antara human-to-human communication vs human-to-AI communication. Perkenalkan konsep "AI is a reasoning engine, not a database."

15 minit

Anatomi Prompt yang Baik

Terangkan tiga komponen utama: Context (latar belakang), Instruction (arahan spesifik), Constraint (format, batasan). Tunjukkan contoh dan bukan contoh.

20 minit

Demo 1: Bad Prompt vs Good Prompt

Demonstrasi langsung menggunakan Claude Code — tunjukkan perbezaan dramatik antara prompt ringkas vs prompt berstruktur.

20 minit

Demo 2: Iterative Refinement

Tunjukkan bagaimana prompt boleh diperbaiki secara berperingkat — dari output pertama hingga output yang memenuhi keperluan.

15 minit

Perbandingan Claude Code vs Codex

Demonstrasi prompt yang sama pada kedua-dua tool. Bincangkan perbezaan gaya, kekuatan, dan cara mengoptimumkan prompt untuk setiap platform.

40–60 minit

Hands-On: 10 Latihan Prompt

Pelajar menjalankan 10 latihan progresif — dari asas hingga lanjutan. Galakkan kerjasama dan perbincangan. Pengajar berkeliling untuk membantu.

10 minit

Rumusan & Sesi Soal Jawab

Kulang kembali teknik utama, kongsikan tip tambahan, jawab soalan pelajar. Edarkan cheatsheet sebagai rujukan.

🎭

Demo 1: Bad Prompt vs Good Prompt

Tunjukkan perbezaan output antara prompt ringkas dan prompt berstruktur.

🎯 Tujuan Demo

Pelajar akan nampak secara langsung bagaimana kualiti prompt secara langsung mempengaruhi kualiti output. Ini adalah "wow moment" yang meyakinkan pelajar bahawa prompting adalah kemahiran yang perlu dipelajari.

✗ Prompt Ringkas (Bad)
Buatkan saya satu halaman web.

❌ Output: Terlalu umum, mungkin generate kod yang tak menepati kehendak, banyak ulang tanya.

✓ Prompt Berstruktur (Good)
Bina satu halaman HTML ringkas untuk portfolio peribadi saya. Context: Saya seorang graphic designer yang nak tunjuk kerja-kerja saya. Saya ada 5 projek utama. Instruction: 1. Cipta layout dengan header, hero section, gallery grid, dan footer 2. Gunakan warna gelap (#0b0d17 sebagai background) dengan aksen cyan 3. Setiap projek dalam gallery perlu ada gambar placeholder, tajuk, dan penerangan ringkas Constraint: - Guna CSS sahaja (no frameworks) - Responsive untuk mobile dan desktop - Format: satu file HTML sahaja

✅ Output: Tepat, terus boleh guna, memenuhi semua keperluan yang dinyatakan.

Tip Demonstrasi

Jalankan live demo dalam terminal. Mula-mula, taip prompt ringkas dan tunjuk output yang kurang memuaskan. Kemudian, taip prompt berstruktur dan tunjuk output yang jauh lebih baik. Minta pelajar bandingkan sendiri. Ini adalah momen "Aha!" yang paling berkesan dalam sesi ini.

🗣 Skrip Cadangan untuk Pengajar

"Sekarang saya nak tunjuk sesuatu yang menarik. Saya akan minta Claude Code buatkan halaman web dengan cara yang paling ringkas."

(Taip: "Buatkan saya satu halaman web" — tunjuk output yang terlalu umum)

"Nampak tak? Output dia terlalu umum. AI ni bukan pembaca fikiran. Dia akan buat tekaan, dan selalunya tekaan dia tak tepat dengan apa yang kita nak."

"Sekarang cuba dengan prompt yang lebih spesifik — bagi konteks, arahan yang jelas, dan batasan yang nak diikut."

(Taip prompt berstruktur — tunjuk output yang jauh lebih baik)

"Nampak perbezaan? Prompt yang baik macam memberi blueprint lengkap. Prompt yang ringkas macam suruh orang bina rumah tanpa pelan."

🔄

Demo 2: Iterative Refinement

Tunjukkan bagaimana prompt boleh diperbaiki secara berperingkat.

🎯 Tujuan Demo

Pelajar akan faham bahawa prompt yang sempurna jarang berlaku pada percubaan pertama. Proses prompting adalah iterative — minta output, nilai, refine, minta lagi. Ini adalah kemahiran paling praktikal yang akan mereka gunakan setiap hari.

📋 Langkah Demo

Iterasi 1

Prompt Asas

Bina satu navigation bar untuk laman web.

Output: Navigation bar ringkas dengan CSS asas — functional tapi tak menarik.

Iterasi 2

Tambah Konteks & Constraint

Bina navigation bar untuk laman web portfolio. Guna tema gelap dengan aksen cyan. Nak responsive — jadikan hamburger menu pada mobile.

Output: Lebih baik — ada styling, warna, dan mula responsive.

Iterasi 3

Refinement Akhir

Bina navigation bar untuk portfolio peribadi. - Tema gelap (#0b0d17) dengan aksen cyan (#06d6f0) - Menu items: Home, Portfolio, Services, Contact - Desktop: horizontal, rata kiri dengan logo di kiri - Mobile (<768px): hamburger menu dengan slide-in panel - Tambah hover effect dengan garis bawah (underline) animated - Smooth transition untuk semua interaksi - Font: 'Segoe UI', system-ui, sans-serif - Sticky di atas page bila scroll

Output: Navigation bar yang lengkap, siap produksi, dengan semua feature yang dinyatakan.

Tip Pengajaran Utama

Tegaskan kepada pelajar: "Jangan harap prompt pertama sempurna. Cara kerja sebenar: tulis prompt, dapatkan output, nilai, tambah detail, minta lagi. Setiap iterasi menambah nilai. Ini adalah 'Seni Prompting' yang sebenar."

🧠

Key Teaching Points

Konsep utama yang perlu ditekankan sepanjang sesi.

📐 Anatomi Prompt: Context + Instruction + Constraint

Tiga komponen asas setiap prompt yang baik. Gunakan akronim CIC untuk mudah diingat.

Context — Konteks

Latar belakang projek, sasaran pengguna, tujuan. Contoh: "Saya sedang membina landing page untuk startup AI yang menyasarkan usahawan muda."

Instruction — Arahan

Arahan spesifik tentang apa yang perlu dilakukan. Contoh: "Bina hero section dengan headline, subheadline, CTA button, dan ilustrasi di sebelah kanan."

Constraint — Batasan

Format output, gaya, teknologi, saiz, warna. Contoh: "Guna Tailwind CSS, responsive mobile-first, maximum 3 warna utama."

Format Output — Bentuk Hasil

Bagaimana output perlu disampaikan. Contoh: "Berikan dalam satu file HTML sahaja. Sertakan komen dalam kod."

🔑 5 Prinsip Prompting Berkesan

  1. Spesifik adalah segala-galanya. Lebih detail, lebih baik output. Jangan biar AI meneka.
  2. Beri contoh konkrit. Contoh output yang diingini lebih berkuasa daripada deskripsi abstrak.
  3. Guna format yang jelas. Numbered lists, bullet points, headings — struktur visual membantu AI memahami.
  4. Satu prompt, satu fokus utama. Jangan campur multiple requests dalam satu prompt jika tiada kaitan.
  5. Iterasi adalah kawan anda. Output pertama jarang sempurna. Jangan putus asa — refine dan minta lagi.

📊 Pendekatan Iteratif

Ajar pelajar kitaran berikut:

1. Tulis Prompt

Guna struktur CIC (Context + Instruction + Constraint). Mulakan dengan versi ringkas, tambah detail secara berperingkat.

2. Dapatkan Output

Jalankan prompt dalam Claude Code atau Codex. Perhatikan apa yang berkesan dan apa yang kurang.

3. Nilai & Kenal Pasti

Apa yang kurang? Apa yang salah? Adakah output mengikut format yang diminta? Adakah konteks difahami?

4. Refine & Ulang

Tambah detail, betulkan arahan, masukkan contoh. Ulang langkah 1–3 sehingga output memenuhi keperluan. Biasanya 2–3 iterasi sudah memadai.

⚔️

Claude Code vs Codex: Perbezaan Prompting

Perbezaan penting yang perlu disampaikan kepada pelajar tentang gaya prompting untuk setiap platform.

🧠 Claude Code — Nuanced, Detailed, Reasoning

Claude Code cemerlang dengan prompt yang deskriptif, bernuansa, dan kaya dengan konteks. Ia boleh mengendalikan arahan bertingkat, reasoning langkah demi langkah, dan memahami niat di sebalik permintaan.

// Prompt gaya Claude Code — detailed, reasoning, context-rich "Bina fungsi JavaScript untuk validate form registration. Konteks: Form ada field nama (required, min 3 chars), email (required, format valid), password (min 8 chars, sekurang-kurangnya 1 huruf besar dan 1 nombor). Saya nak fungsi ni: 1. Return object { valid: boolean, errors: object } 2. Guna regex untuk email validation 3. Setiap error field ada mesej dalam Bahasa Melayu 4. Guna konsep functional programming — jangan guna class 5. Sertakan JSDoc comments Tolong explain reasoning untuk setiap validation rule."

⚡ Codex — Direct, Action-Oriented

Codex (dan Copilot) lebih responsif kepada prompt yang ringkas, langsung, dan berorientasikan tindakan. Ia berfungsi baik dengan arahan langkah demi langkah yang jelas tanpa terlalu banyak nuansa.

// Prompt gaya Codex — direct, action-oriented, step-by-step "Write a JavaScript function validateRegistration(formData). Rules: - name: required, min 3 characters - email: required, valid email format - password: required, min 8 chars, 1 uppercase, 1 number Return { valid: boolean, errors: object } Use regex for email validation. Error messages in Malay. Use functional approach, no classes."

📊 Perbandingan Side-by-Side

Aspek Claude Code Codex
Gaya Prompt Terbaik Deskriptif, naratif, reasoning Ringkas, langsung, bullet points
Panjang Prompt Boleh panjang (200+ words) — lebih detail lebih baik Sederhana (50–150 words) — ringkas dan fokus
Kontekstual Sangat baik — faham konteks projek secara menyeluruh Sederhana — fokus pada kod di hadapan
Reasoning Cemerlang — boleh explain code, strategi, alternatif Tidak fokus — lebih kepada hasil kod
Iterative Refinement Sangat sesuai — ingat konteks perbualan Sederhana — perlu ulang konteks dalam setiap prompt
Kesalahan Biasa Terlebih detail sehingga hilang fokus Output terlalu ringkas, kurang konteks
Tip Pengajaran

Minta pelajar menulis prompt yang SAMA dan menjalankannya pada kedua-dua Claude Code dan Codex. Bandingkan output. Ini adalah latihan yang paling membuka mata — pelajar akan nampak sendiri bagaimana setiap platform mempunyai "personaliti" yang berbeza.

💡

Tip Fasilitasi

Panduan praktikal untuk menjalankan sesi dengan lancar dan berkesan.

🚦 Sebelum Sesi

  • Uji setup terlebih dahulu: Pastikan Claude Code dan Codex berfungsi di mesin anda. Jalankan prompt ujian.
  • Sediakan projek kosong: Buat direktori latihan yang sedia digunakan — jangan bazir masa dengan setup semasa sesi.
  • Uji semua demo: Jalankan setiap demo (bad vs good, iterative refinement) dari awal hingga akhir. Pastikan output yang dihasilkan betul.
  • Sediakan backup plan: Jika internet down atau API bermasalah, ada skrin capture output yang telah disediakan.
  • Cetak bahan: Sediakan modul pelajar dan cheatsheet dalam bentuk cetakan sebagai backup.

🎤 Semasa Demo Langsung

  • Guna projector atau share screen dengan font yang besar — pastikan semua pelajar nampak.
  • Baca prompt dengan kuat semasa menaip — ini membantu pelajar menghubungkan apa yang ditaip dengan apa yang difikirkan.
  • Explain setiap komponen prompt — "Sekarang saya tambah konteks... sekarang saya bagi arahan spesifik... sekarang saya tetapkan constraint."
  • Tunjukkan proses, bukan hanya hasil — terutamanya dalam Demo 2 (iterative refinement), tunjuk SETIAP langkah termasuk output yang tak sempurna.
  • Buat mistakes with intention — kadang-kadang buat prompt yang tak lengkap dan tunjuk bagaimana AI bertindak balas. Ini pengajaran yang berharga.
  • Guna timer — pantau masa untuk setiap segmen supaya tidak terlebih masa.

❌ Kesilapan Pelajar yang Biasa & Cara Mengatasinya

Kesilapan Kenapa Terjadi Cara Betulkan
Prompt terlalu ringkas Anggap AI boleh baca fikiran Guna struktur CIC: Context + Instruction + Constraint
Campur multiple requests Nak jimat masa, tapi AI keliru Asingkan kepada beberapa prompt berasingan
Tak puas hati tapi tak refine Fikir prompt sekali jadi Ajar kitaran iterasi — minta, nilai, refine, ulang
Guna jargon tak jelas Anggap AI tahu istilah dalaman Guna perkataan mudah atau bagi definisi jelas
Format tak menentu Tulis macam biasa bercakap Guna bullet points, numbered lists, headings
Lupa nak tetapkan format output Fokus pada apa nak dibuat, bukan macam mana Sentiasa nyatakan format output yang dikehendaki

💬 Cara Beri Maklum Balas pada Latihan Pelajar

  • Jangan hanya kata "bagus" atau "tak betul" — terangkan kenapa sesuatu prompt berkesan atau tidak.
  • Tunjukkan perbandingan langsung antara prompt pelajar dengan prompt yang lebih baik.
  • Galakkan pelajar refine prompt sendiri sebelum minta bantuan — "Cuba tambah satu lagi detail, apa yang kurang?"
  • Raikan proses, bukan hanya hasil — puji pelajar yang sanggup mencuba dan mengiterasi.
  • Gunakan peer review — minta pelajar nilai prompt rakan sekelas dan cadangkan penambahbaikan.
⚠️ Amaran Teknikal

API Claude dan OpenAI (Codex) boleh menjadi lambat semasa waktu puncak. Jika ramai pelajar menggunakan serentak, pertimbangkan untuk: (1) minta pelajar bekerja dalam kumpulan, (2) guna API key yang berasingan untuk setiap kumpulan, atau (3) sediakan output pra-tulis untuk latihan tertentu.

🎬

Demo Script Lengkap

Skrip demonstrasi langkah demi langkah untuk tiga demo utama dalam sesi ini. Setiap demo ada skrip percakapan, prompt tepat, dan output dijangka.

⏱ 10 minit
🎯 Tujuan

Tunjukkan perbezaan dramatik antara prompt ringkas dan prompt berstruktur (CIC). Inilah "wow moment" sesi yang meyakinkan pelajar bahawa prompting adalah kemahiran perlu dipelajari.

🗣 Cakap (Pengajar)

"Sekarang saya nak tunjuk sesuatu yang menarik. Saya akan minta Claude Code buat landing page dengan cara paling ringkas — dan kemudian dengan cara yang betul. Perhatikan perbezaannya."

✍️ Taip — Prompt Ringkas (Bad)
Bina landing page.
🗣 Cakap (Pengajar)

"Nampak? Output terlalu umum. AI ni bukan pembaca fikiran — dia akan buat tekaan sendiri. Sekarang cuba dengan prompt yang lengkap: Context + Instruction + Constraint."

✍️ Taip — Prompt Berstruktur (Good)
Bina landing page untuk [produk]. Context: Saya nak promosikan [produk] kepada [target audience]. Matlamat: dapatkan leads. Instruction: 1. Hero section — headline besar + subheadline + CTA button 2. Features section — 3 kotak kelebihan produk 3. Testimonial section — 3 testimoni dengan gambar 4. Pricing section — 3 tier (Basic, Pro, Enterprise) 5. Footer — copyright + social links Constraint: - Satu file HTML dengan inline CSS - Tema gelap (#0b0d17) dengan aksen cyan (#06d6f0) - Responsive: desktop 3 column, tablet 2 column, mobile 1 column - Font: 'Segoe UI', system-ui, sans-serif - Smooth scroll untuk navigasi
🔮 Jangka (Expected Output)

Output lengkap, siap guna, dengan semua seksyen dinyatakan. Tepat mengikut spesifikasi warna dan responsive. Pelajar akan nampak sendiri perbezaan kualiti yang dramatik.

⏱ 15 minit
🎯 Tujuan

Tunjukkan bahawa prompt yang sempurna jarang berlaku pada percubaan pertama. Proses prompting adalah iterative — minta output, nilai, refine, ulang. Bina navigation bar dalam 3 iterasi.

🗣 Cakap (Pengajar)

"Kita akan bina navigation bar dalam 3 peringkat. Perhatikan bagaimana setiap iterasi menjadikan hasil lebih baik. Jangan harap prompt pertama sempurna."

⏳ Iterasi 1 — Prompt Kasar
Bina satu navigation bar untuk laman web.

Output: Navigation bar ringkas — functional tapi tak menarik. CSS basic, tiada responsive, tiada styling.

🗣 Cakap (Pengajar)

"Functional, tapi tak cukup. Sekarang kita tambah konteks dan constraint — warna tema, responsive, dan feature khusus."

⏳ Iterasi 2 — Tambah Style & Konteks
Bina navigation bar untuk laman web portfolio. Guna tema gelap dengan aksen cyan. Nak responsive — jadikan hamburger menu pada mobile.

Output: Lebih baik — ada styling, warna, dan mula responsive. Tapi masih boleh diperbaiki.

🗣 Cakap (Pengajar)

"Dah nampak perubahan? Tapi kita boleh buat lagi baik. Sekarang tambah detail spesifik — saiz, warna tepat, animasi, dan sticky header."

⏳ Iterasi 3 — Refinement Akhir
Bina navigation bar untuk portfolio peribadi. - Tema gelap (#0b0d17) dengan aksen cyan (#06d6f0) - Menu items: Home, Portfolio, Services, Contact - Desktop: horizontal, rata kiri dengan logo di kiri - Mobile (<768px): hamburger menu dengan slide-in panel - Tambah hover effect dengan underline animated - Smooth transition untuk semua interaksi - Font: 'Segoe UI', system-ui, sans-serif - Sticky di atas page bila scroll

Output: Navigation bar lengkap, siap produksi — dengan animasi, responsive, dan sticky header.

🔮 Jangka (Expected Output)

Pelajar akan faham kuasa iterative refinement — bagaimana menambah detail secara berperingkat menghasilkan output yang jauh lebih baik.

⏱ 10 minit
🎯 Tujuan

Tunjukkan bagaimana role-play (suruh AI memainkan peranan tertentu) menghasilkan output yang lebih berautoriti, kontekstual, dan mendalam.

🗣 Cakap (Pengajar)

"Saya nak tunjuk kesan role-play. Mula-mula saya minta AI review kod tanpa role. Lepas tu saya suruh dia jadi senior developer. Perhatikan perbezaannya."

✍️ Taip — Prompt Tanpa Role
Review kod HTML/CSS ni. Apa pendapat anda?
🗣 Cakap (Pengajar)

"Output okay — tapi biasa je, macam budak baru belajar. Sekarang saya tambah role-play."

✍️ Taip — Prompt dengan Role-Play
Anda seorang frontend developer senior dengan 10+ tahun pengalaman. Anda pakar dalam HTML semantik, accessibility (WCAG), dan CSS best practices. Sila review kod HTML/CSS di bawah. Berikan maklum balas dalam format: 1. ✅ Apa yang sudah bagus 2. ❌ Apa yang perlu diperbaiki 3. 🚀 Cadangan penambahbaikan (dengan kod contoh) Kod untuk review: [paste kod HTML/CSS ringkas yang sengaja ada isu]
🗣 Cakap (Pengajar)

"Nampak perbezaan? Dengan role-play, output AI macam seorang pakar sebenar — lebih terperinci, lebih kritikal, dan lebih membina. Teknik ini sangat berkuasa."

🔮 Jangka (Expected Output)

Output dengan role-play jauh lebih mendalam. AI akan bagi code review yang terperinci, spesifik, dan actionable — macam seorang senior developer sebenar.

📎

Bahan Pengajaran Fasa 2

Semua bahan yang diperlukan untuk sesi Seni Prompting.