Bagaimana Komunitas Free Software Bekerja


Bismillahirrahmanirrahim.

Copyright © 2016 Ade Malsasa Akbar <teknoloid@gmail.com>

Tulisan ini tersedia dalam PDF dan ODT.

Tulisan ini ditujukan untuk memetakan komunitas free software secara umum sehingga masyarakat awam mengenal garis besar cara bekerjanya. Di antara masalah free software sulit diterima di masyarakat adalah tidak diketahuinya peta komunitas free software itu sendiri dengan jelas, sehingga tidak ada pegangan yang mantap bagi masyarakat untuk masuk. Masalah tersebut bisa diselesaikan salah satunya dengan tulisan semacam ini. Tujuan yang diharapkan adalah masyarakat mengenal secara umum metode komunikasi serta metode gotong royong yang terjadi di komunitas free software di seluruh dunia. Pengaruh yang diinginkan adalah masyarakat memperoleh pegangan untuk bisa berkontribusi kepada komunitas free software secara lebih terarah. Tulisan ini tidak ditujukan sebagai buku yang komprehensif, tetapi sebatas “pembukaan” untuk memperkenalkan saja serta untuk memancing minat menulis para penulis lain di dalam topik yang sama. Tulisan ini adalah lanjutan dari seri tulisan Bahaya Paten Software, Antara Penamaan “GNU/Linux” dan “Linux”, Memperkenalkan Free Software, Apa Itu GNU/Linux, Apa Itu Free Software, Apa Itu Proprietary Software, dan Apa Itu GNU. Semoga tulisan ini bermanfaat.

1. Mengenal Contoh Komunitas Free Software

Tidak mungkin memperkenalkan komunitas free software tanpa memberi contoh sejumlah komunitas di dalamnya. Perlu diketahui bahwa keseluruhan komunitas free software terdiri dari komunitas-komunitas yang lebih kecil, serta ada pula organisasi-organisasi dan perusahaan-perusahaan yang tergabung di dalamnya. Adapun sebagian contoh komunitas yang terpopuler di dalam free software sebagai berikut.

Adapun pioner dari semua komunitas free software adalah Proyek GNU yang mulai muncul tahun 198312345.

2. Mengenal Sistem Komunikasi Free Software

Free Software sebagai komunitas yang sangat besar (terdapat di seluruh dunia) memiliki sistem komunikasi tersendiri. Setiap komunitas mandiri di dalam komunitas free software memiliki sistem komunikasi yang sama. Bedanya dengan komunitas di luar free software, free software menggunakan sistem komunikasi yang universal, terjangkau, murah, dan bebas pemblokiran. Terdapat dua sistem komunikasi utama komunitas free software, yaitu email dan IRC.

  • Email: maksud dari email di sini adalah komunikasi massal dengan media mailing list (di Indonesia disebut milis). Dahulu, selain mailing list, media yang digunakan adalah newsgroup (contohnya comp.os.minix). Setiap satu komunitas free software memiliki mailing list sendiri, bahkan proyek-proyek di dalam satu komunitas memiliki mailing list sendiri-sendiri. Misalnya proyek Ubuntu saja sudah memiliki sekitar 100 mailing list resmi di seluruh dunia, belum termasuk yang tidak resmi, dan belum juga termasuk komunitas selain Ubuntu. Mailing list digunakan untuk utamanya mengerjakan proyek software, atau dukungan teknis, atau pengumuman, atau korespondensi serius lainnya. Mailing list mempersyaratkan alamat email. Tidak ada biaya pendaftaran.
  • IRC: maksud dari IRC di sini adalah komunikasi massal dengan media Internet Relay Chat. IRC sesuai namanya adalah fasilitas chatting di internet. IRC lahir lebih dulu daripada WWW, lebih dulu ada dibandingkan web yang kita kenal sekarang. Komunitas free software seluruhnya memiliki kanal IRC sendiri-sendiri, sebagaimana mereka memiliki milis-milis. Umumnya satu buah proyek di dalam satu komunitas memiliki kanal IRC sendiri, bahkan bisa lebih dari satu. Dengan adanya ribuan komunitas di seluruh dunia, otomatis jumlah kanal IRC yang ada mengikuti jumlah komunitasnya. IRC digunakan utamanya untuk rapat, atau dukungan teknis, atau pengajaran/kuliah, dan korespondensi yang keseriusannya di bawah email lainnya. Berbeda dengan email, IRC tidak mempersyaratkan akun atau alamat email apa pun (siapa pun bisa langsung masuk) sehingga frekuensi diskusi melalui IRC umumnya jauh lebih besar dibanding email. Tidak ada biaya pendaftaran.

