Postingan

Compile Sphinx indexing engine di Mac OSX 10.6.3

Gambar
Cari solusi indexing database standalone yang handal? Salah satu solusinya adalah Sphinx . Sphinx adalah engine pengindeksan full-text yang didesain untuk terintegrasi dengan baik ke RDBMS-RDBMS macem MySQL dan PostgreSQL, dan yang asiknya laginya Sphinx sudah menyediakan API ke bahasa-bahasa scripting populer macem PHP, Python, Perl dan Ruby. Karena saya develop aplikasi pake bahasa skripting PHP, maka Sphinx merupakan solusi yang pas untuk saya. Salah satu fitur yang bikin saya ngiler adalah statement berikut ini: "high search speed (avg query is under 0.1 sec on 2-4 GB text collections)" Wuiidddiihhh kalo dibandingin sama indexing native mysql, 100 ribu records yang besarnya sekitar 30MB aje ude empot-empotan!!! Statement berikutnya juga bikin ileran "high scalability (upto 100 GB of text, upto 100 M documents on a single CPU)" Saat tulisan ini dibuat, saya develop aplikasi web pake Macbook Pro, OS Snow Leopard 10.6.3, dan karena saya males compile-comp...

Emang Enak Kepentok Proxy!!!

Mengembangkan software dengan menggunakan aplikasi source code management (SCM) emang enak. Kami, developer SENAYAN Library Management System (SLiMS) pake git buat source code versioningnya. Asiknya pake git dibandingkan dengan aplikasi SCM lain adalah git menerapkan model ter-distribusi, tidak centralize seperti cvs. Asyiknya lagi pake git, kita ga harus terkoneksi ke server, kita bisa pake lingkungan hard disk lokal untuk buat branch-branch dari project kita. Saya ga akan ngebahas cara make git disini, tapi saya ngebahas bagaimana kalau kita mau push dan pull request dari server repository git di internet, tapi kepentok sama proxy jaringan dan firewall yang biasanya cuman ngebolehin port 80 atau 3182. Tapi itulah keindahan dunia open source, "That's The Beauty of Open Source", udah ada aplikasi yang bisa bantu kita tunneling data dari git, yang by default pake protokol SSL. aplikasi command line ini namanya Corkscrew , dan tersedia untuk semua varian GNU/Linux,...

Workshop Nasional SENAYAN Library Management System!!!

