4 poin oleh GN⁺ 5 jam lalu | Belum ada komentar. | Bagikan ke WhatsApp
  • Inti dari pekerjaan Claude Fable 5 adalah menemukan dan mempersempit jarak antara peta (map, prompt·skill·context) yang diberikan pengguna dan wilayah (territory, codebase·realitas·kendala) tempat pekerjaan benar-benar terjadi, yaitu unknowns
  • Fable adalah model pertama di mana kualitas kerja ditentukan oleh kemampuan pengguna memperjelas unknowns, dan semakin besar beban kerja, semakin banyak unknowns yang akan dihadapi
  • Unknowns dibagi menjadi 4 jenis: Known Knowns / Known Unknowns / Unknown Knowns / Unknown Unknowns, dan mengurangi serta mengantisipasi unknowns adalah kemampuan inti dalam agentic coding
  • Sebelum, selama, dan setelah implementasi, unknowns ditemukan lewat teknik berulang seperti blindspot pass, brainstorming, interview, reference, implementation plan, implementation notes, quiz, dan lainnya
  • Penjelasan, brainstorming, interview, prototype, dan reference adalah cara untuk menemukan unknowns dengan murah sebelum masalah menjadi mahal, dan penting untuk memulai proyek berikutnya dengan meminta Claude membantu menemukan unknowns

Peta dan wilayah, serta unknowns

  • Peta adalah representasi dari pekerjaan yang akan dilakukan, yaitu prompt·skill·context yang diberikan kepada Claude, sedangkan wilayah adalah codebase·realitas·kendala nyata tempat pekerjaan benar-benar berlangsung
  • Perbedaan antara peta dan wilayah itulah unknowns, dan ketika Claude menabrak unknowns, ia harus membuat keputusan berdasarkan tebakan terbaik tentang apa yang diinginkan pengguna
  • Fable adalah model pertama yang kualitas kerjanya mengalami bottleneck pada kemampuan memperjelas unknowns
  • Perencanaan awal saja tidak cukup; unknowns bisa ditemukan jauh di dalam implementasi, atau bahkan memberi tahu bahwa masalah harus diselesaikan dengan cara lain
  • Pekerjaan dengan Fable adalah proses berulang untuk menemukan unknowns sebelum, selama, dan setelah implementasi
  • Beberapa contoh materi yang membantu menemukan unknowns untuk dirujuk nanti

Mengenal unknowns Anda

  • Pecah masalah menjadi 4 kategori
    • Known Knowns: hal-hal yang tertulis di prompt, yang Anda katakan kepada agen sebagai sesuatu yang Anda inginkan
    • Known Unknowns: hal-hal yang belum Anda pahami, tetapi Anda sadar bahwa Anda belum memahaminya
    • Unknown Knowns: hal-hal yang terlalu jelas sehingga tidak ditulis, tetapi akan Anda kenali saat melihatnya
    • Unknown Unknowns: hal-hal yang sama sekali belum dipertimbangkan, pengetahuan yang belum disadari, dan sejauh mana sesuatu bisa menjadi lebih baik tanpa Anda ketahui
  • Agentic coder yang hebat memiliki unknowns yang relatif lebih sedikit dan selaras secara mendalam (in-sync) dengan codebase serta perilaku model, sehingga tahu dengan rinci apa yang mereka inginkan
  • Mengurangi dan mengantisipasi unknowns adalah keterampilan yang bisa ditingkatkan dengan bekerja bersama Claude

Membantu Claude membantu Anda

  • Instruksi perlu seimbang; jika terlalu spesifik, Claude bisa tetap mengikuti arahan saat seharusnya lebih baik berbelok, dan jika terlalu samar, ia akan membuat pilihan berdasarkan best practices industri yang belum tentu cocok dengan tugas
  • Jika unknowns tidak dipertimbangkan, Anda bisa gagal dari kedua sisi, dan akan ingin Claude mengubah arah tanpa tahu kapan jalurnya buntu atau justru terbuka
  • Claude bisa dengan cepat menelusuri codebase dan internet, mengetahui lebih banyak tentang topik rata-rata, serta beriterasi cepat dari kegagalan, sehingga mempercepat penemuan unknowns
  • Yang paling penting adalah memberikan konteks tentang titik awal, yakni menjelaskan posisi proses berpikir Anda, pengalaman terhadap masalah dan codebase, lalu berkolaborasi seperti partner berpikir
  • Saya pernah menulis tentang menggunakan HTML di Claude, dan dalam banyak kasus artifact HTML adalah format terbaik untuk visualisasi dan penyajian