3. Cara Kerja Mailing List & IRC

Berikut ini sejumlah gambaran singkat mengenai sejumlah mailing list dan IRC yang berbeda mengenai cara kerjanya masing-masing dan apa konsekuensi dari keberadaan sistem komunikasi tersebut.

 

Kategori Contoh Divisi Cara Kerja Konsekuensi
Pengembangan Kernel Kernel Linux

https://lkml.org/

Membahas segala aspek development yang bersifat teknis seperti bug report, patching, pembuatan fitur baru, maintaining, pertimbangan teknis, dan lain-lain.

Baca FAQ http://www.tux.org/lkml/.

Rilis baru kernel Linux.

Penambahan fitur kernel Linux.

Penambalan bug terhadap kernel Linux.

Pengembangan Distribusi Proyek Ubuntu

http://ubuntu.com

Art Membahas segala aspek kesenian dari suatu rilis distribusi GNU/Linux (Ubuntu), misalnya menentukan pergantian wallpaper, tema visual, ikon-ikon, warna, logo, branding, theme sound, sound effects, dan sebagainya.

Anggota mailing list saling mengirimkan hasil kerjanya ke mailing list yang sama, didiskusikan bersama, diperbaiki, dan dikirimkan ke pihak divisi development. Nantinya hasil kerja akan dimasukkan dalam rilis Ubuntu berikutnya.

Mailing list menerima email-email yang sifatnya formal dalam jangka waktu yang lambat (nonreal time), sedangkan IRC menerima diskusi-diskusi yang sifatnya nonformal dalam jangka waktu yang cepat (real time).

  • Tersedianya wallpaper resmi suatu distribusi GNU/Linux (Ubuntu).
  • Tersedianya sound theme.
  • Tersedianya publikasi-publikasi yang seirama desainnya apakah di web, wiki, atau pamflet & brosur.
Translation Membahas segala aspek penerjemahan antarmuka visual suatu distribusi GNU/Linux (Ubuntu) ke semua bahasa di dunia.

Mengerjakan penerjemahan antarmuka tersebut.

Mengerjakan penerjemahan dokumentasi suatu distribusi GNU/Linux (Ubuntu) ke semua bahasa di dunia.

Mailing list menerima email-email yang sifatnya formal dalam jangka waktu yang lambat (nonreal time), sedangkan IRC menerima diskusi-diskusi yang sifatnya nonformal dalam jangka waktu yang cepat (real time).

  • Tersedia versi GNU/Linux (Ubuntu) bertampilan Bahasa Indonesia.
  • Tersedia dokumentasi-dokumentasi GNU/Linux berbahasa Indonesia.
Devel Membahas segala aspek yang terkait langsung dengan pemrograman atau pengembangan setiap software di dalam distribusi GNU/Linux. Divisi ini adalah sentral semua divisi di dalam proyek pengembangan suatu distribusi GNU/Linux (Ubuntu).

Mailing list devel biasanya mendiskusikan laporan-laporan bug, kiriman-kiriman perbaikan, kiriman-kiriman kontribusi dari divisi lain, atau memutuskan suatu keputusan development penting, atau mengumumkan suatu jadwal rilis, dan hal-hal sentral lainnya.

Di dalam konteks komunitas Ubuntu, tim yang menangani devel disebut Ubuntu Engineering Team. Di dalam devel ada tim untuk pengembangan kernel, pemaketan, quality assurance (testing), dan lain-lain.

  • Tersedianya distribusi GNU/Linux seperti Ubuntu atau Xubuntu.
Dukungan Teknis Proyek Ubuntu Ubuntu Desktop Mailing list menerima email-email pertanyaan seputar desktop yang sifatnya formal dalam jangka waktu yang lambat (nonreal time), sedangkan IRC menerima pertanyaan-pertanyaan seputar desktop yang sifatnya nonformal dalam jangka waktu yang cepat (real time). Bertanya di IRC cenderung lebih cepat menerima jawaban oleh sebab sifatnya yang real time.

Yang bertanya dan yang menjawab di mailing list maupun IRC, sama-sama sukarelawan dari anggota komunitas itu sendiri. Namun kadang-kadang atau sering kali developer inti sendiri yang menjawabnya.

  • Terselesaikannya masalah-masalah pengguna akhir.

 

4. Contoh Mailing List Komunitas

Berikut ini daftar sejumlah mailing list terpopuler dari komunitas free software dan bagaimana cara pendaftarannya.

Nama Alamat Cara Bergabung Cara Posting Topik
LibreOffice User users@global.libreoffice.org Kirim email kosong ke users+subscribe@global.libreoffice.org Kirim email ke users@global.libreoffice.org. Bantuan tanya jawab pengguna LibreOffice.
Linux Kernel Mailing List (LKML) linux-kernel@vger.kernel.org Baca http://www.tux.org/lkml/ Kirim email ke linux-kernel@vger.kernel.org. Pengembangan kernel Linux.
Proyek GNU (support) gnu-misc-discuss@gnu.org Isi formulir https://lists.gnu.org/mailman/listinfo/gnu-misc-discuss

Kirim email ke gnu-misc-discuss@gnu.org

Diskusi dukungan teknis sistem operasi GNU.

Proyek GNU (devel) gnu-system-discuss@gnu.org Isi formulir https://lists.gnu.org/mailman/listinfo/gnu-system-discuss

Kirim email ke gnu-system-discuss@gnu.org

Diskusi pengembangan sistem operasi GNU.

Xubuntu (support) xubuntu-users@lists.ubuntu.com Isi formulir https://lists.ubuntu.com/mailman/listinfo/xubuntu-users Kirim email ke xubuntu-users@lists.ubuntu.com Bantuan tanya jawab Xubuntu.
Xubuntu (devel) xubuntu-devel@lists.ubuntu.com Isi formulir https://lists.ubuntu.com/mailman/listinfo/xubuntu-devel Kirim email ke xubuntu-devel@lists.ubuntu.com Pengembangan Xubuntu.
Proyek KDE (support) kde@mail.kde.org Isi formulir https://mail.kde.org/mailman/listinfo/kde Kirim email ke kde@mail.kde.org Bantuan tanya jawab pengguna KDE.
Proyek KDE (devel) kde-devel@kde.org Isi formulir https://mail.kde.org/mailman/listinfo/kde-devel Kirim email ke kde-devel@kde.org Pengembangan KDE.

5. Contoh IRC Komunitas

Berikut ini daftar sejumlah kanal IRC dari komunitas-komunitas populer di komunitas free software. Di antara mereka ada kategori kanal pengembangan (devel), ada kanal dukungan teknis (support), ada kanal obrolan bebas (offtopic).

 

Nama Komunitas Kanal Support Kanal Development Server Topik
Proyek GNU #gnu #gnu Freenode Membahas masalah-masalah teknis seputar sistem operasi GNU dan program-program di dalam sistem operasi GNU tersebut.
Free Software Foundation #fsf Freenode Membahas masalah-masalah nonteknis yang krusial seperti masalah lisensi, paten, copyright, dan yang semisalnya.
Proyek Ubuntu #ubuntu #ubuntu-devel Freenode Membahas bantuan dan tanya jawab seputar Ubuntu.
Proyek Fedora #fedora #fedora-devel Freenode Membahas tanya jawab seputar Debian.
Proyek KDE #kde #kde-devel Freenode Membahas tanya jawab seputar Debian.
Proyek GNOME #gnome #gnome-hackers GNOME Membahas tanya jawab seputar GNOME.

Membahas pengembangan GNOME.

6. Bagaimana Suatu Komunitas Terbentuk

