Cool

Harus saya akui, jokes yang paling gampang adalah jokes yang menghina orang. Termasuk menghina saya sendiri sebenarnya, tapi saya sadar saya juga sering menghina orang lain. Mungkin bukan menghina sih, lebih ke arah mengejek (menghina sepertinya kasar banget). *pembenaran*

Saya ingin bercerita soal pola pikir saya yang dulu super bego sepertinya.

Bukan bermaksud sombong (eh ngga ding, emang pengen sombong), saya bukan termasuk orang yang akan kesulitan untuk menerima pelajaran sekolah dari SD sampai SMA. Dengan modal memperhatikan guru (cieee, perhatian), cobain soal sedikit, rasanya saya sudah punya cukup pengetahuan untuk mengerjakan soal-soal berikutnya, pun, termasuk soal yang levelnya cukup sulit.

Gara-gara kemampuan ini, saya jadi jarang belajar. Dan ini membuat saya sebenarnya “meremehkan” orang yang belajar keras untuk bisa sesuatu. Saya pikir saya berbakat untuk akademik sehingga saya tidak perlu berusaha terlalu keras. Dan saya pikir lagi, orang-orang yang belajar keras ini menyedihkan, karena pada akhirnya mereka juga ga bakal bisa-bisa amat.  Buang-buang waktu.

Saya pikir saya cool, karena bisa tanpa usaha keras.

Masuk kuliah, tahun pertama relatif mudah sebenarnya karena beberapa pelajaran sebenarnya mengulang pelajaran SMA. Cobaan terberat ada di pelajaran DRE, dan akhirnya memang nilai saya tidak terlalu memuaskan. Saya belajar dikit doang, dapat nilai seadanya. Pikiran “saya cool karena bisa tanpa usaha keras” masih menggantung sehingga saya malas belajar. Saya pikir semua yang saya tahu sudah cukup untuk membantu saya mengerjakan soal ujian. Tapi ternyata engga. Tapi sekali lagi, saya rasa kalau saya butuh usaha keras, saya pikir saya cuman buang-buang waktu. Toh, di jurusan yang saya pilih, *seharusnya* ilmunya tidak dipakai.

Masuk jurusan, saya sebenarnya sudah cukup sadar kalau sebenarnya saya tidak bisa apa-apa. Hahaha. Tapi, sekali lagi, prinsip “saya cool karena bisa tanpa usaha keras” terlalu melekat ke otak saya. Alhasil, meski ada fasilitas tutor dari himpunan atau diajakin belajar bareng sama teman-teman, saya lebih memilih untuk pulang ke kosan, dan belajar sendiri. Kenapa? Biar teman saya tetap menganggap saya cool, karena saya bisa tanpa terlihat belajar. Saya merasa tidak cool kalau ternyata saya terlihat belajar dan bisa, karena itu wajar. Emang akhirnya bisa? Ga seberapa, tapi lumayan lah. Hahaha.

Saya ga tahu kenapa, tapi makin ke sini, saya makin sadar kalau “saya cool karena saya bisa tanpa usaha” itu sampah. Kalau dulu, saya bakal kagum dengan orang-orang yang “wah si kampret di kelas ga pernah merhatiin tapi jago”. Sekarang, saya jauh lebih respek sama orang -orang yang beneran usaha keras dan akhirnya bisa. Orang-orang ini, ga malu, untuk menunjukkan kalau mereka belum bisa dan mereka emang mau untuk bisa. Orang-orang ini tidak merasa insecure ketika orang-orang lain ngetawain usaha mereka. Saya respek itu, karena saya ga selalu pede terhadap apa yang saya kerjain. Apalagi di awal-awal, jelas kelihatan level-amatir kita di bidang yang baru kita mulai. Saya nyaman terlihat bego, tapi tidak untuk terlihat bodoh. (kampret, saya baru nyadar kalau saya se-insecure itu)

Orang -orang yang beneran usaha keras dan akhirnya bisa jadi inspirasi saya saat ini. Inspirasi saya, untuk tidak takut terlihat bego saat mulai melakukan sesuatu. Untuk tidak perlu merasa konyol saat mencoba sesuatu. Memang kadang rasanya masih ada, tapi ya, setidaknya saya tidak semalu dulu untuk terlihat emang berusaha keras terhadap sesuatu.

Kalau kalian bingung, apa hubungannya premis paragraf pertama post ini dengan sisanya, saya ingin coba jelasin. Salah satu kebiasaan saya adalah membuat lelucon tentang usaha teman-teman saya yang sedang coba melakukan sesuatu. Misal diet. Atau coba ngomong bahasa lain di percakapan sehari-hari.

Saya dulu tidak sadar, kalau lelucon ini bisa saja mengganggu kepercayaan diri mereka dalam mencoba meraih sesuatu. Saya mulai sadar hal ini saat dulu, saya mengutarakan keinginan untuk nge-gym dan diet. Reaksi umum orang-orang, biasanya,

“Hahahaha, kayaknya ga bakal ngaruh deh Ja”

It’s actually discouraging me.

Make me think “Am I that ridiculous to think this is gonna work?”

Saya ingin belajar untuk tidak lagi merendahkan usaha orang yang sedang berusaha melakukan sesuatu. Entah itu berupa usaha buat diet. Usaha buat ngomong bahasa asing. Atau eksperimen membuat video-video absurd yang sebenarnya garing. Atau usaha main gitar yang suara gitarnya lebih mengganggu dari pada merdu.

Karena ternyata, orang yang berusaha keras sebenernya jauh lebih cool dari pada kita yang sekarang hanya nge-judge tapi ga berani nyobain hal-hal baru.

 

Tapi kalau ngeselin kayaknya tetap saya hina sih.

 

Salam.

Abis baca #JuruBicara-nya @pandji. Gaya nulisnya jadi sok-sokan sama.

Demi Programming yang Lebih Baik

(Yah, mendadak nulis banyak, soalnya lagi di kereta dan ndak bisa tidur)

Di tempat kp yang baru ini, saya sama sekali belum disuruh ngoding. Saya baru disuruh analisis sistem yang ada, dengerin permasalahan yang ada, terus solusi apa yang bisa diberikan.

Berhubung rada gabut, saya mutusin buat nyari insight dengan baca-baca buku yang seharusnya dibaca saat kuliah.

Sekali lagi, saya amazing dengan buku-buku yang seharusnya saya baca ini. Saat ini, saya lagi cobain baca buku Algorithm Design Manual (pengarang Skiena) sama Computer Network + Distributed System (Dua-duanya Tanenbaum). Cukup menyesal sih, kenapa di saat aktif kuliah tidak menyempatkan baca buku-buku ini.

Buku-buku teknis ini, ditulis dengan cara yang bisa dibilang kocak. Setidaknya bisa bikin-bikin senyum sambil bilang “Sa ae si bapak”. Doakan semoga bisa baca sampe selesai deh. Hahaha <– sering naik turun keinginan buat bacanya -_-

Saat baca buku Algorithm Design Manual, saya jadi teringat salah satu artikel yang pernah beredar di Timeline Facebook saya. Artikel ini, intinya, berbicara soal sebenernya penguasaan algorithma tidak penting bagi seorang lulusan informatika. Setelah itu, saya coba refleksikan lagi dengan pendapat salah seorang dosen saya, soal perbedaan Coding dan Programming.

Coding adalah translasi pikiran jadi kode. Programming adalah proses problem solvin dengan menggunakan kode. Programming mencakup coding, namun coding tidak mencakup programming.

Saat anda baca "How to write x in Java", anda sedang belajar coding. Saat anda sedang analisa kebenaran dan kekuatan solusi dari sebuah masalah, anda sedang dalam langkah melakukan programming. Saat anda coba implementasi, anda terjun ke programming.

Mungkin itulah penyebabnya, di kuliah saya, sangat jarang belajar teknis seputar bahasa, namun banyak mata kuliah yang diajarkan tanpa ada koding-kodingnya (tubes tetep ngoding tentunya hahaha). Kami diajarkan untuk analisa. Translasi jadi kode bukan hal utama, disuruh belajar sendiri.

Hal ini, salah satunya diceritakan oleh Skiena dalam masalah Pyramid Problem. Insight yang saya dapatkan, ada perusahaan yang punya resource sangat bagus, mau membuat program untuk membuktikan bahwa setiap bilangan bisa dibangun dari bilangan piramida untuk bilangan kurang dari 1.000.000. Dengan resource yang sudah maksimal, orang yang disewa perusahaan ini membuat program yang baru selesai dijalankan selama 20 (atau 200? Gak inget-inget amat) menit.

