Minggu, 04 Februari 2018

PROTOKOL JARINGAN

Protokol Jaringan adalah perangkat aturan yang digunakan dalam jaringan, Protokol adalah aturan main yang mengatur komunikasi diantara beberapa komputer di dalam sebuah jaringan sehingga komputer-komputer anggota jaringan dan komputer berbeda platform dapat saling berkomunikasi. semua jenis-jenis jaringan komputer menggunakan protokol. Aturan-aturan Protokol adalahtermasuk di dalamnya petunjuk yang berlaku bagi cara-cara atau metode mengakses sebuah jaringan, topologi fisik, tipe-tipe kabel dan kecepatan transfer data.

Berikut adalah Jenis-Jenis Protocol Jaringan komputer:
1.         Ethernet                                                                  
2.         Local Talk
3.         Token Ring
4.         FDDI
5.         ATM

TCP/IP (singkatan dari Transmission Control Protocol/Internet Protocol)
Adalah standar komunikasi data yang digunakan oleh komunitas internet dalam proses tukar-menukar data dari satu komputer ke komputer lain di dalam jaringan Internet. Protokol ini tidaklah dapat berdiri sendiri, karena memang protokol ini berupa kumpulan protokol (protocol suite).
TCP/IP merngimplemenasikan arsitektur berlapis yang terdiri atas empat lapis, di antaranya adalah :
1.     Protokol lapisan aplikasi : bertanggung jawab untuk menyediakan akses kepada aplikasi terhadap layanan jaringan TCP/IP. Protokol ini mencakup protokol Dynamic Host Configuration Protocol (DHCP), Domain Name System (DNS), Hypertext Transfer Protocol (HTTP), File Transfer Protocol (FTP), Telnet, Simple Mail Transfer Protocol (SMTP), Simple Network Management Protocol (SNMP), dan masih banyak protokol lainnya. Dalam beberapa implementasi stack protokol, seperti halnya Microsoft TCP/IP, protokol-protokol lapisan aplikasi berinteraksi dengan menggunakan antarmuka Windows Sockets (Winsock) atau NetBIOS over TCP/IP (NetBT).  
2.      Protokol lapisan antar-host : berguna untuk membuat komunikasi menggunakan sesi koneksi yang bersifat connection-oriented atau broadcast yang bersifat connectionless. Protokol dalam lapisan ini adalah Transmission Control Protocol (TCP) dan User Datagram Protocol (UDP). 
3.      Protokol lapisan internetwork : bertanggung jawab untuk melakukan pemetaan (routing) dan enkapsulasi paket-paket data jaringan menjadi paket-paket IP. Protokol yang bekerja dalam lapisan ini adalah Internet Protocol (IP), Address Resolution Protocol (ARP), Internet Control Message Protocol (ICMP), dan Internet Group Management Protocol (IGMP).
4.     Protokol lapisan antarmuka jaringan : bertanggung jawab untuk meletakkan frame-frame jaringan di atas media jaringan yang digunakan. TCP/IP dapat bekerja dengan banyak teknologi transport, mulai dari teknologi transport dalam LAN (seperti halnya Ethernet dan Token Ring), MAN dan WAN (seperti halnya dial-up modem yang berjalan di atas Public Switched Telephone Network (PSTN), Integrated Services Digital Network (ISDN), serta Asynchronous Transfer Mode (ATM))

UDP ( User Datagram Protokol) UDP, singkatan dari User Datagram Protocol, adalah salah satu protokol lapisan transpor TCP/IP yang mendukung komunikasi yang tidak andal (unreliable), tanpa koneksi (connectionless) antara host-host dalam jaringan yang menggunakan TCP/IP. Protokol ini didefinisikan dalam RFC 768.
UDP memiliki karakteristik-karakteristik berikut:
  • Connectionless (tanpa koneksi): Pesan-pesan UDP akan dikirimkan tanpa harus dilakukan proses negosiasi koneksi antara dua host yang hendak berukar informasi.
  • Unreliable (tidak andal): Pesan-pesan UDP akan dikirimkan sebagai datagram tanpa adanya nomor urut atau pesan acknowledgment. Protokol lapisan aplikasi yang berjalan di atas UDP harus melakukan pemulihan terhadap pesan-pesan yang hilang selama transmisi. Umumnya, protokol lapisan aplikasi yang berjalan di atas UDP mengimplementasikan layanan keandalan mereka masing-masing, atau mengirim pesan secara periodik atau dengan menggunakan waktu yang telah didefinisikan. 
  • UDP menyediakan mekanisme untuk mengirim pesan-pesan ke sebuah protokol lapisan aplikasi atau proses tertentu di dalam sebuah host dalam jaringan yang menggunakan TCP/IP. Header UDP berisi field Source Process Identification dan Destination Process Identification.
  • UDP menyediakan penghitungan checksum berukuran 16-bit terhadap keseluruhan pesan UDP.
Secara umum fungsi protokol adalah menghubungkan pengirim dan penerima dalam berkomunikasi serta dalam bertukar informasi agar dapat berjalan dengan baik dan akurat. Tidak semua protokol memiliki fungsi atau fitur yang sama, tetapi ada juga beberapa protokol yang memiliki fungsi sama meski berada pada tingkat berbeda. Beberapa protokol bergabung dengan protokol lainnya untuk membangun sistem komunikasi yang utuh.

Fungsi protokol secara garis besar adalah sebagai berikut :
• Encapsulation
• Pemisahan dan perakitan kembali
• Connection control (Kontrol koneksi)
• Pengiriman tersusun
• Pengiriman perintah
• Flow Control (alur kontrol)
• Error correction (Kontrol Kesalahan)
• Addressing (Pengalamatan)
• Multiplexing
• Layanan transmisi

USERINTERFACE DALAM PEMOGRAMAN DASAR

JAVA GUI
A.      Pengertian GUI Pada JAVA 
Graphic User Interface (GUI) adalah pemrograman dengan bahasa Java yang dibuat menggunakan aplikasi yang berbasiskan GUI. Tujuannya adalah menambahkan beberapa komponen yang tidak bisa dibuat dalam basis text.
Komponen-konponen tersebut bisa berupa tombol, gambar, dll. Tujuannya adalah untuk memudahkan user menggunakan program yang dibuat tersebut.
Kalau dilihat pengertian tentang GUI secara umum adalah Interaksi yang dapat dilaksanakan oleh user melalui menu dan icon yang diperlihatkan dalam modus grafik. Contoh implementasi GUI-based shell ini adalah pada sistem operasi Microsoft Windows.

B.       Jenis-Jenis Gui
Diantara jenis-jenis gui di java adalah:
   a)   AWT (Abstract Window Toolkit)
AWT (Abstract Window Toolkit) adalah GUI Toolkit pertama pada bahasa pemrograman Java, sayang-nya AWT ini sangat-sangat kekurangan komponen yang biasa digunakan untuk membangun sebuah aplikasi desktop secara lengkap (komponen tabel saja tidak ada ) Terlepas dari kurang-nya komponen GUI yang terdapat pada AWT (Abstract Window Toolkit), aplikasi yang dibangun menggunakan AWT (Abstract Window Toolkit) akan tampak seperti aplikasi native. Maksudnya yaitu, jika aplikasi yang dibangun menggunakan AWT (Abstract Window Toolkit) ini dijalankan pada Sistem Operasi Windows. Maka aplikasi ini akan terlihat seperti aplikasi Windows pada umum-nya, dan begitu juga jika dijalankan pada Sistem Operasi Mac ataupun GNU/Linux. Kenapa ini bisa terjadi, karena AWT (Abstract Window Toolkit) ini benar-benar memanggil native subrutin untuk menggambar setiap komponen-nya ke layar.

    b)  SWT (Standart Widget Tookit)
