Selasa, 22 Juni 2010

Ide Soal dan Jawaban UAS Pemrograman Jaringan dan Web

Maaf teman-teman, baru bisa membuat jawaban atas soal yang saya ajukan kemaren... Hehehe... Ini bukan berarti promosi blog lho (haha), yang mau share atau nambah-nambah komen di blog ini sangat diharapkan.
Silakan disimak, dipahami, dan dimengerti sendiri. Jika masih kurang jelas, silakan baca atau unduh file/sumber yang saya sertakan di bawah, di sana ada beberapa ilustrasi yang mungkin bisa dimanfaatkan. Semoga soal yang keluar ga jauh-jauh dari ini deh... GOOD LUCK!

SOAL : 
1. Sebutkan karakteristik dari protokol TCP dan UDP!
2. Jelaskan konsep threads dan streams!
3. Apa yang membedakan antara URI, URL, dan URN ! Jelaskan!
4. Bagaimana mekanisme kerja antara socket dan port dalam pembentukan koneksi suatu jaringan?
5. Sebutkan contoh penggunaan protokol handler dalam pemrograman jaringan?
 
Jawaban : 

Nomor 1
Karakteristik TCP :
- Connection-oriented dan reliable (data dijamin secara utuh sampai tujuan)
- Dipakai untuk mentransmisikan data dalam jumlah besar
- Pengiriman lebih lambat daripada UDP, karena koneksi tidak langsung
- Untuk menjamin diperlukan komunikasi awal dengan penerima sebelum transfer data dilakukan
- Contoh aplikasi : web browser, email, file transfer

Karakteristik UDP :
- Connectionless (bekerja tidak menjamin data sampai ditujuan secara utuh)
- Biasa digunakan untuk mentransmisikan data dalam jumlah kecil pada satu waktu
- Pengiriman lebih cepat daripada TCP, karena koneksi secara langsung
- Reliabilitasnya/penjaminan data sampai pada penerima tergantung dari aplikasi
- Contoh aplikasi : domain name system (DNS), video streaming, voice over IP (VoIP)

Kamis, 22 April 2010

If The Earth No Longer Breathe

Ladies and gentlemen, Mr. Al Gore.
It's almost as if a window was opened through which the future was very clearly visible.
"See that?" he said, "See that?
"That's the future in which you are going to live your life."

Future generations may well have occasion to ask themselves,
"What were our parents thinking?
Why didn't they wake up when they had a chance?
We have to hear that question from them, now.

Jika Anda pernah melihat film An Inconvenient Truth, maka kalimat-kalimat di atas adalah beberapa yang saya kutip dari pengantar menit-menit akhir film tersebut. Sebuah pernyataan yang mengisyaratkan pendengarnya untuk berpikir jika suatu saat ada generasi masa depan yang lantang berbicara demikian. Sudahkah kita menjawab pertanyaan itu? Setidaknya mari kita lebih sedikit peduli dengan apa yang sebenarnya sedang terjadi. Kengerian global yang jika dibiarkan mungkin bumi ini tak lagi bernapas. Sebab itulah tulisan ini saya beri judul "If The Earth No Longer Breathe" (Jika Bumi Tak Lagi Bernapas).
Beberapa waktu yang lalu saya membeli sebuah tabloid IT yang di salah satu rubriknya terdapat bagian yang membahas review situs-situs yang bermanfaat. Salah satu yang tertulis di situ adalah www.worldometers.info. Dalam review yang tertulis di situ, situs tersebut menyediakan sekumpulan informasi real time yang berhubungan dengan keadaan sosial dunia. Data yang diperoleh dari situs tersebut berasal dari kerja sama dengan beberapa lembaga sensus dan survei dunia, sehingga keakuratan data yang ditunjukkan tak diragukan lagi.
Lantas saya langsung mencoba menuju ke situs tersebut untuk menguak lebih dalam. Ternyata informasi yang ditampilkan beberapa diantaranya menyangkut hal-hal seperti jumlah populasi dunia, keadaan ekonomi dan pemerintahan, jumlah media informasi yang beredar, keadaan lingkungan, konsumsi pangan, konsumsi energi, dan kondisi kesehatan. Semuanya ditampilkan secara real time seperti layaknya speedometer!


Rock Is The Anthem Of Great Spirit

Dalam benak saya, selalu ada dua pandangan yang berbeda tentang musik rock. Mungkin banyak juga yang merasa demikian ketika pertama kali mendengar kata-kata "rock". Di satu sisi rock dipandang sebagai suatu aliran musik yang dicirikan dengan irama beat yang cepat nan menggebu-gebu, di sisi yang lain rock hanyalah sebuah ungkapan untuk mengungkapkan perasaan baik melalui lagu atau sikap bahwa ia sedang bersemangat menjalani hidup, apapun itu.

