Tentang SMS Ramalan

Pas nonton TV, sambil nunggu semi-final Euro 2008 antara Jerman-Turki, ngeliat iklan SMS ramalan Ki Joko Bodo, ketawa2 sendiri. Lucu banget nih orang, sambil nunjuk2 di layar, nyuruh daftar SMS ;)) Terus semakin iseng, search di google tentang SMS ramalan, eh nongol link ini.

Baca »

Cara Gampang Ngecrack MD5 Hash

MD5 adalah algoritma enkripsi satu arah (HASH), tidak bisa di dekripsi kembali. Banyak dipakai di industri, terutaman sebagai enkripsi password di database, atau pembuat session ID. Karakteristiknya adalah panjang 128-bit (23 32 karakter hexa).

Seandainya aja, kita ada 1 hash MD5, yg pengen kita tau, isinya apa, misal:

d4dbac4c0caac0b3d5126216c86fbfb4

Saya cukup cari di Google, nah, akan muncul 2 link atau beberapa link yang paling ngga menunjukkan isinya. Yang paling keren adalah munculnya link yg ngebrute-force MD5 ini, jika anda sabar, maka hash diatas akan terbaca kata aslinya apa.

Apa yah kira2???

Cara spammer mendapatkan email anda

Mau tau bagaimana spammer mendapatkan alamat email anda walaupun anda ngga join segala macam newsletter, atau newslist atau apa lah. Begini cara mereka

Dan yg mereka butuhkan hanya seorang programmer biasa yg bisa nge-parse output HTML nya

Mengirim request HTTP Post dengan PHP

Bikin request HTTP GET dengan PHP emang gampang. Cukup:

$url = 'http://google.com/';
echo file_get_contents($url);

Tetapi, gimana kalau request POST? Ada banyak solusi. Pertama pakai CURL, yg kedua, bikin request HTTP manual, misal:

$fp = fsockopen($host,$port);
fputs($fp, "POST / HTTP/1.0\r\n".
"Content-Length: 3\r\n".
"Content-Type: application/x-www-form-urlencoded\r\n\r\n".
"x=2");
...

Tapi kan ngga seru, panjang dan rawan problem. Solusi gampang, kita bisa pakai stream_context_create, cara pakainya gini:

$vars='a=1';
$context = array('http' =>
    array(
        'method' =>	'POST',
        'header' =>	"Content-type: application/x-www-form-urlencoded\r\n" .
        "User-Agent: PHP pake stream\r\n" .
        "Content-length: " .strlen($vars),
        'content' => $vars
    )
);
$cid = stream_context_create($context);
$sock = fopen($url, 'r', false, $cid);
$data = '';
while(!feof($sock)) { $data .= fgets($sock, 2048); }
fclose($sock);

Lebih bersih dan lebih simpel dari bikin HTTP request biasa. Nah, daftar opsi context untuk protocol HTTP nya bisa di lihat disini manual PHP bagian HTTP context. Dan untuk protokol2 lain, silahkan baca baik2 di manual PHP bagian context

Happy coding ;)

Apa yang diperlukan Programmer dari Managernya

Ini saya ada beberapa list yang menurut saya diharapkan oleh programmer / developer dari managernya

  1. Developer Abstraction Layer - berikan beberapa instruksi dasar, yang penting. Nyatakan maksud anda, tetapi jangan bertele-tele, mendikte, dan detail yang kompleks. Itu membosankan
  2. Fleksibel - jangan mengatur developer untuk waktu coding yang tepat. Bila saya ingin coding di jam 2 sore, biarkan. Komputer tidak protes ketika di pakai coding jam 3 pagi, manager harusnya juga
  3. Percaya - percayailah programmer, bukan hanya khusus programmer, tetapi employee secara keseluruhan. Bila pegawai tidak dipercaya, bagaimana dia bisa bekerja?
  4. Buat programmer itu bahagia - seorang programmer yang bahagia, adalah programmer yang produktif. Traktir makan, berikan cuti yang cukup, insentif dan bonus, dia tidak akan lari mencari pekerjaan lain
  5. Berikan guidance, tetapi jangan over-manage - Manager punya gambaran besar. Berikan bimbingan ke programmer, tetapi tidak perlu tahu detailnya. Manager bukan babysitter, manager adalah team-mate programmer
  6. Accessible - jadilah manager yang selalu bisa dikontak untuk info2 cepat
  7. Punya Jawaban - Manager harus tahu segalanya yang terjadi di kantornya. Selalu terorganisasi dan connected
  8. Punya Prioritas - Prioritaskan task2 dan project anda, agar programmer anda selalu mengerjakan sesuatu yang penting
  9. Nyatakan ekspektasi anda - Programmer harus tau apa yg diharapkan manager dari dia. Agar dia bisa mengukur performance dia sendiri. Sehingga pada saat review, dia tidak akan kebingungan.

Password Generator

Generate (lumayan secure) password berdasarkan kata2 hint atau petunjuk yang anda masukkan sendiri. Silahkan coba, minim resource kok, hanya statik HTML dan sedikit JavaScript.

http://ferdianto.com/genpassword.html

Untuk bugs atau feature request, masukin ke comment di artikel ini aja. Thanks

Internet Sebagai Solusi Global Warming

Internet sebagai media komunikasi sebenarnya punya potensi untuk mengurangi efek Global Warming. Jika saja beberapa orang bisa bekerja di rumah, dan anak sekolah hanya pergi ke sekolah di hari2 tertentu saja, dan pelajaran bisa dilakukan di rumah secara online. Mall-mall besar diubah menjadi semacam Amazon atau E-Bay, pasar2 yang biasanya ramai berubah menjadi ruang server dan gudang, yang berisi distributor yang sibuk mengantarkan pesanan ke rumah2, sudah berapa banyak listrik yang bisa di hemat, BBM yang tidak terbuang percuma untuk 10/20Km perjalanan ke sekolah/kantor, dan CO2 yang dilepaskan pasti lebih berkurang juga.

Untuk itu, marilah kita pelihara bandwidth dan jaringan internet. Hentikan kegiatan spamming yang menghabiskan bandwith, secara mana ada sih orang yg baca misguided email semacam itu, gunakan richtext seperlunya, buang jauh2 flash dan selalu gzip HTTP response dari server anda, maka bukan tidak mungkin, dengan kehadiran internet, demand BBM yg semakin melonjak bisa dikurangi.

Mungkin saja..