- Apple memberikan perangkat yang aman dan minim beban pengelolaan kepada pelanggan, tetapi ada kesimpulan empiris bahwa Apple tidak membentuk tingkat saling ketergantungan yang sama dengan pengembang individu
- Bug mode gelap/terang di Google Search dipakai sebagai contoh bahwa ketidaknyamanan yang tidak memengaruhi pendapatan bisa dibiarkan sangat lama, alih-alih karena kurangnya kemampuan teknis
- Nilai inti Apple dinilai bukan pada ekosistem aplikasi, melainkan pada komputer dan perangkat yang bisa dipakai pengguna tanpa pengelolaan terpisah; iPhone atau iPad dianggap tetap layak dibeli bahkan tanpa aplikasi
- Apple Music API yang diharapkan pada 2016, delapan tahun kemudian, masih menyisakan bug dan pembatasan akses, dan bahkan untuk sekadar mencoba tetap memerlukan akun pengembang 100 dolar per tahun
- Platform web yang tidak dimiliki satu perusahaan memang tidak sempurna dan rapuh, tetapi tetap menjadi pilihan realistis bagi pengembang yang ingin tidak terlalu terikat pada struktur zero-sum milik perusahaan tertentu
Apple kuat terhadap pelanggan, tetapi tidak bergantung pada pengembang
- Intinya adalah pandangan bahwa Apple jelas memberi nilai kepada individu sebagai pelanggan, tetapi memiliki alasan struktural yang lemah untuk memberi perhatian pada pengembang individu dengan cara yang sama
- Relasi ketergantungan mengalir sebagai
Developer -> Apple,Apple -> Consumer, dan hampir tidak ada ketergantungan balik dari Apple ke pengembang individu - Bahkan jika semua pengembang berhenti membuat aplikasi untuk platform Apple, Apple secara umum masih bisa bertahan, karena proposisi nilai intinya tidak bergantung pada pengembang individu
- Kerja sama dengan “mitra” pengembang perusahaan mungkin diperlukan, tetapi itu persoalan yang berbeda dari ketergantungan pada pengembang individu
- Beberapa perusahaan multinasional menempatkan pengembang sebagai inti strategi mereka, tetapi Apple dinilai bukan tipe seperti itu
- Setelah menerima pembedaan ini, menjadi mungkin memisahkan rasa suka terhadap produk Apple dari keinginan untuk mengembangkan sesuatu untuk Apple
Kasus Google: bug yang tidak memengaruhi pendapatan bisa bertahan lama
- Google Search memiliki masalah ketika sistem berpindah secara dinamis antara mode terang/gelap, di mana halaman hasil pencarian pertama ditampilkan dengan tema yang berlawanan
- Pada malam hari, saat seluruh sistem berada dalam keadaan gelap, halaman hasil pertama justru muncul terang dan menyakiti mata
- Pada pagi hari, setelah laptop kembali ke mode terang, hasil pencarian justru tampil dengan latar hitam yang sulit dibaca
- Bug ini telah berlangsung selama bertahun-tahun, dan dinilai kecil kemungkinan akan diperbaiki kecuali kebetulan terselesaikan saat perombakan besar
- Penyebabnya ditafsirkan bukan karena Google tidak mampu memperbaikinya, tetapi karena hal itu tidak berdampak pada pendapatan
- Orang yang memakai mesin pencari alternatif seperti DDG sudah lebih dulu pergi, dan mayoritas besar tetap terikat pada Google
- DDG mengusung privasi sebagai nilai utama, tetapi alasan praktis untuk memakainya adalah UX sederhana yang mengingatkan pada Google awal, hasil pencarian exact-match berkualitas baik, dan iklan yang tidak mengganggu
- Google tidak menjadikan pengguna sebagai sasaran tujuan game-theoretic, dan interaksi yang terasa memusuhi pengguna saat harus memakai produk Google dipahami sebagai hasil dari struktur tersebut
Nilai inti Apple: komputer aman dengan beban pengelolaan minimal
- Sekitar 2009, saat memilih komputer untuk keluarga, Windows dinilai terlalu lemah dari sisi keamanan pada masa itu, sementara Linux memerlukan dukungan teknis berkelanjutan
- Pada akhirnya disiapkan komputer dengan OpenBSD, Firefox, dan game bawaan, tetapi sebagai imbalan atas keamanan, privasi, dan rendahnya beban dukungan, kegunaannya menjadi sangat terbatas
- Setelah menggunakan Mac kerja di perusahaan aplikasi iOS, muncul kesimpulan: “inilah komputer yang dulu saya inginkan untuk ibu saya”
- Setelah menabung lalu membeli MacBook, seiring waktu form factor yang dipakai keluarga berubah dari laptop ke iPad, tetapi nilai inti yang sama tetap terpenuhi
- Bahkan tanpa aplikasi, iPhone tetap mungkin dibeli untuk diri sendiri, dan hampir pasti dibeli untuk keluarga
- Dalam model bisnis Apple, pengembang bukan unsur yang wajib; pengembang boleh saja bahagia, tetapi strukturnya tidak menuntut mereka harus bahagia
- Di dalam Apple memang ada individu yang peduli pada pengembang dan ingin memperbaiki keadaan, tetapi tindakan di tingkat perusahaan bisa tidak konsisten
Harapan dan kekecewaan terhadap Apple Music API
- Sekitar 2016, ketika Apple Music API diumumkan di WWDC, ada harapan besar, tetapi pada praktiknya hal “yang mengubah segalanya” tidak pernah terjadi
- Pemutar musik buatan Apple sendiri masih terasa sulit digunakan, dan pemutar alternatif yang dicoba pun umumnya mengikuti pendekatan ala Spotify
- Ada harapan untuk menciptakan kembali pengalaman pemutar musik yang cepat, mulus, personal, dan terus mengalir seperti pada era Justin Frankel di Winamp
- Dengan katalog musik Apple, pengalaman seperti itu dianggap bisa dihidupkan kembali tanpa bergantung pada pembajakan seperti dulu
- Saat ada waktu luang, dibuatlah pemutar musik bernama Flowers, dan juga ada rencana menulis tutorial agar orang lain bisa membuat pemutar musik mereka sendiri
- Dalam proses implementasi, muncul penilaian bahwa bahkan setelah 8 tahun, API tersebut masih penuh bug dan tidak terbuka
- Hanya untuk mencoba API saja, pengguna harus membayar 100 dolar per tahun kepada Apple
- Biaya itu bukan untuk penggunaan massal, melainkan bahkan untuk akses percobaan sederhana
- Bahkan dengan akun pengembang berbayar pun, API yang tersedia tetap terbatas
- Dengan memasukkan
MusicKit.getInstance().developerTokendi konsol browser pada pemutar musik web Apple, orang bisa memperoleh root token tanpa batas secara gratis, sehingga prosedur resmi untuk pengembang dianggap tidak masuk akal
Web adalah platform bersama tanpa pemilik tunggal
- Kesimpulannya mengarah pada anjuran untuk menulis kode yang berjalan di web
- Web adalah platform bersama yang tidak dimiliki satu entitas tunggal, dan dalam hal bisa rusak bahkan oleh niat baik yang berubah menjadi ketidakmampuan, web berbeda dari platform perusahaan tertentu
- Platform web berada dalam kondisi rapuh karena faktor-faktor berikut
- pemerintah yang terlalu banyak campur tangan
- struktur duopoli browser
- ekosistem pengembang yang kompleks
- Tidak ada jaminan web akan terus makmur, tetapi karena sejauh ini ia tetap bertahan, semakin lama ia bertahan semakin besar pula kemungkinan ia akan terus makmur
- Disebutkan bahwa kode workaround terbaru yang harus ditulis terkait web disebabkan oleh perilaku Safari yang aneh
- Pada saat yang sama, Google dinilai melakukan banyak hal hebat untuk web, sehingga dalam konteks ini dipandang memainkan peran yang baik
Sulit membagi hubungan dengan perusahaan ke dalam baik dan buruk yang tetap
- Sebagaimana tidak berguna mengklasifikasikan orang secara tetap menjadi orang baik dan orang jahat, perusahaan juga dinilai sulit dikategorikan secara permanen sebagai perusahaan baik atau buruk
- Perusahaan dianggap berbagi sifat yang mirip dengan manusia: punya kecerdasan, kepribadian, kelahiran, pertumbuhan, kematian, dan status sebagai subjek hukum
- Seperti manusia tidak bisa hidup tanpa manusia lain, manusia juga tidak bisa hidup tanpa perusahaan; meskipun memiliki sifat nonmanusiawi, bentuk fraktal organisasi manusia ini akan terus ada
- Jika perusahaan tidak dimasukkan ke kategori moral yang tetap, maka hubungan dengannya bisa dijalani dengan lebih luwes
- ketika perusahaan mendorong kita ke permainan zero-sum, tingkat ketergantungan dikurangi
- ketika perusahaan memungkinkan hubungan yang lebih simbiotik, keterlibatan bisa ditingkatkan lagi
- Pada 1996, Steve Jobs mengatakan bahwa perusahaan besar, menengah, dan kecil semuanya mulai melihat web sebagai jalur distribusi langsung terakhir ke pelanggan, yaitu jalur langsung dari pemasok ke konsumen dengan melewati perantara
1 komentar
Pendapat di Hacker News
Sejak awal saya memutuskan untuk tidak mempelajari pengembangan mobile native, dan mencurahkan seluruh waktu yang terbatas ke web; kali ini saya merasa itu pilihan yang tepat
Sekarang kita bisa membuat hal-hal luar biasa di browser, dan menurut pendapat saya yang sangat pribadi, selain Uber, Google Drive, dan game, sebagian besar aplikasi semestinya berupa aplikasi web
Saya bekerja di industri media, dan di negara kami pada awal 2010-an, media yang bahkan tidak punya banyak uang sedang menggelontorkan anggaran untuk membuat aplikasi mobile; saya adalah orang nyentrik yang menolak tren itu
Saya tahu kualitas sebagian besar aplikasi itu tidak mungkin bagus, dan perusahaan-perusahaan tidak akan terus memperbarui front-end mobile mereka, dan pada akhirnya memang persis begitu yang terjadi
Sekarang mereka terkurung dalam aplikasi yang hampir tidak dipelihara lagi, dan kebanyakan tampak seperti peninggalan zaman yang sudah lewat—dan memang begitu adanya
Tapi saya tidak mengerti kenapa Uber. Uber punya atau pernah punya situs mobile yang menangani permintaan perjalanan dan hampir semua hal yang dilakukan aplikasinya dengan baik, dan saya tidak begitu melihat nilai apa yang ditambahkan aplikasi native bagi pengguna
Sebagian besar game mobile juga sama. Biasanya grafisnya sederhana dan bisa dirender oleh browser dengan performa yang memadai, dan sering kali mereka membuat ulang sendiri komponen UI umum, jadi tidak bisa memakai tombol sistem native pun tidak terlalu berbeda
PWA juga bisa menyediakan ruang penyimpanan yang cukup untuk file penyimpanan lokal dan data game. Tentu saja game yang mendorong batas sistem adalah pengecualian
Saya tidak berharap game seperti Death Stranding atau remake RE4 berjalan baik tanpa akses langsung ke akselerasi grafis native, dan ukurannya terlalu besar untuk dimuat sebagai satu halaman web
Namun sebagian besar aplikasi mobile, bahkan game free-to-play berpendapatan tinggi yang bisa mengambil tambahan 30% pendapatan jika pindah ke web, tidak termasuk kategori itu
Lalu kenapa tidak menargetkan web? Intuisi saya, pengguna mobile sudah dibiasakan mencari aplikasi dan game di app store, sementara pengguna desktop berharap aplikasi—kecuali beberapa tool profesional dan game kelas berat—disediakan lewat browser
Pada akhirnya, sebagian besar ini adalah masalah budaya, dan dukungan PWA Apple yang kurang memadai juga tidak membantu
Sebagian besar rasa frustrasi itu datang dari tooling, khususnya TypeScript; sulit dijelaskan singkat, tetapi saya jauh lebih sering bergulat dengan sistem tipe TypeScript dibandingkan di sisi native
Namun saya khawatir apakah Google dan Apple punya insentif untuk membantu meningkatkan PWA sampai ke tingkat yang bisa bersaing dengan aplikasi native. Jika sampai begitu, pendapatan mereka bisa terdampak
Lebih baik menginvestasikan waktu pada komponen dasar dari tech stack
Semua itu bisa ditangani lewat web
Alasan Apple tidak peduli pada developer adalah, seperti yang mereka jelaskan sendiri, mereka telah menciptakan semacam kultus walled garden di sisi pengguna
Jika developer tidak membuat produk untuk platform itu, mereka kehilangan separuh pasar atau bahkan lebih
Dalam pekerjaan utama saya membuat game mobile di sebuah studio kecil di dalam perusahaan besar, kami harus terus berhadapan dengan Apple bukan hanya soal masalah teknis, tetapi juga kebijakan dan persetujuan
Namun sulit membayangkan merilis game mobile yang tidak punya cara untuk berjalan di iOS, jadi kami tidak punya pilihan selain mengikuti
Dalam banyak hal, strategi PC Microsoft yang asli justru kebalikannya. Mereka memperhatikan developer dan menyediakan dokumentasi, contoh, serta tool yang sangat banyak
Perusahaan tempat para developer itu bekerja punya insentif untuk membuat, mempromosikan, dan menjual software untuk Microsoft, dan gelombang developer individu yang membanjiri Windows dengan software-lah yang membentuk sistem operasi desktop yang masih dominan sampai sekarang
Berkontribusi pada ekosistem Apple adalah pilihan, bukan paksaan. Developer yang berkontribusi pada ekosistem Apple berarti secara aktif ikut ambil bagian dalam situasi saat ini
Apple berhasil melakukan ini dengan bersikap keras terhadap developer, atau lebih tepatnya dengan mencegah developer bersikap buruk terhadap pelanggan
Ini juga mirip dengan cara menekan pemasok dengan kuat, tetapi pada akhirnya tercipta ekosistem yang sehat dan makmur, dan developer serta pemasok tetap menyediakan aplikasi di sana
Contohnya jejaring sosial, aplikasi kencan, Reddit, Stack Overflow. Bukan layanan yang bergantung pada pengalaman mobile, seperti Uber yang membutuhkan pelacakan lokasi, atau game mobile yang dirancang untuk dimainkan saat bepergian
Jika bisnis tidak bergantung pada pengalaman mobile, layanan bisa disediakan tanpa aplikasi native
Pengguna mobile juga bisa mengaksesnya lewat browser mobile, dan meskipun mungkin bukan pengalaman ideal, itu tetap sebuah pilihan
Menurut saya intinya adalah: jika platform mobile tidak wajib atau bisnis Anda tidak bergantung padanya, jangan membuat untuk platform itu
Beberapa tahun lalu saya sempat mendalami Swift dan pengembangan iOS native, tetapi sama sekali tidak bisa membiasakan diri memakai Xcode
UI/UX Xcode begitu buruk sampai sulit diungkapkan, dan saya harus terus membuka-tutup panel hanya untuk menekan ikon-ikon yang bahkan tidak dikelompokkan secara intuitif
Saat satu panel dibuka, panel lain dipaksa mengecil, dan rasanya sepersepuluh waktu praktis habis untuk “mengemudikan panel”
Sepertinya para desainer Apple ingin membuat IDE yang cantik secara visual dan minimalis, bukan IDE dengan friksi rendah bagi developer
Namun IDE tidak perlu minimalis; setiap developer harus bisa mengustomisasi dan membiarkannya berantakan sesuka hati sesuai apa yang ingin mereka buat
Kalau membayangkan meja kerja fisik di garasi, Visual Studio membiarkan kita mengacak-acak dan menyesuaikan ruang kerja sesuka hati, sedangkan Apple terasa seperti menuntut kita memasukkan alat sebelumnya ke kotak setiap kali sebelum mengambil alat berikutnya
Inilah yang saya maksud dengan mengemudikan panel, dan saya penasaran apakah developer lain juga merasakannya seperti ini
Ungkapan bahwa bentuk didahulukan daripada fungsi membuat saya akhirnya bisa menjelaskan dengan kata-kata apa yang tidak saya sukai dari Xcode
Saya sudah lebih dari 10 tahun berada di ekosistem JetBrains, dan meski ada kekurangannya, saya tidak pernah merasa JetBrains tidak berusaha membuat IDE bekerja seperti yang saya inginkan
Namun yang benar-benar membuat saya berpaling dari pembuatan aplikasi native untuk platform Apple adalah kombinasi bug dan kurangnya dokumentasi
Saat terakhir saya memakainya setahun lalu, SwiftUI belum berada dalam kondisi yang sesuai tujuan, dan bahkan library yang lebih matang pun sering kali hampir tidak punya dokumentasi
Sulit juga mengetahui mana yang sudah ditinggalkan
Dalam pekerjaan saya, keunggulan aplikasi native dari sudut pandang pengguna sejak awal kecil, terutama hanya penyimpanan lokal yang lebih stabil
Jika produktivitasnya jauh lebih rendah dibanding membuat webapp, sulit membenarkan biaya dan risiko tambahan karena harus bergantung pada belas kasihan sosok seperti penguasa monopoli
Xcode sama sekali tidak mengganggu saya, tetapi Android Studio berbasis IntelliJ yang banyak dipuji itu terus membuat saya kesal
Visual Studio juga terasa sama-sama menjengkelkan dan punya batasan yang aneh. Misalnya, entah kenapa tidak bisa memakai italic untuk syntax highlighting
Editor pun begitu. VS Code punya hal-hal kecil yang mengganggu, tidak seperti Sublime Text atau TextMate
Rasanya seperti IDE berat zaman dulu; semakin mengikuti caranya, semakin nyaman, tetapi sekaligus tetap ada perasaan bahwa saya bukan yang memegang kendali
Kalau Apple mau peduli, meski tidak sampai secepat VS Code, setidaknya bisa membuatnya setengah lebih responsif, dan jelas seharusnya bisa lebih baik dari sekarang
Dukungan key binding Vim yang buruk saja sudah membuat marah. Misalnya, sebagian besar aksi seperti
cataurtidak bisa diulangSaya tidak tahu saat itu memakai SwiftUI atau sedang bergulat dengan storyboard UIKit, tetapi yang terakhir adalah pengalaman terburuk dan tidak akan saya rekomendasikan bahkan kepada musuh
SwiftUI memang masih tahap awal dan masih banyak yang perlu dipoles, tetapi dibanding itu terasa seperti masa depan
Dulu pernah harus menyiapkan akun developer Apple agar salah satu aplikasi pemerintah daerah kami ditampilkan sebagai milik kami
Saya tidak tahu kenapa aplikasi lain tidak memerlukannya, tetapi bagaimanapun kami harus melakukannya, dan pengalamannya cukup mengerikan
Pertama saya butuh akun Apple, dan karena tidak ingin memakai akun pribadi, saya harus membuat akun kerja baru
Karena tidak bisa membuat “akun organisasi”, akun itu terikat pada diri saya pribadi, dan untungnya ada iPhone lama yang rencananya akan dipensiunkan sehingga bisa saya pakai
Setelah itu saya menunggu beberapa hari sampai Apple memverifikasi identitas saya, yang pada praktiknya berupa Apple menelepon orang yang saya cantumkan sebagai atasan, lalu orang itu mengatakan bahwa saya memang orangnya
Saya berharap mereka melakukan pemeriksaan lebih lanjut, tetapi saya tidak yakin; bahasa Inggris orang-orang yang menelepon bahkan lebih buruk daripada kami, jadi setidaknya situasinya lucu
Lalu saya harus menyiapkan pembayaran, karena entah kenapa untuk punya akun developer Apple harus membayar
Jumlahnya mungkin nyaris tidak terlihat dalam anggaran total kota berpenduduk 60 ribu orang, tetapi karena ini langganan luar negeri dan Apple tidak menyediakan cara untuk memprosesnya sebagai pembelian B2B yang mudah didaftarkan ke otoritas pajak lokal, setiap tahun hal itu masuk daftar untuk ditinjau
Pembayaran juga hanya bisa dengan kartu kredit, dan kartu organisasi pun terikat pada orang nyata, sehingga dibutuhkan orang yang bertanggung jawab memperbaruinya
Orang pindah kerja, dan untuk mengganti pemilik harus ada kontak antara Apple dan orang sungguhan, jadi bisa dibayangkan betapa menyenangkannya
Ini terjadi beberapa tahun lalu, jadi mungkin sudah berubah, tetapi dari lebih dari 300 solusi TI enterprise yang pernah saya tangani, tidak ada yang seburuk Apple
Agar adil, saya ini developer jadi saya juga tidak tahu kenapa tugas ini jatuh ke saya, dan mungkin hal seperti ini lebih umum di sisi operasional TI
Kecuali jika Anda perusahaan besar AS yang bisa mengurus dokumen dengan mudah
Masih acak. Bisa langsung berhasil, atau kalau sedang sial terkena bug acak dalam proses ini, akan gagal untuk waktu lama
Saya tidak tahu kapan dimulainya, tetapi bukan baru-baru ini sekali
Kadang kita lupa betapa terbukanya web/www dulu, dan bahkan sekarang pun secara keseluruhan masih jauh lebih terbuka dibanding “ekosistem aplikasi” yang dimonopoli Apple dan Google
Memang ada “cloud”, tetapi tidak ada yang mencegah kita menyewa server dan meng-hosting sendiri milik kita
Kalau tidak berjalan baik, kita bisa memindahkannya dari sana lalu menyewa server lain. Ada efek lock-in dan mungkin tidak mudah, tetapi bukan tidak mungkin
Kalau melihat seluruh ekosistem aplikasi, pilihannya hanya ada 2, dan secara harfiah kita bergantung pada belas kasihan mereka
Secara pribadi, saya tidak akan pernah mempertaruhkan seluruh bisnis pada satu “aplikasi”. Jika audiens benar-benar menuntutnya, mungkin bisa saja ada aplikasi sebagai sarana pendukung kecil, tetapi hanya sebatas itu
Saya tidak suka produk yang memaksa saya memakai aplikasi di perangkat mobile. Lebih baik pendekatan seperti m.website.com kembali lagi, dan saya ingin menghindari seluruh ekosistem aplikasi
Dalam semalam, karena alasan apa pun atau bahkan tanpa alasan, kita bisa berada dalam posisi “harus mengemis bantuan di halaman depan HN”
Saya berdoa agar arus sideloading baru di UE memicu tuntutan serupa di AS, tetapi pada saat yang sama saya juga sadar bahwa itu hanya mungkin jika cukup banyak orang tahu dan peduli apa arti “walled garden” atau “sideloading”
Secara teori web itu hebat, tetapi karena lingkungan browser hanya menyediakan hal yang terlalu mendasar, sebagai platform aplikasi ia tidak terlalu menarik jika kita terbiasa dengan pengalaman pengembangan “batteries included” seperti di platform Apple
Di macOS, aplikasi yang kuat dan halus pun bisa dikembangkan dengan jumlah dependensi dan subdependensi yang bisa dihitung dengan jari satu tangan, bahkan dengan sedikit usaha bisa tanpa dependensi sama sekali
Sebaliknya, webapp yang setara akan memiliki puluhan hingga ratusan dependensi untuk menutup celah fitur
Misalnya, saya tidak melihat alasan mengapa browser tidak bisa menyediakan list/table view bawaan yang mendaur ulang sel secara efisien dengan sama sekali tanpa JavaScript atau dengan JavaScript yang sangat sedikit
Kebutuhan menggulir ratusan hingga ribuan item tanpa membuat perangkat tersendat atau kehabisan memori bukanlah hal yang langka
AppKit, UIKit, SwiftUI, Android Framework, Compose, dan mungkin Flutter juga menangani ini dengan baik secara bawaan, tetapi di browser, untuk fungsi yang sangat mendasar ini kita harus menarik library atau menulis kode sendiri
Ditambah lagi masalah manajemen paket dan tooling secara umum, masalah mendasar yang sama tetap membandel meski solusi datang dan pergi
Sejak 15 tahun lalu saya juga sudah cukup banyak membuat aplikasi iOS/iPad
Hal bagus dari web adalah biasanya ada library atau framework yang sesuai kebutuhan. Electron adalah contohnya
Di sisi Apple, sering kali tidak ada library yang bagus, dan SwiftUI terlalu banyak bug
React berjalan begitu saja dan secara konseptual juga lebih sederhana. Two-way data binding adalah ide yang buruk
Apple punya anggapan bahwa mereka membuat semuanya lebih sederhana, tetapi dalam praktiknya sering kali justru membuatnya lebih merepotkan dan sulit
Tabel sudah diisi dari server dengan data yang diperlukan dan dalam urutan yang benar
Karena itu tidak perlu mendaur ulang sel dan baris, dan meski ada ribuan baris, datanya hanya dalam satuan KB sehingga tetap responsif
Jika mempertimbangkan alternatif seperti WebAssembly dan Flutter, kurangnya fitur bawaan browser seharusnya tidak lagi menjadi masalah
Menurut saya tidak benar bahwa developer tidak memberi apa-apa kepada Apple
Tanpa aplikasi pihak ketiga di iPhone, Apple akan menjual jauh lebih sedikit ponsel
Secara teori banyak aplikasi bisa pindah ke web, tetapi tetap saja aplikasi pihak ketiga membuat iPhone jauh lebih layak dimiliki
Jika ada persaingan yang sehat, pembuat sistem operasi akan berusaha keras menarik developer. Ingat saja video “developers developers developers” Ballmer dulu
Karena mereka tahu developer menambah nilai pada platform dan memengaruhi pilihan konsumen
Masalah saat ini adalah tidak adanya persaingan yang berarti
Apa pun aturan Apple, developer harus menyediakan sesuatu untuk iPhone, dan Apple bisa tenang karena peluang platform mobile ketiga untuk benar-benar mapan hampir tidak ada
Apple mengetahui ini, dan melalui kebijakan ketatnya mereka membalik keadaan secara brutal
Meski developer berperan besar membuat iPhone layak dimiliki, Apple memajaki seluruh pendapatan seolah-olah mereka sedang bermurah hati dengan mengizinkan developer mengakses pelanggan iPhone
Ini adalah penyalahgunaan posisi pasar, dan seperti yang dikatakan blog itu, tidak banyak yang bisa dilakukan selain mendistribusikannya lewat web
Itu tidak sempurna, tetapi selain regulasi, hanya itulah alternatif yang berarti; dan karena Apple tidak punya alasan untuk secara sukarela melepaskan pendapatan miliaran dolar dari memajaki developer aplikasi, mereka akan melakukan segala cara untuk menghindari regulasi
Saya berharap web mendapatkan kekuatan sebagai cara untuk menghindari aturan distribusi aplikasi yang abusif
Setiap hari saya memikirkan betapa hebatnya web, dan betapa disayangkannya Apple berusaha merusak web sebanyak mungkin dengan membuat developer membangun aplikasi iOS alih-alih webapp
Tanpa App Store, web pasti sudah jauh lebih baik
Akan ada lebih banyak keragaman dalam konsumsi konten, sumber media sosial, rekomendasi algoritmik, dan pengalaman digital
Web berjalan di mana saja, dan juga memiliki banyak API hebat untuk membuat aplikasi imersif/generasi berikutnya seperti WebXR
Namun meski seseorang membuat aplikasi WebXR di situsnya sendiri dan menjualnya berbayar, itu tidak menghasilkan uang bagi Apple, sehingga Apple tidak akan pernah mempromosikan webapp semacam ini
Dalam jangka panjang, web tidak akan mati. Perusahaan-perusahaan datang, mengeruk keuntungan, lalu pergi, tetapi web tidak mati
Apple menyediakan ribuan API yang memudahkan pengembangan platform, menciptakan bahasa pemrogramannya sendiri yang terintegrasi baik dengan platformnya, dan juga memiliki IDE terintegrasi penuh yang bekerja bersama keduanya
Benar, “teman”. Mereka tidak peduli padamu kecuali kamu mengembangkan untuk platform mereka
Dan siapa yang bisa menyalahkan mereka? Hal-hal di atas adalah investasi yang sangat mahal dan memakan waktu lama
Saya pernah mencoba mengembangkan aplikasi langsung di macOS tanpa Swift dan alat Apple, dan itu luar biasa menyakitkan
Mereka membuang dan membekukan versi OpenGL sampai tingkat yang sulit dijelaskan selain demi mendorong alat mereka sendiri
Bahkan memuat satu DLL eksternal saja hampir mustahil
Apa pun yang cross-platform harus turun ke ekosistem alat Apple, seperti mengubah Vulkan menjadi Metal
macOS adalah kasus yang lebih aneh dan khusus daripada semua distribusi Linux
Kalau melihat betapa mudahnya pengembangan Windows, rasanya mengejutkan. Di pihak Microsoft, hampir semuanya cross-platform
Dari hal-hal Apple yang disebutkan, tidak ada yang memungkinkan bekerja secara platform-independen
Sebaliknya, Windows mendukung teknologi miliknya sendiri seperti DirectX, tetapi juga mengizinkan Vulkan, OpenGL, dan lainnya berjalan langsung
Namun fakta bahwa penulis masuk lewat pengerjaan aplikasi musik itu penting. API audio Apple benar-benar berantakan
Media Player, AVPlayer, Core Audio, AVFoundation, AVAudioEngine, dan lain-lain terasa seperti tim-tim pesaing yang masing-masing memakai library sendiri sejak era NeXT, lalu entah bagaimana semuanya bertahan sampai era iPhone
Saat lockdown COVID, saya menghabiskan sekitar tiga bulan mencoba membuat pemutar Shoutcast/Icecast, dan itu benar-benar menyiksa
Mereka praktis membuat penulisan kode native cross-platform yang berjalan di iOS menjadi mustahil, dan telah melakukan semua yang bisa mereka lakukan dalam batas politik agar web app tidak bisa bersaing dengan aplikasi native
Saya suka sikap sehat penulis terhadap perusahaan besar. Itu adalah keterampilan bertahan hidup dasar di zaman modern
Kalau bisa sesuka hati, saya berharap tidak perlu memasang aplikasi apa pun di iPhone atau iPad, tetapi karena pembatasan platform, pada praktiknya itu jadi perlu
Saya melihat web app X/Twitter di Safari tidak memutar video, dan itu tetap terjadi meski saya mematikan Lockdown Mode untuk X
Saya ingin tahu apakah ini salah Apple yang menciptakan ketidaksesuaian platform, atau niat X agar pengguna memasang aplikasinya
Saya berspesialisasi dalam deep learning dan LLM, tetapi selalu menikmati pengembangan web juga
Yang menghambat adalah alat-alatnya terlalu rumit
Meski begitu, ada orang yang saya kenal banyak menulis tentang ClojureScript + Dart, jadi saya berpikir untuk mencobanya
Saya ingin menemukan stack web app sederhana yang bisa dipelajari dalam beberapa hari dan didukung dengan baik; kalau ada rekomendasi, saya akan senang
Sebagian besar pengembangan web adalah memahami browser dengan baik, dan web.dev adalah sumber yang bagus
Setelah itu, pelajari React + TypeScript. react.dev yang baru juga bagus
React tidak sempurna, tetapi sebagai paradigma untuk membuat UI, ia begitu bagus sampai Apple pun menirunya saat membuat SwiftUI
Ambil Vite dan mulailah coding
Hal yang paling ingin saya rekomendasikan adalah mempelajari materi-materi itu dengan benar. Mulailah dari halaman pertama dokumentasi dan ikuti perlahan sampai selesai
Namun tidak banyak yang bisa dipelajari hanya dalam beberapa hari. Pekerjaan frontend memang sulit karena alasan yang valid