Prof Skiena, diminta untuk membuat program yang lebih bagus. Mantap dan bergaya, beliau mampu membuat program yang bisa jalan kurang dari satu menit. Setelah optimasi sana sini, eh bisa juga jalan kurang satu menit, dengan resource yang seadanya.

Apakah program yang dibuat Prof Skiena lebih benar dari yang dibuat orang perusahaan? Sama kok tingkat kebenarannya. Cuman, kualitas yang dibuat Skiena jauh lebih bagus. Apa yang dibuat Skiena punya nilai ++ dibanding yang dibuat oleh orang perusahaan.

Ini juga yang coba saya refleksikan kepada saya yang sekarang. Saya yang kalau dapet tubes lebih asik ngomongin "Woy, ini ngodingnya gimana?" daripada "Menurut lu, seharusnya solusinya gimana?". Keliatan kok, hasil-hasil yang saya buat, kebanyakan hanya hasil-hasil ngoding doang. Termasuk meeting-room. Asal tahu gunain firebase, angular, jquery, semuanya pada bisa buat hahaha.

Insight menarik lagi, yang saya dapetin saat baca tulisan Kak Sonny soal game 24-nya Zaky. Ide gamenya sederhana (relatif umum, bukan ide baru). Salah satu yang menarik adalah, untuk nemuin semua pasangan solusi buat 24, Zaky ngegunain Dynamic Programming. Sesuatu yang bakalan kebanyakan orang, termasuk saya, akan buat dengan Brute Force. Kalau saya buat game yang sama, apakah game saya salah? Nggak. Kalah? Mungkin iya.

Huft. Harus lebih serius dan banyak belajar nih, huehuehue.

Meeting Room 2.0

Untuk cerita awal tentang meeting-room, silahkan baca di sini.

Berhubung hari ini relatif banyak waktu luang, saya coba mengupdate meeting-room . Hal-hal yang ingin diperbaiki adalah tampilan minor (walau yang sekarang saya ga ngerasa beda jauh), sama support visit via link. Kalau dulu, semua orang yang ingin masuk ke room “ganteng” harus masuk ke meeting-room lalu memasukkan “ganteng”. Kalau sekarang, semua itu bisa langsung dikunjungi melalui muzavan.github.io/meeting-room/?r=ganteng

Untuk cerita awal tentang meeting-room, silahkan baca di sini.

Berhubung hari ini relatif banyak waktu luang, saya coba mengupdate meeting-room . Hal-hal yang ingin diperbaiki adalah tampilan minor (walau yang sekarang saya ga ngerasa beda jauh), sama support visit via link. Kalau dulu, semua orang yang ingin masuk ke room “ganteng” harus masuk ke meeting-room lalu memasukkan “ganteng”. Kalau sekarang, semua itu bisa langsung dikunjungi melalui muzavan.github.io/meeting-room/?r=ganteng .

Screenshot from 2015-07-01 16:00:52

Berhubung ada fitur ini, saya juga nambahin tombol Share Link di Board roomnya sekarang.

Screenshot from 2015-07-01 16:02:09

Tentunya nanti fitur-nya disempurnain lagi~

Yang punya masukan , silahkan kasih tau ke saya~

 

Salam.

Kodingan saya nanti saya rapiin deh.

KP #5

Maaf nih udah jarang nulis lagi. Berikut update-update singkat keberjalanan KP huehuehue.

 

Untuk masalah pekerjaan, akhirnya tools yang harus saya kerjakan selesai! Udah bisa diakses dan dipakai oleh orang kantor. Dari tes yang saya lakukan sih seharusnya sudah gak ada masalah. Hehehe.

 

Pengalaman yang berbeda dari tugas-tugas sebelumnya, pada tugas kali ini saya harus mempresentasikan hasil pekerjaan saya kepada staff divisi terkait yang akan menggunakan layanannya. Presentasinya sih cuman di depan 6 orangan. Feelnya mungkin gak beda jauh dengan presentasi saat demo tugas besar. Tapi, biasanya kan saya bicara di depan anak IF lain yang relatif mengerti. Kalau sekarang, saya harus menjelaskan dan mengulang beberapa hal tambahan saat demo. Ternyata skill saya untuk menyederhanakan hal-hal yang berkaitan dengan IF masih kurang hahaha.

 

 

Sekarang, saya sedang diberi tugas untuk mempelajar aplikasi mobile yang dimiliki perusahaan. Aplikasi mobile ini digunakan untuk membantu para staff lapangan yang melakukan pengamatan dan pengawasan langsung kepada suspect (bahasa Indonesianya yang cocok apa ya, masa tersangka -_-a) TB. Bakal ada modul yang ditambahin, semoga nantinya kalau sudah dikerjakan bisa berjalan lancar dan bermanfaat.

 

Hari Sabtu kemarin, saya masuk Kimia Farma buat ngadem sama ngambil duit di ATM. Kebetulan, di sana ada timbangan. Berhubung sudah menjalani KP 4 minggu dan belum dapet update soal kondisi berat badan, saya iseng ngukur berat badan. Yes. Turun tiga kilo. Walau dari segi penampakan badan temen-temen pada bilang makin gendut 😦 . Cuman Agi yang bilang kurus hahaha.

 

Masih di hari Sabtu yang sama, saya ada keperluan yang mengharuskan saya untuk pulang ke Bandung. Dan lagi, saya ternyata kangen sama temen-temen saya. Hahaha. Eniwei, menarik sih ketika saya sampai di kosan di Bandung, terus semuanya berasa beda. Kenapa kunci rasanya jadi lebih gede. Kayaknya gemboknya dulu gak gini deh. Kok kayaknya pintu kamar mandi jadi kecil begini. Ada perasaan asing di kosan sendiri. Tentunya, perasaan asing ini tidak mengurangin kenyamanan saya saat bermalam di sana. Saking nyamannya, saya bangun saat adzan subuh. Jadi gak sahur hahaha.

 

 

Oiya, saya lagi ngelanjutin nonton Breaking Bad nih. Ternyata jadi seru lagi hahaha.

Jadi suka lagi. Dulu benci sama Skyler, sekarang lebih benci lagi sama si Walter. Jadi suka sama Jesse, Mike ama favorit saya, Gus. Wahahaha

 

Salam.

Memilih update blog dibanding mengirimkan log kp kepada dosen pembimbing. Huft.

 

KP #3

Kalo dirangkum, tulisan ini akan saya singkat menjadi “(Bagi saya) seru banget!”

Nah, tugas saya di minggu II kemarin bakalan menjadi salah satu tugas yang berkesan buat saya selama KP. Pada tugas ini, saya ditantang untuk menggambarkan pemetaan sebuah kejadian berdasarkan kelurahan dari orang yang terlibat. Langkah-langkah utamanya kurang lebih sama dengan tugas sebelumnya. Tapi, ada aspek yang menurut saya menarik banget buat dibahas : data riil.

 

Sebagai developer, kita selalu berharap data yang dimasukkan oleh user adalah data yang benar-benar sudah diberi aturan sedemikian rupa, sehingga kita mudah mengolahnya. Hell, kalau saya, user tidak akan banyak diberikan kesempatan untuk membuat jawaban terbuka. Sebagian besar jawaban akan saya buat sebagai kegiatan memilih.

 

Di sini, salah satu aspek serunya bekerja di tempat yang bukan khusus Software Engineering. Data yang akan saya visualisasikan adalah data yang sudah dibuat aturannya sedemikan rupa, digabung dengan data yang didapatkan dari instansi lain, dan data yang didapatkan (mungkin) sebelum aturannya dibuat (atau mungkin sudah, cuman ada kesalahan pada yang memasukkan).

 

Regex dan Parsing Data

Untuk mendapatkan informasi data kelurahan kejadian, saya banyak melihat data alamat kejadian. Dari data alamat tersebut, harus saya bisa ekstrak informasi mana yang menunjukkan bahwa itu adalah kelurahan dan kecamatannya. Untuk melakukan ekstraksi informasi, saya banyak menggukan Regular Expression. Asyiknya, saya menemukan fitur Regex yang baru saya temukan hanya di Phyton, yaitu asosiasi variabel dengar regexnya langsung. Katakanlah data lokasi kebanyakan menuliskan ” …. , Kelurahan Blah, Kecamatan Blah-Blah, … “. Untuk mendapatkan Blah dan Blah-Blah, saya cukup menuliskan asosiasi variabel yang menggantikan kata-kata itu pada Regex. Misalkan menjadi “…., Kelurahan (?P<kelurahan>\w+), …” atau semacamnya. Entahlah, fitur regex seperti ini baru saya temukan di Python (memang jarang eksplorasi euy) hahaha.

Pada bagian ini, keseruan yang ditemukan adalah banyaknya aturan penulisan dalam menuliskan kelurahan dan kecamatan. Ada yang menuliskan “Jl. Pelesiran No 19 Taman Sari, Bandung Wetan”, ada yang “Jl. Pelesiran No 19 Kel. Taman Sari, Kec. Bandung Wetan”, ada yang “Jl. Pelesiran No 19  Bandung Wetan, Taman Sari” (kebalik), ada juga yang “Jl. Pelesiran No 19 Kelurahan Taman Sari, Kecamatan Bandung Wetan” dan sebagainya. Lucunya lagi, memang banyak istilah tempat yang, menurut saya minimal, ambigu untuk dituliskan. Apakah yang benar “Jati Negara” atau “Jatinegara” ? Apakah penulisan yang disepakati “Pl. Gadung”, “Pulo Gadung”, atau “Pulau Gadung” ?

 

Pentingnya Kamus

Ide saya untuk menangani berbagai macam kemungkinan penulisan itu adalah dengan menggunakan sebuah kamus. Kamus ini sederhananya adalah Map yang menghubungkan antara kemungkinan penulisan dengan penulisan yang disepakati pada program.

Misalkan untuk kasus Pulo Gadung :

kamus[‘Pulo Gadung’] = “Pulo Gadung”

kamus[‘Pl Gadung’] = “Pulo Gadung”

kamus[‘Pl. Gadung’] = “Pulo Gadung”

dst.

Pembuatan map-nya masih sederhana sih, masih cuman melihat kemungkinan kesalahan penulisan yang dilakukan orang.

 

XML dan Kamus Lokasi

Kebegoan saya dalam melakukan penentuan lokasi pada peta adalah dengan melakukan permintaan pada Google API berkali-kali setiap akan menggambarkan peta. Setelah nyadar prosesnya akan sangat lama, saya diberi insight oleh Kak Ali bahwa sah-sah aja kalau lokasinya disimpan juga dalam bentuk kamus. Kenapa? Karena lokasi ini kemungkinan perubahannya sangat minim, serta kemungkinannnya terbatas sehingga sah-sah saja untuk disimpan, tidak perlu terus melakukan pencarian pada data terbaru.

 

Akhir dan Pencapaian

Setelah seru bermain dengan data-data yang berantakan, Kak Ali meminta saya untuk menggabungkan modul tersebut ke dalam sistem yang sudah ada. Perasaan saya sangat senang ketika mengetahui bahwa apa yang saya kerjakan ternyata benar-benar digunakan di tempat saya KP. “Wuih, kalau begini kan enak kalau saya buatin narative reportnya”, “Nah kemarin kan mas yang dari (Belanda gitu?) minta yang begini, entar kita liatin”, begitu kata beberapa Atasan saya.

 

Padahal yang saya kerjakan sebenarnya relatif sederhana, tapi ketika melihat kalau ternyata memang sangat berguna, tentunya jadi hal yang berkesan buat saya hahaha.

 

Saya mau nampilin screenshot yang dibuat, tapi belum tahu soal kebijakan apakah boleh atau nggak, hahaha.

 

Salam.

Hari ini berhasil puasa, tapi merasa perut makin buncit.

Eniwei, ada yang punya usul lain dalam menyelesaikan persoalan-persoalan seperti di atas?

KP #1

Karena ketidakteraturan saya dalam menulis, yang kp#2 nya malah udah keluar duluan. Bisa diakses di sini. Di tulisan ini, saya akan lebih menjelaskan kenapa dan bagaimana akhirnya saya bisa melaksanakan kerja praktek di PT Inovasi Sehat Indonesia.

 

Awalnya, saya sangat antusias untuk melaksanakan kerja praktek di sini setelah saya mendengar penjelasan Kak Ali saat mengisi Seminar Inspirasi Juara HMIF. Setelah kak Ali menjelaskan suka-suka nya bekerja di NGO, saya saat itu langsung menghubungi kak Ali dengan harapan kalau ada kesempatan untuk KP di PT ISI, saya berminat dan saya ingin mendaftar.

 

Sayangnya, setelah itu tidak ada kabar lagi dari Kak Ali soal ada atau tidaknya kesempatan KP di PT ISI. Saya sempat berkonsultasi dengan orang tua soal tempat KP, orang tua mengatakan coba cari di tempat lain dulu, terutama tempat yang mungkin punya nama besar dan punya prospek karir yang lebih jelas bagi mereka. Mengingat belum ada kabar juga dari Kak Ali, saya akhirnya memutuskan untuk mencoba kesempatan KP di tempat-tempat lain.

 

Pulse Lab Jakarta

Tempat pertama yang menjadi lamaran saya adalah Pulse Lab Jakarta. Pulse Lab ini adalah lembaga yang melakukan riset, kebanyakan mengenai kaitan teknologi dengan isu ekonomi dan sosial, dan merupakan lembaga hasil kerja sama UN Global Lab dengan Bappenas Indonesia. Saya juga sebelumnya tidak pernah mendengar PulseLab, tapi setelah diajak Tegar untuk melamar, saya sempat cari-cari dan ngerasa : wah ini kayaknya keren deh.

Sekitar bulan Januari saya mengirimkan lamaran (setelah diminta saat menanyakan apakah ada kesempatan untuk magang di bulan Juni), tetapi hingga bulan April saya tidak juga mendapatkan kabar lagi soal lamaran lagi. Pelajaran di sini, dikasih tau sama Kak Arini juga, sebenarnya kita harus mengontak aktif kembali perusahaan yang sudah kita lamar. Yah, kalau sekitar 3-4 minggu tidak ada kabar lagi (dan tidak diberi tahu secara pasti kapan akan dikabari lagi), mungkin ada baiknya jika kita menanyakan apakah ada informasi terbaru soal lamaran kita. Jangan posesif tapi. Setiap 12 Jam ditanya. Jangan.

Singkat cerita, di bulan April, saya coba menghubungi lagi ke pihak terkait, lalu mendapatkan balasan bahwa “lamaran anda sudah saya kirimkan ke bagian terkait”, saya merasa waktunya sudah cukup mepet dan informasi seputar kepastian KP tidak bisa saya berikan di minggu pertama. Hal ini membuat saya memutuskan untuk mencari kesempatan lain untuk melaksanakan kerja praktek.

 

BukaLapak.com

Ini mungkin pengalaman yang paling menarik, soalnya di sini keseluruhan proses rekrut standar yang saya bayangkan memang saya alami. Kesempatan untuk KP pertama kali saya ketahui dari milis IF12. Setelah saya lihat lagi kesempatannya, saya sangat berminat untuk KP di sini. Alasannya, saya diberikan kesempatan untuk sangat teknis di program KP-nya. Ada dua posisi yang saya minati : Software Engineer dan Mobile Developer. Setelah mengirimkan lamaran (CV dan Portofolio kalo gasalah), saya diminta untuk mengerjakan soal test bertipe debugging. Saya diminta membenarkan kode yang dikirimkan, lalu dikumpulkan kembali melalui email.

Yang ini, kodenya masih relatif sederhana. Kampretnya adalah, karena kodenya sederhana, saya jadi gak yakin : emang yang salah ini doang ya? Ketakutan soal adanya hal-hal kecil yang menjebak sangat menyeramkan hahaha.

 

Setelah itu, saya diminta untuk datang ke kantor BukaLapak untuk melaksanakan wawancara langsung. Wawancaranya terbagi dua : wawancara kepribadian (kayaknya, gak ditanya teknis, kebanyakan soal pengalaman) sama wawancara teknis (soal kodingan lagi). Pada sesi ini, saya nampak lemah sekali di bagian wawancara teknis. Pelajarannya dari pengalaman ini adalah saya harus benar-benar paham detail masalah yang harus diselesaikan. Saya sempat ragu dengan pertanyaannya, namun saat diberi kesempatan untuk bertanya, saya malah bilang sudah mengerti. Hehehe. Fatal sih, saya jadi gak lulus wkwkwk.

 

NAIST

Kesempatan lainnya yang ingin saya jajali adalah kesempatan untuk melaksanakan riset di NAIST. Sedikit sharing, cita-cita saya dulu waktu kecil adalah ilmuwan 😛 . Motivasi lainnya adalah saya pengen mencoba bidang riset dan penelitian. Seperti yang saya bilang sebelumnya, saya masih belum tahu saya ingin bekerja seperti apa ketika lulus. Bidangnya sih ada tiga katanya : Industri, Pemerintahan, dan Penelitian. Pemerintahan, saya anggap feelnya bakal mirip di himpunan, Industri, saya anggap feelnya akan seperti proyekan. Penelitian, belum sempet saya rasakan feelnya nih. Jadi, keinginan saya cukup kuat juga untuk keterima di kesempatan ini (katanya 3 yang keterima, + dapet uang HAHAHAHA *oke, mungkin aing galulus karena mata duitan -__,- )

Persyaratan programmnya adalah mengirimkan CV dan proposal penelitian. Setelah bimbingan dengan Bu Ayu soal apa yang harus dikerjakan (belum pernah buat proposal penelitian soalnya), saya menghabiskan waktu dua hari untuk menguasai ilmu dasar yang berkaitan dengan interest penelitian saya, serta membaca paper soal teknologi yang sudah diciptakan, yang mirip, yang berhubungan, metode terbaik dll. Harus saya akui, pekerjaannya memang berat (belajar otodidak), tapi entah kenapa saya sangat menikmati prosesnya saat itu. Saat saya baca paper, saya kagum sambil senyum-senyum asik gitu. Cukup senang ketika bisa menangkap pola pikir orang sama membaca analisis kenapa percobaan itu persentase kegagalannya rendah atau dsb.

Eniwei, waktu itu ide saya adalah soal pembuatan Speech Analysis untuk Sensoring Kata Kasar di TV. Idenya adalah gimana caranya memantain waktu streaming langsung dari televisi, sekaligus langsung otomatis sensor saat ada kata-kata kasar yang tidak bisa ditampilkan di televisi.

Sayangnya, saya tidak keterima juga di NAIST. Sempet murung juga sih, soalnya di tingkat III ini saya banyak gagalnya :”. Gagal jadi ketua acara. Gagal ngerjain proyek yang supeeeer so close. Gagal tugas berkelompok *mayoritas pengerjaan tugas kelompok saya berantakan* . Dan… gagal juga di penelitian yang sukai ini. Saya jadi merasa tidak bisa apa-apa haha. Saya jadi merasa tidak berbakat memipin, tidak bakat bekerja, tidak berbakat ngomong, dan tidak berbakat belajar. Oke, abaikan :’|

Inovasi Sehat Indonesia

Mungkin Allah menyuruh saya untuk mengikuti keinginan saya yang sempat terbesit, kak Ali menginfokan melalui milis himpunan soal kesempatan untuk kerja praktik di PT ISI. Karena saya memang lagi tidak ada lamaran ke mana pun, saya pun coba mengikuti proses rekrutmennya. Prosesnya mirip dengan proses di BukaLapak, walau untuk pertanyaan wawancara teknis lebih banyak membahas portofolio (tidak terlalu tes algoritma). Kebanyakan yang dibahas adalah pengalaman, apa saja yang sudah dibuat dan lingkungan pengembangan yang biasa digunakan. Setelah tahap ini, ada wawancara dengan Pak Roy selaku CEOnya, soal kesepatakan pelaksanaan kerja praktiknya. Saya mengambil waktu 6 minggu (tengah-tengah) supaya bisa menuntaskan kebutuhan KP dan ada waktu untuk pulang di hari lebaran.

 

Bagaimana pengalaman saya KP di PT ISI?

Mungkin bukan ditulisan ini. Diserial lainnya sepertinya. Hehehe.

 

Salam.

Tethering HP naik turun susah buat menulis.

Tulisan ini sudah saya baca lagi dan terlalu lurus nampaknya.

KP #2

Setelah eksplorasi di hari pertama tentang openmrs serta sistem basis data-nya, di hari kedua dan ketiga, saya ditantang buat ngerjain visualisasi data hasil rekap dari basis data medisnya.

kp-django-histo

Sederhana banget ya hehehe

Nah, untuk melakukan visualisasi data ini, saya menggunakan 4 kakas utama : PHP, highchart.js, Python/Django, dan google-charts.js

1. Eksplorasi Query

Sebelum melakukan visualisasi datanya, tentunya harus tahu dulu dong data apa yang mau disajikan. Untuk itu, saya mengeksplorasi terlebih dahulu query-query sql yang akan menghasilkan data yang diinginkan. Data yang diinginkan ini juga ternyata harus diolah lagi, misalkan ada data yang tidak masuk akal (untuk masing-masing data tentu aturan sendiri harusnya) atau bisa membedakan data mana yang merupakan data tes dan data asli. Nah, untuk eksplorasi query ini, saya menggunakan MySQL Workbench. Jujur, saya takut juga saat disuruh si kakak untuk menggunakan kakas ini (soalnya belum pernah denger, dan takutnya ga bisa kayak hari pertama 😦 ) , tapi setelah dilihat, ternyata kakas ini mirip dengan pgAdmin-nya postgresql yang pernah saya gunakan di semester 5. Kakas seperti ini berguna banget buat eksplorasi query, dan eksplorasi database yang remote (bukan di komputer kita).

2. Eksplorasi Kakas Pemograman

Setelah mengetahui query apa yang harus digunakan, sekarang masalah bagaimana membaca data tersebut dengan menggunakan program. Oiya, awalnya saya menggunakan PHP dalam pengembangannya (yang PHP, relatif tidak ada masalah), namun kata si kakak, pada akhirnya coba eksplorasi menggunakan Python dengan tambahan framework Flask atau Django. Karena Flask instalasinya ribet dan tidak menjamin untuk bisa berjalan stabil di Python3.4 (yang sedang saya gunakan), akhirnya saya memilih Django. Django ini kalau dilihat sekilas prinsip penggunaannya mirip dengan Laravel untuk PHP. Tapi karena saya cupu dan nubie, saya jadinya kesulitan banget -_-. Apalagi ketika awal instalasi, tiba-tiba ada Library yang merasa tidak di-load. Rasanya hampir 3 jam saya otak-atik dan gak ngerti kenapa gak bisa.

 

Sampai akhirnya saya sadari, kalau ternyata ada dua instalasi Python di Laptop saya. Yang saya gunakan untuk pengembangan adalah Python 3.4.1, sementara untuk testing Python 3.5 (yang saya lupa uninstall saat saya install python 3.4). Sehabis uninstall, akhirnya ….

 

Tetep gak bisa -_-

Katanya MySQLdb-nya membutuhkan salah satu .bat dari Visual Studio 09 (saya pakenya 11). Saya coba masukin PATH si VS11 di Environment Variables, tapi tetep gak bisa. Salah saya apa sih -___________-

Akhirnya saya ekplorasi lagi, dan akhirnya ketemu caranya. WKWKWKWK. Waktu terbuang sia-sia hahaha.

 

*istirahat bentar*

 

Nah,  setelah selesai, saya coba-coba ngebuat api-nya dan relatif bisa deh. Hahaha *tapi udah lewat deadline, saya jadi gak enak ama si kakak*

 

3. Eksplorasi Kakas Visualisasi

Untuk PHP, saya menggunakan highchart.js untuk melakukan visualisasi. Awalnya mau pake D3.js tapi gak ngerti-ngerti ._. Kalau di si histochart dia udah nampilin salah satu contoh untuk ngebuat histogram. Jadi saya tinggal ganti-ganti dikit.

 

Nah, untuk Python, saya menggunakan Django untuk ngebuat web-nya, dan Google-Charts-API untuk visualisasinya. Hal yang menarik terjadi ketika saya eksplorasi Django-nya, saya nemuin tulisan begini hahaha.

Setelah anda melakukan konfigurasi di atas, lalu mencoba tes, anda akan membanting gelas kopi anda — karena konfigurasinya memang belum selesai

:))

Paling suka deh kalau ada penjelasan-penjelasan yang becanda kayak gitu hahaha :))

Eniwei, ternyata Django cukup ribet hahaha. Yang paling menyebalkan adalah ketika konfigurasi untuk halaman static, si Django otomatis ngebuat cache yang membuat halaman static kita relatif gak berubah walau udah diubah-ubah kodenya -_-.  Saya ampe hampir gila karena bingung kenapa perubahan yang saya lakukan gak ngerubah tampilannya hahaha.

Selain itu, hal yang menyebalkan lainnya adalah masalah peletakan file. Mirip laravel, si Django ini menyediakan fasilitas Route. Enak sih untuk konfigurasi alamat-alamat, tapi kadang ngebuat bingung untuk ngeletakin file yang bersangkutan (misalkan js,css,gambar dll)

 

 

Hahaha. Itu aja sih cerita saya untuk kp selama ini. Seru juga sebenarnya seharian *mencoba* ngoding. Sedihnya adalah saat kodingan yang dibuat sebenarnya minim progress karena ada masalah sana-sini. Huft.

 

Eniwei, gimana cerita liburan kalian?

 

Salam.

Pokoknya hari swasta saya harus udah brewokan. Minimal kumisan.