Showing posts with label kuliah. Show all posts
Showing posts with label kuliah. Show all posts

Tuesday, July 10, 2012

Graphics Processing Unit (GPU)

Perkembangan komputer yang sangat pesat ikut mempengaruhi berkembangnya era komputer grafis untuk digitalisasi suatu gambar. Komputer grafis dikaitkan setidaknya dikaitkan dengan tiga hal:

  1. representasi dan manipulasi data gambar oleh komputer,
  2. seluruh teknologi yang digunakan untuk menghasilkan dan memanipulasi gambar, dan
  3. salah satu cabang dari komputer sains yang mempelajari sintesis dan manipulasi data digital.

Dalam suatu unit komputer terdapat suatu modul khusus yang berkaitan dengan pengolahan komputer grafis. GPU adalah unit pemrosesan khusus yang dirancang untuk dapat menangani dan memanipulasi memory dengan cepat sehingga dapat menampilkan gambar dalam bentuk frame buffer sehingga dapat ditampilkan ke layar. Tidak hanya di komputer, GPU juga banyak digunakan pada sistem embedded, telepon seluler, dan game konsol. Saat ini GPU telah semakin efektif dalam memanipulasi komputer grafis dan telah dilengkapi kemampuan struktur paralel sehingga dapat lebih efektif dibandingkan dengan algoritma general purpose CPU. Pada suatu komputer biasanya GPU berada pada video card, atau ditanam pada motherboard atau

Dalam tingkat aplikasi terdapat persaingan API (Application Programming Interface) yang cukup ketat antara OpenGL dan Direct3D untuk mengoptimalisasi fungsi render dari komputer grafis yang telah tersedia pada GPU.

Berikut ini gambaran ringkas perbedaan keduanya.

 

Direct3D

OpenGL

Platform

Microsoft Windows

Cross-platform

Mobile Platforms

Direct3D Mobile

OpenGL for Embedded Systems (OpenGL ES)

License

Proprietary

Open source or trademark

Kelebihan utama dari openGL adalah pustaka yang disediakannya terbuka sehingga siapapun dapat mengembangkannya berbasis komunitas. OpenGL menjadi suatu standar spesifikasi lintas platform. Interface yang digunakan terdapat lebih dari 250 fungsi sehingga dapat digunakan untuk menggambar suatu gambar 3D yang kompleks dari instruksi sederhana. OpenGL dikembangkan oleh Silicon GraphicsInc, pada tahun 1992 dan saat ini banyak digunakan pada aplikasi CAD, virtual reality, visualisasi sains, visualisasi informasi, flight simulation, dan video games. OpenGL saat ini dikembangkan oleh konsorsium non-profit teknologi, Khronos Group.

Perkembagan komputer yang akan terus berkembang tentu akan mendorong perkembangan grafis. Tentu bidang ini memiliki prospek pengembangan yang sangat luas. Berbagai inovasi dan kreativitas masih diperlukan untuk mengembangkan kemampuan render gambar melebihi 3D. Teknologi terbuka yang dianut oleh OpenGL saat ini ikut memasyaratkan teknologi GPU di masyarakat.

31 Mei 2012 – GPU

*lupa copas dari mana aja.

Sunday, July 8, 2012

Corat-Coret

dream_re
Dok. Pribadi UAS DK-3238-08















Sebagian mimpi kecilku untuk sepuluh tahun yang akan datang.
Mari bermimpi…
Karena mimpi itu adalah harapan…
dan harapan itu selalu ada..
…toh, semuanya dulupun hanyalah mimpi di atas kertas…

Wednesday, June 27, 2012

(lagi) Revisi

Dua hari yang lalu kami bimbingan TA (lagi) bersama pak Budi sebagai pembimbing III. Fokus utama revisi draf tugas akhir yang telah kami berikan sebelumnya.  Pekerjaan saya sendiri pada tugas akhir ini belum selesai sehingga cukup membuat nyali turun ketika menemui beliau. Kekhawatiran akan merombak total terutama dari sisi konten cukup menjadi pengganjal.

Tak disangka kami mendapat tanggapan yang sangat baik dari beliau. Beliau lebih menyoroti dari segi formatting yang memang kurang rapi. Selain itu abstrak  dalam bahasa Inggris juga diminta untuk diperbaiki—ketauan banget kalau cuma pake google translate, hehe—. Dari sisi konten beliau tak terlalu ambil pusing, memang ada sedikit bagian analisis kemaman yang beliau minta tambah, karena dirasa sangat minim. Namun, secara keseluruhan beliau menilai hasil kami cukup positif.

Beliau memberikan perumpamaan yang cukup bagus tentang proses pelaksanaan tugas akhir ini, kira-kira seperti ini.

Ibarat seseorang yang akan menuju suatu tempat dihadapannya terdapat empat jalan yang dapat digunakan. Ia lalu memilih satu jalan yang akan di tempuh sementara jalan yang lain tidak akan dipedulikan. Lalu ditengah jalan ternyata ada jurang sehingga perjalanan harus dihentikan dan perjalanan tidak dapat dilanjutkan.

Tugas akhir ini dibatasi oleh waktu. Jadi kita tidak perlu untuk mencoba seluruh kemungkinan solusi yang ada. Di tengah jalan terjadi kegagalan dan sulit untuk berbalik arah sementara waktu telah habis, maka ketika dosen pembimbing telah menyatakan selesai ya selesai. Setidaknya telah ditemukan masalahnya pada jalan tersebut sehingga dapat menjadi pijakan untuk pengembangan selanjutnya. Jika tidak tentu akan dibutuhkan waktu yang sangat banyak.

Setidaknya pernyataan tersebut cukup membuat lega. Namun, semoga pekerjaan ini benar-benar dapat  direalisasikan dan dipublikasikan di jurnal ilmiah internasional.  Amiin.

Beberapa catatan perlu menjadi perhatian untuk revisi selanjutnya.

  • Abstrak, buat lebih singkat, pas 1 halaman, buang kata2 umum yang tidak perlu karena ini bukan pendahuluan. Proses penerjemahan ke dalam bahasa Inggris perlu memperoleh perhatian lebih.
  • Penulisan daftar pustaka. Penulisan kutipan terhadap ide yang kita ambil dari orang lain lalu menuliskannya pada daftar pustaka, merupakan salah satu bentuk amanah ilmiah. Tahap selanjutnya adalah  kita perlu memperhatikan kredibiltas sumber kutipan yang kita rujuk,
  • Gunakan page break untuk bagian subjudul yang menggantung di akhir baris. Dengan kata lain tambahan jarak 1-2 spasi tidak menjadi masalah agar tulisan jadi lebih enak untuk dilihat
  • Penulisan sumber rujukan untuk sebagai sumber gambar. Penulisan perlu dibuat konsisten, apakah cukup dengan memberikan kutipan yang dirujuk di daftar pustaka, atau langsung mencantummkan sumber gambar setelah caption gambar. Penulisan dengan kutipan dapat membuat daftar gambar hasil generate menjadi kurang bagus karena akan ikut muncul di caption gambar. Cara yang lebih dianjurkan adalah dengan menyebutkan sumber gambar langsung di dalam gambar sehingga menjadi bagian dari gambar dan tidak perlu dituliskan lagi.
  • Penulisan variabel perlu dibuat sedikit berbeda misalnya dengan menggunakan format italic.
  • Penulisan pseudo code atau source code perlu dibedakan. Diantaranya dengan menggunakan jarak spasi yang lebih rapat dan font yang berbeda.

Begitulah lebih kurang beberapa hal yang perlu diperhatikan dalam revisi kali ini. Selamat revisi, semoga apa yang telah kita kerjakan bermanfaat.

Friday, May 11, 2012

Teori Kebutuhan Individu



Maslow’s Hierarchy of Needs[1]
Abraham H. Maslow meyakini bahwa sebuah hierarki kebutuhan dasar manusia yang perlu dipenuhi secara berurutan. Teori ini biasanya digambarkan dengan sebuah piramida. Kebutuhan di piramida paling dasar harus dapat dipenuhi terlebih dahulu untuk dapat memiliki keinginan memenuhi kebutuhan di tingkatan atasnya. Maslow berpendapat bahwa kebutuhan pertama akan mendominasi perilaku seseorang hingga kebutuhan itu dapat terpenuhi kemudian kebutuhan kedua, ketiga, dan seterusnya.


Gambar 1. Hierarcy Maslow

Pemenuhan kebutuhan disini tidak berarti seseorang harus mencapai kebutuhan fisiologis 100%baru bisa memenuhi kebutuhan akan rasa aman. Akan tetapi setiap orang dapat memiliki derajat kepuasan yang berbeda beda. Sebagai ilustrasi, secara kasar, mungkin rata-rata suatu penduduk telah dapat memenuhi physiological needs 85%, 70% safety needs, 50% belonging and love needs , 40% self-esteem needs, dan 10% self-actualization needs. [2]

Clayton Alderter – ERG Theory[1]
Seorang psikologin, Clayton Arder mencoba untuk menyederhakan teori kebutuhan Maslow dengan teori ERG-nya. Kedua teori ini mengamati suatu kebutuhan sebagai kekuatan motivasi dibalik tingkah laku seseorang. Seseorang termotivasi untuk melakukan sesuatu dengan kebutuhan yang berbeda-beda, Alder mengidentifikasinya menjadi tiga bagian:
a. Existence Needs, yang membantu kita agar secara fisik baik
b. Relatedness Needs, kebutuhan relasi sosial
c. Growth Needs, kebutuhan personal untuk berkembang

Perbedaan mendasar dari teori ini disbanding Maslow adalah bahwa Alderfer menyatakan bahwa seseorang dapat berpindah di antara hierarcy sesuai dengan kebutuhannya. Seseorang mungkin dapat memenuhi kebutuhan akan relatedness atau social needs meskipun ia dalam keadaan lapar atau lelah. Seseorang mungkin juga dapat menikmati belajar mandiri secara otodidak meskipun ia merasa kesepian.

Alderfer juga memberikan pendapat bahwa seseorang dapat kembali ke kebutuhan yang lebih rendah. Jika seseorang merasa gagal untuk mencapai kebutuhan yang lebih tinggi terkadang dia kembali untuk mencari kebutuhan di level yang lebih rendah sekalipun sebelumnya kebutuhan ini telah terpenuhi. Seseorang dapat makan dan minum sekenyang-kenyangnya atau bekerja keras mencari uang sebagai kompensasi ketika ia tidak mampu memenuhi kebutuhan yang lebih tinggi.

Teori Kebutuhan terhadap Tingkah Laku Manusia
Dalam suatu lingkungan belajar seperti di sekolah atau universitas, pengakuan terhadap prestasi pelajar dan feedback positif membantu terpenuhinya kebutuhan Maslow akan recognition dan self-actualization dan kebutuhan Alderfer akan personal growth. Proses belajar itu sendiri bagi seseorang dapat digunakan sebagai suatu proses pemenuhan akan kebutuhan Maslow self-actualization dan Alderfer personal growth. Sementara interaksi social yang terjadi selama proses belajar antara guru dan mahasiswa maupun antar mahasiswa itu sendiri dapat memenuhi kebutuhan Maslow social needs dan Alderfer relationship needs. Sementara untuk mengoptimalisasi proses belajar mengajar sehingga kebutuhan di atas dapat terpenuhi dengan baik, maka diperlukan suatu kondisi lingkungan belajar sehingga kebutuhan fisik dan psikologis mahasiswa dapat terpenuhi.

Apakah ketika kebutuhan paling puncak telah terpenuhi maka seseorang dapat dikatakan bahagia? Dalam praktiknya di lapangan kita sering menemukan berbagai kasus yang belum dapat dijelaskan oleh teori kebutuhan ini. Fenomena yang beberapa tahun silam marak di negeri Korea yaitu artis yang bunuh diri, mungkin kasus ini tidak hanya terjadi di Korea tetapi di belahan bumi lainnya. Padahal kalau kita amati seorang artis telah sampai pada tahap aktualisasi diri mereka dengan menyalurkan hobi mereka dengan bernyanyi atau bermain film. Mereka juga memiliki rumah yang mewah, wajah yang indah (bahkan terkadang harus sampai dilakukan operasi plastik) artinya kebutuhan akan rasa percaya diri telah terpenuhi, penggemar yang banyak dan terus memberikan pujian di seluruh dunia, uang yang banyak, rasa aman. Namun, ternyata itu semua tidak cukup untuk membuat mereka bahagia.

Bandingkan dengan kondisi di Indonesia. Indonesia telah dikenal sebagai salah satu negara yang memiliki devisa yang rendah dan banyak terdapat pemukimam kumuh, tindak kriminalitas yang tinggi, kemacetan, banjir, dan berbagai fenomena yang ada. Secara nyata pada suatu pemukiman kumuh mereka masih jauh dari cukup untuk memenuhi kebutuhan fisiologisnya: rumah yang tidak layak huni, kelaparan, upah jauh di bawah UMR, ketakutan akan digusur setiap saat. Namun, kita melihat di sela-sela pemukimam kumuh itu masih bisa kita lihat anak-anak yang tertawa dengan riang meskipun terkadang mereka harus bekerja keras. Hiburan rakyat seperti orkes dangdut, layar tancap, menjadi pengajar ngaji anak-anak atau perlombaan 17 Agustus seakan menjadi suatu hiburan tersendiri sehingga mereka dapat merasa bahagia. Bahkan dalam suatu survey menyebutkan bahwa warga Indonesia memiliki tingkat kebahagian tertinggi di dunia [3].

Teori Kebutuhan dan Dunia Kerja
Bekerja pada dasarnya merupakan cara yang ditempuh untuk memenuhi kebutuhan dasar manusia terkait kebutuhan fisiologis Maslow sehingga kebutuhan keluarganya dapat terpenuhi. Degan bekerja seseorang akan medapatkan uang yang digunakan untuk melengkapi kebutuhan hidup sehari-harinya. Ketika uang yang diterimanya lancar maka orang tersebut baru dapat berupaya untuk memenuhi kebutuhan lainnya. Kebutuhan rasa aman akan terpenuhi dengan bekerja secara halal dan tidak melanggar peraturan yang ada. Jika tidak perasaan bersalah akan terus menghantuinya setiap saat. Ketika seseorang telah merasa nyaman karena kebutuhan gaji bulanannya terpenuhi dan lingkungan tempat kerjanya yang baik, maka ia mencintai pekerjaannya itu. Sampai tahap ini menjadi langkah awal bagi seseorang untuk mulai loyal terhadap bidang pekerjaan dan perusahaan tempat ia bekera. Maka tahapan selanjutnya mulai timbul rasa bangga akan pekerjaan yang dijalaninya sehingga ia tidak akan malu ketika orang lain bertanya tentang dimana ia tinggal. Tahapan yang paling tinggi adalah ketika ia mampu memberikan terobosan baru terhadap pekerjaan yang ia tekuni sehingga kebutuhan akan aktualisasi diri akan terpenuhi sehingga kemampuannya akan diakui oleh orang disekitarnya. Ketika tahapan ini berjalan dengan baik maka karier yang ia miliki pada pekerjaannya akan berjalan dengan baik dan jabatan akan dengan mudah ia raih.

Namun berdasarkan penjelasan sebelumnya dapat diketahui bahwa ini sifatnya adalah tidak mutlak. Tidak semua direktur nyaman dengan kehidupannya dan sebaliknya tidak semua cleaning service merasa menderita dengan kehidupannya. Ada faktor penting lainnya yang ternyata memberikan peran yang cukup signifikan sebagai kebutuhan dasar bagi seseorang: Kebutuhan Spiritual [4]. Kebutuhan ini dapat menjadi dasar bagi kebutuhan yang lainnya. Ketika kebutuhan ini terpenuhi maka dapat menambal kebutuhan dasar lainnya. Kebahagian menjadi suatu keniscayaan untuk dicapai. Seseorang mampu bertahan dalam situasi sesulit apapun dan bersyukur ketika memiliki kesempatan untuk mengaktualisasikan diri. Dan hal ini menjadi salah satu kunci penting untuk dapat berhasil di dunia kerja nantinya, apapun jabatan yang dimiliki.

-Selesai-

Referensi


[1] J. K. Williams, "Maslow’s Hierarchy of Needs and Alderfer’s ERG Theory," 2003.
[2] H. A. Maslow, "A Theory of Human Motivation," Psychological Review, no. 50, pp. 370-396, 1943.
[3] A. Putri, "Survey: Warga Indonesia Paling Bahagia di Dunia," 13 February 2012. [Online]. Available: http://www.tempo.co/read/news/2012/02/13/121383624/Survei-Warga-Indonesia-Paling-Bahagia-di-Dunia. [Accessed 11 May 2012].
[4] G. Prayoga, "Menggugat Teori Kebutuhan Maslow," [Online]. Available: http://ekonomi.kompasiana.com/manajemen/2012/04/06/menggugat-teori-kebutuhan-maslow/. [Accessed 11 May 2012].
[5] D. T. Kenrick, V. Griskevicius, S. L. Neuberg and M. Schaller, "Renovating the Pyramid of Needs : Contemporary Extensions Built Upon Ancient Foundations," Perspectives on Psychological Science, no. 5, p. 292, 2010.  

Monday, March 19, 2012

First Introduction to OpenGL

OpenGL logo
picture taken from: Wikipedia: OpenGL_logo.jpg
OpenGL is one of the most powerful graphic library. OpenGL has a great rivalry with DirectX (also know as Direct3D) from Windows in Application Programming Interfaces (APIs). Both of them can be used in application to render 2D and 3D computer graphics and giving acceleration from hardware graphics card when available.
Here is some of differentiation between OpenGL and Direct3D
Direct3D OpenGL
Platform Microsoft Windows Cross-Platform
Mobile Platform Direct3D Mobile OpenGL ES
License Proprietary Open Source or Trademark
OpenGL is an Open Source and Cross-Platform so you can develop an application without border of Operating System. In this section we are using Visual C++ 2010 as IDE in programming OpenGL. It is said that it is more easier using Windows Toolkit to programming OpenGL in C++. So lets continue..
1. Download GLUT you can take it here.
2. Copy the glut32.dll in C:\Windows\System32 or you can make a custom folder include the path.
3. Header glut,h can be placed in Visual Studio standard include folder. In Visual C++ 2010 you can get in:
C:\Program Files\Microsoft SDKs\Windows\v7.0A\include\gl
you’ll be also found gl.h in this folder, then you can just include it in your code
#include <gl/glut.h>
4. Copy file “glut32.lib” to the standard Visual Studio library, you can get it in
C:\Program Files\Microsoft SDKs\Windows\v7.0A\lib
5. Add additional dependencies in the project
Project Properties>>Linker>>Input>>Additional Dependencies

glut32.lib

glu32.lib

opengl32.lib

6. Lets try to make a simple program
Lets make a new console application project
#include <stdio.h>
#include <stdlib.h>
#include <gl/glut.h>
//make sure you take standard library first before glut,h
void mydisplay(){
       glClear(GL_COLOR_BUFFER_BIT); // clear the console
       glBegin(GL_POLYGON); //we will create a square
               glVertex2f(-0.5, -0.5);
               glVertex2f(-0.5, 0.5);
               glVertex2f(0.5, 0.5);
               glVertex2f(0.5, -0.5); //can you find the coordinat (0.0)
        glEnd();
        glFlush();
}
int main(int argc, char** argv)
        {
                printf("Hello World.. this is my first OpenGL program\n");
                printf("I can draw 2D Rectangle");
                glutCreateWindow("my_simple_program");
                glutDisplayFunc(mydisplay);
                glutMainLoop();
        }
Okay you’ll be see a white square with black background color.
image
Now you can explore more the powerful OpenGL APIs. I think one of the best tutorial OpenGL to know more the feature of OpenGL, lighthouse3d: http://www.lighthouse3d.com/tutorials/glut-tutorial/
Happy coding???