Greeting


Hello, everyone, knockturn’s here!

Why knockturn? Because I’m kinda like nocturnal animals, live at night and sleep at day.

Enjoy reading!

Advertisements

Bhinneka Tunggal Ika


Sungguh tidak enak menjadi orang yang beda. Masih perlu bukti? Tanyakanlah pada korban tragedi Mei 1998. Tanyakanlah pada alm. Munir. Tanyakanlah pada Pak Ahok. Tapi jangan tanya saya, karena saya tidak merasa beda!

Tapi sebenarnya apa sih perbedaan itu? Kenapa aku dan kamu bisa beda? Apa yang membedakan kita dan mereka? Continue reading

Yuk Keep Stupid


Well said.. Sayang pakai bahasa Inggris

Jendela kata

I am an uncle. I am twenty one, and I’ve already been an uncle of young cutie little niece, Teresia Chatra Sarasvati. My family call her Eyi. She is a very smart girl; she learns everything so fast that she memorizes every single thing and thinks in such logical thinking. My Dad (which is actually her grandpa; gosh, he is now a grandpa) ever asked her some Javanese questions and it became a short funny conversation, just like this.

Eyi           : “Kula nuwun…”

Grandpa   : “Inggih… sinten, nggih?”

Eyi           : “Eyi…”

Grandpa   : “Eyi putrine sinten?”

Eyi           : “Eyi putrine mama Nova…”

Grandpa   : “Daleme pundi?”

Eyi           : “Rejondani…”[1]

We don’t know how she learned Javanese. She just did it. The point is that God gives her a brilliant mind and she learns very fast, more than we used to learn.

My niece also likes watching television. Just like…

View original post 2,751 more words

Router (sangat) sederhana: Default Gateway dengan Fedora Core 8


Kelihatannya cukup mudah, tapi apakah untuk Ubuntu Desktop bisa semudah ini? Let’s do some research 🙂

Iwan Binanto: "hari-hari ku yang berlalu .."

Coba-coba membuat Router sederhana dengan Fedora Core 8. (Seting IP tidak dibahas pada artikel ini, dan diasumsikan seting IP dan Gateway sudah benar). Gambaran jaringan yang akan dikonfigurasi adalah sbb:

Konfigurasi utama di router PC Linux hanya mengaktifkan IP Forwarding saja dengan cara:

  • Edit file sysctl.conf yang berada di /etc untuk mengubah isian net.ipv4.ip_forward menjadi 1 (jika sebelumnya berisi 0)
  • Restart layanan jaringan komputer dengan perintah:
    service network restart

Dengan melakukan langkah-langkah di atas, seharusnya client A atau client B sudah dapat melakukan ping ke client C. Tetapi pada Fedora 8, hal ini tidak dapat dilakukan. Ketika ping dilakukan dari client A atau client B ke client C, yang terjadi adalah muncul pesan dengan salah satu katanya adalah “Prohibited”.

View original post 287 more words

C# Delegates vs. Java Single-Method Interfaces


...
JButton btn1 = new JButton();
btn1.setText("Click me");
btn1.addActionListener(new ActionListener(){
    public void actionPerformed(){
        System.out.println("Hello World");
    }
});

Para pengguna Java pastinya sudah akrab dengan sintaks di atas. Snippet tersebut berisi kode untuk meng-handle event click di JButton. Ketika diklik, tombol tersebut akan mencetak “Hello World” di console.

Sekarang mari kita lihat bagaimana hal seperti itu diimplementasikan di C#:

...
Button btn1 = new Button();
btn1.Text = "Click me";
btn1.Click += delegate(object sender, EventArgs e){
    System.Console.WriteLine("Hello World");
};
...

Ada beberapa kemiripan dari dua snippet di atas:

  1. addActionListener diganti dengan operator +=
  2. new ActionListener() diganti dengan delegate(object sender, EventArgs e)
  3. public void actionPerformed(), well, tidak diperlukan di C#

Mengapa kode C# lebih singkat satu baris? Karena C# menggunakan model delegate, sesuatu yang tidak ada di Java.

Apa itu delegate?

