Archive

Archive for the ‘programming’ Category

Setting untuk printer Epson seri TM

January 5th, 2009

Cara init printer ala Frederick

  1. Matikan printer
  2. Tahan tombol Feed, terus nyalakan printer
  3. Pas udah kelar , pencet lagi feed sekali sampe keluar semua halamannya
  4. Baru pencet PUSH BUTTON ditempat lan sekali lagi
  5. Liat setting an di kertas, set ulang printer, baru bisa ngeprint

Update: Cara di atas itu cara bego kalo salah setting DIP switch. Sekarang udah bisa benerin DIP switch nya ^^. Silahkan liat bagian cheatsheet untuk keterangan lebih lanjut.

Set control font

Ada di folder ini nich

C:\WINDOWS\system32\spool\prtprocs\w32x86

Set dulu code2 aneh di situ baru bisa dipake ControlA font buat controlnya.

Referensi

Share

programming ,

mod_deflate pada Apache

January 5th, 2009

Latar belakang

Browser sekarang ini seperti Opera 9, Firefox 1.5, IE 6 sudah mendukung pengiriman data terkompresi (compressed). Gunanya adalah untuk mempercepat pengiriman data dari web server ke browser. Biasanya kompresi yang digunakan adalah gzip. Kompresi ini tidak disarankan untuk developer ketika membuka websitenya dari local area network, karena speed di dalam LAN itu sendiri sangat cepat, sehingga dengan di tambahkan nya kompresi di server dan dekompresi di bagian client, akan membuat proses sedikit lebih lambat. Tetapi hal ini jika digunakan untuk transfer data antar internet (bahkan dengan koneksi fiber optic sekalipun) akan membuat koneksi lebih cepat sekitar 10 – 30 persen.

Berikut saya akan jelaskan cara merubah setting apache anda supaya menggunakan mod_deflate, sehingga untuk setiap browser yang datang dan bisa menggunakan gzip sebagai metode pengiriman, akan di kirim dengan gzip. Apache mendeteksinya dari header: accept-content: gzip;

Setting Apache

Buat file setting tambahan

Jika anda menggunakan XAMPP sebagai default instalasi file anda, anda akan melihat ada folder /xampp/apache/conf/extra Anda bisa meletakan file baru ini di sana. Saya menggunakan nama file httpd-compress.conf sebagai nama filenya.

Pada CentOS taruh file ini pada /etc/httpd/conf/conf.d/httpd-compress.conf dan config akan dinyalakan otomatis pada startup apache.

Ada dua macam setting mod_deflate.

Kompress semua file yang akan di tranfer

Copy file di bawah ini ke dalam file yang baru saja anda buat

# Insert filter
SetOutputFilter DEFLATE
 
# Netscape 4.x has some problems...
BrowserMatch ^Mozilla/4 gzip-only-text/html
 
# Netscape 4.06-4.08 have some more problems
BrowserMatch ^Mozilla/4\.0[678] no-gzip
 
# MSIE masquerades as Netscape, but it is fine
# BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
 
# NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48
# the above regex won't work. You can use the following
# workaround to get the desired effect:
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
 
# Don't compress images
SetEnvIfNoCase Request_URI \
\.(?:gif|jpe?g|png)$ no-gzip dont-vary
 
# Make sure proxies don't deliver the wrong content
Header append Vary User-Agent env=!dont-vary

Kompress file2 tertentu saja

Saya membuat beberapa list di bawah ini , file2 yang biasanya di compress. File2 seperti mp3 dan jpeg akan error biasanya kalo di kompress, sehingga saya hanya kompress file yang bentuknya txt

AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/atom_xml
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-httpd-fastphp
AddOutputFilterByType DEFLATE application/x-httpd-eruby
AddOutputFilterByType DEFLATE text/html

Load file setting tambahan

Pada server windows anda harus menambahkan baris ini pada httpd.conf agar memberitahu apache supaya membaca config dari file lain. Pada CentOS anda dapat melewatkan baris yang ini, karena semua file dalam conf.d akan selalu di load.

# mod-deflate by rickyok
Include conf/extra/httpd-compress.conf

Nyalakan mod_deflate

Dan tentu saja supaya mod itu dapat bekerja, anda harus mengaktifkan terlebih dahulu dengan menghapus tanda # di depan ini. Cari baris di bawah ini di httpd.conf dan harus tanda # di depannya. Jika baris ini tidak ada di httpd.conf anda, kemungkinan besar apache anda belom support mod_deflate secara default. Anda harus compile ulang apache anda, atau download mod_deflate.so atau mod_deflate.dll

LoadModule deflate_module modules/mod_deflate.so

Referensi

Share

programming, web ,

IE Focus Problem

August 26th, 2008

I making an application that required to focus() on text input on a form. All the form is using AJAX. Usually u just need this command to make it work using Jquery:

$(“#search_code”).focus();

But i think IE 7 has a problem focusing on created-on-the-fly-DOM text input. It won’t focus. Firefox does this splendidly without any problem. So i think this may resolve the problem

$(“#search_code”).blur().focus();

And it doesn’t. I try to googling and found some site to try select first than focus. So i type this code :

$(“#search_code”).select().focus();

It work on the first DOM, when i remove the field and recreated it, it won’t focus anymore…

After 3 days stuck on this error. I decided on temporarily fixed this with stupid workaround

function ieFocus(el) {  // Damn IE  for(a = 0 ; a < 10 ; a++) {    el.blur();    el.focus();  }}

I’m trying to find a proper solution to this problem. Have anyone have a same problem before? Please reply ^^

Thanks in advance.

Share

programming

Cache your data

January 17th, 2008

Beberapa hari ini, gue diharuskan membuat aplikasi yang support diakses banyak orang dalam saat yang bersamaan. Dengan bertambahnya user akses berarti bertambah juga performance server yang diperlukan. Dalam riset beberapa hari ini, gue menemukan beberapa alternatif yang lumayan untuk mengurangi beban server. Gunakaan cache.

Apa itu cache?

Cache adalah proses membuat data sementara hasil render suata page ke dalam file atau database. Jika ada user lain yang meminta halaman yang sama ke server anda, anda tidak perlu merender lagi halaman tersebut, cukup baca hasil render yang sebelumnya.

Beberapa cara cache

1. memchached
memcached membantu anda untuk menyimpan hasil result dari query database ke dalam suatu server. Sebelum query anda dijalankan, anda akan mengecheck dulu di servernya memcached apakah query ini sebelumnya sudah dilakukan atau belom. Memcached menggunakan sistem hash dengan multiple server, sehingga anda bisa mengurangi sistem database anda menjadi sesedikit mungkin, sehingga bisa mengurangi cost untuk multi server databases.
Pro:
- Dipakai oleh situs2 besar seperti youtube, gamefaqs, dll, anda bisa melihat list lengkapnya di situs aslinya.
- Sangat membantu untuk mengurangi beban database. Menurut manualnya bisa mengurangi 8 koneksi database menjadi 1.
- 1 result hanya tersimpan di satu server, bukan di semua server. Pembagian server dibagi oleh sistem hashing. Jadi kalo anda punya 3 komputer dengan memory 2 giga, anda sama dengan mempunyai cache server dengan memory 6 giga.
- Berfungsi untuk banyak bahasa dan banyak sistem database.
Cons:
- Sangat memakan memory.
- Anda harus merubah semua logic code anda dari yang hanya baca dari database untuk check dulu ke cache baru baca ke database. Setelah baca dari database, anda akan memasukan result tersebut ke cache.

2. Code Igniter’s cache
Saya menggunakan codeigniter sebagai framework php saya. Keuntungan dari menggunakan framework ini adalah CI menyediakan fasilitas cache internal, tanpa load library tambahan. Anda hanya cukup memanggil satu baris ini di manapun code anda berada :

$this->output->cache(n);

dimana n adalah jumlah menit halaman itu ingin anda cache.
Pro:
- Sedikit sekali perubahan yang anda perlukan untuk menjalankan cache.
- Menggunakan sistem hash juga, tentu saja untuk paramater pemanggilan page yang berbeda, CI akan membuat file cache terpisah. /file/a/ tidak sama dengan /file/b/
- Tidak seperti memcache yang memcache result dari database yang masih harus di proses code PHP. CI mengload langsung code HTML yang sudah di render, hasilnya jauh lebih cepat.
Cons:
- Setiap web server mempunya cachenya masing2. Jadi masih akan membebani database walaupun halaman yang sama dipanggil, kalau user menggunakan server web yang berbeda.
- Membebani web server untuk menyimpan file cache.

Masih banyak cara lagi untuk melakukan cache. Kedua cara diatas bisa digabungkan untuk hasil yang lebih maximal lagi. Tetapi sejauh yang saya coba, cache CI sendirian cukup menurunkan beban server banyak. Sehingga jumlah 3 server bisa dikurangi menjadi 1 server saja.

Share

programming , ,

mod_deflate

December 7th, 2007

Gara2 lagi belajar jquery kemaren itu, akhirnya penasaran begimana caranya bikin file itu jadi 14 kb. Dan belajarin cara setting apache mod_deflate. Saya ada buat setting filenya dalam bahasa indonesia buat yang pusink setting nya. Bisa di liat di sini

http://www.rickyok.net/tutorial/apache_gzip

Semoga membantu.

Share

programming ,

Menghapus query history pada mysql

November 17th, 2007

Pada saat anda mengetik perintah SQL pada MySQL command-line di linux, perintah tersebut akan tertinggal di sana. Tekan tombol atas untuk melihat list perintah apa saja yang anda (atau orang lain dengan login yang sama) ketik sebelumnya.

Jika anda baru saja mengquery seseuatu yang tidak ingin orang lain lihat, tentunya anda tidak ingin log ini tertinggal. Anda bisa dengan mudah menghapus list ini dengan menghapus file .mysql_history yang terletak di home dengan perintah

rm ~/.mysql_history

Atau jika anda tidak ingin sama sekali untuk mempunyai log, anda bisa mengarahkan mysql_history itu ke /dev/null dengan cara menlinknya. Jangan lupa hapus dulu mysql_history.

ln -s /dev/null .mysql_history

Semoga membantu.

Share

programming , ,

Code Igniter Problem

October 5th, 2007

Gue udah pake framework CodeIgniter ini mayan lama dech, kurang lebih 1 tahun terakhir. Tapi baru kemaren ini ketemu masalah dengan database connection nya. Begitu di liat di MySQL nya, banyak banget connection yang sleep. Connection ini ngabisin resource MySQL, jadi engga bisa buka connection baru lagi kalo udah sampe Max allowed connectionnya. Setelah teliti punya teliti dan browsing2 google rupanya masalahnya ada di config databasenya CI.

$config["default"]["pconnect"] = TRUE;

pconnect itu artinya persistent connection. Jadi setelah kelar transaction dia engga putus dari databasenya. Setelah diganti jadi FALSE, semua masalah langsung jadi beres ^^. Agak lama sich, tapi yach mao gimana lagi.

Sekian, semoga membantu

Share

programming

Switch to our mobile site