Senin, 25 Maret 2013

Hobby Baru

Berawal dari penatnya dengan kesibukan dan rutinitas jadi kuli, tiba-tiba terlintas begitu saja keinginan untuk memiliki sebuah kamera yang kini sudah menjadi hobby mainstream di kalangan umum terutama di kota-kota besar, dari kalangan muda hingga tua tiba-tiba menggandrungi hobby tersebut.
Tidak ada yang salah dengan fenomena dimana banyak orang tiba-tiba mendadak memiliki minat di bidang fotografi, dari yang serius sampai kuliah-pun ambil jurusan fotografi, dan adapula yang hanya sekedar untuk senang-senang / iseng-iseng, tapi tidak sedikit juga yang hanya mengikuti trend / lifestyle semata. Hmmm saya kira-kira masuk kategori yang mana ya..?? hehe..

Yang menjadi ironis adalah sebenarnya hobby ini sudah lama saya coba untuk tekuni dahulu semasa kuliah dengan mengambil kegiatan mahasiswa di bidang fotografi, tapi karena waktu itu lagi hangat-hangatnya main musik / band jadi hanya satu kali masuk kelas fotografi tapi besoknya dan seterusnya Alpa terus :D
Jika diingat-ingat kembali kenapa saya mau coba masuk kegiatan mahasiswa di bidang fotografi tersebut adalah semata-mata hanya ingin mencoba apakah bakat atau seni yang pernah ayah saya geluti dulu sebagai wartawan / fotografer mengalir juga di diri saya. Hmm tiba-tiba pada saat saya menulis ini terlintas seberapa intens dan dekatnya beliau terhadap kamera, lensa, filter, Umbrella, Tripod dan peralatan lainnya bahkan sampai cuci cetakpun terkadang dilakukannya sendiri di kamar gelap, karena pada saat itu memang era kamera analog. Bahkan mungkin mainan pertama sayapun adalah beberapa tumpukan plastik bulet bekas roll film dibanding mobil-mobilan / robot-robotan. Saya ingat betul sesekali ayah saya sepertinya mencoba untuk memperkenalkan dunianya pada saat itu kepada saya diwaktu kecil, tapi entah kenapa tidak ada sepercikpun minat tersebut, sampai masa-masa SMA pun tidak ada kecemburuan sedikitpun ketika satu-persatu "peralatan tempurnya" diberikan kepada saudara ataupun orang lain. Ah iya terlintas lagi kenakalan masa kecil ketika beberapa petasan cabe rawit dan jangwes saya taruh bersamaan dengan lemari khusus yang biasa untuk meletakan lensa dan filter dengan lampu di dalamnya karena saya fikir itu cukup hangat untuk membuat petasan saya tidak sembleb. hehe. Sudahlah, nostalgia memang tidak ada habisnya. :)