Dengan contoh-contoh populer yang singkat, perkara ini bisa dipahami sebagai berikut. Penyebab pembentukan suatu komunitas free software kurang lebih bisa diklasifikasikan karena ketidaksetujuan, atau karena kebutuhan.

  • Komunitas free software bermula dari diumumkannya Proyek GNU, proyek pembuatan sistem operasi bernama GNU, tahun 1983. Mengikuti itu, tahun 1984 proyek benar-benar dimulai dengan sejumlah developer ikut serta. Tahun 1985 GNU Manifesto diumumkan ke seluruh dunia, developer-developer lain dari berbagai tempat ikut serta dalam Proyek GNU. Dari sini komunitas free software membesar dan berkembang. Dalam hal ini, komunitas free software dibentuk karena ketidaksetujuan terhadap proprietary software. Baca pengumuman awal Proyek GNU.
  • Komunitas KDE bermula dari pengumuman Proyek Kool Desktop Environment oleh Matthias Ettrich tahun 1996 di suatu newsgroup. Dalam hal ini, komunitas KDE dibentuk kurang lebih karena kebutuhan terhadap antarmuka grafis yang mudah untuk sistem operasi UNIX-like. Baca pengumuman awal Proyek KDE.
  • Komunitas GNOME bermula dari persoalan lisensi Qt Framework, yakni library khusus yang digunakan untuk membangun KDE, pada era sebelum tahun 2000 ketika Qt Framework masih berlisensi proprietary mengakibatkan Proyek GNU berinisiatif mengembangkan desktop environment baru yang 100% dibuat dari free software. Proyek GNOME sendiri dimulai 19976 dan pada 1999 akhirnya jadilah produk desktop environment itu versi 1.07 yang dinamakan GNOME, di samping itu terbentuklah komunitas yang besar di balik produk itu di seluruh dunia. GNOME itu sendiri dahulu singkatan dari GNU Network Object Model Environment. Dalam hal ini, komunitas GNOME dibentuk karena ketidaksetujuan terhadap KDE pada era itu. Baca pengumuman awal Proyek GNOME.

7. Mengenal Budaya Announcement

Komunitas free software sejak awal adalah komunitas untuk masyarakat. Oleh sebab itu, setiap aktivitas mereka pasti mudah diketahui oleh siapa pun di mana pun. Bahkan aktivitas mereka cenderung lebih mudah diketahui publik dibandingkan komunitas selainnya. Hal ini disebabkan budaya woro-woro (announcement) mereka, dan mereka sangat menjaga budaya ini. Budaya ini bentuknya adalah pengumuman di suatu mailing list setiap kali mereka ingin memulai suatu proyek. Pengumuman-pengumuman yang pernah dilakukan, tidak hilang karena komunitas punya sistem mail archive untuk menyimpan segala email yang pernah dikirimkan ke mailing list, termasuk announcement itu. Dampak positifnya, pengguna yang telah jauh zamannya dari pembentukan komunitas-komunitas itu (mis. GNU 1983, KDE 1996, GNOME 1997) tetap bisa mempelajari sejarah terbentuknya komunitas dengan membaca arsip-arsip tersebut. Berikut kutipan dari sejumlah announcement paling terkenal di komunitas free software (GNU, GNU Manifesto, Linux kernel, KDE, GNOME) beserta data waktu dan sumbernya.

7.1 Pengumuman Proyek GNU

Berikut ini pengumuman awal proyek GNU oleh Richard Stallman tahun 1983 dipotong sebagian karena terlalu panjang:
From CSvax:pur-ee:inuxc!ixn5c!ihnp4!houxm!mhuxi!eagle!mit-vax!mit-eddie!RMS@MIT-OZ

From: RMS%MIT-OZ@mit-eddie

Newsgroups: net.unix-wizards,net.usoft

Subject: new Unix implementation

Date: Tue, 27-Sep-83 12:35:59 EST

Organization: MIT AI Lab, Cambridge, MA

 

Free Unix!

 

Starting this Thanksgiving I am going to write a complete Unix-compatible software system called GNU (for Gnu’s Not Unix), and give it away free(1) to everyone who can use it. Contributions of time, money, programs and equipment are greatly

needed.

 

To begin with, GNU will be a kernel plus all the utilities needed to write and run C programs: editor, shell, C compiler, linker,

assembler, and a few other things. After this we will add a text

formatter, a YACC, an Empire game, a spreadsheet, and hundreds of

other things. We hope to supply, eventually, everything useful that normally comes with a Unix system, and anything else useful, including on-line and hardcopy documentation.

Bagian tengah sampai akhir pesan dipotong. Sumber lengkap bisa dibaca di http://www.gnu.org/gnu/initial-announcement.html.

7.2 Pengumuman GNU Manifesto

Pengumuman GNU Manifesto dilakukan oleh Richard Stallman pada tahun 1985. Salinan pengumuman terlalu panjang. Pengumuman bisa dibaca lengkap di http://www.gnu.org/gnu/manifesto.en.html.

7.3 Pengumuman Proyek Kernel Linux

Pengumuman awal Proyek Linux dilakukan oleh Linus Torvalds pada 1991.

Hello everybody out there using minix –

I’m doing a (free) operating system (just a hobby, won’t be big and professional like gnu) for 386(486) AT clones. This has been brewing since april, and is starting to get ready. I’d like any feedback on things people like/dislike in minix, as my OS resembles it somewhat (same physical layout of the file-system (due to practical reasons) among other things).

