//
archives

Archive for

Berbagi Pengalaman di SMK Negeri 1 Lemahsugih – Majalengka


Foto bersama Panitia

Alhamdulillah, kali ini saya bersama rekan-rekan lain dari MUGI Bandung (Microsoft User Group Indonesia regional Bandung) berkesempatan untuk menjadi pengisi acara seminar di SMKN 1 Lemahsugih, Majalengka. Ini merupakan kali pertama MUGI Bandung mengisi acara di Majalengka. Bagi saya pribadi banyak sekali pengalaman baik sebelum sampai di tempat seminar dan setelah pulang dari tempat seminar. Seminar ini seluruhnya diikuti oleh siswa/i SMKN 1 Lemahsugih yang tentu saja dengan spesifikasi informatika.

Serunya dalam kegiatan kali ini adalah di pagi hari sebelum saya berangkat ke tempat tujuan ada sebuah cobaan. Yaaa! Bagaimana tidak, yang awalnya direncanakan berangkat pukul 05.00 harus tertunda hingga pukul 08.00 dikarenakan mobil jemputan mengalami kerusakan katanya. Awalnya memang timbul kekesalan karena saya dan rekan saya (Yusuf) sudah tiba di lokasi sekitar jam 5 pagi. Setelah mendapat kabar bahwa keberangkatan ditunda, maka kami kembali ke kampus UPI (Universitas Pendidikan Indonesia) sambil ‘kukulutus’ di jalan, hehe. Jam 8 pagi kami kembali ke tempat pemberangkatan yang berlokasi di Jalan Suci.

Saya memprediksi bahwa kami akan sampai di Majalengka paling cepat sekitar jam 12 dengan asumsi pemberangkatan pukul 08.00. Kenyataannya kami berangkat lebih dari pukul 08.00. Dalam perjalanan ternyata sang pengemudi sungguh sungguh sangat lihai dan cekatan dalam mengemudikan mobil bahkan saya sempat beberapa kali menahan napas karena ketegangan dan kekhawatiran akan terjadi sesuatu yang di luar keinginan. Yaa, mobil yang dikemudikan sangat ngebut sekali bahkan Bandung-Majalengka ditempuh dalam waktu kurang lebih 3,5 jam. Ini merupakan pengalaman pertama kali saya diangkut oleh mobil se-ekstrim itu. 😦

Tiba di lokasi seminar, panitia sempat meminta maaf karena ketidaknyamanan yang telah disebutkan tadi dan ini terjadi karena memang kehadiran kami sangat ditunggu bahkan oleh Kepala Dinas sehingga harus secepat mungkin sampai di lokasi seminar. Namun, Sungguh senang melihat antusias dari peserta seminar yang tidak kehilangan semangat padahal mereka telah hadir sejak pagi hari. Luar Biasa!.

Adapun beberapa materi yang kami berikan di sana, antara lain:

  1. Membuat Aplikasi Web dengan Mudah Menggunakan ASP .NET yang dibawakan oleh M. Reza Faisal (Microsoft MVP ASP .NET)

     

     

     

  2. Berkembang bersama Komunitas yang dibawakan oleh Dani R. Taufani (MSP Lead Jabar dari UNIKOM)

     

     

     

  3. Membuat Aplikasi di Windows 8 menggunakan HTML5 dan JavaScript yang dibawakan oleh saya sendiri, Rendy. (MSP UPI)

     

     

     

  4. Mengembangkan aplikasi di Windows Phone 7 yang dibawakan oleh Muhammad Yusuf (MSP UPI)

     

     

Terakhir adalah sesi kuis dan pembagian hadiah.



Dalam perjalanan pulang pun, kami masih diberi sedikit cobaan dengan kondisi mobil yang mogok beberapa kali ditambah kondisi hujan deras L. Tiba di Bandung kembali sekitar pukul 21.00. Sungguh banyak sekali pengalaman dalam perjalanan kali ini. Semoga dapat diambil hikmah dan manfaatnya.

Semangat! J

Iklan

Windows Phone 7 Developer Workshop – Ilmu Komputer UPI


Alhamdulillah setelah sekian lama tidak mengadakan sharing knowledge di kampus, Minggu kemarin (23 Oktober 2011), Saya dan Muhammad Yusuf berkesempatan untuk memberikan training seputar Windows Phone 7 di jurusan kami, ya Ilmu Komputer. Bertempat di Gedung Ilmu Komputer (FPMIPA-C) dengan jumlah peserta > 20 orang.

Apa tujuannya? Sebagai insan akademik, tentunya saya dan Yusuf sangat senang jika ilmu yang kami dapat tidak hanya dikonsumsi sendiri. Kami ingin ilmu tersebut dapat bermanfaat pula untuk orang lain. Disamping itu, platform Windows Phone 7 bisa dibilang saat ini masih jarang orang yang tertarik untuk mengembangkan aplikasi di mobile OS terbaru besutan Microsoft itu. Tapi, disini kami datang dengan memberikan berbagai opportunity bagi teman-teman Ilmu Komputer UPI mengingat bahwa kita sebagai developer lokal sudah memiliki kesempatan untuk submit aplikasi ke marketplace. Alhamdulillah yah :D.

Ini akan jadi peluang yang besar bagi developer lokal untuk memberikan kontribusi di sana. Oleh karena itu, sebagai batu loncatan pertama kita adakan Workshop ini untuk yang pertama kalinya. Disamping itu, seperti yang kita ketahui bahwa beberapa bulan lalu (Februari 2011) Nokia dan Microsoft mengadakan kerja sama dimana Nokia yang merupakan vendor mobile device yang memiliki target pasar yang besar akan mengadopsi Sistem Operasi Windows Phone 7 bahkan beberapa hari yang lalu telah rilis Nokia Windows Phone 7. Great! 😀

Berikut beberapa dokumentasi hasil Workshop yang telah diadakan.

 

Algoritma Pembentukan Garis dalam Grafika Komputer


Sebelum membahas mengenai Algoritma Pembentukan Garis, alangkah baiknya kita bahas dulu apa itu Garis? Garis adalah penghubung antara dua buah titik (titik awal dan titik akhir).

Seperti yang kita tahu, bahwa persamaan garis lurus dinyatakan dalam rumus: y=mx+c. Dimana m adalah gradien yang didapatkan dari hasil pembagian deltaY dengan deltaX dan c adalah sebuah konstanta. Berangkat dari sini kita coba mulai untuk membahas algortima apa saja yang digunakan dalam pembuatan garis lurus.

Algoritma Naive

  1. Tentukan titik-titik penghubung koordinat awal dan akhir.
  2. Dimulai dari titik (XAwal, Yawal), untuk menentukan titik selanjutnya, increment-kan Xi sebanyak 1 satuan. Lalu Yi dihitung dengan menggunakan rumus Yi = (m*Xi)+c.

Jika diimplementasikan dalam bahasa Java kurang lebih seperti ini:

float X1 = 0; float X2 = 3;
float Y1 = 0; float Y2 = 10;
float Dx = X2 - X1;
float Dy = Y2 - Y1;

float m = (Y2-Y1)/(X2-X1);
float c = Y1-(m*X1);
float Xi;
float Yi;

if (Math.abs(Dx) < Math.abs(Dy)) {
    Yi = Y1;
    while(Yi <=Y2){
        Xi=(Yi-c)/m;
        g.drawRect(Math.round(Xi),Math.round(Yi), 5,5);
        Yi++;
    }
} else {
    Xi = X1;
    while(Xi <= X2){
        Yi=(m*Xi)+c;
        g.drawRect(Math.round(Xi),Math.round(Yi),5,5);
        Xi++;
    }
}

Penjelasan kode:

Pertama, kita inisialisasi kan terlebih dahulu titik awal dan titik akhir. Dalam hal ini (X1,Y1) sebagai titik awal dan (X2,Y2) sebagai titik akhir. Lalu, dihitung gradien garis dan juga konstanta dari persamaan y = mx + c. Sebenarnya inti dari algoritma naive terletak dalam perulangan dimana Xi < = X2. Adapun Dx dan Dy dibuat hanya untuk mengetahui kemana titik yang membentuk garis akan bergerak. Gak ngerti kan? :P. Cobain aja deh sendiri, nanti juga ngerti ko. 🙂

Algortima Digital Differential Analyzer

  1. Tentukan dua buah titik.
  2. Titik awal (Xawal, Yawal) dan titik akhir (XAkhir, Yakhir).
  3. Hitung Dx dan Dy menggunakan rumus:

    Dx = XAkhir – Xawal,

    Dy = Yakhir – Yawal

  4. Bandingkan nilai mutlak Dx dan Dy. Jika Dx > Dy, maka steps = nilai absolut Dx. Jika Dx < Dy, maka steps = nilai absolut Dy.
  5. Hitung penambahan increment untuk X dengan xInc = Dx/steps dan yInc = Dy/steps.
  6. Kemudian increment-kan nilai Xi dengan nilai xInc, juga Yi dengan yInc.
  7. Bulatkan nilai koordinat untuk menentukan posisi pixel.
  8. Ulangi langkah 6 dan 7 sampai Xi = Xakhir dan Yi = Yakhir.

Jika diimplementasikan dalam bahasa Java kurang lebih seperti ini:

int X1 = 0;
int X2 = 100;
int Y1 = 0;
int Y2 = 30;
int Dx = X2-X1;
int Dy = Y2-Y1;
int steps;
float xInc, yInc;
float x = X1;
float y = Y1;
if (Math.abs(Dx) > Math.abs(Dy)) {
    steps = (int) Math.abs(Dx);
} else {
    steps = (int) Math.abs(Dy);
}

xInc = Dx / (float) steps;
yInc = Dy / (float) steps;

for (int k = 0; k < steps; k++) {
    x += xInc;
    y += yInc;
    g.drawRect((int) Math.round(x), (int) Math.round(y),5,5);
}

Penjelasan kode:

Dalam DDA, yang kita lakukan adalah mencari nilai absolut dari deltaX dan deltaY dan kemudian dibandingkan untuk menentukan steps. Steps ini nantinya digunakan sebagai nilai pembatas perulangan. Sehingga dalam satu perulangan x dan y di increment-kan bersama. 🙂

 

Algoritma Midpoint

Untuk algoritma ini masih dalam tahap analisis. Jika saya sudah paham benar baru saya akan cantumkan. Hehe :).

 

Apabila masih ada algoritma yang kurang efektif, saran dan masukan sangat saya harapkan.

Semoga Bermanfaat. :)

%d blogger menyukai ini: