Tuesday, August 21, 2012

Penggunaan wait(), notify(), dan notifyAll() untuk Problem Producer Consumer dalam Java

Penggunaan monitor implicit dalam object Java sangat berguna, namun anda bisa mendapatkan sebuah tingkat yang lebih halus dalam pengendalian melalui komunikasi antar-process. Seperti yang akan anda lihat, khususnya ini mudah dalam Java.

Multithreading menggantikan pemrograman event loop dengan membagi task dari anda menjadi satuan yang diskret dan logis. Thread juga menyediakan sebuah keuntungan sekunder: mereka menyingkirkan dengan polling. Polling biasanya diimplementasikan dengan sebuah loop yang digunakan untuk memeriksa beberapa kondisi secara berulang. Sekali kondisi benar, tindakan yang tepat diambil. Hal ini menyia-nyiakan jatah waktu CPU. Sebagai contoh, bayangkan permasalahan antrian klasik, dimana satu thread menghasilkan data dan lainnya menggunakannya. Untuk membuat permasalahan tersebut semakin menarik, misalkan producer harus menunggu konsumen selesai sebelum produser menghasilkan lebih banyak data. Dalam sebuah sistem polling, consumer akan membuang banyak siklus CPU ketika consumer menunggu produser untuk memproduksi. Ketika, produser selesai, produser akan memulai polling, yang membuang lebih banyak siklus CPU yang menunggu konsumen selesai, dan seterusnya. Secara jelas, situasi ini tidak diinginkan.
Untuk menghindari polling, Java memuat sebuah mekanisme interprocess communication yang elegan melalui method wait(), notify(), dan notifyAll(). Method ini diimplementasikan sebagai method final dalam Object, sehingga semua class mempunyai semua method tersebut. Semua ketiga method bisa dipanggil hanya dalam sebuah method synchronized. Walaupun secara lebih konsep lanjut, dari sebuah sudut pandang ilmu komputer, aturan untuk penggunaan method-method ini secara actual cukup sederhana:
-    wait() menyatakan thread yang memanggil menyerahkan monitor dan menjadi sleep sampai beberapa thread masuk monitor yang sama dan memanggil notify().
-    notify() membangunkan thread pertama yang telah memanggil wait() pada object yang sama.
-    notifyAll() membangunkan semua thread yang telah  memanggil wait() pada object yang sama. Prioritas thread tertinggi akan berjalan pertama kali.

Monday, August 20, 2012

E-book Ketidaklogisan para Filsuf v 0.1

berikut adalah link download buku Tahafut al-Falasif. http://www.mediafire.com/?k2rkr7xklaakxvc
untuk versi satu hanya berisi bab pendahuluan dan beberapa pengantar.

Setelah pengantar, penulis memberikan sebuah daftar permasalahan yang mana pembahasan dalam buku ini akan diekspos kontradiksi nya yang melibatkan teori para filsuf.
Dan permasalahan tersebut terdapat dua puluh:
1.    Penyanggahan dari kepercayaan dalam keabadian dunia
2.    Penyanggahan dari kepercayaan mereka dalam sifat keberlangsungan dunia
3.    Pernyataan tidak jujur mereka bahwa Tuhan adalah Pencipta dari dunia ini, dan bahwa dunia ini adalah Ciptaan Nya.

Kitab Tahafut Al-Falasif - Al Ghozali - Terjemah Bahasa Indonesia - Pengantar Bag 2

Pengantar Satu