Pra-implementasi

  • Blind Spot Pass

    • Dalam tugas yang belum familiar seperti membuat fitur di area baru atau mengulang desain, sering ada banyak unknown unknowns; Anda mungkin tidak tahu pertanyaan apa yang harus diajukan, seperti apa yang bagus, pekerjaan sebelumnya, atau jebakan yang perlu dihindari
    • Minta Claude menemukan dan menjelaskan unknown unknowns, gunakan langsung istilah "blindspot pass" dan "unknown unknowns", dan penting untuk memberi konteks tentang siapa Anda dan apa yang sudah Anda ketahui
    • Contoh prompt
      • "Saya sedang menambahkan auth provider baru, tapi sama sekali tidak paham modul auth di codebase ini. Lakukan blindspot pass untuk mengidentifikasi unknown unknowns terkait dan bantu saya membuat prompt yang lebih baik"
      • "Saya tidak tahu apa itu color grading, tapi saya harus melakukan grading pada video ini. Ajari saya memahami unknown unknowns dari color grading supaya saya bisa membuat prompt yang lebih baik"
  • Brainstorming dan prototype

    • Di area yang punya banyak unknown knowns, yaitu saat Anda akan tahu kalau melihatnya tetapi sulit mendefinisikan kriterianya di awal, lakukan brainstorming dan prototype bersama Claude
    • Berharga untuk mengidentifikasi dan memverbalkan unknown knowns di awal prototyping, bukan saat implementasi sudah berjalan, karena perubahan kecil pada spesifikasi bisa sangat mengubah implementasi kode dan sulit membatalkan perubahan sebelumnya
      • Contoh: saat Anda hanya ingin melihat tampilan tombol yang ditambahkan pada frame tanpa backend route atau state frontend
    • Desain visual adalah area yang sulit diungkapkan secara jelas tetapi Anda tahu apa yang diinginkan saat melihatnya, jadi mintalah beberapa pendekatan desain
    • Mulailah hampir semua sesi coding dengan fase eksplorasi dan brainstorming untuk mendefinisikan ruang lingkup dengan sengaja, sehingga tidak terlalu sempit atau terlalu luas
    • Contoh prompt
      • "Saya ingin dashboard untuk data ini, tapi saya tidak punya sense visual dan tidak tahu apa saja yang mungkin. Buat 4 halaman HTML dengan arah desain yang benar-benar berbeda agar saya bisa bereaksi"
      • "Sebelum integrasi, buat satu file HTML yang memockup toolbar editor baru dengan data palsu. Saya ingin bereaksi terhadap layout-nya sebelum menyentuh aplikasi yang sebenarnya"
      • "Masalah kasarnya adalah churn pengguna setelah onboarding. Telusuri codebase dan brainstorm 10 titik intervensi, dari yang paling murah sampai yang paling ambisius"
  • Interview

    • Jika setelah brainstorming masih ada unknowns yang tersisa, minta Claude melakukan interview tentang unknowns dan ambiguitas tersebut, serta beri konteks masalah agar ia terdorong mengajukan pertanyaan
    • Contoh prompt
      • "Tanyakan bagian yang ambigu satu per satu, dan prioritaskan pertanyaan yang jawabannya bisa mengubah arsitektur"
  • Reference

    • Saat Anda tidak bisa mendeskripsikan dengan rinci apa yang diinginkan, jawaban terbaik adalah reference; bisa berupa diagram, dokumen, atau gambar, tetapi source code adalah reference terbaik secara mutlak
    • Jika ada library yang diimplementasikan dengan cara tertentu atau komponen desain yang Anda suka, tunjuk foldernya meski dalam bahasa lain dan arahkan Claude untuk mencarinya
    • Claude Design juga bekerja sama; jika Anda menunjuk modul dari situs web yang Anda sukai, Claude dapat membaca kode di baliknya, bukan sekadar screenshot, lalu memberi informasi kaya tentang markup, struktur, dan cara implementasi nyatanya
    • Contoh prompt
      • "Rust crate di vendor/rate-limiter ini mengimplementasikan perilaku backoff yang saya inginkan dengan tepat. Baca lalu implementasikan ulang makna yang sama ke klien API TypeScript kita"
  • Rencana implementasi

    • Saat siap mengimplementasikan, mintalah rencana implementasi untuk ditinjau yang berfokus pada bagian yang paling mungkin berubah (model data, type interface, alur UX), agar titik-titik yang perlu revisi muncul ke permukaan
    • Contoh prompt
      • "Tulis rencana implementasi dalam HTML, utamakan keputusan yang paling mungkin saya ubah (perubahan model data, type interface baru, elemen yang berhadapan dengan pengguna), dan taruh refactoring mekanis di bagian paling bawah"

Selama implementasi

  • Catatan implementasi

    • Setelah puas dengan rencana, buat sesi baru dan masukkan artifact seperti file spesifikasi dan prototype ke prompt, lalu minta agen melakukan implementasi
    • Sebanyak apa pun Anda merencanakan, unknown unknowns selalu mengintai, dan edge case yang ditemukan agen saat bekerja bisa mengharuskan pendekatan lain
    • Minta Claude Code mencatat keputusan yang diambil ke file sementara implementation-notes.md(atau .html) agar percobaan berikutnya bisa belajar darinya
    • Contoh prompt
      • "Pertahankan file implementation-notes.md. Jika menemukan edge case yang membuat Anda menyimpang dari rencana, ambil pilihan konservatif, catat di 'Deviations', lalu lanjutkan"

Pasca-implementasi

  • Pitch dan materi penjelas

    • Salah satu bagian terpenting dalam merilis sesuatu adalah mendapatkan kesepakatan dan persetujuan, dan membuat artifact pitch serta penjelasan dari dokumentasi akhir akan membantu
      • Saat reviewer memulai dari unknowns yang sama seperti Anda, ini mempercepat pemahaman
      • Saat ahli ingin memastikan bahwa unknowns dan titik kegagalan umum telah dipertimbangkan, ini mempercepat persetujuan
    • Contoh prompt
      • "Gabungkan prototype, spesifikasi, dan catatan implementasi menjadi satu dokumen untuk diposting ke Slack agar mendapatkan kesepakatan. Letakkan demo GIF di bagian paling depan"
  • Quiz

    • Setelah sesi kerja yang panjang, Claude mungkin telah menyelesaikan lebih banyak dari yang Anda kira, dan hanya dengan code diff Anda mungkin hanya memahami secara dangkal perilaku yang bergantung pada jalur kode yang sudah ada
    • Setelah memberi konteks, minta Claude membuat quiz tentang perubahan tersebut untuk memverifikasi pemahaman, dan merge hanya setelah Anda lulus sempurna
    • Contoh prompt
      • "Saya ingin memahami semua yang terjadi dalam perubahan ini. Buat laporan HTML yang memuat konteks, intuisi, apa yang dikerjakan, dan tambahkan quiz yang wajib saya lulus di bagian bawah"

Integrasi yang terlihat dari kasus peluncuran Fable

  • Video peluncuran Fable diedit sepenuhnya dengan Claude Code, meski itu adalah area baru dan bukan bidang keahlian
  • Dimulai dari apa yang sudah diketahui: saya tahu Claude bisa melakukan editing video dan transkripsi lewat kode, tetapi tidak yakin dengan akurasinya, jadi saya meminta penjelasan tentang prinsip transkripsi ala Whisper dan apakah ffmpeg bisa memangkas ums dan jeda panjang dengan akurat
  • Saya menginginkan UI yang menyelaraskan kata yang diucapkan dengan timing-nya, tetapi tidak yakin apakah itu mungkin, jadi saya memverifikasinya dengan membuat video prototype menggunakan Remotion dan transkripsi
  • Saya tahu video itu tampak agak muted karena color grading, tetapi tidak tahu apa itu, jadi alih-alih hanya memilih variasi, saya meminta diajari color grading untuk menemukan unknowns

Menyamakan peta dan wilayah

  • Semakin baik modelnya, semakin banyak yang bisa dicapai dengan pendekatan yang tepat, dan jika tugas jangka panjang kembali dengan hasil yang salah, biasanya Anda perlu menghabiskan lebih banyak waktu pada definisi unknowns atau rencana implementasi yang memungkinkan Claude berimprovisasi
  • Semua penjelasan, brainstorming, interview, prototype, dan reference adalah cara untuk menemukan unknowns dengan murah sebelum masalah menjadi mahal
  • Kuncinya adalah memulai proyek berikutnya dengan meminta Claude membantu menemukan unknowns

Belum ada komentar.

Belum ada komentar.