1 poin oleh GN⁺ 2023-12-11 | 1 komentar | Bagikan ke WhatsApp
  • Desktop dan mobile Linux memiliki permintaan untuk perangkat lunak baru, tetapi jumlah aplikasi di app store dan repositori masih kurang, sehingga pesannya adalah lebih baik fokus pada pengembangan aplikasi daripada membuat distribusi baru
  • Bahkan aplikasi yang berawal dari kebutuhan pribadi, jika dikembangkan secara terbuka, dapat menjadi bahan belajar dan komunitas, lalu berujung pada perluasan ekosistem Linux
  • Keberagaman berupa ratusan distribusi memang menjadi beban, tetapi dengan memanfaatkan sistem packaging dan distribusi yang terdokumentasi, aplikasi dapat disampaikan kepada pengguna di berbagai lingkungan
  • GNOME, KDE Frameworks, elementary OS, Electron, dan Ubuntu Touch menawarkan jalur pengembangan yang berbeda-beda seperti Gtk, Qt, Vala, JavaScript·HTML·CSS, dan QML
  • Tersedia sarana distribusi seperti AppCenter, AppImage, Flatpak, Open Build Service, dan Snapcraft, serta ada potensi monetisasi melalui aplikasi berbayar, layanan, dan app store berbasis dukungan

Mengapa Linux membutuhkan lebih banyak aplikasi

  • Pengguna Linux desktop dan mobile memiliki permintaan terhadap perangkat lunak baru
  • App store dan repositori Linux kekurangan aplikasi dibandingkan platform tertutup
  • Bagi para penggemar teknologi, muncul ajakan untuk mencurahkan semangat dan kreativitas bukan pada membuat lebih banyak distribusi Linux baru, melainkan pada aplikasi baru untuk pengguna Linux
  • Pesan intinya adalah “berhentilah membuat distribusi Linux dan buatlah aplikasi”

Dampak pengembangan aplikasi bagi ekosistem

  • Jika ada ide aplikasi yang Anda butuhkan secara pribadi, mungkin ada pengguna lain dengan kebutuhan serupa
  • Jika aplikasi dibuat secara terbuka, pengembang yang lebih baru pun dapat belajar dan mulai berkarya, sehingga membantu pengembangan aplikasi Linux generasi berikutnya
  • Pengembangan aplikasi adalah pekerjaan kreatif, dan rasa pencapaian saat proyek selesai juga bisa menjadi imbalan
  • Pengembangan aplikasi membantu membentuk komunitas, dan komunitas Linux sering kali ingin membantu pengembang agar berhasil
  • Kemampuan pengembangan perangkat lunak adalah keterampilan yang dibutuhkan, dan tersedia banyak sumber belajar gratis
  • Anggapan bahwa pengguna Linux tidak mendukung pengembang secara finansial adalah kesalahpahaman; aplikasi dan layanan berbayar yang populer dapat menciptakan sumber pemasukan baru

Menargetkan beragam distribusi Linux

  • Tidak seperti platform lain, Linux memiliki target yang sangat beragam, dengan ratusan distribusi
  • Setelah dipublikasikan satu kali, aplikasi umumnya dapat berjalan di banyak lingkungan
  • Ada sistem packaging dan distribusi yang terdokumentasi dengan baik sehingga pengembang dapat menyalurkan aplikasi kepada pengguna
  • Setiap framework pengembangan dan distribusi Linux memiliki jalur yang direkomendasikan untuk menyampaikan aplikasi kepada pengguna
  • Saat siap membagikan aplikasi, Anda dapat memeriksa panduan packaging yang direkomendasikan dalam dokumentasi pengembangan

