Apa Itu sumber terbuka?
Sumber terbuka adalah model produksi terdesentralisasi yang memungkinkan setiap orang mengubah dan membagikan teknologi karena desainnya yang dapat diakses publik. Istilah ini berasal dari konteks pengembangan perangkat lunak untuk menunjukkan bahwa perangkat lunak tersebut memenuhi kriteria distribusi bebas tertentu. Saat ini, istilah sumber terbuka merujuk pada seperangkat nilai yang lebih luas yang didasarkan pada prinsip pertukaran informasi bebas, pembuatan prototipe cepat, dan pengembangan kolaboratif. Setiap orang dapat menyumbangkan ide baru dan meningkatkan teknologi lebih lanjut sehingga dapat berkembang secara teratur.
Mengapa sumber terbuka penting?
Gagasan sumber terbuka berkembang dari komunitas teknologi. Inovasi teknis memerlukan kolaborasi global untuk dapat berkembang. Misalnya, tim pemrograman di AS mengembangkan teknologi sumber terbuka baru untuk aplikasi keuangan. Tim pemrograman lain di Australia memodifikasi teknologinya dengan fungsionalitas baru yang lebih cocok untuk sektor kesehatan. Tim ketiga di Asia lalu mengembangkan produk sumber terbuka baru yang menggunakan teknologi asli sebagai komponen inti.
Berbagi pengetahuan dan inovasi kolektif seperti itu dapat bermanfaat untuk seluruh komunitas. Mengunci teknologi dengan hak paten, hak cipta, dan lisensi yang mahal akan membatasi kemajuan. Banyak proyek sumber terbuka populer yang telah berhasil memajukan teknologi secara cepat di seluruh dunia dalam beberapa dekade terakhir.
Apa saja prinsip sumber terbuka?
Prinsip inti di balik proyek sumber terbuka adalah sebagai berikut:
Komunitas
Komunitas sumber terbuka adalah sekelompok orang yang bekerja sama untuk mencapai tujuan yang sama. Nilai dan tujuan mereka memandu pengambilan keputusan dan mendorong kemajuan proyek sumber terbuka.
Transparansi
Proyek sumber terbuka menjamin bahwa semua orang dalam komunitas memiliki akses terhadap informasi dan materi yang diperlukan untuk melakukan pekerjaan terbaik mereka. Dengan kesadaran terhadap gambaran yang lebih luas, anggota tim mengambil keputusan yang lebih efektif dan membangun gagasan dan penemuan satu sama lain.
Kolaborasi terbuka
Proyek komunitas mendorong kerja sama tim sehingga kelompok akan dapat menyelesaikan masalah yang tidak dapat diselesaikan secara individu. Misalnya, anggota dalam inisiatif sumber terbuka berkontribusi melakukan perubahan untuk meningkatkan hasil yang telah dibangun oleh orang lain. Anda juga dapat menetapkan aturan sehingga orang lain dapat memodifikasi solusi sesuai kebutuhan di kemudian hari.
Pembuatan prototipe yang cepat
Proyek sumber terbuka menganut pendekatan iteratif yang memungkinkan anggota tim membuat dan membagikan prototipe dalam interval yang sering. Pembuatan prototipe yang cepat mendorong adanya budaya eksperimentasi. Anda dapat meningkatkan dan meneruskan perubahan yang berhasil dan membuang yang tidak berhasil.
Meritokrasi inklusif
Gerakan sumber terbuka mendorong perspektif dan konversasi yang beragam. Komunitas membuat keputusan melalui konsensus, tetapi juga memprioritaskan keberhasilan. Gagasan terbaik akan mendapatkan lebih banyak dukungan dan upaya dari komunitas sumber terbuka.
Apa itu perangkat lunak sumber terbuka?
Perangkat lunak sumber terbuka adalah perangkat lunak yang memiliki kode sumber yang dapat diperiksa, dimodifikasi, dan ditingkatkan oleh semua orang. Kode sumber adalah bagian perangkat lunak yang dimanipulasi oleh pemrogram komputer untuk mengubah cara aplikasi berfungsi atau untuk menambahkan fitur baru. Semua orang yang memiliki akses ke kode sumber perangkat lunak dapat meningkatkan atau mengustomisasi aplikasi tersebut dengan menambahkan fitur atau memecahkan masalah kesalahan yang ada. Perangkat lunak sumber terbuka digunakan di sebagian besar aplikasi web dan perangkat yang Anda gunakan sekarang. Beberapa contoh perangkat lunak sumber terbuka adalah Linux, sebuah sistem operasi sumber terbuka, dan Mozilla Firefox, sebuah peramban internet sumber terbuka.
Apa saja fitur perangkat lunak sumber terbuka?
Fitur-fitur perangkat lunak sumber terbuka sangat selaras dengan nilai-nilai gerakan sumber terbuka.
Sumber terbuka
Perangkat lunak sumber terbuka harus dirilis berdasarkan lisensi sumber terbuka yang memenuhi kriteria distribusi tertentu, misalnya sebagai berikut:
- Tidak ada batasan dalam penjualan atau pemberian perangkat lunak sebagai komponen distribusi perangkat lunak keseluruhan
- Harus menyertakan dan mengizinkan distribusi kode sumber
- Harus mengizinkan modifikasi dan karya turunan
- Hak cipta yang terlampir pada program harus berlaku untuk semua orang tanpa diskriminasi
Desain terbuka
Desain terbuka menjamin proses yang transparan dan terbuka dalam mendesain dan merencanakan perangkat lunak. Hal ini akan memungkinkan komunitas menentukan desain dan peta jalan fitur perangkat lunak. Ini dapat menjadi tantangan tersendiri karena proses meraih konsensus komunitas bisa memakan banyak waktu. Namun, desain yang disetujui komunitas akan menghasilkan produk yang lebih baik yang secara efektif memenuhi kebutuhan pengguna.
Pengembangan terbuka
Pengembangan terbuka adalah adopsi proses pengembangan inklusif dan transparan yang memungkinkan semua pihak berpartisipasi secara setara. Layanan yang dapat diakses secara publik akan menghadirkan visibilitas terhadap aktivitas pengembangan. Misalnya, proyek sumber terbuka biasanya mengadopsi serangkaian standar yang dengan jelas menyatakan metrik yang akan digunakan untuk evaluasi kontribusi. Hal ini akan memungkinkan semua pembaruan perangkat lunak untuk diberi pertimbangan yang sama, baik jika pembaruan tersebut berasal dari kontributor pertama kali maupun developer senior.
Komunitas terbuka
Komunitas terbuka menjamin bahwa komunitas pengembangan perangkat lunak merupakan lingkungan inklusif yang mendengar semua pendapat dan semua orang dapat naik ke posisi pimpinan. Hal ini menyeimbangkan kebutuhan baik bagi developer maupun pengguna dengan menetapkan tujuan bersama dan membangun hubungan yang kuat.
Apa perbedaan antara perangkat lunak sumber terbuka dengan perangkat lunak tipe lain?
Terkadang, organisasi atau orang-orang yang membuat perangkat lunak ingin mengontrol untuk alasan komersial. Mereka mempertahankan hak kepemilikan eksklusif terhadap kode sumber, yang berarti bahwa hanya mereka yang dapat memodifikasi kode untuk memperbaiki kesalahan atau menambahkan fitur baru. Perangkat lunak seperti itu disebut dengan perangkat lunak milik perorangan atau perangkat lunak sumber tertutup. Produk Adobe Photoshop dan Norton AntiVirus adalah contoh perangkat lunak milik perorangan.
Perangkat lunak sumber terbuka vs. Perangkat lunak sumber tertutup
Tiga perbedaan utama antara perangkat lunak sumber terbuka dan perangkat lunak sumber tertutup, atau perangkat lunak milik perorangan, adalah sebagai berikut:
Keandalan
Keamanan
Semua kode sumber dapat memiliki celah keamanan yang membuatnya rentan terhadap serangan siber. Namun, perangkat lunak sumber terbuka memiliki kelebihan, yaitu perbaikan yang lebih cepat. Setelah Anda atau anggota lain dari komunitas melaporkan kerentanan keamanan, proyek sumber terbuka akan merilis pembaruan kode dalam satu atau dua hari. Jika perusahaan komersial mengembangkan perangkat lunak sumber terbuka, visibilitas yang tinggi akan memunculkan urgensi untuk memperbaiki permasalahan dan bahkan dapat mendorong dihasilkannya perangkat lunak asli yang lebih baik.
Sebaliknya, perangkat lunak milik perorangan memiliki siklus pembaruan yang lebih lama karena alasan berikut:
- Vendor mungkin hanya memiliki beberapa orang yang bekerja pada proyek tertentu.
- Vendor mungkin lebih memprioritaskan pertimbangan keuangan dibandingkan celah keamanan.
- Vendor mungkin menunda perilisan pembaruan keamanan karena mereka lebih memilih membundel beberapa perubahan lalu merilisnya sekaligus.
Lisensi
- Memodifikasi kode sumber untuk proyek pribadi.
- Meredistribusikan kode yang dimodifikasi jika pengguna mengizinkan pengguna lain melihat perubahannya.
Apa saja tipe lisensi perangkat lunak sumber terbuka?
Meskipun lisensi sumber terbuka memiliki batasan yang lebih sedikit dibandingkan lisensi milik perseorangan, tingkat dan keberagaman izin bervariasi berdasarkan tipe. Berikut ini adalah beberapa tipe umum lisensi sumber terbuka.
Lisensi domain publik
Lisensi domain publik menunjukkan bahwa setiap orang dapat memodifikasi, menggunakan, atau mengomersialkan perangkat lunak dengan tanpa batasan. Dalam kebanyakan kasus, pembuat perangkat lunak sumber terbuka domain publik secara disengaja atau sukarela memutuskan untuk tidak melindungi hak cipta perangkat lunak tersebut.
Lisensi permisif
Lisensi sumber terbuka permisif berisi persyaratan minimal untuk dapat memodifikasi atau mendistribusikan perangkat lunak. Beberapa contoh tipe lisensi ini adalah Lisensi Apache dan lisensi Berkeley Source Distribution (BSD). Meskipun perangkat lunak asli memiliki hak cipta dan bersifat sumber terbuka, pengguna dapat mengomersialkan dan meredistribusikan versi yang sudah dimodifikasi.
Lisensi Publik Sedikit Kurang Umum
Lisensi Publik Sedikit Kurang Umum (LGPL) mengizinkan Anda untuk menggunakan komponen sumber terbuka dengan tanpa batasan. Komponen ini sering kali dapat diakses sebagai modul kode yang disebut dengan pustaka, yang dapat dipasang ke dalam kode lalu Anda gunakan. Jika Anda menggunakan kode sumber LGPL di aplikasi, Anda dapat mengomersialkan aplikasi tersebut. Akan tetapi, jika Anda memodifikasi kode LGPL yang sudah ada, Anda harus meredistribusikannya lagi berdasarkan lisensi yang sama.
Lisensi Copyleft
- Jika Anda memodifikasi komponen sumber terbuka copyleft, Anda harus merilis semua kode sumber baru bersamaan dengan aplikasi Anda. Akan tetapi, Anda tidak perlu melakukannya jika Anda menggunakan aplikasi tersebut secara internal dan tidak akan merilisnya ke publik.
- Anda dapat menjual modifikasi GPL, tetapi pembeli dapat meredistribusikannya lebih lanjut jika mereka menginginkannya.
- Anda harus mencantumkan semua penulis kode sebelumnya dalam pernyataan hak cipta kode baru Anda.
Siapa yang mengatur perangkat lunak sumber terbuka?
Inisiatif Sumber Terbuka (OSI) merupakan organisasi nirlaba global yang mengedukasi dan mendukung semua jenis perangkat lunak sumber terbuka. Sebagai badan pembuat standar, OSI mempertahankan penggunaan Open Source Definition, suatu dokumen yang secara legal menetapkan ketentuan yang membuat perangkat lunak bersifat sumber terbuka.
Dengan mengikuti Open Source Definition organisasi tersebut, Anda dapat memperoleh merek dagang lisensi yang disetujui OSI. Merek dagang tersebut akan menciptakan kepercayaan dan mendorong pihak lain untuk berkontribusi dan berkolaborasi dengan Anda. OSI menyimpan daftar lisensi yang disetujui dan menyetujui lisensi-lisensi baru dalam komunitas sumber terbuka. OSI juga mengatur persyaratan standar terbuka untuk perangkat lunak.
Apa itu standar terbuka?
Standar terbuka adalah aturan pengembangan perangkat lunak yang mendukung keseragaman dan interoperabilitas teknologi. Standar tersebut tersedia secara bebas untuk diterapkan, diadopsi, dan diperbarui. Karenanya, standar terbuka membuat banyak aspek dalam kehidupan kita sehari-hari menjadi lebih nyaman dan mudah.
Misalnya, standar memungkinkan semua tipe mesin dapat terhubung dengan semua tipe ruter nirkabel. Anda dapat menggunakan laptop untuk terhubung ke internet dari rumah dan kafe favorit Anda, apa pun tipe ruter yang digunakan. Tanpa standar, Anda harus mencari kafe dengan ruter yang kompatibel dengan laptop Anda!
Sumber terbuka vs standar terbuka
Standar merupakan aturan, panduan, dan spesifikasi untuk menulis tipe kode sumber tertentu, alih-alih kode itu sendiri. Standar perangkat lunak harus mengikuti aturan tertentu agar diklasifikasikan sebagai sumber terbuka. Misalnya, Anda membutuhkan teknologi milik perseorangan untuk mengimplementasikan standar tertentu, maka standar tersebut bukanlah sumber terbuka.
Mengapa terdapat versi komersial dari perangkat lunak sumber terbuka?
Para pembuat dan perusahaan lain telah memonetisasi banyak proyek sumber terbuka dengan menjual pengaya, seperti analitik atau keamanan, yang menarik bisnis yang lebih besar. Perusahaan swasta dapat mengomersialkan semua perangkat lunak dalam domain publik dengan menyertakan program sumber terbuka tersebut dalam kode aplikasi mereka. Mereka juga dapat merilis versi berbeda dari perangkat lunak yang sama berdasarkan lisensi yang berbeda.
Misalnya, sebuah perusahaan merilis sistem pengelolaan basis data berdasarkan lisensi baik Lisensi Publik Umum (GPL) maupun lisensi milik perseorangan. Siapa pun dapat menggunakan versi GPL untuk pengembangan perangkat lunak selama mereka membuat kode barunya bersifat sumber terbuka. Sebaliknya, versi hak perseorangan menawarkan layanan perangkat lunak tambahan sebagai berikut:
- Layanan basis data terkelola penuh
- Layanan pencadangan data tingkat korporasi
- Enkripsi keamanan tambahan
Apakah perangkat lunak sumber terbuka sama dengan perangkat lunak bebas?
Istilah perangkat lunak bebas merujuk pada gerakan sosial yang juga disebut sebagai gerakan perangkat lunak bebas, yang bertujuan untuk memperoleh dan menjamin kebebasan tertentu bagi pengguna perangkat lunak. Gerakan ini berupaya untuk menjamin bahwa pengguna memiliki kebebasan melakukan hal berikut:
- Menjalankan perangkat lunak.
- Mempelajari perangkat lunak.
- Memodifikasi perangkat lunak.
- Membagikan salinan perangkat lunak.
Perangkat lunak sumber terbuka vs perangkat lunak bebas
Saat ini, perangkat lunak bebas merujuk pada lisensi sumber terbuka dalam domain publik. Perangkat lunak sumber terbuka saat ini mencakup lebih banyak tipe lisensi dan dapat membebankan batasan ke pengguna, tidak seperti gerakan perangkat lunak bebas. Karena penggunaan istilah perangkat lunak gratis dan perangkat lunak bebas dapat saling menggantikan, akan lebih baik jika menyebut perangkat lunak bebas sebagai perangkat lunak domain publik.
Perangkat lunak sumber terbuka vs perangkat lunak gratis
Istilah perangkat lunak gratis merujuk pada produk komersial yang tersedia secara gratis untuk waktu yang terbatas. Perangkat lunak gratis juga dapat berupa produk versi uji coba gratis atau versi terbatas fitur yang versi lengkapnya memerlukan biaya berlangganan. Meskipun mendapat akses ke perangkat lunak gratis, Anda tidak memiliki hak untuk menjual kembali, membagikan, atau memodifikasinya dengan cara apa pun.
Bagaimana cara AWS berkontribusi terhadap perangkat lunak sumber terbuka?
Di AWS, kami meyakini bahwa sumber terbuka itu baik bagi semua orang. Kami berkomitmen untuk menghadirkan nilai sumber terbuka kepada para pelanggan dan keunggulan operasional AWS kepada komunitas sumber terbuka. Perekayasa AWS secara reguler mengembangkan perangkat lunak sumber terbuka dan berkontribusi terhadap ribuan komunitas sumber terbuka di GitHub, Apache, Linux Foundation, dan lebih banyak lagi. Berikut adalah cara kami yang lain dalam mendukung sumber terbuka:
- Kami telah bekerja keras untuk menjamin bahwa para pelanggan dapat melakukan deployment dan mengoperasionalkan perangkat lunak sumber terbuka yang mereka pilih di cloud. AWS mendukung lebih banyak ragam teknologi sumber terbuka dibandingkan dengan penyedia cloud lainnya.
- Kami memiliki beberapa proyek jangka panjang di komunitas sumber terbuka. Kami terus berkontribusi dalam perbaikan bug, keamanan, skalabilitas, performa, dan peningkatan fitur pada proyek-proyek tersebut.
- Kami bermitra erat dengan perusahaan-perusahaan sumber terbuka yang terkemuka—mulai dari HashiCorp, MongoDB, Confluent, hingga Red Hat—dan membantu mereka melampaui harapan pelanggan.
Pelajari tentang proyek sumber terbuka kami selengkapnya di Sumber terbuka di AWS, atau jelajahi lebih dari 1200 proyek sumber terbuka yang dipimpin Amazon di GitHub.
Mulai sumber terbuka di AWS dengan membuat akun gratis sekarang.