SWT (Standart Widget Toolkit) adalah sebuah GUI Toolkit yang dikeluaran oleh IBM sebagai alternatif dari AWT/Java Swing milik SUN Microsystem. SWT terdapat pada package java.swt. package java.swt berisis komponen-komponen GUI yang bersifat platform sistem operasi.
Tampilan dari java.swt menyesuaikan dengan sistem operasi sehingga mengakibatkan dependensi sistem. Namun performa dari SWT ini sama dengan swing. Yang membedakan antara SWT (Standart Widget Toolkit) dan AWT/Java Swing adalah SWT ini benar-benar mengakses native GUI library yang terdapat pada Sistem Operasi melalui JNI (Java Native Interface).
    c)  SWING
Java Swing adalah librari java yang digunkan untuk menciptakan Grafik User Interface (GUI). Dengan Java Swing kita dapat membuat user interface yang cross platform atau OS independent. Artinya user interface yang kita buat dapat dijalankan pada system operasi apa saja (OS yang suport Java) dengan tampilan yang relative sama. Bahkan kita dapat membuat user interface yang menyerupai Windows XP, Mac OS atau Linux tanpa tergantung dari OS yang kita gunakan. SWING, adalah salah satu bagian dari Java Foundation Classes (JFC). Pada JFC ini juga terdapat fasilitas untuk menambahkan Rich Graphic Functionality.

LANGKAH-LANGKAH PRAKTIKUM

cthAWT1.java
import java.awt.*;
public class cthAWT1 {
public static void main(String[] args) {
                Frame myFrame = new Frame("Contoh program AWT");
                Label myLabel = new Label("Selamat belajar JAVA");
                myFrame.add(myLabel);
                myFrame.setSize(200,150);
                myFrame.show();
                }
}
CthAWT2.java
import java.awt.*;
class frameTurunan extends Frame {
                Label myLabel = new Label ("Selamat Belajar JAVA!");
                public frameTurunan(String judul) {
                                setTitle (judul);
                                setSize(200,200);
                                add(myLabel);
                                show();
                }
}

public class chtAWT2 {
                public static void main(String[] args) {
                frameTurunan f = new frameTurunan("Ini FrameTurunan");
                }
}

CthSWING1.java
import javax.swing.*;
public class cthSwing1 {
                public static void main(String[] args) {
                                JFrame myFrame= new JFrame("Contoh program Swing");
                                Jlabel myLabel= new JLabel("Selamat belajar JAVA");
                                myFrame.add(myLabel);
                                myFrame.setSize(200,150);
                                myFrame.setVisible(true);
                myFrame.SetDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                }
}

cthSWING2.java
import javax.swing.*;
class frameTurunan extend JFrame {
JLabel myLabel= new JLabel("Selamat Belajar JAVA!");
public frameTurunan(String judul) {
                setTitle(judul);
                setSize(200,200);
                add(myLabel);
                setVisible(true);
}
}

public class cthSwing2 {
public static void main(String[] args) {
                frameTurunan f = new frameTurunan("Ini FrameTurunan");
                }
}


FUNGSI DAN PROSEDUR PADA PASCAL

1. Prosedur diawali dengan dengan kata procedure untuk mendeklarasikannya
contoh : procedure hitung_angka;
kalau fungsi di awali dengan kata function
function hitung_bilangan: integer;
2. Procedure tidak mengembalikan nilai ke program utama, sedangkan fungsi akan mengembalikan nilai ke program utama, itu sebabnya fungsi harus ada tipe datanya (integer, char atau string).

3. Procedure outputnya diletakkan di dalam procedure, kalau fungsi outputnya di letakkan di program utama.
4. Prosedur di panggil diprogram utama dengan menuliskan nama procedure tersebut di program utama. contoh :hitung_bilangan;
Fungsi di panggil dengan memasukkan ke suatu variabel. atau bisa juga dengan langsung menuliskannya di program utama.
contoh. hasil:= hitung_bilangan(a,b);
atau write('hasilnya adalah ', hitng_bilangan(a,b));

baik langsung saja ke contoh..
program aritha_pascal;
uses wincrt;

procedure nama;
var nm: string;

begin
write('masukkan nama anda ');
readln(nm);
write('haloo ', nm);
end;

begin
writeln('-======Program Procedure Input Nama======-');
nama;
end.

Procedure dengan parameter Input dan parameter Output

kalau kita lihat contoh program sebelumnya perintah input read(nama); dan output write(nama); berada di procedure yang sama. nah bagai mana caranya apabila kita membaca input di procedure a. kemudian menampilkannya di procedure b.
untuk melakukan itu kita membutuhkan yang namanya parameter. parameter ada 2 parameter input yang berfungsi sebagai inputan untuk procedure tesebut. dan yang kedua adalah parameter output. yang berufngsi untuk memberikan output pada variabel yang di parameterkan.
program aritha_pascal;

uses wincrt;

procedure inputnama 
(var nm:string);
begin
write('masukkan nama anda ');
readln(nm);
end;

procedure tampilnama 
(nm:string);
begin
write('haloo ',nm);
end;


var nama:string;
begin
writeln('-======Program Procedure Input Nama======-');
inputnama(nama);
tampilnama(nama);

end.


pada prosedur inputnama tulisan yang berwana merah 
(var nm:string) adalah parameter output (parameter by reference). dimana nama yang di inputkan di dalam procedur akan menjadi output pada program utama sehingga di program utama nama yang telah di inpukan tadi bisa digunakan. ciri2 parameter output adalah dengan adanya var pada (var nm:string)

sedangkan untuk parameter input tidak menggunakan var. lihat coding di procedure tampilnama yang berwana biru 
(nm:string) nah in adalah contoh parameter input (parameter by value)

contoh lain
program aritha_pascal;
uses wincrt;

procedure inputan(alas: integer; tinggi:integer; var luas:real);
begin
write('masukkan nilai alas : '); readln(alas);
write('masukkan nilai tinggi : '); readln(tinggi);
luas:= alas*tinggi/2;
end;

var a,t:integer;
luas : real;
begin
writeln('-======Program Procedure Luas segitiga======-');
writeln;
inputan(a,t,luas);
write('luas segitiga adalah : ', luas:0:2);
end.

Fungsi

program aritha_pascal;
uses wincrt;

function luassegitiga(alas: integer; tinggi:integer) : real;
var luas:real;
begin
luas:= alas*tinggi/2;
luassegitiga:= luas;
end;


var a,t:integer;
luas : real;

begin
writeln('-======Program Fungsi Luas segitiga======-');
writeln;
write('masukkan nilai alas : '); readln(a);
write('masukkan nilai tinggi : '); readln(t);

write('luas segitiga adalah : ', 
luassegitiga(a,t):0:2);

end.


tulisan yang berwarna merah adalah pemanggilan fungsi yang memberikan nilai luas dari segitiga.

Minggu, 21 Januari 2018

