Kesebelan gua yang gua sendiri gak bisa jelasin kenapa

Gua tipe orang yang gak suka ngeluh. Dan gua benci sama orang yang suka ngeluh, protes dan protes, tanpa mencoba memahami bagaimana kondisi dan keadaan saat dia sedang ngeluh tadi. OK, gua gak terlalu benci sih, tapi tetep gua benci orang kek gituan. Dan sayangnya, saat ini gua ngerasa gua menjadi orang yang suka ngeluh.

Pernah ngerasa nggak dunia di sekeliling kalian tiba-tiba terasa memuakkan tanpa sebab yang jelas? Tau-tau aja gitu. Yang loe liat selalu hal-hal konyol yang sebetulnya gak perlu ada. Bisa dibilang gua rasa banyak sekali orang di sekeliling gua itu wasting time. Gak semua sih, soalnya tetep temen-temen gua masih banyak sekali yang gua respek sama mereka karena mereka melakukan banyak hal terhormat.

Sebut saja aku tiba-tiba berada di kondisi yang aku diwajibkan melakukan rutinitas yang… alamakjang… apakah gua harus ngelakuin hal itu? Tugas-tugas gak jelas, teori-teori kuliah abstrak, dosen yang gak banget ngajarnya, UTS yang gak banget juga, kerjaan temen-temen yang menurut gua gak banget juga… Hmmm… Kok gua jadi ngelantur yah? Gua memandang, kenapa gua harus belajar sesuatu yang gak jelas jluntrungnya dan dosennya pun gak njelasin aplikasinya secara jelas. Gak semua mata pelajaran sih, tapi gua memang lagi sebel sama beberapa hal. Apa gua harus belajar sampai sebegitunya hanya untuk dapet nilai bagus? Dan ketika gua liat beberapa temen gua, kok mereka sebegitu serius banget ya belajarnya? Apa kuliah hanya untuk cari nilai? Gua mikir, santai aja lagi, itu cuman teori biasa doang, gak aplikatif, jadi ya biasa aja, jangan berlebihan. Dan gak ada yang protes lagi, misal, kenapa kita harus belajar ini? Toh di dunia nyata loe gak bakal ditanya bisa itu apa gak. Yang bakal ditanyain ketika loe akan kerja ya apa yang bisa loe buat. Iya gak sih?

Intinya, gua ngerasa nggak nyaman aja ngeliat temen-temen gua yang study oriented berlebihan. Dunia masih banyak hal-hal indah yang bisa kita manfaatkan. Tapi pas gua buka fs, gua ngeliat banyak sekali temen-temen gua ngeluarin shout-out yang, sorry, sucks… Berlebihan dengan hal-hal indah yang ada di dunia ini. Gua mikir, apa kerjaan mereka sehari-hari cuman gitu aja? Gua gak mau cerita shout-out apa aja mereka. Yang jelas nggilani… Apa gak ada kerjaan yang lebih bermanfaat selain *****-*****an gak jelas? Hadoooh, kita masih muda, do something worthed! Selain itu gua juga gak nyaman juga sama temen-temen gua yang sok-sok gimana gitu. Dan another weirdos… ==’ Dan secara gak sadar juga gua mengumpat dengan ringannya, ‘tai’.

Ya, gua jadi dengan mudahnya berkata hal-hal sejenis ini. Dalam hati mungkin bisa direpresentasikan dalam suasana hati yang lain. Gua pengin langsung nyolot ke orang yang gak gua suka ngomong terus terang ke depan mereka, like ‘loe tahu gak loe itu *** banget’, ato ‘loe bisa diem ngomong gak?’, ato ‘loe kok seenak jidat ke gua?’, ato ‘dasar gak tahu terima kasih’, ato ‘tau diri dong’, ato ‘dasar sombong’, ato ‘loe pikir siapa sih loe?’, dll, dst, dsb.

Tapi gua berpikir klo gua ngomong terus terang gitu itu sama aja gua gak menghargai orang yang gua ajak omong itu. Dan gua ngerti gimana rasanya disebut gitu di tengah umum. Jadi gua pikir lebih baik gua jaga mulut gua. Tapi tetep aja, gua bingung, kok akhir-akhir gua jadi gini? Kenapa gua jadi pengen banget ngomong terus terang kek gitu? Salah makan apa gua? Hahaha… Gak jelas… ==’

Terserah lah mereka mau gimana. Yang jelas aku pernah denger, klo loe gak kerja keras sekarang loe bakal kerja lebih keras di lain waktu. Gua bertanya-tanya, kok gitu? Ya iya lah, secara kita sekolah masih dibiayai orang tua kita, atau pihak lain yang mau membiayai kita. Bandingkan seandainya kamu ada di afghanistan, palestina, atau negara-negara miskin di afrika sana. Untuk mikir hidup aja susah, apalagi mikirin hal lainnya… Bersyukurlah kita hidup di zaman dan tempat yang semuanya sangat memudahkan kita hidup. Kita hidup ditemani berbagai hiburan komputer, internet, tivi, musik, dan semacamnya. Kita hidup dalam keadaan tenang tanpa perang. Di saat Tuhan memberikan kita anugerah kenyamanan hidup seperti ini, sudah sepantasnya kita bersyukur dengan mengoptimalkan kesempatan ini sebesar-besarnya… Iya gak sih? Hidup bukan hanya untuk bersenang-senang menikmati masa muda. Masih ada masa pertengahan dan masa tua, itu pun klo kita masih sempat hidup… Dan masih ada juga hidup sesudah kita mati… Entahlah… Dan sesudah kita lulus ntar, kita bakal bener-bener ngerasain hidup sendiri. Jauh dari orang tua, kerja sendiri, cari makan sendiri, kawin, punya anak, ngebiayain orang-orang yang jadi tanggungan loe, membahagiakan ortu loe… Semoga Tuhan selalu ada di samping gua dalam menghadapi hidup ini.

OK, gua coba terus terang satu hal yang gua gak suka. Ngomong di kelas pas dosen nerangin. Nggak tahu kenapa, gua ngerasa mereka itu sombong banget. Apa mereka pikir mereka itu pintar terus dengan ringannya ngajarin temen yang tanya ke dia dan dia ngajarin dia yang gak dia tahu tentang yang dosennya ajarin dengan suara keras? ==’ Please deh! Hargailah orang yang berbicara di depan kelas. Walaupun itu sesuatu yang sudah kalian tahu, tapi cobalah ngerti orang yang ngomong di depan itu sudah memberikan atensinya semuanya buat kita. Hargai dikit napa? Klo gak tahu tanya langsung napa? Emang sih gua pernah gini juga, tapi setidaknya sekarang gua berusaha ngurangi lah. Yang lebih parah lagi, ada yang nggosip di kelas… Dasar, klo kalean gak tertarik sama pelajarannya ya diem aja, tidur kek ato keluar kelas abis absen kek ato apa kek, asal jangan berisik. Parah banget sih. Pengin gua ngomong dasar ay*m mulut ***er. Gua pernah dibilangin juga, klo loe gak ngehargai orang ngomong sekarang, kelak loe bakal gak dihargai ngomong sama orang laen. Hhhh… Banyak sekali kejadian kek ginian gua temui di indon. Apa kebanyakan orang indon kek gitu ya? Gak ngehargai orang yang lagi ngomong.

Tuhan, apa gua salah? Tapi gua ngerasa salah. Underestimate. Astaghfirullah…

Berikut hal-hal yang gua gak suka juga. Orang yang berjalan secara seri berjejer ber3 ato ber4 ato terserahlah, dan mereka jalannya ngabisin jalan, udah gitu jalannya lambat pulak. Hhh… Ini bukan jalan nenek kamu sayang… Terus, mereka yang kerjanya lelet. Adoooh, nunggu apa lagi sih? Kerja yang bener dong kok kek ulet kepanasan gitu? Dan masih banyak lagi… Hhh… ==’

Udah ah… Gua jadi orang yang kerjanya ngeluh beneran… Seakan gua berkata, apa gua harus benci diri gua sendiri? OK, di postingan gua sebelumnya gua cerita gua orang yang malas senyum. Tapi Tuhan menyadarkanku, gua harus perbaiki diri gua sendiri dulu. Yaitu, berusahalah selalu tersenyum. Karena gak ada satu orang pun yang suka ngeliat wajah muram plus masam, kan. Hehehe… Mungkin dengan senyum loe bisa menyebarkan aura positif ke sekeliling loe, sehingga keadaan yang loe anggap muram serta merta kerasa jadi bahagia. Hidup memang harus selalu diisi dengan keoptimisan, kan.

Terus gua jadi sadar juga. Gua yang salah… Gua yang berpikiran negatif dulu ke mereka. Gua harusnya punya pikiran positif terus-terusan. Ambil hikmah setiap kejadian. Karena Tuhan gak melakukan segala sesuatu dengan sia-sia. Jadi, gua gak boleh underestimate lagi. Mungkin klo ada kelakuan yang gua anggap gak sopan atau konyol, gua bakal coba buka mulut, secara pelan-pelan, klo itu keknya aneh ato apalah… Yang penting nggak menusuk. Soalnya kemaren-kemaren gua dengan mudahnya ngehina orang yang gua anggap konyol dengan sebutan ‘sucks…’ lah ato ‘***cking mouth’ lah… Sorry, I really mean it.

Kesimpulannya, gua harus berubah. Daripada mikirin orang lain yang kadang bikin bete, lebih baik kita menyibukkan diri dengan membenahi diri sendiri. Hope this will be worthed. Iya gak?

JPEG: The Most Popular Image Compression (You will not regret you had already studied Sinsis)

Hmmm… Sebetulnya gua sadar selama ini gua memakai blog untuk menulis hal-hal yang rada gak berguna. Makanya sekali-kali gua mau coba pake blog untuk menulis sesuatu yang semoga saja berguna buat yang laen. OK, ayo kita start. 😛

JPEG, seringkali kita berurusan dengan format gambar satu ini. Bahkan ketika kamu membuka halaman blog ini pun, sebenarnya kamu sedang menikmati salah satu teknologi optimalisasi yang pernah ada, JPEG. Singkatan dari Joint Photographic Experts Group. Format gambar ini dipakai mulai dari aplikasi kamera digital sampai optimalisasi gambar-gambar yang dikirimkan di internet. Pertanyaan yang pertama muncul biasanya adalah, kenapa JPEG menjadi sangat populer? Jawaban sederhananya adalah karena dengan format JPEG kamu akan mendapatkan file gambar dengan ukuran yang jauh lebih kecil dibandingkan dengan format BITMAP kek BMP.

Sebelum melihat bagaimana JPEG bekerja ada baiknya kita pahami dulu bagaimana BITMAP bekerja. Amati gambar di atas. Gambar di atas memiliki resolusi 370 x 205 pixel. Sehingga untuk menampung gambar tersebut dibutuhkan 75.850 pixel. Lalu bayangkan juga setiap pixel gambar merupakan percampuran dari 3 warna dasar yang sudah kita ketahui sejak kecil, Merah+Ijo+Biru a.k.a. RGB (RedGreenBlue). Loh kenapa harus Merah+Ijo+Biru? Bukannya warna dasar itu Merah+Kuning+Biru? Hmmm… Ternyata komputer memiliki cara berpikir yang laen. Dan klo mau ada yang kuning-kuningnya emang ada sistem warna tersendiri, CMYK, di mana Y-nya berasal dari kata Yellow. Tapi di sini anggap saja kita punya percampuran dari RGB. Terus sekarang karena setiap pixel direpresentasikan sebagai percampuran RGB, berarti kita butuh nilai-nilai yang bisa menampung ketiga jenis warna ini. Anggap saja kita pakai 1 byte untuk menampung 1 jenis warna. Bagi yang gak tahu definisi tentang byte dan penggunaannya bisa refer ke postingan sebelumnya tentang File Format ato baca di wiki. Hehehe… 😛 Berarti untuk satu jenis warna, kita punya variasi sebanyak 2^8 = 256 buah. Klo diterjemahkan ke bahasa komputer nilainya mulai dari 0 sampai 255. Nah, dengan kata laen kita butuh 3 byte untuk menampung definisi satu pixel yang berisi 3 percampuran warna RGB yang memiliki 256^3 = 16.777.216 variasi warna. Sehingga untuk format BITMAP, total untuk menampung gambar di atas tadi, kita butuh 75.850 pixel x 3 byte = 227.550 byte = 227,55 kbyte. Sungguh ukuran yang besar dan tidak efisien, terutama jika kita taruh di internet, dan yang ngakses berada di daerah dengan kecempatan akses internet yang oh Tuhan, aku tidak tega berkata, lemot. Tapi, tahukah kamu berapa ukuran file di atas sesungguhnya? Hanya sekitar 45 kbyte…

Terjadi penghematan 5 kali lipat dari format BITMAP yang semula. Bahkan, kita masih bisa juga menurunkan ukurannya lagi. Itulah JPEG. Sebuah teknologi optimalisasi yang sangat fenomenal. Karena sampai sekarang pun kita masih terus menggunakan teknologi satu ini. Apa kunci kompresi data gambar ini? Kuncinya adalah ketika kita bekerja dengan BITMAP, maka kita bekerja dengan pixel. Sedangkan jika kita bekerja dengan JPEG, kita akan bekerja dengan vektor. Bagi yang gak tahu vektor, bisa baca di tante wiki kita tercinta. 😀 Tapi ya tapi, entah mengapa ketika melihat algoritma JPEG aku sedikit ragu apa bener yang beginian ini vektor, karena kok sedikit lebih ke arah manipulasi matrix. Tapi ya emang iya sih, vektor bisa dituliskan dalam bentuk matrix. Whatever lah…

Selain itu, ada implikasi tersendiri dengan adanya kompensasi berkurangnya ukuran gambar ini. Karena JPEG menggunakan metoda lossy compression, maka ada beberapa komponen-komponen asli yang dihilangkan. Secara teknis kita bisa katakan kita menghilangkan elemen-elemen redundan (tidak perlu, red) penyusun gambar sehingga kita bisa tetap mendapatkan gambar yang sangat mirip dengan gambar originalnya. OK, kalau begitu langsung aja deh sekarang kita akan membahas bagaimana JPEG bekerja.

Pertama, JPEG akan membagi gambar menjadi blok-blok yang besar tiap bloknya 8 x 8 pixel. Contohnya adalah salah satu potongan gambar di atas. Klo dah gini kita dengan mudah bisa pastikan bahwa tidak ada variasi warna yang cukup berarti dalam ukuran seperti ini.

Kedua, format warna RGB pada file gambar pada umumnya memiliki korelasi yang sangat kuat antar komponennya. Maka dari itu dicarilah representasi warna yang korelasi antar komponennya kurang, dengan harapan kita akan mendapatkan sifat-sifat yang sama sekali berbeda antar komponennya, yang tentu saja, berimplikasi mungkin kita bisa mendapatkan sesuatu yang baru yang bisa kita manfaatkan untuk data kompresi ini.

Terus, ada satu lagi, bisa dibilang domain, yang beda dengan domain warna RGB yang kita ketahui, yaitu luminance (Y), kromines biru (Cb), dan kromines merah (Cr). Luminance itu membawa informasi tentang tingkat kecerahan. Sedangkan kromines itu membawa informasi tentang hue. Dan ternyata, dalam eksperiman psychovisual, manusia lebih sensitif terhadap luminance dibanding dengan kromines. Bingo! Sekarang kita benar-benar mendapatkan sifat yang benar-benar berbeda antar 2 komponen ini. Berarti kita bisa lebih sering-sering mengabaikan perbedaan-perbedaan yang ada di krominens. Dan yang lebih menyenangkannya lagi, kita punya 2 krominens.

Jadi, bagaimana sebetulnya merubah RGB ke YCbCr? Kita pake tool color space transform, bukan fourier transform lho. Berikut adalah caranya.

Berhubung determinannya nggak nol, berarti transformasi ini bisa dibalikkan.

Sampai di sini teman-teman kalian tidak akan pernah kecewa pernah belajar salah satu mata kuliah kita yang gak jelas bin abstrak bin aneh bin weirdo, yaitu Sinsis a.k.a. Sinyal dan Sistem. Karena bakal mengingatkan kita pada exp[-j2phi*ft]… Hwawawa… ==’ Seperti yang kita tahu, kita bisa merepresentasikan sinyal dalam 2 domain, waktu dan frekuensi. Yang keduanya adalah domain yang sama sekali berbeda dan, sinyalnya bisa dipastikan memiliki bentuk dan sifat yang sama sekali berbeda. Dan klo di perkuliahan kita biasa pake fourier transform untuk melakukan transformasi sinyal dari domain waktu ke domain frekuensi, begitu juga sebaliknya.

Di sini juga seperti itu. Tahap ketiga yang selanjutnya akan dilakukan adalah merubah setiap blok 8 x 8 pixel yang sudah berisi YCbCr ke domain frekuensi pake Discrete Cosine Transform (DCT) tipe kedua untuk 2 dimensi. Nah loh… Sekali lagi, ini bukan transformasi fourier, tapi sebangsanya. Yang jelas dengan DCT ini kita akan mendapatkan representasi warna dari YCbCr di domain frekuensi. Inilah transformasi yang akan kita pergunakan.

Di mana G(u,v) adalah hasil dari transformasi DCT di koordinat (u,v). Adapun u dan v, mereka sediri adalah koordinat di domain frekuensi dengan nilai mulai dari 0 sampai 7. Terus untuk α(n), dia akan bernilai akar seperdelapan (1/(8)^0,5) untuk n = 0, dan dia akan bernilai setengah untuk yang lainnya. α(n) sendiri adalah fungsi penormalisasi. Lalu g(x,y) adalah nilai salah satu komponen dari Y, Cb, atau Cr di koordinat (x,y).

Akan tetapi, seperti kita tahu, kita mendapatkan nilai YCbCr dari RGB dalam interval nilai positif semuanya. Nilai-nilai ini perlu kita buat lebih kompak terlebih dahulu sebelum di-DCT-kan, dengan cara mengurangi masing-masing nilai YCbCr dengan 128, sehingga kita mendapatkan interval nilai dari -128 sampai 127, bukan 0 sampai 255 lagi.

OK, jadi inilah hasil contoh transformasinya. Anggap saja ini matrix blok luminance.

Matrix pertama adalah matrix yang sudah dibuat lebih kompak bentuknya. Sedangkan matrix kedua adalah matrix hasil transformasi dari DCT. Yang perlu diperhatikan di sini adalah nilai-nilai pada sebelah kiri atas memiliki nilai yang cukup besar dan signifikan. Nilai yang paling ujung kiri sendiri disebut koefisien DC. Sisa yang lainnya namanya koefisien AC.

Keempat, langkah yang perlu dilakukan adalah kuantisasi. Mata manusia memiliki kepekaan yang bagus untuk melihat perbedaan kecil pada tingkat kecerahan di rentang area yang luas dibandingkan harus melihat perbedaan kecerahan di rentang area yang lebih sempit. Dengan kata lain, mata manusia bagus membedakan di frekuensi rendah tapi tidak bagus di frekuensi tinggi. Maka dari itu kita hanya perlu melakukan pengabaian nilai secara signifikan di frekuensi tinggi sekaligus melakukan optimalisasi keseluruhan nilai, terutama frekuensi rendah. Caranya dengan melakukan kuantisasi ke nilai yang lebih rendah. Berikut rumusnya.

A(i,j) adalah nilai awal hasil DCT yang belum terkuantisasi di posisi (i,j). B(i,j) adalah nilai hasil kuantisasi di posisi matrix (i,j). Q(i,j) adalah nilai faktor peng-kuantisasi dari matrix standar dari komite JPEG. Adapun fungsi bracket [ ] adalah fungsi pembulatan ke bilangan bulat terdekat. Adapun nilai β adalah faktor kualitas dari gambar yang dihasilkan. Anggap saja kualitas suatu gambar direpresentasikan oleh q, maka semakin tinggi nilai q maka semakin bagus kualitas gambar tersebut. Nah, nilai ƒβ ditentukan dari rumus berikut.

Standarnya sih keknya enaknya ƒƒβ bernilai 50. Dan inilah matriks standar pen-kuantisasi, Ql untuk luminance dan Qc untuk krominens, dan contoh matriks hasil kuantisasi.

Coba lihat, begitu banyak angka nol di sini. Maka dari itu kita hanya perlu melakukan setuhan akhir.

Terakhir! Adalah entropy coding namanya. Dia ini tipe loseless data compression. Caranya dengan mengurutkan data secara zigzag. Jadinya seperti kek gini, -26 -3 0 -3 -2 -6 2 -4 1 -4 1 1 5 1 2 -1 1 -1 2 0 0 0 0 0 -1 -1 0 0 0 .. .. .. Nah, klo dah gini, saatnya kita ingat-ingat pelajaran matdis kita dulu, karena ini adalah saatnya paman Huffman beraksi~! Dengan metode kompresi pohon Huffman, kita akan dapatkan data yang super duper kompak dan efisien.

Dan dalam keadaan seperti inilah JPEG dibentuk. Makanya wajar aja klo kita akan dapatkan file gambar dengan ukuran yang kecil berkali-kali lipat. Secara klo kita pake Huffman kita bekerja dalam satuan bit bukan byte. Yah, begitulah… JPEG dan dinamikanya… 😛 Apa gua harus bilang memukau? Hwawawa… Lebih tepat dibilang aneh deh nih algoritma keknya.

Oh ya, mungkin ada yang bertanya-tanya gimana caranya nge-decode nih kode ke gambar aslinya. Berarti urutannya tinggal kita balik. Kita susun ulang kode Huffman-nya, terus kita susun ulang kode entropi-nya, terus kita dekuantisasi (yang klo tadi dibagi faktor peng-kuantisasi, sekarang kita kali), trus kita balikan pake transformasi balik kosinus diskrit, abis itu ditambah 128 masing-masing, terakhir tinggal kita kalikan lagi sama inver matriks pen-transform RGB ke YCbCr biar YCbCr-nya bisa balik lagi ke RGB.

Dan inilah fungsi balikan untuk invers DCT tadi.

Dan khusus masalah DCT ini mungkin gua bakal bahas lebih lanjut kapan hari. Khukhukhu… Yasudah, kita sudahi dulu pembahasan kita kali ini. Bai-bai~

Source (AMS-American Mathematical Society, Wiki, Jurnal yang aku lupa catet judulnya, Dosen, dll)

File Format

Sekarang ayo kita membahas sedikit tentang format file. Apa itu format file? Jadi klo secara sederhana, format file itu ya sejenis .exe, .doc, .xls, dll, dsb, dst. Pernahkah kebayang, sebenarnya apa yang terjadi di dalam komputer ketika kita mengetik? Atau nggak usah jauh-jauh deh, pernahkah kebayang apa yang sebenarnya disimpan oleh komputer ketika kita menyimpan ketikan kita? Misalnya gini, ada sebuah file gambar, GUA.JPG, terus didobel klik. Tak lama akan keluar program penampil gambar ples gambarnya. Nah, sekarang coba file tadi dirubah namanya jadi GUA.DOC, terus coba diklik. Pasti hasilnya akan ada surat love dari planet mars muncul di komputermu. Atau file teksmu yang berformat .DOC dirubah ke .JPG, pasti yang muncul tulisan No preview available. Atau hasil ketikanmu di file .DOC terus kamu coba ganti jadi .TXT, terus kamu klik. Pasti akan keluar surat love dari mars lagi.

Nah, di sinilah intinya. Ketika kita mencoba menelanjangi apa isi file yang selama ini kita buat dengan nyamannya, ternyata berisi kode-kode yang cukup membuat mata kita serasa berada di surga. Bisa dibilang, welcome to machine languange~… Hwawawa… Gak jelas. ==’ Dan kalau kita coba-coba mengedit tulisan-tulisan tak terbaca ini, dan menyimpannya di text editor, pasti gak akan sukses dibuka untuk kedua kalinya walaupun format filenya dikembalikan lagi.

Itulah fungsinya identitas. Karena bagaimana-bagaimanapun juga, komputer membutuhkan sebuah identitas untuk mengenali dan membedakan setiap file yang ada, luar dalam. Dari sisi luar, kita cukup melihat ekstensinya, seperti akhiran nama file. Tapi itu belum cukup, karena bisa jadi ada orang yang sengaja merubah ekstensi file biar filenya gak bisa dibuka sembarangan. Sedangkan dari sisi dalam, identitas file umumnya bisa kita baca langsung dari baris-baris pertama header file. Nah, untuk membaca isi file secara murni dan asli tanpa konstaminasi tambahan dari atribut-atribut tidak perlu di sistem operasi kita, kita perlu editor khusus, bisa pakai hex editor (ini banyak beredar di internet, banyak pilihan, tinggal donlot).

Kenapa harus hex editor? Sebelum menjawab itu ada baiknya kita pahami apa itu hex. Hex adalah bilangan berbasis 16, dari 0 sampai f a.k.a. 0123456789abcdef. Artinya, dalam bilangan satuan, nilai tertingginya bukan 9, seperti di basis 10 biasa, tapi nilai tertingginya f, yang setara dengan nilai 15 di basis 10. Lebih jauh tentang hex, tanya aja ke tante wiki, ok. Selanjutnya, setiap karakter latin standar yang kita inputkan ke komputer kita menghabiskan memory sebesar 1 byte. Dan 1 byte itu sama dengan 8 bit. 1 bit itu cuma bisa diisi dua nilai, 0 atau 1. Nah, kan tadi satu karakter 1 byte = 8 bit, berarti kita bisa representasikan dia sebagai 2 angka dalam bilangan hex. 4bit-4bit. Karena 4 bit merepresentasikan 2^4, a.k.a. 16, sehingga basis hex sangat cocok digunakan dalam representasi kode. Dan untuk melihat kode-kode tadi dalam mode hex, kita butuh tool tambahan, yaitu hex editor, bukan notepad ataupun vi. Jadi, kalau kita mengetik sebuah karakter di text editor biasa, yang ditulis bukan karakter itu sendiri, tapi kode karakter itu.

Contoh,
Ketika menekan [spasi], kode yang disimpan di komputer adalah 20.
Ketika menekan [enter], kode yang disimpan di komputer adalah 0d 0a.
Ketika menekan [tab], kode yang disimpan di komputer adalah 09.
Ketika menekan [A], kode yang disimpan di komputer adalah 41.

Nah di sinilah ada saat-saat kita agak tidak bisa dibohongi. Misalnya ada seseorang menyembunyikan identitas filenya, dengan cara menghapus ekstensi filenya. Sehingga tidak ketahuan sebetulnya file itu formatnya apa. Nah, untuk melihat file itu bertipe apa, kita memang bisa menggunakan tool tambahan untuk mengecek langsung dia itu file bertipe apa. Tapi kan gak seru klo gak tahu cara kerjanya. 😛 Jadi, pertama buka hex editornya, terus buka file mencurigakan tadi. Nanti akan muncul baris-baris secara membujur dan melintang berisi kode-kode hex gak jelas… Nah, karena kebanyakan file dikenali dari headernya, jadi liat aja baris-baris awal kode-kode hex tadi. Dan identitas dari dalam file tadi pasti tertulis di sana.

Berikut adalah kode-kode hex dari the most popular file in the world. 😀
(*Perjanjian cara baca! Anggap kita punya matrix 2×2 dengan lebar dari 00 sampai 0f dan panjang tak terbatas atau kondisional.)

1. Microsoft Office 2007 (.DOCX, .XLSX, .PPTX, dll)
Di headernya mereka punya kode yang sama sepanjang alamat (00,00) sampai alamat (00,0d), yaitu 50 4b 03 04 14 00 06 00 08 00 00 00 21 00. Bedanya adalah dari alamat (00,0e) sampai (10,07).
.DOCX = dd fc 95 37 66 01 00 00 20 05 .. .. .. ..
.XLSX = c2 4f 28 c4 b3 01 00 00 94 08 .. .. .. ..
.PPTX = 63 1a a1 2c d4 03 00 00 e7 25 .. .. .. ..
dll

2. MP3 << File musik paling sering diputer di seluruh dunia deh keknya…
Inilah contoh kode-kode di baris awal mereka
ff fa 92 40 78 05 00 00 .. .. .. ..

Adakah kemungkinan kodenya lain? Oh, ada dong, Seperti ini misalnya.
ff fb b2 00 00 00 04 9f .. .. .. ..

Khusus format mp3 akan dibahas lebih dalam di tulisan berikutnya.

3. PDF
Ini malah sangat jelas sekali headernya. 4 baris awal kode hexnya adalah,
25 50 44 46

yang kalau diterjemahkan ke ASCII menjadi
%PDF

Cuman, dia diikuti oleh versi format PDF-nya, misal %PDF-1.4 atawa %PDF-1.6. Jadi bisa jadi 8 baris awal kode hexnya 25 50 44 46 2d 31 2e 34 atawa 25 50 44 46 2d 31 2e 36.

4. EXE
Setiap pengguna wendos pasti tahu file satu ini, karena setiap program induk yang dijalankan di windows a.k.a. bisa diklik, biasanya berakhiran .EXE. Inilah baris awal kode mereka.
4d 5a 90 00 03 00 .. .. .. ..

5. File-file terkompresi (.TGZ, .ZIP, .RAR, .7Z)
Kita mulai dari yang paling jadul ke yang paling baru.
.TGZ = 1f 8b 08 00 ad d2 42 46 .. .. .. ..
.ZIP = 50 4 03 04 14 00 00 00 .. .. .. ..
.RAR = 52 61 72 21 1a 07 00 cf .. .. .. .. a.k.a. Rar!….
.7Z = 37 7a bc af 27 1c 00 03 .. .. .. .. a.k.a. 7z……

6. File Gambar (.BMP, .JPG, .GIF, .PNG, .TIFF)
Untuk masalah format file gambar nanti Agi juga bahas lebih lanjut lagi.
.BMP = 42 4d ce ca .. .. .. ..
.JPG = ff d8 ff e0 .. .. .. ..
Sisanya buat PR. Hehehe… 😛

Dan masih banyak format file yang laen. Seperti A/V AVI, MPEG, MOV, atawa database, java, dll.

Sekarang setelah tahu identitas dalamnya, apa yang bisa kita manfaatkan selanjutnya? Ini dia serunya, karena bisa kita buat sebagai proteksi sederhana. Tahu format QuickTime yang baru di Apple? Di Apple.com kan biasanya ada trailer tuh, dan setiap kali diklik kita bisa putar trailer secara langsung. Tapi buat pengguna QuickTime yang bukan Pro version, trailernya gak bisa disimpen, harus diupgrade ceunah. Walaupun kita bisa dapatkan file yang berformat QTCH-nya dari cache QuickTime, kita nggak bisa langsung comot ganti ekstensi dari QTCH ke MOV atau AVI buat di-play. Soalnya, headernya diganti sama si Applenya. ==’ Capek deh… Jadi, kita harus ganti dulu baris-baris awal kode hex-nya ke salah satu format tertentu baru bisa kita play. Masalahnya~…, kita nggak tahu dia itu format filenya apa dan model header yang dipake yang model gimana. Di sinilah serunya, karena kita bisa trial and error buat ganti header satu-satu. Hwawawa… Ada cara cepetnya juga sih, tapi kata orang kadang-kadang cara cepetnya gak berhasil (cara cepetnya tanya aja google ato wiki). Tapi ada juga cara cepet yang pasti langsung berhasil. Upgrade aja QuickTimenya ke versi pro dengan membeli di Apple. Dan Apple memang cerdas. ==’

Yaudah deh, sampai di sini dulu tentang format filenya. Kapan-kapan disambung lagi. 😀

BEI Ditutup (sampai Jum’at), ekonomi pasar bebas terbukti gagal?

Imbas terjadinya penurunan perekonomian di AS menyebabkan banyak negara-negara di dunia yang sangat bergantung dengan perekonomian AS mengalami penurunan di bursa secara tajam. Banyak para analis yang berkata bahwa sistem perdagangan gaya washington tadi terbukti gagal dalam menyokong perekonomian. Gua, yang rada gak paham dengan kejadian model ginian, secara naluriah tertarik dan ikut-ikutan panik gak jelas. Setidak-tidaknya gua pengin ngerti apa yang sebenarnya terjadi. Nah, inilah sedikit info dan analisis konyol yang bisa gua dapatkan untuk mencoba memahami apa yang sebenarnya terjadi.

Sebelumnya, karena gua newbie masalah ginian, CMIIW loh! CMIIW loh ya!

Sekarang kita akan mulai, apa itu bursa efek? Hmmm… Apaan yah? Gua rada gak paham juga seh… :p Bursa efek atau bursa saham adalah sebuah pasar yang berhubungan dengan pembelian dan penjualan efek atau saham perusahaan serta obligasi pemerintah. (Sumber: Tante Wiki) Cuma yang jelas dulu gua pernah ikut seminar tentang bursa. Tentang kita ikut ambil bagian dalam pendanaan modal sebuah perusahaan, dengan cara membeli sahamnya, sehingga kita menjadi pemilik perusahaan secara parsial. Nah, ini keknya pasar yang menyentuh sektor riil. Jadi, klo misalnya terjadi kehilangan modal secara tiba-tiba suatu perusahaan, misalnya sahamnya banyak dilepas pemiliknya dengan posisi yang menyebalkan, otomatis perusahaan kemungkinan besar jadi kolaps. Contoh, Adam Air yang kehilangan sekitar 50% sahamnya kolaps seketika. Hhh… Serem. ==’

Selain itu, ada juga pasar uang a.k.a. valas. Ini jual beli uang. Nah, ada sedikit perbedaan pendapat tentang perdagangan semacam ini di dunia Islam. Banyak para ahli hukum Islam berpendapat setelah melakukan ijtihad dengan pakar ekonom dunia bahwa perdagangan mata uang itu bukan perdagangan barang yang sama dengan harga berbeda, sejenis riba. Karena tiap negara memiliki perbedaan mata uang, nilai tukar tertentu mutlak diperlukan untuk dijadikan standardisasi, walaupun time invariant dengan output awal random diikuti hasil yang random juga dan tidak bisa diturunkan secara normal sepanjang grafik fungsi. Nah loh? Jadi bisanya cuma diprediksi. Prediksi ini ada yang pake ilmu ada yang pake spekulasi ngawur semata, dan yang terakhir ini, keknya hampir semua pakar hukum Islam sependapat dilarang.

Gimana klo statistik? Wah, ini yang keren. Pialang yang ngajarin gua ngasih tahu beberapa kurva-kurva hasil pengamatan selama ini. Jadi, klo sudah melihat pergerakan sudah mendekati bentuk tertentu yang mungkin pasti jatuh harganya, pemain harus segera bertindak. Tapi statistik juga memiliki rentang kesalahan tersendiri, jadi masih ada risk untuk untung… (Yaelah… Gua ngemengnya nggak banget… :p) Tapi ternyata ada juga yang berpendapat uang tidak bisa dijadikan komoditi. Karena itu pasar uang dianggap you-know-lah. Solusinya? Pake emas atau perak. Itu lebih aman. Dan gua emang akui dari dulu, klo pake emas atau perak, utilitas uang benar-benar ada. Uang kertas itu yang cuma kertas, jadi tidak mencerminkan seberapa kayanya kamu. Menurutmu darimana negara mengompensasi banyaknya uang yang beredar di seluruh negeri? Di Inggris, mereka sudah punya kompensasi berupa emas. Jadi, harga uangnya cenderung gak fluktuatif. Indonesia? Itulah…

Bayangkan klo sebuah negara mencetak uang berlebih. Bakal terjadi inflasi. Kek di zimbabwe. Ini gua ada fotonya. Trenyuh banget. Uang sebanyak itu hanya setara dengan uang yang kita beri ke pengemis di tengah jalan… Harga permen? Puluhan Milyar… Sampai di sini kita akan sadar betapa pentingnya angka nol yang tertera di uang kita… ==’

Kembali ke masalah pasar uang, bursa efek. Jadi, sistemnya gimana? Begini, jadi kita coba liat dulu dari kenapa harganya bisa fluktuatif naek turun. Apa yang menyebabkan naek turun? Sederhana, sentimen, isu, rumor, sensitifitas, kepercayaan pelaku pasar, dll. Apa yang akan kamu lakukan seandainya kamu sudah memiliki saham perusahaan X corp. yang tiba-tiba dikabarkan terjadi kebocoran nuklir di instalasi utamanya? (contoh yang lebai…) Klo gua jadi kamu (yang diandaikan sudah punya saham X corp.), gua bakal buka internet, cari beritanya, dan klo dah ketemu klarifikasi. Klo beneran iya, gua bakal pikir-pikir, apakah itu vital bagi perusahaan X tadi? Bakal bikin citra X jatuh nggak? Bakal bikin produk X gak laku gak? Sejenis itu… Dan klo sudah gitu, dan klo gua dah panik, pasti gua bakal jual ke orang yang masih berharap sama si X. Caranya ya gua tawarin tuh saham sama orang yang mau. Tentu jualannya gak fix seperti di supermarket, tapi kek di pasar beneran. Tawar-menawar. Dan dari kejadian tawar menawar inilah, terjadi fluktuasi.

