Afief Yona Ramadhana

Personal Blog

Web Developer yang gemar bermain dengan javascript dan HTML5. Namun sesekali bercanda dengan Unity dan C#. Menulis blog untuk meninggalkan jejak sebagai manusia biasa.
03 Sep 2015
picker

Javascript Google Drive API Library

Percayalah, google sudah sangat baik membuat banyak servicenya dapat diakses oleh para developer. Ditambah dengan dokumentasi yang komplit dan lengkap. Dengan tambahan sample code yang mudah dipahami dan di copy paste.

Tapi memang, sudah kodratnya manusia, yang tak pernah puas akan semua anugrah yang diberikan, dan selalu berharap akan kemudahan-kemudahan. Oleh karena itu, gue meringkas beberapa fitur yang paling sering digunakan di Google Drive API kedalam satu buah library kecil yang gue letakkan di github.

Semoga berkenan, dan bermanfaat bagi umat https://github.com/afief/GDriveJS

Silakan di fork, lalu kita sama-sama making the world a better place.

13 Aug 2015
alfamart

Minimarket Bebas Parkir

Hidup di jaman di mana hampir semua hal bisa jadi uang, sulit untuk cari minimarket yang bebas parkir. Minimarket yang dulu jadi andalan karna bebas parkir, kini sudah tak gratis lagi. Padahal sebelumnya adem ayem, jarang ada masalah sama motor yang parkir.

Memang sih, tempat parkir juga punya pajaknya (PBB, Pajak Bumi dan Bangunan). Tapi kalau sudah jelas-jelas tertulis “Parkir Gratis”, masak iya masih minta bayaran. Masih mending kalau ngasih efek positif. Jaminan jika motor hilang, atau kasih fasilitas kardus biar gak kepanasan. Kalau keberadaannya cuma nguras gocek di saku mah, ngapain. Seribu itu emang sedikit, tapi kalau sering, dan kalau di saku cuma ada duaribuan selembar, ya jadi bukit.

11 Aug 2015
Pictures

Ngoding di Jakarta Asik Juga

Jakarta panas, iya. Macet ya. Tapi kalo ngoding kan gak di jalan, di luar sambil papanasan.

24 Jun 2015

There is always the tough woman behind a great man

IMG_20150604_204612

Ramadhan tahun lalu gue sering sahur di kantor. Kantor jadi tempat sahur yang lebih ideal daripada kosan karna ramai dan banyak yang bersedia membangunkan bahkan dititipi pesanan makanan.

Ramadhan tahun ini lebih spesial tapi tidak jauh berbeda dari Ramadhan sebelumnya. Gue masih mendapati bangun tidur sendirian, tapi dengan mendengar suara kompor atau wajan yang beradu dengan spatula dari arah dapur.

There is always the tough woman behind a great man yang enggak kelewat waktu sahurnya

16 Jun 2015
Squarezoo

Android Game : Squarezoo

Jadi game developer bukan berarti bakal punya banyak game yang bisa dipamerin. Game yang dibuat banyak, tapi tak cukup banyak yang bisa di share dan dengan bangganya bilang “ini game gue”.

Sebagai game programmer di studio “gamification”, kebanyakan game yang gue buat adalah milik klien. Klien request, studio sepakat, gue bikin, klien oke, game jadi milik mereka. Selain itu, game dibuat secara tim, mau sendiri beresin game jadi hal yang teramat sulit. Seperti Angkot The Game dari studio gue, banyaknya waktu yang dibutuhkan berpengaruh ke hal-hal lain, seperti “biaya”.

Tapi sulit bukan berarti gak mungkin. Dengan berbekal beberapa weekend dan aset yang dibagikan orang-orang yang baik dari Kenney, gue akhirnya bisa bikin game. Gamenya sederhana, atau mungkin sangat sederhana, karna memang targetnya untuk anak-anak seangkatan sama adik gue yang emang masih kelas 2 SD.

