<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Rizky Pratama</title>
    <description>The latest articles on DEV Community by Rizky Pratama (@rizky_pratama_id).</description>
    <link>https://dev.to/rizky_pratama_id</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4205687%2Fa8980fee-e6d8-4ccf-af8f-d4190755a9fa.png</url>
      <title>DEV Community: Rizky Pratama</title>
      <link>https://dev.to/rizky_pratama_id</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/rizky_pratama_id"/>
    <language>en</language>
    <item>
      <title>Catatan waktu garap kerjaan teknis online: kenapa daftar periksa penilaian sebaiknya dikunci di depan sebelum mulai</title>
      <dc:creator>Rizky Pratama</dc:creator>
      <pubDate>Sun, 25 Oct 2026 10:10:11 +0000</pubDate>
      <link>https://dev.to/rizky_pratama_id/catatan-waktu-garap-kerjaan-teknis-online-kenapa-daftar-periksa-penilaian-sebaiknya-dikunci-di-2c23</link>
      <guid>https://dev.to/rizky_pratama_id/catatan-waktu-garap-kerjaan-teknis-online-kenapa-daftar-periksa-penilaian-sebaiknya-dikunci-di-2c23</guid>
      <description>&lt;p&gt;Halo teman-teman di #indonesia, beberapa minggu terakhir saya sempat ngobrol sama beberapa rekan developer di Jakarta yang sering ambil kerjaan sampingan jarak jauh — mulai dari bikin skrip backend, rapihin alur data, sampai nulis dokumentasi API. Hampir semuanya pernah ngalamin satu kejadian yang polanya mirip banget: waktu tugas baru disepakati di awal, deskripsi permintaannya cuma ditulis singkat tiga atau empat baris. Pas kita tanya apakah ada format khusus yang harus diikuti, jawabannya selalu terdengar santai, "bebas kok mas, yang penting jalan dan jelas." Tapi begitu hasil kerjaan diserahkan, tiba-tiba muncul daftar koreksi panjang soal hal-hal yang sejak awal sama sekali nggak pernah disebut. Kalau sudah begitu, mau debat juga percuma karena patokan tertulisnya memang nggak pernah dikunci sebelum pekerjaan dimulai.&lt;/p&gt;

&lt;p&gt;Dari pengalaman itu saya makin sadar kalau masalah utama di kesepakatan kerja teknis sebenarnya jarang soal tempat penyimpanan dananya, melainkan soal urutan waktu perumusan kriteria serah-terimanya. Rekening bersama atau escrow biasa memang bisa menahan uang, tapi selama definisi tentang apa yang bikin sebuah hasil kerja dianggap selesai baru dikarang belakangan setelah berkas dikirim, posisi orang yang mengerjakan tetap saja rawan digantung.&lt;/p&gt;