Perkembangan Kamera Fotografi dari Masa ke Masa

  
1. Kamera Obscura
Kamera Obscura (yang artinya kamar gelap) ditemukan pada sekitar tahun 1.000 setelah Masehi oleh Al-Haitam atau yang dikenal pula dengan nama lain Alhazen.
Kamera ini dikembangkan dengan konsep lubang kecil di kotak gelap yang disinari cahaya mampu menghasilkan gambar.
Kamera Obscura – Gambar dari Wikipedia
Sebelum dipopulerkan Alhazen, pada zaman sebelum Masehi tercatat bahwa konsep ini telah ditemukan oleh seorang filsuf bernama Mozi pada zaman sebelum Masehi.
Baru pada abad ke-11, Alhazen menulis sebuah buku mengenai optik termasuk percobaannya meneruskan cahaya melalui lubang kecil ke ruangan gelap.
Buku karangan Alhazen kemudian dipelajari oleh ilmuwan barat seperti Joseph Kepler. Ilmuwan ini ahirnya berhasil memperbesar proyeksi gambar yang dihasilkan kamera dengan menambahkan lensa negatif di belakang lensa positif.
Robetrt Boyle kemudian juga berhasil membuat kamera kecil tanpa kabel pada tahun 1665.
2. Kemera Daguerreotypes dan Calotypes
Hampir 900 tahun setelah ditemukannya kamera Obscura, pada tahun 1837 Joseph Nicephore Niepce yang berkebangsaan Prancis menemukan konsep fotografi yang praktis, yang kemudian dinamakannya sebagai Daguerreotypes.
Kamera Daguerreotypes – Gambar dari Wikipedia
Di dalam sebuah kotak kecil dengan lubang cahaya, ia menambahkan pelat tembaga dan perak yang ditambahkan dengan uap yodium sehingga kamera generasi ini lebih sensitif terhadap cahaya.
Setelah dilakukan eksposur pada kamera, gambar kemudian terbentuk melalui uap merkuri dan larutan natrium klorida. Niepce bekerja sama dengan partnernya Louis Daguerre untuk menemukan kamera ini, oleh sebab itulah nama kameranya dinamakan dengan nama penemunya.
Setelah muncul Daguerreotypes, Henry Fox Talbot menyempurnakan proses terbentuknya gambar, dan berhasil menjual Calotype pada sekitar tahun 1840-an.
3.  Pelat Kering Collidion
Mulai digunakan orang semenjak tahun 1857, kamera yang satu ini merupakan buah karya dari Desire van Monckhoven.
Empat belas tahun kemudian, kamera pelat kering ini dimodifikasi oleh Richard Leach Maddox yang berhasil menciptakan pelat basah yang kualitas dan kecepatan pengambilan gambarnya lebih baik.
Kamera Pelat Kering – Gambar dari Wikipedia
Perjalanan kamera Colliidion terus berlangsung hingga pada tahun 1878 ditemukan emulsi gelatin yang mampu meningkatkan sensitivitas kamera, sehingga kamera bisa mengambil gambar secara spontan.
Saat-saat inilah dimana tripod dan alat bantu kamera lainnya tidak terlalu dibutuhkan untuk mengambil gambar. Sebuah kamera berukuran kecil beratnya tidak terlalu besar dan bisa dipegang dengan tangan kosong.
4. Kodak dan Kamera Film
Para fotografer yang lahir di tahun 90-an pasti pernah mengenal kamera yang menggunakan roll film di dalamnya yang kemudian bisa dicetak menjadi sebuah foto.
Sebetulnya pengembangan kamera film ini sudah dimulai satu abad sebelumnya, yaitu semenjak tahun 1885 oleh George Eastman yang memulai produksi film kamera, yang kemudian berkembang lagi menjadi seluloid pada tahun 1888-1889.
Kamera Kodak 1910 – Gambar dari Wikipedia
Kamera film tersebut ia namakan dengan Kodak, yang kemudian mulai dikenalkan kepada masyarakat luas semenjak tahun 1888. Kamera ini labih canggih lagi dari sebelumnya, hanya terdiri dari satu buah lensa fokus dan satu shutter speed.
Sampai akhirnya di akhir abad ke-19 Eastman telah berhasil membuat berbagai model kamera film, termasuk kamera berbentuk kotak dan kamera lipat.
Walaupun kamera Kodak ini berhasil membuat fotografi menjadi tidak terlalu mahal bagi banyak kalangan, kamera pelat masih banyak digunakan orang waktu itu karena kualitasnya yang lebih baik. Untuk bersaing dengan kamera roll, kamera pelat era ini dilengkapi dengan majalah untuk menahan beberapa pelat sekaligus.
5. Kamera Compact dan Canon
Sejarah kamera dilanjutkan dengan hadirnya kamera compact yang diteliti oleh Oskar Barnack di Leitz. Barnack menggunakan film 35 mm untuk membuat kamera yang dapat menghasilkan perbesaran gambar dengan kualitas sangat baik.
Akhirnya, pada tahun 1913 terbentuklah prototipe Ur-Leica, kamera 35 mm yang kemudian pengembangannya tertunda karena adanya perang dunia pertama.
Kamera Leica I – Gambar dari Wikipedia
Setelah beberapa kali mengalami perkembangan fitur, kamera Ur-Leica mulai dijual secara luas pada tahun 1923. Semenjak itu, konsumen pengguna kamera merasa sangat puas dan menyambut baik inovasi kamera yang satu ini.
Dari sinilah kemudian muncul perusahaan pembuat kamera saingan Ur-Leica, yaitu kamera Canon yang perusahaannya berpusat di Jepang. Canon juga membuat kamera dengan film cine 35 mm, yang kemudian bersaing ketat dengan Ur-Leica.
Kamera yang dibuat di negeri matahari terbit ini kemudian menjadi sangat populer setelah berakhirnya perang Korea yang membuat veteran Jepang banyak membawa kamera ini ke Amerika Serikat.
Tentunya hingga kini Canon terus berinovasi memproduksi berbagai kamera canggih lainnya, sehingga sampai saat ini pun bisnisnya masih berjalan dengan subur.
6. TLR dan SLR
TLR merupakan kepanjangan dari twin-lens reflex, sementara SLR adalah akronim dari single-lens reflex. Kamera TLR mulai dibuat oleh Franke&Heidecke Rolleiflex pada tahun 1928, sementara kamera SLR sebagai perkembangan lebih lanjut mulai diproduksi semenjak tahun 1933, yang pertama kali menggunakan 127 roll film.
Kamera SLR Contax S – Gambar dari Wikipedia
Kamera TLR dilengkapi dengan dua lensa objektif dengan panjang focal yang sama. Satu lensa berguna untuk tujuan mengambil gambar, sementara lensa lainnya berguna untuk menangkap bayangan yang telah masuk ke lensa pertama. Sementara pada kamera SLR, hanya terdapat satu buah lensa yang sudah dikombinasikan dengan sensor gambar digital.
Kamera SLR dipopulerkan oleh perusahaan Asahi Optical, yang pertama kali meluncurkan kamera SLR 35mm yang dinamakan dengan Asahiflex. Pada tahun 1950-an, mulai banyak kamera SLR yang beredar di pasaran, termasuk Canon, Yashica, dan Nikon.
7. Kamera Analog
Sejarah kamera fotografi selanjutnya sampai pada tahun 1981 saat dimulainya pembuatan kamera analog, yang teknik pengambilan gambarnya masih bisa menggunakan film seluloid (klise/film negatif). Yang pertama kali membuat kamera analog ini adalah Sony Mavica.
Kamera Sony Mavica – Gambar dari Wikipedia
Pada Olimpiade 1984, pertama kalinya kamera analog yang diproduksi Canon digunakan untuk memotret Yomiuri Shinbun yang hasilnya kemudian dimuat di surat kabar Jepang.
Namun seiring perjalanannya, kamera analog kurang mendapat antusias masyarakat karena biaya penggunaannya yang sangat mahal, serta kualitas gambar yang kurang baik jika dibandingkan dengan kamera lain. Aplikasi kamera analog saat ini banyak dipakai untuk kamera CCTV.
8. Kamera Digital
Kamera digital pertama kali dikembangkan oleh Fuji pada tahun 1988, yang menggunakan kartu memori 16 MB untuk menyimpan data foto yang diambil.
Selanjutnya kamera digital mulai dikenalkan pada masyarakat luas semenjak tahun 1989 oleh Fuji. Pada tahun 1991, dimulailah pemasaran kamera digital Kodak DCS-100 yang beresolusi 1,3 megapiksel dan ditawarkan dengan harga US$ 13.000.
Kamera Kodak DCS 100 – Gambar dari Wikipedia
Format foto kamera digital mulai beralih menjadi JPEG dan MPEG yang tidak memakan banyak tempat pada penyimpanan data. Pada tahun 1995, kamera digital dengan kristal cair di bagian belakang lensa mulai dikembangkan oleh Hiroyuki Suetaka dengan nama kamera Casio QV-10.
Kamera DSLR mulai ditemukan pada tahun 1999 awal dengan peluncuran Nikon D1 yang berhasil menekan biaya produksi hingga US$ 6.000 saja. Kamera ini mampu menghasilkan gambar yang sangat baik dan beresolusi tinggi.

