Dimana Belajar Kode Komputer? Gratis? Iya!

bart simpson will use google

Saya sering ditanya “Bagaimana memulai mengkode pemrograman?” atau “Dimana belajar koding?”. Buset dah, seakan penanya pikir saya ahli gitu. Padahal mah boro-boro, ilmu saya cuma secuil. Hehe. Tapi karena saya sok-sokan saja, walaupun imu sedikit tapi sok berbagi, maka ijinkan saya berbagi sedikit disini beberapa tempat untuk belajar kode.

Karena kere bin gembel, ini beberapa sekolah yang setahu saya gratis-gratis aja belajarnya. Online pula. Jadi kalau siang kita ngojek cari nafkah untuk keluarga, malamnya kan bisa belajar.

Tempat belajar

1. Code Academy (english)
Code Academy ini tempat sekolah yang bagus. Disini kamu bisa belajar dan juga bisa mengajar. Umumnya jika ingin belajar pemrograman berbasis web, bisa disini tempatnya. Mata pelajaran mencakup web fundamental, JQuery, JavaScript, kombinasi kode (HTML, CSS, JavaScript, JQuery), Phyton, Ruby dan konektifitas dengan API. Belajar bisa sesuai dengan ritme kita. Jadi enak dan santai, tidak dipaksa cepat-cepat mengerti.

2. Coding For Good  (english)
Waktu sekolah ini didirikan, untuk menjawab tantangan kelesuan tenaga kerja di Amerika Serikat. Banyak sekali orang menanggur, tapi perusahaan kebingungan cari karyawan yang mumpuni. Maka itu, sekolah ini dibuat khusus untuk mereka yang sama sekali tidak bisa coding agar mampu mengolah website. Pada Januari 2013 lalu, sekumpulan orang yang sama sekali tidak bisa koding, setelah selesai ikut kursus lalu diajak untuk marathon coding. Juaranya, satu tim, langsung diajak kerja. Pada intinya, ini kursus yang baik jika ingin mendapatkan ilmu yang beraplikasi langsung di dunia kerja.

3. Stack Overflow  (english)
Ini website kalau kita ingin bertanya dan mendapatkan jawaban soal koding-mengkoding. Sebelum bertanya, coba cari dulu di kolom ‘search’. Biasanya apa yang akan kamu tanyakan, sudah pernah ditanya oleh orang lain :) Jadi enak dan cepat dapat jawaban.

4. Kaskus  (Bahasa Indonesia)
Adalah salah satu web favorite saya sejak dulu. Memakai bahasa Indonesia yang kadang cukup membingungkan untuk saya, tapi tidak apa-apa. Sebab informasinya sangat baik untuk belajar bahasa pemrograman. Di web ini kita bisa mengetahui perkembangan terbaru trend coding Indonesia. Komentar usernya kadang suka lucu-lucu. Jadi ada selingan diantara masa coding yang cukup njelimet :)

6. Code/Racer  (english)
Ini web keren banget. Jadi kita ibarat seorang pembalap (racer). Tugas kita adalah balapan dengan racer lain untuk menyelesaikan tantangan-tantangan sirkuit kode yang diberikan. Juaranya dapat piala sebagai pengkode paling cepat. Hahaha. Lucu deh pokoknya. Beda dengan kaskus yang sambil belajar koding ketawa-ketawa, maka kali ini sambil belajar koding kita akan menjadi seorang pembalap yang ambisius.

7. Udacity  (english)
Kalau tidak salah, ini bagian dari kampus yang bernama Stanford di Amerika Serikat. Ini anak-anak kampus dan civitas akademikanya baik sekali kepada umat manusia dengan menyumbangkan kuliah gratis ke publik. Kebanyakan adalah mata pelajaran matematika dan ilmu komputer. Mata kuliah pemulanya, bagus sekali untuk mempelajari teori dasar coding. Pada mata kuliah lanjutan tingkat atas (advanced) bahkan mempelajari bagaimana melakukan pemrograman pada mobil robot. Canggih deh pokoknya.

8. iTunes U  (english)
Jika kamu punya perangkat lunank bernama iTunes di gadget/komputer kamu, maka bisa berlangganan iTunesU. Singkatan dari iTunes University. Disini banyak sekali mata pelajaran kode-mengkode. Saking banyaknya, saya kadang sampai pusing pilih yang mana. Favorit saya biasanya tunes dari MIT World (bagian: back to school) sebab sering sekali membantu saya mengerjakan tugas-tugas ajaib. Selain itu, rekomendasi untuk mempelajari basis algoritma 101 (introduction to alghoritms) itu sangat baik sekali di MIT world ini.

Yang perlu diperhatikan

1. Jika mau bertanya, bertanyalah dengan baik dan beretika. Tidak tahu bagaimana? Ini ada panduannya (english)  (bahasa Indonesia ala kaskus)

2. Kalau mau menyimpan hasil karya kamu atau mau berbagi atau kolaborasi bisa pakai GitHub. Ini dibikin dan dibantu supaya jalan dengan baik oleh temen-temen saya. Mereka orang baik loh, saya rekomendasikan untuk menaruh karya disini. BTW, ini kalau mau belajar GitHub

3. Pada mata pelajaran yang berbasis video, simpanlah di perangkat keras (gadget) kamu. Jadi kalau ada waktu luang seperti menunggu atau sambil buang hajat di WC, bisa sambil nonton film belajar 😀

4. Jangan khawatir dan jangan pernah menganggap diri sendiri rendah (sudah tua, atau otak tidak mampu, atau tidak pernah sekolah, atau apalah yang pesimis). Semua sekolah-sekolah diatas mengajarkan basis dan memulai dari yang sederhana. Percayalah, semua yang besar, dimulai dari yang kecil terdahulu. Semua orang pinter nan jagowan, awalnya juga pernah jadi bayi yang nggak tau apa-apa kecuali nangis dan buang hajat di tempat. Hehehe.

Selamat belajar, kaka :)

Posted in bahasa_indonesia, belajar_html, edukasi | Tagged , , , , | 1 Comment

Soweto, 10 February, 1985

Nelson Mandela,

Nelson Mandela, “In my country we go to prison first and then become president”

My father says,

What freedom am I being offered while the organization of the people remains banned?
What freedom am I being offered when I may be arrested on a pass offense?
What freedom am I being offered to live my life as a family with my dear wife, who remains in banishment in Brandfort?
What freedom am I being offered when I must ask for permission to live in an urban area?
What freedom am I being offered when I need a stamp on my pass to seek work?
What freedom am I being offered when my very South African citizenship is not respected?
Only free men can negotiate. Prisoners cannot enter into contracts.

My father says,

I cannot and will not give any undertaking at a time when you, the people, and I are not free
Your freedom and mine cannot be separated
I will return
Power to the people!

Zindziswa (Zindzi) Nobutho Mandela, daughter of Nelson Mandela. Jabulani Stadium, Soweto, on 10 February, 1985

Posted in komunikasi, sistem | Tagged | Leave a comment

Pengantar Pengetesan Keamanan Sederhana (cerita tentang Denbagus dan Celana Dalam Nenek Tetangganya)

Gambar seorang nenek tidur. Photo credit: Paula Bronstein/Getty Images

Saya sering dengar kalimat ini, “Lebih baik gua yang masukin daripada orang laen”, pada percobaan test keamanan mesin/jaringan tak diminta yang ketahuan.

Kalimat tersebut, secara personal (artinya buat saya pribadi), kedengarannya janggal. Kok yaa bisa-bisanya bilang begitu ketika ketahuan? Kalau tidak ketahuan gimana dong? Terus, orang lain itu siapa? Orang Botswana? Buset dah!