Jalur untuk mulai mengembangkan

  • GNOME

    • Proyek GNOME membuat desktop GNOME Shell dan mendukung pengembangan berbasis Gjs dan Gtk
    • Di Gtk, Anda dapat menggunakan bahasa populer seperti Python, C, C++, Rust, dan JavaScript
    • GNOME Developer Center
  • KDE Frameworks

    • KDE menyediakan desktop Plasma serta alat dan framework untuk membuat aplikasi
    • KDE Frameworks telah digunakan untuk mengembangkan berbagai aplikasi desktop
    • Utamanya memanfaatkan toolkit Qt dan bahasa pemrograman C++
    • KDE Frameworks Getting Started
  • elementary OS

    • elementary OS berupaya menjadi sistem operasi yang cepat, terbuka, dan menghormati privasi sebagai pengganti Windows dan macOS
    • Para pengembang membangun desktop dan ekosistem untuk pengembangan aplikasi
    • Panduan pengembang merekomendasikan Vala dan Gtk
    • elementary OS Developer Guide
  • Electron

    • Electron memungkinkan pembuatan aplikasi desktop lintas platform dengan JavaScript, HTML, dan CSS
    • Pengembang dapat memanfaatkan pustaka modul node yang sangat besar untuk membuat aplikasi berbasis teknologi web
    • Electron Documentation
  • Ubuntu Touch

    • Ubuntu Touch adalah sistem operasi open source yang dirancang untuk berjalan di berbagai perangkat seperti ponsel, tablet, dan PC
    • Aplikasi Ubuntu Touch native dibuat dengan QML atau HTML, dan perilakunya didefinisikan dengan JavaScript, C++, Python, Rust, dan Go
    • Ubuntu Touch Documentation

Pendapat pengembang tentang ekosistem aplikasi Linux

  • Neil McGovern dari GNOME Foundation menilai bahwa untuk membawa Linux ke khalayak luas dibutuhkan ekosistem aplikasi yang berkembang, dan setiap orang harus bisa mengembangkan untuk Linux agar lebih dekat ke tujuan desktop terbuka
  • Aleix Pol dari KDE e.V. mengatakan bahwa untuk menjadikan Linux sebagai sistem operasi pilihan, dibutuhkan aplikasi yang hebat, dan melalui alat pengembangan orang dapat membuat apa yang mereka bayangkan
  • Pendiri elementary, Daniel Foré, melihat bahwa di desktop Linux ada peluang bukan hanya untuk membuat aplikasi hebat, tetapi juga membangun platform API dan memengaruhi arah desktop
  • Jan Sprinz, anggota dewan UBports Foundation, mengatakan bahwa pengembangan aplikasi Linux sepenuhnya berbeda dari ekosistem tertutup; meski bersaing secara teknis, mereka tetap bekerja sama demi visi yang lebih besar

Cara membagikan dan mendistribusikan aplikasi

  • AppCenter

    • Sebuah app store terbuka bergaya pay-what-you-want dan layanan build untuk pengembang independen
    • AppCenter Dashboard terintegrasi dengan GitHub untuk mendukung rilis dan pelacakan isu
    • AppCenter Dashboard
  • AppImage

    • Aplikasi desktop Linux dapat didistribusikan dalam format AppImage untuk menjangkau pengguna distribusi Linux secara umum
    • Mengusung pendekatan package sekali, jalankan di mana saja
    • AppImage Packaging Guide
  • Flatpak

    • Sebuah framework untuk distribusi aplikasi desktop Linux
    • Dibuat oleh para pengembang yang telah lama bekerja di desktop Linux dan dijalankan sebagai proyek open source independen
    • Flatpak Documentation
  • Open Build Service

    • openSUSE Build Service adalah instans publik dari Open Build Service
    • Digunakan bersama pengembangan distribusi openSUSE, serta untuk menyediakan paket bagi Fedora, Debian, Ubuntu, SUSE Linux Enterprise, dan distribusi lain dari source yang sama
    • openSUSE Build Service Help
  • Snapcraft

    • Snapcraft adalah alat command-line untuk membuat snaps
    • snaps diperkenalkan sebagai paket aplikasi untuk desktop, cloud, dan IoT yang mudah dipasang, aman, lintas platform, dan tanpa dependensi
    • Snapcraft Documentation