Banyak orang bilang bahwa musik rock itu adalah musik yang liar, tak enak didengar, dan hanya didengar oleh kaum-kaum brandal. Ada benarnya juga mungkin, karena itu sebuah kenyataan untuk beberapa orang, tetapi jika Anda jeli melihat keadaan yang sesungguhnya, musik rock bukanlah musik yang liar. Musik rock banyak dibuat untuk merayakan  sebuah kemenangan, dengan banyak tema. Tidak hanya bercerita tentang cinta kepada lawan jenis, tetapi kepada semua manusia, alam, dan kehidupan. Berbeda dengan lagu-lagu pop yang lebih banyak bertemakan cinta kepada lawan jenis, perselingkuhan, patah hati, dll.

Saya jadi teringat Indonesia di era 70'an, musik rock dianggap sebagai musik "ngak ngik ngok" oleh bung Karno pada saat menjadi presiden. Oleh karenanya, musisi-musisi rock waktu itu banyak yang dicekal, tidak boleh manggung, bahkan sampai di penjara, salah satu korbannya adalah Koes Plus. Musik rock dianggap sebagai musik yang tidak sesuai dengan nilai-nilai Pancasila, tidak sesuai dengan kepribadian bangsa, dan banyak menimbulkan masalah dimana-mana.

Rabu, 07 April 2010

Software Virtualisasi dan Mitos Seputar Virtualisasi Hardware

Teknologi virtualisasi diperkirakan menjadi teknologi yang semakin tren pada masa mendatang. Selain penghematan biaya (listrik atau pembelian server baru), teknologi virtualisasi juga memudahkan deploy-and-destroy untuk keperluan pengujian dan pengembangan aplikasi.

Melihat tren ini, vendor-vendor hardware juga mendukung teknologi virtualisasi ini. Intel dan AMD adalah vendor yang menjadi pionir dalam mendukung teknologi virtualisasi melalui produk processor yang dihasilkannya.

Sebelum processor dapat menunjang virtualisasi, tulang punggung dari virtualisasi adalah software. Semua dikontrol melalui software virtualisasi. Namun, pada tahun 2006, AMD memproduksi AMD Virtualization (AMD-V) sebuah processor yang mula-mula berkodekan “Pacifica” yang diklaim sebagai processor pertama yang mendukung teknologi virtualisasi. Kemampuan AMD-V ini tersedia pada keluarga processor Athlon 64 dan Athlon 64 X2, Turion 64 X2, generasi ke-2 dan ke-3 Opteron, processor Phenom dan Phenom II. Sedangkan untuk Intel, processor dengan teknologi virtualisasi ini mulanya dikenal dengan kode “Vanderpool”. Lalu Intel meluncurkan dukungan teknologi virtualisasi ini dengan brand VT-x pada tahun 2006 yang dikhusukan untuk platform x86. Perlu dicatat bahwa tidak semua processor Intel terbaru dapat mendukung teknologi virtualisasi. Beberapa processor yang mendukung VT-x adalah beberapa tipe Core 2 Duo, Core 2 Quad, Core 2 Extreme, seri Xeon (3000, 5000, 7000), processor Intel i7, processor Dual Core E6300, dan beberapa versi E5300 dan E5400. Fitur dukungan virtualisasi ini perlu diaktifkan terlebih dahulu melalui BIOS, sebelum aplikasi dapat memanfaatkannya karena beberapa produsen motherboard/BIOS/chipset secara default men-disable fitur ini.

Dari dukungan processor tersebut, kemudian muncullah istilah “hardware-assisted virtualization” atau orang biasa menyebut “hardware virtualization” yang sebenarnya kurang begitu cocok karena menimbulkan kesan bahwa hardware-lah yang berfungsi sebagai virtualisasi. Padahal maksud dari “hardware-assisted virtualization” sebenarnya adalah processor yang lebih dioptimasi untuk menangani lingkungan virtual. Dan itu hanya dapat dilakukan ketika software virtualisasi dijalankan.

Sabtu, 03 April 2010

Lebih Jauh Tentang Content Management System

Bagi banyak perusahaan, saat ini merupakan identitas di Internet. Informasi dapat disampaikan dan diterima dengan lebih cepat berkat adanya website. Yang menjadi masalah kemudian adalah pengelolaan informasi pada website menjadi lebih kompleks, ketika pemutakhiran dilakukan secara periodic. Content Management System (CMS) dapat menjadi solusi yang tepat.