&lt;p&gt;Gara-gara penasaran sama desain sistem yang mencoba membalik urutan tersebut, belakangan ini saya nyempetin waktu buat ngulik mekanisme yang dipakai protokol Verdikta di jaringan Base (&lt;a href="https://bounties.verdikta.org" rel="noopener noreferrer"&gt;https://bounties.verdikta.org&lt;/a&gt;). Hal yang menurut saya paling menarik dari kacamata teknis justru aturan utamanya yang mengharuskan rubrik penilaian dipublikasikan lebih dulu ke IPFS dan diikat langsung ke kontrak pintar bersamaan saat dana dikunci di escrow Base. Di dalam dokumen rubrik itu sudah dipisah secara terbuka bagian mana yang jadi syarat gerbang wajib lulus, bagian mana yang merupakan kriteria kualitas dengan bobot persentase tertentu, serta berapa angka skor ambang batas supaya kiriman dianggap sah. Karena rubriknya sudah terikat di on-chain sejak awal, syarat penilaiannya nggak bisa lagi digeser-geser sepihak di tengah jalan.&lt;/p&gt;

&lt;p&gt;Waktu saya pelajari bagaimana kiriman pekerjaan diperiksa di sana, prosesnya juga nggak diserahkan ke mood satu orang, melainkan dijalankan oleh panel juri AI independen yang terdiri dari beberapa model berbeda. Bukannya cuma mengeluarkan vonis lolos atau gagal tanpa penjelasan, setiap kriteria di dalam rubrik diberi skor angka masing-masing lengkap dengan catatan alasan evaluasinya yang tercatat terbuka dan bisa diaudit siapa saja. Jadi kalau sebuah kiriman belum tembus ambang batas, kita bisa lihat persis di kriteria mana nilainya kurang dan berapa poin selisihnya. Aturan pencairannya juga lugas: kiriman pertama yang skor gabungannya berhasil melewati ambang batas langsung otomatis menerima dana escrow dari kontrak pintar, sedangkan kalau sampai tenggat waktu habis belum ada yang lolos, dananya kembali utuh ke pembuat tugas. Dari sisi biaya, protokolnya sendiri nggak memotong komisi platform (0% biaya platform), dan pengirim hanya perlu menyiapkan biaya gas Base serta deposit kecil sekitar 0.00024 ETH untuk membiayai putaran evaluasi orakel.&lt;/p&gt;

&lt;p&gt;Walaupun alur seperti ini terasa jauh lebih terukur, menurut saya kita tetap harus jujur melihat batasannya di lapangan. Panel model AI pada dasarnya cuma bisa memeriksa apa yang dikirim dalam bentuk berkas, kode sumber, teks, atau tangkapan layar digital yang bisa diakses lewat jaringan, sehingga pendekatan ini jelas nggak bisa dipakai kalau tugasnya menuntut pengecekan perangkat keras fisik di dunia nyata. Selain itu, titik krusialnya pindah ke ketelitian orang yang menyusun rubrik di awal: kalau kalimat kriterianya ditulis terlalu kabur atau bobotnya nggak seimbang, skor yang keluar dari model AI juga bakal ikut timpang walaupun seluruh prosesnya transparan, apalagi rubrik yang sudah terkunci di kontrak nggak bisa diedit lagi. Belum lagi sifat kontrak pintar yang kaku terhadap angka ambang batas, di mana hasil kerja yang sebenarnya sudah rapi tapi kurang satu poin saja dari syarat kelulusan tetap bakal ditolak otomatis tanpa ruang tawar-menawar.&lt;/p&gt;

&lt;p&gt;Terlepas dari keterbatasan tadi, kebiasaan mengunci tolok ukur penilaian di depan dan membuka alasan skor per kriteria menurut saya jauh lebih sehat daripada penolakan sepihak dengan alasan "kurang cocok." Buat teman-teman developer di komunitas #indonesia yang sering garap proyek lepas atau ngulik smart contract, menurut kalian apakah rubrik yang dikunci kaku di awal seperti ini bikin kerjaan jadi lebih tenang, atau malah terasa terlalu membatasi ruang diskusi teknis?&lt;/p&gt;

</description>
      <category>indonesia</category>
      <category>web3</category>
      <category>blockchain</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Tips Optimasi RPC dan Manajemen Nonce di Base L2 pake Node.js buat Developer Indonesia</title>
      <dc:creator>Rizky Pratama</dc:creator>
      <pubDate>Sun, 25 Oct 2026 02:11:34 +0000</pubDate>
      <link>https://dev.to/rizky_pratama_id/tips-optimasi-rpc-dan-manajemen-nonce-di-base-l2-pake-nodejs-buat-developer-indonesia-1oah</link>
      <guid>https://dev.to/rizky_pratama_id/tips-optimasi-rpc-dan-manajemen-nonce-di-base-l2-pake-nodejs-buat-developer-indonesia-1oah</guid>
      <description>&lt;p&gt;Halo rekan-rekan developer Indonesia! Belakangan ini gw lagi sering ngoprek script backend pake Node.js buat interaksi langsung sama jaringan Layer-2 terutama Base. Salah satu masalah yang paling sering kejadian waktu kita kirim beberapa transaksi beruntun dari satu wallet adalah error &lt;code&gt;replacement transaction underpriced&lt;/code&gt; atau &lt;code&gt;nonce too low&lt;/code&gt; gara-gara node RPC publik belum sempet sinkronisasi state mempool terbaru.&lt;/p&gt;

&lt;p&gt;Buat ngatasin masalah ini tanpa harus sewa dedicated node yang mahal, ada tiga pendekatan praktis yang biasa gw terapin di project:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Tracking Nonce Lokal di Memori&lt;/strong&gt;: Jangan panggil &lt;code&gt;eth_getTransactionCount&lt;/code&gt; pake parameter &lt;code&gt;latest&lt;/code&gt; setiap kali mau kirim transaksi baru dalam loop cepat. Ambil sekali di awal menggunakan parameter &lt;code&gt;pending&lt;/code&gt;, lalu increment secara lokal di variabel aplikasi sambil tetep nyiapin mekanisme fallback reset kalo ada transaksi yang revert.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Buffer Gas Price 15–25%&lt;/strong&gt;: Di jaringan L2 yang pake OP Stack kayak Base, biaya gas dasarnya memang sangat murah (sering di bawah 0.01 gwei), tapi fluktuasi kecil di base fee blok berikutnya bisa bikin transaksi nyangkut beberapa detik. Menambahkan buffer sekitar 20 persen di atas nilai &lt;code&gt;eth_gasPrice&lt;/code&gt; saat ini hampir gak kerasa di biaya (tetep di bawah satu sen dolar), tapi bikin transaksi langsung masuk di blok berikutnya.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Polling Receipt dengan Exponential Backoff&lt;/strong&gt;: Hindari melakukan spam request &lt;code&gt;eth_getTransactionReceipt&lt;/code&gt; setiap 200ms karena bakal cepet kena rate-limit dari endpoint publik. Interval 2 detik udah sangat ideal karena block time di Base memang 2 detik.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Semoga catatan singkat ini bermanfaat buat teman-teman di komunitas developer Indonesia yang lagi bangun aplikasi atau automasi on-chain. Kalo ada yang punya trik lain buat handle failover multi-RPC, boleh banget diskusi di kolom komentar!&lt;/p&gt;

</description>
      <category>indonesia</category>
      <category>javascript</category>
      <category>node</category>
      <category>web3</category>
    </item>
  </channel>
</rss>