Contoh scenario kalimat diatas terdengar pada kasus:

  • A – Denbagus Manyun kebanyakan waktu luang. Ia belajar cari cara dapetin duit lebih banyak. Sebagai ABG yang baru kenal internet, membabi-butalah Denbagus Manyun mau tahu cara carding, jadi maling lewat mencuri kartu kredit orang. Ketika carding sepi, Denbagus Manyun coba peruntungan bikin ecommerce palsu dagang barang tidak baik. Ketika itu juga ketahuan, Denbagus Manyun ganti haluan. Email jadi sasaran. Kadang menyandera email orang lain (dengan tebusan duit tentunya). Kadang juga ngembat database orang lain yang isinya email-email untuk dijual. Pada sebuah aksinya, Denbagus ketahuan.
  • B – Denbagus Manyun iseng. Masuk ke mesin orang tanpa niat. Sekedar iseng. Walaupun scenario ini agak aneh. Percayalah, di muka bumi ini banyak orang aneh. Sama seperti scenario A, pada sebuah aksinya, Denbagus ketahuan.
  • C – Denbagus Manyun memiliki ideologi yang tidak sejalan dengan pemilik mesin yang ia masuki. Ketahuan atau tidak ketahuan, Denbagus akan bilang begini.

Jadi ketika suatu hari Denbagus Manyun ketahuan jadi kancil masuk ke rumah orang lain untuk mencuri ketimun. Terus pas ketahuan dia bilang “Lebih baik gua daripada orang laen” maka kalimat ini akan terdengar janggal.

Kenapa?

1. God Complex
Jika scenario A jadi patokan, maka Denbagus Manyun merasa dirinya tokoh protagonis dengan menggunakan kalimat “Lebih baik gua”. Lebih parah lagi, merasa berhak masuk ke WC manapun di dunia ini bahkan tanpa terlihat. Hanya karena ia adalah seorang Denbagus Manyun. God complex, menjustifikasi diri sebagai tuhan yang berhak menentukan nasib orang lain, telah menyerang Denbagus Manyun. Justifikasi kompleksitas ini bisa dengan banyak alasan latar belakang, “Gua kan miskin, jadi boleh” (miskin di sini bisa diganti jadi ganteng/pinter/kaya atau whatever lah) atau “Karena gua bisa”. Di sini, Denbagus Manyun nampaknya harus dibantu disadarkan kalau ia itu bukan Tuhan. Tapi pada scenario B, walaupun iseng, Denbagus Manyun juga tanpa sadar berkata bahwa, “karena gua bisa”. Jadi justifikasi menuhankan diri sendiri bisa dimasukkan dalam kategori scenario A dan B.
Saran solusi: Denbagus Manyun sebaiknya dibantuk untuk diobati. Penjara tidak akan mengurangi kompleksitas Denbagus. Hanya menghambat akses sementara. Kalau dipenjara, siapa yang bisa jamin dia keluar penjara jadi sehat dan akan berguna buat diri dan lingkungannya?

2. Arogansi
Ketika ketahuan jejaknya dan diciduk, baru Denbagus Manyun bilang “lebih baik gua”. Kalau tidak ketahuan, apa yang akan dia lakukan dengan akses gratis keluar masuk rumah orang? Apa yang dia lakukan kalau dia berhasil melihat koleksi beha rahasia milik nenek-nenek tetangganya, sementara si nenek-nenek tidak tahu koleksi bra nya itu mungkin sudah diendus-endus Denbagus Manyun tanpa sepengetahuan? Percaya diri beda dengan arogansi. Jika Denbagus Manyun amat PD bisa masuk kamar nenek-nenek dan nyolek-nyolek behanya, kenapa dia nggak bilang ama tuh nenek-nenek? Terus kenapa juga ia tidak membantu si nenek agar beliau dapat mengamankan behanya, jika suatu hari pemuda macam Denbagus Manyun mencoba memasuki peti harta karun berisi beha bekas itu? Lah kenapa Denbagus Manyun baru bilang “Lebih baik gua” ketika ia tertangkap tangan sedang memegang beha kondor nenek-nenek? Ini aneh, sebab secara bawah sadar Denbagus Manyun sedang mempraktekkan mekanisme pertahanan diri untuk menangkal kritik lebih lanjut. Bahasa kerennya, Denbagus Manyun “a-ro-gan”.
Saran solusi: Arogansi timbul akibat tidak bisa menerima kritik/realita. Untuk bisa menerima kritik/realita sebaiknya mempelajari diri sendiri dengan baik. Ini ada sekelumit operasi standar bagaimana cara mengetes keamanan diri sendiri dengan baik. Kalau bisa mengetes diri dengan baik, dan lalu jadi realistis, kira-kira dikemudian hari nanti, mampu mengetes keamanan rumah nenek-nenek tetangganya dengan baik. Rekomendasi dari National Institute of Standards and Technology mengenai panduan pengetesan keamanan. Kalau bisa, baca dokumen yang di link itu dari bawah sampai atas. Kalo nggak bisa, coba usahakan baca halaman 30. Ada tabel bagus di sana