Klo uang? Ini rada beda. Ada suatu cara jual beli yang namanya carry trade, dan secara global ini menjadi trend sekarang. Caranya pake selisih, ambil keuntungan dari aset2 yang berprospek bagus dengan pinjam dari aset2 yang lebih rendah. Nah, rupiah salah satunya. Dan karena pasar valas itu seluruh dunia, siapapun di seluruh dunia bisa ikutan. Jadi, kebayang kan klo yang namanya uang itu seliweran gak jelas ke mana-mana secara virtual. Dengan kata lain, mereka yang memanfaatkan rupiah buat carry trade, bisa dibilang membuat rupiah pergi sementara dari dalam negeri. Nah, begitu harga rupiah turun, tentu bakal rugi merekanya. ==’ Sampai di sini mereka bakal panik juga. Dan gua jadi paham pemerintah yang gak mau kehilangan investornya. Jadi, dengan melakukan intervensi, diharapkan nanti keuangan bakal stabil. Tapi itu sementara. Toh setelah itu bakal kembali ke nature.

Ambil pengalaman, pemerintah Jepang dulu melakukan intervensi berkali-kali. Tapi akhirnya mereka melepas juga biar nature. Dan sekedar diketahui, Jepang sampai sekarang terus-menerus turun nilai uangnya. Dan Indonesia? Fluktuasi dong. Valas terhadap dolar AS ditutup 9.585 dan sempat menyentuh 9.700. Benar-benar seminggu yang fluktuatif. Dan salah satu pengamat valas berkomentar itu wajar. Suara agar pemerintah lebih baik tidak melakukan peningkatan SBI datang juga dari kalangan perkumpulan pengusaha Indonesia. Karena pemerintah pada dasarnya mensubsidi orang-orang di luar sono yang pegang rupiah. Dia bahkan bilang, walau rupiah nembus 10.000, itu gak masalah, karena ekspor bakal untung besar. Amannya di bawah 10.000 dikit lah katanya. Karena sampai akhir tahun ini manufacturing bahkan dinilai masih menguntungkan. Impor? Mereka yang rugi. Biarin aja, nggak usah mereka disubsidi. Ngapain? Toh negara maju kebanyakan overproduksi. Tapi, klo dipikir-pikir ya nggak bisa gitu juga sih. Karena masih banyak sekali sektor-sektor yang sangat terpukul klo bener-bener nembus 10.000. Bayangkan, kamu beli komputer dengan harga yang tiba-tiba melonjak… Dan, solusinya gua sarankan mending beli axioo yang produksi anak negeri. Cintailah produk dalam negeri~!

Klo terus-terusan nembus 10.000 ke atas, atau bahkan 20.000? Hwawawa… Itu kebablasan. Karena bakal bermasalah di manufacturing. Mimpi buruk untuk sektor riil. Btw-btw, gimana sama pemain valas? Uniknya, mereka gak bakal terlalu terpengaruh. Karena valas kan cuma buy and sell. Jadi, cuma pinter-pinter naruh posisi aja. Berkebalikan memang.

Apa yang terjadi jika suatu perusahaan sengaja memberikan isu positif tentang dirinya agar tak kehilangan pendukung walau dia rugi? Maksudnya gini, misalnya ada perusahaan Y, di laporannya dia bilang dia untung. Terus dibukukan secara formal. Udah gitu pelaku pasar dengan suka rela menyetorkan modalnya ke dia dengan harapan bisa ikut ambil bagian menikmati keuntungan perusahaan tadi. Ok, tentu bakal menguat sahamnya. Dan klo ada isu-isu keknya bakal memberikan citra positif untuk nilai uangnya. Jadinya, eng-ing-eng! Secara virtual, kita akan melihat mata uang menguat, harga saham naek, dan semua terlihat senang. Tapi, apa yang terjadi ketika perusahaan Y tadi bohong klo sebenarnya dia rugi terus-terusan? Dan apa yang terjadi klo pemilik saham menuntut hak mereka? Apa mereka dapet cek kosong? Keknya begitu. Kalau pun bukan, perusahaan bisa aja utang ke bank buat nalangin mereka, dan klo bank mau ngasih kredit it’s OK. Tapi, ATP (Availability to Pay)-nya ada gak? Klo gak ada? Kaco lah… Dan itulah yang terjadi di AS. Hhh… Menegangkan… ==’ Dan bank-bank sekarang masih pikir-pikir apakah mereka mau memberikan kredit ato nggak. Dan tentu saja, mereka harus memotong suku bunga untuk tindakan lebih lanjut. Dan bank sentral pun memberikan pedoman kepada bank-bank dunia untuk memotong suku bunga sampai 0,5%. (Klo gak salah) Inggris dari 5% jadi 4,5%, Amerika dari 2% jadi 1,5%, Eropa 4,25% jadi 3,75%. China nggak ngikutin 0,5%, dia memilih memotong 0.27% saja. Sedangkan Jepang mendukung pemotongan suku bunga itu, tapi nggak bakal ngikutin. Nah loh? Dunia memang aneh… Dan ekonomi berubah dengan sangat cepat. Dikabarkan perekonomian dunia yang biasanya naek 5% per tahun klo gak salah, bakal naek 3% per tahun jadinya.

Sampai sini kita tahu, pasar bebas dengan pasar saham dan valasnya memiliki beberapa titik lemah fatal di segi visualisasi. Bagi para engineer seperti kami, visualisasi itu penting. Klo gak sesuai dengan kenyataan namanya gak akurat, walaupun seberapa presisinya dia. Dan sistem perekonomian seperti ini sifatnya kek gini, di atas layar (bukan kertas loh :p) nilai exchange uang bisa jadi menguat, padahal sektor riilnya kelabakan gimana cara nyari untungnya. Seperti itulah… Tidak selalu sejalan.

Walau hampir semua mata uang di Asia melemah, ternyata ada dua negara yang tidak melemah mata uangnya, atau setidaknya masih belum melemah, yaitu Yuan (Cina) ama Won (Korsel). Dari sini, muncul wacana, kiblat perekonomian akan berbalik dari AS ke Cina. Karena pertumbuhan ekonomi Cina yang semakin cepat membuat raksasa satu ini menjadi rujukan tambang emas baru bagi investor lainnya. Apakah sekarang saatnya berharap ke Cina? Yah, semoga saja Cina benar-benar menjadi macan Asia yang baru. Dengan catatan, sektor pertanian dan sektor-sektor kesejahteraan sosial masyarakat pedesaan diperhatikan juga. Jangan sampai Cina mengejar atribut kemajuan hanya dari sektor industri saja, karena itu akan berdampak fatal untuk perekonomian internal Cina sendiri. Karena penyokong perekonomian tetap, masyarakat pedesaan ikut berperan. Bayangkan apa jadinya Cina kalau dia melupakan sektor pertanian dengan tidak memperhatikan nasib petani? Bisa jadi bakal kayak Indonesia yang impor beras. ==’ Semoga hal itu tidak terjadi. Terakhir, semoga Cina sukses melenyapkan segala koruptor di negerinya. Dan semoga Indonesia juga begitu. Kata temanku yang mencoba berpengamatan ekonom (Huahauhau…), Indonesia bakal maju di tahun 2030 klo gak salah, mengingat dampak ekonomi dan teknologi global kek begini. Ayo teman-teman, mari kita belajar yang rajin~! Bikin yang lebih keren daripada iPod touch~! Hwawawa…

Kembali ke pasar. Jadi, kita bisa simpulkan, mereka hidup dalam keadaan gak tenang (?) terus-terusan, berpikir bakal untung apa nggak. Karena fluktuatif seperti harga yang fluktuatif juga. Hidup yang diisi kepanikan terus-terusan keknya gak seru deh. Tapi ya gitu, kita hidup dengan jalan kita masing-masing. Toh, keknya ada juga yang enjoy gabung dengan sistem gituan. Tapi yang jelas, sekarang semua pelaku sedang panik. Dan keknya bakal lebih seru lagi kalau gua ikut-ikutan panik juga. Paa~~nnniii~kk~~…! Capek deh… ==’ Para praktisi ekonom berpendapat, lebih baik jangan panik. Karena yang dibutuhkan kita cuma klarifikasi yang jujur dari pemerintah. Yup! Jadi, jangan panik sodara-sodara~!

Sekali lagi, CMIIW loh! CMIIW loh ya!

(sumber dominan: Apa Kabar Indonesia) << You make news great!
(sumber non-dominan: Seminar Bursa Efek, Dosen gua, Papi, Temen-temen, etc)

Jalan-jalan ke Pantai euy!

Hohoho…

Kemaren minggu gua habis ke pantai bareng anak-anak banyuwangi, sama-sama kuliah di ITB juga. Alkisah, ketika gua akan tidur-tiduran siang, tiba-tiba terdengar suara pintu gerbang rumah gua terbuka diiringi dengan suara-suara yang rasanya gua berusaha untuk tidak pernah mengenalnya. Hhhh…. ==’ Alamat gua bakal disatroni anak-anak. Dan ternyata benar! Tak lama kemudian muncul suara khas kek anak2 kecil klo manggil temennya buat ngajak maen, “Aaagiiiii~~….!!” Deng-dong… Acara istirahat santai gua bener-bener terancam batal. Gua datengi dan ternyata sudah berdiri anak-anak dengan dandanan siap-siap kek mo piknik. “Minal Aidzin wal Faidzin~~…” Sambutan khas abis lebaran…

“Adakeun apa?” tanya gua basa-basi soalnya gua dah paham gak mungkin mereka dateng jauh2 ke rumah gua hanya buat silaturahmi alias pasti ada maunya. “Ikut yo~k…! Ke pantai…” –‘ Panas-panas gini? Gua pengin nolak tapi gua juga pengin liburan ke mana gitu. Dan setelah melakukan negosiasi, akhirnya gua luluh juga pengin ikut bareng dengan dalih melepas penat THR a.k.a. Tugas Hari Raya. Whatever lah. Yang penting pada akhirnya di sana, gua bareng enam anak laennya, dengan komposisi ce:co=2:5, nongkrong di pinggir pantai sambil bengong-bengong. Sebuah kejadian yang jarang terjadi di kalangan anak-anak ITB klo gak lagi ngerjain tugas. :p

Naek parasiling mereka. Cowok-cowoknya, kecuali gua. Dompet gua lagi mepet, jadi gua males maen gituan, lagian gua udah pernah naek. Jadi gua memutuskan mendingan gak usah ikut naek, uangnya lebih baek dibuat beli es krim. Hwawawa… Alesan.

Klo tuh foto di atas itu foto jadul dulu pas gua naek. Jadi bukan foto kemaren minggu. 😛

Puas begituan sebelum pulang kami ambil foto kenang-kenangan bareng. Dengan pose berperang antara pat-kai (gua jadi pat-kai soalnya bawa garpu kerukan) dengan satria baja kano (mas Ferry yang jadi, soalnya pedangnya dari dayung sampan), gua bener-bener merasa bagaikan ada di atas daun kelor… Sayang gua gak bawa kamera, dan gua lupa minta dikirimin fotonya ke e-mail gua. Ntahvava… (-_-;)

Hufff… Dan yang lebih sayang lagi, gua nggak ikut acara makan-makan, soalnya aku mau diajak keluarga makan bareng. Dan setelah pulang…, ternyata jadinya besok… T_T Yasudah, nggak apa-apa. Unforgettable pose…

Akhirnya gua di Banyuwangi…

Akhirnya gua sampai juga di Banyuwangi. Secara sebelumnya gua ada di Kediri ngerayain Idul Fitri bareng keluarga. Dan akhirnya pun sekarang gua kembali lagi ke Banyuwangi. Kesan pertama? Hwawawa… Panas~! Hari-hari pertama dan beberapa hari setelahnya gua malah melantai, alias tidur di bawah. 😛 Seggeeer dan adeeemmm sodara-sodara.

Dan sekarang sudah malem gua masih ngerip CD gua. Hohoho… Keknya malam ini gua bakal melantai a.k.a. tidur di lantai karena kepanasan. 😀

Have a nice day ya friends. Miss you much. :3

Idul Fitri Greetings:

1. Ramadlan telah berlalu bagaikan fungsi impuls. Apakah ini puncak osilasi keimanan kita? Jangan sampai cut-off guys! Mari kita berdoa agar diberi delay sampai Ramadhan depan…

2. Maxwel Law Revised: Jika ada sebuah medan akibat bulan ramadlan yang menembus bidang hati seseorang, maka akan muncul medan ketakwaan di sekeliling orang tersebut dalam lintasan tertutup.