Sejarah sistem operasi linux wa ode ambar wati dabu
STIKOMPlus & STIKOM Linux Users Group Open Publication
1. STIKOMPlus & STIKOM Linux Users Group Open Publication
September 2003 / Volume 1 Issue 2
2. So, What's Next... << Out of The Box
Edisi kedua ini kami berusaha tampil lebih baik dengan perbaikan disana sini, mulai dari layout sampai ke isi. Kami juga menerima
beberapa usulan diantaranya adalah tata layout yang lebih baik serta perbaikan tipografi. Selain itu kami tampil dengan tambahan 2
kolom baru yakni Cute-Tea dan Essentials, Cute-Tea merupakan sumbangan tulisan dan ilmu dari Alfin sedangkan Essentials adalah
tema utama majalah digital ini. Diharapkan dengan adanya bahasan utama mulai edisi ini kami dari redaksi {Byte Me!} dapat
memberikan sesuatu yang lebih dari yang lain. Kami juga masih mengundang para penulis untuk menyumbangkan tulisan dan
ilmunya bagi kemajuan kita semua. Ilmu tidak akan berkurang karena diajarkan, justru ilmu semakin banyak diajarkan semakin
bertambah. Rencananya mulai edisi kedua ini kami akan terbit dalam bentuk cetak, namun karena satu dan lain hal untuk sementara
kami terbit dalam bentuk majalah digital saja.
Editor in Chief | Nuzli Latief Hernawan
{Byte Me!} {Byte Me!}
Digital Magazine Syndicate Digital Magazine Syndicate
CONTRIBUTORS PUBLISHER
Amygdala Nuzli Latief Hernawan STIKOMPlus & STIKOM Linux Users Group
T03B4 M. Daud Setiawan Mukadar
kopiJahe Muhammad Nasrullah EDITORIAL
LinuxCandy Nuzli Latief Hernawan
Cute-Tea Muhammad Alfin Nur Hakim Editor in Chief Nuzli Latief Hernawan
Try This One! Nuzli Latief Hernawan Co-Editor M. Daud Setiawan Mukadar
Local Content Editor Daniel Satrio Koestoro
[+] CLINIC ADVISORS ProofReader M. Nur Budiwijaya
NewsCaster Santo Doni Romadhoni
Linux Multimedia Nuzli Latief Hernawan
Network Security Diyan Christian
GTK+ Programming Ignatius Harnanto H. SUBSCRIPTIONS
QT Programming M. Alfin Nur Hakim
Shell Scripts M. Daud Setiawan Mukadar Just join our mailing list at:
Debian Linux Specialist Indra Kusuma milis-linux-subscribe@lug.stikom.edu
Slackware Linux & *BSD Specialist Diyan Christian or
Java Programming Muhammad Nasrullah stikomplus-subscribe@yahoogroups.com
Web Administration Specialist Erwien Samantha Y.
LICENSE
CONTACT
This magazine is under protection of Artistic License 2.0, a
STIKOMPlus Research & Development slightly loosed version of the old Perl Artistic License that
Grha Kreativitas Level 2 STIKOM Surabaya allows you to have verbatim copy of this magazine for free
Jl. Raya Kedung Baruk 98 (and feel free to quote it!) but with no writing and design style
Surabaya – Jawa Timur change. We are under consideration to move to other licenses
E-Mail : milis-linux@lug.stikom.edu such as the GNU/FDL, OPL, or even create our own license.
Copyright Notices >> Linux ™ is a trademark belongs to Linus Torvalds; Microsoft® Windows™ family is a trademark of
Microsoft® Corporation; Adobe PDF™ is a format created by Adobe® Corporation;
Disclaimer >> All the software/source code provided, tested, reviewed, and recommended here is either an opensource or a freeware
although written with various licenses like GNU GPL, OPL, GNU FDL, Artistic License, and many more. This magazine created with
OpenOffice.Org 1.1.0rc3 and compiled to PDF with PDF Exporter (OpenOffice.org 1.1.0rc3 prebuild).
We would like to thank to our God, our parents, everyone who in their tightly scheduled time have a minute or two to write and
contribute to this magazine, also to STIKOM Linux Users Group, Linux Team STIKOMPlus, and all the supporters out there :)
3. {Byte Me!} CONTENTS
Essentials VOLUME 1/ISSUE 2
GNU
(GNU'S NOT UNIX)
Idealisme & Perjuangannya
Selama ini anda sering mendengar GNU/Linux, GNU/GPL dan semacamnya namun
konsep di belakang idealisme ini terkadang sering diremehkan orang, seperti pada
kasus SCO UNIX versus Linux Community yang menuduh GNU/GPL tak lebih dari
sekadar kontrak sosial yang tidak memiliki kekuatan hukum. Kini kami mengangkat
apa dibalik konsep dan idealisme GNU dan pendirinya, Richard M. Stallman.
| 14
cover courtesy of rodrigo diaz alvena
GNU's Goat of The Free Software Foundation
Out of the Box | 2 Special
Perbaikan layout & typography majalah
serta tambahan beberapa kolom baru.. SLUG Profiles | 8
Ingin berkenalan dengan Erwien
Regular Samantha?..
Whispers | 4 16 | STIKOMPlus OutLoud!
Berita-berita seputar dunia IT dan GKMon dalam Seminar
OpenSource.. Deuleureon Extreme Science 2003.
5 | LinuxCandy T03B4 | 9
Membuat Video CD dengan VCDImager Kreatif pake f...
& K3B..
.
kopiJahe | 7
Singleton Pattern, apa dan bagaimana.. Cute-Tea | 10
Simple tutorial using TrollTech's
8 | Tipz & Trix QT..
Koleksi tips dan trik untuk memudahkan
pekerjaan anda..
Try This One! | 12
SystemRescueCD 0.2.3 – Linux to the
rescue..
13 | [+] Clinic
Linux untuk penggunaan complex text
layout seperti pada tulisan Arab..
{Byte Me!} Digital Magazine Syndicate / September 2003 / 3
4. Whispers | LinuxCandy | kopiJahe | Tipz & Trix | SLUG Profiles | Amygdala | T03B4 | Cute-Tea
Headlines NewsFlash
Worm baru menyebar di Internet – 22 September 2003 LinuxGames.Com ~ S-Line, perusahaan
E-mail nampaknya secara terus menerus menjadi sasaran empuk teror internet, dengan yang memproduksi games simulasi
worm terbaru yang muncul dengan nama "Swen" yang menyebar melalui pertukaran transportasi yang dikenal dengan nama
file melalui jaringan pertukaran file pada sistem operasi Windows. Simutrans mengeluarkan release expansion
set terbaru mereka nomor versi 0.82-7exp
http://newsvac.newsforge.com/newsvac/03/09/22/198257.shtml?tid=5 dengan tambahan satu add-on.
DistroWatch.Com ~ Knoppix versi 3.3
[STABLE] telah keluar dan siap
didistribusikan ke seluruh dunia. Alamat
download dan mirror-nya bisa anda
SUN CEO: Linux itu buat "penghobi" bukan enterprise – 22 September 2003 dapatkan di http://www.knoppix.net/
Scott McNealy nampaknya masih kurang setuju apabila SUN Microsystem masuk ke
dunia Linux dan Open-Source, berkata kepada para peserta konferensi SunNetwork CNet.Com ~ Para ahli keamanan
minggu lalu bahwa operating sistem ini (maksudnya Linux) hanya cocok untuk mengeluarkan peringatan akan adanya
"penghobi" bukan kelas enterprise. lubang keamanan pada dua buah aplikasi
opensource yang sering dipakai yakni
http://www.searchenterpriselinux.com/originalContent/0,289142,sid39_gci928789,00.ht SendMail dan OpenSSH. Sangat disarankan
ml bagi pemakai untuk segera melakukan
upgrade ke versi yang lebih baru atau
melakukan patch ke versi yang lebih baru.
SlashDot.Org ~ Proyek RedHat Linux
melakukan penggabungan dengan proyek
Artikel: Membangun Personal Robot Berotak Linux – 18 September 2003 Fedora, sebuah grup yang spesialisasi
Hanya dengan $449 ER1 Personal Robot System dari Evolution Robotics menjadi cara bidangnya adalah menyediakan paket-paket
yang menyenangkan untuk belajar mengenai robot. Menggunakan laptop sebagai RPM berkualitas tinggi untuk RedHat.
otaknya, didalamnya terdapat fitur sistem pengenalan video dan audio yang
mengizinkan anda untuk memprogram perilakunya berdasarkan pada apa yang dilihat LynuxWorks.Com ~ Rockwell Collins
oleh kamera atau berdasarkan apa yang didengar oleh microphone laptop anda. Robot menggunakan LynuxWorks LynxOS-178
ini juga dilengkapi dengan motor bertenaga baterai yang mampu membuatnya bergerak sebagai embedded Real-Time Operating
sesuai kehendak anda. Jika anda mendapatkan "Gripper Arm" optional yang berharga System (RTOS) pada sistem on-board
$249, ER1 dapat diprogram untuk mengambilkan anda minuman, atau membuka pintu pesawat Bombardier Challenger 300,
dan melihat siapa di sana. Adaptive Flight Display. LynuxWorks
menyediakan hanya DO-178B Level A
http://newsforge.com/newsforge/03/09/15/1115231.shtml?tid=7 tersertifikasi POSIX kompatibel RTOS di
industri saat ini.
GnomeDesktop.Org ~ Minggu lalu
GnomeOffice 1.0 dirilis untuk konsumsi
publik. Salah satu aplikasi yang banyak
orang ingin menjadikannya bagian dari
Artikel: Yet another wormy reason to switch from Windows to Linux GnomeOffice di masa mendatang adalah
Serangan virus/worms/trojans dan semacamnya yang dibawa oleh email beberapa gLabels. gLabels adalah aplikasi untuk
waktu yang lalu yang telah meruntuhkan pengguna Windows belum berakhir, dan membuat kartu bisnis dan label cetak
nampaknya akan seperti itu untuk beberapa waktu lamanya. Diskusi mengapa ini terjadi lainnya.
dan siapa – jika ada – yang dapat bertanggung jawab terhadap kerusakan ini. Yang
perlu ditekankan oleh penulis artikel ini adalah, bahwa pengguna Linux tidak perlu LinuxPlanet.Com ~ Novell Users
khawatir dengan serangan serupa yang berjalan melalui email mereka. International telah mengeluarkan hasil test
drive untuk pre-beta Novell Nterprise Linux
http://newsforge.com/newsforge/03/09/18/2142224.shtml?tid=5 Services (NNLS) software, build 821.
{Byte Me!} Digital Magazine Syndicate | September 2003 4
5. Whispers | LinuxCandy | kopiJahe | Tipz & Trix | SLUG Profiles | Amygdala | T03B4 | Cute-Tea
Buat VCD dengan VCDImager & K3B Linux anda, namun kalau VCDImager
melakukan apa-apa dan path
anda tidak
Membuat VCD di Linux semudah click 'n run telah benar maka anda siap menjalankan
k3b dengan kemampuan barunya baik
dengan user root atau user biasa yang
Linux bisa buat VCD? Kira-kira begitulah pertanyaan kita pertama kali mendengar
anda masukkan sebagai user dari cdwriter
judul di atas. Selama ini banyak orang menganggap Linux hanya mainannya SysAdmin
anda.
atau NetAdmin saja, bukan untuk kelas 'End User' apalagi buat praktisi Multimedia.
Selain perangkatnya sendiri bebas (lisensi GNU/Gneneral Public License), kedua Tahap berikutnya adalah menjajal
perangkat ini juga mudah cara menggunakannya. kemampuan aplikasi ini. Lihat gambar di
Kalau edisi yang lalu kita membahas game Dimana xxx adalah nomer versi paket bawah ini.
'SimuTrans' di Linux, saat ini kita tersebut. Kalau kedua paket ini sukses
membahas cara membuat VCD dengan terinstal lanjutkan ke langkah berikutnya.
perangkat VCDImager dan K3B. Dua
perangkat yang sebutkan tersebut adalah Pastikan libxml2 dan libpopt terinstal baik
perangkat bebas multimedia yang dengan dengan perintah:
mudah bisa anda dapatkan di Internet. K3B
di lain sisi umumnya tersedia pada # rpm -qa libxml2 popt
distribusi Mandrake atau RedHat sebagai
Kalau keluar semacam ini (setiap distro
pembakar CD yang menggunakan pustaka
memiliki paket yang berbeda, ini merupakan
KDE sebagai basis kerjanya. Jadi pastikan
paket dari Mandrake 9.1):
anda menginstal juga paket-paket
ketergantungan dari perangkat yang kita popt-1.6.4-28mdk
akan gunakan ini. VCDImager bisa anda libxml2-2.5.4-1mdk
Gambar di atas adalah tampilan awal k3b
dapatkan di situs resminya dalam bentuk
dengan beberapa file mpeg yang siap
source code pada berarti paket tersebut telah terinstal. Namun
ditulis ke cd dengan format vcd. Pada
http://www.vcdimager.org/ sedangkan bila belum, instalkan paket tersebut untuk
menu File pilihlah bagian New Project >
K3B bisa anda dapatkan juga lewat situs memenuhi ketergantungan dari paket
New Video Project.
resminya http://k3b.sourceforge.net/. vcdimager yang akan kita instal berikutnya.
VCDImager yang saya gunakan adalah # rpm -Uvh vcdimager-xxx.rpm
versi 0.17-7 dan ini membutuhkan pustaka
tambahan yakni libCDIO. Anda dapat Setelah semua paket terinstal sukses maka
mencarinya lewat google.com atau kita lanjutkan dengan setup k3b untuk
rpmfind.net jika anda lebih suka menyiapkan semua perangkat yang telah kita
menginstal-nya langsung dari RPM. instalkan tersebut. Jalankan program 'K3B
Kalau anda memilih menggunakan paket Setup' (bisa dari pop-up menu atau dari
RPM, maka anda tidak perlu xterminal). Kalau anda menjalankan dari
mengkompilasinya terlebih dahulu. Cari xterminal, berikut ini perintahnya:
paket RPM yang sesuai dengan sistem
anda termasuk distribusi yang anda pakai # k3bsetup
dan tipe komputer anda 386/586/686.
Setelah semua paket terkumpul beserta Pastikan anda menjalankan k3bsetup sebagai Maka akan tampil seperti tampilan di atas
paket ketergantungannya, maka kita root. Setelah itu periksa apakah path yang ini. Setelah itu drag-lah file mpeg yang
lanjutkan ke tahap instalasi. Instalasi menunjuk pada VCDImager telah benar. Jika akan anda tulis dengan format vcd.
dengan RPM jauh lebih mudah tidak menunjuk pada VCDImager atau path
dibandingkan harus mengkompilasi sendiri tidak muncul, maka masukkan direktori path
dari source code-nya. yang benar lalu keluar dari k3bsetup setelah
itu jalankan kembali k3bsetup seperti biasa.
Jalankan perintah berikut : Kalau path sudah benar maka anda
dipersilakan untuk memasukkan user
# rpm -Uvh k3b-xxx.rpm tambahan yang dapat menjalankan aplikasi
# rpm -Uvh libcdio-xxx.rpm ini. Kalau anda melakukan perubahan pada
"/etc/fstab" maka anda harus me-restart mesin
Nuzli L. Hernawan <nlh@nuzlilatief.org> {Byte Me!} Digital Magazine Syndicate | September 2003 5
6. Whispers | LinuxCandy | kopiJahe | Tipz & Trix | SLUG Profiles | Amygdala | T03B4 | Cute-Tea
Kemudian pada dialog box tersebut pilihlah
speed cd yang akan anda tulis. Kecuali anda
ingin mengubah volume name-nya anda
tinggal menekan tombol burn, sehingga
tampilan akan menjadi seperti ini.
Maka akan muncul peringatan kalau hanya
file video akan dibuat dari file mpeg yang Setelah itu vcd akan otomatis keluar dan
anda masukkan ke dalam project. Namun file siap untuk dicoba. Selamat mencoba!
ini harus sudah berformat vcd, maksudnya
adalah merupakan kompresi video mpeg
bukan compressed avi atau divx atau yang
lainnya dan ukuran pixel video adalah
352x244 yang merupakan format standar dari
mpeg video/vcd. Proses di atas adalah proses verifikasi file
Kalau ini sudah terpenuhi maka lanjutkan ke mpeg oleh aplikasi k3b dan kemudian
tahap berikutnya. membakar vcd.
Setelah anda msukkan file tersebut ke tempat
yang telah tersedia maka akan muncul seperti Proses membakar cd, khususnya vcd dengan
gambar di atas. kecepatan 8x, rata-rata menghabiskan waktu
Setelah itu pilihlah menu Project > Burn.. 8 sampai 10 menit.
sehingga tampilan layar anda menjadi seperti
di bawah ini. Berikutnya adalah menunggu hasil proses
membakar vcd anda hingga selesai. Kalau
anda memiliki memori sedikitnya 128 MB
maka selama menunggu anda bisa sembari
melakukan proses ringan dalam sistem
sepanjang tidak membebani kerja memori
utama semisal hanya menjalankan XMMS
untuk mendengarkan musik. Jika proses
pembakaran telah selesai dilakukan maka
tampilannya kurang lebih seperti pada
gambar berikut.
Nuzli L. Hernawan <nlh@nuzlilatief.org> {Byte Me!} Digital Magazine Syndicate | September 2003 6
7. Whispers | LinuxCandy | kopiJahe | Tipz & Trix | SLUG Profiles | Amygdala | T03B4 | Cute-Tea
private Object readResolve() throws
Singleton Pattern ObjectStreamException {
/* mengembalikan Elvis yang
Melaksanakan Properti Singleton dengan Private Constructor sesungguhnya dan membiarkan garbage
collector mengurusi impersonator
Elvis */
Singleton Pattern adalah sebuah pattern paling sederhana dari design pattern. return INSTANCE;
}
Sebuah class singleton hanyalah sebuah class yang dapat diinstantiasi sekali, jadi
class itu hanya akan memiliki sebuah objek. References:
Hal ini karena terkadang sebuah sistem public static Elvis getInstance() { [1] Joshua Bloch (2001). Effective Java:
hanya harus mempunyai satu objek dari return INSTANCE; Programming Language Guide. Addison
} Wesley. ISBN 0-201-31005-8
class. sebagai contoh, beberapa sistem
terhubung ke data base melalui sebuah ... // yang lain dihilangkan [2] Deitel n Deitel (2002). Java How to
objek database yang mengatur koneksi. } Program (4th ed).
bisa juga contohnya sebuah class akan
menggunakan resource komputer sangat semua pemanggilan method static,
besar, sehingga bila ada dua objek maka Elvis.getInstance(), mengembalikan
dapat menyebabkan deadlock. acuan objek yang sama, dan tidak ada
instan Elvis yang lain dapat dibuat.
Ada dua pendekatan untuk mengimple-
Keuntungan utama dari pendekatan
mentasikan singleton. keduanya berdasar
pada membuat constructor private danpertama adalah deklarasi dari anggota
penyusun class membuat kejelasan bahwa
menyediakan sebuah member static public
class adalah class singleton: field public
agar klien dapat mengakses satu-satunya
instan dari class. static adalah final, sehingga field selalu
berisi referensi objek yang sama. Juga
Pada pendekatan satu, member static memungkinkan sedikit keuntungan
public adalah field final: performa pada pendekatan pertama.
public class Elvis { Keuntungan utama dari pendekatan kedua
public static final Elvis adalah memberi fleksibilitas untuk berubah
INSTANCE = new Elvis();
pikiran akan apakah sebuah class harus
private Elvis() { singleton tanpa harus merubah API.
... method static factory untuk sebuah
}
singleton mengembalikan satu-satunya
... // instan dari class tetapi dapat dengan mudah
} dimodifikasi untuk mengembalikan,
katakanlah, instan yang unik untuk setiap
Constructor private dipanggil hanya sekali, thread yang memanggil method.
untuk menginisialisasi public final field
static Elvis.INSTANCE. tidak adanya Sebagai suatu pertimbangan, gunakan
constructor public atau protected menjamin pendekatan pertama jika yakin class
ketunggalan Elvis. Secara tepat hanya satu selamanya singleton, gunakan pendekatan
Elvis yang akan ada ketika class Elvis di kedua jika masih ada keinginan merubah
inisialisasi- tidak lebih, tidak kurang. Klien keputusan.
sama sekali tidak bisa mengubah hal ini.
Membuat class singleton serializable tidak
pada pendekatan kedua, sebuah method cukup dengan menambahkan implementsi
public static dibuat daripada final field Serializable pada deklarasi class. Untuk
static public: menjaga jaminan singleton, harus
disediakan sebuah method readResolve.
public class Elvis {
private static final Elvis
Bila tidak, tiap deserialisasi dari tiap instan
INSTANCE = new Elvis(); yangdiserialisasikan akan menghasilkan
instan baru.
private Elvis() {
... }
Muhammad Nasrullah <nazrvl@lug.stikom.edu> {Byte Me!} Digital Magazine Syndicate | September 2003 7
8. Whispers | LinuxCandy | kopiJahe | Tipz & Trix | SLUG Profiles | Amygdala | T03B4 | Cute-Tea
Mempersingkat Mounting di Linux
Kita bisa mempersingkat mount suatu divais dengan menuliskan aturan mount divais tersebut di file /etc/fstab. Berikut potongan
/etc/fstab di linux box punyaku;
$ cat /etc/fstab
LABEL=/ / ext3 defaults 1 1
/dev/hda9 swap swap defaults 0 0
/dev/cdrom /mnt/cdrom iso9660 noauto,user,ro
/dev/fd0 /mnt/floppy vfat noauto,user,rw
/dev/hda5 /mnt/hd vfat noauto,user,rw
Perhatikan, file ini terbagi atas enam kolom.
Field pertama berisi nama divais yang akan dimount.
Bagian kedua adalah mount point(kemana divais pada kolom satu akan dimount)
Kolom ketiga adalah tipe file system (ngeliat file system yang disupport: cat /proc/filesystems)
Kolom keempat adalah opsi tambahan.
Kolom kelima program dump untuk menentukan apakah divais perlu back up
Kolom terakhir digunakan untuk menentukan urutan fsck
Jika ragu dua kolom terakhir tidak perlu disertakan.
Sekarang kalo mau ngemount floppy, cukup menyebutkan divaisnya atau mount pointnya:
tamtam@localhost ~$ mount /dev/fd0
atau
tamtam@localhost ~$ mount /mnt/floppy
Btw, biar suatu divais boleh dimount oleh user biasa, tambahin opsi user di kolom no 4. Keterangan lebih lanjut hubungi
man 5 fstab.
Whispers | LinuxCandy | kopiJahe | Tipz & Trix | SLUG Profiles | T03B4 | Amygdala | Cute-Tea
Nama Lengkap Erwien Samantha Y.
SLUG Username erwien
Working Experiences Web Administrator di PT. 1rstWAP
(www.1rstWAP.com)
Favourite Food(s) Yang Pedas-Pedas
Favourite Beverage(s) Sprite & Lemon Squash dan (tidak lupa) Air
Putih
Favourite Distro(s) Mandrake
Favourite Site(s) www.freshmeat.net & www.rpmfind.net
{Byte Me!} Digital Magazine Syndicate | September 2003 8
9. Whispers | LinuxCandy | kopiJahe | Tipz & Trix | SLUG Profiles | T03B4 | Amygdala| Cute-Tea
Kreatif Pake F
OSPEK sudah berakhir, dengan sedikit sisa, manis atau gak sama sekali. Yang paling menyenangkan dari
OSPEK sebenarnya tugas-tugasnya yang banyak itu. Sedemikian banyaknya sehingga sulit dikerjakan
dengan cara biasa. Seperti mungkin direncanakan oleh para panitianya, tugas OSPEK tidak sekadar
berorientasi pada hasil, tapi juga proses. Pengalaman penulis, saat OSPEK 2000. Sempat membisniskan
buku tanda tangan --yang warna warni itu, bahkan terpikir juga buat jualan tas dari tepung terigu. Tapi
dasar bukan bisnismen, malah tekor puluhan ribu :)
Tapi bukan itu intinya. Sudah rahasia umum, pada kurva distribusi normal, semua yang umum akan
mengelompok di tengah. Kadang untuk memperoleh sedikit kemudahan, kita harus berfikir agak ke pinggir.
Hal-hal sepele, seperti berangkat sedikit lebih pagi biar gak berdebu di jembatan ijo, atau tidak
membiasakan diri menggunakan software yang menjerat meskipun digunakan banyak orang ;)
Seperti banyak hal lainnya, berfikir beda adalah proses. Tidak butuh IQ di atas 140 atau bakat potensial
yang terpendam dalam untuk menjadi berbeda. Mulailah dengan latihan sederhana berikut;
1. Solusi awal adalah hal yang umum.
Pada saat menghadapi masalah, katakanlah proyek PBD. Umumnya ide yang pertama kali datang adalah
ide yg umum, misalnya bikin inventory. Coba pikirkan kemungkinan lain.
2. Saya tidak ada karena saya tidak tahu.
Pengetahuan, satu kunci penting. Makin sering kita bergaul dengan banyak orang, semakin sering
membaca, maka khasanah pengetahuan akan lebih luas. Yang berbanding lurus dengan cara kita
menghadapi masalah. Melanjutkan contoh di atas, cobalah ngobrol dengan teman yang beda angkatan
untuk memperoleh ide-ide segar, atau liat-liat judul TA di perpus.
3. Siapa takut
Terakhir, setelah ide yang berharga itu berhasil ditemukan. Jangan takut untuk nyoba, temen saya, Dody,
selalu bilang, "You never know until you try". Ehmm mungkin karena itu ada UTS dan UAS. Anyway...
Sering kali kegagalan itu karena hal sepele, takut komentar orang banyak, takut jadi lain, takut disoraki
anak-anak kalo gagal. Asal tau aja, sahabat! You're the master of your own destiny.
Kalo punya ide beda, orang bilang kamu aneh,
... kalo kamu berhasil, mereka bilang kamu kreatif.
-- Billy <something>, Dare to Fail
M. Daud Setiawan Mukadar
<daud@lug.stikom.edu>
{Byte Me!} Digital Magazine Syndicate | September 2003 9
10. Whispers | LinuxCandy | kopiJahe | Tipz & Trix | SLUG Profiles | T03B4 | Cute-Tea | Essentials
dan argv adalah array dari command-line
Say Hi! argumen, merupakan fitur C/C++ yang
Tutorial Sederhana Bahasa Pemrograman Grafis QT dibutuhkan Qt untuk memproses argumen
dibawah.
Semua yang pernah menggunakan KDE sebagai desktop environment, secara tidak QApplication a(argc, argv);
langsung sudah menggunakan Qt.
Apa Qt itu ? Silahkan membuka teks editor kesayangan a adalah object dari Qapplication. Disinilah
Qt adalah cross-platform C++ GUI anda, kemudian tulis atau copy source code command-line argumen dibuat dan diproses
application framework produksi dibawah : (seperti menmpilkan program di Xwindow).
Trolltech. Dengan kata lain C++ sebagai Qapplication object dibuat sebelum
bahasa pemrogramannnya dan Qt sebagai /***************************** window-sistem digunakan.
visualisasinya yang terintegrasi sebagai **
** Qt1.cpp QPushButton hai(“Qt! Hai..”, 0);
suatu framework aplikasi. Sedangkan **
untuk cross-platform maksudnya adalah ******************************/
#include <qapplication.h> hai adalah object dari QpushButton. Inilah
Qt dapat berjalan diberbagai platform,
#include <qpushbutton.h> mulai kode wndow-sistem dugunakan.
yaitu; MS Windows (95, 98, NT4.0, ME,
Sebuah pushbutton dibuat, dan button diset
and 2000), Unix/X11 (Linux, Sun Solaris, int main( int argc, char **argv )
{
untuk menampilkan kata “Qt! Hai......” dan
HP-UX, Compaq Tru64 UNIX, IBM AIX,
QApplication a(argc, argv); sekaligus menjadi windownya, karena
SGI IRIX dan lainnya), Macintosh (Mac QPushButton hai(“Qt! Hai..”, 0); konstruktor pada parent window di set 0,
OS X), Embedded (linux platform dengan hai.resize(100,30); dimana posisi button diletakkan.
dukungan framebuffer).
a.setMainWidget(&hai);
hai.show(); hai.resize(100,30);
Komentar return a.exec();
Para pengguna opensource boleh bangga, }
baris ini digunakan untuk mengatur ukuran
karena tidak sulit lagi membuat program button, dimana diset panjang 100 pixel dan
aplikasi yang selama ini didominasi oleh • Penjelasan tiap baris program:
lebar 30 pixel (ditambah frame dari
Ms.Windows sebagai platformnya, window-system).
misalnya; Visual Basic, Visual C++, #include <qapplication.h>
Delphi, dan lainnya. Kita ingin membuat a.setMainWidget(&hai);
aplikasi berdatabase, aplikasi teknik, baris ini merupakan definisi class
perkantoran, finansial, dan lainnya tidak QApplication, yang akan selalu kita
pushbutton dipilih sebagai main widget
menjadi masalah. Dengan dukungan gunakan setiap membuat program aplikasi
untuk aplikasi ini. Jika kita menutup main
dokumentasi, FAQ, forum melalui milis, karena akan mengatur bermacam aplikasi
widget maka aplikasi juga akan ditutup.
arsip milis yang didesain mudah untuk misalnya teks dan kursor.
widget adalah sebutan komponen-
dipelajari, sehingga akan sangat komponen dalam Qt, misalnya pushbutton,
#include <qpushbutton.h>
membantu Anda dalam memecahakan radiobutton, textfield, filedialog, dan
masalah. Untuk tahu lebih jauh silahkan
baris ini merupakan definisi class sebagainya.
kunjungi website Trolltech di
QPushButton, fungsinya sama dengan
www.trolltech.com. button biasa yang dapat diklik dengan
hai.show();
mouse. Dimana dapat dimodifikasi
Pada kesempatan ini akan diberikan penampilannya dan modelnya, bisa berupa baris ini digunakan untuk menampilkan
tutorial Qt, yang akan membuat Anda text atau gambar. widget.
sangat terkesan.
int main( int argc, char **argv ) return a.exec();
Tutorial
Disini yang menandakan berakhirnya proses
main() merupakan awal dari program, berisi
Seperti biasa kita akan mengawali dengan
beberapa inisialisasi sebelum kontrol main() untuk mengontrol Qt, dan exec()
“Hai! Qt...”
dialihkan ke Qt library akan kembali (return) pada saat aplikasi
untuk
memberitahukan program tentang aksi- keluar.
aksinya melalui event. Didalam exec(), Qt akan menerima dan
memproses (menjalankan) program dan
argc adalah jumlah command-line argumen menyelesaikannya sesuai dengan widget
yang dugunakan. (Bersambung ke hal. 13)
M. Alfin Nur Hakim <alfin@lug.stikom.edu> {Byte Me!} Digital Magazine Syndicate | September 2003 10
13. {Byte Me!} Digital Magazine Syndicate
This magazine is published under neither GNU/GPL nor GNU/FDL but Artistic License.
You may have verbatim copy, and quote as much as you like as long as you mentioned who wrote it.
But you cannot change the writer's artistic writing style, in another word, you cannot change the exact word
if you want to quote it. This magazine also held all copyleft of the written articles, columns, stories, and internal news.
Critics, suggestions, chocolates, cookies, 8) are always welcomed.
If you have any of them don't hesitate to write or send it to :
R&D STIKOMPlus
Grha Kreativitas STIKOM Level 0
Jl. Raya Kedung Baruk 98 Surabaya – Jawa Timur
or milis-linux@lug.stikom.edu