tag:blogger.com,1999:blog-59130961937645000462024-03-14T11:16:45.454+07:00Storm in My MindDani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.comBlogger33125tag:blogger.com,1999:blog-5913096193764500046.post-15974590800775060542008-11-20T11:30:00.000+07:002008-11-20T11:30:37.454+07:00Official Gmail Blog: Spice up your inbox with colors and themes<a href="http://danigunawan.com/2008/11/20/fitur-baru-gmail/">Fitur Baru Gmail</a>Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-9778000851039320092008-11-06T15:13:00.001+07:002008-11-06T15:13:37.000+07:00I'm Moving to danigunawan.comHalo.. i'm moving to http://danigunawan.comDani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-6397682056895088742007-12-19T09:29:00.000+07:002007-12-19T12:00:28.249+07:00Mencegah Direct Download<span style="font-weight: bold;">Contoh kasus:</span><br />Kita ingin menyediakan file pdf untuk di-download oleh user dan lokasi file tidak boleh diketahui oleh user. User hanya bisa men-download file dengan cara mengklik link. Bahasa yang digunakan adalah PHP.<br /><br /><span style="font-weight: bold;">Analisa:</span><br />Kita bisa membuat link yang ditujukan ke file yang akan di-download. Contoh kode seperti di bawah ini:<br /><br /><span style="font-weight: bold;">Code:</span><br /><span style="font-family:courier new;"><a href="myebook.pdf">Download MyEbook</a></span><br /><br />Apa yang terjadi kalau link seperti ini diklik? Hasilnya tergantung dengan browser yang bersangkutan. Bila plug-in untuk pdf reader terinstal, maka browser akan berbaik hati membuka file tersebut. Bagaimana bila tidak ada plug-in pdf reader? Maka akan muncul kotak dialog untuk men-download file tersebut.<br /><br />Satu masalah selesai bila user tidak memiliki plug-in pdf reader. Tetapi bagaimana dengan user yang punya? Tentu masalahnya tidak terselesaikan. Masalah lain muncul yaitu user mengetahui lokasi file tersebut, sehingga memungkinkan user melakukan direct download (men-download file langsung, dengan mengetikkan lokasinya di browser, tanpa melalui halaman download yang kita sediakan).<br /><br /><span style="font-weight: bold;">Penyelesaian:</span><br />Dibutuhkan sedikit programming (PHP) untuk menyelesaikan masalah ini.<br /><br />Berikut ini kode untuk mencegah direct download:<br /><br /><span style="font-family:courier new;"><?php</span><br /><br /><span style="font-family:courier new;">$task = $_REQUEST['task'];</span><br /><br /><span style="font-family:courier new;">switch($task) {</span><br /><span style="font-family:courier new;"> case 'download':</span><br /><span style="font-family:courier new;"> // lokasi file</span><br /><span style="font-family:courier new;"> $file_path = 'dl/myebook.pdf'; </span><br /> <br /><span style="font-family:courier new;"> // fungsi untuk mengambil nama file tanpa path</span><br /><span style="font-family:courier new;"> $file_name = basename($file_path);</span><br /><br /><span style="font-family:courier new;"> // ambil ukuran file</span><br /><span style="font-family:courier new;"> $fsize = filesize($file_path);</span><br /> <br /><span style="font-family:courier new;"> // set headers</span><br /><span style="font-family:courier new;"> header("Pragma: public");</span><br /><span style="font-family:courier new;"> header("Expires: 0");</span><br /><span style="font-family:courier new;"> header("Cache-Control: must-revalidate, post-check=0, pre-check=0");</span><br /><span style="font-family:courier new;"> header("Cache-Control: public");</span><br /><span style="font-family:courier new;"> header("Content-Description: File Transfer");</span><br /><span style="font-family:courier new;"> header("Content-Type: application/pdf");</span><br /><span style="font-family:courier new;"> header('Content-Disposition: attachment; filename="' . $file_name . '"');</span><br /><span style="font-family:courier new;"> header("Content-Transfer-Encoding: binary");</span><br /><span style="font-family:courier new;"> header("Content-Length: " . $fsize);</span><br /> <br /><span style="font-family:courier new;"> // mulai men-download dari sini</span><br /><span style="font-family:courier new;"> $file = @fopen($file_path,"rb");</span><br /><span style="font-family:courier new;"> if ($file) {</span><br /><span style="font-family:courier new;"> while(!feof($file)) {</span><br /><span style="font-family:courier new;"> print(fread($file, 1024*8));</span><br /><span style="font-family:courier new;"> flush();</span><br /><span style="font-family:courier new;"> if (connection_status()!=0) {</span><br /><span style="font-family:courier new;"> @fclose($file);</span><br /><span style="font-family:courier new;"> die();</span><br /><span style="font-family:courier new;"> }</span><br /><span style="font-family:courier new;"> }</span><br /><span style="font-family:courier new;"> @fclose($file);</span><br /><span style="font-family:courier new;"> }</span><br /> <br /><span style="font-family:courier new;"> break;</span><br /><span style="font-family:courier new;"> default:</span><br /><span style="font-family:courier new;"> echo '<a href="donlot.php?task=download">Download MyEbook</a>';</span><br /><span style="font-family:courier new;"> break;</span><br /><span style="font-family:courier new;">}</span><br /><br /><span style="font-family:courier new;">?></span><br /><br /><br />Yang perlu diperhatikan disini adalah pada baris:<br /><span style="font-family:courier new;">header('Content-Disposition: attachment; filename="myebook.pdf"');</span><br /><br />Baris inilah yang memerintahkan browser untuk memunculkan kotak dialog download file myebook.pdf walaupun sudah terdapat plug-in pdf reader pada browser.<br /><br />Untuk mengganti jenis file (exe atau zip), kita hanya perlu mengubah Content-Type.<br />Berikut adalah daftarnya:<br /><br /><span style="font-family:courier new;">// archives</span><br /><span style="font-family:courier new;">application/zip</span><br /><br /><span style="font-family:courier new;">// documents</span><br /><span style="font-family:courier new;">application/pdf</span><br /><span style="font-family:courier new;">application/msword</span><br /><span style="font-family:courier new;">application/vnd.ms-excel</span><br /><span style="font-family:courier new;">application/vnd.ms-powerpoint</span><br /><span style="font-family:courier new;"> </span><br /><span style="font-family:courier new;">// executables</span><br /><span style="font-family:courier new;">application/octet-stream</span><br /><br /><span style="font-family:courier new;">// images</span><br /><span style="font-family:courier new;">image/gif</span><br /><span style="font-family:courier new;">image/png</span><br /><span style="font-family:courier new;">image/jpeg</span><br /><span style="font-family:courier new;">image/jpeg</span><br /><br /><span style="font-family:courier new;">// audio</span><br /><span style="font-family:courier new;">audio/mpeg</span><br /><span style="font-family:courier new;">audio/x-wav</span><br /><br /><span style="font-family:courier new;">// video</span><br /><span style="font-family:courier new;">video/mpeg</span><br /><span style="font-family:courier new;">video/mpeg</span><br /><span style="font-family:courier new;">video/mpeg</span><br /><span style="font-family:courier new;">video/quicktime</span><br /><span style="font-family:courier new;">video/x-msvideo</span><br /><br />Untuk fungsi mendownload bisa dilihat dari komentar pada kode diatas (setelah baris <span style="font-family:courier new;">//mulai men-download dari sini</span>).<br /><br />Sebenarnya, apa sih tujuan mencegah direct download? Tujuannya adalah untuk mengecek berapa kali sebuah file di-download.<br /><br />Bila user diperbolehkan men-download langsung, tentu akan sulit melacak berapa kali file tersebut di-download.<br /><br /><br />Semoga bermanfaat... :)Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com1tag:blogger.com,1999:blog-5913096193764500046.post-69457697269989131752007-11-24T11:18:00.000+07:002007-11-24T11:49:29.163+07:00Koneksi Java & MySQLAgar aplikasi Java bisa terkoneksi dengan MySQL diperlukan driver sebagai perantara Java dan MySQL. Driver tersebut bisa di-download di situs resminya MySQL.<br /><br /><a href="http://dev.mysql.com/downloads/connector/j/3.0.html">[ Download MySQL Connector ]</a><br /><br />Ekstrak file hasil download (tipe file: *.jar). Salin file tersebut ke direktori <span style="font-weight: bold;">[instalasi jre]/lib/ext/</span>. Ok, aplikasi Java anda siap untuk dikoneksikan dengan MySQL.<br /><br /><span style="font-size:130%;">Uji Coba</span><br />Kode di bawah ini digunakan untuk menghubungkan Java dengan MySQL.<br /><span style="font-family:courier new;">/*</span><br /><span style="font-family:courier new;"> * DBConnection.java</span><br /><span style="font-family:courier new;"> *</span><br /><span style="font-family:courier new;"> * Created on 29 September 2007, 11:41</span><br /><span style="font-family:courier new;"> *</span><br /><span style="font-family:courier new;"> */</span><br /><br /><span style="font-family:courier new;">import java.sql.*;</span><br /><br /><span style="font-family:courier new;">/**</span><br /><span style="font-family:courier new;"> *</span><br /><span style="font-family:courier new;"> * @author Dani Gunawan</span><br /><span style="font-family:courier new;"> */</span><br /><span style="font-family:courier new;">public class DBConnection {</span><br /><span style="font-family:courier new;"> </span><br /><span style="font-family:courier new;"> /** Creates a new instance of DBConnection */</span><br /><span style="font-family:courier new;"> public DBConnection() {</span><br /><span style="font-family:courier new;"> }</span><br /><span style="font-family:courier new;"> </span><br /><span style="font-family:courier new;"> public Connection connect() {</span><br /><span style="font-family:courier new;"> Connection conn = null;</span><br /><br /><span style="font-family:courier new;"> try</span><br /><span style="font-family:courier new;"> {</span><br /><span style="font-family:courier new;"> String userName = "root";</span><br /><span style="font-family:courier new;"> String password = "";</span><br /><span style="font-family:courier new;"> String url = "jdbc:mysql://localhost/test";</span><br /><span style="font-family:courier new;"> Class.forName ("com.mysql.jdbc.Driver").newInstance ();</span><br /><span style="font-family:courier new;"> conn = DriverManager.getConnection (url, userName, password);</span><br /><span style="font-family:courier new;"> } catch (Exception e) {</span><br /><span style="font-family:courier new;"> e.printStackTrace();</span><br /><span style="font-family:courier new;"> conn = null;</span><br /><span style="font-family:courier new;"> } finally {</span><br /><span style="font-family:courier new;"> if (conn != null)</span><br /><span style="font-family:courier new;"> {</span><br /><span style="font-family:courier new;"> try</span><br /><span style="font-family:courier new;"> {</span><br /><span style="font-family:courier new;"> conn.close ();</span><br /><span style="font-family:courier new;"> }</span><br /><span style="font-family:courier new;"> catch (Exception ex) { </span><br /><span style="font-family:courier new;"> ex.printStackTrace();</span><br /><span style="font-family:courier new;"> }</span><br /><span style="font-family:courier new;"> }</span><br /><span style="font-family:courier new;"> }</span><br /><span style="font-family:courier new;"> </span><br /><span style="font-family:courier new;"> return conn;</span><br /><span style="font-family:courier new;"> }</span><br /><span style="font-family:courier new;">}</span><br /><br />Sedangkan kode di bawah ini untuk pengetesan koneksi.<br /><br /><span style="font-family:courier new;">/**</span><br /><span style="font-family:courier new;"> * TesConnection.java</span><br /><span style="font-family:courier new;"> */</span><br /><span style="font-family:courier new;">import java.sql.*;</span><br /><br /><span style="font-family:courier new;">public class TesConnection {</span><br /><br /><br /><span style="font-family:courier new;"> public static void main(String args[]) {</span><br /><br /><span style="font-family:courier new;"> Connection dbcon = new DBConnection().connect();</span><br /><span style="font-family:courier new;"> </span><br /><span style="font-family:courier new;"> if (dbcon != null) {</span><br /><span style="font-family:courier new;"> System.out.println("Database connection is successfully created");</span><br /><span style="font-family:courier new;"> } else {</span><br /><span style="font-family:courier new;"> System.out.println("Database connection isn't successfully created");</span><br /><span style="font-family:courier new;"> }</span><br /><span style="font-family:courier new;"> }</span><br /><br /><span style="font-family:courier new;">}</span><br /><br />How to Use Them?<br />Letakkan kedua source pada folder yang sama. Kompile DBConnection.java, kemudian TesConnection.java.<br /><span style="font-family: courier new;"><br />javac DBConnection.java</span><br /><span style="font-family: courier new;">javac TesConnection.java</span><br /><br />Atau kalo mo praktis, gunakan wildcard asterisk (*).<br /><br /><span style="font-family: courier new;">javac *.java</span><br /><br />Jalankan TesConnection:<br /><br /><span style="font-family: courier new;">java TesConnection</span><br /><br />Bila hasilnya:<br /><br /><span style="font-weight: bold;">Database connection is successfully created</span><br /><br />artinya database telah terkoneksi, tetapi bila:<br /><br /><span style="font-weight: bold;">Database connection isn't successfully created</span><br /><br />artinya database anda belum terkoneksi.<br />Kemungkinan:<br />- MySQL belum diinstal<br />- Nama database tidak ditemukan<br />- User atau password salah<br /><br />Kedua source di atas dapat di-<span style="font-style: italic;">download</span> melalui link di bawah:<br /><br /><a href="http://web.usu.ac.id/dagu/download/tesdb.zip">[ Download file contoh ]</a><br /><br /><span style="font-weight: bold;">NB: </span><br />Percobaan dilakukan di sistem operasi Windows XP Sp 2, belum pernah dilakukan di sistem operasi lain.<br /><br /><br />Semoga bermanfaat... :)Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-62540034281845987122007-11-15T08:58:00.000+07:002007-11-15T10:03:40.870+07:00Method Overloading<div style="text-align: justify;font-family:georgia;">Method overloading digunakan untuk membuat beberapa fungsi (method) dengan nama yang <span style="font-weight: bold;">SAMA</span> dan mengerjakan tugas yang <span style="font-weight: bold;">MIRIP</span>. Tujuannya, agar programmer tidak kesulitan dalam mengingat sebuah fungsi yang tugasnya mirip. Misalnya untuk membuat fungsi perkalian. Ada perkalian yang membutuhkan dua argumen dan ada perkalian yang membutuhkan tiga argumen (tugasnya mirip, yaitu sama-sama mengalikan argumen, hanya jumlah argumen yang berbeda). Kalau dibuat fungsi dengan nama yang berbeda, kemungkinan programmer akan repot. Contoh, untuk fungsi perkalian dengan dua argumen, namanya adalah <span style="font-weight: bold;">kali1(bil1, bil2)</span>. Sedangkan untuk perkalian dengan tiga argumen namanya adalah <span style="font-weight: bold;">kali2(bil1, bil2, bil3)</span>. Repot kan? Gimana kalo ada sepuluh perkalian? Bandingkan bila namanya <span style="font-weight: bold;">kali(bil1, bil2) </span>dan <span style="font-weight: bold;">kali(bil1, bil2, bil3)</span>. Kita cuma perlu mengingat jumlah argumen dari fungsi <span style="font-weight: bold;">kali</span>.<br /><br />So, gimana cara compiler C++ membedakan method tersebut, padahal namanya sama? Compiler C++ memilih fungsi dengan mengamati jumlah, tipe data dan urutan argumen. Nah, dari sini jelas bahwa compiler menggunakan daftar parameter untuk membedakan fungsi dengan nama yang sama. Bukan membedakan dengan return type-nya (nilai balik).<br /><br />Sehingga, untuk membuat method overloading diperlukan setidaknya satu dari tiga syarat di bawah ini:<br /><ul><li>mempunyai jumlah argumen berbeda.</li><li>mempunyai tipe data argumen yang berbeda.</li><li>mempunyai urutan argumen yang berbeda.</li></ul><br /><span style="font-weight: bold;">Contoh #1 (jumlah argumen berbeda):</span><br /><br /><span style="font-family:courier new;">// method kali dengan dua argumen (bil1 dan bil2)</span><br /><span style="font-family:courier new;">int kali(int bil1, int bil2) {</span><br /><span style="font-family:courier new;"> return bil1*bil2</span><br /><span style="font-family:courier new;">}</span><p></p><span style="font-family:courier new;">// method kali dengan tiga argumen (bil1, bil2 dan bil3)</span><span style="font-family:courier new;"><br />int kali(int bil1, int bil2, int bil3) {</span><br /><p><span style="font-family:courier new;"> return bil1*bil2*bil3;</span><br /><span style="font-family:courier new;">}</span><br /><br />Method kali pada contoh di atas <span style="font-weight: bold;">VALID</span> karena mempunyai <span style="font-weight: bold;">jumlah argumen yang berbeda</span>.<br /><br /><br /><span style="font-weight: bold;">Contoh #2 (mempunyai tipe data argumen yang berbeda):</span><br /><br /><span style="font-family:courier new;">// method tampilkanNilai mempunyai argumen bertipe char</span><br /><span style="font-family:courier new;">void tampilkanNilai(char nilai) {</span><br /><span style="font-family:courier new;"> cout << "Nilai (dalam huruf): " << nilai;</span><br /><span style="font-family:courier new;">}</span></p><span style="font-family:courier new;">// method tampilkanNilai mempunyai argumen bertipe int</span><br /><span style="font-family:courier new;">void tampilkanNilai(int nilai) {</span><br /><span style="font-family:courier new;"> cout << "Nilai (dalam angka): " << nilai;</span><br /><span style="font-family:courier new;">}</span><br /><p>Contoh method tampilkanNilai diatas <span style="font-weight: bold;font-family:georgia;" >VALID</span> karena mempunyai <span style="font-weight: bold;font-family:georgia;" >tipe data argumen yang berbeda</span> walaupun memiliki jumlah argumen yang sama.<br /><br /><br /><span style="font-weight: bold;">Contoh #3 (urutan argumen berbeda):</span><br /><br /><span style="font-family:courier new;">// method kali dengan tipe data bil1 adalah int</span><br /><span style="font-family:courier new;">// dan bil2 adalah double</span><br /><span style="font-family:courier new;">double kali(int bil1, double bil2) {</span><br /><span style="font-family:courier new;"> return bil1*bil2;</span><br /><span style="font-family:courier new;">}</span></p><span style="font-family:courier new;">// method kali dengan tipe data bil1 adalah double</span><br /><span style="font-family:courier new;">// dan bil2 adalah int</span><br /><span style="font-family:courier new;">double kali(double bil1, int bil2) {</span><br /><span style="font-family:courier new;"> return bil1*bil2;</span><br /><span style="font-family:courier new;">}</span><br /><p>Method kali di atas <span style="font-weight: bold;">VALID</span> karena <span style="font-weight: bold;">urutan argumen berbeda</span>. Pada method kali yang pertama bil1 bertipe data int kemudian diikuti oleh bil2 dengan tipe data double. Sedangkan pada method kali yang kedua, bil1 bertipe data double diikuti oleh bil2 yang bertipe data int.<br /><br /><br /><span style="font-weight: bold;">PERLU DIINGAT!!!</span><br />Seringnya programmer melakukan kesalahan ketika membuat method overloading adalah dengan membuat daftar parameter yang sama dengan return type (nilai balik) yang berbeda. Hal ini menghasilkan <span style="font-weight: bold;">SYNTAX ERROR</span>.<br /><br />Contoh yang salah:<br /><br /><span style="font-family:courier new;">// return type: int</span><br /><span style="font-family:courier new;">int hitungUmur(int umur)</span><br /><span style="font-family:courier new;">{</span><br /><span style="font-family:courier new;"> return umur + 2;</span><br /><span style="font-family:courier new;">}</span></p><span style="font-family:courier new;">// return type: void</span><br /><span style="font-family:courier new;">void hitungUmur(int umur)</span><br /><span style="font-family:courier new;">{</span><br /><span style="font-family:courier new;">cout<<"umur siswa setelah lulus kuliah= "<<umur+2;</span><br /><span style="font-family:courier new;">}</span><br /><p><span style="font-weight: bold;">SYNTAX ERROR</span>. Method tidak dapat di-<span style="font-style: italic;">overload</span> karena mempunyai jumlah argumen yang sama dengan <span style="font-weight: bold;">tipe data yang sama</span>.<br /><br /><br />Semoga bermanfaat... :)<br /><br /></p></div>Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-91799739229766024762007-11-14T13:09:00.000+07:002007-11-14T13:13:04.063+07:00WNI: Windows Negara Indonesia<div style="text-align: justify;">Di beberapa negara ada M$ Windows yang bahasanya sesuai dengan bahasa negara tersebut. Tetapi di Indonesia merupakan pengecualian. Kita masih menggunakan windows berbahasa Inggris. Pertanyaannya, mengapa? Apakah karena rakyat Indonesia bukanlah lahan yang potensial sebagai pengguna Windows (asli)? Atau memang rakyat lebih senang menggunakan bahasa Inggris?<br /><br />Dulu isu ini sempat merebak. Hingga dibuatlah Windows Linguist pack bahasa Indonesia sebagai pengganti Windows berbahasa Indonesia. Tetapi ada kenyataannya, tidak banyak pengguna Windows yang memanfaatkan linguist pack ini. Sebagian mencoba meng-install-nya tetapi kemudian meng-uninstall lagi. Banyak istilah-istilah komputer dalam bahasa Indonesia yang malah terdengar "asing".<br /><br /><span style="font-weight: bold;">Siapa yang Salah?</span><br />Ga enak rasanya kalo nyalahin orang. Menurut saya ada sekelompok orang yang sedikit banyaknya bertanggung jawab atas minimnya penggunaan istilah-istilah komputer di dalam bahasa Indonesia. Mereka adalah para ahli bahasa. Mengapa? Karena merekalah yang terlambat mengkonversi istilah komputer ke dalam bahasa Indonesia. Ketika orang-orang sudah familiar dengan mouse, baru muncul istilah tetikus. Tidak familiar dan terkesan aneh. Tak heran jarang yang menggunakan tetikus dalam keseharian (atau bahkan tidak ada). Belum pernah saya jumpai orang yang berkata seperti ini, "bang, beli tetikus optik".<br /><br /><span style="font-weight: bold;">Solusinya Gimana?</span><br />Ga ada gunanya nyalah-nyalahin orang. Mending kita cari solusi. Bagaimana? Ya sosialisasi la. Yang dilakukan beberapa majalah atau tabloid komputer sudah bagus. Mereka menggunakan istilah-istilah komputer dalam bahasa Indonesia untuk setiap artikel yang diterbitkan. Istilah seperti mengunduh (download), unggah (upload), pindai (scan), laman (homepage), dan lain-lain sudah sering digunakan di beberapa majalah atau tabloid komputer. Guru-guru komputer juga mestinya membiasakan pemakaian istilah-istilah tersebut. Awalnya pasti aneh, tapi kalau sudah terbiasa pasti bisa. Tapi yang paling utama, biasakan dari diri kita sendiri.<br /><br /><span style="font-weight: bold;">The Fact</span><br />Ga bisa dipungkiri, istilah-istilah tersebut memang aneh (kurang familiar). Gw aja bisa dikatakan hampir tidak pernah menggunakan istilah-istilah (yang aneh, contoh: tetikus, mengunduh, menguggah) tersebut. Mungkin karena udah kebiasaan menggunakan istilah aslinya. Mungkin gw masih belum bisa bangga ama bahasa Indonesia...<br /><br /><span style="font-weight: bold;">Apa Aja Istilah Komputer yang Baku?</span><br />Panduan pembakuan istilah beserta istilah-istilah komputer yang baku bisa anda lihat di <a href="http://vlsm.org/etc/baku-0.txt">http://vlsm.org/etc/baku-0.txt</a>.<br /><br /><br />Semoga bermanfaat... :) <br /><br /></div>Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-43989861091367812962007-11-13T12:14:00.000+07:002007-11-13T12:35:29.374+07:00Ngecek Kapasitas Harddisk di LinuxBaru-baru ini sering ngakses server linux. Karena tampilan item putih (eh nggak ding kalo pake vim :D), jadi agak-agak ngeraba. Ada satu masalah yang sering ku alami (dan temenku) karena ga terlalu biasa dengan command di linux. Masalahnya yaitu bagaimana mengecek kapasitas harddisk. Kemaren dulu udah pernah dikasi tau ama temen. Yah karena jarang dipake, jadinya lupa. Supaya ga lupa, aku sharing aja di blog. Ntar kalo lupa tinggal buka blog.. :)<br /><br />Perintah yang dipake untuk ngecek kapasitas harddisk adalah <span style="font-family:courier new;">df</span>. Penjelasan singkatnya: <span style="font-style: italic;">df - report filesystem disk space usage</span>. Kalo mo lebih jelas lagi pake <span style="font-family:courier new;">man df</span>.<br /><br />Contoh penggunaan:<br /><span style="font-family:courier new;">$ df</span><br /><br /><span style="font-family:courier new;">Filesystem 1K-blocks Used Available Use% Mounted on</span><br /><span style="font-family:courier new;">/dev/sda1 14877092 9090552 5018636 65% /</span><br /><span style="font-family:courier new;">/dev/shm 1037556 0 1037556 0% /dev/shm</span><br /><span style="font-family:courier new;">/dev/sdb1 68890968 24462748 40872236 38% /home</span><br /><span style="font-family:courier new;">/dev/sda5 14877060 6418492 7690664 46% /var</span><br /><br />Walah, ga jelas. Biar jelas, ditambahin parameter <span style="font-family:courier new;">-h</span>.<br /><br /><span style="font-family:courier new;">$ df -h</span><br /><span style="font-family:courier new;">Filesystem Size Used Avail Use% Mounted on</span><br /><span style="font-family:courier new;">/dev/sda1 15G 8.7G 4.8G 65% /</span><br /><span style="font-family:courier new;">/dev/shm 1014M 0 1014M 0% /dev/shm</span><br /><span style="font-family:courier new;">/dev/sdb1 66G 24G 39G 38% /home</span><br /><span style="font-family:courier new;">/dev/sda5 15G 6.2G 7.4G 46% /var</span><br /><br />Nah, jadi lebih mudah dimengerti kaan...?<br /><br /><br />Semoga bermanfaat... :)Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-14995169668162879692007-11-10T13:15:00.000+07:002007-11-10T13:21:23.113+07:00Custom Icon Flash Disk<div style="text-align: justify;">Flash disk kini makin menjamur. Menggantikan dominasi disket beberapa tahun yang lalu. Jelas saja, harga yang murah dengan kemampuan menyimpan data yang besar. Flash disk dengan kapasitas 4 GB dijual dengan harga sekitar 350 ribu (Sumber: <a href="http://www.bhinneka.com/">www.bhinneka.com</a>, 10 Nopember 2007). Kalo mau yang lebih murah lagi bisa ke pajus (pajak USU). Flash disk dengan kapasitas 1 GB dijual dengan harga sekitar 100 ribuan. Apalagi kini rental-rental komputer sudah mendukung penggunaan flash disk. Makin banyak yang "say good bye" ama disket.<br /></div><br /><div style="text-align: justify;">Kebanyakan pengguna flash disk sih nerima flash disk apa adanya. Nah, supaya flash disk kita berbeda ama "pengguna biasa", icon flash disk kita ubah dengan icon pilihan/bikinan kita sendiri. Caranya gampang:<br /></div><br /><div style="text-align: justify;">(1) Siapin icon favorit kamu. File harus berekstensi *.ico dengan ukuran 16x16 atau 32x32 pixel. Untuk tipe file gambar yang lain saya belum coba. Kalo nilai menggambar kamu pas di esde tinggi, buat icon sendiri. Download aja software pembuat icon. Ada yang gratis dan ada yang bayar tentunya. Membuat icon secara on line juga ada. Salah satu situsnya adalah <a href="http://www.rw-designer.com/online_icon_maker.php">http://www.rw-designer.com/online_icon_maker.php</a>. Simpan icon kamu di flash disk.<br /></div><br /><div style="text-align: justify;">(2) Buka notepad, copas (copy paste) kode di bawah. Simpan di flash disk dengan nama autorun.inf.<br /></div><blockquote><span style="font-weight: bold;">[autorun]</span><br /><span style="font-weight: bold;">icon=nama_file_icon.ico</span></blockquote><div style="text-align: justify;">Atribut icon berisi nama file icon yang akan kita jadikan icon flash disk (beserta path-nya).<br /></div><br /><div style="text-align: justify;">(3) Buka windows explorer, dan lihat icon flash disk. Bila perubahan belum terlihat, restart PC anda.<br /></div><br />Hasil:<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJXLFlAwB3U5Qlzpu-jCmBRYLwvvMeI1HJY2Ys_EmuwXxxMv0NAziCQy8zYMzsiexUJLqKyVD7GLUPKOLGi22Qt9P3T3Bu4NcTCYOzzThKenSZ2iunnFFyatFLZvyYlMnpOGB1WPDVoTx9/s1600-h/list.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJXLFlAwB3U5Qlzpu-jCmBRYLwvvMeI1HJY2Ys_EmuwXxxMv0NAziCQy8zYMzsiexUJLqKyVD7GLUPKOLGi22Qt9P3T3Bu4NcTCYOzzThKenSZ2iunnFFyatFLZvyYlMnpOGB1WPDVoTx9/s400/list.jpg" alt="" id="BLOGGER_PHOTO_ID_5131091835182946082" border="0" /></a><br /><div style="text-align: center;"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjR6UO1LcgbgvK8rh7gVfnQqwgr9KllqoGdIsQ9_2mzjxF6tSHEhWiY0_IzMb8Ea-KByP5rN38itRY26Sqk2JeqKJV7082ZAxtVCNWPhnjdyYZSO-xL7W0ZvQszAExIT7gBnjc_97e3NtBe/s1600-h/thumb.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjR6UO1LcgbgvK8rh7gVfnQqwgr9KllqoGdIsQ9_2mzjxF6tSHEhWiY0_IzMb8Ea-KByP5rN38itRY26Sqk2JeqKJV7082ZAxtVCNWPhnjdyYZSO-xL7W0ZvQszAExIT7gBnjc_97e3NtBe/s400/thumb.jpg" alt="" id="BLOGGER_PHOTO_ID_5131091839477913394" border="0" /></a><span style="font-style: italic;font-size:85%;" >Flash disk berlabel <span style="font-weight: bold;">DANI-FLASH</span> mempunyai custom icon.<br />Bandingkan dengan flash disk berlabel <span style="font-weight: bold;">GWG</span>.</span><br /></div><br /><br />NB:<br /><div style="text-align: justify;"><ul><li>Sistem operasi yang digunakan adalah M$ Windows XP SP2. Belum dites ke sistem operasi laen.</li><li>Sesi berikutnya, saya ingin membahas tentang bagaimana cara mengamankan autorun.inf anda dari serangan virus yang mengubah paksa autorun.inf, so keep tracking this site!</li></ul><br />Semoga bermanfaat... :)<br /><br /></div>Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-41379069169640799832007-11-10T10:25:00.001+07:002007-11-10T10:39:08.632+07:00Kepala Tengkorak TerbangBosen ga da kerjaan? Ato lagi nunggu file yang di-download? Daripada bengong, cobain aja script iseng di bawah. Ga bahaya kok.<br /><br /><div style="text-align: justify;">1. Buka <a href="http://images.google.com/">http://images.google.com</a>. Ketikkan "<span style="font-weight: bold;">skull head</span>" atau kata apa aja yang kamu mau.<br /></div><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixfJO5UoNffs9_GIHO2nqK8jmzRkLgvzS07stG3URP5K50kA2Ylt1CDUVxccCZumxZK3aGvwUFMHiOB-WJHNhEYknvEPDY9Mf0wHeZW3io5hBStqbO8QNZxAtPr8D-YCgZZ4ZghLc5gUmr/s1600-h/search.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixfJO5UoNffs9_GIHO2nqK8jmzRkLgvzS07stG3URP5K50kA2Ylt1CDUVxccCZumxZK3aGvwUFMHiOB-WJHNhEYknvEPDY9Mf0wHeZW3io5hBStqbO8QNZxAtPr8D-YCgZZ4ZghLc5gUmr/s400/search.jpg" alt="" id="BLOGGER_PHOTO_ID_5131047949207115538" border="0" /></a><br /><div style="text-align: justify;">2. Tekan enter dan dalam hitungan detik (kalo koneksinya ngebut) akan muncul gambar tengkorak.<br /></div><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEja1-lQtMyr_oji0oJhNy5SihWr54CNmGt_bz7Jhui7b0XtYsgRTtbmAw5i81ulOQdazmL9KG_4SrTXJK8T9o1atcjUKd6yRDzsJRiEfOf6jf5OXH9NMxIUlyD-mxg5LhjZlu6U6BRit-yE/s1600-h/hasil.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEja1-lQtMyr_oji0oJhNy5SihWr54CNmGt_bz7Jhui7b0XtYsgRTtbmAw5i81ulOQdazmL9KG_4SrTXJK8T9o1atcjUKd6yRDzsJRiEfOf6jf5OXH9NMxIUlyD-mxg5LhjZlu6U6BRit-yE/s400/hasil.jpg" alt="" id="BLOGGER_PHOTO_ID_5131047944912148226" border="0" /></a><br /><div style="text-align: left;">3. Hapus url di address bar dan copas (copy paste) kode di bawah ke address bar.<br /><div style="text-align: left;"><span style="font-weight: bold;"></span><blockquote><span style="font-weight: bold;">javascript:R=0; x1=.1; y1=.05; x2=.25; y2=.24; x3=1.6; y3=.24; x4=300; y4=200; x5=300; y5=200; DI= document.images; DIL=DI.length; function A(){for(i=0; i<DIL; i++){DIS=DI[ i ].style; DIS.position='absolute'; DIS.left=Math.sin(R*x1+i*x2+x3)*x4+x5; DIS.top=Math.cos(R*y1+i*y2+y3)*y4+y5}R++}setInterval('A()',5 ); void(0)</span><br /></blockquote></div><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgu6TnrcMRzq43Ee4xS58XUHIFF7BV7qRFwnuU2DyT1ClUMLwNMUvS1v8R8QcCWjQJ5p9uMsQhc0FFUQQxtPI9MHUgHc_alcD-R92AgzyjpgJcjkRXazL7nxE7Wbz2GSwSNHMMv9_b3nS4y/s1600-h/address.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgu6TnrcMRzq43Ee4xS58XUHIFF7BV7qRFwnuU2DyT1ClUMLwNMUvS1v8R8QcCWjQJ5p9uMsQhc0FFUQQxtPI9MHUgHc_alcD-R92AgzyjpgJcjkRXazL7nxE7Wbz2GSwSNHMMv9_b3nS4y/s400/address.jpg" alt="" id="BLOGGER_PHOTO_ID_5131047936322213602" border="0" /></a><br /></div><dil;></dil;><dil;>4. Tekan enter dan lihat apa yang terjadi...</dil;><b><br /></b><div style="text-align: justify;"><dil;></dil;></div><dil;><b><br /></b></dil;><b><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEha26ciYgXsx4dgtxh7FoVj63AqKVl1lVAsU7xnwLtNjgrW4hhaAMvWkWcU0f_GKlqBq7fNHLmXgYVSy6beXauNxJKKXiP2PGPuhkwoIgX0VC67LVAQ3YyExgr4Os9S67eZS6uqA3fHRTze/s1600-h/gbr_terbang.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEha26ciYgXsx4dgtxh7FoVj63AqKVl1lVAsU7xnwLtNjgrW4hhaAMvWkWcU0f_GKlqBq7fNHLmXgYVSy6beXauNxJKKXiP2PGPuhkwoIgX0VC67LVAQ3YyExgr4Os9S67eZS6uqA3fHRTze/s400/gbr_terbang.jpg" alt="" id="BLOGGER_PHOTO_ID_5131047940617180914" border="0" /></a><dil;><br /></dil;></b><div style="text-align: justify;"><dil;>Sebenarnya udah lama sih dapet dari temen. Tapi tadi ketemu script ini lagi pas browsing sambil nungguin instalasi VS 2005.</dil;><br /><dil;></dil;></div><dil;><b><br /></b></dil;>Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-3317144291775151742007-11-09T10:49:00.000+07:002007-11-15T08:56:20.173+07:00Customizing Flash Disk Background ImageBosan dengan tampilan background flash disk yang "terlalu biasa"? Pengen nampilin gambar pacar anda di background flash disk? Bisa aja. Buka notepad, copas (copy paste) kode di bawah ini, dan simpan dengan nama "desktop.ini" (tanpa tanda kutip). Jangan lupa mengganti parameter Save as type menjadi All Files.<br /><div style="text-align: justify;"><blockquote style="font-family: courier new;">[extshellfolderviews]<br />[{BE098140-A513-11D0-A3A4-00C04FD706EC}]<br />ICONAREA_IMAGE=\dagu.net\pics\capoera_sunset.jpg<br />ICONAREA_TEXT=0x0000FF</blockquote><span style="font-weight: bold;">ICONAREA_IMAGE</span> merupakan path dimana anda menyimpan gambar yang akan dijadikan background flash disk. Tipe gambar boleh jpg atau gif (dua tipe file ini yang telah saya coba, untuk tipe yang lain anda bisa eksperimen sendiri).<br /><br /><span style="font-weight: bold;">ICONAREA_TEXT</span> adalah hexadecimal dari warna teks. Standar warna yang digunakan adalah RGB (Red Green Blue). Susunannya adalah 0xBBGGRR. Diisi dengan dua digit hexadecimal (00 - FF). 0x0000FF adalah warna merah, 0x00FF00 adalah warna hijau, 0xFF0000 adalah warna biru. Keterangan lebih lanjut mengenai RGB bisa anda cari di <a href="http://www.google.co.id/search?q=rgb">Google</a>.<br /><br /><a href="http://www.pitt.edu/%7Enisg/cis/web/cgi/rgb.html">Klik di sini untuk melihat tabel warna RGB</a> atau cari di <a href="http://www.google.co.id/search?q=rgb+color+table">Google</a>.<br /><br />Yang perlu diperhatikan adalah, ICONAREA_TEXT menggunakan format BGR. Jadi untuk menggunakan hexadecimal yang sudah anda peroleh dari tabel warna RGB, anda harus membaliknya terlebih dahulu. Contoh, bila hexadecimal yang sudah anda peroleh adalah Light Slate Blue (<span style="font-weight: bold;">8470FF</span>), maka nilai ICONAREA_TEXT anda adalah <span style="font-weight: bold;">0xFF7084</span>.<br /><br /><div style="text-align: center;"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKxacrxu4RzvNF_boJxFx4mICG7flJ03WoDJjiuye-9LiJfspUrvwSItC-S9Nx-_jmWoDpb-dQvyb5XbSWLd-9uB9W_8X6R4tb-3eyMmYMnxhQXnnPZb5sgMF3Lu6uFkPuo4RVZ8NQlw7P/s1600-h/fd_bg.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKxacrxu4RzvNF_boJxFx4mICG7flJ03WoDJjiuye-9LiJfspUrvwSItC-S9Nx-_jmWoDpb-dQvyb5XbSWLd-9uB9W_8X6R4tb-3eyMmYMnxhQXnnPZb5sgMF3Lu6uFkPuo4RVZ8NQlw7P/s400/fd_bg.jpg" alt="" id="BLOGGER_PHOTO_ID_5132879315106470610" border="0" /></a><span style="font-style: italic;font-size:85%;" >Contoh background di flash disk</span><br /></div><br />NB:<br /><ul><li>Sistem operasi yang digunakan adalah M$ Windows XP SP2. Belum dites ke sistem operasi laen.</li><li>Sesi berikutnya, saya ingin membahas tentang bagaimana cara mengamankan desktop.ini anda dari serangan virus yang mengubah paksa desktop.ini, so keep tracking this site!</li></ul><br /><br />Semoga bermanfaat... :)<br /><br /></div>Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-5983028623627604742007-11-07T13:35:00.000+07:002007-11-07T13:55:59.936+07:00Hacking Microsoft Game: Pinball<div style="text-align: justify;">Bang Zack dan Juki sedang bersaing untuk memperebutkan Khalila. Yah, namanya juga bersaing, apa aja dijadiin alasan supaya yang saingannya ga ngedeketin target. Kali ini bang Zack ngajak Juki maen Pinball, sebuah permainan standar dari M$ Windows XP. Mereka sepakat, siapa yang paling tinggi nilainya, maka dia berhak mendekati Khalila tanpa diganggu selama sehari.<br /><br />Udah bisa ditebak, Juki yang mantan pencopet selalu saja kalah kalau bersaing dengan bang Zack, si penjagal kebo. Walaupun mereka berdua ga terlalu bisa maen komputer, tetep aja ada salah satu yang lebih unggul. Orang itu adalah bang Zack.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhw075NuNFLnU2Z6x8JKZiwFcqoL8AXPrLlZ5EHkIu7XQ-k9GZURrQsC09clQHCTk4cAoHRmYji2mSS8oiPIep2UAzKHG8O_MjPU96_FW5QUuHpVeJSb-KRFwjaWRzxeQjgjp_3C5-Nw3jk/s1600-h/highscore.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhw075NuNFLnU2Z6x8JKZiwFcqoL8AXPrLlZ5EHkIu7XQ-k9GZURrQsC09clQHCTk4cAoHRmYji2mSS8oiPIep2UAzKHG8O_MjPU96_FW5QUuHpVeJSb-KRFwjaWRzxeQjgjp_3C5-Nw3jk/s400/highscore.jpg" alt="" id="BLOGGER_PHOTO_ID_5129983923275645890" border="0" /></a><br />Juki meratapi nasibnya yang tidak akan bertemu dengan Khalila, pujaan hatinya, hari ini. Tapi Juki ga kehilangan akal. Setelah mencari informasi ke seluruh dunia (Internet), Juki akhirnya mengetahui bahwa M$ Windows menyimpan konfigurasi software di registry. Nilai permainan pinball juga disimpan di registry. Lokasinya adalah di <span style="font-weight: bold;">HKCU\Software\Microsoft\Plus!\Pinball\SpaceCadet</span>.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0Gh_HjdCiGFhFdTQ-FChqMH1Aio6R52lxEhIF41egpVhmXO8BAuRgxz3K7LfNawYi0euHVBzhFRUjmnF4ErihP-xR8G1fFMLvOWVQi9eu1B65QrNn_nUhTUqjjA39teaw6r03tY0jsQTK/s1600-h/path.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0Gh_HjdCiGFhFdTQ-FChqMH1Aio6R52lxEhIF41egpVhmXO8BAuRgxz3K7LfNawYi0euHVBzhFRUjmnF4ErihP-xR8G1fFMLvOWVQi9eu1B65QrNn_nUhTUqjjA39teaw6r03tY0jsQTK/s400/path.jpg" alt="" id="BLOGGER_PHOTO_ID_5129983931865580530" border="0" /></a><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPLABgweJ-qeCtmWRbfxps2pxvDOwhlYWJUi3w7ddlwtfxjfdX1MPi9RMDt3fglQvIQGQdGET0cNe6MLKz94gK71q6pALCCDtjkjtNytkGbUbtVNLOok39aapwjNv3IOjecgaEhhO-_esi/s1600-h/isi+regedit.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPLABgweJ-qeCtmWRbfxps2pxvDOwhlYWJUi3w7ddlwtfxjfdX1MPi9RMDt3fglQvIQGQdGET0cNe6MLKz94gK71q6pALCCDtjkjtNytkGbUbtVNLOok39aapwjNv3IOjecgaEhhO-_esi/s400/isi+regedit.jpg" alt="" id="BLOGGER_PHOTO_ID_5129983923275645906" border="0" /></a><br />Berbekal ilmu "trial and error", Juki mencoba mengutak-atik registry menggunakan software bawaan Microsoft, regedit. Juki terpaksa mengambil resiko aplikasi tidak akan berjalan dengan baik bila key registry yang diutak-atik salah. Di registry terlihat nama Bang Zack dan Juki, beserta nilai mereka. Key "0.Name" berisi nama Bang Zack dan "0.Score" berisi nilainya yaitu 810000. Dari strukturnya terlihat bahwa key "0.Name" dan "0.Score" merupakan key untuk menyimpan nama dan nilai pemain pinball yang berhasil menduduki peringkat pertama. Begitu seterusnya.<br /><br />Berarti untuk mengubah nama dan nilai, kita hanya perlu mengubah key Name dan Score. Hmm... mungkin saja... Mengapa masih mungkin? Karena ada key verification, yang masih belum diketahui apa fungsinya. Nah, . Key 0.Name diganti dengan "Juki" dan key 0.Score diganti menjadi "11755400". Selesai. Si Juki pun membuka pinball dan mengecek high scores. Eh... ternyata kosong!!! Tidak ada nama Juki maupun Bang Zack. Wah celaka! Dimana salahnya???<br /><br />Juki pun terduduk lemas. Apa kata bang Zack nanti kalau tahu namanya sudah tidak ada di deretan high scores. Bisa-bisa Juki dimarahi ama bang Zack. Kemudian dia teringat key verification. Mungkin itu key yang digunakan untuk verifikasi, apakah nama pemegang rekor dan nilainya valid.<br /><br />Dengan semangat membara, Juki mempelajari bagaimana key verification dibuat. Untuk mengetahuinya, ia melakukan beberapa pengamatan sebagai berikut:<br /><br />Pada kondisi default, atau tidak ada pemain yang memperoleh nilai tertinggi, data registry pinball adalah:<br /><br /><span style="font-weight: bold;"></span>0.Name = ""<br />0.Score = -999<br />1 .Name = ""<br />1.Score = -999<br />2 .Name = ""<br />2.Score = -999<br />3 .Name = ""<br />3.Score = -999<br />4 .Name = ""<br />4.Score = -999<br /><br />verification = -4995<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3FAPo0k0t3stnfPlJpUBMQGbLYeAPVEXx40ekSecMj1MeARsb3OfjunO6cdVYKKZx3PRF-s7fmVWc1j5osMhQkCLulfJArQ_AxoH3TGLXqiV3kW_9ToanFaUBk9cAq5x2QvdlZwV-WLcQ/s1600-h/verification1.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3FAPo0k0t3stnfPlJpUBMQGbLYeAPVEXx40ekSecMj1MeARsb3OfjunO6cdVYKKZx3PRF-s7fmVWc1j5osMhQkCLulfJArQ_AxoH3TGLXqiV3kW_9ToanFaUBk9cAq5x2QvdlZwV-WLcQ/s400/verification1.jpg" alt="" id="BLOGGER_PHOTO_ID_5129983936160547842" border="0" /></a><br />Perkiraan:<br />verification = -999 + (-999) + (-999) + (-999) + (-999) = -4995<br /><br />Hm... kemungkinan, verification diperoleh dari menjumlahkan seluruh key Score.<br /><br />Untuk memastikannya, dilakukan percobaan dengan memainkan pinball. Syaratnya, belum ada satu pun pemain yang mengisi high scores. Setelah permainan pinball berakhir, pemain memasukkan nama untuk peringkat pertama high scores karena merupakan satu-satunya pemain. Nama yang dimasukkan adalah "a" (tanpa tanda kutip). Data registry pinball adalah:<br /><br /><span style="font-weight: bold;"></span>0.Name = "a"<br />0.Score = 192750<br />1 .Name = ""<br />1.Score = -999<br />2 .Name = ""<br />2.Score = -999<br />3 .Name = ""<br />3.Score = -999<br />4 .Name = ""<br />4.Score = -999<br /><br />verification = 188851<br /><br />Perkiraan:<br />verification = 192750 + (-999) + (-999) + (-999) + (-999) = 188754<br /><br />whoops... kok ga sama?<br /><br />Sisa verification = 188851 - 188754 = 97<br /><br />Kesimpulan sementara <span style="font-weight: bold;">a = 97</span><br /><br />Kemudian dilakukan percobaan kedua, dengan syarat tidak ada pemain yang mengisi high scores. Nama yang dimasukkan tetap "a". Hasil yang diperoleh:<br /><br />0.Name = "a"<br />0.Score = 114000<br />1 .Name = ""<br /> 1.Score = -999<br />2 .Name = ""<br /> 2.Score = -999<br />3 .Name = ""<br /> 3.Score = -999<br />4 .Name = ""<br /> 4.Score = -999<br /><br />verification = 110101<br /><br />Perkiraan:<br />verification = 110101 + (-999) + (-999) + (-999) + (-999) = 110004<br /><br />Sisa verification = 110101 - 110004 = 97<br /><br />Berarti hampir dipastikan bahwa <span style="font-weight: bold;">a = 97</span><br /><br />Mengapa hampir pasti? Karena si Juki belum tau, darimana datangnya 97 untuk huruf "a"? Karena udah buntu, akhirnya si Juki browsing entah kemana. Eh... abis tu dia baca artikel <a href="http://blackmindstorm.blogspot.com/2007/11/ascii.html">tentang ASCII</a> [<a href="http://blackmindstorm.blogspot.com/2007/11/ascii.html">Link</a>]. Dari situ dia tahu kalo kode ASCII untuk huruf <span style="font-weight: bold;">a</span> adalah <span style="font-weight: bold;">97</span>!!!<br /><br />Kalau begitu, rumus untuk mencari nilai verification adalah<br /><br />verification = jumlah seluruh nilai + jumlah kode ascii seluruh nama<br /><br />Tapi... apa benar? Untuk memastikannya, kita harus mencobanya. Nama yang akan dijadikan top score adalah juki dengan nilai 11755400.<br /><br />Menurut <a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPtkf2pZvv0M_zvSkBeCfa7DV5oqLq6itkPvceQe9RQjcijkmAdKkyQ3g9hxn6ktbcTt1HTM_RslT9u8QaO1rz7H_XseE4BjBLg7_oCe1GdH3SnxAH3Ca8ni6OZCUBTY9s7VwtJAM2JLnw/s400/ascii-table-low.jpg">tabel ASCII</a> [<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPtkf2pZvv0M_zvSkBeCfa7DV5oqLq6itkPvceQe9RQjcijkmAdKkyQ3g9hxn6ktbcTt1HTM_RslT9u8QaO1rz7H_XseE4BjBLg7_oCe1GdH3SnxAH3Ca8ni6OZCUBTY9s7VwtJAM2JLnw/s400/ascii-table-low.jpg">Link</a>], j = 106, u = 118, k = 107, i = 105. Bila dimasukkan ke dalam rumus:<br /><br />verification = (11755400 + (-999) + (-999) + (-999) + (-999)) + ((106 + 117 + 107 + 105) + 0 + 0 + 0 + 0)<br />verification = 11751404 + 435 = 11751839<br /><br />OK, sekarang kita hanya perlu mengisi key 0.Name dengan juki, 0.Score dengan 11751404 dan verification dengan 11751839.<br /><br />Kira-kira seperti yang terlihat di bawah ini:<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmjeqw-ryHu-KAFSJ-EazQjUfZrEewqufSEm9v2F6Ij_7vSx0-eMelbW9bd3jIgzN3bnXSm9MVURcX_358qwX9zk1zYTDS6F6y67ApWDs7us7RRgmRiuwAam_ipViExCKMGgHzsjPCLlSM/s1600-h/verification2.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmjeqw-ryHu-KAFSJ-EazQjUfZrEewqufSEm9v2F6Ij_7vSx0-eMelbW9bd3jIgzN3bnXSm9MVURcX_358qwX9zk1zYTDS6F6y67ApWDs7us7RRgmRiuwAam_ipViExCKMGgHzsjPCLlSM/s400/verification2.jpg" alt="" id="BLOGGER_PHOTO_ID_5129984069304534034" border="0" /></a><br />Setelah selesai mengedit registry, buka pinball dan lihat highscores. Whuzzzz.... kini muncul nama "juki" dengan nilai 11755400.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDe3FDhNp6sbI9vyhpwYehsupplhosF6oFTExtZf_lKUHbM9LG9EBgDh1SItewYPt2JMDGPXjkeL62-9yvyoY7Ep6u2IgAhVIgAknEgtgJ_DAV2YZ9REjSKxAlMALbc4F3N_UTdgubukXN/s1600-h/juki_no1.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDe3FDhNp6sbI9vyhpwYehsupplhosF6oFTExtZf_lKUHbM9LG9EBgDh1SItewYPt2JMDGPXjkeL62-9yvyoY7Ep6u2IgAhVIgAknEgtgJ_DAV2YZ9REjSKxAlMALbc4F3N_UTdgubukXN/s400/juki_no1.jpg" alt="" id="BLOGGER_PHOTO_ID_5129983927570613218" border="0" /></a><br />Pada akhirnya Juki menyimpulkan bahwa rumus untuk nilai verification adalah<br /><br /><span style="font-weight: bold;">Verification = Jumlah Seluruh Nilai (key Score) + Jumlah Kode ASCII Seluruh Nama (key Name)</span><br /><br />Nah, sekarang, berhasilkah si Juki mengalahkan bang Zack? Ternyata, selagi Juki mengutak-atik registry pinball, bang Zack ngalor-ngidul bersama Khalila. Ternyata kasus ini hanya akal-akalan bang Zack aja agar Juki sibuk dan lupa ama Khalila. Yah... namanya juga bang Zack, makin tua makin banyak akalnya!<br /><br /><span style="font-weight: bold;">NB:</span><br />Bila ada kesamaan nama tokoh pada cerita di atas dengan tokoh di sinetron PPT (Para Pencari Tuhan), hal tersebut memang disengaja. Maklum la, penulis suka nonton sinetron PPT seh... hehe... ni lagi nungguin PPT seri ke-2 (Kalo ada...)<br /><br /></div>Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-16039631247521701862007-11-06T14:05:00.000+07:002007-11-07T13:58:01.807+07:00Deface dalam Semenit<div style="text-align: center;"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRk7BiOqH0gMM1LTIz1EwjWXWCL5-lpQ7OIPyLb7WN-pIxHJ_NsodnAi8_UrTqnXajuuvFAH4SK8BhWDhkQiiSiIHHpgIXky3zFy7KLdRhFxydFpHUXoyip-9-Qap49B5O13ZpZDqrNooH/s1600-h/fbi-hack.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRk7BiOqH0gMM1LTIz1EwjWXWCL5-lpQ7OIPyLb7WN-pIxHJ_NsodnAi8_UrTqnXajuuvFAH4SK8BhWDhkQiiSiIHHpgIXky3zFy7KLdRhFxydFpHUXoyip-9-Qap49B5O13ZpZDqrNooH/s400/fbi-hack.jpg" alt="" id="BLOGGER_PHOTO_ID_5129625280621527970" border="0" /></a><span style="font-size:85%;"><span style="font-style: italic;">Web FBI yang baru aja di-deface</span></span><br /></div><br />Beberapa hari yang lalu, karena ga da kegiatan, iseng browsing ke situs-situs underground. Eh, rupanya nemu mainan baru. :D Buat yang pengen nge-deface web dengan cara yang gampang, tapi merasa berdosa bila mengacak-acak web orang, cara berikut cocok buat kamu.<br /><br />1. Pilih target kamu. Misalnya web punya FBI (eh, bukan <span style="font-weight: bold;">Fans Berat Inul</span> loh!!!) yang beralamat di<span style="text-decoration: underline;"></span> <a href="http://www.fbi.gov" target="_blank">http://www.fbi.gov</a>.<br /><br />2. Hapus alamat di address bar, dan ganti dengan:<br /><br /><span style="font-family:courier new;">javascript:document.body.contentEditable='true'; document.designMode='on'; void 0</span><br /><br />3. Wussshhhh.... Web siap di-deface. Klik pada tulisan atau gambar di web tersebut. Ubah seperlunya :D<br /><br /><span style="font-weight: bold;">NB: </span><br />Teknik ini hanya "men-<span style="font-style: italic;">deface</span>" web secara lokal. Artinya, perubahan hanya terlihat di browser kamu aja. Web yang asli sama sekali tidak terganggu. Jadi kamu ga usah merasa berdosa karena telah men-deface web orang :D.Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-54277331084150074112007-11-06T10:12:00.000+07:002007-11-06T10:55:17.211+07:00ASCIIMungkin kita sering mendengar kata ASCII, tetapi tidak tahu apa itu ASCII. ASCII singkatan dari American Standard Code for Information Interchange. Sesuai dengan namanya, ASCII digunakan untuk pertukaran informasi dan komunikasi data. ASCII merupakan kode angka yang mewakili sebuah karakter. ASCII digunakan karena komputer hanya mengerti angka-angka.<br /><div style="text-align: justify;"><br />Berikut tabel ASCII dalam format jpg. Untuk tabel ASCII dalam format text bisa dilihat di <a href="http://ascii-table.com/ascii.php">http://ascii-table.com/ascii.php</a>.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPtkf2pZvv0M_zvSkBeCfa7DV5oqLq6itkPvceQe9RQjcijkmAdKkyQ3g9hxn6ktbcTt1HTM_RslT9u8QaO1rz7H_XseE4BjBLg7_oCe1GdH3SnxAH3Ca8ni6OZCUBTY9s7VwtJAM2JLnw/s1600-h/ascii-table-low.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPtkf2pZvv0M_zvSkBeCfa7DV5oqLq6itkPvceQe9RQjcijkmAdKkyQ3g9hxn6ktbcTt1HTM_RslT9u8QaO1rz7H_XseE4BjBLg7_oCe1GdH3SnxAH3Ca8ni6OZCUBTY9s7VwtJAM2JLnw/s400/ascii-table-low.jpg" alt="" id="BLOGGER_PHOTO_ID_5129569566305764226" border="0" /></a><br />Sumber: <a href="http://ascii-table.com">http://ascii-table.com</a>.<br /><br /></div>Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-26614967320571688322007-11-01T11:46:00.000+07:002007-11-08T12:04:31.727+07:00Joomla! Pemenang "Best CMS Award" (Lagi)Pada tanggal 31 Oktober 2007 kemarin, penerbit buku Packt mengumumkan bahwa Joomla! adalah pemenang "Best PHP Open Source Content Management System" untuk tahun 2007. Kemenangan ini merupakan kedua kalinya bagi Joomla! Untuk tahun ini, posisi kedua direbut oleh Drupal, diikuti e107 pada posisi ketiga.<br /><div style="text-align: justify;"><br />Rilis pertama Joomla muncul pada bulan September tahun 2005 dan sejak saat itu menjadi CMS yang paling banyak di-<span style="font-style: italic;">download</span>.<br /><br />Beberapa faktor yang menyebabkan Joomla! menjadi pemenang adalah front-end administrator yang bagus dan sederhana. Selain itu respon komunitas terhadap masalah seputar Joomla sangat cepat.<br /><br />Joomla! juga termasuk di dalam lima besar untuk Overal Award, yang akan diumumkan pada hari Jum'at, 2 Nopember 2007.<br /><br />Semoga sukses buat Joomla!<br /></div>Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-89401273465401485552007-10-26T15:49:00.000+07:002007-10-26T16:28:49.508+07:00Hacking Microsoft Game: MinesweeperBagi pengguna M$ Windows, tentu saja mengenal permainan Minesweeper. Salah satu permainan standar yang ada pada instalasi M$ Windows. Sesuai dengan namanya, permainan ini mewajibkan pemainnya untuk menandai ranjau yang tersembunyi. Hm... kalau cara bermainnya silakan buka permainannya dan lihat help. :)<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBXyxpyGEkLdWI1n9N7BgYNpLbGQ27oKoHmv8dCExGKKAHH-AOqXLsrZMBcZadWO_vT1zLBTjMah6PzgopMcChlnG37cIMSIBbKAac_HSpS2xw4D2jkvbHdGnQYjdCv8V0U5H9ZrEpVhf6/s1600-h/minesweeper.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBXyxpyGEkLdWI1n9N7BgYNpLbGQ27oKoHmv8dCExGKKAHH-AOqXLsrZMBcZadWO_vT1zLBTjMah6PzgopMcChlnG37cIMSIBbKAac_HSpS2xw4D2jkvbHdGnQYjdCv8V0U5H9ZrEpVhf6/s400/minesweeper.jpg" alt="" id="BLOGGER_PHOTO_ID_5125565664648446738" border="0" /></a><br />Bila kita berhasil memecahkan rekor waktu membersihkan ranjau dengan menandai seluruh lokasi ranjau dengan bendera, kita diminta untuk memasukkan nama kita. Agar dicatat sebagai "Fastest Mine Sweepers".<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj55GBwRevJPfhfm71ulJzX5y7wO9wxjxsZb_bXEljf8GRoqLDG24oe8BAkvgY0J_BI2AnYVOMjNa7-RW4N17jKMXINRm610JxwukcTpHc3FRrEcd_duX1SQVMREWDPN379cz7G0JoI33Le/s1600-h/dialoghs.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj55GBwRevJPfhfm71ulJzX5y7wO9wxjxsZb_bXEljf8GRoqLDG24oe8BAkvgY0J_BI2AnYVOMjNa7-RW4N17jKMXINRm610JxwukcTpHc3FRrEcd_duX1SQVMREWDPN379cz7G0JoI33Le/s400/dialoghs.jpg" alt="" id="BLOGGER_PHOTO_ID_5125565656058512098" border="0" /></a><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifXKld7yv4jsWov71C67_7BvQ7fSVSd4Z40lSr66JV6ephTlEjSXVSXgGu-u6CvY5PZYZ1xF048tg4wjjC5EvZJ4HAmGblw6ooYzf5lpLsmK82qJSqOkkXCRrBG6hn92L4KDqEB89cAhRS/s1600-h/highscore.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifXKld7yv4jsWov71C67_7BvQ7fSVSd4Z40lSr66JV6ephTlEjSXVSXgGu-u6CvY5PZYZ1xF048tg4wjjC5EvZJ4HAmGblw6ooYzf5lpLsmK82qJSqOkkXCRrBG6hn92L4KDqEB89cAhRS/s400/highscore.jpg" alt="" id="BLOGGER_PHOTO_ID_5125565660353479410" border="0" /></a><br />Nah, yang jadi persoalan, bagaimana cara agar nama kita masuk ke Fastest Mine Sweepers tanpa perlu memainkan permainan minesweeper ini? Ups... mo cheat ya? Bisa... Setelah diselidiki, ternyata minesweeper menyimpan data pemegang rekor waktu tercepat di registry. Letaknya di HKCU\Software\Microsoft\winmine.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPHmAbERt0KkJJWyvO-B3fJHZOsh6CGXn4voMEpFyB3KgA52ssMtNs8uSk9xZgBxsUI2cf-mtlFqb8uGeBlmOZGUDOOffNKKO05szVz6aKvth1Y4GZ0_bZRImZmG-gRPeY9QyeYtTLpy9m/s1600-h/path.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPHmAbERt0KkJJWyvO-B3fJHZOsh6CGXn4voMEpFyB3KgA52ssMtNs8uSk9xZgBxsUI2cf-mtlFqb8uGeBlmOZGUDOOffNKKO05szVz6aKvth1Y4GZ0_bZRImZmG-gRPeY9QyeYtTLpy9m/s400/path.jpg" alt="" id="BLOGGER_PHOTO_ID_5125569212291433266" border="0" /></a><br />Pada gambar di bawah terlihat key Name1, Name2, Name3. Key tersebut untuk menyimpan nama pemegang rekor waktu tercepat. Sedangkan key Time1, Time2, Time3 adalah key untuk menyimpan waktunya. Name1 dan Time1 untuk rekor Beginner, Name2 dan Time2 untuk rekor Intermediate, Name3 dan Time3 untuk rekor Expert. Cukup dengan mengedit key tersebut, nama dan waktu kita bisa muncul di Fastest Mine Sweepers.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHUOJ0MEsBSBSfUtOiMAiFWo1wPGWF_U9Zl0Qzw3fEyWJG06XmPQX_a0dF4luwyWhSjUWvwOTU2yJF2RcoSks6oeLD-OUVqzj7DPl1Uk3j1-uqKqzWCEtMSNTpswxBAjvxO81_wn3hi_P2/s1600-h/level.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHUOJ0MEsBSBSfUtOiMAiFWo1wPGWF_U9Zl0Qzw3fEyWJG06XmPQX_a0dF4luwyWhSjUWvwOTU2yJF2RcoSks6oeLD-OUVqzj7DPl1Uk3j1-uqKqzWCEtMSNTpswxBAjvxO81_wn3hi_P2/s400/level.jpg" alt="" id="BLOGGER_PHOTO_ID_5125565660353479426" border="0" /></a><br />Sekarang kita edit Name1. Dengan mengklik ganda key tersebut, akan muncul kotak dialog. Ketikkan nama yang akan dijadikan pemegang rekor. Untuk waktunya edit key Time1. Pilih base decimal dan isikan angka yang diinginkan.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6FxHmX1DHBf4b7zGkCnTlyIaVY5xdvUE3Vmb5q_bkLm0LWVPTumJgqm7_r2YVw_lWk8uiBiR2YQ3lFiYn4Q6CUkxZWiiiHWQveG9UDOSxm7VHyOjcR30YY6bnT6bbPSYPSBh9sf1TBx_W/s1600-h/name3.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6FxHmX1DHBf4b7zGkCnTlyIaVY5xdvUE3Vmb5q_bkLm0LWVPTumJgqm7_r2YVw_lWk8uiBiR2YQ3lFiYn4Q6CUkxZWiiiHWQveG9UDOSxm7VHyOjcR30YY6bnT6bbPSYPSBh9sf1TBx_W/s400/name3.jpg" alt="" id="BLOGGER_PHOTO_ID_5125565668943414050" border="0" /></a><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1Bil-AcjWIwVeRsAH3qXL2-jsyK9nKNMufpPDuSOtYOYw6leYIKlUEfF0moK4zlO3wt5FMlY3QaxJrBGXwDO_feK7COgWu3ZQjfgl7zRyymwfxYN4gsSJEmFv5PkNSimfsG_mpQpPaOWZ/s1600-h/time1.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1Bil-AcjWIwVeRsAH3qXL2-jsyK9nKNMufpPDuSOtYOYw6leYIKlUEfF0moK4zlO3wt5FMlY3QaxJrBGXwDO_feK7COgWu3ZQjfgl7zRyymwfxYN4gsSJEmFv5PkNSimfsG_mpQpPaOWZ/s400/time1.jpg" alt="" id="BLOGGER_PHOTO_ID_5125569216586400594" border="0" /></a><br />Kalo udah diedit, buka lagi minesweeper dan lihat highscorenya. Maka akan muncul pemegang rekor hasil rekayasa kita. Hehe...<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiSsKby36GP5CP5F3QYYoMp7AXNVxmP1rHAIsR0WazqFsNGgiSEQ43HVpb62tcJHlzB1P_l-WRSYTTVt2Bj7WiuXMDM8fyyDymNCxxUrsrDrUvywLpcE4fFq6d-YTV52P1s8CegaE2bBOzM/s1600-h/regedit.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiSsKby36GP5CP5F3QYYoMp7AXNVxmP1rHAIsR0WazqFsNGgiSEQ43HVpb62tcJHlzB1P_l-WRSYTTVt2Bj7WiuXMDM8fyyDymNCxxUrsrDrUvywLpcE4fFq6d-YTV52P1s8CegaE2bBOzM/s400/regedit.jpg" alt="" id="BLOGGER_PHOTO_ID_5125569216586400578" border="0" /></a><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJofmkQCJlFjpU9pC9Bi4_TKnlAm8nRjcD5i6FbTKbNukgPtvwUcttt69WFxd-fa1nfN-nr3pKf2mzC7XfA_kHnCVDeE3hj7DD-JQ4YsXiVeEsTKFpTG_retrd1R7Y-hQQMtnyLbHZT3xt/s1600-h/highscore.JPG"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJofmkQCJlFjpU9pC9Bi4_TKnlAm8nRjcD5i6FbTKbNukgPtvwUcttt69WFxd-fa1nfN-nr3pKf2mzC7XfA_kHnCVDeE3hj7DD-JQ4YsXiVeEsTKFpTG_retrd1R7Y-hQQMtnyLbHZT3xt/s400/highscore.JPG" alt="" id="BLOGGER_PHOTO_ID_5125574830108656498" border="0" /></a><br />Semoga bermanfaat... :)Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com1tag:blogger.com,1999:blog-5913096193764500046.post-83071896551356983872007-10-24T10:08:00.000+07:002007-10-24T10:12:18.781+07:00Yang Dibutuhkan Untuk Menjadi ProgrammerKira-kira apa ya yang dibutuhkan untuk menjadi programmer? <br /><br /><span style="font-weight: bold;">Menguasai ilmu matematika?</span><br /><div style="text-align: justify;">Hmm... ga juga tuh. Ga semua ilmu matematika mesti dikuasai. Integral atau bilangan imajiner sepertinya ga perlu. Tapi ada beberapa yang perlu diasah seperti logika, bilangan biner, hexadesimal.<br /></div><br /><span style="font-weight: bold;">Mengetahui seluruh bahasa pemrograman?</span><br />Ga perlu semuanya, yang penting mengetahui dasar memprogram.<br /><br /><span style="font-weight: bold;">Memilih bahasa pemrograman favorit atau populer, kemudian menghafal seluruh syntax-nya?</span><br />Are you crazy..? No need to do that!<br /><br /><span style="font-weight: bold;">Menguasai seluruh fitur sebuah bahasa pemrograman?</span><br />Ooops... can you do it?<br /><br /><br /><span style="font-weight: bold; font-style: italic;">Jadi, apa sih yang dibutuhkan? </span><br /><ul><li>Menguasai algoritma (langkah-langkah dalam menyelesaikan masalah) pemrograman. </li><li style="text-align: justify;">Menguasai logika, seperti "AND", "OR", "NOT". </li><li style="text-align: justify;">Mengetahui bilangan biner dan hexadesimal. </li><li style="text-align: justify;">Kemauan untuk belajar </li><li style="text-align: justify;">Kerja keras (Trial and Error)<br /></li><li style="text-align: justify;">Ketelitian </li><li style="text-align: justify;">Talenta (bakat). Ada yang bilang diperlukan bakat untuk menjadi seorang programmer. Tetapi menurut saya talenta bisa muncul seiring dengan seringnya kita membuat program (coding), walaupun hanya program-program sederhana. </li></ul><br /><div style="text-align: justify;">Apa saja yang dibutuhkan untuk menjadi seorang programmer ini saya tulis berdasarkan pengalaman saya. Mungkin saja ada beberapa yang tidak sesuai dengan pendapat anda...<br /><br /><br />Semoga bermanfaat... :)<br /><br /></div>Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com1tag:blogger.com,1999:blog-5913096193764500046.post-21759582254738763422007-10-06T11:25:00.000+07:002007-10-24T12:11:26.802+07:00Lorem IpsumPernah baca paragraf:<br /><div style="text-align: justify;"><blockquote>"Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Phasellus tellus dolor, tincidunt sit amet, nonummy vitae, posuere porttitor, massa. Proin quam eros, bibendum in, mollis in, ultrices eleifend, nulla. Nulla lorem est, tincidunt non, scelerisque eget, ultricies nec, augue. Etiam lorem augue, egestas vel, ornare a, dapibus iaculis, augue. Curabitur at est nec nibh eleifend tempus. Sed malesuada. Duis a est quis urna euismod tempor. Duis sit amet elit. Integer lorem. Etiam eu nulla. Vestibulum blandit sapien ut tellus. Morbi nec nibh ac sapien scelerisque imperdiet. Cras convallis tempus leo. Nulla suscipit rutrum erat. Nam volutpat dolor id orci. Etiam lacus erat, euismod sed, tempor vitae, cursus ac, ipsum. Nulla in pede."</blockquote></div><br /><div style="text-align: justify;">Paragraf di atas juga dikenal sebagai Lorem ipsum, yaitu paragraf yang berisi "dummy text" yang digunakan di percetakan. Instalasi standar joomla juga menyertakan lorem ipsum sebagai contoh paragraf. Lorem ipsum telah digunakan sejak tahun 1500-an. Mulai populer sejak tahun 1960-an seiring dengan rilis lembaran Letraset, yang berisi lorem ipsum.<br /></div><br /><div style="text-align: justify;">Lorem ipsum bukan sekedar teks acak yang sederhana. Lorem ipsum dipercaya merupakan bagian dari literatur Latin kuno dari tahun 45 SM. Lorem ipsum berasal dari bagian 1.10.32 dan 1.10.33 dari "de Finibus Bonorum et Malorum" (The Extremes of Good and Evil) oleh Cicero, ditulis pada tahun 45 SM. Buku ini berisi teori tata susila, yang sangat populer pada masa Renaissance. Baris pertama Lorem ipsum, "Lorem ipsum dolor sit amet...", berasal dari sebuah baris pada bagian 1.10.32.<br /><br /></div><div style="text-align: justify;">Ada banyak variasi dari Lorem ipsum, tetapi kebanyakan telah berubah bentuk yang disebabkan oleh ketidaksengajaan, sengaja disisipkan humor, atau penyisipan kata-kata acak yang tidak terlihat tidak masuk di akal. Ada banyak generator Lorem ipsum di Internet yang cenderung mengulang potongan-potongan kata. Salah satu generator Lorem ipsum yang dapat dipercaya adalah <a href="http://www.lipsum.com/">http://www.lipsum.com</a>. Generator ini menggunakan kamus yang mempunyai lebih dari 200 kata dalam bahasa Latin, dikombinasikan dengan model struktur kalimat untuk membuat Lorem ipsum terlihat lebih masuk diakal. Hasilnya, Lorem ipsum selalu bebas dari pengulangan, penyisipan humor atau kata-kata yang tidak benar.<br /></div><br /><br /><span style="font-weight: bold;">Standar Lorem ipsum yang digunakan:</span><br /><br /><span style="font-weight: bold;">The standard Lorem Ipsum passage, used since the 1500s</span><br /><div style="text-align: justify;">"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."<br /></div><br /><br /><span style="font-weight: bold;">Berikut ini Lorem ipsum berbahasa Latin dan terjemahannya (dalam bahasa Inggris):</span><br /><br /><span style="font-weight: bold;">Section 1.10.32 of "de Finibus Bonorum et Malorum", written by Cicero in 45 BC</span><br /><div style="text-align: justify;">"Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?"<br /></div><br /><span style="font-weight: bold;">1914 translation by H. Rackham</span><br /><div style="text-align: justify;">"But I must explain to you how all this mistaken idea of denouncing pleasure and praising pain was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness. No one rejects, dislikes, or avoids pleasure itself, because it is pleasure, but because those who do not know how to pursue pleasure rationally encounter consequences that are extremely painful. Nor again is there anyone who loves or pursues or desires to obtain pain of itself, because it is pain, but because occasionally circumstances occur in which toil and pain can procure him some great pleasure. To take a trivial example, which of us ever undertakes laborious physical exercise, except to obtain some advantage from it? But who has any right to find fault with a man who chooses to enjoy a pleasure that has no annoying consequences, or one who avoids a pain that produces no resultant pleasure?"<br /></div><br /><span style="font-weight: bold;">Section 1.10.33 of "de Finibus Bonorum et Malorum", written by Cicero in 45 BC</span><br /><div style="text-align: justify;">"At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat."<br /></div><br /><span style="font-weight: bold;">1914 translation by H. Rackham</span><br /><div style="text-align: justify;">"On the other hand, we denounce with righteous indignation and dislike men who are so beguiled and demoralized by the charms of pleasure of the moment, so blinded by desire, that they cannot foresee the pain and trouble that are bound to ensue; and equal blame belongs to those who fail in their duty through weakness of will, which is the same as saying through shrinking from toil and pain. These cases are perfectly simple and easy to distinguish. In a free hour, when our power of choice is untrammelled and when nothing prevents our being able to do what we like best, every pleasure is to be welcomed and every pain avoided. But in certain circumstances and owing to the claims of duty or the obligations of business it will frequently occur that pleasures have to be repudiated and annoyances accepted. The wise man therefore always holds in these matters to this principle of selection: he rejects pleasures to secure other greater pleasures, or else he endures pains to avoid worse pains."<br /></div><br />(Sumber: <a href="http://www.lipsum.com/">http://www.lipsum.com</a>, <a href="http://en.wikipedia.org/wiki/Lorem_ipsum">http://en.wikipedia.org/wiki/Lorem_ipsum</a>)<br /><br /><br />Semoga bermanfaat... :)Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-16237437232495613382007-10-01T16:08:00.001+07:002007-10-24T10:20:54.345+07:00Most Popular Programming LanguageMo tau bahasa pemrograman yang lagi populer? Sebuah perusahaan yang bernama TIOBE men-index bahasa pemrograman per bulan secara rutin. Hasil index ini dapat dijadikan petunjuk mengenai bahasa pemrograman yang lagi populer. Perhitungan rating berdasarkan tersedianya "skilled-engineer" di seluruh dunia, kursus, dan third-party vendor. Mesin pencari populer seperti om Google, MSN dan Yahoo! digunakan untuk melakukan perhitungan rating. Hasil perhitungan rating yang dilakukan oleh TIOBE TIDAK menyatakan bahwa BAHASA PEMROGRAMAN TERSEBUT TERBAIK atau merupakan KODE YANG PALING BANYAK DITULIS di seluruh dunia.<br /><br />Hasil index dapat digunakan untuk mengecek apakah bahasa pemrograman yang biasa kita gunakan tetap up-to-date atau kita bisa memperkirakan bahasa apa yang kira-kira akan menjadi populer di masa mendatang.<br /><br />Berikut ini adalah posisi sepuluh bahasa pemrograman terpopuler (versi TIOBE) pada bulan September 2007:<br /><ol><li>Java</li><li>C</li><li>Visual Basic</li><li>PHP</li><li>C++</li><li>Perl</li><li>C#</li><li>Phyton</li><li>JavaScript</li><li>Ruby</li></ol>Hasil lengkap dari TIOBe bisa dilihat <a href="http://www.tiobe.com/tpci.htm">di sini</a>.<br /><br /><br />Semoga bermanfaat... :)Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-11088797130983184592007-10-01T11:24:00.000+07:002007-10-24T10:14:57.362+07:00Are They Microsoft Bloopers?Beberapa hari yang lalu (tepatnya tgl 25 September 2007) gw nerima message dari temen. Isinya:<br /><br />MAGIC #1<br /><br />An Indian discovered that nobody can<br />create a FOLDER anywhere on the<br />Computer which can be named as "CON".<br />This is something pretty Cool...<br />and Unbelieveable. .. At Microsoft the<br />whole Team, couldn't answer why this<br />happenned!<br />TRY IT NOW, IT WILL NOT CREATE "CON"<br />FOLDER<br /><br />MAGIC #2<br /><br />For those of you using Windows, do the<br />following :<br /><br />1) Open an empty notepad file<br />2) Type "Bush hid the facts" (without<br />the quotes)<br />3) Save it as whatever you want.<br />4) Close it, and re-open it.<br />is it just a really weird bug? =P<br /><br />MAGIC #3<br /><br />Microsoft crazy facts<br />This is something pretty cool and<br />neat ... and unbelievable. .. At<br />Microsoft the whole Team,<br />including Bill Gates, couldn't answer<br />why this happenned!<br />it was discovered by a Brazilian. Try<br />it out yourself...<br />Open Microsoft Word and type<br />=rand (200, 99)<br /><br />And then press ENTER<br />Then see the<br />magic ............ .......... .........<br /><br /><br />Whoaaaaa, ini mah isu lama... Wadhuh.. kok bisa muncul lagi yah? Pertama-tama sih ga gw tanggepin. Tp loh, kok di milis banyak muncul isu itu lagi! Lagi, lagi, lagi dan huaaaaa... bosen de...<br /><br />Demi mengungkap kebenaran (cieee... sok pahlawan euy), gw cari lagi infonya (udah lupa sih, abis da lama banget!), tujuannya agar gw ga ngasi informasi yang menyesatkan.<br /><br />Berikut penjelasannya:<br /><br /><span style="font-weight: bold;">MAGIC #1</span><br />Folder yang dibuat dengan nama "con" memang tidak bisa dibuat di Windows. Karena nama ini merupakan 'reserved word' dari DOS yang berarti 'console'. Buka command prompt dan ketikkan "copy con tes.txt" (tanpa tanda kutip). Ketikkan beberapa baris seperti screenshot di bawah. Tekan Ctrl+Z diikuti dengan Enter untuk mengakhiri. Arti dari perintah "copy con tes.txt" adalah membuat file tes.txt di console. Sebagai pembuktian, cobalah buka file tersebut dengan notepad. Selain con, ada beberapa reserved word yang tidak bisa digunakan seperti aux, com1, com2, com3, com4, com5, lpt1, nul.<br /><br /><div style="text-align: center;"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEheGRbHNaWkIVBKQD-XNEp5m9DcfAuhDpZ0pVS0JCw0zwxo-28EVO5BLKPK4JyK6R0SO2pL0UI6hEqirVfNkWrNqUvkHhLDPqfHCp_13vYAqqNwRRh5In2dNRO4rVaEG6NSK9Vr04M63PMW/s1600-h/con_command.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEheGRbHNaWkIVBKQD-XNEp5m9DcfAuhDpZ0pVS0JCw0zwxo-28EVO5BLKPK4JyK6R0SO2pL0UI6hEqirVfNkWrNqUvkHhLDPqfHCp_13vYAqqNwRRh5In2dNRO4rVaEG6NSK9Vr04M63PMW/s400/con_command.jpg" alt="" id="BLOGGER_PHOTO_ID_5116220104003441954" border="0" /></a><span style="font-style: italic;"> Membuat File Dengan Perintah Con</span><br /></div><br /><div style="text-align: center;"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMzfW-IQsfFL-pXd53pPIjTg2o6MaMUY1ZTn9P9QP8H6v-UMtDlTsh8pRbXhvp20hf-fL6mEZleOiE2loFPPY84STKrzlsboC2vMkDbUHrmZ4iYFmXqD-G_wykzaoe6dkJ7fzYGFPaaPaI/s1600-h/notepad.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMzfW-IQsfFL-pXd53pPIjTg2o6MaMUY1ZTn9P9QP8H6v-UMtDlTsh8pRbXhvp20hf-fL6mEZleOiE2loFPPY84STKrzlsboC2vMkDbUHrmZ4iYFmXqD-G_wykzaoe6dkJ7fzYGFPaaPaI/s400/notepad.jpg" alt="" id="BLOGGER_PHOTO_ID_5116220104003441970" border="0" /></a><span style="font-style: italic;">Hasil Pembuatan File Dilihat Dari Notepad</span><br /></div><br />Satu hal yang dilebih2kan oleh pengirim asli message di atas adalah "At Microsoft the whole Team, couldn't answer why this happenned!". Bohong banget!<br /><br /><span style="font-weight: bold;">MAGIC #2</span><br />Menurut saya sih yang ini memang bug. Tapi ga aneh. Krn ini hanya soal perbedaan encoding yang digunakan untuk menyimpan file dengan encoding untuk membuka file. Pada kasus ini, mungkin si pengirim pesan yang asli emang gondok ngeliat tingkah laku om bush. Coba aja ganti kalimat tersebut dengan "Bush ate our lunch" (tanpa tanda kutip tentunya). Coba kombinasi kata yang lain, dengan syarat 4 3 3 5 (Bush = 4 huruf, ate = 3 huruf, our = 3 huruf, lunch = 5 huruf).<br /><br />Jadi, bagaimana cara mengatasi hal tersebut? Not a big deal. Buat lagi kalimat seperti contoh, tetapi ketika akan menyimpan file, ubah bagian encoding (seperti gambar di bawah) menjadi Unicode. Tutup dan cobalah buka kembali file tersebut. Kata yang anda ketikkan masih tetap seperti semula.<br /><br /><div style="text-align: center;"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEisH7R93-xdQc4-KXsyDj_LSJL2dgguEmkNli0Ed7De3l5UR2_Od8HBR5ERXNX145iOxw9-imUCAY-KnZX6VA-kCQcSMGJi9ZL0F1msUCDt1EM1YdN6eFZ4954d8t_UfGau4Vr3eyH4GZf0/s1600-h/unicode.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEisH7R93-xdQc4-KXsyDj_LSJL2dgguEmkNli0Ed7De3l5UR2_Od8HBR5ERXNX145iOxw9-imUCAY-KnZX6VA-kCQcSMGJi9ZL0F1msUCDt1EM1YdN6eFZ4954d8t_UfGau4Vr3eyH4GZf0/s400/unicode.jpg" alt="" id="BLOGGER_PHOTO_ID_5116220108298409282" border="0" /></a><span style="font-style: italic;">Menyimpan File Teks Dengan Encoding Unicode</span><br /></div><br /><span style="font-weight: bold;">MAGIC #3</span><br />Ini bukan magic, dan bukan pula kebodohan Microsoft. Menurut saya ini merupakan salah satu fitur yang keren. =rand() merupakan salah satu perintah di Microsoft Word.<br /><br />Syntax:<br /><span style="font-family:courier new;">=rand(jlh_paragraf, jlh_kalimat)</span><br /><br />Contoh:<br /><span style="font-family:courier new;">=rand(5, 1)</span><br /><br />Perintah ini akan menghasilkan lima paragraf yang masing-masing paragraf berisi satu kalimat "The quick brown fox jumps over the lazy dog.".<br /><br />Trik ini digunakan untuk mengetes format sebuah paragraf, atau jenis huruf atau hal-hal lain yang berhubungan dengan paragraf. Perintah ini cocok bagi yang sedang belajar Microsoft Word. Daripada mengetikkan banyak kalimat (tentu membuang banyak waktu, apalagi kl masih mengetik pake 11 jari :p), dengan perintah ini beberapa kalimat dapat tersedia dalam hitungan detik. Si pengirim pesan melebih-lebihkan dengan memberikan parameter 200 dan 99, yang mengakibatkan kalimat "The quick brown fox jumps over the lazy dog." muncul hingga ± 235 halaman, sehingga tampak seperti kesalahan Microsoft Word. Yang bikin ga tahan adalah pernyataan si pengirim pesan "At Microsoft the whole Team, including Bill Gates, couldn't answer why this happenned!". Jadi pengen ketawa :D<br /><br /><br />Yah, begitulah penjelasan dari isu yang beredar (lagi). Mungkin beberapa tahun lagi bakal muncul isu yang sama, tetapi dengan penyampaian yang berbeda (who knows?) :D.<br /><br /><br />Semoga bermanfaat... :)Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com3tag:blogger.com,1999:blog-5913096193764500046.post-41384224741766706712007-09-29T10:52:00.001+07:002007-10-24T15:33:33.515+07:00Menampilkan Favourite Site IconWebsite seperti Yahoo (www.yahoo.com), Google (www.google.com), Friendster (www.friendster.com), USU (www.usu.ac.id) menggunakan icon untuk menandai website mereka, atau yang disebut juga "favourite site icon".<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj5uuQHictJnFiP6TK-Mc5AjmCVyiC0JWNj28v5Ubv7jUv3h1TQrTdvsFZAkBdTeT2cNXOwwu7r63kkGEpSm_K5JU5P8bsPbaldUt2EsXk8h3SlS2zSo0r0pxoJA0R9PbIjcqRlOpPTsj0R/s1600-h/favicon.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj5uuQHictJnFiP6TK-Mc5AjmCVyiC0JWNj28v5Ubv7jUv3h1TQrTdvsFZAkBdTeT2cNXOwwu7r63kkGEpSm_K5JU5P8bsPbaldUt2EsXk8h3SlS2zSo0r0pxoJA0R9PbIjcqRlOpPTsj0R/s400/favicon.jpg" alt="" id="BLOGGER_PHOTO_ID_5115489903728547090" border="0" /></a><br />Bagaimana cara menampilkannya? Not a big deal.<br />1. Siapin gambar berukuran 16x16 px.<br />2. Format gambar bisa .ico, .png, .jpg (Untuk .gif dan .bmp belum nyobain. Mohon infonya yah :) ).<br />3. Di halaman web, tambahkan baris di bawah ini (di dalam tag HEAD)<br /><br /><pre id="line1"><<span class="start-tag">link</span><span class="attribute-name"> rel</span>=<span class="attribute-value">"shortcut icon" </span><span class="attribute-name">href</span>=<span class="attribute-value">"[image url]<url>" </url></span><span class="error"><span class="attribute-name">/</span></span>></pre>Contoh:<br /><pre id="line1"><<span class="start-tag">link</span><span class="attribute-name"> rel</span>=<span class="attribute-value">"shortcut icon" </span><span class="attribute-name">href</span>=<span class="attribute-value">"images/usu.png" </span><span class="error"><span class="attribute-name">/</span></span>></pre><br />Nah, simpel aja kan? Selamat mencoba...<br /><br />Semoga bermanfaat... :)Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-42577585596660820302007-09-29T10:20:00.000+07:002007-10-24T10:22:44.381+07:00Which File Extension Are You?<a href="http://www.bbspot.com/News/2004/10/extension_quiz.php" target="_blank"><img src="http://www.bbspot.com/Images/News_Features/2004/10/file_extensions/mp3.jpg" alt="You are .mp3 The kids love you. You get along with just about everybody except the music industry. You really make yourself heard." border="0" height="90" width="300" /><br />Which File Extension are You?</a>Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com3tag:blogger.com,1999:blog-5913096193764500046.post-25874417692058410572007-09-29T10:02:00.000+07:002007-10-24T10:27:38.598+07:00No Need to be Concerned, Little Fly<a href="http://blaugh.com/2007/01/27/no-need-to-be-concerned-little-fly" target="_blank"><img class="comic" title="No Need to be Concerned, Little Fly" alt="No Need to be Concerned, Little Fly" src="http://blaugh.com/cartoons/070126_web_developer.gif" height="250" width="447" /></a>Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-11893368852628450362007-09-28T15:02:00.000+07:002007-10-24T10:29:12.168+07:00UbuntuME (Muslim Edition)Barusan saya menemukan informasi mengenai versi Ubuntu yang baru, yaitu UbuntuME (Muslim Edition). Atau lebih tepatnya, UbuntuME adalah meta package (kumpulan paket) dan tools yang bisa diinstall di sistem operasi Ubuntu biasa.<br /><br />Keterangan lengkap mengenai UbuntuME bisa dilihat di <a href="http://www.ubuntume.com/" target="_blank">http://www.ubuntume.com</a>.<br /><br />Berikut kutipan dari web UbuntuME.<br /><br /><br /><b>Ubuntu Muslim Edition</b><br />UbuntuME adalah singkatan dari Ubuntu Muslim Edition. Ubuntu Muslim Edition adalah software bebas (free), sistem operasi open source yang berbasis distro populer Ubuntu Linux.<br /><br /><b>Apa itu Linux?</b><br /><a href="http://id.wikipedia.org/wiki/Linux" target="_blank">Linux</a> adalah sistem operasi yang bersifat bebas, efisien dan mempunyai tingkat keamanan yang baik. Berbeda dengan Microsoft Windows dan perangkat berlisensi komersial, kode Linux terbuka untuk umum dan dapat dikembangkan oleh komunitas.<br /><br /><b>Apa itu Ubuntu?</b><br /><a href="http://www.ubuntu.com/" target="_blank">Ubuntu</a> adalah distribusi Linux yang populer saat ini, didesain dengan tujuan untuk menggantikan Microsoft Windows sebagai sistem operasi yang paling banyak digunakan di dunia.<br /><br />Ubuntu dibangun dari komponen yang keseluruhannya bersifat open source, dengan modifikasi utama untuk kemudahan penggunaan dan menghijrahkan pengguna komputer yang terbiasa menggunakan Microsoft Windows, sebagaimana bisa dilihat <a href="http://www.ubuntu.com/desktop" target="_blank">disini</a>. Nama Ubuntu berasal dari Bahasa Zulu yang berarti kemanusiaan, yang telah meresap kedalam kultur masyarakat Afrika Selatan sebagai “penghargaan bagi setiap individu” atau mungkin serupa dengan semangat sila kedua dari Pancasila.<br /><br /><b>Apa itu Ubuntu Muslim Edition?</b><br />Ubuntu Muslim Edition adalah kumpulan program yang memberi karakter Islam bagi distribusi Ubuntu dengan menambahkan software Islami (jadwal shalat, program pembelajaran Alquran, filter konten internet, dll.) disamping mengubah tampilannya.<br /><br /><b>Mengapa dibuat "Muslim Edition"?</b><br />Ubuntu adalah distribusi yang canggih, mudah digunakan oleh pengguna awam, menyertakan aplikasi populer untuk perkantoran, Internet, pengolah gambar, dan video. Pengguna muslim tentu akan bersyukur bila distribusi ini sudah secara otomatis mempunyai aplikasi Islami dan perangkat bantu lainnya.<br /><br /><br />Pengen juga nyobainnya, tp berhubung masih beta, yah.. tunggu versi finalnya de <img src="http://www.kafemaestro.com/forum/Smileys/default/cheesy.gif" alt="Cheesy" border="0" /><br /><br /><a href="http://ubuntume.kuwaitnet.net/downloads/ubuntuME-7.04-beta1-desktop-i386-cd1.iso" target="_blank">Klik disini untuk download versi beta UbuntuME.</a><br /><br /><br />Semoga bermanfaat... <img src="http://www.kafemaestro.com/forum/Smileys/default/smiley.gif" alt="Smiley" border="0" />Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-61354292365057630472007-09-27T14:08:00.000+07:002007-10-24T15:03:38.907+07:00Apa Itu Fungsi (Method)?Untuk memahami apa itu fungsi, anda bisa melihat ilustrasi di bawah ini:<br /><br />Seandainya kita harus mengirim surat undangan pesta ultah ke sobat2 kita, maka langkah2nya bisa jadi seperti berikut:<br /><br />1. Cari alamat teman kita<br />2. Ambil undangannya<br />3. Tulis alamat di undangan<br />4. Masukkan ke dalam amplop<br />5. Tempel prangko di amplop<br />6. Antar ke kantor pos<br /><br />nah kalo kita mau ngirim undangan ini ke 4 orang sobat kita maka langkah2nya<br /><br />1. Cari alamat teman kita<br />2. Ambil undangannya<br />3. Tulis alamat di undangan<br />4. Masukkan ke dalam amplop<br />5. Tempel prangko di amplop<br />6. Antar ke kantor pos<br /><br />1. Cari alamat teman kita<br />2. Ambil undangannya<br />3. Tulis alamat di undangan<br />4. Masukkan ke dalam amplop<br />5. Tempel prangko di amplop<br />6. Antar ke kantor pos<br /><br />1. Cari alamat teman kita<br />2. Ambil undangannya<br />3. Tulis alamat di undangan<br />4. Masukkan ke dalam amplop<br />5. Tempel prangko di amplop<br />6. Antar ke kantor pos<br /><br />1. Cari alamat teman kita<br />2. Ambil undangannya<br />3. Tulis alamat di undangan<br />4. Masukkan ke dalam amplop<br />5. Tempel prangko di amplop<br />6. Antar ke kantor pos<br /><br />Wah capek juga (walopun pake copas (copy-paste - red)). Kalo mau dibuat programnya berarti dibutuhkan sekitar 24 baris code program....<br /><br />Nah coba kalo kita buat jadi fungsi<br /><br />fungsi kirimUndanganUltah( )<br />{<br /> 1. Cari alamat teman kita<br /> 2. Ambil undangannya<br /> 3. Tulis alamat di undangan<br /> 4. Masukkan ke dalam amplop<br /> 5. Tempel prangko di amplop<br /> 6. Antar ke kantor posAntar ke kantor pos<br />}<br /><br />Nah buat ngundang 4 teman kita:<br /><br />kirimUndanganUltah( );<br />kirimUndanganUltah( );<br />kirimUndanganUltah( );<br />kirimUndanganUltah( );<br /><br />Wah kodenya tinggal 4 baris, menghemat kan dibanding 24 baris tadi.<br /><br />Kalau mau keren lagi, fungsi ini mesti bisa nulisin nama temen2 kita, maka:<br /><br />fungsi kirimUndanganUltah( namaTeman, alamatTeman)<br />{<br /> 1. Cari alamatTeman namaTeman<br /> 2. Ambil undangannya<br /> 3. Tulis alamatTeman di undangan<br /> 4. Masukkan ke dalam amplop<br /> 5. Tempel prangko di amplop<br /> 6. Antar ke kantor pos<br />}<br /><br />Maka jadi:<br />kirimUndanganUltah( genrow, Padang );<br />kirimUndanganUltah( coolhandluke, Kalimantan );<br />kirimUndanganUltah( xawenx, Medan);<br />kirimUndanganUltah( umat_gila, Tapanuli Utara);<br /><br />(Ilustrasi di atas berdasarkan sebuah artikel yg saya lupa penulisnya, telah diubah seperlunya)<br /><br />Dengan menggunakan fungsi, maka baris-baris kode yang ada di dalam fungsi dapat digunakan kembali (reusable).<br /><br />Fungsi sendiri terbagi dua, yaitu fungsi yang mengembalikan nilai, maupun fungsi yang tidak mengembalikan nilai. Di beberapa bahasa pemrograman, fungsi yang tidak mengembalikan nilai disebut prosedur (procedure), dan fungsi yang mengembalikan nilai disebut fungsi (function/method). Contoh: VB.Net. Sedangkan di beberapa bahasa pemrograman lainnya, fungsi yang tidak mengembalikan nilai, return type-nya cukup dibuat "void". Contoh: Java, C++, C#.<br /><br /><span style="font-weight: bold;">Contoh fungsi yang tidak mengembalikan nilai</span><br /><span style="font-weight: bold;">(VB.Net)</span><br /><span style="font-family:courier new;">Private Sub kirimUndanganUltah(ByVal namaTeman As String, ByVal alamatTeman As String)</span><br /><span style="font-family:courier new;"> 'kode program</span><br /><span style="font-family:courier new;">End Sub</span><br /><br /><span style="font-weight: bold;">(C#)</span><br /><span style="font-family:courier new;">private void kirimUndanganUltah(string namaTeman, string alamatTeman)</span><br /><span style="font-family:courier new;">{</span><br /><span style="font-family:courier new;"> // kode program </span><br /><span style="font-family:courier new;">}</span><br /><br /><span style="font-weight: bold;">Contoh fungsi yang mengembalikan nilai</span><br /><span style="font-weight: bold;">(VB.Net)</span><br /><span style="font-family:courier new;">Private Function kirimUndanganUltah() As Boolean</span><br /><span style="font-family:courier new;"> 'kode program</span><br /><span style="font-family:courier new;"> Return True</span><br /><span style="font-family:courier new;">End Function</span><br /><br /><span style="font-weight: bold;">(C#)</span><br /><span style="font-family:courier new;"> private bool kirimUndanganUltah(string namaTeman, string alamatTeman)</span><br /><span style="font-family:courier new;"> {</span><br /><span style="font-family:courier new;"> // kode program </span><br /><span style="font-family:courier new;"> return true;</span><br /><span style="font-family:courier new;"> }</span><br /><br /><br />Semoga Bermanfaat.... :)Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0tag:blogger.com,1999:blog-5913096193764500046.post-15596979662997823172007-09-27T13:01:00.000+07:002007-10-24T15:04:13.377+07:00Easter Egg OpenOffice.org Calc (Spreadsheet)Tadi pagi iseng2 aja browsing, eh ketemu easter egg-nya OpenOffice.org Calc (Spreadsheet). Ternyata selain buat hitung menghitung, aplikasi ini bisa juga buat hiburan. Game 2D yang bernama Star Wars disisipkan oleh para programmer OpenOffice.org Calc.<br /><br />Mo nyoba? Gini caranya:<br /><ul><li>Isikan salah satu cell dengan =game(). Setelah ditekan enter, akan muncul tulisan "say what?".</li><li>Untuk memainkan Star Wars isikan salah satu cell dengan =game("StarWars"). Tulisan StarWars case-sensitive. Tekan enter dan muncullah game Star Wars.</li><li>Kl sudah selesai memainkan Star Wars, bila kita mengisi cell dengan =game("StarWars") lagi, akan muncul tulisan "oh no, not again!". Kl mo main lagi, tutup dulu OpenOffice.org Calc-nya.</li></ul>Versi OpenOffice.org yang saya coba adalah 2.0 dan berjalan di sistem Linux. Btw, jangan mengharapkan game yang seru, soalnya game ini jadul abisss (th 96), kyk level 42 (game M$-DOS).<br /><br />Berikut screenshotnya:<br /><br /><div style="text-align: center;"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://web.usu.ac.id/dagu/images/starwars.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px;" src="http://web.usu.ac.id/dagu/images/starwars.png" alt="" border="0" /></a>Game Star Wars ala OpenOffice.org Calc<br /></div><div style="text-align: center;"><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://web.usu.ac.id/dagu/images/gameover.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px;" src="http://web.usu.ac.id/dagu/images/gameover.png" alt="" border="0" /></a>Duh, ga ngerti bahasanya, tp yang pasti Game Over<br /><br /><div style="text-align: left;"><br />FYI, gw cm ampe level 10 :(<br /></div><br /></div>Dani Gunawanhttp://www.blogger.com/profile/12912118411504085698noreply@blogger.com0