Kamis, 23 Maret 2017


Setitik Asa Untuknya

Lidahku kelu. Pikiranku kalut. Tepat seminggu yang lalu, kamu mengatakan hal yang sudah lama seharusnya kamu katakan. Tentang rasa, asa dan mimpi yang telah dirancang sedemikian rupa olehmu. Mungkin kamu telat. Atau mungkinkah masih ada secercah harapan yang tersisa untukmu? Entahlah. Aku juga tidak tahu pasti.
Kamu bagaikan zat toxic yang kerap meracuni pikiranku. Semua perhatianku tersita ketika kamu berbicara di depanku. Setelah sekian lama, kamu baru menyadari hal itu. Siang dan malam silih berganti. Aku dilema. Dalam sujud ku berdo’a, meminta petunjuk kepada-Nya, apakah kamu orang yang tepat untukku?
Hatiku gamang. Aku tidak ingin hal itu terulang lagi. Kala dimana kamu enggan berbicara sepatah kata pun denganku. Aku bahkan tidak mengerti apa salahku. Kamu menghindar dariku dan menganggapku seolah tidak ada. Kita seperti dua orang yang sebelumnya tidak pernah saling kenal. Jurang keegoisan antara aku dan kamu menjadi semakin nyata. Miris rasanya. Aku selalu tersenyum getir saat kamu melintas di hadapanku.
Hingga di suatu penghujung hari yang cerah, akhirnya kamu memulai percakapan itu lagi. Hatiku lega. Amat lega karena melihatmu berbicara dan tersenyum riang di hadapanku sudah menjadi satu kegemaran baru untukku. Mungkin waktu itu aku hanya terlalu berprasangka terhadapmu. Tidak seharusnya aku mengambil kesimpulan bahwa kamu marah denganku.
Semilir angin membuatku dapat berpikir jernih. Hatiku mulai tersingkap. Aku tidak ingin berdusta bahwa sebenarnya aku juga menginginkanmu, bahkan sejak awal kita bertemu.
Saat itu, tepat pada malam purnama di bulan Ramadhan, kamu datang ke rumah dan bertemu dengan kedua orangtuaku. Aku tidak mengira kamu seberani dan secepat ini mengambil langkah. Ya, kamu yang pada malam itu melamarku di depan kedua orangtuaku. Aku terkesima dengan ucapanmu. Tetapi, di sisi lain aku sangat senang karena artinya kamu tidak ingin kehilanganku. Kedua orangtuaku pun menyerahkan keputusannya padaku. Spontan aku menjawab iya dan kedua orangtuaku merestui hubungan kita. Kamu terlihat lega dan bahagia. Pun denganku.
Ternyata, rencana-Nya sungguh indah dan membekas di relung hatiku.
“Kalau setiap cerita hidup kita selalu indah, hati ini tidak pernah kenal dekat dengan kata sabar dan ikhlas.”
“Kalau setiap yang kita inginkan terus dikabulkan, kita tidak pernah tahu indahnya mendekati Allah bersama jutaan do’a dan harapan.”
“Kalau setiap harapan selalu berjalan sesuai rencana, kita tidak pernah belajar bahwa kecewa itu menguatkan.”
“Kalau kamu percaya takdir, aminkan dalam hati, kita bertemu suatu hari nanti…” (Dan aku percaya takdir itu)
Untuk kalian yang sedang dalam masa penantian…
Salam dari kota hujan