1. Perkembangan Perangkat Lunak
Komputer merupakan mesin yang memproses fakta atau data menjadi informasi. Komputer di
gunakan orang untuk meningkatkan hasil kerja dan memecahkan berbagai masalah. Yang menjadi
pemroses data atau pemecah masalah itu adalah perangkat lunak.
Bentuk terkecil dari perangkat lunak adalah operasi aritmatik dan logika. Dari operasi dasar ini
di susun program atau perangkat lunak.
Tingkat pemrosesan yang di kerjakan perangkat lunak pun dari machine-like, mulai berubah
seperti human-like. Di dalam teori informasi, di susun hirarki informasi, mulai dari data/ fakta,
kemudian setelah proses seleksi dan pengurutan menjadi sesuatu yang berguna menjadi informasi.
Informasi yang di susun secara sistematis dengan suatu alur logika tertentu menjadi knowledge. Dan
pada akhirnya gabungan knowledge yang di gabung dari berbagai sisi guna membangun wisdom.
Data yang di proses pun telah banyak berubah, yang semula hanya berupa data bilangan dan
karakter merambah ke audio visual (bunyi, suara, gambar, film). Sejauh perkembangan hingga saat
ini, seluruh proses menggunakan format data digital dengan satuan bit (binary digit).
Kita ketahui, komputer membutuhkan data atau fakta, dimana data ini pada saat diinput akan
diterjemahkan menjadi bilangan biner. Mesin komputer memproses fakta atau data menjadi suatu
informasi yang berguna bagi penggunanya. Dengan Komputer diharapkan dapat meningkatkan hasil
kerja dan memecahkan berbagai masalah. Sebelum menjadi informasi data tersebut diproses
melalui hardware yang terletak pada CPU dengan menggunakan perangkat lunak. Perangkat lunak
atau software adalah program dari komputer. Perangkat lunak adalah program yang berisi instruksi
untuk melakukan proses pengolahan data. Saat ini, tingkat pemrosesan yang dikerjakan perangkat
lunak bersifat machine-like (keinginan mesin) mulai berubah dengan sifat human-like (keinginan
manusia). Di dalam teori informasi, disusun hirarki informasi, mulai dari data/ fakta, kemudian
setelah proses seleksi dan pengurutan menjadi sesuatu yang berguna menjadi informasi. Informasi
yang di susun secara sistematis dengan suatu alur logika tertentu menjadi knowledge
(pengetahuan). Perangkat Keras tidak akan berfungsi tanpa adanya perangkat lunak begitu pula
sebaliknya perangkat lunak tidak berfungsi tanpa adanya perangkat keras. Kedua perangkat tersebut
memang saling berkaitan sehingga komputer dapat berfungsi dengan baik. Perkembangan teknologi
terutama dalam perangkat keras terus diimbangi oleh perangkat lunaknya sehingga penggunaan
komputer lebih maksimal. Kemampuan komputer dirasakan sangat berkaitan dengan perangkat
keras dan perangkat lunaknya, maka dari itu diperlukan perangkat lunak yang benar-benar
mendukung perangkat kerasnya.Bentuk paling sederhana dari perangkat lunak, menggunakan
aljabar Boolean, yang di representasikan sebagai binary digit (bit), yaitu 1 (benar) atau 0 (salah), cara
2. ini sudah pasti sangat menyulitkan, sehingga orang mulai mengelompokkan bit tersebut menjadi
nible (4 bit), byte (8 bit), word (16 bit), double word (32 bit). Kelompok-kelompok bit ini di susun ke
dalam struktur instruksi seperti penyimpanan, transfer, operasi aritmatika, operasi logika, dan
bentuk bit ini di ubah menjadi kode-kode yang di kenal sebagai assembler.
Kode-kode mesin sendiri masih cukup menyulitkan karena tuntutan untuk dapat menghapal
kode tersebut dan format (aturan) penulisannya yang cukup membingungkan, dari masalah ini
kemudian lahir bahasa pemrograman tingkat tinggi yang seperti bahasa manusia (bahasa Inggris).
Saat ini pembuatan perangkat lunak sudah menjadi suatu proses produksi yang sangat kompleks,
dengan urutan proses yang panjang dengan melibatkan puluhan bahkan ratusan orang dalam
pembuatannya. Berdasarkan perkembangannya perangkat lunak sampai dengan sekarang dibagi
menjadi beberapa era yaitu :
Era Pemula (Pioneer) Bentuk perangkat lunak pada awalnya adalah sambungan-sambungan kabel ke
antar bagian dalam komputer, Cara dalam mengakses komputer adalah menggunakan punched card
yaitu kartu yang di lubangi. Penggunaan komputer saat itu masih dilakukan secara langsung, sebuah
program untuk sebuah mesin untuk tujuan tertentu. Pada era ini, perangkat lunak merupakan satu
kesatuan dengan perangkat kerasnya. Penggunaan komputer dilakukan secara langsung dan hasil
yang selesai di kerjakan komputer berupa print out. Proses yang di lakukan di dalam komputer
berupa baris instruksi yang secara berurutan di proses.
Era Stabil Pada era stabil penggunaan komputer sudah banyak di gunakan, tidak hanya oleh
kalangan peneliti dan akademi saja, tetapi juga oleh kalangan industri / perusahaan. Perusahaan
perangkat lunak bermunculan, dan sebuah perangkat lunak dapat menjalankan beberapa fungsi, dari
ini perangkat lunak mulai bergeser menjadi sebuah produk. Baris-baris perintah perangkat lunak
yang di jalankan oleh komputer bukan lagi satu-satu, tapi sudah seperti banyak proses yang di
lakukan secara serempak (multi tasking). Sebuah perangkat lunak mampu menyelesaikan banyak
pengguna (multi user) secara cepat/langsung (real time). Pada era ini mulai di kenal sistem basis
data, yang memisahkan antara program (pemroses) dengan data (yang di proses).
Era Mikro Sejalan dengan semakin luasnya PC dan jaringan komputer di era ini, perangkat lunak juga
berkembang untuk memenuhi kebutuhan perorangan. Perangkat lunak dapat di bedakan menjadi
perangkat lunak sistem yang bertugas menangani internal dan perangkat lunak aplikasi yang di
gunakan secara langsung oleh penggunanya untuk keperluan tertentu. Automatisasi yang ada di
dalam perangkat lunak mengarah ke suatu jenis kecerdasan buatan.
3. Era Modern Saat ini perangkat lunak sudah terdapat di mana-mana, tidak hanya pada sebuah
superkomputer dengan 25 processor-nya, sebuah komputer genggampun telah di lengkapi dengan
perangkat lunak yang dapat di sinkronkan dengan PC. Tidak hanya komputer, bahkan peralatan
seperti telepon, TV, hingga ke mesin cuci, AC dan microwave, telah di tanamkan perangkat lunak
untuk mengatur operasi peralatan itu. Dan yang hebatnya lagi adalah setiap peralatan itu akan
mengarah pada suatu saat kelak akan dapat saling terhubung. Pembuatan sebuah perangkat lunak
bukan lagi pekerjaan segelentir orang, tetapi telah menjadi pekerjaan banyak orang, dengan
beberapa tahapan proses yang melibatkan berbagai disiplin ilmu dalam perancangannya. Tingkat
kecerdasan yang ditunjukkan oleh perangkat lunak pun semakin meningkat, selain permasalahan
teknis, perangkat lunak sekarang mulai bisa mengenal suara dan gambar.
Tulisan ini akan menyajikan perkembangan singkat perangkat lunak (software) komputer dari masa
ke masa.
Sejarah perangkat lunak bebas
Berikut adalah kronologi perkembangan perangkat lunak bebas :
1 Sebelum 1983
2 Dimulainya GNU dan FSF (1983-1990)
3 GNU+Linux (1991-)
4 Free BSD (1993-)
Sebelum 1983
Komunitas perangkat lunak yang dapat dibandingkan dengan apa yang sekarang dinamakan
komunitas perangkat lunak bebas telah lama muncul sebelum munculnya gerakan perangkat lunak
bebas dan istilah "perangkat lunak bebas" itu sendiri. Menurut Richard Stallman, komunitas berbagi
perangkat lunak di Massachusetts Institute of Technology (MIT) telah ada selama bertahun-tahun
sebelum ia bergabung pada 1971.[1] Contoh lain yaitu kelompok pengguna IBM 701, yang bernama
SHARE, dan kelompok pengguna Digital Equipment Corporation (DEC), yang bernama DECUS. Pada
waktu itu perangkat lunak kebanyakan dibuat oleh kalangan akademisi dan peneliti yang bekerja
dalam kolaborasi dan belum dilihat sebagai sebuah komoditi. Sistem operasi seperti versi awal dari
UNIX didistribusikan secara luas dan ditangani oleh komunitas. Kode sumber didistribusikan
bersamaan dengan perangkat lunaknya karena pengguna-pengguna sering melakukan modifikasi
4. untuk perbaikan bug atau untuk menambahkan fungsi-fungsi baru. Sehingga pada masa tersebut,
perangkat lunak dapat disebut sebagai perangkat lunak bebas, bukan karena usaha dari pengguna
atau pengembang untuk menjadikannya demikian, tetapi karena perangkat lunak dikembangkan
oleh komunitas pengguna.
Versi awal dari UNIX disebarkan secara gratis, tetapi versi awal ini tidak disertai dengan ijin untuk
menyebarluaskan atau ijin untuk menyebarkan versi yang dimodifikasi sehingga tidak dapat
dikatakan perangkat lunak bebas.
Pada akhir 1970-an dan awal 1980-an, perusahaan-perusahaan memulai membatasi perangkat lunak
melalui hak cipta. Hal ini disebabkan karena perangkat lunak-perangkat lunak tersebut berubah
menjadi sumber pendapatan sebagai perangkat lunak tak bebas.
Beberapa perangkat lunak bebas dikembangkan sebelum 1983 dan terus digunakan sampai sekarang
termasuk TeX dan SPICE.
Dimulainya GNU dan FSF (1983-1990)
Pada 1983, Richard Stallman meluncurkan proyek GNU yang bertujuan untuk menulis sebuah sistem
operasi yang lengkap dan yang kode sumbernya bebas digunakan oleh siapa saja. Beberapa insiden
khusus yang memotivasi hal ini termasuk kasus dimana sebuah pencetak yang tidak bekerja dan
tidak bisa diperbaiki penggunanya karena kode sumbernya tidak tersedia[3]. Kasus terakhir adalah
sengketa antara Stallman dan Symbolics, Inc..
Tidak lama setelah peluncuran proyek GNU, Stallman mempopulerkan istilah "free software" atau
"perangkat lunak bebas" dan mendirikan Yayasan Perangkat Lunak Bebas untuk mempromosikan
konsep tersebut. Definisi Perangkat Lunak Bebas kemudian dipublikasikan pada Februari 1986.
Pada 1989, versi pertama dari Lisensi Umum Publik GNU dipulikasikan. Versi 2-nya dipublikasikan
pada 1991.
Pada 1989, beberapa pengembang GNU mendirikan perusahaan Cygnus Solutions[4] yang bertujuan
untuk menyediakan dukungan komersial atas produk perangkat lunak bebas. Cygnus Solutions
akhirnya mengumumkan merger dengan Red Hat pada 15 November 1999.
GNU+Linux (1991-)
Pada 1992, sebuah kernel yang dimulai oleh Linus Torvalds pada tahun sebelumnya dirilis sebagai
perangkat lunak bebas. Pada waktu itu, proyek GNU telah menghasilkan atau mengintegrasikan
5. semua yang diperlukan sebuah sistem operasi kecuali sebuah kernel. Kombinasi Linux dan sistem
GNU menciptakan sistem operasi bebas dan lengkap yang pertama sejak 1983. Lihat pula:
Kontroversi penamaan GNU/Linux.
Free BSD (1993-)
Pada 1993, FreeBSD dan NetBSD dirilis sebagai perangkat lunak bebas. Keduanya berasal dari
386BSD. OpenBSD kemudian dikembangkan dari NetBSD pada 1995.