Player hanya dituntut untuk memilih binatang yang sama sebanyak dua atau lebih. Bagi yang mau coba atau install buat adiknya, silahkan ke link di bawah ini ya :)

Get it on Google Play

06 May 2015
Capture

A Hectic Long Weekend

Long weekend kemarin gue disibukkan dengan satu projek freelance. Membuat e-commerce simpel. Projek yang pada umumnya dikerjakan sekitar sebulan, diringkas padet jadi 3 hari long-weekend karna klien butuh di Hari Senin.

Sempat kepikiran develop pake WordPress dan WooCommerce, tapi item-item yang dijual sangat enggak biasa. Item yang dijual berupa batik dengan motif-motif yang dapat diganti oleh pembeli. Jika pembeli sudah oke dengan motif yang “diutak-atik” sendiri, pembeli bisa melanjutkan proses checkout dan melakukan pembayaran.

Karna klien butuh cepet, maka pada akhirnya gue pilih Angular. Tinggal pasang route dan buat beberapa view, beres. Buat CSSnya gue minta bantuan Bootstrap untuk memudahkan tampilan grid view dan ngetik SCSS dengan bantuan scssphp. Untuk sistem gonta-ganti motifnya sendiri “terpaksa” gue pake Flash. Embed SWF di salah satu view karna gue gak akan sempet bikin pake Canvas HTML5 dalam sehari (fiturnya baru dipaparkan lebih lanjut di Malam Minggu). Gambarnya sendiri gue olah pake Photoshop, mainin Magic Wand dan Poligonal Lasso Tool buat potong-potong motif dan “maksain” nempelin ke baju.

(more…)

29 Apr 2015

Angular – $http

Minggu kemarin gue nulis tentang Fetch() API. Metode untuk mengambil resource / data dari URL yang diberikan. Method tersebut masih belum banyak digunakan, bahkan sangat sedikit karna baru bisa di terapkan di Chrome dan Firefox versi paling baru.

Nah, kali ini gue coba berbagi tentang $http service di Angular. Service yang fungsinya sama dengan Fetch() API atau fungsi XHR lainnya. Perbedaan yang paling menonjol adalah fungsi ini merupakan fungsi bawaan dari AngularJS dan bisa digunakan tanpa tambahan modul lainnya.

Yang berbeda selanjutnya adalah fungsi ini mempunyai chain success dan error yang sangat memudahkan coder untuk memeriksa hasil pemanggilan. Contoh paling dasar penggunaan success dan error bisa dilihat disini :

(more…)

28 Apr 2015
11176264_1609646389246970_1756453555_n

Karnaval KAA 2015

Enam tahun gue tinggal di Bandung dan weekend kemarin adalah pertama kalinya gue ke karnavalan. Yup, Bandung jadi tuan rumah Konferensi Asia Afrika ke 60. Berikut video yang gue rekam sembari menikmati pertunjukan.

dan ini video keduanya. Videonya dibagi jadi dua bagian karna terlalu panjang. :)
(more…)

20 Apr 2015
AngularJS-large

Memulai Belajar Angular JS

AngularJS adalah framework javascript yang digunakan untuk memaksimalkan elemen HTML menjadi tampilan yang dinamis. Meskipun masih terbilang muda, framework ini sudah banyak digunakan. Beberapa aplikasi yang sudah menggunakannya antara lain Youtube on PS3, Vevo, ga.me, Sky Store, dan MSNBC.

Salah satu fitur yang paling utama dan belum gue temuin di framework lain adalah Two Way Data -Binding. Fitur ini memungkinkan nilai elemen terhubung langsung dengan model. Ketika model / variabel di dalam controller diubah, maka tampilan di dalam DOM Element akan ikut berubah. Bergitupula apabila tampilan di elemen diubah, maka model di dalam controller pun akan ikut berubah. Contohnya seperti di bawah ini

See the Pen AngularJS – Two Way Data-Binding by Afief Yona Ramadhana (@afief) on CodePen.

ubah text yang ada di dalam textbox

Selain fitur tersebut, fitur lain yang menarik juga adalah Template. Kita bisa membuat template dari HTML biasa, lalu membinding  setiap elemen ke dalam model sehingga tampilannya menjadi dinamis. Kita juga bisa membuat beberapa tampilan dengan HTML yang terpisah, lalu membuatnya menjadi halaman-halaman yang terpisah dengan menggunakan ngRoute.

Fitur – fitur tersebut dan fitur lain seperti MVVM, Directive, Service, dll dapat dipelajari dengan mudah dan menyenangkan di codeshool.com. Situs tersebut menyediakan course gratis bagi yang mau belajar AngularJS, dengan menonton beberapa video yang berisi penjelasan-penjelasan singkat namun terpapar dengan baik. Kemudian kita juga bisa mengerjakan contoh kasus pada setiap sesinya untuk dapat melanjutkan ke sesi course selanjutnya. Selamat Belajar :D

Capture

Mobile Friendly Test

Salah satu tools dari google yang cukup favorit buat ngecek apakah web yang kita bangun mobile friendly atau tidak. Tools tersebut akan menganalisa bagaimana website kita tampil di dalam perangkat mobile. Yang paling utama adalah apakah font menjadi terlalu kecil, atau pranala-pranala yang ada jaraknya terlalu dekat.

Bagi yang mau mencoba, silakan masukkan nama website di bawah ini

atau langsung saja ke https://www.google.com/webmasters/tools/mobile-friendly/

19 Apr 2015
DefaultThumbnail

Fetch() API

Salah satu problem ketika membuat aplikasi dengan meminimalisir library adalah ketika melalukan pemanggilan AJAX. Kadang mau gak mau gue tambahin jQuery, cuma buat pakai fitur AJAXnya yang mudah digunakan. Tapi kadang pula ketika ingin meminimalisir ukuran, gue tulis sendiri fungsi XHRnya. Meskipun, XMLHttpRequest cukup sulit untuk diingat implementasinya.

fetch()

Fungsi ini sama seperti AJAX. Digunakan untuk mengambil resource/data dari URL yang diberikan. Fungsi ini dapat dipanggil dengan window.fetch() atau fetch() dengan argument pertama adalah URL dan argument kedua adalah objek yang merupakan pengaturan tambahan. Fungsi ini akan menghasilkan objek Promise.

Pengaturan tambahan yang dapat dimasukkan antara lain :

(more…)

18 Apr 2015
IMG_20150403_122240_2

Kembali Ke Desa

Semenjak menikah, gue hidup berdua bareng istri jauh dari keramaian Kota Kembang. Kini gue tinggal di Padalarang, tepatnya di Perumahan Bumi Cempaka Asri Blog E2 No. 11 (silakan catet ya gaes buat yang mau main). Perumahannya tenang, atau bahkan terlalu tenang hingga tukang batagor dan eskrim cincau jarang sekali lewat.

Perumahan ini masih dalam tahap pengembangan. Masih banyak pegawai bangunan lalu-lalang mondar-mandir wara-wiri. Namun di blok yang gue tempati (dan beberapa blok sebelahnya), pembangunan sudah selesai dilakukan. Hanya beberapa rumah yang direnovasi atau dilanjutkan pembangunannya.

Sebagian besar rumah yang selesai, sudah ditempati. Sebelah kiri dan belakang, sudah ditempati lebih dulu. Sedangkan di sebrang depan sedang diperbaiki dan ditambah satu lantai.

IMG_20150418_092719_2

Dirumah yang sepi ini, selain kami berdua, ada seekor kucing yang kami putuskan untuk pelihara. Gojess si kucing kampung tapi bukan. Tingkahnya kadang merepotkan. Tapi ada banyak hal bodoh yang dia lakukan. Setidaknya itu salah satu hal yang membuat kami betah di rumah ini.