Marilah ketahui bahwa akan menjadi membosankan untuk merenungkan pada lama pada perbedaan di antara para filsuf itu sendiri. Dalam hal yang bertele-tele adalah tingkah laku mereka, dan perselisihan di antara mereka adalah terlalu banyak, dan pendapat mereka berserakan, dan cara-cara mereka berbeda-beda dan berliku-liku. Oleh karena itu kita akan membatasi perhatian kita pada ketidaklogisan yang ditemukan dalam teori filsuf-filsuf utama yang disebut sebagai para Filsuf, atau Guru Utama, karena dia telah membuat sistem untuk ilmu mereka dan menata ulang ilmu tersebut, yang menghapuskan semua yang diulang dalam pendapat para filsuf, dan menahan hanya yang menjadi dekat dengan prinsip dasar dan kecenderungan pemikiran para filsuf. Orang tersebut adalah Aristoteles, yang membantah semua pendahulunya, termasuk gurunya sendiri yang para filsuf sebut sebagai dewa Plato. Setelah menyanggah Plato, Aristoteles Memaaafkan dirinya sendiri dengan mengatakan “Plato adalah kesayangan kita, dan kebenaran adalah kesayangan juga, Bahkan, kebenaran lebih disayangi dari pada Plato.”
Kita telah menghubungkan cerita ini agar menunjukkan pada pandangan mereka tidak ada yang tetap dan sama dalam posisi filsuf. Mereka mendasari putusan mereka pada permasalahan yang tidak terjawab(konjengtur) dan spekulasi, tanpa ditolong oleh penyelidikan yang benar dan tidak dikuatkan oleh keimanan. Mereka mencoba untuk menduga kebenaran dari teori metafisika mereka dari kejelasan ilmu logika dan aritmetika. Dan metode ini terkadang membawa keyakinan bagi orang yang berpikiran lemah. Namun juka teori metafisis mereka telah menjadi sekuat dan sepasti pengetahuan aritmetis mereka, mereka tidak akan berbeda di antara mereka sendiri pada pertanyaan-pertanyaan metafisis karena mereka tidak berbeda pendapat dalam hal aritmatika.

Tuesday, August 14, 2012

Kitab Tahafut Al-Falasif - Al Ghozali - Terjemah Bahasa Indonesia - Pendahuluan Bag 1

Pendahuluan
Dengan menyebut nama Allah, yang Maha Pengasih, lagi Maha Penyayang.
Kita memohon kepada Tuhan, dalam nama kehebatannya yang mana melampaui semua batasan dan kemurahan-Nya yang di luar batas semua ukuran.
Untuk memberikan kepada kita cahaya petunjuk dan menghilangkan dari kita kegelapan dari kebodohan dan perbuatan salah. Untuk membuat kita menyukai orang-orang yang melihat kebenaran sebagai kebenaran dan memilih untuk mengikutinya dan orang –orang yang yang melihat kesalahan sebagai kesalahan dan memutuskan untuk menjauhi diri dari nya.

Untuk melimpahkan kepada kita kebahagiaan yang telah Dia janjikan kepada nabi dan rasul Nya. Untuk memulaikan kita pada perjalanan kita dari Rumah Khayalan kepada kebahagiaan yang besarnya tidak bisa diukur dengan pemahaman dan tingkat yang mana tidak bisa disulap oleh imajinasi.
Untuk memberikan kita, ketika setelah pembebasan dari ketakutan hari kiamat, kita mendekati kebahagiaan Surga. yang mana tidak ada mata yang pernah melihat, tidak ada telinga yang pernah mendengar, dan mana yang tidak pernah terjadi pada hati manusia; dan untuk menanamkan dengan kedamaian dan berkah , Manusia Terpilih, nabi kita Muhammad, manusia terbaik di antara semua umat manusia, dan keturunannya yang mulia, dan sahabatnya yang murni, yang menjadi kunci petunjuk dan lampu yang menyala dalam kegelapan.
Sekarang, saya telah mengamati bahwa terdapat sekelompok manusia yang percaya kepada kelebihan mereka dari pada yang lain karena kehebatan wawasan dan kecerdasan mereka. Mereka telah meninggalkan kewajiban agama yang telah islam wajibkan pada pengikutnya. Mereka tertawa pada perintah agama yang mana menyambungkan tindakan ibadah dan larangan dari hal-hal yang dilarang. Mereka menentang perintah dari Hukum yang Suci. Tidak hanya melangkahi batasan yang dituliskan oleh kitab suci, mereka bahkan telah meninggalkan Iman secara bersamaan , dengan menjadi bebas dalam spekulasi yang beragam dimana mereka telah mengikuti contoh dari orang –orang yang “mengubah manusia dari jalan Tuhan dan berusaha untuk membengkokannya dan tidak percaya dalam hidup untuk berakhir”. Bidah dari orang-orang ini mempunyai dasar hanya dalam sebuah penerimaan yang tidak dikritisi, seperti pada Yahudi dan Nasrani dari apapun yang orang dengar dari orang lain atau dilihat di sekitar. Mereka tidak bisa menghindarinya; karena dilahirkan kedalam sebuah lingkungan yang tidak islami, dan nenekmoyang mereka telah mengejar jalan yang tidak lebih baik. Pada tempat kedua, bidah tersebut dihasilkan dari penyelidikan teoretis yang mana merupakan hasil dari keraguan, yang secara skeptic, yang tidak dipandu, dan secara bodoh di atas pemikiran yang aneh. Masalah yang sama yaitu pada pembantah yang membahas pertanyaan tentang keimanan dan kepercayaan yang diangkat oleh orang-orang yang sengaja menginginkan pembaharuan.
Bidah di masa kami, telah mendengar nama yang menginspirasi mengagumkan dari orang –orang seperti Socrates, Hippocrates, Plato, Aristoteles, dan lain-lain. Mereka telah tertipu oleh hal-hal yang berlebihan yang dibuat oleh pengikut filusuf ini, berlebihan pada dampak yang para ahli di masa lalu memiliki kemampuan intelektual yan luarbiasa: bahwa prinsip yang mereka telah temukan tidak bisa dipertanyakan lagi: bahwa ilmu matematika, logika, fisika dan metafisika yang dikembangkan oleh mereka adalah yang paling mendalam : bahwa kecerdasan luar biasa mereka membenarkan upaya berani mereka untuk mengungkap hal-hal yang tersembunyi dengan cara deduktif: dan bahwa dengan semua kehalusan dari kecerdasan mereka dan keaslian dari  pencapaian mereka, mereka menolak otoritas hokum agama: menolak validitas dari isi positif dari agama sejarah dan percaya bahwa semua hal tersebut hanyalah kebohongan yang munafik dan dibuat-buat.