Fakta yang tidak berlebihan jika ada yang mengatakan bahwa membuat website yang bagus dan aman dari nol adalah pekerjaan yang sulit, dan memakan banyak waktu. Bahkan bagi seorang pengembang web yang terampil sekalipun, membiat website hanya dengan bermodalkan edotor, pengolah gambar, dan memulai semuanya dari nol, bukanlah yang ringan. Serasa seperti harus “reinventing the wheel” (menemukan roda) untuk mencipta kendaraan – yang berarti membutuhkan waktu dan sumber daya lain dengan cukup besar. Sementara bagi sebagian besar orang (client), mereka tidaklah punya banyak waktu untuk menunggu.

Solusi Template Web

Salah satu solusi yang ada untuk merancang web dengan cepat adalah dengan menggunakan template web. Template web merupakan wadah atau pola dari web yang hendak dibuat. Pengembang web (atau siapapun yang ingin membuat web) perlu men-download atau membeli (jika template web tersebut berbayar). Informasi atau isi dari template web merupakan informasi yang umum, dan dapat diubah sesuai dengan keinginan pengembang web. Dengan berbekal pengetahuan HTML dan CSS, user dapat melakukan perubahan template dengan bebas.

Beberapa situs menawarkan template web secara cuma-Cuma adalah www.freetemplates.com, www.freewebsitetemplates.com, dan www.template monster.com. Di situ, Anda dapat mendownload template web dan memodifikasinya untuk situs pribadi Anda.

Template web cukup baik untuk desain awal, dengan isi website yang tidak terlalu banyak. Namun, ketika isi dari website menjadi semakin kompleks, Anda tidak dapat mengandalkan template web. Anda memerlukan sebuah tool yang berfungsi sebagai template, namun juga memberikan kemudahan lain untuk mengelola isi dari website. Tool tersebut diistilahkan dengan Content Management System.

Selasa, 30 Maret 2010

Menjadi Blogger yang Berkualitas

Kurang lebih dua tahun yang lalu saya memulai menggunakan media blog untuk berbagi tulisan kepada sesama pengguna internet. Meskipun di awal-awal saya sangat malas untuk mengupdate blog ini, tetapi seiring berjalannya waktu, dengan melihat berbagai macam blog yang sudah begitu sukses, saya jadi tahu bagaimana membuat sebuah blog yang berkualitas. Menurut saya, blog yang berkualitas tidak hanya unik, tetapi juga bisa memberikan pengetahuan, inspirasi, dan pencerahan kepada banyak orang.

Ukuran sebuah blog yang berkualitas dapat dinilai dalam beberapa hal. Beberapa diantaranya yaitu tulisan, layout, komentar, dan kepopuleran. Tulisan yang baik dalam dunia blogging adalah tulisan yang mudah dicerna oleh semua jenis kalangan. Mungkin bisa menggunakan penulisan judul yang unik dan persuasif, penggunaan gaya bahasa yang kreatif, hingga bentuk tipografi yang nyaman untuk dibaca. Ini tidak terlalu sulit jika Anda seringkali membaca tulisan-tulisan yang sering dimuat dalam berbagai surat kabar, majalah, atau buku-buku yang lain. Terkadang tulisan menjadi daya tarik tersendiri bagi orang lain untuk selalu berkunjung ke blog Anda.

Jangan terlalu memaksakan diri untuk menjadi plagiator ketika kita tidak punya ide atau sesuatu yang ingin ditulis. Mencari waktu yang tepat untuk memunculkan ide tidaklah mudah. Ada baiknya kita menyimpan sebuah judul kemudian kita kembangkan berdasar pengalaman-pengalaman kita, kemudian menuangkan pikiran kita tersebut ke dalam sebuah bentuk tulisan yang indah. Kita boleh saja menuliskan apa yang sudah dituliskan oleh orang lain asal mencantumkan sumbernya. Dan ingat selalu bahwa apa yang kita tulis dalam blog kita adalah sesuatu yang berguna dan bermanfaat bagi orang lain. Seorang blogger yang berkualitas tidak hanya berharap blognya menjadi populer, tetapi citra seorang blogger yang baik juga harus tetap dijaga.

Sering saya melihat blog-blog yang hanya diisi dengan tulisan-tulisan yang tidak begitu menarik. Entah itu hanya ditulis dalam satu atau dua paragraf, tulisan yang tidak unik, hingga tulisan yang copy paste dari artikel/blog lain tanpa menuliskan sumbernya. Sehingga ketika mencari sebuah kata kunci dalam berbagai situs pencarian, kadang didapat beberapa blog dengan isi tulisan yang sama tanpa ada pengembangan sedikit pun.

