Tampilkan postingan dengan label Programming. Tampilkan semua postingan

Sabtu, 21 September 2013

Pengertian Captcha || Pembatas Spammer || PHP

2 komentar
CAPTCHA atau Captcha adalah suatu bentuk uji tantangan-tanggapan (challange-response test) yang digunakan dalam perkomputeranuntuk memastikan bahwa jawaban tidak dihasilkan oleh suatu komputer. Proses ini biasanya melibatkan suatu komputer (server) yang meminta seorang pengguna untuk menyelesaikan suatu uji sederhana yang dapat dihasilkan dan dinilai oleh komputer tersebut. Karena komputer lain tidak dapat memecahkan CAPTCHA, pengguna manapun yang dapat memberikan jawaban yang benar akan dianggap sebagai manusia. Oleh sebab itu, uji ini kadang disebut sebagai uji Turing balik, karena dikelola oleh mesin dan ditujukan untuk manusia, kebalikan dari uji Turing standar yang biasanya dikelola oleh manusia dan ditujukan untuk suatu mesin. CAPTCHA umumnya menggunakan huruf dan angka dari citra terdistorsi yang muncul di layar.


Saat tidak ada CAPTCHA, spammer/hacker sanggup membuat program yang secara otomatis mengisi formulir, seperti ndaftar email gratis, sehingga ia akan mempunyai ribuan alamat email dangan mudah dan kemudian disalahgunakan. Atau ditujukan mengubah sebuah hasil akhir polling online, dengan cara membuat program sederhana pengisi polling tersebut dengan jawaban yang diinginkan sebanyak ribuan atau bahkan jutaan kali. Akibatnya polling itu menjadi tidak valid. Disinilah CAPTCHA sangat berperan penting untuk memastikan bukan komputer yg mengisi formulir-formulir online, melainkan seorang manusia, karena komputer tidak akan bisa membaca huruf-huruf bengkok, bertumpuk, saling menyambung.

Fungsi Pokok Dari Captcha

1. Mencegah comment Spam pada umumnya Pemilik web/blog/dan lain-lain tidak hanya ingin komment webnya terlihat bagus dalam penampilan, kuantitas tapi tentu kualitas , tapi tidak tau kalo adminnya sendiri yang spam

2. Mencegah Spam Bot Tau sendiri Kan bot tak bisa membaca captcha, karena string string pemrogramannya sudah tetap . tak mungkin capthca yang setiap saat berubah dapat dibaca kecuali kalau bot itu berasal dari engine Blog itu sendiri

3. Mencegah Flood Siapa Yang Ingin Dia di Flood ? kecuali flood like tp kalau flood kata kata yang tidak pantas banyak lagi siapa yang mau coba ?? (Flood adalah mangirimkan data secara berulang ulang)

4. Melindungi Pendaftaran Email / User (khusus webmail) Dulu Pernah Kejadian Yahoo dan google diserang semacam bot yang mendaftar email sampai ribuan! ribuan e-mail palsu , pasti google dan yahoo ngamuk

Sabtu, 14 September 2013

Membuat Program dengan Baik || Programming

1 komentar
Untuk dapat menghasilkan suatu progam yang terstruktur dengan baik, perlu dilakukan persiapan-persiapan yang matang. Hal ini berlaku bagi siapapun, bahkan seorang programmer professional sekalipun. Karena itulah pada kesempatan ini saya akan memberikan sedikit pengetahuan mengenai persiapan apa saja yang perlu dilakukan oleh seorang programmer sebelum melakukan coding.

Programming memang sudah menjadi “makanan pokok” bagi masyarakat IT. Program yang paling sederhana sekalipun setidaknya memiliki 3 bagian:
1. Input – Masukan data.
2. Proses – kalkulasi, pemrosesan input.
3. Output – keluaran program, solusi yang kita harapkan.
Programming bisa membangun mental seseorang dan membawa manfaat yang begitu besar. Namun programming sebenarnya bukanlah segalanya. Programming hanyalah 1/9 bagian dari upaya penyelesaian masalah. 8/9 bagian sisanya adalah memahami persoalan, melakukan perencanaan-perencanaan (planning), mendesain, dan lain sebagainya.
Bagian terpenting sebenarnya tidak terdapat pada programmingnya, tapi ada pada proses dimana saat kita tau apa sebenarnya masalah yang timbul dan bagaimana planning langkah-langkah yang akan diambil untuk menyelesaikannya. Ingat, mengetahui apa sebenarnya masalah kita sama saja dengan kita sudah menyelesaikan 50% dari persoalan kita.
Dalam membuat sebuah program setidaknya ada 5 hal yang perlu anda lakukan:
1. Defining the problem
————————–
Problem disini adalah, bagaimana output program yang anda harapkan nantinya. Pada tahap ini kita harus mendefinisikan apa yang nanti akan dilakukan oleh program, dan bagaimana hasil yang dikeluarkannya nanti.
2. Planning
——————–
Definisikan langkah-langkah apa yang nantinya akan dilakukan oleh program yang anda buat dalam menyelesaikan masalah. Planning disini biasanya diterapkan dalam bentuk flowchart. Jadi, jika suatu ketika anda dihadapkan dalam sebuah masalah (membuat program), jangan langsung begitu saja terjun membuat program, namun buat terlebih dahulu flowchartnya.
Flowchart adalah suatu diagram menggunakan simbol-simbol khusus yang sudah menjadi standard internasional yang berisi langkah-langkah untuk menyelesaikan suatu masalah. Lho, lalu apa bedanya dengan algoritma? Hampir sama, namun pada algoritma kita diizinkan untuk mengunakan cara penulisan sesuka hati kita. Sedangkan pada flowchart kita harus menggunakan simbol-simbol yang telah ditetapkan. Oleh karena itu flowchart biasa juga disebut sebagai algoritma dalam bentuk simbol-simbol khusus yang dihubungkan dengan anak panah.
Membuat flowchart terlebih dahulu akan lebih menghemat waktu daripada langsung melakukan coding sambil mencoba-coba. Kegiatan mencoba-coba biasanya dilakukan oleh para newbie yang baru mengenal programming, dan ini merupakan hal yang buru. Karena itu, biasakan membuat flowchart terlebih dahulu sebelum memecahkan suatu masalah.
3. Programming
————————–
Kini saatnya anda menulis program, tahap ini juga mencakup tahap perbaikan error dan testing. Tulis program anda dengan terstruktur dan sesuai dengan flowchart yang telah anda buat.
4. Documentation
————————–
Setelah tahap coding selesai, sangat disarankan bagi anda untuk membuat semacam dokumentasi. Tambahkan komentar-komentar pada program anda dan “bukukan” program yang akan anda buat. Hal ini akan bermanfaat jika anda sudah membuat program yang begitu banyak, dan suatu ketika nanti (mungkin bertahun-tahun kemudian) anda ingin mengambil sebagian dari code program anda yang lama untuk disisipkan pada program anda yang baru. Bayangkan jika anda tidak membuat dokumentasi, waktu anda akan sangat terbuang dengan menelusuri program-program lama anda satu-persatu.
5. Implementasi
—————————
Tahap akhir anda adalah mengembangkan program anda dan membuatnya menjadi semakin baik.