3. Miskin Transparansi
Karena Denbagus Manyun tidak transparansi (artinya setelah ketahuan baru bicara), siapa yang tahu kalau Denbagus Manyun ketika mendongkel jendela rumah sang nenek tetangganya menggunakan obeng yang telah diguna-guna atau tidak? Bagaimana jika obeng itu ternyata sudah disembur oleh dukun dan ketika digunakan, ternyata tanpa disadari Denbagus Manyun, obeng itu mengumpulkan data celana dalam sang nenek-nenek. Ketidak-transparansi dalam pengujuan keamanan rumah si nenek tetangga, mampu berakibat lebih daripada hanya sekitar tuduhan ‘maling’ kepada Denbagus Manyun. Gimana kalau ternyata Denbagus Manyun selain dianggap maling (akibat mau mengendus beha nenek-nenek) ternyata juga dianggap pemerkosa (akibat obengnya blusukan ke celana dalam sang nenek yang sedang tidur)? Gawat itu. Denbagus Manyun bisa kena pasal berlapis.
Saran solusi: Biar tidak dianggap maling dan berselangkangan ganas, Denbagus Manyun ngobrol lah kalau mau mengetes keamanan rumah orang. Lebih baik ngobrol ke RT/RW biar malah dibantu pakai alat pengetes yang baik. Alat yang baik adalah alat yang diketahui pembuatannya secara aman dan bahkan mampu diaudit dari mana asalnya. Berikut ini di opensourcetesting ada alat-alat yang mampu diaudit dengan baik, silahkan dipilih mana yang cocok.

Nah, diatas hanya sedikit ulasan soal Denbagus Manyun. Bagi teman pembaca mungkin yang bernama Denbagus dan mulutnya manyun, saya mohon maaf. Ini bukanlah nama sebenarnya dan hanyalah tokoh fiktif rekaan saja. Jangan diambil hati.

Ada scenario yang ketiga, yaitu kalau Denbagus Manyun memiliki ideologi yang berbeda. Pada scenario ini, saya lebih memilih tidak berkomentar. Secara pribadi, bukan kewenangan saya bicara soal ideologi orang lain. Ditambah lagi, bicara ideologi pasti akan bicara soal hukum dan Undang-Undang Dasar si pemilik ideologi. Nah, hukum, UU dan ideologi, bukan keahlian saya. Apalagi ngasih kuliah 101. Saya mah bisanya masak doang. Jadi saya lebih baik masak aja buat makan siang anak saya. Huehehehe

Sampai jumpa kembali, kaka

Posted in bahasa_indonesia, security, server, sistem | Tagged , , , , , , , | 1 Comment

Suka Duka Bekerja Dalam Tim Internasional

Namanya juga buruh sekaligus ngojek, yaa saya harus siap pasang badan dimana saja.  Dapat pelanggan mulai dari cukong hingga bencong, yaa semuanya harus diterima dengan ikhlas. Tidak ada beda perlakuan menghadapinya.  Orang dari mana-mana di seluruh dunia yaa kita terima. Jangan dibedakan. Semua pelanggan diperlakukan dengan baik, ramah dan dibantu hingga tercapai sampai tujuannya.

