macOS perlu mendapatkan kembali grid
(blog.hopefullyuseful.com)- Spaces di macOS pada era Leopard memungkinkan pengguna memperlakukan desktop virtual seperti layar fisik nyata dengan grid 3x3 kustom, sehingga browser, editor, Xcode, dan simulator bisa diakses lewat ingatan spasial
- Mission Control di macOS Lion membatasi desktop virtual menjadi satu baris horizontal, sehingga pengguna harus meluncur lewat keyboard ke layar tertentu atau mengingat nomor pintas, yang merusak ingatan spasial
- Total Spaces menimbulkan perlambatan dan kemudian bergantung pada modifikasi Dock sistem serta bypass SIP, sementara window manager seperti Yabai/Aerospace tidak cocok dengan aplikasi layar penuh dan preferensi ruang khusus per tugas
- GridLion lahir sebagai solusi setelah melihat InstantSpaceSwitcher memindahkan space tanpa animasi; alih-alih memakai API Mission Control yang terkunci, aplikasi ini memodelkan space native satu baris agar terlihat seperti grid
- LLM membantu membuat prototipe yang berfungsi hanya dalam sehari, tetapi nuansa UI tetap memerlukan loop umpan balik manusia, dan karena keterbatasan API yang masih tersisa di GridLion, Spaces berbasis grid seharusnya kembali menjadi fitur OS
Ingatan spasial yang diciptakan Leopard Spaces
- Spaces di macOS 10.5 Leopard membawa desktop virtual ke macOS dan memungkinkan pengguna menata ruang dalam grid sesuai keinginan
- Grid 3x3 digunakan seperti 9 layar, sehingga aplikasi dan tugas bisa dipasang tetap, misalnya browser web di tengah, editor web di atas, Xcode di kiri atas, dan simulator iOS di bawahnya
- Cara berpindah ke lokasi tertentu dengan sekali penekanan tombol membangun memori otot dan ingatan spasial, seperti melihat beberapa monitor fisik yang benar-benar terpisah
- Grid 16 layar sequencing di EasyBeats Drum Machine juga terinspirasi langsung dari tata letak Spaces milik Apple
Grid yang hilang setelah Lion
- macOS Lion memperkenalkan Mission Control dan membatasi desktop virtual menjadi satu baris horizontal
- Dalam satu baris horizontal, untuk berpindah ke layar tertentu dengan keyboard pengguna harus terus bergerak ke samping; bahkan jika memakai pintasan langsung, tetap harus mengingat apakah browser ada di layar 7 atau 8
- Perubahan ini membuat cara mengingat desktop berdasarkan posisi spasial jadi sulit dipertahankan
- Ada alternatif seperti Total Spaces, tetapi menimbulkan perlambatan, bergantung pada modifikasi Dock sistem, dan belakangan memerlukan bypass SIP
Ruang per tugas, bukan sekadar window manager
- Window manager seperti Yabai dan Aerospace bukan solusi yang cocok untuk semua pengguna
- Cara mengatur jendela di atas desktop terasa lebih seperti memindahkan kertas di atas meja, sementara yang dibutuhkan lebih mirip meja kerja terpisah tempat semua hal tetap berada di posisinya
- Aplikasi layar penuh dan mode split di macOS memberi area khusus untuk satu tugas, sehingga lebih cocok dengan penjelajahan space berbasis grid
Cara kerja GridLion
- InstantSpaceSwitcher menghapus animasi perpindahan space di macOS tanpa memodifikasi sistem, dan setelah melihat perpindahan tanpa animasi itu muncul kemungkinan untuk menyelesaikan masalah navigasi grid
- macOS mengunci sebagian besar API Mission Control, sehingga desktop tidak bisa ditambahkan atau disusun ulang lewat API yang terdokumentasi
- GridLion memilih pendekatan dengan menaruh wrapper ringan di atas space native, lalu menampilkan space satu baris milik macOS sebagai grid di dalam model internalnya
- Dengan bantuan LLM, prototipe kasar tetapi berfungsi berhasil dibuat dalam sehari, dan setelah dipakai beberapa hari menjadi jelas bahwa dibutuhkan alat yang lebih matang
- Sekitar sebulan kemudian hasilnya mencapai tingkat yang memuaskan, dan nama aplikasi diambil dari masalah yang muncul sejak macOS Lion digabungkan dengan konsep grid menjadi GridLion
Izin dan hambatan distribusi
- Untuk menangkap pintasan keyboard global dan menavigasi space, diperlukan izin
Accessibilitydi macOS - Alur izin macOS tidak selesai seketika seperti di iOS; pengguna harus membuka Settings, mencari toggle tertentu, menyalakannya, lalu menyetujui prompt keamanan tambahan
- Untuk membuat pratinjau kecil tiap space juga diperlukan izin
Screen and System Audio Recording, dan snapshot pratinjau dari jendela tak terlihat serta layar memunculkan dialog peringatan yang lebih keras - GridLion tetap bisa berfungsi tanpa izin tersebut, tetapi fitur pratinjau memerlukannya
- Untuk membangun kepercayaan, aplikasi harus tidak menyentuh jaringan kecuali saat pengguna meminta pemeriksaan pembaruan dan verifikasi kunci lisensi
- GridLion tidak bisa masuk App Store karena memanggil API privat untuk mendapatkan informasi space
- Untuk berjualan di luar App Store, dibutuhkan Merchant of Record yang menangani pembelian, pajak, dan refund; kandidatnya adalah Paddle, GumRoad, dan Lemon Squeezy
- Lemon Squeezy menyediakan License code API untuk memberi pembeli kunci lisensi serta metode aktivasi, deaktivasi, dan verifikasi
- Persetujuan Lemon Squeezy mensyaratkan pembuktian bahwa produk yang dijual punya nilai dan kegunaan nyata, termasuk screencast dan bukti akun media sosial
- Bahkan sebelum persetujuan keluar, akun uji sudah bisa digunakan sehingga integrasi dengan aplikasi mudah disiapkan dan diuji
LLM dan keterbatasan yang masih tersisa
- LLM memudahkan iterasi pada pekerjaan dengan tujuan yang jelas, seperti hasil API tertentu atau kueri dataset besar, karena hasilnya bisa dilihat lalu diulang
- Antarmuka pengguna sangat bergantung pada rasa, jadi fitur yang terlihat oleh pengguna tetap membutuhkan manusia di dalam loop umpan balik
- Dalam kondisi hampir 10 tahun tidak mengerjakan pengembangan native Mac/iOS, LLM sangat membantu, tetapi masih ada pertanyaan apakah aplikasi yang sama bisa dibuat dalam waktu serupa dengan cara lama sambil belajar lebih banyak
- GridLion menargetkan navigasi dan penataan ulang grid space, kinerja cepat dan stabil, serta pengaturan ukuran grid dan pintasan per display
- Tidak ada API yang andal untuk memindahkan space dari satu display ke display lain atau memindahkan jendela dari satu space ke space lain
- GridLion bekerja bersama Mission Control, jadi pekerjaan seperti itu bisa ditangani lewat Mission Control
- Fitur agar aplikasi tertentu selalu muncul di posisi grid tertentu saat dijalankan sebenarnya dulu ada di macOS Spaces asli, tetapi di GridLion itu masih menjadi pekerjaan rumah
- Spaces berbasis grid paling ideal jika kembali menjadi fitur OS native di versi macOS berikutnya
1 komentar
Komentar Hacker News
Pendekatan Apple saat ini tampak seperti melempar pengguna ke dalam petualangan admin sistem mini 4–5 langkah setiap kali, dengan alasan ingin mencegah masalah “pemula toh tetap menekan izinkan”
Pengguna harus mencari toggle kecil di pengaturan, menyalakannya, lalu melewati prompt keamanan lagi, dan fakta bahwa bahkan pengguna mahir pun tidak punya cara untuk mematikan ini terasa seperti kurangnya rasa hormat terhadap pengguna
Masalah nenek atau anak 10 tahun yang menekan “izinkan akses ke seluruh filesystem dan keylogging” pada executable mencurigakan memang masalah yang harus dipecahkan Apple, tetapi untuk pengguna yang tahu apa yang mereka lakukan, harus ada cara untuk mematikan perlindungan ini
Meski tidak sempurna, pendekatan Apple cukup bagus, dan jika prosedur seperti ini harus sering dilewati, itu juga bukan pertanda baik dari sisi keamanan
Sebaliknya, situs web sering meminta izin notifikasi padahal hampir tak pernah diinginkan. Saat baru-baru ini melihat pengaturan, saya kaget karena ternyata cukup banyak yang terizinkan tanpa sengaja, dan kira-kira 5% tampaknya salah pencet
Izin ini dipakai untuk membuat keylogger. Itu saja. Karena ini adalah izin yang memungkinkan penulisan keylogger, ini tidak seharusnya selesai dengan satu klik, dan cukup berbahaya hingga langkah tambahan memang layak dibenarkan
spctl --master-disablesekali dan sekali lewat menu pengaturan, selesai. Saya tidak mengerti kenapa TCC tidak bisa bekerja seperti iniUntuk kebutuhan pratinjau, Apple bisa menyediakan API untuk tugas-tugas umum. Sistem operasi bisa menyediakan gambar, lalu melakukan sampling pada refresh rate baru yang sulit dipakai untuk perekaman arbitrer
Kombinasi tombol juga bisa dibuat dengan memanfaatkan kembali tombol emoji yang saat ini tidak bisa di-bind dari luar, sehingga penangkapan hanya diizinkan setelah “urutan ajaib” tertentu. Sistem operasi akan mengelola perintah secara terpusat, dan program hanya menerima perintah, bukan input tombol spesifik, sehingga keuntungan koordinasi konflik juga jadi terpusat. Di macOS saat ini, bagian ini cukup menyakitkan
Mungkin tidak menyelesaikan semua masalah, tetapi setidaknya sebagian. Pasti ada cara yang lebih baik juga. Apple punya cukup banyak programmer pintar, jadi tim produk seharusnya membiarkan masalah yang jelas-jelas mengganggu pengguna ahli ini diperbaiki
Sebelum MacOS 10.11, Mission Control itu bagus. Jika menyapu ke atas dengan empat jari, ia menampilkan pratinjau semua Spaces, tetapi di 10.11 entah kenapa itu dirusak sehingga bilahnya hanya menampilkan nama seperti “Desktop 1”, “Desktop 2”, dan pratinjau baru muncul jika kursor diarahkan ke sana
Efek nyatanya adalah penggunaan Spaces jadi membuat orang kehilangan orientasi dan menuntut hafalan
Beberapa software pihak ketiga pura-pura memulihkan ini, tetapi caranya dengan menggerakkan mouse untuk meniru hover, jadi ada jeda dan tidak terintegrasi dengan animasi secara benar. Ada juga patch yang bekerja dengan mematikan SIP dan menyuntikkan kode (https://github.com/briankendall/forceFullDesktopBar), tetapi akhirnya tidak lagi dirawat
Setelah 10 tahun, saya jadi bertanya-tanya apakah masih ada orang di Apple yang ingat bahwa UI ini dulu pernah bagus
Tapi saya sama sekali tidak mengerti kenapa desktop dan layar penuh perlu punya perilaku pratinjau yang berbeda
Bagian UX ini yang paling menjengkelkan adalah Spaces tersusun ulang tanpa alasan yang jelas. Saya biasanya membuka beberapa jendela IDE, jadi melelahkan karena harus terus mengecek apakah jendelanya berpindah
Perlu ada konsep seperti proyek atau tugas di seluruh sistem operasi. Konsep ini harus melintasi aplikasi, dan terintegrasi dalam dengan manajemen jendela serta Spaces
Multitasking dan perpindahan konteks meningkat selama beberapa tahun terakhir, instant messaging mendorongnya naik lagi, dan alur kerja berbasis agen akan mendorong lebih jauh ke arah itu. Karena aplikasi yang sama dipakai di banyak tugas, ini bukan perhatian di level aplikasi, melainkan harus didukung oleh sistem operasi
IDE sedikit membantu karena punya konsep primitif workspace atau project dan bisa memulihkan konteks kode serta terminal. Tetapi halaman web, agen di luar IDE, chat terkait dengan rekan kerja, aplikasi manajemen proyek, dan hal-hal terhubung lain selalu tertinggal terpisah
Ini jelas bukan perhatian di level aplikasi melainkan perhatian di level sistem operasi. Sebagian eksperimen iPad dengan tata letak jendela alternatif tampak punya potensi, tetapi menurut saya pribadi belum cukup kuat atau intuitif
Saya tidak paham kenapa lebih banyak power user tidak menganggap konfigurasi ini ideal. Saya berharap Zen Browser menjadi alternatif yang solid
¹https://blogs.kde.org/2026/01/17/streamline-plasma-with-acti...
Saya juga suka karena workspace punya ruang tak terbatas, jadi saya tidak perlu berpikir membuat workspace baru hanya karena satu workspace terasa sempit
Tidak bisa membuktikannya, tetapi ia merasa mungkin dirinya menjadi inspirasi atau penyebab mengapa Apple di Leopard “entah bagaimana membatasinya hanya menjadi satu baris horizontal” untuk Spaces
Pada 2009 ia membuat video konsep pengelola jendela linear dengan navigasi gestur, dan meski sekarang hampir terlupakan, saat itu cukup banyak dibahas media teknologi serta memengaruhi beberapa proof of concept di awal 2010-an
Pengelolaan jendela linear memang bukan selera semua orang, tetapi menurutnya itu tetap ide yang valid. Melihat rilis kali ini dan reaksinya memberinya semangat, dan sekarang ia benar-benar sedang mengerjakan sesuatu di ranah seperti ini
Hari ini saya menghabiskan satu jam mencoba membuatnya bekerja seperti yang saya harapkan, tetapi masih ada hal aneh. Bahkan setelah mematikan pengurutan ulang otomatis berbasis penggunaan, urutan pratinjau swipe tiga jari dan urutan jendela yang sebenarnya tetap berbeda. Urutan visualnya sesuai harapan, tetapi urutan swipe-nya tidak linear
https://github.com/mogenson/PaperWM.spoon
Saya benar-benar benci desain itu dan dampaknya pada Gnome. Grid jauh lebih baik
Manajemen jendela di macOS menghalangi saya pindah ke Mac. Saya juga sudah mencoba solusi mirip Aerospace, tetapi tidak bisa mereplikasi pengalaman cepat dan minim gangguan yang saya rasakan di i3wm
Sayangnya, pengelola jendela macOS mirip notifikasi di iOS. Seiring waktu kita bisa terbiasa dengan kekacauan yang menurunkan produktivitas, tetapi jadi melewatkan solusi yang lebih baik. Dan karena mungkin semua pengembang macOS memakai Mac, besar kemungkinan mereka tidak melihat atau memahami pendekatan lain yang lebih baik
Saya terkejut melihat betapa bodohnya semua hal di sekitar fitur ini dibuat. Hal-hal yang beberapa tahun lalu masih bisa dilakukan sekarang sudah tidak bisa lagi. Misalnya berpindah desktop atau workspace dengan keyboard, dan hal-hal seperti grid
Dengan aplikasi “AltTab” setidaknya saya bisa berpindah aplikasi tanpa mouse, dan dengan raycast saya bisa menata jendela, tetapi di macOS perpindahan dan penataan terasa jauh lebih lambat daripada di tiling window manager, dan itu menyakitkan
Saya yakin ancaman terbesar bagi UI yang bagus adalah terlalu banyak desainer UI profesional. Setengah dari desainer UI berada di bawah median, dan orang-orang ini memilih desain UI sebagai profesi
Dari tahun ke tahun, karier tidak bisa berkembang hanya dengan mempertahankan status quo, jadi mereka harus mendesain sesuatu yang baru. Baik yang lama bekerja dengan baik atau tidak, tetap akan dibuat ulang. Lalu karena setengah desainer UI berada di bawah median, ada kemungkinan 50% desain UI baru itu justru kemunduran
Dan akhirnya kita sampai pada situasi orang-orang di panggung presentasi Apple berbicara tentang Liquid Glass. Yang menyedihkan, banyak desainer tampaknya hanya fokus pada visual dan hampir tidak memahami kegunaan. Misalnya, berapa banyak desainer baru di industri ini yang tahu Hukum Fitts? Berapa banyak yang bertahan menentang masalah kegunaan Liquid Glass yang jelas? Sejujurnya, kecuali beberapa pengecualian langka, para desainerlah masalahnya
Hal-hal seperti tujuan produk, tujuan bagian UI ini, faktor manusia, desain interaksi, dan pengalaman pengguna di luar unsur estetika termasuk di dalamnya
Masing-masing memang banyak dibicarakan, tetapi tidak banyak benar-benar dipertimbangkan. Karena itu bukan faktor yang menang di portofolio wawancara atau materi laporan untuk pimpinan. Akibatnya, terbentuk struktur yang menyaring keras elemen-elemen tersebut
Sedikit di luar topik, tetapi Aqua UI lama terlihat jauh lebih bagus. Bukan cuma jauh lebih mudah melihat mana kontrol dan mana teks, tetapi juga lebih indah secara visual
Ada tombol yang terlihat seperti tombol untuk setiap tindakan yang mungkin dilakukan, dan dengan melihat toolbar kita sering bisa langsung memahami seluruh tindakan yang tersedia. Kita tidak perlu menebak apakah bagian tertentu dari konten bisa diklik atau diedit
Sekarang semuanya diberi ruang kosong berlebihan. UI Control Panel Windows modern sering terasa seperti dinding teks multi-kolom dengan banyak ruang kosong dan beberapa sakelar yang tersebar. Untuk memuat jumlah opsi yang sama seperti UI lama, beberapa toggle harus disembunyikan dengan alasan “tidak ada yang membutuhkannya lagi”, atau ditambah langkah navigasi perantara. Akibatnya, Control Panel baru terasa membengkak dan kurang berguna
Ini menyelesaikan hal menyebalkan yang saya alami puluhan kali setiap hari
Grid memang bagus, tapi yang lebih baik adalah perpindahan layar virtual seketika
Dari semua cara macOS modern “membunuhmu dengan ribuan ketidaknyamanan kecil”, hampir tidak ada yang lebih buruk daripada harus menekan Ctrl→→→→→→→ dan terus menahan animasi berulang
Saya tidak bisa memastikan alasannya, tapi rasanya seperti para desainer visual yang belum matang mengira kita ingin melihat animasi keren bukan cuma sekali di demo atau tutorial, melainkan berulang sepanjang hari, selama puluhan tahun
Sama sekali tidak. Sekali saja sudah cukup. Saya tidak ingin animasi. Dan implementasi “Kurangi Gerakan” itu menghina. Jeda waktunya tetap ada, hanya diganti menjadi crossfade buram
Saya tidak mengerti bagaimana perusahaan dengan sumber daya tak terbatas dan desainer berbakat bisa membuat hal seperti ini
Saya memakai Instant Space Switcher sebagai solusi yang khusus menargetkan masalah ini, dan dampaknya benar-benar mengubah hidup
Ctrl-UpArrowlalu mengeklik Space yang diinginkan. Memang tidak seketika, tapi saat desktop sudah banyak ini bisa lebih baik daripada berputar satu per satuMenonaktifkan “Automatically rearrange Spaces based on most recent use” menurut saya juga wajib
Secara pribadi, saya hanya membuka satu aplikasi per desktop dan hanya memakai Command-Tab. Jika setelah Command-Tab Anda tetap menahan Command, Anda bisa memilih aplikasi tanpa harus memutar semua aplikasi
defaults write com.apple.dock expose-animation-duration -float 0.05; killall DockPernyataan “pengalaman desktop Mac 20 tahun lalu lebih baik daripada sekarang” berarti 20 tahun lalu adalah 2006. Saya masih memakai pengalaman desktop yang sama seperti 20 tahun lalu sekarang
Saya memakai Fvwm2, dan desktop virtual berbentuk grid yang dirindukan penulis ini terus saya nikmati lewat fitur desktop virtual di Fvwm2 dan sebelumnya di Fvwm. Salah satu alasan saya pindah ke Fvwm juga karena desktop virtual berbentuk grid, dan meski saya tidak ingat tepatnya kapan, itu terjadi pada pertengahan hingga akhir 1990-an
Konfigurasi Fvwm2 saya memang sedikit demi sedikit saya poles selama ini, tapi tidak pernah ada satu titik pun ketika desainer perusahaan memutuskan bahwa saya tidak boleh lagi memakai fitur yang saya gunakan
Perangkat lunak proprietari tidak memikirkan kepentingan pengguna. Yang mereka lihat hanya harga saham atau pendapatan kuartal berikutnya
Sebelum pindah ke Plasma dan Wayland, saya memakai XFCE dengan pengaturan yang sama selama hampir 15 tahun, tanpa terganggu oleh pembaruan
Saat Apple menghapus Spaces vertikal, saya benar-benar tidak percaya. Fitur itu jadi tidak berguna bagi saya karena saya harus melompati layar yang tidak perlu, dan akhirnya saya berhenti memakainya. Tidak praktis