Kembali lagi kepada hobby saya yang tiba-tiba muncul tidak terkendali ini saya putuskan untuk membeli sebuah kamera digital atau yang biasa disebut DSLR. 
Masalahnya adalah saya tidak punya cukup referensi/pengetahuan sama sekali untuk membeli kamera tersebut, sempat hampir tergoda untuk membeli kamera bekas pakai yang ditawari seorang teman. 
Hasil dari bertanya-tanya dari ayah saya, saudara, teman dan internet maka saya putuskan untuk beli baru saja, dan dari referensi di internet beberapa toko cukup banyak testimoni positif, hingga mengerucut kepada 3 toko yaitu : JPC Kemang, Jeff N Co CitraLand dan Focus Nusantara Tanah Abang, saya putuskan hari libur di hari sabtu untuk meluncur ke Focus Nusantara di tanah abang karena Jeff N Co ketika saya coba telpon memberi harga lebih mahal dibanding Focus Nusantara.
Ketika sampai di sana ada seorang newbie seperti saya yang boleh dibilang sedang diberi pelatihan atau berbagi ilmu yang dilakukan oleh staff toko tersebut dengan telaten, hmmm saya berfikir tidak salah saya kemari. Tidak beberapa saat saya dihampiri oleh seorang wanita penjaga toko dan saya minta untuk diambilkan Canon 600D dengan lensa kit 18-55, kenapa saya memilih tipe tersebut adalah karena kebetulan budget atau kemampuan saya memang hanya cukup untuk membeli tipe tersebut yang notabene menurut saya cukup baik untuk kelas pemula, Kalau ditanya kenapa pilihan jatuh kepada merk tersebut kenapa tidak merk lain seperti NIKON, SONY atau merk lainnya adalah lebih ke range harga dan tipe yang sedikit lebih variatif serta User Interface yang lebih friendly menurut saya pribadi. Soal kulitas perbandingan merk lain tersebut saya tidak tahu sama sekali sebelumnya meski sudah pernah sekilas mencoba menggunakan kamera dari beberapa merk tersebut. Saya fikir semua ingin memberikan yang terbaik, toh jika kualitasnya buruk mereka tidak akan eksis sampai sekarang, kembali lagi bicara merk adalah sangat subjektif sama ketika pertanyaan lebih bagus mana antara motor Honda dan Yamaha..?? tentunya berbagai perspektif muncul dari berbagai individu. 

Aduh sudah mulai ngantuk, besok harus nguli lagi nih, singkatnya hati-hati membeli kamera, karena tidak sedikit toko yang memanfaatkan ketidak tahuan kita sebagai calon konsumen mengenai kamera yang cukup kompleks dan presisi ini untuk mengambil untung sebanyak mungkin dari calon pembelinya.

Jangan terlalu mengambil kesimpulan jika kamera yang kita beli tidak sebagus tipe atau merk lain, jangan-jangan malah kita yang belum explore lebih jauh lagi feature-featurenya. :D

Oh iya tadi ada teman yang bawa kamera Nikon D3100, setelah dicoba lebih jauh ternyata memang saya tidak salah pilih.. Canon memang cocok untuk saya.. hehe..

Link referensi :








Selasa, 13 November 2012

Jumat, 03 Agustus 2012

Mengetahui Tipe MotherBoard Tanpa Bongkar CPU

Berawal dari teman yang ingin nitip tuk dibelikan RAM, lalu saya bertanya 
Saya : "RAM nya tipe apa..?"
Teman : Wah apa ya..
Saya : Ya udah klo gak tau, merk motherboardnya apa..?
Teman : MotherBoard apaan..?

Daripada saya suruh bongkar itu CPU nya bisa-bisa malah takut meledak :D
Mending dituntun aja untuk masuk command Prompt lalu ketik 'wmic', setelah itu ketik 'baseboard', sehingga menjadi seperti berikut : wmic:root\cli>baseboard
dengan demikian muncul beberapa informasi, diantarnya adalah tipe MotherBoard, sehingga kita bisa browsing untuk mencari tahu device lain yang kita perlukan dengan kata kunci tipe motherboard tersebut.

Minggu, 29 Juli 2012

Finger Print dengan VB.NET

Berawal dari permintaan seorang temannya teman yang meminta dibantu untuk dibuatkan program absensi karyawan dengan menggunakan FingerPrint. Awalnya saya sempat menolak dikarenakan memang Dead Line kantor juga mendesak, namun setelah dipikir-pikir ini sebenarnya salah satu obat dari penasaran saya semasa kuliah yang belum terobati, pada waktu itu sangat ingin tahu sekali  dan mengoprek si FingerPrint tersebut namun dikarenakan harus membeli alatnya dan waktu itu harganya pun masih selangit (buat ukuran Mahasiswa kala itu) hingga kini sampai lupa.
Sebenarnya di masa-masa awal kerjapun saya sudah sempat mengoprek si FingerPrint tersebut, namun hanya sekedar membaca data yang sudah ada yang kebetulan berbentuk .MDB. Dan sebenarnya inilah yang membuat enggan untuk mencari tahu lebih lanjut dikarenakan sudah banyak vendor yang menjual alat FingerPrint plus membuat aplikasi absensi lengkap dengan berbagai feature yang sangat membantu khususnya pada divisi SDM yang dijual cukup relatif murah, apalagi untuk ukuran sebuah perusahaan, ditambah lagi databasase yang digunakanpun sangat mudah dimengerti oleh orang awam sekalipun.

Atas dasar memenuhi rasa penasaran dan niat ingin membantu  mulai deh saya sms si mahasiswa semester akhir tersebut untuk segera datang ke rumah dan membawa FingerPrint beserta drivernya, dengan catatan saya mau bantu cuma sampai koneksi si FingerPrint tersebut hingga dapat dibaca dan disimpan ke dalam database, selanjutnya silahkan dikembangkan sendiri lebih lanjut. 

skip..skip.. dan...

Mulai install sudah menemukan masalah yaitu masalah kompatibilitas driver, sepertinya kalau dilihat-lihat bawaan CD Drivernya hanya untuk windows XP, sedangkan yang saya gunakan adalah WIndows 7 64 bit pula. Ok gak masalah saya ganti komputer yang masih windows 7 namun menggunakan 32 bit. Proses Instalasi driver dan SDK berjalan lancar, namun saya masih bingung kok Si FingerPrint tidak ada tanda-tanda kehidupan alias mati (biasanya setahu saya si FingerPrint akan menyala lampunya jika sudah berhasil konek).Ah tidak bisa juga akhirnya kembali ke komputer windows 7 64 bit namun harus download via internet yang memang kompatibel. Dan Berhasil..!

Perlu diketahui, untuk menggunakan dan berkomunikasi antara komputer dengan hardware saat ini dan sudah kebanyakan vendor juga memberikan berikut driver dan SDK siap pakai yang diberikan jika kita membeli sebuah hardware. SDK (Software Development Kit) adalah kumpulan beberapa perintah yang menunjang untuk komunikasi dengan hardware tersebut dan sudah menjadi class, .dll, library dan lain-lainnya yang siap pakai, namun masalahnya adalah mudah atau tidaknya dalam penggunaan serta banyak atau tidaknya literatur juga kelengkapan dari fungsi-fungsi dalam SDK tersebut.
FingerPrint ini merknya "Digital Persona", kalau menurut saya vendor ini lumayan taktis, mereka hanya memberikan literatur dasar yang bertele-tele dan dan tidak tepat sasaran, jika ingin lebih mudah dan fitur lebih lengkap harus bayar :p
Tapi tetap tidak putus asa, dengan sedikit basic programming dan browsing sana-sini akhirnya ditemukan solusi dengan tetap menggunakan dan memaksimalkan SDK yang ada.

Inti dari sebuah FingerPrint adalah teridentifikasinya sidik jari oleh sebuah komputer yang dapat diterima dalam bentuk gambar maupun byte array sehingga bisa tersimpan di DataBase.
Dalam oprekan di sini saya belajar beberapa hal baru yang sebelumnya jujur saya belum mengetahuinya. yaitu bahwa sebenarnya komputer benar-benar menterjemahkan bentuk dari sidik jari kita, karena tidak mungkin sidik jari kita yang tersimpan di database dalam bentuk binary harus sama persis dengan byte atau binary kita pada saat menempelkan jari untuk absen, karena bisa saja pada saat registrasi jari kita posisinya agak ke belakang, sedangkan pada saat absen agak ke depan dsb, salut buat yang membuat dan menemukan algoritma dasar dalam mencocokkan sidik jari tersebut :)