Jumat, 26 Maret 2010

Speech Synthetizer


Dari dulu sampai sekarang, para ahli berusaha mengimplementasikan kecerdasan manusia pada komputer. Berbagai aplikasi artificial intelligence (AI) disematkan ke dalam komputer, agar mesin ini mampu berkomunikasi dengan manusia atau paling tidak memahami manusia. Salah satu AI yang terus dikembangkan sampai saat ini adalah speech synthesizer yang memungkinkan komputer berbicara dalam bahasa manusia.
Di televisi, Anda mungkin pernah menyaksikan Stephen Hawking berbicara di depan para mahasiswanya. Fisikawan yang terkenal dengan teori black holes-nya ini sudah tidak mampu lagi mengeluarkan suara dari lisannya, namun berkat teknologi speech synthetizer, dia masih bisa bercakap-cakap.
Mesin speeh synthetizer Hwking memang cukup kompleks. Alat ini tidak hanya memproduksi suara, tetapi juga menangkap input dari gerakan mata sang doktor. Demikian pula, misalnya, dengan aplikasi voice command yang banyak tertanam di smartphone mutakhir yang memadukan speech recognizer dengan speech synthetizer.
Aplikasi speech synthetizer yang paling sederhana sebenarnya ada pada setiap PC ber-OS Windows. Bila Anda menekan tuts WinKey+u di keyboard, Windows akan mengaktifkan Utility Manager, yang didalamnya terdapat aplikasi Microsoft Narrator. Aplikasi ini akan membaca setiap jendela yang Anda aktifkan, termasuk tombol-tombol di dalamnya.
Atau, mungkin Anda pernah mengintal aplikasi Microsoft Reader di PC. Aplikasi yang diperuntukkan bagi file .LIT ini pun dilengkapi dengan kemampuan menerjemahkan teks menjadi suara (text-to-speech) yang merupakan contoh teknologi speech synthetizer.

Mengenal Game Engine

Jika Anda adalah gamer sejati yang menghabiskan ribuan jam di depan computer untuk bermain game, kemungkinan besar Anda akan sering mendengar istilah Game Engine. Entah itu di forum paragamer yang melempar thread game engine atau di game balap motor/mobil yang pada saat awal permainan sering terdengar, “Start your engine…”.

Game engine mempunyai cara kerja yang sama seperti engine (mesin) pada motor atau mobil. Tanpa ada game engine, sebuah game tidak dapat dijalankan. Di dalam game engine terdapat fungsi-fungsi yang mendukung jalannya program, seperti berkomunikasi dengan graphics adapter, melakukan render 2D atau 3D, memodelkan suatu bentuk tertentu, dan memformulasikan animasi hingga gamer dapat mengontrol gerakan tokoh di layar monitor dengan nyaman. Kenapa harus ada game engine? Karena programmer game akan kehabisan waktu jika “keep re-inventing the wheel” – atau harus membuat semuanya dari awal. Beberapa rutin akan selalu sama dalam setiap game, seperti bagaimana membuat sebuah objek yang bergerak dengan kecepatan dan percepatan tertentu, bagaimana mendeteksi adanya tabrakan antarobjek, bagaimana menngani input dari user, bagaimana melakukan rendering atau pencahayaan, dan bagaimana merancang kecerdasan buatan untuk sebuah game. Rutin yang sama ini dirangkum menjadi sebuah engine yang dapat digunakan untuk berbagai macam game.

Kelahiran Game Engine

Selama bertahun-tahun, para perusahaan pengembang game membuat sendiri game engine untuk game-game produksinya. Sebut saja LucasArts dengan engine-nya yang diberi nama Script Creation Utility for Maniac Mansion (SCUMM) telah menjadi tulang punggung untuk game-game klasik era akhir 1980-an (menjelang 1990), seperti Maniac Mansion (game pertama untuk Commodore 64 yang menggunakan SCUMM), Indiana Jones and The Last Crusader: The Graphic Adventure (1988), dan The Secret of Monkey Island (1990). Ada juga Sierra’s Creative Interpreter (SCI) dari Sierra, sebuah engine untuk game-game berjenis petualangan, seperti King’s Quest series (1988), Police Quest series, dan Quest for Glory series (1988).

Bahkan engine yang menghasilkan game-game ppuler seperti idTech (engine yang menjadi tulang punggung game Quake series), dan Unreal Engine (engine yang menjadi tulang punggung untuk game seperti BioShock, Tactical Ops: Assault on Terror, Mirror’s Edge, Batman : Arkham Asylum, dan Section 8) dari EpicGames juga dimulai dari teknologi in-house yang tidak disebarkan ke public.