Mark Stratmann
ABout Background

Tentang Situs Ini

Mengapa saya membuat situs ini

Mengapa situs ini ada?

Masalah yang sudah lama ada dalam mempelajari teknologi baru apa pun adalah bahwa sebagian besar dokumentasi dan contoh yang mungkin Anda temukan di internet atau dari AI begitu sepele sehingga tidak memberi Anda gambaran apakah teknologinya—atau implementasi Anda—akan mampu bertahan pada beban kerja nyata yang kompleks. Contohnya adalah banyaknya contoh aplikasi daftar tugas.

Saya memiliki proyek SASS yang direncanakan berdasarkan beberapa asumsi teknologi yang perlu diuji bahkan sebelum mencoba membangun proyek sebenarnya, dan situs profil pribadi seperti ini, yang digerakkan oleh backend CMS lengkap, cukup kompleks untuk layak dibuat sebagai build produksi yang semestinya dan cukup sederhana sehingga tidak memakan waktu terlalu lama untuk dirangkai; dengan manfaat tambahan, jika semuanya berjalan dengan baik, saya mendapatkan situs profil yang berkinerja baik dan akan menjadi testbed yang bagus untuk eksperimen teknis lainnya.

Cloudflare sebagai target deployment

Cloudflare Workers https://workers.cloudflare.com/ tampak, sekilas, sebagai cara yang sangat murah untuk men-deploy aplikasi yang kompleks. Pengembangan back-end terlihat sederhana dan tangguh, dan paket OpenNext https://opennext.js.org/ tampaknya menyediakan cara yang efisien untuk mengembangkan front-end Anda di Next.js https://nextjs.org/ dan men-deploy ke Cloudflare.

Saya ragu situs ini akan menarik banyak trafik manusia; namun, saya akan berupaya mendorong sebanyak mungkin trafik pencarian web dan crawler AI ke situs ini. Dengan begitu, saya seharusnya bisa mengetahui biaya sebenarnya untuk menjalankan situs yang sibuk di platform Cloudflare.

Buat situs ini lebih rumit daripada seharusnya

Backend Manajemen Konten (CMS)

Sejujurnya, situs ini, dalam kondisi saat ini, bisa saja dirakit secara seadanya dengan agen coding dalam beberapa jam; namun, sistem yang serius seharusnya tidak perlu deployment hanya untuk mengubah konten dasar. Karena itu, situs ini menggunakan CMS penuh berbasis Payload CMS (https://payloadcms.com/) yang di-deploy sebagai Cloudflare Worker terpisah.

Payload sendiri menggunakan database SQL, yang pada gilirannya perlu di-deploy sebagai instance database SQLite CloudFlare D1 https://developers.cloudflare.com/d1/, dan dikelola dengan benar menggunakan migrasi database untuk mendukung siklus hidup pengembangan.

Terjemahan otomatis

Situs ini mendukung 20 bahasa. Mengingat situs web ini merupakan scaffold sederhana untuk konten CMS, sisi i18n ditangani dengan agen coding (Co-pilot dan Claude Opus 4.5) selama pengembangan.

Itu menyisakan semua konten CMS saat ini dan di masa depan yang perlu diterjemahkan secara otomatis setiap kali konten bahasa Inggris diubah.

Worker Berbasis Queue dan Cron

Kebutuhan terjemahan memerlukan proses yang cukup rumit yang:

  • Akan dipicu oleh timer Cron.
  • Mengidentifikasi konten apa pun yang membutuhkan terjemahan baru.
  • Mengeksekusi terjemahan secara andal.
  • Pulih dari kegagalan secara andal.

Karena itu, instance CloudFlare D1 lainnya digunakan untuk melacak pekerjaan terjemahan, dan Cloudflare queues (https://developers.cloudflare.com/queues/) digunakan dengan pola producer-consumer berbasis cron untuk mengelola dan menskalakan tugas. API gpt-5.2 OpenAI dipanggil untuk melakukan terjemahan dan AI.SDK https://ai-sdk.dev/ menyatukan semuanya.

Untuk situs ini, ini berlebihan, tetapi sistem produksi apa pun, pada skala apa pun, memerlukan pola yang tangguh untuk mengorkestrasi pemrosesan latar belakang.

Versi sebelumnya dari situs ini

Saya sudah membuat situs ini dua kali sebelumnya sebagai alat untuk mempelajari teknologi baru:

2013 - Mempelajari Ruby dan AWS

  • Ruby on Rails v4.0.0.
  • Styling Bootstrap v3.
  • CoffeeScript untuk UI.
  • Pola front-end Backbone Marionette VMC.
  • Di-deploy pada host AWS.

2017 - Mempelajari React

  • React v16.0.0 untuk UI.
  • Redux dan Thunk untuk operasi asinkron.
  • Semantic UI untuk styling.

Apa selanjutnya

Situs ini sudah terhubung dengan benar untuk SEO, dan dibutuhkan ritme rutin konten baru untuk mendorong trafik crawler. Saya akan memposting artikel yang lebih detail tentang berbagai teknologi dan solusi yang digunakan.