Khutbah Rasulullah Menyambut Ramadhan

September 21st, 2006

Selain memerintah shaum, dalam menyambut menjelang bulan Ramadhan, Rasulullah selalu memberikan beberapa nasehat dan pesan-pesan. Inilah ‘azimat’ Nabi tatkala memasuki Ramadhan

Wahai manusia! Sungguh telah datang pada kalian bulan Allah dengan membawa berkah rahmat dan maghfirah. Bulan yang paling mulia disisi Allah. Hari-harinya adalah hari-hari yang paling utama. Malam-malamnya adalah malam-malam yang paling utama. Jam demi jamnya adalah jam-jam yang paling utama.

Inilah bulan ketika kamu diundang menjadi tamu Allah dan dimuliakan oleh-NYA. Di bulan ini nafas-nafasmu menjadi tasbih, tidurmu ibadah, amal-amalmu diterima dan doa-doamu diijabah. Bermohonlah kepada Allah Rabbmu dengan niat yang tulus dan hati yang suci agar Allah membimbingmu untuk melakukan shiyam dan membaca Kitab-Nya.

Celakalah orang yang tidak mendapat ampunan Allah di bulan yang agung ini. Kenanglah dengan rasa lapar dan hausmu di hari kiamat. Bersedekahlah kepada kaum fuqara dan masakin. Muliakanlah orang tuamu, sayangilah yang muda, sambungkanlah tali persaudaraanmu, jaga lidahmu, tahan pandanganmu dari apa yang tidak halal kamu memandangnya dan pendengaranmu dari apa yang tidak halal kamu mendengarnya. Kasihilah anak-anak yatim, niscaya dikasihi manusia anak-anak yatimmu. Bertaubatlah kepada Allah dari dosa-dosamu. Angkatlah tangan-tanganmu untuk berdoa pada waktu shalatmu karena itulah saat-saat yang paling utama ketika Allah Azza wa Jalla memandang hamba-hamba-Nya dengan penuh kasih; Dia menjawab mereka ketika mereka menyeru-Nya, menyambut mereka ketika mereka memanggil-Nya dan mengabulkan doa mereka ketika mereka berdoa kepada-Nya.

Wahai manusia! Sesungguhnya diri-dirimu tergadai karena amal-amalmu, maka bebaskanlah dengan istighfar. Punggung-punggungmu berat karena beban (dosa) mu, maka ringankanlah dengan memperpanjang sujudmu.

Ketahuilah! Allah ta’ala bersumpah dengan segala kebesaran-Nya bahwa Dia tidak akan mengazab orang-orang yang shalat dan sujud, dan tidak akan mengancam mereka dengan neraka pada hari manusia berdiri di hadapan Rabb al-alamin.

Wahai manusia! Barang siapa di antaramu memberi buka kepada orang-orang mukmin yang berpuasa di bulan ini, maka di sisi Allah nilainya sama dengan membebaskan seorang budak dan dia diberi ampunan atas dosa-dosa yang lalu. (Sahabat-sahabat lain bertanya: “Ya Rasulullah! Tidaklah kami semua mampu berbuat demikian.�

Rasulullah meneruskan: “Jagalah dirimu dari api neraka walaupun hanya dengan sebiji kurma. Jagalah dirimu dari api neraka walaupun hanya dengan seteguk air.�

Wahai manusia! Siapa yang membaguskan akhlaknya di bulan ini ia akan berhasil melewati sirathol mustaqim pada hari ketika kai-kaki tergelincir. Siapa yang meringankan pekerjaan orang-orang yang dimiliki tangan kanannya (pegawai atau pembantu) di bulan ini, Allah akan meringankan pemeriksaan-Nya di hari kiamat. Barangsiapa menahan kejelekannya di bulan ini, Allah akan menahan murka-Nya pada hari ia berjumpa dengan-Nya. Barang siapa memuliakan anak yatim di bulan ini, Allah akan memuliakanya pada hari ia berjumpa dengan-Nya. Barang siapa menyambungkan tali persaudaraan (silaturahmi) di bulan ini, Allah akan menghubungkan dia dengan rahmat-Nya pada hari ia berjumpa dengan-Nya. Barang siapa memutuskan kekeluargaan di bulan ini, Allah akan memutuskan rahmat-Nya pada hari ia berjumpa dengan-Nya. Barangsiapa melakukan shalat sunat di bulan ini, Allah akan menuliskan baginya kebebasan dari api neraka. Barangsiapa melakukan shalat fardu baginya ganjaran seperti melakukan 70 shalat fardu di bulan lain. Barangsiapa memperbanyak shalawat kepadaku di bulan ini, Allah akan memberatkan timbangannya pada hari ketika timbangan meringan. Barangsiapa di bulan ini membaca satu ayat Al-Quran, ganjarannya sama seperti mengkhatam Al-Quran pada bulan-bulan yang lain.

Wahai manusia! Sesungguhnya pintu-pintu surga dibukakan bagimu, maka mintalah kepada Tuhanmu agar tidak pernah menutupkannya bagimu. Pintu-pintu neraka tertutup, maka mohonlah kepada Rabbmu untuk tidak akan pernah dibukakan bagimu. Setan-setan terbelenggu, maka mintalah agar ia tak lagi pernah menguasaimu. Amirul mukminin k.w. berkata: “Aku berdiri dan berkata: “Ya Rasulullah! Apa amal yang paling utama di bulan ini?� Jawab Nabi: “Ya Abal Hasan! Amal yang paling utama di bulan ini adalah menjaga diri dari apa yang diharamkan Allah�.

Wahai manusia! sesungguhnya kamu akan dinaungi oleh bulan yang senantiasa besar lagi penuh keberkahan, yaitu bulan yang di dalamnya ada suatu malam yang lebih baik dari seribu bulan; bulan yang Allah telah menjadikan puasanya suatu fardhu, dan qiyam di malam harinya suatu tathawwu’.�

“Barangsiapa mendekatkan diri kepada Allah dengan suatu pekerjaan kebajikan di dalamnya, samalah dia dengan orang yang menunaikan suatu fardhu di dalam bulan yang lain.�

“Ramadhan itu adalah bulan sabar, sedangkan sabar itu adalah pahalanya surga. Ramadhan itu adalah bulan memberi pertolongan ( syahrul muwasah ) dan bulan Allah memberikan rizqi kepada mukmin di dalamnya.�

“Barangsiapa memberikan makanan berbuka seseorang yang berpuasa, adalah yang demikian itu merupakan pengampunan bagi dosanya dan kemerdekaan dirinya dari neraka. Orang yang memberikan makanan itu memperoleh pahala seperti orang yang berpuasa tanpa sedikitpun berkurang.�

Para sahabat berkata, “Ya Rasulullah, tidaklah semua kami memiliki makanan berbuka puasa untuk orang lain yang berpuasa. Maka bersabdalah Rasulullah saw, “Allah memberikan pahala kepada orang yang memberi sebutir kurma, atau seteguk air, atau sehirup susu.�

“Dialah bulan yang permulaannya rahmat, pertengahannya ampunan dan akhirnya pembebasan dari neraka. Barangsiapa meringankan beban dari budak sahaya (termasuk di sini para pembantu rumah) niscaya Allah mengampuni dosanya dan memerdekakannya dari neraka.�

“Oleh karena itu banyakkanlah yang empat perkara di bulan Ramadhan; dua perkara untuk mendatangkan keridhaan Tuhanmu, dan dua perkara lagi kamu sangat menghajatinya.�

“Dua perkara yang pertama ialah mengakui dengan sesungguhnya bahwa tidak ada Tuhan selain Allah dan mohon ampun kepada-Nya . Dua perkara yang kamu sangat memerlukannya ialah mohon surga dan perlindungan dari neraka.�

“Barangsiapa memberi minum kepada orang yang berbuka puasa, niscaya Allah memberi minum kepadanya dari air kolam-Ku dengan suatu minuman yang dia tidak merasakan haus lagi sesudahnya, sehingga dia masuk ke dalam surga.� (HR. Ibnu Huzaimah).

(Dikutip dari Hidayatullah)

Servlet (Introduction)

July 25th, 2006
ServletServlet adalah program java yang berjalan di web server

1. Struktur Dasar Servlet

Struktur dasar servlet yang menangani method get dan post adalah sebagai berikut :

import javax.servlet.*;

import javax.servlet.http.*;

import java.io.*;

public class HelloWorldServlet extends HttpServlet

{

public void doGet(HttpServletRequest req, HttpServletResponse res)

throws ServletException, IOException

{

}

public void doPost(HttpServletRequest req, HttpServletResponse res)

throws ServletException, IOException

{

}

}

Method doGet menerima dan menangani request get dari webserver, sementara request post ditangani oleh method doPost. Parameter req digunakan untuk membaca HTTP header yang datang (misal cookie) dan data dari form HTML. Parameter res digunakan untuk menspesifikasikan respon line dan header misalnya set cookie an set content-type.

Kelas yang akan menjadi servlet harus meng-extend Kelas HttpServlet dan meng-override method doGet atau doPost atau keduanya.

Umumnya servlet mengembalikan halaman HTML. Untuk melakukannya, kita harus memberitahu browser bahwa kita mengirim halaman HTML melalui setting content-type dan kita harus membangun halaman HTML, tag-per tag, melalui perintah println. Contoh :

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

public class HelloWWW extends HttpServlet {

public void doGet(HttpServletRequest request,

HttpServletResponse response)

throws ServletException, IOException {

response.setContentType(“text/html”);

PrintWriter out = response.getWriter();

out.println(“n” +

“n” +

“n” +

“n” +

Hello WWW

n” +”");

}

}

2. Membaca data dari form

Contoh form yang datanya akan dibaca oleh servlet :

Please Enter your name

Contoh Servlet yang membaca data nama :

import javax.servlet.*;

import javax.servlet.http.*;

import java.io.*;

import java.util.*;

public class MyNameServlet extends HttpServlet

{

public void doGet(HttpServletRequest req, HttpServletResponse res)

throws ServletException, IOException

{

doPost(req,res);

}

public void doPost(HttpServletRequest req, HttpServletResponse res)

throws ServletException, IOException

{

//*****Read the value of the ‘yourname’ parameter*****

String name=req.getParameterValues(“yourname”)[0];

//*****Construct a response in HTML*****

String reply=”n”+

“n”+

“n”+


n”+

“Hello “+name+”n”+

nn”;

//*****Send the reply*****

res.setContentType(“text/html”);

PrintWriter out=res.getWriter();

out.println(reply);

out.close();

}

}

Hampir sama dengan PHP, servlet membaca variabel dengan cara menggunakan parameter req yang bertipe HttpServletRequest, dengan memanggil method getParameterValues(“yourname�).

3. Penanganan Cookie

Untuk mengeset cookie dapat dilakukan dengan menggunakan method addCookie( ) milik HttpServletResponse, sedangkan untuk membaca cookie menggunakan method getCookie( ) milik HttpServletRequest. Contoh, program diatas dapat dimodifikasi untuk menangani cookie sebagai berikut :

Untuk mengeset cookie : res.addCookie(new cookie(“MyNameServlet_cookie”,name));

Untuk membaca cookie : req.getCookies();

4. Penanganan Session

Penanganan session hampir sama dengan penanganan cookie. Caranya seperti contoh potongan program berikut.

//mengeset session

HttpSession session=req.getSession(true);

session.putValue(“name”, name);

//membaca session

HttpSession session=req.getSession(false);

String output=”No Session”;

if (session!=null)

output=”Hello “+session.getValue(“name”);

Maksud parameter pada method getSession( ) adalah :

True : Jika tidak ada, buat session baru

False : tidak membuat session baru

5. Koneksi database

Untuk membangun koneksi ke database, kita membutuhkan JDBC API. Langkah pertama adalah me-load kelas driver yang spesifik ke JVM. Caranya dengan menggunakan method Class.forName( ). Contoh :

Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);

Saat driver tersebut di-load ke memori, ia meregistrasi dirinya dengan kelas java.sql.DriverManager. Langkah berikutnya adalah dengan menggunakan kelas DriverManager untuk membuka koneksi. Method yang digunakan adalah DriverManager.getConnection( ) yang mengembalikan kelas yang mengimplementasi interface java.sql.Connection. Contoh :

Connection con =

DriverManager.getConnection(“jdbc:odbc:somedb”, “user”, “passwd”);

Langkah berikutnya setelah koneksi terbangun adalah mengeksekusi query. Cara termudah adalah menggunakan kelas java.sql.Statement. Untuk membuat objek statement yang baru, digunakan method Connection.createStatement( ). Contoh :

Statement stmt = con.createStatement(); //con adalah instance dari kelas Connection.

Query yang mengembalikan dataset dapat dieksekusi dengan method Statement.executeQuery( ) yang mengembalikan java.sql.ResultSet. Contoh :

ResultSet rs = stmt.executeQuery(“SELECT * FROM CUSTOMERS”);

Untuk melakukan iterasi terhadap ResultSet dapat dilakukan seperti contoh berikut :

while(rs.next()) {

String event = rs.getString(“event”);

Object count = (Integer) rs.getObject(“count”);

}

IP Address (Introduction)

July 25th, 2006

IP Address

1. Apa itu IP address?

Bagaimana komputer-komputer yang terhubung ke jaringan internet saling berhubungan dan mengirimkan pesan? Masalah ini analog dengan masalah pengiriman surat di dunia nyata. Misalkan saya yang berdomisili di Aquarius 16 Bandung ingin mengirim surat kepada Hifni yang beralamat di jalan xxx no 100 Condongcatur Sleman. Pertama, saya akan menuliskan isi surat saya dalam sebuah kertas. Lalu surat tersebut akan saya masukkan ke dalam amplop. Mengapa saya masukkan ke dalam amplop? Agar surat saya terlindung. Dengan menggunakan amplop, resiko kerusakan surat saya akan lebih kecil daripada tidak menggunakan amplop. Setelah itu akan saya tuliskan alamat Hifni pada amplop surat tersebut, dan tak lupa nama Hifni, karena jika tidak dituliskan namanya, surat tersebut bisa nyasar ke kakak atau adiknya. Saya juga menuliskan nama dan alamat saya pada bagian belakang amplop, agar apabila Hifni ingin membalas surat saya, dia mengetahui alamat saya. Apabila alamat surat tersebut benar, prangkonya cukup, dan rute menuju rumah Hifni bisa dilalui, surat tersebut pasti akan sampai.

Pada kuliah pertama ini kita akan membahas salah satu komponen penting dalam jaringan komputer. Komponen itu adalah IP (Internet Protocol) address, yang analog dengan alamat rumah pada pengiriman surat di atas. IP address (versi 4) tersusun atas bilangan biner (0 dan 1) sepanjang 32 bit (binary digit) yang terbagi atas empat segmen. Tiap segmen terdiri atas 8 bit. Artinya memiliki nilai desimal 0 (00000000) sampai 255 (11111111). Jadi secara kasar dapat disimpulkan bahwa jumlah alamat yang bisa dipakai oleh komputer di seluruh dunia yang terhubung ke internet sebanyak 232 buah (walaupun ada IP tertentu yang tidak dipakai dengan alasan khusus). Untuk mempermudah pembacaan, alamat IP tersebut biasanya dituliskan dalam bilangan desimal misalnya 167.205.35.31. Struktur alamat IP dibagi menjadi dua bagian yaitu Network ID dan Host ID. Sesuai namanya, Network ID berfungsi mengidentifikasi pada jaringan mana suatu komputer berada, sementara Host ID berfungsi mengidentifikasi suatu komputer (host) pada suatu jaringan. Dalam satu jaringan, host ID harus unik, sebagaimana analogi dalam satu jalan, tidak boleh ada rumah dengan nomor sama. Jaringan yang berbeda network idnya dipisahkan oleh router.

2. Kelas-kelas IP address

IP address dibagi menjadi lima kelas, A sampai E. IP address yang dipakai secara umum dibagi dalam 3 kelas, sementara 2 kelas lainnya dipakai untuk kepentingan khusus. Ini untuk memudahkan pendistribusian IP address ke seluruh dunia.

Kelas A :

- Format : 0nnnnnnn.hhhhhhhh.hhhhhhhh.hhhhhhhh

- Bit pertama : 0

- Panjang Network ID : 8 bit

- Panjang Host ID : 24 bit

- Byte pertama : 0 – 127

- Jumlah : 126 kelas A (0 dan 127 dicadangkan)

- Range IP : 1.xxx.xxx.xxx sampai 126.xxx.xxx.xxx

- Jumlah IP : 16.777.214 IP address pada tiap kelas A

IP address kelas ini diberikan kepada suatu jaringan yang berukuran sangat besar, yang pada tiap jaringannya terdapat sekitar 16 juta host.

Kelas B :

- Format : 10nnnnnn.nnnnnnnn.hhhhhhhh.hhhhhhhh

- 2 bit pertama : 10

- Panjang Network ID : 16 bit

- Panjang Host ID : 16 bit

- Byte pertama : 128 – 191

- Jumlah : 16.384 kelas B

- Range IP : 128.0.xxx.xxx sampai 191.155.xxx.xxx

- Jumlah IP : 65.535 IP address pada tiap kelas B

IP address kelas ini diberikan kepada jaringan dengan ukuran sedang-besar. Contohnya adalah jaringan kampus ITB yang mendapat alokasi IP address kelas B (terima kasih kepada Onno W. Purbo), dengan network id 167.205.

Kelas C :

- Format : 110nnnnn.nnnnnnnn.nnnnnnnn.hhhhhhhh

- 3 bit pertama : 110

- Panjang Network ID : 24 bit

- Panjang Host ID : 8 bit

- Byte pertama : 192 – 223

- Jumlah : 2.097.152 kelas C

- Range IP : 192.0.0.xxx sampai 223.255.255.xxx

- Jumlah IP : 254 IP address pada tiap kelas C

IP kelas ini dialokasikan untuk jaringan berukuran kecil.

IP kelas D digunakan sebagai alamat multicast yaitu sejumlah komputer memakai bersama suatu aplikasi. Contohnya adalah aplikasi real-time video conference yang melibatkan lebih dari dua host, seperti yang diadakan di ITB dalam program SOI (School on Internet) bersama beberapa universitas di Asia. Ciri IP kelas D adalah 4 bit pertamanya 1110. IP kelas E (4 bit pertama 1111) dialokasikan untuk keperluan eksperimental.

3. Yang perlu diperhatikan dalam pemilihan IP address

Aturan dasar pemilihan Network ID dan Host ID :

- Network ID tidak boleh bernilai 127. Karena Network ID 127 digunakan sebagai alamat loopback yaitu alamat yang digunakan komputer untuk menunjuk dirinya sendiri.

- Network ID dan Host ID tidak boleh seluruhnya bernilai 255 (seluruh bit diset 1). Nework ID atau Host ID yang seluruhnya bernilai 255 adalah alamat broadcast jaringan tersebut. Apabila dikirimkan pesan kepada alamt broadcast maka seluruh host pada jaringan tersebut akan menerima pesan itu.

- Network ID dan Host ID tidak boleh seluruhnya bernilai 0 (seluruh bit diset 0). Alamat IP dengan host id semuanya bernilai 0 diartikan sebagai alamat network yang menunjuk ke jaringan, bukan ke host.

- Host ID harus unik dalam satu network.

4. Penutup

Jadi, dengan semakin berkembangnya pengguna internet, alamat IP yang tersedia pun semakin sedikit. Perancang IP address dulu tidak menyangka bahwa perkembangan internet akan sedemikian pesat. Lalu bagaimana solusinya? Ada beberapa alternatif yang kini tengah dilakukan. Pertama melakukan penghematan pemakaian IP address dengan cara Subnetting, Supernetting, NAT, dll. Kedua, melakukan migrasi dari IP versi 4 ke IP versi 6 yang mempunyai alokasi sampai 3,4 x 1038.

Untuk melihat konfigurasi IP Anda, buka command prompt (Windows) lalu ketikkan ipconfig /all, lalu tekan enter. Untuk UNIX, buka shell/terminal lalu ketikkan ifconfig lalu tekan enter. IP address pada komputer dapat ditentukan secara static maupun dynamic. Penentuan secara static dilakukan dengan mengeset alamat IP pada komputer secara langsung. Sedangkan penentuan secara dynamic dilakukan dengan menggunakan dial up ke ISP (internet service provider) atau dengan cara menghubungkan diri dengan server DHCP (Dynamic Host Configuration Protocol). Sebagai contoh, komputer di lab Informatika Dasar I Teknik Informatika ITB mendapatkan IPnya secara dynamic melalui server ns.if.itb.ac.id sehingga alamat IPnya pada suatu saat bisa berubah secara otomatis. Keuntungan menggunakan DHCP adalah mampu mencegah IP conflict atau terdapatnya IP address yang sama pada satu jaringan.

5. Referensi

- Onno W. Purbo, Adnan Basalamah, Ismail Fahmi, Achmad Husni Thamrin. TCP/IP Standar, Desain, dan Implementasi.2002.Elex Media Komputindo:Jakarta.

- Aulia K. Arif, Onno W. Purbo. Konsep IP Address di Internet.

- Wahyu Hidayat, Affan Basalamah, Dikshie Fauzie. IPv6 di ITB.

Cinta Laut dan Langit

July 25th, 2006
Dahulu kala, langit dan laut saling jatuh cinta.
Mereka sama2 saling menyukai 1 sama lain. Saking
sukanya laut terhadap langit, warna laut = langit,
saking sukanya langit terhadap laut, warna langit
= laut.Setiap senja datang, si laut dengan lembut sekali
membisikkan “aku cinta padamu� ke telinga langit.
Setiap langit mendengar bisikan penuh cinta laut
pun, langit tidak menjawab apa2 hanya tersipu2
malu wajahnya semburat kemerahan.

Suatu hari, datang awan… begitu melihat
kecantikan si langit, awan seketika itu juga jatuh
hati terhadap langit. Tentu saja langit hanya
mencintai laut, setiap hari hanya melihat laut
saja. Awan sedih tapi tak putus asa, mencari cara
dan akhirnya menemukan akal bulus.

Awan mengembangkan dirinya sebesar mungkin dan
menyusup ke tengah2 langit dan laut, menghalangi
pandangan langit dan laut terhadap 1 sama lain.

Laut merasa marah karena tidak bisa melihat
langit, sehingga dengan gelombangnya, laut
berusaha menyibak awan yang mengganggu pandangannya.

Tapi tentu saja tidak berhasil.

Lalu datanglah angin, yang sejak dulu mengetahui
hubungan laut dan langit merasa harus membantu
mereka menyingkirkan awan yang mengganggu.

Dengan tiupan keras dan kuat, angin meniup awan
… Awan terbagi2 menjadi banyak bagian, sehingga
tidak bisa lagi melihat langit dengan jelas, tidak
bisa lagi berusaha mengungkapkan perasaan terhadap
langit.

Sehingga ketika merasa tersiksa dengan perasaan
cinta terhadap langit, awan menangis sedih. Hingga
sekarang, kasih antara langit dan laut tidak
terpisahkan.

Kamu juga bisa melihat di mana mereka menjalin
kasih. Setiap ke laut, di mana ada 1 garis antara
laut dan langit, di situlah mereka sedang bersatu.

(dikutip dari bajaklaut.org)

Bayangan

July 25th, 2006

aku hanya bayangan
pada kota dimana telah singgah para pencari jalan

aku hanya gelap
diantara cahaya lampu
yang terus bersinar tiada henti
menyilaukan aku yang kedinginan
berhari-hari

aku diam dan kelu
pada ramainya mereka yang tertawa
yang mengingkari keberadaan
angin yang bertiup lemah
di sekitar mereka