Ide baru di Observable Framework
- Observable Framework adalah generator situs statis yang mengompilasi campuran Markdown dan JavaScript menjadi halaman interaktif yang dimuat dengan cepat.
- Framework ini menyediakan server hot reloading yang memungkinkan Anda mengedit dan menyimpan file secara real-time lalu langsung melihat perubahannya di browser.
- Setelah pekerjaan selesai, hasilnya dapat diubah menjadi file statis untuk dideploy ke server atau langsung dipublikasikan ke platform berbagi milik Observable.
JavaScript di dalam Markdown
- Blok kode di dalam Markdown yang diberi tag
js dijalankan sebagai JavaScript di browser pengguna.
- Variabel khusus bernama
now menyediakan waktu saat ini dalam milidetik sejak epoch dan terus diperbarui.
- Observable Framework menyatukan Markdown dan JavaScript ke dalam satu dokumen teks untuk membuat dokumen interaktif.
Semuanya tetap reaktif
- Observable Framework mempertahankan reaktivitas dari Observable notebook, dan otomatis memuat ulang saat sel lain yang menjadi dependensinya berubah.
- Ini sangat berguna terutama saat bekerja dengan input formulir, sehingga interaktivitas real-time dapat ditambahkan ke dokumen dengan mudah.
Hanya menyertakan kode yang digunakan
- Observable Framework menerapkan lazy loading dalam mode pengembangan sehingga hanya kode yang digunakan yang dimuat.
- Saat aplikasi dibangun dan dideploy, hanya kode library yang dirujuk yang dimuat secara otomatis dari jsdelivr CDN.
Cache data pada waktu build
- Framework ini membangun data dashboard pada waktu build melalui mekanisme data loader lalu membundelnya sebagai file statis.
- Data loader adalah skrip yang dapat ditulis dengan bahasa pemrograman apa pun, dijalankan pada waktu build, lalu output-nya disimpan sebagai file.
Perbandingan dengan Observable notebook
- Observable Framework menggunakan kembali ide dan kode dari Observable notebook, tetapi disusun sebagai satu file teks dan seluruhnya bersifat open source.
- Framework ini menggunakan JavaScript standar dan dapat di-check in ke Git dengan format file yang lebih sederhana.
Perubahan strategi
- Observable Framework menunjukkan perubahan strategis di perusahaan Observable yang kini lebih condong ke ranah alat pengembang.
- Dengan tetap menghormati teknologi Observable notebook, Observable Framework juga menyelesaikan masalah yang sebelumnya membatasi penggunaannya karena sifat platform yang tertutup dan keterbatasan akun gratis.
Opini GN⁺
- Observable Framework adalah alat baru untuk visualisasi data dan pembangunan dashboard, dengan potensi memberi kolaborasi dan efisiensi yang lebih baik bagi para pengembang.
- Platform ini memudahkan pembuatan dokumen dan dashboard interaktif yang mendukung pengambilan keputusan berbasis data, sehingga akan bermanfaat bagi ilmuwan data maupun pengembang.
- Namun, keberhasilan Observable Framework akan sangat bergantung pada tingkat adopsi komunitas pengembang dan sejauh mana integrasinya dengan alat-alat yang sudah ada.
- Proyek lain dengan fitur serupa antara lain Jupyter Notebook dan R Shiny, dan perbandingan dengan keduanya dapat membantu memahami kelebihan dan kekurangan Observable Framework dengan lebih baik.
- Saat mengadopsi Observable Framework, perlu mempertimbangkan faktor-faktor seperti kompatibilitas dengan pipeline data yang ada, optimisasi performa, serta dukungan komunitas.
1 komentar
Komentar Hacker News
Observable Framework diibaratkan sebagai "Avengers: Endgame" dalam semesta sinematik Mike Bostock.
Sebagai kekurangan saat memakai Observable Framework, disebutkan fungsinya sebagai sumber contoh d3.
Disebutkan bahwa Observable Framework bisa dengan mudah dipublikasikan ke situs GitHub.
Dibagikan pengalaman menyelesaikan proyek pertama menggunakan notebook Observable.
Dibagikan pengalaman positif terhadap Observable Framework.
Muncul pertanyaan apakah perlu berpindah dari notebook Jupyter ke Observable.
Dijelaskan bahwa jika ada petunjuk konten 'js' di dalam blok kode, isinya akan langsung dijalankan di browser pengguna.
Disebutkan bahwa Observable terintegrasi dengan baik dengan REST API ClickHouse, dan contoh yang melakukan query database secara real-time terasa menarik.
Disiapkan Codespace devcontainer dengan lingkungan Node dan Python yang dikonfigurasi otomatis agar Framework bisa cepat dicoba dan diutak-atik di browser.
Disampaikan pendapat bahwa Observable membatasi basis penggunanya karena hanya mendukung JavaScript.