1 komentar

 
GN⁺ 2023-12-11
Pendapat di Hacker News
  • Menurut saya premisnya keliru karena di Linux belum ada kumpulan framework inti yang ABI-nya stabil
    Platform pesaing punya jauh lebih banyak framework dasar seperti CoreImage, CoreAudio, CodeML, SceneKit, dan AppKit, dan lebih jarang rusak
    Snap atau flatpak di Linux memang menarik, tetapi itu lebih terasa seperti memutar lewat infrastruktur dan manajemen paket, alih-alih menyelesaikannya di framework dan bahasa pemrograman yang diminta untuk dipakai oleh aplikasi

    • Komunitas penggemar Linux cenderung aktif menentang arah seperti ini. Sebab mereka ingin membuat semuanya modular dan merakitnya sesuai aplikasi tertentu
      Linux sebenarnya juga punya kumpulan standar de facto, tetapi karena ada yang berubah dan ditinggalkan, stabilitasnya lebih rendah. Meski begitu, kondisinya lebih baik daripada kelihatannya, dan Snaps bisa mengurangi sebagian masalah
      Namun jika orang memilih distro yang tidak punya standar seperti itu, begitu tidak mendukung segala macam konfigurasi unik, kita akan kehilangan separuh calon pengguna
    • Saya pernah membaca di suatu tempat bahwa target paling stabil di Linux saat ini adalah Win32 melalui Wine atau Proton
    • Intinya dulu adalah framework GNOME atau KDE serta standar FreeDesktop, setidaknya begitulah rencananya 20 tahun lalu
      Namun seperti yang disebutkan dalam tulisan, kebanyakan orang terus berfokus membuat distro, dan secara alami sulit muncul satu stack tunggal yang bisa mengikuti begitu banyak distro unik
      Pada akhirnya Google mengambil kernel Linux lalu menambahkan dua kumpulan framework inti berbasis Java dan JavaScript, dan bagi konsumen umum, distro Linux itulah yang menjadi pemenangnya
    • Menurut saya tanggung jawab utamanya ada pada para pengembang glibc. Hal-hal seperti penyalahgunaan nama versi dan penambahan tipe relokasi ELF baru belakangan ini membuat distribusi biner game lintas distro menjadi menyakitkan
      Biasanya pengembang game membangun di distro besar terbaru lalu mengunggahnya ke Steam, dan jika distro itu memiliki glibc 2.36, binernya juga sering kali mendapatkan nama versi yang menuntut glibc 2.36 atau lebih baru
      Akhirnya harus memakai direktif symver dari binutils gas untuk memaksa nama versi agar kompatibel dengan glibc yang cukup lama. Secara pribadi, saya melihat 5 tahun, atau mungkin 7–8 tahun, sebagai patokan yang masuk akal: https://sourceware.org/glibc/wiki/Glibc%20Timeline
      Pengembang game biasa hampir tidak tahu soal masalah seperti ini, dan sekalipun tahu, mereka tidak akan melakukan pekerjaan semenyakitkan itu demi 1% pasar. Untuk libgcc dan C++, libstdc++ juga harus ditautkan secara statis agar bisa menghindari masalah ABI tersebut
      Meski begitu, engine Godot menyediakan container build yang memperhatikan hal-hal ini, dan Unity juga tampak rapi di sisi itu. Saya kurang tahu soal UT5.x
      Sebaliknya, ada juga engine yang belum siap, seperti game berbasis Electron. Jika tidak ada versi GTK+ yang cocok untuk distro seperti Enlightenment, Qt, X11 murni, atau Wayland, game bisa tidak berjalan
      Mengemas seluruh engine Google Blink dengan benar untuk distribusi biner yang menargetkan cakupan luas distro ELF/Linux juga bukan perkara mudah
      ELF/Linux secara umum tidak ramah terhadap distribusi biner tertutup karena kerusakan ABI, terutama pada SDK dan library inti
      Jika biner game saja sesulit ini, aplikasi akan lebih sulit lagi. Terbayang para pengembang pada akhirnya berkata, “tidak peduli, pakai saja dengan menginstal Microsoft SUSE GNU/Linux; yang lain tidak didukung”
    • Jika Linux memiliki keluasan framework setingkat yang disediakan macOS, proyek pribadi pun pasti sudah sejak dulu saya buat dengan target Linux
      Sangat hebat jika ada banyak alat yang bisa langsung dipakai tanpa hampir perlu memikirkan masa dukungan, fork mana yang lebih baik, atau apakah cocok dengan library pihak ketiga lain. Itu sangat mengurangi gesekan sehingga kita tinggal membuatnya
      Ekosistem KDE Qt dan kubu GNOME/GTK adalah yang paling mendekati, tetapi belum sampai ke level itu
  • Mungkin saja saya tidak tahu pola untuk menentukan kapan harus menambahkan dev dan version pada nama paket, atau apa arti angka acak 1 atau 0 di belakangnya, tetapi distro Linux pertama yang memiliki aturan penamaan paket yang konsisten sepertinya akan memenangkan hati orang
    libgnutls-dev
    libgtk-3-0
    libwayland-server0
    libxcb1
    libx11-6
    libffi-dev
    libncurses5-dev

    • -dev berisi header, jadi ini cukup mudah
      Angka adalah penanda versi saat beberapa versi bisa dipasang bersamaan. Namun bisa ada pengecualian jika itu bagian dari nama library, seperti xcb1
      Misalnya, pada suatu waktu mungkin libgtk-3-0 dan libgtk-2-$something bisa dipasang bersamaan. Besar kemungkinan namanya tetap dipertahankan agar referensi libgtk-3-0 di tutorial lama tidak rusak meski libgtk-2 kemudian dihapus
      Saya sendiri kurang tahu soal 0 di akhir libwayland-server0. Saya melihat beberapa library di /var/lib punya akhiran .$number, tetapi saya belum pernah menggali apa persisnya yang diselesaikan oleh itu
    • Memisahkan binary dan source adalah konvensi Debian. Jika hanya memakai library, paket tanpa -dev sudah cukup; jika ingin mengembangkan dengan library itu, Anda juga perlu -dev yang memasang header
      1 atau 0 di belakang bukan sesuatu yang khusus, hanya bagian dari nama paket atau versinya
    • Di Arch dan distro turunannya, hal seperti ini umumnya tidak ada
      Namun -dev berarti hal-hal yang hanya diperlukan saat mengembangkan terhadap library tersebut
      Angka adalah nomor versi mayor, yaitu nomor kompatibilitas. Ini memungkinkan beberapa versi mayor yang menjadi dependensi paket berbeda dipasang berdampingan dengan mudah tanpa konflik
    • Jika Anda membangun program, pasang paket -dev. Paket -dev bernomor biasanya tidak perlu Anda perhatikan langsung; bila perlu, paket tanpa nomor seharusnya meneruskannya
      Saat build, dicatat akhiran nomor mana, yaitu versi ABI, yang digunakan. Ini seharusnya sama dengan akhiran .so.N, tetapi bukan berarti Anda mencarinya langsung dengan cara itu
      Dengan cara ini, beberapa salinan library yang tidak kompatibel bisa dipasang, dan yang sesuai dapat digunakan. Distro biasanya membersihkan yang lama pada setiap rilis besar
      Saat instalasi, dependensi yang dicatat saat build seharusnya dipakai secara otomatis
    • Ada GoboLinux, dan menurut saya itu menyelesaikan semuanya tanpa serumit Nix. Tetapi tidak ada yang peduli
  • Ini adalah salah satu masalah terbesar yang menahan seluruh platform Linux. Sering disebut sebagai keunggulan, tetapi saya tidak melihatnya begitu
    Para pengembang menonjolkan banyaknya pilihan sebagai keunggulan Linux, tetapi bagi banyak pengguna itu menjadi paradoks pilihan dan membuat mereka kembali ke platform yang sebelumnya mereka pakai
    Di macOS dan Windows pilihannya lebih sedikit, tetapi pilihan yang ada jauh lebih matang dan kurang terfragmentasi
    Misalnya, berapa banyak tiling window manager yang sebenarnya kita butuhkan? Tidak bisakah kita memilih tiling window manager terbaik lalu membuat dock dan applet yang lebih baik? Bagaimana dengan aplikasi dan launcher yang terintegrasi dengan paradigma tiling window manager?
    Sebaliknya, yang sering tersisa adalah 10 macam tiling window manager dan program workaround setengah matang di atasnya

    • Orang tidak memilih dengan menganalisis semua opsi secara exhaustive. Mereka melihat sedikit kandidat lalu memilih satu berdasarkan popularitas atau kemudahan akses
      Ekosistem yang sukses memastikan bahwa memilih opsi yang paling terlihat pun menghasilkan sesuatu yang cukup baik
      Bertambahnya distro Linux kebanyakan hanya perbedaan kecil yang tidak mengurangi kecocokan secara berarti, dan hanya segelintir orang yang sejak awal tidak kesulitan memilih distro yang menganggapnya masalah
      Sebaliknya, untuk kasus seperti Wayland, plumbing dan hardware tiba-tiba menjadi penting, dan untuk memilih kombinasi yang layak pakai orang perlu cukup memahami struktur internalnya, jadi itu menjadi masalah nyata
      Membandingkan Mac atau Windows dengan Linux juga tidak terlalu bermakna. Bagi 95% konsumen, sistem operasi adalah karakteristik atau fitur tetap dari komputer, bukan produk terpisah
      Jika paket keseluruhannya cocok, mereka mungkin membeli komputer yang sudah terpasang sistem operasi itu, tetapi tidak akan mencoba memasangnya secara terpisah di perangkat Windows atau Mac mereka sendiri
      Orang yang punya pengetahuan teknis cukup untuk merasa puas kemungkinan tidak akan terlalu bingung meski muncul 3 turunan Ubuntu dan 2 turunan Arch lagi
    • Membuat tiling window manager itu menyenangkan. Berkolaborasi membuat software bukan hanya sarana untuk mendapatkan suatu hasil, tetapi juga tujuan itu sendiri
      Menjadi pengembang open source berarti bisa menentukan sendiri tujuan dan caranya, dan dalam pengembangan software komersial kebebasan seperti itu sering kali tidak ada
      Akan ada bagian-bagian kasar, tetapi efek IKEA bekerja sehingga pada akhirnya Anda menyukainya
    • Ini adalah ranah yang harus diselesaikan oleh distro. Orang yang tidak menginginkan banyak pilihan bisa memakai distro yang membuat banyak keputusan untuk mereka; tidak perlu mendorong agar pilihan dihapus dari seluruh ekosistem
      Jika semua orang memakai software yang sama, itu menjadi ekosistem monokultur yang lebih rentan terhadap serangan. Windows banyak menjadi target virus juga karena targetnya besar dan konsisten
      Jika satu mesin Windows milik pengguna biasa berhasil ditembus, yang lain pun bisa ditembus dengan cara serupa. Menargetkan Linux jauh lebih sulit
      Selain itu, ini software bebas. Jika bukan membayar seseorang untuk mengerjakannya, sebagian besar adalah kegiatan sukarela, dan kita tidak bisa menentukan waktu sukarela orang lain harus dipakai untuk apa
      Jika ada begitu banyak kelompok tetapi tidak ada yang ingin bergabung, kita juga perlu meninjau struktur sosial yang dominan. Menghapus code of conduct yang memungkinkan penghukuman atas perilaku di luar proyek mungkin bisa menjadi titik awal
    • Menurut saya jumlah launcher dan dock lebih banyak daripada tiling window manager
      Dan saya juga tidak begitu tahu apa yang masih perlu ditingkatkan. Yang seperti Ulauncher atau Albert jauh lebih kuat daripada yang dimungkinkan di platform lain, dan saya juga tidak tahu bagaimana UI-nya bisa dibuat lebih baik lagi
    • Jumlah tiling window manager boleh sebanyak yang ingin dibuat orang
  • Bertambahnya jumlah perangkat lunak itu bagus. Namun, sebelum membuat sesuatu yang benar-benar baru dari awal, mungkin lebih baik berkontribusi pada yang sudah ada, atau memilih proyek yang sudah ditinggalkan atau perlu diperbaiki agar bisa dibangun dan dijalankan di compiler serta perangkat keras terbaru
    Saya juga penasaran apakah di suatu tempat ada basis data proyek dorman/mati yang layak dihidupkan kembali

    • Sesuatu yang sudah ada mungkin tidak dibuat dengan cara yang saya tuju
      Proyek lain bisa saja dipimpin oleh orang yang sulit diajak bekerja sama, atau komunitas yang tidak menerima usulan dan patch
      Prosedur sosial dan hambatan bisa membuat motivasi untuk berkontribusi hilang. Tidak semua orang bisa menjadi pemain tim optimistis tanpa kepribadian
      Bagi saya, lebih baik memulai dari awal. Karena saya bisa mengendalikan semua variabel, tidak perlu menyentuh infrastruktur sosial maupun teknis yang sudah ada, tidak perlu meyakinkan siapa pun bahwa ide saya bagus, dan tidak ingin menghabiskan lebih banyak waktu untuk berdebat dan berdiskusi daripada menulis kode
      Pengalaman pengembangan solo lebih baik. Karena tidak terikat politik dan prosedur sosial, dan mencoba menjadi pemain tim hanya memberi saya penderitaan
    • Di sebagian besar bidang ada terlalu banyak upaya berkualitas rendah, dan jika upaya itu dikumpulkan ke beberapa proyek teratas, bisa lahir beberapa aplikasi yang hebat
      Kolaborasi bisa terasa membebani dan melelahkan, tetapi pada akhirnya itulah yang menghasilkan sesuatu, dan waktunya dipakai lebih baik daripada dihabiskan untuk proyek yang akan ditinggalkan
    • Saya penasaran apakah ada repositori paket Linux utama yang mengumpulkan statistik untuk mencari aplikasi yang banyak dipakai tetapi tidak dipelihara atau fiturnya belum lengkap
  • Banyak keluhan bahwa alat untuk membuat aplikasi yang kompatibel di berbagai sistem operasi itu kurang, tetapi saya tidak setuju. Bahkan kalau hanya melihat solusi selain Electron, ada pilihannya
    Telegram memakai Qt untuk merilis aplikasi native berkinerja baik di ketiga sistem operasi
    Flutter dikompilasi menjadi kode native di ketiga sistem operasi dan mobile
    Kirigami adalah framework QtQuick yang memungkinkan pembuatan aplikasi yang bisa berjalan di semua target mobile dan desktop
    Tinggal buat saja aplikasinya. Tidak ada alasan menjadikan ini dalih untuk menyalahkan Linux

    • Flutter berperilaku sedikit berbeda di tiap platform, sehingga memberi pengalaman yang secara halus kurang baik di semua platform. Kirigami atau Qt Quick juga sulit dianggap sebagai pilihan yang realistis
      Di Windows, macOS, dan mobile hampir tidak ada komunitas atau proyek serius. Bukan bermaksud merendahkan pihak KDE, tetapi begitulah kenyataannya
      Lisensi Qt Quick juga tidak mudah di iOS, atau kalau masuk jalur komersial menjadi sangat mahal
      Sebaliknya, perusahaan-perusahaan besar berinvestasi di Electron dan menghadirkan alat kelas produksi yang sangat matang, dengan komunitas besar dan ekosistem library yang luas, serta bukan bahasa asing seperti Dart
      Telegram benar-benar berusaha satu tingkat lebih jauh. Kliennya luar biasa
    • Aplikasi Telegram berbasis Qt juga berjalan baik di macOS, tetapi sebagian besar pengguna Apple memilih klien Swift/Cocoa untuk macOS dan iOS[0]
      [0]: https://github.com/overtake/TelegramSwift
  • Masalahnya adalah perangkat lunak OSS bahkan sering kali tidak benar-benar mencoba bersaing dengan pasar
    Orang yang memakai perangkat lunak OSS menganggap wajar bahwa UX-nya akan kurang, dan kenyataannya memang sering begitu
    Perangkat lunak proprietari biasa beradaptasi untuk membuat pengalaman pengguna akhir menjadi baik karena ada risiko pengguna tidak mau membayar, tetapi OSS biasanya tidak memiliki risiko seperti itu. Open source juga perlu terekspos pada risiko yang datang dari pengguna akhir
    Saya mencoba mengubah itu dengan Notes[1], tetapi merasa sulit untuk hidup hanya dari iklan. Saya juga sempat menambahkan pembayaran untuk fitur premium seperti Kanban, tetapi karena aplikasinya FOSS sepenuhnya, siapa pun bisa dengan mudah mengompilasinya dari source
    Untuk aplikasi berikutnya[2], saya berencana menjalankannya sebagai source tertutup sebelum rilis. Saya tidak bisa menanggung risiko bahwa kerja keras saya tidak mendapat imbalan
    Saya percaya jika bisa menerima bayaran, saya bisa berinvestasi lebih banyak pada aplikasi yang berfokus pada UX di Linux, jadi ini juga membantu komunitas Linux. Sebagian mungkin akan saya rilis sebagai open source, dan mungkin di masa yang jauh nanti semuanya akan dibuka
    [1] https://github.com/nuttyartist/notes
    [2] https://www.get-plume.com

    • Irisan antara pengguna Linux dan orang-orang yang menghargai kebebasan itu besar. Bagi banyak orang, aplikasi catatan yang tidak open source sejak awal bukan pilihan karena masalah vendor lock-in dan privasi
      Jadi jika programnya tidak dibuat open source, kemungkinan Anda akan kehilangan lebih banyak daripada jika membuatnya open source dan menanggung risiko sebagian orang tidak membayar
      Menurut saya, jauh lebih banyak orang yang bersedia membayar untuk memakai open source dibanding orang yang mau memakai perangkat lunak proprietari
      Open source bukan berarti harus mendistribusikan kode ke semua orang; jika Anda memungut bayaran, Anda bisa memberikan source code hanya kepada pengguna berbayar. Namun mereka akan punya hak untuk memodifikasi dan mendistribusikan ulang
      Kalau tidak peduli pada open source, orang bisa memakai Notion atau Evernote. Kalau mencari aplikasi catatan open source modern, saya merekomendasikan Logseq
    • Sepertinya itu keputusan yang tepat. Menghasilkan uang setingkat untuk hidup dari open source itu sangat sulit, dan skalanya beberapa orde lebih kecil daripada orang yang hidup dari perangkat lunak komersial
    • Saya paham frustrasinya, tetapi ada juga contoh tandingan. Bukan bermaksud merendahkan
      Pertama, Notes terlihat cukup mirip dengan Standard Notes. Jika Notes dibuat dengan memakai OSS copyleft, menurut saya sulit untuk mengeluh kecuali membayar royalti kepada para programmer lain yang karyanya termasuk di dalamnya
      Kedua, saya mungkin pengguna yang tidak tipikal. Saya sudah memakai Linux lebih dari 20 tahun, tetapi bahkan tidak bisa menulis skrip Bash atau satu baris Perl dengan benar
      Namun justru karena saya tidak bisa coding dan menghargai pekerjaan orang lain serta kebebasan yang diberikannya, saya telah mengeluarkan jauh lebih banyak uang untuk perangkat lunak daripada yang biasanya dikeluarkan individu di platform lain
      Saya mendukung banyak pihak, seperti Kaisen dan Debian, utilitas inti FSF dan Emacs, KDE, Firefox dari Mozilla, Betterbird, Syncthing, LaGrange, Joplin, ClipTo, SoulSeek, serta layanan seperti envs.net
      Ada yang saya bayar tiap tahun, ada yang tiap bulan, ada yang hanya sekali
      Saat Standard Notes pertama keluar, saya juga membayar langganan 7 tahun, tetapi berhenti setelah memakainya sekitar dua bulan karena tidak puas. Ada juga yang sering saya pakai seperti Alacritty tetapi tidak menemukan cara untuk berdonasi, dan saya berusaha meminimalkan kasus seperti itu
    • Secara pribadi, saya melihat KDE jauh di depan macOS dan Windows
      Sebenarnya saya merasa macOS adalah salah satu window manager terburuk di antara platform populer. Memang cantik dan mudah dipakai, tetapi untuk melakukan sesuatu di luar dasar, perlu mantra ajaib yang tidak bisa ditemukan secara alami
      Tentu selera tiap orang berbeda
    • Ada beberapa pemikiran. Saya cukup mengikuti bidang ini, tetapi belum pernah mendengar aplikasi itu, dan persaingannya sangat ketat
      Saya mengeklik untuk melihat harga premium; secara tahunan masuk akal, tetapi yang terlihat hanya opsi langganan bulanan, jadi saya merasa itu sulit
      Untuk aplikasi seperti ini, saya lebih mungkin berdonasi daripada membayar versi premium. Obsidian berhasil dengan model itu
      Saya tidak menganggap akses awal ke fitur sebagai nilai besar, tetapi banyak orang membayar untuk mendukung pekerjaannya
      Selain itu, menurut saya struktur dengan ekosistem open source besar di sekitar produk inti yang tertutup memberi orang alasan untuk membayar
  • Akan lebih baik kalau tulisannya punya beberapa contoh
    Saya tidak terlalu bisa membayangkan orang yang sedang membuat distro padahal sebenarnya seharusnya membuat aplikasi. Kalau dipaksakan, mungkin LinuxCNC? Tapi itu punya kebutuhan kernel tertentu, jadi distro kustom mungkin memang lebih cocok

    • Desktop environment pada dasarnya adalah aplikasi yang bisa dipasang dengan mudah lewat satu atau dua klik atau perintah
      Saya kurang paham kenapa distro turunan dari turunan dibagikan hanya karena memuat desktop environment yang berbeda
  • Menurut saya, daripada “Berhenti membuat distro Linux, buatlah aplikasi”, lebih baik berhenti mendengarkan orang-orang yang mencoba mendikte apa yang harus dan tidak boleh dilakukan

    • Saya juga terganggu dengan nadanya
      Meski begitu, pesan dan informasinya sendiri bagus
      Secara pribadi, saya mungkin akan mengatakan “Pengguna Linux tidak menginginkan lebih banyak distro. Mereka menginginkan perangkat lunak.” Setidaknya itu berlaku untuk saya
    • Kita juga harus berhenti mendengarkan orang-orang yang menyuruh berhenti mendengarkan orang yang mencoba mendikte apa yang harus dan tidak boleh dilakukan. Tidak semuanya relatif; ada pilihan yang baik dan pilihan yang buruk
  • Baru-baru ini pindah dari Mac ke Linux, karena ingin memakai perangkat bekas berperforma bagus sebagai mesin harian
    Sebelumnya juga pernah memasang Linux di beberapa mesin, tetapi kali ini bukan sekadar hobi
    Ubuntu mendukung hardware dan periferal saya dengan baik, tetapi app store-nya terasa belum matang dan seperti dipaksakan masuk. Meski begitu, hampir semuanya berfungsi sesuai harapan
    Saya juga ingin mencoba Mint, Debian, dan Arch, tetapi agak berhati-hati karena tampaknya banyak software ditulis dengan Ubuntu sebagai acuan

    • Linux Mint berbasis Ubuntu, jadi paket Ubuntu bisa dipakai tanpa masalah. Pada dasarnya bisa dianggap sebagai Ubuntu yang lebih baik
      Ada juga versi Mint berbasis Debian, tetapi itu lebih seperti pengaman agar tidak bergantung secara fatal pada pihak Ubuntu
      Sekarang, memakai distro yang tidak biasa pun tidak terlalu bermasalah. Kalau package manager bawaan tidak menyediakan aplikasi yang diinginkan, bisa memakai AppImage, Flatpak, atau Snap
    • Hampir tidak ada hal yang ditulis untuk Ubuntu yang tidak akan berjalan di Arch atau kebanyakan distro modern
      Saat memakai Arch, memang perlu terbiasa dengan asumsi orang-orang yang menjadikan Ubuntu sebagai patokan, tetapi kebanyakan hanya sebatas mem-patch file konfigurasi atau mengatur variabel lingkungan
      Hal-hal seperti itu adalah keterampilan yang berguna dan bisa diterapkan di tempat lain juga
    • Fedora juga sebaiknya benar-benar dicoba sekali
      Saya merasa seandainya saja mencobanya lebih awal
  • Entah kenapa ada orang yang mau melakukan itu. Lebih sulit, dan pengguna Linux tidak akan membayar untuk sesuatu yang tidak layak dibayar

    • Karena dunia akan diuntungkan jika ada lebih banyak software gratis yang bagus