Minggu, 30 Januari 2011

Membuat Aplikasi di Linux dengan GTK+ dan Pascal

Beberapa waktu yang lalu, kami STEI 2010 mendapatkan tugas. Ya, sebuah project yang akan mengakhiri malam-malam Lailatul Qoding selama ini. Tugas ini disebut Tugas Besar PTI A, membuat suatu project yang merepresentasikan apa yang telah kami pelajari selama kuliah.
Untuk Tugas Besar ini kami dibentuk dalam beberapa kelompok dengan masing-masing kelompok beranggotakan 3 orang. Saya pun membentu sebuah kelompok bernama Starlight.
Project yang diberikan adalah sebuah aplikasi mini dengan master desain ditentukan oleh pihak dosen. Saya pun memunyai sebuah inisiatif, bagaimana jika program yang kami, tim Starlight, buat berbentuk window. Tentu saja ini adalah hal yang luar biasa, terutama platform yang kami garap nggak main-main, linux. Ya, kami memang gila dengan membuat aplikasi untuk linux dan saat saya berkata demikian, saya belum tahu apa-apa tentang bagaimana cara membuat aplikasi GUI di linux, bahkan saya nggak tahu linux itu kayak gimana modelnya *nah lho*. Ini emang beneran, tapi saya nggak main-main dengan niat saya tersebut (cieee....)
Akhirnya saya melakukan sebuah riset sederhana dan mencari segala data yang diperlukan. Riset dibatasi 2 hari karena hari-hari selanjutnya digunakan untuk pengerjaan program.
Kok malah jadi curhat ya? Ok, langsung aja saya berbagi tutorial bagaimana cara bikin aplikasi GUI di linux dengan GTK+ dan Pascal (actually I didn't really like Pascal @@~) 

#------------------------------------------------------------------------ CHAPTER 1 - Set up the Compiler

Yang saya pakai adalah compiler FreePascal. Dan untungnya FPC telah menyediakan wrapper untuk gtk, horee...!! Dalam pengerjaan aplikasi ini, saya menggunakan Ubuntu Linux 10.10 Maverick Meerkat (thanks buat Inov yang udah meminjamkan CD Ubuntu buat saya :D).
Jangan lupa untuk menginstall library untuk development GTK.. lakukan perintah berikut
sudo apt-get install libgtk2.0-dev

OK, jika sudah maka teman-teman sudah bisa membuat aplikasi sederhana dengan GTK

#------------------------------------------------------------------------ CHAPTER 2 - Simple Form

Apa itu GTK+? GTK adalah toolkit yang digunakan untuk pengembangan aplikasi GUI di linux berbasis GNOME. Dalam membuat aplikasi GTK sebenarnya kita seperti bermain lego. Kita meletakkan potongan-potongan bangunan untuk membentuk sebuah bangunan utuh. Potongan-potongan yang dimaksud di sini adalah komponen visual seperti button, menu, dkk. Komponen itu disebut sebagai widget. Nah kita menyusun potongan-potongan tersebut di atas sebuah form / window.
Hal pertama yang dilakukan untuk membuat aplikasi adalah membuat sebuah window terlebih dahulu. Coba teman-teman simak source code sederhana ini yang akan membuat sebuah form sederhana.
program sederhana;

uses gtk2, gdk2, glib2;
{ Library yang kita gunakan untuk membuat GUI }

var window : pGtkWidget;
{ Membuat sebuah variabel bertipe pGtkWidget untuk menampung widget / komponen }

begin
{ Sebelum kita memulai, kita harus beritahu bahwa kita akan menggunakan gtk. Maka kita harus inisialisasi gtk terlebih dahulu }
gtk_init(@argc, @argv);

{ Membuat window }
gtk_window_new(GTK_WINDOW_TOPLEVEL);
{ Membuat window yang top level atau window yang dikelola langsung oleh komputer (Window Manager) }

{ Sedikit pengaturan untuk window kita }
gtk_window_set_default_size(GTK_WINDOW(window), 800,600);
gtk_window_set_title(GTK_WINDOW(window), 'Satria Ady Pradana');
{ Dari nama udah kelihatan kan? }

{ Mengatur signal. Signal adalah semacam message atau pesan yang diberikan ketika sesuatu hal terjadi pada aplikasi, seperti saat sebuah button ditekan dkk. GTK adalah sebuah library yang event-driving. Jadi kita akan memprogram berdasarkan event-event }
gtk_signal_connect(GTK_OBJECT(window), 'destroy,' GTK_SIGNAL_FUNC(@gtk_main_quit), nil);
{
Penjelasan:
Parameter pertama adalah widget / komponen yang ingin dikelola
Parameter kedua adalah jenis event yang terjadi. Disini kita pakai 'destroy' artinya saat window di-destroy atau ditutup maka program akan mengeksekusi program berikut.
Parameter ketiga adalah fungsi yang dipanggil ketika event terjadi. Untuk sementara kita pakai fungsi ini dulu, gtk_main_quit() yang akan membersihkan dan mengakhiri proses program.
Parameter keempat adalah data yang diberikan jika fungsi dipanggil. kita isi nil dulu karena kita nggak perlu ngasih apa-apa ke sana.
}

{ Secara default, komponen yang baru terbentuk belum tertampil ke layar. Untuk menampilkannya kita harus "menampilkannya" }
gtk_widget_show(window);

{Memulai program utama gtk, di sini pekerjaan kita selesai}
gtk_main();

end.

Simple kan? Ya emang.... Untuk membuat aplikasi sederhana tidak terlalu susah :D
Lalu bagaimana kalau kita ingin bikin tombol dkk?
Tunggu postingan selanjutnya :D


Cross Compiling - Membuat Program Windows di Linux

Setelah pada artikel sebelumnya kita membahas tentang pengenalan cross compiling, sekarang kita akan mencoba melakukan pengaturan untuk bisa melakukan pengembangan aplikasi secara cross-compiling. Platform yang menjadi tujuan kita adalah OS Windows, sedangkan kita akan membuat program tersebut di linux. Jika teman-teman belum tau apa itu cross-compiling, silahkan merujuk ke artikel ini.


Kita akan melakukannya dalam beberapa tahap. Untuk mempersempit topik, tutorial ini dilakukan pada OS Linux tepatnya GNU/Linux Ubuntu 10.10 Maverick Meerkat. Dan juga kita ambil langkah paling sederhana saja, saya tau temen-temen juga nyari cara gampang sama kayak saya :p


 


1. Siapkan Compiler


Lho, bukannya di linux udah disediain compiler ya? Memang di linux sudah disediakan compiler bawaan yaitu gcc, tapi compiler ini digunakan buat compil program ke platform linux saja. Kita butuh compiler untuk tujuan cross compiling. Kita bisa dapatkan compiler tersebut dengan memberikan perintah berikut ke command line (terminal) :




sudo apt-get install mingw32



MinGW32 adalah package compiler yang kita butuhkan untuk melakukan cross compiling ke platform windows.


Jika sudah selesai teman-teman dapat melakukan kompilasi dengan cara mengetikkan perintah berikut (jangan lupa tekan enter juga ya)




i586-mingw32msvc-gcc file.c -o file.exe



Perhatikan bahwa kita menggunakan kompiler bernama i586-mingw32msvc-gcc untuk mengompil program. Pada contoh di atas kita mengompil file.c dan hasilnya menjadi file.exe. Teman-teman juga bisa mengompil dengan menambahkan beberapa pengaturan tambahan, sintaksnya sama seperti ketika teman-teman menggunakan gcc sebagai compiler.


Terlalu panjang ngetiknya? Tenang! kita bisa persingkat nama filenya dengan cara membuat link (semacam shortcut gitu). Caranya pergi ke /usr/bin. Pada path tersebutlah mingw32 terinstall secara default.




cd /usr/bin



Kemudian ketikkan perintah berikut untuk membuat link:




ln -s i586-mingw32msvc-gcc gcc32



Dengan begitu maka ketika anda mengetikkan gcc32 maka otomatis anda sebenarnya memanggil program i586-mingw32msvc-gcc.


i586-mingw32msvc-gcc adalah perintah untuk mengompil program dalam bahasa C, sedangkan untuk mengompil program bahasa C++ teman-teman bisa menggunakan i586-mingw32msvc-g++


 


2. Siapkan emulator (Wine)


Sebenarnya jika teman-teman sukses melakukan seperti apa yang ada di step 1, teman-teman sudah bisa melakukan pengompilan program untuk windows di OS Linux. Tapi, nggak enak kan kalo cuman compile doang. Gimana ktia tau kalo programnya jalan nggak. Nah karena itu kita pasang sebuah emulator untuk bisa menjalankan program windows. Yang dimaksud tidak lain dan tidak bukan adalah Wine (yang ini gak bikin mabuk :D). Kita akan install melalui mode command line / terminal. Caranya ketik perintah berikut:




sudo apt-get install wine



Jika proses sudah selesai maka teman-teman sudah bisa menjalankan program windows di linux. Caranya:




wine [nama program]



 


Selamat!! teman-teman sudah bisa melakukan cross compiling di linux :D


Nantikan juga tutorial lainnya :D

Perulangan For Positif dan Negatif pada pascal dan C++

Disarankan untuk melihat juga materi Seri Belajar Pemrograman #5.


 


Tak bisa dipungkiri, perulangan atau yang kerap disebut loop adalah salah satu aspek programming penting dalam pemprograman. Kehadirannya sering ditemui dalam suatu aplikasi. Secara umum terdapat 3 macam jenis perulangan bila mengacu pada artikel saya sebelumya yaitu Seri Belajar Pemrograman #5. Salah satunya adalah perulangan dengan kata kunci for (untuk notasi algoritmik, Pascal dan C\C++)


 


Seperti yang sudah dijelaskan pada artikel Seri Belajar Pemrograman #5, statement For (lihat keyword "untuk" pada artikel tersebut, keyword tersebut berkorespondensi dengan keyword for pada pascal dan C++) digunakan untuk mengulang statement atau suatu blok statement dengan jumlah perulangan yang ditentukan sebelumnya. Sama seperti kita mengatakan ingin menonton film A sebanyak 4 kali maka yang kita lakukan adalah melakukan kegiatan dalam hal ini menonton film sebanyak 4 kali secara berturut-turut.


Kamis, 16 Desember 2010

Roadshow ITB di Surabaya, Sidoarjo, Gresik

Ini dia saat yang ditunggu-tunggu…

ITB akan melakukan roadshow ke SMA-SMA di Surabya, Sidoarjo, dan Gresik. Lewat acara yang bertajuk “ITB Jalan-Jalan” ini, mahasiswa-mahasiswa ITB terutama yang berasal dari Surabaya, Sidoarjo, dan Gresik akan menyapa teman-teman di beberapa SMA dan mengenalkan lebih lanjut tentang apa itu ITB.

Tidak hanya itu, selain roadshow akan ada juga try out masuk ITB lewat jalur USM dan SNMPTN yang seru. Buat yang mau masuk FSRD (Seni Rupa dan Desain) bakal ada workshop juga lho…

Bakal ada banyak kejutan di sana. So, bagi kalian yang ada di wilayah Surabaya, Sidoarjo dan Gresik dan pengen masuk ITB kunjungi website resmi ITB Jalan-Jalan di alamat berikut http://www.itbjalanjalan.co.cc/



Bakti kami untuk Tuhan, Bangsa, dan Almamater,

Salam Ganesha

Hei, ITB akan roadshow

Ini dia saat yang ditunggu-tunggu…

ITB akan melakukan roadshow ke SMA-SMA di Surabya, Sidoarjo, dan Gresik. Lewat acara yang bertajuk “ITB Jalan-Jalan” ini, mahasiswa-mahasiswa ITB terutama yang berasal dari Surabaya, Sidoarjo, dan Gresik akan menyapa teman-teman di beberapa SMA dan mengenalkan lebih lanjut tentang apa itu ITB.

Tidak hanya itu, selain roadshow akan ada juga try out masuk ITB lewat jalur USM dan SNMPTN yang seru. Buat yang mau masuk FSRD (Seni Rupa dan Desain) bakal ada workshop juga lho…

Bakal ada banyak kejutan di sana. So, bagi kalian yang ada di wilayah Surabaya, Sidoarjo dan Gresik dan pengen masuk ITB kunjungi website resmi ITB Jalan-Jalan di alamat berikut http://www.itbjalanjalan.co.cc/



Bakti kami untuk Tuhan, Bangsa, dan Almamater,

Salam Ganesha

Senin, 01 November 2010

Balada PLTN di Indonesia

PLTN merupakan ide yang diangkat pada tahun 1956, melaui pernyataan pada
seminar-seminar pada masa itu. Artinya rencana PLTN di Indonesia sudah berumur kurang
lebih 54 tahun. Meski sudah lama bekerja sama dalam perencanaan, perancangan, dan
sebagainya. PLTN di Indonesia masih belum juga dibangun dengan sebab dan alasan yang
beraneka ragam. Dari sekian banyak tempat yang pernah diusulkan untuk membangun
sbuah poyek PLTN, akhirnya hanya Semenjung Muria-lah yang terpilih. Meski sampai
sekarang PLTN masih menuai banyak kecaman berupa penolakan, terutama warga desa
sekitar tempat yang direncanakan akan dibangun PLTN tersebut, Desa Balong.


Sampai saat ini, yang masih membuat bingung adalah, mengapa harus Semenanjung
Muria? Bahkan ada kabar daerah Banten juga akan dibangun PLTN. Mungkin saja
penolakan-penolakan yang terjadi selama ini karena ada dua f-brothers (ciptaan penulis).
Mereka adalah Green Community dan WWF dan yang ingin penulis tekankan, mengapa
mereka ikut menolak? Bukankah di negara mereka juga dibangun PLTN? Memang,
Indonesia seringkali disebut-sebut sebagai paru-paru dunia karena hutannya yang luas nan
lebat. Tapi Indonesia juga tidak kalah sering mendapat kecaman, dampak isu global
warming
. Mengapa? Bukankan limbah PLTN hanya berupa air, CO2, dan limbah lain yang
harus dkembalikan?
Untuk itu, hendaknya Indonesia harus berani melawan. Harus ada orang Indonesia
yang membuktikan bahwa tidak benar tingkat “penghasilan” gas CO2 di Indonesia sangat
tinggi. Selain itu, pemerintah juga perlu mendesak instansi-instansi terkait untuk mencari
tempat baru yang kira-kira lebih mungkin untuk dibangun PLTN. Bukankah Indonesia
memiliki beribu-ribu pulau? Hendaknya kita membangun PLTN di pulau terpencil agar
tidak ada yang protes. Jikalau masih ada, karena alasan pencemaran laut, kita minta saja
badan internasional yang menangani masalah nuklir untuk ikut mengawasi. PLTN sangat
dibutuhkan di Indonesia, bagaikan tubuh yang kekurangan darah, Indonesia tidak akan
mampu berkembang secara optimal jikalau masih ada permasalahan energi, khusunya
listrik.


 


Lihat juga:

 

  1. Nuklir penyelamat peradaban

  2. Dilema Pembangunan PLTN di Indonesia

  3. Atasi krisis energi & global warming dengan teknologi nuklir

  4. Nuklir sebagai Solusi Bergengsi

  5. Nuklir Tidak Ramah Tapi Kita Membutuhkannya

  6. PLTN, TEKNOLOGI PROSPEKTIF UNTUK MASA DEPAN

  7. Status Nuklir Ekonomis, tetapi Membawa Bencana Bagi Masyarakat

  8. PLTN = REVOLUSI KEBIASAAN INDONESIA

  9. Balada PLTN di Indonesia

  10. Nuklir, Ancaman atau Solusi

PLTN = REVOLUSI KEBIASAAN INDONESIA

Rencana pembangunan PLTN di Indonesia sebagai solusi krisis energi
belakangan ini menuai protes yang tidak sedikit. PLTN yang muncul sebagai dewa
penyelamat bertabir “listrik mudah, aman, dan ramah lingkungan”, tampaknya tidak
mudah menghapus deretan daftar dosa nuklir yang sudah mendarah daging di Indonesia.
Benarkah Indonesia membutuhkan PLTN sebagai solusi krisis energi berkepanjangan di
negeri ini?
Rencana pembangunan PLTN pada 2016 yang harus mundur sampai tahun 2020
sudah cukup memperlihatkan betapa Negara kita belum siap menyongsong “dewa
penyelamat” energi ini. Hal ini cukup beralasan, karena PLTN tidak bisa dibangun di
tempat yang rawan gempa. Hal ini ditakutkan bisa mengakibatkan kerusakan pada
komponen vital reaktor yang bisa berakibat fatal.
PLTN diagung-agungkan sebagai pembangkit listrik yang murah. Biaya bahan
bakar yang diklaim lebih murah, serta biaya operasional yang lebih sedikit dari
pembangkit listrik lainnya dianggap sebagai daya tarik utamanya (Indonesia sangat tahu
hal ini benar, karena pemerintah umumnya cenderung “pelit” dalam hal memberi dana
untuk sesuatu yang penting). Ditambah lagi PLTN adalah salah satu pembangkit listrik
yang eco-friendly. Minimnya emisi karbon dan minimnya radiasi (tentunya jika semua
prosedur dipatuhi) membuatnya pantas dibangun demi alas an lingkungan hidup yang
kini sudah saatnya diberi perhatikan lebih.
Hal yang harus diperhatikan adalah masalah kecelakaan. Kejadian di Chernobyl,
Ukraina, sudah cukup untuk menjadi teladan bagi bangsa lain yang ingin membangun
PLTN (walaupun sebenarnya hal ini sidebabkan murni human error dan tidak
dipatuhinya standar keamanan dengan tidak membangun containment bulding/bangunan
penahan). Hal inilah yang mengakibatkan kecelakaan reaktor sebagai masalah yang
tidak bisa dipandang sebelah mata. Resiko radiasi sinar gamma yang beresiko
mengakibatkan kanker dan mutasi genetik adalah mimpi buruk bagi setiap orang yang
pernah menyaksikannya.
Hal yang paling ditakutkan adalah bahwa teknologi ini harus dikerjakan oleh
bangsa Indonesia (yang tidak perlu lagi diragukan kelalaiannya). Jangankan PLTN
yangmerupakan teknologi termutakhir dalam bidang energi, pembangkit listrik tenaga
bahan bakar saja sudah “kelimpungan” di sana-sini jika ada kerusakan, pake nyalahin
orang lain lagi. Rencana merekrut ahli dari luar negeri semakin menunjukkan
ketergantungan bangsa ini dengan negara luar. Saya rasa hal ini sah-sah saja, selama
masih memberikan hasil yang baik yang baik dan tidak merugikan bangsa kita.
Jika pemerintah tetap “ngotot” ingin membangun PLTN, maka negara ini harus
siap-siap mengalami revolusi kebiasaan besar-besaran pada kebiasaan bangsa ini yang
suka “sembrono”. Pemerintah dan BATAN harus bisa memberikan rasa aman bagi
penduduk di sekitar PLTN. Penelitian lebih lanjut dan lebih intensif dalam cara
mengolah limbah nuklir dan pada proses decomissioning harus dilakukan. Tidak
mungkin kita harus menunggu selama 60 tahun (dengan teknologi termutakhir untuk
mempercepat limbah nuklir meluruh) untuk menunggu limbah nuklir aman bagi
lingkungan.
Seharusnya, pemerintah lebih menggalakkan penelitian terhadap sumber energi
terbaharui. Bukankah sumber energi terbaharui lebih aman dan ramah lingkungan?
Bukankah sumber energi ini lebih murah? Bukankah potensi energi terbaharui sebagai
sumber pendapatan yang menguntungkan setiap orang lebih besar? Memang sumber
energi terbaharui tidak menghasilkan daya yang tidak sebanding dengan nuklir, tapi
tetap saja manusia sangat membutuhkan rasa aman yang sudah merupakan hak dasar
setiap orang.
Jika manusia disuruh memilih antara hidup berkecukupan dengan rasa aman,
pastilah setiap orang yang normal akan memilih rasa aman (bukankah jika ada bencana
alam semua orang lebih dahulu menelamatkan diri, bukan hartanya?). Untuk itu, jika
pemerintah ingin membangun PLTN, sebaiknya dipikirkan lebih lanjut dan lebih
mendalam, apa baik dan buruknya. Pemerintah dan para ahli nuklir harus mau bekerja
keras dan tidak main-main karena hal ini mempertaruhkan nasib khalayak ramai.
Semoga BATAN tetap menaati visi mereka, menciptakan teknologi nuklir
berkeselamatan handal.

 


Lihat juga:

 

  1. Nuklir penyelamat peradaban
  2. Dilema Pembangunan PLTN di Indonesia
  3. Atasi krisis energi & global warming dengan teknologi nuklir
  4. Nuklir sebagai Solusi Bergengsi
  5. Nuklir Tidak Ramah Tapi Kita Membutuhkannya
  6. PLTN, TEKNOLOGI PROSPEKTIF UNTUK MASA DEPAN
  7. Status Nuklir Ekonomis, tetapi Membawa Bencana Bagi Masyarakat
  8. PLTN = REVOLUSI KEBIASAAN INDONESIA
  9. Balada PLTN di Indonesia
  10. Nuklir, Ancaman atau Solusi