Gambar
SENAYAN DEVELOPER COMMUNITY (SDC) kembali akan ngadain Workshop Nasional SENAYAN Library Management System (SLiMS), yang tepatnya akan dilaksanakan di Hotel Paragon Jakarta (daerah Menteng, Jakarta Pusat), pada tanggal 14 – 17 Desember 2009. Pastinya karena Workshop ini diadakan selama 4 hari 3 malam full, jadi materi yang diberikan juga akan sangat banyak dan men-detail. Workshop ini ditujukan kepada para pustakawan atau perorangan yang ingin memanfaatkan SLiMS untuk mengelola koleksi ditempat kerja. Materi workshop dirancang untuk membantu para peserta agar dapat segera mengaplikasikan SLiMS di tempat masing-masing. Dibagi dalam 10 (Sepuluh) modul dasar ditambah materi kustomisasi dan konversi data, pengetahuan dasar perpustakaan akan sangat membantu peserta memahami materi dan panduan yang di sampaikan. Dalam pelatihan, peserta akan menggunakan versi terbaru SLiMS – atau juga dikenal dengan SENAYAN 3 stable 12. Untuk brosur pendaftaran serta surat undangan bisa di-unduh (d...

jQuery, I Love You Full!

Di postingan sebelumnya saya membahas Prototype , sebuah framework Javascript ciamik untuk manipulasi DOM dan AJAX. Kali ini saya iseng-iseng coba sebuah framework Javascript yang sudah kesohor juga yaitu jQuery . kalau menurut hemat saya, jQuery punya model syntax yang lebih elegan dibandingkan dengan Prototype, hal ini bisa kita lihat dalam model object jQuery yang lebih simple, terutama dalam penanganan event. Penanganan event di jQuery nemungkinkan kita benar-benar memisahkan antara layer tampilan dengan layer logic pemrograman javascript. Perbedaan mendasar antara jQuery dengan Prototype adalah, fungsi $ pada jQuery menerima argumen string Selector CSS atau XPath dan selalu mengembalikan objek jQuery dalam bentuk Array atau List, sedang pada Prototype fungsi $ hanya menerima string ID dari element yang akan kita manipulasi dan mengembalikan object DOM yang sudah di-extend oleh metode-metode Prototype (walaupun sebenarnya Prototype punya fungsi yang serupa dengan $ -nya jQuer...

Instalasi library YAZ di PHP

Gambar
Pada SENAYAN 3 Stable 10 , saya menambahkan kemampuan untuk mengambil data melalui protokol Z39.50 pada modul Bibliography (Pengatalogan). Fitur ini memanfaatkan library PHP YAZ . YAZ sendiri adalah sebuah library untuk bahasa C yang dapat digunakan untuk membangun aplikasi server dan klien protokol Z39.50/SRW/SRU. Untuk lebih lengkapnya silahkan anda arahkan browser kesayangan anda ke laman resmi YAZ . Fitur Z39.50 di SENAYAN 3 Stable 10 diharapkan akan semakin memudahkan pustakawan untuk mengambil data langsung ke database online Library of Congress yang kesohor itu. Cukup masukan nomor ISBN, tunggu proses pengambilan data selesai, apabila berhasil anda tinggal memilih data mana yang akan dimasukkan ke dalam database SENAYAN anda. Hidup pustakawan semakin mudah kalau pakai SENAYAN hehheeheee :). Untuk yang belum mengetahui apa itu protokol Z39.50, Z39.50 adalah protokol klien server berstandar internasional (ISO 23950) untuk penelusuran dan temu kembali informasi antar komput...

Alya Bakhita

Gambar
Alya Bakhita. Yang Tinggi dan Beruntung. Anak dan putri pertama-ku dengan istri tercinta, Lia. Alya Bakhita Alya Pake Baju Kodok Alya Bakhita, Bunda dan Ayah

Anak Pertama-ku Telah Lahir!

Gambar
Alhamdulillah Wa Syukurillah , ALLAH SWT telah melengkapi kehidupan keluarga saya dan istri, dengan memberikan amanah-nya yang paling menakjubkan di alam semesta, seorang anak . ALLAH SWT telah meng-karuniai kami seorang putri yang cantik pada tanggal 5 november 2008, pukul 8.30 WIB, dengan berat 3,37 kg dan panjang 50 cm. Hingga tulisan ini dibuat belum diputuskan namanya (hehheeehee... kandidat si udah ada tapi belum diputuskan). Sedikit berbagi kebahagian berikut adalah foto-foto yang saya ambil beberapa jam setelah "ade" dilahirkan ke dunia :

Bikin Search Engine FullText dengan Zend Search Lucene - Searching/Pencarian

Pada posting sebelumnya saya sudah sedikit memaparkan bagaimana cara membuat dan menambahkan indeks database dokumen fulltext dengan menggunakan Zend Search Lucene. Sekarang saya akan sedikit memaparkan bagaimana cara untuk melakukan pencarian ke dalam indeks yang telah dibuat dengan menggunakan Zend Search Lucene. Untuk melakukan pencarian, Zend Search Lucene menyediakan beberapa metode, tetapi yang paling simpel adalah menggunakan metode find() , dari objek INDEX (instance fungsi factory Zend_Search_Lucene::open). Metode find() mempunyai 2 argumen, argumen pertama adalah kata kunci/keyword yang ingin kita query , dan argumen kedua adalah default field metadata yang akan di-coba temukan oleh indexer. HATI-HATI DENGAN QUERY WILDCARD (*)! Listing programnya kira-kira seperti ini : <?php // include paging class require 'lib/simbio_paging.inc.php' ; require 'lib/utils.inc.php' ; // get keywords $keywords = trim ( $_GET [ 'keywords' ] ) ; if ( $key...

Bikin Search Engine FullText dengan Zend Search Lucene

Zend Framework merupakan salah satu framework pengembangan aplikasi PHP yang canggih dan populer (ya iyaaalah yang buat developer di Zend, secara Zend yang buat engine pre-prosesor PHP). Framework ini tidak hanya menyediakan library-library yang memudahkan dalam pengembangan aplikasi yang modular dan kompleks, tetapi juga menyediakan fondasi pengembangan aplikasi model MVC (Model View Controller) yang sangat "sophisticated". Salah satu library dari Zend Framework yang sangat bermanfaat untuk pengembangan mesin pencari/search engine adalah library Zend Search Lucene . Zend Search Lucene adalah porting dari Apache Lucene , engine Java untuk peng-indeksan dokumen full-text yang sangat canggih saat ini dan masih terus dikembangkan. Hebatnya, hasil index dari Zend Search Lucene bisa dipake juga oleh Lucene dan juga sebaliknya! Perlu diingat secara default Lucene dan turunannya hanya meng-indeks file-file teks biasa seperti HTML, XML, TXT dll. Untuk mengindeks file-file PDF, ...