Sebelum menemukan hal tersebut di atas lah saya sempat berkutat dengan query "select [field sidik jari] from [tabel] where [field sidik jari]=[sidik jari pada saat absen], bingung kok gak ketemu-temu, jawabannya adalah "YA IYA LAAAAH", jadi mentertawakan diri sendiri ketika sudah membaca artikel di sini "http://drmgroup.wordpress.com/2010/07/23/cara-kerja-mesin-scanner-fingerprint/" :D

Saya memfokuskan pada proses Registrasi Sidik jari untuk disimpan di Database serta proses Identifikasi untuk membaca atau mencocokan Jari dengan data yang ada dalam Database.
Menurut saya kalau kedua itu sudah dapat terpenuhi siapapun yang punya dasar pemrograman dan terbiasa membuat program insert, dan update data pasti sudah bisa melanjutkan dan dikembangkan sedemikian rupa.

Ada 5 file dll yang kita gunakan pada references file yaitu


* Private Sub verifyControl_OnComplete(ByVal Control As Object, ByVal FeatureSet As DPFP.FeatureSet, ByRef EventHandlerStatus As DPFP.Gui.EventHandlerStatus) Handles verifyControl.OnComplete
 berfungsi untuk menangkap event ketika sidik jari ditempel dan berhasil dibaca oleh alat.

* Private Sub enrollControl_OnEnroll(ByVal Control As Object, ByVal FingerMask As Integer, ByVal Template As DPFP.Template, ByRef EventHandlerStatus As DPFP.Gui.EventHandlerStatus) Handles enrollControl.OnEnroll
untuk registrasi.

Kalau dijelasin semua pegel ah, silahkan download aja deh, selamat berkarya,...!

*Akan tetapi sudah sebegitu terang benderangnya, yang bikin saya sedih si mahasiswa tersebut bertanya "Terus kalau kita ingin menampilkan data yang sudah tersimpan agar menjadi laporan bagaimana..? dan bla2" (dalam hati hey,, kamu sudah semester akhir loh..!), jadi tahu ternyata dia bukan ingin belajar tetapi ingin dibuatkan dan terima beres. 
Sorry to say, prinsip saya sukarela membantu bagi orang yang punya niat kuat ingin belajar dan saya berikan gratis dengan senang hati, kalau ingin terima beres berarti anda sedang berbisnis dengan saya. Dan tarif saya mahal loh, mahasiswa gak mampu bayar dehh..!! hehe (kidding). :D :D






Jumat, 04 November 2011

Cerita Ayah, anak dan Seekor keledai kecil.

Ada seorang ayah yang mengajak anak kecilnya berkeliling desa dengan harta satu-satunya yaitu seekor keledai kecil.

pertama sang anak disuruh naik di atas seekor keledai tersebut dan sang ayah berjalan sambil menuntun keledai.
Lalu pada sebuah desa mereka melewati dan mendapati kerumunan orang yang sedang berkumpul dan terdengar sekilas perkataan beberapa orang tersebut yang berucap "Sungguh Durhaka anak itu membiarkan sang ayah yang sudah tua berjalan menuntun keledai..!".

Lalu sang ayah menyuruh anaknya turun bergantian untuk bertukar posisi menuntun keledai tersebut, sang ayah kini yang menaiki si keledai dengan nyaman.
Dan setibanya pada suatu persimpangan pasar, merekapun mendengar beberapa orang bahkan sambil berteriak "Ah si bapak tidak tahu diri.. masa dia enak-enakan anaknya yang masih kecil disuruh berjalan menuntun keledai..sungguh biadab..!"

Seketika mereka berhenti dan menyuruh anaknya untuk ikut di atas menaiki keledai tersebut. Perjalananpun dilanjutkan..
Namun setibanya di sebuah persimpangan desa ada beberapa pemuda yang melihat mereka dengan sinis dan salah satu dari mereka berucap "Dasar keluarga tidak menghargai sesama makhluk ciptaan Tuhan, masa keledai sekecil itu dinaiki orang berdua..huh..!"

