Workshop Nokia Developer: Day 2


Hari Kedua.

Kalau di hari pertama paginya High Level UI, dan sorenya Low Level UI, hari kedua penuh membahas Low Level UI. Bedanya dengan hari pertama, kalau hari pertama memanfaatkan shape yang ada di J2ME nya, hari kedua memanfaatkan image sprite, jadi game yang dihasilkan bisa lebih menarik. Selain itu juga dilakukan penambahan sound di game.

Game yang dibuat kali ini adalah Hit The Bird. Jadi ada Mr. Smith yang akan melempar batu ke burung. Trus tiap batunya kena burung bakal meledak, dan score pemain bertambah 1. Gambaran umum gamenya seperti itu.

Hari ini penjelasan mengenai game loop yang ada lebih diperdalam, dan mulai memanfaatkan penggunaan Thread yang berbeda untuk membuat gamenya. Untuk anak IF sepertinya hal ini bukan hal yang baru. Termasuk saya. Tapi dengan workshop ini, saya jadi lebih mengerti untuk membuat game loop yang rapi. Sebelumnya udah pernah lihat source code Towerz (previous version of Bhinneka Tunggal Ika which is previous version of Eden), dan melihat gameloop yang ada. Tapi karena hanya membaca sendiri, tentunya bisa muncul pemahaman yang berbeda dibandingkan penjelasan oleh ahli, ya kan? 😀

Dan kalau diingat-ingat, game loop yang saya buat di tubes OOP2 sepertinya rada berantakan ~_~. Entahlah, mungkin karena memakai Thread Queue, supaya bisa jadi cem-cem diner dash gitu yang buat jadi berantakannya. Yang penting udah tau yang rapi kaya gimana. Yang rapi? Bukan yang benar? Yang rapi, kalau yang benar itu emang seperti apa? Kalau udah jalan, dimana pengguna udah benar kan? 😛

Dan pastinya tidak ketinggalan untuk diberitakan adalah makan siangnya. Kalau kemarin makan siang di Mushola Kayu, sekarang makan di ruang 7608. Itu lantai 3, jadi lebih dekat dibandingkan hari pertama. Tapi makannya ga kalah enak. Ikan, daging, sayur, kerupuk, pisang, :9 Gratis nya itu sih, yang paling ngebuat enak 😀 Sorenya juga masih ada coffe break dan dapet snak lagi :9

Sore harinya, kami diberikan file berisikan materi-materi training dari Nokianya. Ukurannya 156MB. Katanya sih lengkap, bahkan ada contoh game 3D nya :O wow. Sepertinya liburan ini akan mengoprek 3D nya untuk dibawa ke Gemastik. 😀

Sekian untuk Day 2! 😀

Iklan

Workshop Nokia Developer: Day 1


Tanggal 24-26 Mei 2011, saya mengikuti Workshop yang diadakan oleh Nokia. Kurang mengerti sih kenapa bisa terselenggara. Kalau berdasarkan isu-isu yang beredar, Nokia yang saat ini application store (Ovi Store) nya ketinggalan dibandingkan dengan yang lain (Android, iPhone, RIM) ingin mengejar ketinggalan tersebut dan meningkatkan entusiasme dari kalangan developer untuk mengembangkan aplikasi di platform Nokia.

Sebelum memulai, peserta workshop disuruh datang lebih cepat untuk menginstall applikasi yang diperlukan di saat workshop. Defaultnya, yang diberikan adalah JDK 6.25, NetBeans 7.0, dan WRT 2.5.2. Sementara saat itu JDK saya versi 6.21, NetBeans versi 6.8, dan tidak ada WRT. ~_~ Saya hanya menginstall JDK dan WRT pada hari itu, karena rasanya tidak akan bermasalah.

Dan memang sih tidak ada masalah. Bahkan yang menginstall NetBeans 7.0 sempat bermasalah. Tapi masih tertanggulangi. Entah kenapa platform J2ME yang biasanya ada di NetBeansnya menghilang, dan hanya ada untuk WRT yang baru diinstall. Dengan memperbaiki path yang ada di Tools->Java Platform, dan menambah platform yang lama dengan pilihan add Platform, J2ME nya muncul kembali.

Acara dimulai jam 9, molor dikit sih, tapi masih dalam waktu yang masuk akal. Cuma 10 menitan gitu. Yang menjadi pengajar adalah pak Alex Budiyanto. Saya tidak tahu pengalaman beliau sudah seperti apa, yang penting beliau berhasil menyebarkan ilmunya. 😀 kalau mau tau lebih lanjut, mungkin bisa googling, pasti yang keluar orang yang saya maksud 🙂

Pada pagi hari, kami diberikan penjelasan mengenai platform J2ME (atau platform HP berbasis Nokia?) Entahlah, saya kurang mengerti. Kesimpulan yang saya ambil yaitu, gunakan MIDP 2.1, CLDC 1.0 dan DefaultCLDCPhone1. Hahaha.

Sebelum makan siang, kami diberikan Lab, yang kurang lebih mengetik ulang code yang ada di file pdf yang diberikan. Sayangnya tidak bisa di-copy-paste, jadi harus mengetik 11 halaman source code. Code yang dibuat adalah program yang memberikan fungsi High Level UI dari J2ME. Jadi yang make button, text, dan sejenisnya.

Jam 12 kemudian waktu makan siang. Makan siang hari itu di Mushola Kayu, lantai 2. Dan kami workshop di ruang multimedia, lantai 4. Jauh? Iya sih, jauh. Makan siangnya enak. Haha. Apalagi gratis. 😀 Kebetulan hari itu saya tidak sarapan. Jadi makanan yang kelihatannya diambil berlebihan tetap habis. Ayam, sayur, bakso, kerupuk, semangka. :9

Sorenya, kami merambah ke Low Level UI. Kalau buat game, biasanya digunakan Low Level UI. Sepertinya bukan “biasanya”, tapi “pasti”. Saya tidak bisa membayangkan bagaimana cara membuat game dengan High Level UI. Mungkin kalau hanya berupa teka-teki puzzle gitu mungkin bisalah ya. Tapi mostly orang menggunakan Low Level UI.  Jadi dengan dibimbing pak Alex, kami membuat sebuah game pong sederhana. Kalau yang kuliah di ITB dan ngambil mata kuliah Organisasi dan Arsitektur Komputer, tau lah ya game apa. Kalau yang ga tau, bisa nyari tau di http://www.ponggame.org/.

Pembuatannya benar-benar pertahap, mulai dari penjelasan logic, arsitektur gamenya, dan hingga gamenya jadi. Kayanya semua peserta berhasil membuatnya deh 🙂 Jam 3 sore ada coffe break, dan dapat minuman+snack gratis. Wow, saya merasa lagi pelatnas. Ya pokoknya enak deh 😀

Nanti akan saya post mengenai game pong yang saya buat. Untuk hari pertama sekian dulu. 🙂

A Poem of Coder – lebay version


Ini ada sebuah poem yang dibuat dalam 30 menit saat Cisitu lagi mati lampu dan perut dalam keadaan sakit. Tujuannya sebagai sebuah talent yang akan ditampilkan di “Talent Show” untuk calon asisten programming. Menceritakan kisah seorang coder (yang dilebay-lebaykan). Kenapa coder? Karena hidup saya akhir-akhir ini tidak lepas dengan code dan tidak bisa mencari inspirasi dari lain hal. Maaf~

nb: “//” artinya komentar

—-

Aku aku

Aku
Bermain dengan papan ketik // ngetik keyboard ceritanya
Mengusik masalah yang pelik // ya itu, ada tubes

Aku
Berdansa dengan tetikus // mainin mouse nih
Mendambakan saat yang mangkus // gimana ya supaya efisien?

Aku
Serangga musuh terbesarku // wah nemu bug nih
Kecil, mungil, mengikis waktuku // wew 1 jam habis gara-gara lupa i++

Aku
Dikejar irrasionalnya waktu // aaaa deadlineeeee
Tidak melar, ya, seperti batu // kak mundurin dong mundurin

Aku
Menderita dalam gelap // aaaa mati lampu
Tiada bisa terlelap // aaaa tubes belum beres aaaa

Aku
Punya dunia kedua // aku dan laptop
Tiada yang bisa mendua // kami saling memiliki :p

Aku
Didengar oleh dunia // iya dong, ceritanya lagi ngetik keyword di google
1 kata, ribuan yang iya // 1 kata aja bisa ratusan ribu nih balesannya

Aku
Aku. Ya, aku.
Aku aku. // peduli amat kata orang, aing mah kumaha aing

😛

CI: Online Library Project #4 – Screenshot


I know the looks really bad, but it works. :))

CI: Online Library Project #3 – Model


Selanjutnya mengenai model. Apakah model? Model itu kira-kira yang melakukan interaksi dengan database di level aplikasi. Jadi semua yang berhubungan database merupakan fungsi model. Karena ada 3 database maka terdapat 3 model juga. (Mungkin begitu, tapi entahlah, baru menyadari saat menulis ini)

Model-model tersebut adalah:

Baca lebih lanjut

CI: Online Library Project #2 – Database


2 days not blogging and I’ve finished it! But it lacks of almost everything. -.-

Jadi totalnya ada 4 controller, 3 model dan banyak view -.- Sebenarnya saya bingung bagaimana cara untuk menjelaskannya, jadi saya akan coba untuk menjelaskan fungsi permodel dan fungsi percontroller. Untuk #2 ini akan dikhususkan ke database, #3 model, dan #4 controllernya.

Baca lebih lanjut

CI: Online Library Project #1


Ingat tentang post sebelumnya mengenai kalau gw ada tubes dari bang Petra untuk memakai CI dan membuat aplikasi web tentang perpustakaan online? Mau ngasi progress reportnya nih. Petranya juga minta gw nulis di blog mengenai progressnya biar ga repot meriksanya ntar -.- Ya sudahlah sekalian saja.

Dipost sebelumnya gw udah bilang kalau gw make library Ion_auth untuk authorisasi login, jadi 2 hari terakhir ini gw mencoba menggunakan library ini di aplikasi ini. Jadi sekarang aplikasi ini udah bisa login, dan register sebagai user. Tapi belum punya fungsi lainnya T_T

Saat ini gw punya 2 controller, 5 view, dan 0 model. Model yang ada dari library Ion_auth jadi ga dihitung. Sebenarnya juga udah ada model books tapi belum dipake, jadi ga dihitung juga. Controllernya ada pustaka dan user. Controller pustaka punya fungsi index dan register. Controller user punya fungsi login, logout, dan register. Viewnya ada header, vlogged_in, vregister, vlogin, dan vpustaka.

Jadi saat dijalankan, CI akan mengarahkan ke pustaka/index. Disini dengan Ion_auth library dicek, apakah user udah logged_in apa belum. Jika belum, maka akan meload view(vlogin), dan jika sudah akan meload view(vlogged_in). Hasil load ini disimpan ke variable. Kemudian barulah nge-load view ke browser, dengan meload view(header) yang berisikan <head>, dan kemudian meload view(vpustaka) dengan variable yang tadi menyimpan load view login/logged_in. Bagian login/logged_in ini berada di sidebar kanan.

vlogin berisikan form dengan action ke user/login jika menekan button login, dan action ke pustaka/register jika menekan button sign_up. Jika login berhasil, maka akan diredirect kembali ke pustaka/index, dan karena user sudah logged_in maka yang diload bukan vlogin, tapi vlogged_in. Sedangkan jika action yang dilakukan adalah sign up, maka akan dilakukan fungsi di controller pustaka/register, yaitu menyiapkan untuk memanggil vregister sebagai body dari vpustaka. Dan kemudian meload view tersebut.

vregister merupakan view dengan form yang bisa diisi untuk meregistrasikan user. Saat form disubmit, maka akan dipanggil controller user/register, dan kemudian meredirect kembali ke pustaka/index jika user berhasil di create.

Demikian progress reportnya. Maaf bahasanya berantakan karena saya ngebuatnya juga masih berantakan -.- Kalau ada yang salah dari designnya mohon kritikannya ya 🙂