Oktober 21, 2013

Awesome Window Manager (3.5.2) and Java 7 GUI Problem

Some complaints have been reported about Java GUI (AWT/Swing) that does not behave correctly under Java GUI. This problem come in the form of empty contents in Java GUI window and also some weird behaviour in Java GUI menu (wrong cursor pointer position, menu doesn't want to display its contents without click and hold mouse button). This problem usually only happens in some exotic non-reparenting...

Oktober 01, 2013

Introspeksi Untuk Rekayasa Web: Aplikasi Web atau Sistem Web?

Selama ini kita cenderung menyebut istilah software yang ada di Internet dan menggunakan infrastruktur dari W3C untuk antarmuka dengan manusia melalui browser sebagai aplikasi Web. Istilah ini mempunyai konotasi sendirian dan hanya dimaksudkan untuk berinteraksi dengan manusia saja. Secara normal, kondisi ini seperti kondisi manusia yang egois: "ini yang saya punyai, silahkan kalau kamu mau berkomunikasi ...

Aplikasi Web di Masa Depan: Semakin Konvergen dengan Teknologi Agen

Agen bukan merupakan hal baru di dunia informatika. Sejak perkembangan AI (Artificial Intelligence - Kecerdasan Buatan), agen sebenarnya merupakan inti dari pembahasan. Jika dirunut sejak awal, kita bisa melihat teori agensi pada pemodelan ekonomi (principal-agents). Teori agensi pada pemodelan tersebut mendasarkan pada pemikiran bahwa principal selaku pemilik merekrut, menggaji, mempekerjakan...

Juli 21, 2013

Using Vim for Java + Gradle

Short posting. I've created a repo so that I can clone it everytime I want to create new project. See here: https://github.com/bpdp/vim-ja...

Juli 19, 2013

Tulisan ini merupakan kelanjutan dari tulisan sederhana tentang basis data graf sebelumnya. Kali ini saya akan menuliskan sedikit tentang memulai menggunakan Titan [1] yang merupakan basis data graf dengan kapabilitas penyimpanan dan pemrosesan data masif (web scale atau big data). Titan adalaha softwae bebas dengan lisensi Apache [2]. Titan sebenarnya terdiri atas 2 bagian: Distribusi Titan Storage...

Juli 15, 2013

Menggunakan Gradle untuk Grizzly

Tulisan sederhana ini akan menjelaskan penggunaan Gradle dalam konteks sebagai build tool, khususnya untuk membangun aplikasi server yang scalable berbasis NIO. NIO atau lebih lengkapnya NIO.2 adalah pustaka untuk I/O di Java yang dispesifikasikan pada JSR 203. Jika dulu pilihan untuk membangun aplikasi server - khususnya server web - terbatas pada penggunaan JSP dan Servlet...

Juli 14, 2013

Pengantar Teknologi Basis Data Graf

Artikel ini merupakan pengantar ke basis data graf yang sekarang mulai marak dibicarakan dan diimplementasikan. Pengantar ini diperlukan sebelum membahas software basis data graf terdistribusi menggunakan Titan [1]. Jika akan dikategorikan, Titan ini masuk ke dalam kategori basis data NOSQL (Not Only SQL) untuk membedakan dengan basis data relasional (RDBMS) seperti PostgreSQL, MySQL, Oracle Database...

Juni 18, 2013

Battery Warning Notification for Awesome Window Manager

Just a quick hack for my awesome window manager configuration. There are some widget libraries for awesome that can be used, but this configuration doesn't need them. If you have awesome, then you are set. What I did was reading battery status ("Discharging" or "Charging") and also battery capacity and then put them in awesome timer, call it every 2 minutes. In each call,...

Mei 15, 2013

IDE dan Pengajaran Pemrograman

Tulisan ini berangkat dari pengalaman saya mengajar pemrograman selama bertahun-tahun (kurang lebih sekitar 13 tahun). Pemrograman memang sering menjadi momok bagi mahasiswa Informatika. Cukup menggelikan, karena kalau tidak mau bertemu dengan pemrograman seharusnya mahasiswa tidak masuk ke Informatika, but you know ... Selama bertahun-tahun, barangkali para mahasiswa saya mengenal saya sebagai...

Mei 09, 2013

Add MIME types into LiteIDE editor

This is just simply a note to myself. LiteIDE uses some text files for its configuration. Using View - Options menu, one can update LiteIDE configuration, but not all of its configurations can be changed this way. One example is the MIME types. I use "*.tpl" for my template file's pattern. This extension file name is not exist in MIME Types from View - Options - LiteEditor...

April 29, 2013

Mengakses Java dari SWI Prolog

SWI Prolog mempunyai fasilitas bi-directional untuk menghubungkan program Java yang kita buat dengan Prolog dan sebaliknya, jadi kita bisa mengakses Java melalui SWI Prolog, demikian juga Java bisa menggunakan kemampuan rule-based system dan fasilitas-fasilitas dari SWI Prolog. Fasilitas ini akan disertakan secara langsung saat mengkompilasi SWI Prolog jika kita...

April 24, 2013

LiteIDE X: IDE Cross Platform untuk Go

IDE (Integrated Development Environment) adalah komponen penting dalam pengembangan software. Dengan software ini, pengembang bisa menggunakan komponen-komponen yang terintegrasi ke dalam satu software sehingga memudahkan pengembangan untuk fokus pada pekerjaan pengembangan software. Jika pada beberapa waktu yang lalu saya sudah membahas penggunaan Vim sebagai IDE dari...
Saat sudah membuat proyek pengembangan software menggunakan Go dan akan dipublikasikan ke server penyedia repository Git (seperti github.com, bitbucket.org, atau assembla.com), kita harus menentukan struktur direktori yang baik dari proyek kita. Berdasarkan panduan dari How to Write Go Code (http://golang.org/doc/code.html), tiap proyek kita bagi menjadi beberapa...