Decker: Reinkarnasi HyperCard dengan grafis 1-bit
(beyondloom.com)Pengenalan platform multimedia Decker
- Decker adalah platform multimedia untuk membuat dan membagikan dokumen interaktif yang mencakup suara, gambar, hypertext, dan perilaku skrip
- Bisa langsung dicoba di browser web
- Dibangun di atas warisan HyperCard dan estetika visual MacOS klasik
- Sambil mempertahankan kesederhanaan dan kemudahan belajar yang ditawarkan HyperCard, Decker menambahkan banyak peningkatan kegunaan yang halus maupun jelas, seperti riwayat undo yang mendalam, dukungan roda gulir dan layar sentuh, navigasi keyboard yang lebih modern, serta pekerjaan penyuntingan massal
Hal-hal yang bisa dilakukan dengan Decker
- Siapa pun bisa menggunakan Decker untuk membuat E-Zine, merapikan catatan, presentasi, membuat game petualangan, mencorat-coret pixel art 1-bit, dan lain-lain
- Estetika keseluruhan "ditherpunk" terasa hangat, sedikit nostalgik, menyenangkan, dan memberi batasan kreatif yang unik
- Sebagai alat prototyping, Decker mendorong pendekatan yang bersifat sketsa dan menerima ketidaksempurnaan
- Deck yang sudah selesai disimpan sebagai dokumen .html mandiri yang berjalan sendiri di browser web dan dapat dibagikan di mana pun yang bisa meng-host atau menyematkan halaman web
- Decker juga berjalan secara native di MacOS, Windows, dan Linux
Pengenalan bahasa skrip Lil
- Untuk proyek yang lebih kompleks, Decker menyediakan bahasa skrip baru bernama Lil
- Lil sangat dipengaruhi oleh Lua, bahasa imperatif yang luas digunakan untuk ditanamkan ke dalam tool dan game engine, serta Q, bahasa fungsional keluarga APL yang digunakan bersama database deret waktu
- Lil mudah dipelajari dan cukup mengikuti cara-cara yang sudah ada agar tidak terasa asing bagi pengguna yang punya pengalaman pemrograman, tetapi juga mencakup kejutan menyenangkan seperti aritmetika skalar-vektor implisit dan bahasa kueri mirip SQL yang terintegrasi
- Hanya dengan beberapa baris Lil, banyak pekerjaan bisa ditangani
Berbagai fitur Decker
- Decker menyediakan widget interaktif bawaan untuk membangun antarmuka serta kemampuan untuk mendefinisikan widget baru
- Widget kustom dan definisinya dapat disalin dan ditempel menggunakan clipboard sistem, lalu dibagikan di mana pun teks bisa dibagikan atau disimpan
- Setiap deck adalah kotak alat berisi komponen-komponen yang dapat dipakai ulang untuk proyek lain
- Decker ramah command line. Saat dibangun dari source, Decker disertai Lilt, interpreter mandiri Lil, yang dapat membaca, menulis, memanipulasi, bahkan menjalankan dokumen Decker secara "headless"
- Karena dependensi Lilt jauh lebih sedikit daripada Decker itu sendiri, Lilt dapat dikompilasi menjadi APE lintas platform yang bisa dijalankan, sehingga memungkinkan penulisan shell script yang dapat berjalan di mana saja
- Ada juga interpreter Lil yang berjalan di POSIX AWK
- Deck disimpan dalam format teks berorientasi baris yang berinteroperasi dengan baik dengan tool source control yang sudah ada seperti Git dan SVN
Contoh penggunaan dan modul Decker
- Bagian "Examples" memperkenalkan berbagai proyek contoh yang memanfaatkan Decker
- Tur panduan Decker, 5GUIs, interpreter CHIP-8, segala hal tentang Draggable, segala hal tentang suara, game puzzle dorong balok Sokoban, dan lain-lain
- Bagian "Modules" memperkenalkan berbagai modul plugin untuk Decker
- Plot: grafik sederhana untuk Decker
- Zazz: pembantu animasi untuk Decker
- Ease: fungsi easing untuk Decker
- Dialogizer: modal visual novel untuk Decker
- Puppeteer: animasi sprite visual novel untuk Decker
Dokumentasi dan sumber daya tambahan
- Tersedia berbagai dokumentasi seperti manual referensi Decker, format dokumen Decker, dan bahasa pemrograman Lil
- Tersedia juga materi pembelajaran Lil seperti belajar bahasa Lil dalam 10 menit, taman bermain Lil, dan kartu referensi cepat Lil
- Source code dan pelacak bug tersedia di GitHub
- Decker bebas dan open source di bawah lisensi MIT
- Rilis biner berkala untuk MacOS dan Windows tersedia di Itch.io
- Halaman Itch juga mencakup forum komunitas untuk mendiskusikan Decker dan membagikan proyek yang dibuat dengan Decker
Opini GN⁺
-
Implementasi Decker dalam POSIX AWK adalah upaya yang sangat menarik. AWK adalah bahasa skrip yang dikhususkan untuk pemrosesan teks, sehingga tampak cocok sebagai bahasa dasar untuk mengimplementasikan bahasa skrip seperti Lil. Dengan implementasi AWK, kemungkinan besar Decker menjadi mudah dipindahkan dan dijalankan di berbagai platform.
-
Menjadikan format penyimpanan Decker sebagai teks per baris tampak seperti pilihan yang sangat bijak. Format berbasis teks sangat kompatibel dengan VCS seperti Git sehingga memudahkan version control, dan perubahan juga bisa dilacak dengan diff. Format biner punya kelemahan karena mudah rusak dan sulit dikelola versinya.
-
Filosofi desain Lil menarik. Disebut terpengaruh oleh Lua dan Q; Lua banyak dipakai untuk game scripting, sedangkan Q adalah bahasa turunan APL yang dikhususkan untuk kueri database. Tampaknya Lil menggabungkan kelebihan kedua bahasa itu untuk membentuk karakteristik uniknya sendiri. Terutama operasi skalar-vektor dan sintaks kueri bawaan adalah fitur yang sulit ditemukan pada bahasa yang sudah ada.
-
Cakupan pemanfaatannya tampak sangat luas, mulai dari E-Zine, catatan, presentasi, game petualangan, hingga pixel art. Rasanya bisa dipakai di banyak bidang, dari aplikasi kompleks sampai dokumen sederhana. Namun, karena sangat serbaguna, mungkin saja fiturnya kalah dibanding tool yang dikhususkan untuk masing-masing bidang.
-
UI bergaya Mac OS klasik secara pribadi memang menarik, tetapi bagi pengguna modern bisa terasa terlalu retro. Akan bagus jika ada fitur skin yang juga menyediakan tema modern. Bagi pengguna Windows atau Linux, antarmukanya mungkin juga terasa asing.
1 komentar
Opini Hacker News
Jika grafik 1-bit sedikit diubah menjadi grafik 2-bit, keterbacaan foto bisa meningkat drastis. Sebagai contoh, solar.lowtechmagazine.com menggunakan hingga 6 warna untuk mewujudkan estetika yang keren.
Ada rasa penasaran soal packaging Decker. Apakah sedang dipertimbangkan pendekatan seperti Redbean, yaitu menggabungkan Lua, SQLite, dan lainnya ke dalam satu berkas, mengekstraknya sebagai zip, memasukkan kode HTML dan Lua, lalu mengganti namanya untuk didistribusikan.
Decker sebelumnya sudah beberapa kali diperkenalkan di HN. Tiga bulan lalu mendapat 191 poin dan 36 komentar. Dua tahun lalu mendapat 215 poin dan 88 komentar.
Anjuran untuk mencoba Decker secara langsung. Tautan ke situs demo juga disediakan.
Ada pendapat bahwa Decker membangkitkan kenangan manis masa kecil. Akan lebih bagus lagi jika ada fitur pinch zoom di mobile.
Kelemahan terbesar HyperCard adalah tidak mendukung warna ketika Mac mulai mengadopsi warna. Saat SMA, semua Mac di sekolah sudah berwarna, tetapi HyperCard tidak.
Ada kenangan menggunakan NASA laserdisc di sekolah, dengan sistem navigasi informasi shuttle yang dibuat memakai HyperCard. Saat itu tidak terlalu terkesan, tetapi tetap merupakan pengalaman yang keren.
Decker tampak mirip dengan HyperCard karena sama-sama memakai grafik 1-bit, tetapi cara memakainya cukup berbeda. Pengguna harus mempelajari bahasa unik "Lil", dan banyak fitur kemudahan HyperCard/MacPaint yang hilang, sehingga bisa jadi tidak sesuai ekspektasi. Seniman HyperCard masih bisa terus memakai HyperCard di browser berkat Infinite Mac.
Ada pendapat bahwa Decker itu menyenangkan. Wyldcard yang mendukung scripting HyperTalk juga direkomendasikan.
Muncul pertanyaan mengapa Apple atau MS tidak berupaya lebih keras membuat alat pengembangan kasual seperti ini. VB dan Python memang bagus, tetapi akan menyenangkan jika ada alat yang dioptimalkan untuk membuat aplikasi kecil.
Banyak kecintaan terhadap HyperCard. Meski tidak mengalami zamannya, alat itu tampaknya memungkinkan orang membuat alat kecil yang berguna. Rasanya juga serbaguna dengan cara yang berbeda dari spreadsheet.
Ada rasa penasaran, bagi orang yang mengalami era itu, alat modern apa yang bisa menangkap nuansa serupa. Generasi yang sedikit lebih muda punya nostalgia terhadap Delphi/VB dan Flash. Alat-alat yang tidak sempurna, tetapi mampu memicu kreativitas.
Alat-alat sekarang memang jauh lebih baik, tetapi terasa ada sesuatu yang hilang dalam prosesnya.