Karena pelanggan berasal dari penjuru mata angin di muka bumi ini, yaa saya pun kerja bersama para buruh dan pengojek lainnya yang juga berasal dari beberapa tempat di penjuru mata angin. Kami sudah kerja bersama-sama hingga bertahun-tahun. Namun hingga kini, belum pernah bertatap muka (tanpa dibantu internet) bahkan sedetik saja.

Sesama buruh, sesama pengojek, yaa jelas ada cerita dan suka dukanya ketika kerja bersama. Ini beberapa cuplikan suka duka kendala dan bagaimana kami mengatasinya dalam beberapa tahun belakangan ini.

Jam kerja yang berbeda akibat wilayah geografis.
Di tanggal dan detik yang sama. Managernya baru mulai berangkat kerja di Munich, sebab disana pagi hari. Developernya di Bandung sedang gembira ria makan siang, sebab memang sudah waktunya ia melepas lapar di warung tegal. Padahal tester QA-nya malah sedang pulas-pulasnya tidur tengah malam di New York. Di detik yang sama, manusia di beberapa belahan dunia mengerjakan kegiatan mereka masing-masing. Yang jadi pertanyaan, kalau mau meeting online, siapa yang harus berkorban harus bergadang? (*Kalau di tempat saya, managernya, hahaha*)

Miskomunikasi.
Yang bicara berhadap-hadapan tatap muka dan pakai satu bahasa saja sering mendapat masalah dengan komunikasi, apalagi yang jauh-jauhan dan modelnya hanya bertemu melalui perangkat keras dan perangkat lunak serta memakai beda bahasa?
Miskomunikasi sering terjadi bila ada masalah dalam jaringan internet dan kemampuan bahasa yang berbeda antar anggota tim. Salah satu cara mengatasi kendala ini adalah selain menggunakan live chat, juga dengan memakai fasilitas pendukung visual seperti remote desktop, team viewer atau live meeting.

Administrasi Perbankan.
Nah ini menyebalkan. Sebab jam clearing tiap bank di seluruh dunia itu beda-beda. Ketika harus mentransfer sejumlah dan auntuk membeli logistik atau pembayaran upah kerja, akibat clearing bank lokal yang dipakai dalam bertransaksi dalam jumlah platform tertentu, maka sering tertunda. Belum lagi kalau negara yang bersangkutan sedang libur. Haduh, pusing!
Mengatasi masalah ini adalah dengan memakai Paypal atau sistem pembayaran langsung. Jeleknya, paypal ke/dari rekening bank itu butuh waktu. Sistem lain adalah memakai alternatif seperti moneybookers, INGdirect, Amazon Payment atau Squeare dan lainnya. Sayangnya hanya bisa dimanfaatkan oleh para pengguna yang berdomisili di negara terntentu saja. Untuk mengatasi masalah ini, biasanya menyewa vendor internasional yang mengatasi finansial semacam upah kerja. Jadi pada waktu tertentu, semua upah pegawai lunas terbayar. Barang-barang terlunasi dan tidak ada masalah dengan kredit macet pembayaran dari client. Jasa vendor macam ini, biasanya memang butuh biaya. Biaya dibebankan mereka, bisa perbulan atau pertransaksi.

Hukum Internasional.
Di Eropa, transaksi online diatas 11K (dalam satuan euro) sudah masuk dalam pengawasan pihak berwajib. Di Amerika Serikat, sekitar 19K (dalam USD) sudah masuk dalam kategori wajib lapor. Di Timur Tengah ada aturan tapi kurang jelas, banyak bolongnya. Sementara kalau di Indonesia, jika transaksi online dalam rupiahnya melebihi 100 juta, malahan belum ada aturannya. Padahal jelas-jelas di bandara internasional kalau kita bawa uang Rp 100 juta, itu wajib lapor. Itu baru transaksi antar anggota tim yang melibatkan uang loh. Belum kalau sudah harus saling mengirim logistik (misalnya kartu grafis jenis khusus yang dikembangkan hanya untuk prototipe), maka makin repot urusannya. Pada tim besar, jelas ada orang-orang dari departemen legal yang mengurusi hal ini. Pada tim kecil atau perusahaan start-up, mau tidak mau para stakeholder, mulai dari jongos sampai bos, harus benar-benar paham hukum yang berlaku di negara rekan setimnya.