Tuesday, August 7, 2012

Pemrograman Web berbasis Model View Controller(MVC) dalam PHP

Pola(pattern) model view controller(MVC) adalah pola yang paling sering digunakan untuk aplikasi web saat ini di dunia. Pola ini telah digunakan untuk pertama kali dalam Smalltalk dan kemudian diadopsi dan dipopulerkan oleh Java. Pada saat ini terdapat lebih dari belasan framework web PHP berbasis pada pola MVC. Terlepas dari fakta bahwa pola MVC sangat popular dalam PHP, sangat sulit untuk menemukan sebuah panduan/tutorial yang tepat yang disertai oleh sebuah contoh source code yang sederhana. Hal tersebut lah yang menjadi tujuan tutorial ini.
Pola MVC memisahkan sebuah aplikasi dalam 3 modul: Model, View, dan Controller:
-    Model bertanggung jawab untuk mengelola data; model menyimpan dan mengambil entitas yang digunakan oleh sebuah aplikasi, biasanya dari sebuah database, dan berisi logika yang diimplementasikan oleh aplikasi.
-    View(presentasi) bertanggung jawab untuk menampilkan data yang disediakan oleh model dalam sebuah format tertentu. View mempunyai sebuah penggunaan yang sama dengan modul template yang ada dalam beberapa aplikasi web yang popular seperti wordpress, joomla, dll.
-    Controller menangani lapis model dan view agar bekerja sama. Controller menerima sebuah request dari client, memanggil model untuk melakukan operasi yang diminta dan mengirimkan data pada view. View memformat data untuk disajikan pada user, dalam sebuah aplikasi web sebagai sebuah keluaran html.


Gambar di atas berisi diagram kolaborasi MVC, di mana sambungan dan ketergantungan antara gambar bisa diamati.
Contoh singkat php disini mempunyai sebuah struktur sederhana, yang meletakkan tiap modul MVC dalam satu folder yang berbeda:
Controller
Controller adalah hal pertama yang mengambil sebuah request, melakukan parsing terhadap request tersebut, menginisialisasi dan memanggil model dan mengambil sebuah model response dan mengirimkan pada layer presentasi. Controller secara praktis adalah bahan pengikat antara Model dan View, sebuah framework kecil dimana Model dan View dipasang. Dalam implementasi php sederhana kita, controller diimplementasikan oleh hanya satu class yang tidak diduga, dinamakan controller. Titik masuk aplikasi akan berada pada index. File php index akan mengutus semua request pada controller:

Sunday, August 5, 2012

My Opinion on wired.com Review of Asus Google Nexus 7

This is my opinion about article from wired.com: http://www.wired.com/reviews/2012/07/lucky-number-7/
From the first statement of wired.com review, I see that Google Nexus 7 from Asus is not the only one which got 9, Apple iPad also got 9 which is manufactured by Apple. But on 7-inch tablet it is the only one which got 9.

Size does matter. Nexus 7 is indeed Google Nexus tablet but since it is smaller than iPad, there are some limitations for fast performance and for fun activity such as game. For certain game, view is everything, smaller size leads to smaller feature and graphics detail. There are so many preceding 7-inch tablet such as view pad which performs well on general utility except game, so Nexus-7 is not something surprising other than for gaming.

Saturday, August 4, 2012

Cuplikan Sejarah Perang Sipil Amerika

Pada 1 april 1965, serombongan dari tentara Union terkejut oleh pemandu dari Konfederasi yang sendirian dala sebuah pengosongan White Oak Road, beberapa mil diluar Petersburg, Virginia. Akhir dari pertemuan tersebut datang dengan cepat untuk pihak Selatan. Pada saat itu juga, Kavaleri Mayor Jendral Philip Sheridan telah menguasai sambungan jalan utama ke barat dari Five Forks, dan tentara dari sungai Potomac siap untuk memutuskan sambungan jalur rel terakhir untuk mengepung Petersburg. Tentara Jendral Robert E. Lee dari confederate memegang kendali kota, menghadapi kemungkinan untuk mengadakan pertempuran dengan musuh secara terbuka sekali lagi setelah beberapa bulan diam siaga perang.

Patroli Union menjadi percaya diri ketika tiga anggotanya memergoki seorang pihak selatan yang compang-camping secara terbuka. Para Prajurit memanggilnya untuk menyerah. Namun, jaminan-diri mereka menghilang ketika dia tidak hanya gagal menjatuhkan senjatanya, namun mengayunkan senjatanya untuk melindungi para Yankees. Segera, mereka mengenali bagiannya seperti sebuah senjata berulang Spencer. Terkejut dan terancam oleh kepemilikan senjata api tersebut, tentara Federal tanpa perlawanan meletakkan senapan api mereka dan mengangkat tangan mereka. Mengetahui kapasitas senjata untuk pemakaian bahan peledak dalam pergantian yang cepat, mereka menyerah, terancam oleh kepemilikan senjata yang lebih hebat pada pihak selatan.prajurit Berry Benson, seorang anggota dari satuan elit penembak tajam Carolina Selatan, yang membariskan tawanannya ke belakang. Yang dia tahu bahwa peluru Spencer nya kosong. Dia kehabisan isi ulang peluru untuk senjata yang diambil hari sebelumnya, menghabiskan persediaannya yang menipis untuk empat puluh peluru dalam mengalakan kembali sebuah serangan Federal.

Friday, August 3, 2012

Vocabulary Bahasa Inggris yang Jarang Digunakan (Part 2)

Berikut VOCAB yang saya temukan di test verbal GRE:
Scintillating: gemilang
Verbose: bertele-tele
quiescent: diam
succinct: singkat
Lugubrious: suram, murung
Lachrymose: yang suka menangis
reviled: dicerca
providential: bernasib baik
rubicund: berwajah merah
Mallard

Thursday, August 2, 2012

Vocabulary unik dalam bahasa Inggris

beberapa waktu ini saya belajar untuk persiapan tes GRE(Graduate Record Examination) yang general salah satu tes nya adalah tes Verbal namun dalam bahasa Inggris, tes seperti ujian masuk CPNS juga sering menggunakan tes ini untuk tes tulis namun dalam bahasa Indonesia. Uniknya, tes GRE seringkali menggunakan kosakata bahasa Inggris yang jarang digunakan. berikut adalah contoh-contohnya:
Laudatory: Yang bersifat pujian
Prestidigitation: Penyulapan
Ephemeral: tidak kekal
Jaded: Letih
superfluous: tidak berguna
gauche: meninggalkan
brackish: payau(agak asin)
Classic town hall in Germany