I’ve currently ported bash(1.08) and gcc(1.40), and things seem to work. This implies that I’ll get something practical within a few months, and I’d like to know what features most people would want. Any suggestions are welcome, but I won’t promise I’ll implement them :-)

Linus (torvalds@kruuna.helsinki.fi)

PS. Yes – it’s free of any minix code, and it has a multi-threaded fs. It is NOT portable (uses 386 task switching etc), and it probably never will support anything other than AT-harddisks, as that’s all I have :-(.

— Linus Torvalds

Sumber Wikipedia https://en.wikipedia.org/wiki/History_of_Linux dan salinan newsgroup http://groups.google.com/group/comp.os.minix/msg/b813d52cbc5a044b?dmode=source “What would you like to see most in minix?”.

7.4 Pengumuman Proyek KDE

Berikut ini pengumuman awal proyek KDE oleh Matthias Ettrich tahun 1996:

—————————–
New Project: Kool Desktop Environment (KDE)
——————————

Programmers wanted!


Motivation
———-

Unix popularity grows thanks to the free variants, mostly Linux. But still a consistant, nice looking free desktop-environment is missing. There are several nice either free or low-priced applications available, so that Linux/X11 would almost fit everybody needs if we could offer a real GUI.

Of course there are GUI’s. There is the Commond Desktop Environment (much too exansive), Looking Glas (not too expensive but not really the solution), and several free X-Filemanagers that are almost GUI’s. Moxfm for example is very well done, but unfortunately it is based on Motif.  Anyway, the question is: What is a GUI? What should a GUI be?

Bagian tengah sampai akhir pesan dipotong. Sumber lengkap terdapat di http://groups.google.com/group/de.comp.os.linux.misc/msg/cb4b2d67ffc3ffce “New Project: Kool Desktop Environment (KDE)”. Newsgroupde.comp.os.linux.misc.

7.5 Pengumuman Proyek GNOME

Berikut ini pengumuman proyek GNOME yang ditulis oleh Miguel de Icaza tahun 1997:

  • From: Miguel de Icaza <miguel nuclecu unam mx>
  • To: gtk-list redhat com, kde fiwi02 wiwi uni-tuebingen de, guile cygnus com
  • Subject: The GNOME Desktop project.
  • Date: Fri, 15 Aug 1997 22:19:34 -0500

                       The GNOME Desktop project
                (GNU Network Object Model Environment)
                http://bananoid.nuclecu.unam.mx/gnome


* Goals

We want to develop a free and complete set of user friendly
applications and desktop tools, similar to CDE and KDE but based
entirely on free software:

        - We want the applications to have a common look and feel, and
          to share as many visual elements and UI concepts as possible.

        - We want to use the GTK toolkit as our toolkit for writing
          the applications.  

          The GTK toolkit (http://www.cs.umn.edu/~amundson/gtk and
          http://levien.com/~slow/gtk/) is the toolkit written by
          Peter Mattis, Spencer Kimball, Josh MacDonald, for the GNU
          Image Manipulation Program (GIMP) project
          (http://scam.xcf.berkeley.edu/~gimp).

Dipotong bagian tengah sampai akhir. Sumber https://mail.gnome.org/archives/gtk-list/1997-August/msg00123.html.

8. Mengenal Klasifikasi Komunitas

Komunitas-komunitas di dalam komunitas free software bisa diklasifikasikan menurut kategori-kategori tertentu. Kategori yang bisa disebutkan di antaranya upstream-downstream, kategori komunitas-perusahaan, dan kategori LoCo. Masih banyak kategori lain yang tidak bisa disebut karena tempat tidak mencukupi. Masih banyak nama-nama yang tidak disebut karena sebab yang sama.

8.1 Upstream-Downstream

Upstream

Downstream

Kategori Contoh Kategori Contoh
Desktop Environment GNU Network-Object Model Environment (GNOME) Distribusi Debian
Sistem Operasi GNU Distribusi Turunan Ubuntu
Shell GNU bash
Image Editor GNU Image Manipulation Program (GIMP)
C Library GNU C Library
Debugger GNU Debugger
Compiler GNU Compiler Collection
Window System X11
Kernel Linux
Office Suite LibreOffice, Apache OpenOffice

8.2 Organisasi-Perusahaan

Organisasi

Perusahaan

Nama Peran Nama Peran
Free Software Foundation Mengembangkan sistem operasi GNU. Red Hat Mengembangkan Red Hat Enterprise Linux.

Mendukung pengembangan Fedora dan CentOS. Mendukung pengembangan GNOME.

Proyek Debian GNU/Linux Mengembangkan sistem operasi GNU/Linux Debian. Fluendo Membeli lisensi paten format audio video demi mendukung pengembangan pustaka GStreamer8.

Mengembangkan pustaka Gstreamer.

Proyek Ubuntu Mengembangkan sistem operasi GNU/Linux Ubuntu. Google Mendukung pengembangan GNOME910.
Proyek Fedora Mengembangkan sistem operasi GNU/Linux Fedora. Blue Systems Mendukung pengembangan KDE11.
Proyek GNOME Mengembangan GUI GNOME. Private Internet Access Mendukung jaringan Freenode12.
The Document Foundation Mengembangkan LibreOffice. Canonical Mendukung pengembangan Ubuntu.
The Linux Foundation Mengembangkan kernel Linux. IBM Mendukung OpenStack13.
The Document Liberation Project Mengembangkan program dan pustaka berhubungan dengan format-format dokumen yang ada di dunia. AMD Mendukung pengembangan openSUSE14.
Apache Software Foundation Mengembangkan Apache Web Server dan Apache OpenOffice, mendukung free software. Hewlett-Packard Mendukung pengembangan Gentoo15.

9. Mengenal Upstream & Downstream

Intisari cara kerja komunitas free software adalah kooperasi (cooperation). Sifat kooperasi ini yang menjadikan cara kerja komunitas free software sebagai antonim dari cara kerja komunitas proprietary software. Dunia proprietary software bekerja dengan vendorisasi, sedangkan free software kebalikannya yaitu dengan kooperasi. Vendorisasi dan kooperasi adalah berlawanan satu sama lain. Sifat kooperasi komunitas free software diwujudkan dalam konsep upstream & downstream. Upstream artinya hulu atau sumber mata air, sedangkan downstream adalah hilir atau lanjutan dari hulu tempat air mengalir. Dunia proprietary software tidak mengenal upstream & downstream. Hal ini sudah sifat alamiah keduanya.

Upstream & downstream di dalam dunia free software kurang lebih sama dengan konsep upstream & downstream di dunia hardware. Komputer PC atau laptop merek apa saja, sebenarnya dibangun dari komponen-komponen hardware yang dibuat oleh pabrik-pabrik yang berbeda. Misalnya PC bermerek ASUS, tetap saja komponen di dalamnya bukan seluruhnya dibuat oleh pabrik ASUS, melainkan komposisi dari hardware-hardware buatan pabrik-pabrik lain. Misalnya saja prosesornya dibuat oleh pabrik Intel, kartu grafisnya dibuat oleh NVIDIA, kartu jaringan dibuat oleh Qualcomm Atheros, dan seterusnya. Artinya pabrik seperti ASUS kurang lebih adalah komposer, sedangkan pabrik komponen-komponen seperti Intel adalah produser. Dalam dunia hardware ini, kita bisa menyebut pabrik komposer seperti ASUS ini sebagai downstream, dan pabrik produser seperti Intel sebagai upstream.

Di dunia free software, secara umum yang disebut upstream adalah setiap developer asli suatu free software, misalnya Proyek GNU, Proyek KDE, Proyek X Window System, Proyek Kernel Linux, Proyek Scribus, Proyek Inkscape, dan lain-lain. Tugas upstream adalah produksi program-program atau komponen-komponen. Posisi upstream di sini kurang lebih sama seperti upstream di dunia hardware, seperti pabrik Intel. Sedangkan yang disebut downstream adalah setiap distribusi GNU/Linux yang ada seperti halnya Slackware, Debian, SUSE Linux, Red Hat Enterprise Linux, Mandriva, dan seterusnya. Perhatikan ada nama distribusi (atau biasa disebut distro) di situ, yang artinya sama dengan aliran air atau hilir. Tugas suatu downstream adalah melakukan komposisi dari upstream-upstream menjadi suatu produk baru. Posisi downstream di sini kurang lebih serupa dengan downstream di dunia hardware, seperti pabrik ASUS. Jumlah upstream di dunia free software jauh lebih banyak dari jumlah downstream. Total distribusi GNU/Linux yang ada menurut distrowatch saat ini sekitar 700, sedangkan direktori FSF mencatat lebih dari 10.000 free software.

Cara kerja upstream-downstream di dunia free software pada dasarnya sederhana. Di sana ada upstream seperti Proyek GNU yang memproduksi sistem operasi dan paket-paket software. Di sana juga ada upstream seperti Proyek KDE yang memproduksi desktop environment KDE beserta segala pustaka, framework, dan program penting lainnya. Namun di sana juga ada downstream seperti Debian yang mengambil upstream-upstream itu dalam bentuk source code, kemudian melakukan build terhadap source code itu, jadilah paket-paket binary, kemudian dengan proses tertentu dikomposisikan menjadi sebuah distribusi yang bernama Debian GNU/Linux. Hal yang sama terjadi pada distribusi-distribusi GNU/Linux yang lain.

Hal unik yang perlu diperhatikan adalah sifat rekursif komunitas. Contoh paling baik tercermin dari nama GNU (GNU’s Not Unix) yang menggambarkan keadaan bahwa di komunitas free software suatu upstream bisa menjadi downstream dan sebaliknya downstream bisa menjadi upstream. Mengapa? Hal ini dikarenakan sifat kooperasi (cooperation) yang sudah disebut di awal. Sering terjadi suatu downstream berkontribusi kepada upstream, dan sebaliknya suatu upstream menolong downstream pada suatu masalah tertentu. Salah satu praktiknya adalah Debian dan Ubuntu itu sama-sama downstream terhadap upstream asli (seperti GNU atau KDE) karena mereka adalah distribusi GNU/Linux. Namun jika dipandang dari sisi Ubuntu, maka Debian adalah upstream bagi Ubuntu dan Ubuntu adalah downstream bagi Debian. Komunitas Ubuntu memberikan kontribusi kepada upstream mereka (Debian), sebaliknya Debian memproduksi segala paket yang nantinya diambil oleh downstream mereka (Ubuntu). Hal ini berlaku untuk distribusi GNU/Linux yang lain pula. Inilah sifat rekursif komunitas free software, terbentuk dari konsep upstream-downstream, yang tidak ditemukan di komunitas proprietary software.

10. Mengenal Sistem Pengelolaan Bug

Di dunia free software, salah satu esensi pengembangan software mereka adalah memecahkan masalah. Masalah yang esensial dalam software adalah bug. Maka setiap proyek free software upstream atau downstream selalu memiliki sistem bug tracking. Bug tracking adalah fasilitas terpusat di mana laporan-laporan bug suatu software dikirimkan, dipublikasikan, dan dimonitor. Di dalam sistem bug tracking pula suatu feature request (permintaan fitur) dikirimkan. Developer mengetahui problem dari software mereka melalui sistem bug tracking ini. Barulah dengan itu problem dipecahkan. Kalau tidak ada bug tracking, tidak ada perbaikan software. Umumnya, setiap downstream (distribusi GNU/Linux) memiliki bug tracking yang resmi sendiri-sendiri (pengecualian untuk Slackware). Banyak dari upstream juga memiliki bug tracking. Terdapat banyak sekali bug tracking baik dari upstream maupun downstream. Namun di sini disebutkan beberapa saja yang dapat mewakili semuanya.

10.1 Downstream

10.2 Upstream

11. Bagaimana Berkontribusi

Jumlah cara berkontribusi di komunitas free software adalah sejumlah banyaknya upstream dan downstream itu sendiri. Karena sangat banyak, maka metode kontribusi bisa disederhanakan dalam klasifikasi berikut.

  • Code: aktivitas pemrograman. Di antaranya membuat software, menulis kode program, dan patching.
  • Art: aktivitas seni. Di antaranya membuat ikon, gambar, tema, wallpaper, efek suara, dll.
  • Bug: aktivitas debugging. Di antaranya mengirim laporan bug, mengelola, dan patching.
  • Package: aktivitas packaging. Di antaranya memaketkan program menjadi paket untuk suatu distribusi GNU/Linux.
  • Market: aktivitas marketing. Di antaranya mengelola web, mengelola wiki, membuat item-item pemasaran seperti brosur, mempromosikan free software kepada masyarakat, mengadakan seminar, mendistribusikan, dll.
  • Donate: aktivitas donasi. Setiap proyek free software membutuhkan uang. Maka mendonasikan uang sangat menolong komunitas free software.

Di antara distribusi GNU/Linux ada yang mempunyai halaman panduan berkontribusi. Di antara mereka adalah Ubuntu. Halaman tersebut ada di https://community.ubuntu.com/contribute. Bahkan Ubuntu juga punya metode pencari kecocokan kontribusi yang mudah bagi calon kontributor di http://community.ubuntu.com/contribute/find-a-task/#!/toplevel/communicate.

Referensi

Catatan Perubahan

31 Maret 2016: tulisan ini dibuat di partisi Kubuntu. Jam 20:43 WIB mencapai Contoh IRC Komunitas.

1 April 2016: ditambahkan subbagian Bagaimana Suatu Komunitas Terbentuk & Mengenal Budaya Announcement. Revisi 1.

1 April 2016: ditambahkan salinan announcement dari Proyek GNU 1983. Revisi 2.

7 April 2016: revisi 3.

13 April 2016: ditambahkan paragraf pada bagian upstream & downstream dan bagian bug.

13 April 2016: jam 22:41 WIB tulisan sudah selesai secara umum. Kurang pada bagian Referensi dan ada satu salah ketik.

15 April 2016: salah ketik diperbaiki. Tulisan sudah selesai secara umum. Kurang penomoran subjudul dan subsubjudul.

22 April 2016: lisensi ditambahkan. Tulisan dinyatakan selesai.

Lisensi

Tulisan ini dilisensikan di bawah lisensi Creative Commons Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) https://creativecommons.org/licenses/by-sa/3.0/.

________

1 http://www.gnu.org/gnu/gnu-linux-faq.en.html#linuxalone “… In that alternative world, there would be nothing today like the GNU/Linux system, and probably no free operating system at all. No one attempted to develop a free operating system in the 1980s except the GNU Project and (later) Berkeley CSRG, which had been specifically asked by the GNU Project to start freeing its code …” diakses pada 5 Februari 2016.

2 http://www.gnu.org/gnu/gnu-history.en.html “Overview of the GNU System” diakses pada 9 Februari 2016.

3 http://fsfe.org/freesoftware/transcripts/rms-fs-2006-03-09.en.html “… Before that time, there was no complete free operating system …” diakses pada 13 April 2016.

4 http://www.stress-free.co.nz/richard_stallman_on_gpl_version_3 “GPL version two was developed in 1991 […] And there was no free operating system …” diakses pada 13 April 2016.

5 http://www.gnu.org/gnu/about-gnu.en.html “About the GNU Operating System” diakses pada 9 Februari 2016.

8 https://lwn.net/Articles/165985/ “… Fluendo has bought a patent license for the MP3 technology, and has used it to make a couple of different items available: […] A GStreamer plugin for MP3 released under the BSD license …” diakses pada 19 Desember 2015.

9 https://www.gnome.org/foundation/ “The GNOME Foundation” diakses 16 April 2016.

10 https://wiki.gnome.org/AdvisoryBoard “… Members […] Google …” diakses 16 April 2016.

11 http://www.blue-systems.com/projects/ “… Currently we are supporting the following projects: […] KDE Plasma 5.x […] KWin + KDecorations2 […] KDE Kicker …”

12 https://freenode.net/acknowledgements “Acknowledgements” diakses pada 16 April 2016.

13 https://www.openstack.org/foundation/companies/ “Companies Supporting The OpenStack Foundation” diakses pada 10 April 2016.

14 http://en.opensuse.org/Sponsors “… The combined forces of you, AMD and openSUSE are helping lead the Linux operating system community in 64-bit innovation …” diakses pada 16 April 2016.

15 https://www.gentoo.org/inside-gentoo/sponsors/ “… HP provides R&D resources and has loaned and hosted Alpha and IA64 hardware for the Gentoo project …” diakses pada 16 April 2016,

16 http://savannah.gnu.org/maintenance/WhyChooseSavannah/ “… The Savane integrated bug tracking system, for bugs, support requests, tasks and patches …” diakses 13 April 2016.

17 Idem.

18 http://x.org/wiki/ “… Use the xorg product in the freedesktop bugzilla to report bugs against X.Org …” diakses pada 13 April 2016.

19 https://bugs.freedesktop.org/describecomponents.cgi “… xorg:  X.Org X11 Distribution …” diakses pada 13 April 2016.

One thought on “Bagaimana Komunitas Free Software Bekerja

  1. Ping balik: Mereka Cinta Proprietary Software | RESTAVA

Dilarang menggunakan emotikon

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s