Ada bermacam-macam cara menjelaskan delegate, akan tetapi yang menurut saya paling mendekati adalah bahwa delegate “membungkus” method sehingga bisa berlaku layaknya sebuah objek/variabel.

Mengapa kita perlu “membungkus” method?

Analogi: saya punya dua macam buah: pisang dan stroberi. Akan tetapi, saya tidak tahu akan saya apakan kedua buah itu. Ada yang punya ide?

  • Bagaimana jika dibuat banana split dengan topping stroberi?
  • Atau jus campuran pisang dan stroberi?
  • Mungkin pisang saus stroberi?

Ada 3 ide, dengan setiap ide pasti mempunyai konsep dan cara pembuatannya masing-masing. Bagaimana sang empunya ide “menyerahkan” idenya kepada saya?

Dengan menulis resepnya, tentu saja.

Itulah persis yang dilakukan delegate. Membungkus tiap method untuk diserahkan kepada entitas lain, supaya entitas lain tersebut bisa melakukan persis seperti idenya.

Contoh kasus: Sebuah form punya tombol. Event Click milik tombol tersebut bertanya, “Ada yang punya ide apa yang akan saya lakukan ketika saya diklik?”

  • Cetak “Hello World”
  • Ganti teks tombol dengan jumlah klik
  • Keluar dari program

Untuk setiap ide, akan ada sebuah method yang bersesuaian. Delegate bertugas membungkus method itu dan memberikannya kepada event Click, supaya event Click bisa melakukan persis seperti ide nya: mencetak “Hello World”, Mengganti teks tombol, atau keluar dari program.

Sebetulnya ada “jembatan” antara konsep delegate C# dan single-method interface Java: Lambda expression. Tetapi lambda expression baru tersedia di Java versi 1.8, jadi untuk sementara belum dapat diimplementasikan, setidaknya sampai Java 1.8 (JDK8) dirilis dengan status GA (general availability).

Sekian penjelasan singkat tentang delegate, semoga bisa membantu para developer Java untuk berpindah haluan ke C# 😛
Seperti biasa, bagian komentar selalu terbuka untuk diskusi 🙂

Monodualisme


Pernah mendengar konsep dualisme? Konsep itu meyakini bahwa segala sesuatu diciptakan beserta lawannya. Terang dan gelap, panas dan dingin, proton dan electron, electron dan positron, and the list could go on forever…

Dari konsep dualisme itu aku membuat konsep sendiri: konsep monodualisme (entah nama konsep itu sudah ada yang memakai atau belum). Konsepnya mirip dualisme, tetapi bahwa sebenarnya itu hanya satu hal. Yang termasuk monodualisme adalah terang dan gelap, panas dan dingin, baik dan jahat. Kenapa mereka monodualis? Karena mereka sebenarnya satu hal. Terang dan gelap itu berkaitan (secara fisis) dengan ada atau tidaknya partikel cahaya. Terang kalau ada, gelap kalau tidak ada. Begitu juga panas: panas jika ada kalor, dingin jika tidak ada kalor. Continue reading

Ubuntu: Getting Started


Melanjutkan artikel sebelumnya tentang linux, sekarang saya akan membagikan cara membuat dan menjalankan LiveUSB Ubuntu, dan apa yang harus (sebaiknya) dilakukan selanjutnya.

Setelah mendapatkan image Ubuntu, hal yang selanjutnya dilakukan adalah membakar image tersebut ke CD/DVD, atau membuat LiveUSB nya. Untuk membakar image (selanjutnya disebut ISO), bisa menggunakan fasilitas CD burner bawaan Windows atau aplikasi bawaan Ubuntu bernama “Brasero”. Teknisnya tidak akan saya jelaskan di sini, silakan mencari tutorialnya di Google kalau belum tahu 😛 Continue reading

Guardian Angel


Pernah kepikiran nggak kalo Guardian Angel itu malaikatmu yang kamu friendzone? Ya, friendzone. Kebayang nggak sih gimana jahat dan egoisnya kamu sampai malaikat pun kamu friendzone?
Continue reading

Advertisements
%d bloggers like this: