Project : JagoanGitar!

In my last semester (hopefully!), I chose to take course which will give me opportunity to code more. By that reason, I chose two courses : Pengembangan Aplikasi Media Interaktif/PAMI (Interactive Media Development) and Tech-Based Business. Today, I will tell more about my final project in PAMI. I also developed something for my tech-based business class, but I will tell you about it later.

For the final project in PAMI, we were asked to build an interactive application (which mostly will associate it with ‘Game’) using one of many tools : Myo Armband, Intel Galileo, and Leap Motion. First, we’re asked to propose the idea for the final project. The general requirement is “develop something that can also improve your skill in real life”.

We try to give interactive experience when you try to learn guitar by reading tab.

We try to give interactive experience when you try to learn to play guitar by reading tab.

After discussed the idea, our team (oh, our team consists of me, Andre, and Wono)  came up with JagoanGitar! JagoanGitar! (which is Bahasa Indonesia-literal-translation for Guitar Hero, our role model for this game, hahaha) is a desktop-game which developed to help you learn to play guitar by reading tab. For development, we chose Intel Galileo as our tools. Why? We want to create experience for user as they play using their guitar. Intel Galileo will be used as a middleware to detect input from guitar to desktop via electric signal as the user play his/her guitar.

But, as it turns out, we developed our game using Arduino. We found an example code to read signal from guitar, but it involves a low-level programming and we didn’t have many time to learn and convert it to similar code in Intel Galileo. Besides that, we stumbled on problem about how to calibrate the input signal. Because of resonance, we got so many input with various value and so far range. We tried to tackle this by using heuristic : if one of the value is in correct range in desired note, we count it as true! (for the list of notes, we use this list). It’s quite good to tackle problem to recognize a note via their frequency, but not much in case two same notes was strummed twice. (Btw, if you have experience about this problem, maybe you can share how you tackled this problem).

For game development, we mainly use Unity as our engine, using C# script. For connecting input from Ardunio to the main game, we use serialization. For a sneak peek, you can see it from video below, or for the code base you can see it on github (we do so many iteration for the level struct haha).

 


At the end, I, myself, think that our execution is not fulfill what we really planned before. Besides problem I mentioned before, we also stumbled on problem like : why the input modul –somehow– did not work (which usually worked before). We tried to re-build the circuit in arduino many times, but , still, nothing happens. And finally we realize the problem is not in the circuit, but in the cable from guitar to arduino (which we realize after the guitar was also not working in my Makrab hahaha).

In our final presentation, we got many feedbacks from our lecturer. Mostly about our execution, in game-concept-related. From the feedbacks, we realize what really miss in our project : our team has no game-developer background! We are so focused about the technical side and basic requirement, but not develop it until game-ready-phase. And also, from the screenshot, you can tell that we have no designer hahaha.

We also forgot about the means of the course. We spent so many time in “how we get correct input from guitar”, which the course actually emphasize on “how you develop better interaction and experience for your user”. I think we should choose the right idea and tools. Hahaha.

But, after all, it was both amazing experience and exciting project for me.

(For me, the best project for this course is developed by Ardi, Midum, and Gilang, but I can’t find the video)

Cheers!

#MendingNgodingDaripadaPusing

Kabar Terbaru

Wueh. Udah lama juga saya tidak nulis di sini.

Alasannya sederhana sih: terlalu banyak hal yang dipertimbangkan sebelum menulis. Sebenernya banyak yang pengen diceritain, tapi takut cheesy banget. Tuh, kalimat sebelumnya aja udah terdengar begitu.

 

Tulisan tulisan berikut hanya sekedar kabar terbaru supaya blog ini tidak kosong-kosong amat.

Eniwei, dalam beberapa minggu ke belakang ini saya lagi banyak coba-coba dengan Ionic. Singkatnya, Ionic ini adalah sebuah framework yang bisa digunakan untuk membuat aplikasi mobile menggunakan bahasa yang biasa digunakan untuk web. Jadi si Ionic ini akan melakukan porting proses dan view yang coba dilakukan dengan pendekatan desain web, menjadi aplikasi native dengan menggunakan webview.

Proses pengerjaan yang saya lakukan sama sih untuk ketiga projek yang saya buat: create project baru, ganti aset, tampilin service yang diberikan.

Soal service, saya merasa pendekatan inilah yang paling baik dilakukan buat pengembangan aplikasi sekarang. Semua ini berawal dari kata-kata aryya di tahun lalu, “Kalo kata Pak Munawar, sebenernya kan aplikasi Gmail itu cuman satu. Terus dibuat tampilannya untuk web, untuk mobile, dsb”.

Pertama kali saya denger, saya dapet insight yang membuat saya menyimpulkan bahwa pengembangan aplikasi, ujung-ujungnya sama: buat satu proses, tukeran data, tampilan dibuat berbeda.

Hal ini kebetulan diterapkan di tempat saya melakukan kerja praktik. Kebetulan Kak Ali (mentor di tempat KP –pen) selalu meminta saya untuk membuat API-nya dulu, baru membuat tampilannya. Hasilnnya cukup menarik, karena kita jadinya tidak perlu ngoding dari awal untuk aplikasi-aplikasi sama tapi beda platform. Kesulitannya ya mungkin, karena prosesnya diletakkan di server, ketergantungan sama masalah koneksi bakal besar banget.

Eh buset, tulisannya kaku amat -___-

Eniwei, saya mau membagikan sedikit cerita saya saat makan siang tadi.

Jadi, sekitar jam 13.00 saya memutuskan untuk makan siang di rumah makan terdekat. Tapi waktu saya memeriksa dompet, ternyata uang saya hanya 3000 rupiah saja. Berhubung uangnya cuman cukup buat bayar parkir doang (kalo ada motor), saya memutuskan untuk mengambil uang di Baltos. Saya ambil jalan pintas, melewati gang. Di salah satu gang, ada anak-anak kecil yang lagi duduk di pinggiran. Terus mereka cekikikan.

Waktu saya lewat mereka, mereka seolah-olah mempelantingkan tubuh mereka ke arah menjauh dari saya.

Mereka bertingah seolah langkah kaki saya membuat gempa.

Kampret.

Btw, akhir-akhir ini WWE lagi seru banget.

Kebetulan shownya sedang berada di Inggris, terus di salah satu aksi, melibatkan pemain sepakbola favorit saya waktu kecil : Wayne Rooney! Adegannya sederhana sih. Bintang WWE-nya gangguin Rooney, Rooney nampar si doi, si doi sakit berlebihan.

 

Kabar mengejutkan dateng dari Seth Rollins. SR mengalami cedera lutut sehingga harus menyerahkan gelar WWE Championnya. Hiks, padahal saya mulai suka sama gimmick dia.

Hal seru lainnya: Brother of Destruction (Tag Team-nya Undertaker dan Kane) balik! Rencananya, mereka bakar ngelawan The Wyatt Family di Survivor Series. *super excited*

 

Kayaknya gitu aja deh. Maafin tulisannya berantakan banget. Huehuehue.

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.

Rencana Kecil-Kecilan

Setelah sempat merenung cukup sebentar *ga nyampe sejam*, saya memutuskan saya harus sudah mulai punya rencana. Sekecil apapun.

Saya mulai nontonin video-video talkshow soal perencanaan keuangan. Saya inget mama saya dulu suka baca bukunya Safir Senduk. Mama yang dengan hebatnya, sudah bisa merencanakan dan menyiapkan dana untuk rumah dan kuliah anak-anaknya. Sehingga saat ayah saya pensiun, rasanya mama dan ayah tidak punya tanggungan finansial berarti selain anak kedua nya yang sedang kuliah dan belum punya penghasilan.

(Flash news, kakak saya sudah bekerja, adik saya masuk kepolisian (alhamdulillah!), dalam 7 bulan sudah mulai aktif bekerja, dan — kampretnya — akan punya penghasilan duluan dari saya. Ya, tahun depan, di keluarga ini yang masih aktif menerima THR adalah saya. -____-)

Balik lagi, saya jadi youtubing soal finansial, terutama talkshow-talkshow gitu. Kalo course kuliah gitu pusing dan tidak praktikal.

Jadi, hasil youtubing yang sebentar ini, saya menyusun rencana sederhana untuk perencanaan finansial saya.

Rencana saya dulu, saya hanya membagi keuangan saya menjadi dua rekening: tabungan dan harian. Tabungan berisi hasil tabungan, hadiah, THR, dll, yang harusnya sih untuk didepotisokan atau semacamnya. Harian, saya gunakan untuk makan, jajan, beli ini itu yang sifatnya rutin keluar. Apa daya, tidak punya rencana apa-apa membuat uang harian jeblok, tabungan terpaksa nombokin dan sekarang sisa secuil saja.

Saya dapet insight menarik, yang membuat saya berpikir, seharusnya ada 3 rekening : Tabungan Jangka Panjang, Tabungan Jangka Pendek, dan Harian. Harian, masih sama gunanya. Tabungan pendek, adalah tabungan yang sifatnya adalah pengumpulan untuk dibelanjakan. Misalnya, saya berencana beli hape baru di Januari nanti, uang untuk beli hape yang saya sisihkan akan masuk ke sini.
Tabungan panjang, tabungan yang sifatnya sebagai modal, dan tidak akan digunakan untuk konsumsi.

Loh, gunanya tabungan panjang apa dong? Untuk biaya emergensi gak make gitu?

Kalau sampai sekarang, saya bilang nggak. Emergensi, akan saya bebankan ke tabungan jangka pendek.

Tabungan jangka panjang, seperti yang saya bilang, akan digunakan sebagai modal. Sederhananya, misal, uang ini saya masukkan sebagai tabungan berjangka (atau berencana ya? Lupa namanya hahaha), sehingga di akhir periode, uang ini nilainya naik 7.5 persen. Andaikan ternyata uang ini mengalami pengurangan nilai (inflasi, harga naik) sebesar 6 persen, saya akan tetap mendapat keuntungan 1,5 persen. 1,5 persen ini yang akan saya alokasikan ke tabungan jangka pendek.

Nah, sebagai mahasiswa yang relatif belum punya penghasilan, pembagian ini saya adaptasi ke uang bulanan yang dikirim orang tua. Rasionya (gak ada dalilnya) masih cetek sih, harian : pendek : panjang = 85 : 10 : 5.

Tabungan jangka pendek memang sengaja saya gedein dibandingin yang panjang, agar apapun yang terjadi, uang yang saya ambil adalah 10 persen ini. Biar kecil, asalkan nilai yang 5 persen ini gak keganggu, bagi saya, ga papa.

Sebenernya sih, baru saya coba adaptasi satu bulan. Saya ga tahu rencana ini bener atau nggak hahaha. Saya share, mungkin bisa jadi insight bagi teman-teman sekalian.

Atau mungkin ada yang punya insight buat saya? Mungkin bisa dishare hehehe :))

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.

Menulis TODO

Hari ini kebetulan, HMIF ITB ngadain acara internal untuk angkatan 2012 seperti saya, soal sharing TA (Tugas Akhir). Sharing TA lebih ke arah bagaimana best practice dari pengerjaan TA terus suka duka soal TA.

Eniwei, sekarang saya bukan mau bahas itu-ituannya. Saya tertarik (dan setuju banget) sama apa yang dibilang kak Fawwaz soal ngegunain planner dalam mengerjakan TA. Jangan anggap TA sebagai sesuatu yang besar, coba Breakdown kerjaan yang ingin dilakukan, terus dicatet rencana pengerjaannya di planner.

 

Kerjaan saat ini. Dibanyak-banyakin biar berasa sibuk. #huft

Kerjaan saat ini. Dibanyak-banyakin biar berasa sibuk. #huft

Akhir-akhir ini, saya lagi cukup on fire dalam bekerja nih. Kegiatan ngoding terutama, akhir-akhir ini jadi sering dan –saya gak percaya saya nyebut kata ini– senang untuk dilakukan. Salah satu hal yang menurut saya sederhana namun membantu adalah membuat TO-DO List sebelum bekerja. Hal ini membantu saya untuk melihat kembali apa aja yang mesti saya lakukan atau untuk sekedar penyemangat, apa aja yang akhirnya udah berhasil saya lakukan. Hal ini baru akhir-akhir ini saya lakukan, dan mungkin ada pengaruhnya sama kondisi semangat sekarang.

 

Sebenernya gatau juga sih hahaha. Coba aja deh :))

 

Salam.

Coret todo-list nulis blog.