Beda Budaya.
Teman-teman pengembang piranti dari Amerika Utara itu hobi sekali bawa makanan dan minuman kalau rapat. Kadang-kadang tidak tanggung-tanggung, kue ulang tahun ikut dibawa. Bikin iri. Sementara teman-teman dari Eropa itu kalau bicara umumnya detail da kadang sering dianggap oleh para rekan benua lain sebagai buang-buang waktu. Rekan dari Asia tenggara itu kadang sering diam dalam rapat, membingungkan rekan kerja dari benua lainnya. Sementara dari Afrika Utara ada banyak rekan kerja yang kalau bicara seakan memarahi satu ruangan. Ini bukan masalah komunikasi, melainkan beda budaya. Dalam menghandle issue yang muncul dalam perbedaan budaya dalam lingkup kerja, biasanya manajer atau moderator rapat (jika dalam rapat) selalu memberi informasi pada rekan-rekan kerjanya agar tetap fokus pada pekerjaan dan target. Ini memang akan terlihat dingin (kalau dilihat pake perasaan dan mata hati… tsaaah), tapi jauh lebih baik daripada di ruang kerja saling maki-maki hanya gara-gara si Anu tidak suka bau kari ayam makan siang rekan kerjanya :)

Yaah segitu dulu deh. Nanti kalau ada waktu nanti dilanjut lagi diskusinya. Silahkan menambahkan jika berminat. Lumayan loh, dengan berbagi ga bakal deh situ kekurangan. Malahan biasanya malah nambah kaya. Kaya ilmu :) Ayo bagi pengalamannya, Mas, Mbak :)

Posted in bahasa_indonesia, geekjoke, komunikasi, pasar | Tagged , , , , | 4 Comments

Bulan Diantara Tiang Jemuran

“Kamu solat dong!”

“Saya pan musafir, bu” (jawab sambil cengar cengir)

“Baru nyampe berapa jam aja udah Cerewet kamu. Ini di Cilincing, kamu dah bukan musafir lagi. Solat sono!” Sambil merengut.

Saya ketawa-tawa. Tiba-tiba ada azan berkumandang. Jadi diam dan kaget. “Set dah, bu. Emang udah subuh yak? Kok jam tiga pagi dah subuh?”

“Bukan, itu buat yang tahajudan”

“Buset, tahajud aja pake ajan segala”

“Iya disini mah udah canggih sekarang”. Saya bengong mendengarnya. Apa hubungannya canggih dengan azan jam 3 pagi?

Keatas sebentar. Takjub melihat bulan purnama berselaput awan tipis di atas langit jakarta utara. Indah. Bersinar redup diantara tali-tali plastik tiang jemuran. Adalah purnama yang sama yang dilihat putri saya di belahan dunia lain sebelum berangkat tidurnya.

“Bu, bulannya keren banget. Kayak malekat”

“Cerewet kamu! Solat sono. Mati belum, udah ngaku-ngaku liat malekat. Dah sono mandi, minum teh ama sarapan. Tapi omong-omong disini mah emang udah canggih sekarang”.

Yaelah, apa hubungannya malaikat dengan kemajuan di Cilincing?

Saya pun ketawa cengengesan.

#ilovecilincing

Bergegas menyiapkan ransel. Kembali mengukur jalan. Hidup dari satu cerita ke cerita lainnya.

20121129-072809.jpg

tuh, bulan purnama diatas langit cilincing

Posted in bahasa_indonesia, komunikasi | Tagged | 1 Comment