Tidak jauh dari para pemuda tersebut sang ayah mengatakan kepada anaknya untuk bersama-sama melanjuti perjalanan sambil menggotong keledai tersebut. Dan tidak lama kemudian mereka mendapati sekelompok orang sedang tertawa terbahak-bahak menyaksikan ada seekor keledai sehat yang sedang digotong-gotong seraya berkata "Bodooh..bodooh.. dasar keluarga bodoh, masa keledai digotong-gotong..bukan ditunggangi"

Kemudian sang ayah dan anaknyapun menurunkan keledai tersebut seiring berkata "Itulah manusia nak, sesungguhnya inilah yang ingin ayah tunjukan padamu"


Demikian semoga menjadi renungan

Sabtu, 24 September 2011

Koneksi PHP dan MYSQL

Ada beberapa hal penting yang kadang kita lupakan ketika menggunakan konfigurasi PHP secara manual. Diantaranya adalah :
1. Sudah pasti kita terlebih dahulu sudah menginstal MYSQL pada pc, dan sebagai User Interface saya menggunakan mysqlcc (tergantung selera).

2. Pastikan baris
extension=php_mysql.dll pada php.ini sudah diUnmark (dengan membuang tanda titik koma di depan).

3. Pastikan pula file php.ini yang kita konfigurasi adalah file yang benar. lihat baris "Loaded Configuration File" pada phpinfo.
=> untuk membuat phpinfo lihat pada tulisan sebelumnya (http://elconie.blogspot.com/2011/08/install-php-53x-dan-apache-web-server.html) point nomor 13.

4. pada file php.ini sesuaikan baris extension_dir = "c:\php\ext"  dengan folder php yang ada di pc  kita.


5. Adapun perintah dasar yang sering digunakan pada pengoperasian database mysql pada php adalah sebagai berikut :
(catatan : banyak cara menggunakan perintah mysql pada database, namun yang pernah saya alami adalah beberapa syntaks terkadang terbentur masalah kompatibilitas versi..!)
berikut yang biasa saya pakai dan sekaligus sebagai contoh cara untuk menampilkan "total visitors" pada website.
<?PHP
$server = "localhost"; //normally localhost
$db_user = "root"; //your MySQL database username
$db_pass = "rootPass"; //your MySQL database password
$database = "myDB";

$timeoutseconds = 300;

//this is where PHP gets the time
$timestamp = time();
$timeout = $timestamp-$timeoutseconds;

if (!$link = mysql_connect($server, $db_user, $db_pass)){
    echo 'Could not connect to mysql';
    exit;
}
mysql_select_db($database,$link);
//insert the values
$varIP = $_SERVER["REMOTE_ADDR"];
$varFILE = $_SERVER["PHP_SELF"];

$insert = mysql_query("INSERT INTO useronline VALUES
('$timestamp','$varIP','$varFILE')", $link);
if(!($insert)) {
print "Useronline Insert Failed > ";
}

//grab the results
$result = mysql_query("SELECT DISTINCT ip FROM useronline WHERE file='$varFILE'", $link);
if(!($result)) {
print "Useronline Select Error > ";
}

//number of rows = the number of people online
$user = mysql_num_rows($result);
print($user); // result value
//spit out the results
mysql_close();
?>


=> cara lain untuk menampilkan data :
$permintaan=mysql_query("select image from tbl_user where id=$items[$i]");
            while($hasil=mysql_fetch_row($permintaan)){
                $image=$hasil[0];
            }

Minggu, 28 Agustus 2011

Install PHP 5.3.x dan Apache Web Server 2.2.x

Cukup lama tidak bermain - main dengan web terlebih lagi designnya, berhubung ada teman yang minta dibuatkan untuk perusahaan pribadinya maka saya berniat membantunya sekaligus refreshing dan reuni dengan PHP. :D
Hal yang pertama saya lakukan adalah setup PHP dan Apache Web Server di PC. Saya tidak akan membahas fungsi kedua tools tersebut, karena penjelasan masing - masing sudah banyak penjelasannya secara lebih terperinci.
Seperti yang sudah saya atau beberapa teman alami maka saya cenderung menggunakan PHP versi "non instalasi" alias setup manual karena dirasa lebih stabil, mungkin karena tidak melibatkan registry sehingga dependency dengan program lain maupun file system sangatlah kecil.

Mari kita mulai....

1. Download  Apache Web Server di http://httpd.apache.org/download.cgi#apache22
dan saya menggunakan versi 2.2.19 versi no-ssl.

Saat ini saya menggunakan versi 5.3.8, pilih yang versi "Thread Safe" karena yang "Non Thread   Safe" tidak menyediakan module file untuk Apache Web Service.

3. Install Apache Web Server
 ikuti seperti yang tertera di atas. Lalu "Next > "

4.
 Pilih saja "Typical", Lalu "Next >"

5. 
Tunggu proses sampai selesai.

6. Setelah proses ini selesai maka proses instalas Web Server selesai.
Cek apakah sudah terinstall dengan benar dengan cara menjalankan Apache Web Server yang bisa dijalankan dari menu "taskbar" seperti gambar berikut :
 Jika lampu masih merah, maka jalankan dengan memilih tombol "Start".
Jika muncul pesan error ketika dijalankan kemungkinan bentrok dengan "IIS" Matikan / Stop "Internet Information Service" nya windows.


7. Jalankan browser dan ketik alamat pada address bar "http://127.0.0.1/"
Jika Apache Web Server sudah terinstall dengan benar maka akan muncul seperti gambar berikut :
  
Jika sudah demikian maka proses selanjutnya adalah konfigurasi PHP dan Apache.
8. Ekstrak File PHP hasil download di folder "C:\php".


9.  Copy file "php.ini-development" ke folder "C:\windows", lalu ubah file yang sudah ada di "C:\windows" tersebut menjadi "php.ini".

10. Buka file "php.ini" tersebut, cari baris "date.timezone". Ubah menjadi :
Lalu "Simpan", jika penyimpanan gagal silahkan matikan dulu / stop Apache Web Server 
(seperti langkah No. 6). Jika masih gagal coba cek security / permission file tersebut. Hal ini juga berlaku pada langkah selanjutnya.

11. Buka File "httpd.conf" yang terdapat pada "C:\Program Files\Apache Software Foundation\Apache2.2\conf"
tambahkan di akhir baris sebagai berikut :
LoadModule php5_module "C:/php/php5apache2_2.dll"
ScriptAlias /PHP/ "C:/php/"
AddType application/x-httpd-php .php .phpt .phps .html .
Action application/x-httpd-php "/.PHP/php-cgi.exe"
PHPIniDir "C:/windows" 


Lalu Simpan perubahan tersebut


12. Tambahkan "Environment variables" dengan cara klik kanan pada "My Computer"
Tambahkan baris "c:\php;c:\php\ext", seperti berikut :
Lalu "OK"


13. Keseluruhan konfigurasi telah selesai, selanjutnya adalah membuat file untuk mengecek apakah PHP dengan Apache Web Server sudah saling terhubung.
Yaitu dengan cara membuat file pada folder "C:\Program Files\Apache Software Foundation\Apache2.2\htdocs", beri nama file tersebut adalah "phpinfo.php". Adapun isi baris dari file tersebut adalah :
<?PHP
     phpinfo();
?>


14. Jalankan browser, pada address bar ketik alamat berikut : "http://127.0.0.1/phpinfo.php"
sehingga akan tampil sebagai berikut : 

Jika sudah demikian maka "Selamat dan selamat berkarya" :D
Jika tidak muncul, pastikan "Apache Web Server" sudah aktif / Start (lihat langkah no. 6).