Selasa, 04 Desember 2012

Softskill 3. "Logo Creation"

Hai..hai.. (abaikan)

Logo (yang sangat sederhana) di atas saya buat dengan menggunakan aplikaso CorelDraw 12.
Seperti yang sudah tertulis diatas, nama logonya adalah THE CULLENS. Mengapa saya memberi nama demikian? Karena The Cullens merupakan nama grup (bisa dibilang genk, tp jangan deh, kesannya alay) yang saya bentuk bersama 4 orang sahabat saya yang lain. Kami berlima begitu dekat, dan kami adalah Twihards (nama fans film Twilight Saga).

Saya membuat logo ini berbentuk bulat karena Twilight merupakan film tentang vampir, dan vampir erat kaitannya dengan hal-hal yang magis, kemudian saya teringat dengan salah satu kartun anime kesukaan saya, yaitu Cardcaptor Sakura. Nah dari kartun tersebut saya terinspirasi untuk membuat Magic Circle yang pasti selalu muncul ketika sang tokoh menggunakan sihir.

Lambang utama dari logo ini adalah bulan (sabit). Mengapa bulan? Karena kami berlima adalah makhluk nocturnal, alias yang lebih aktif di malam hari. Jika kami berlima bermain dan berkumpul bersama pastinya selesainya selalu kemalaman.
Lalu disaat orang lain lebih memilih malam minggu untuk waktunya berkumpul dan bermain, kami malah lebih sering melakukannya di malam jumat, saat cuaca hujan ataupun saat bulan purnama. Agak horror memang, tapi ini tidak dibuat-buat, entah mengapa ketika kami sama-sama punya waktu untuk berkumpul pasti suasananya seperti itu.
Dan juga layaknya seperti bulan, cahaya (pesona) kami selalu memancar dan disukai banyak orang. Walaupun cahaya kami tidak seterang matahari, tetapi orang-orang tak pernah bosan untuk memandanginya. (if you know what I mean)

sekian..maaf kalau agak sedikit konotatif penjelasannya.

Senin, 05 November 2012

Pengaruh Perkembangan Desain Pemodelan Grafis

Ketika perguruan tinggi pertama kali berdiri di Eropa pada awal milenium kedua, buku menjadi sebuah tuntutan kebutuhan yang sangat tinggi. Teknologi cetak belum ditemukan pada masa itu, sehingga sebuah buku harus disalin dengan tangan. Konon untuk penyalinan sebuah buku dapat memakan waktu berbulan-bulan. Guna memenuhi tuntutan kebutuhan penyalinan berbagai buku yang semakin meningkat serta untuk mempercepat kerja para penyalin (scribes), maka lahirlah huruf Blackletter Script, berupa huruf kecil yang dibuat dengan bentuk tipis-tebal dan ramping. Efisiensi dapat terpenuhi lewat bentuk huruf ini karena ketipis tebalannya dapat mempercepat kerja penulisan. Disamping itu, dengan keuntungan bentuk yang indah dan ramping, huruf-huruf tersebut dapat ditulisakan dalam jumlah yang lebih banyak diatas satu halaman buku.
Berikut ini adalah peristiwa-peristiwa penting dalam sejarah perkembangan desain grafis. Johannes Gutenberg (1398-1468) menemukan teknologi mesin cetak yang bisa digerakkan pada tahun 1447 dengan model tekanan menyerupai disain yang digunakan di Rhineland, Jerman untuk menghasilkan anggur. Ini adalah suatu pengembangan revolusioner yang memungkinkan produksi buku secara massal dengan biaya rendah, yang menjadi bagian dari ledakan informasi pada masa kebangkitan kembali Eropa.

1851, The Great Exhibition
             Diselenggarakan di taman Hyde London antara bulan Mei hingga Oktober 1851,pada saat Revolusi industri. Pameran besar ini menonjolkan budaya dan industri serta merayakan teknologi industri dan disain. Pameran digelar dalam bangunan berupa struktur besi-tuang dan kaca, sering disebut juga dengan Istana Kristal yang dirancang oleh Joseph Paxton.

1892, Aristide Bruant, Toulouse-Lautrec
              Pelukis post-Impressionist dan ilustrator art nouveau Prancis, Henri Toulouse-Lautrec melukiskan banyak sisi Paris pada abad ke sembilan belas dalam poster dan lukisan yang menyatakan sebuah simpati terhadap ras manusia. Walaupun lithography ditemukan di Austria oleh Alois Senefelder pada tahun 1796, Toulouse-Lautrec membantu tercapainya peleburan industri dan seni.

1910, Modernisme
             Modernisme terbentuk oleh urbanisasi dan industrialisasi dari masyarakat Barat. Sebuah dogma yang menjadi nafas desain modern adalah “Form follow Function” yang di lontarkan oleh Louis Sullivan.Symbol terkuat dari kejayan modernisme adalah mesin yang juga diartikan sebagai masa depan bagi para pengikutnya. Desain tanpa dekorasi lebih cocok dengan ‘bahasa mesin’, sehingga karya-karya tradisi yang bersifat ornamental dan dekoratif dianggap tidak sesuai dengan ‘estetika mesin’

1916, Dadaisme
             Suatu pergerakan seni dan kesusasteraan (1916-23) yang dikembangkan mengikuti masa Perang Dunia Pertama dan mencari untuk menemukan suatu kenyataan asli hingga penghapusan kultur tradisional dan bentuk estetik. Dadaism membawa gagasan baru, arah dan bahan, tetapi dengan sedikit keseragaman. Prinsipnya adalah ketidakrasionalan yang disengaja, sifat yang sinis dan anarki, dan penolakan terhadap hukum keindahan.

1916, De Stijl
              Gaya yang berasal dari Belanda, De Stijl adalah suatu seni dan pergerakan disain yang dikembangkan sebuah majalah dari nama yang sama ditemukan oleh Theo Van Doesburg. De Stijl menggunakan bentuk segi-empat kuat, menggunakan warna-warna dasar dan menggunakan komposisi asimetris. Gambar dibawah adalah Red and Blue Chair yang dirancang oleh Gerrit Rietveld.

1918, Constructivism
                Suatu pergerakan seni modern yang dimulai di Moscow pada tahun 1920, yang ditandai oleh penggunaan metoda industri untuk menciptakan object geometris. Constructivism Rusia berpengaruh pada pandangan moderen melalui penggunaan huruf sans-serif berwarna merah dan hitam diatur dalam blok asimetris. Gamabr dibawah adalah model dari Menara Tatlin, suatu monumen untuk Komunis Internasional.

1919, Bauhaus
                 Bauhaus dibuka pada tahun 1919 di bawah arahan arsitek terkenal Walter Gropius. Sampai akhirnya harus ditutup pada tahun 1933, Bauhaus memulai suatu pendekatan segar untuk mendisain mengikuti Perang Duni Pertama, dengan suatu gaya yang dipusatkan pada fungsi bukannya hiasan.

1928-1930, Gill Sans
               Tipograper Eric Gill belajar pada Edward Johnston dan memperhalus tipe huruf Underground ke dalam Gill Sans. Gill Sans adalah sebuah jenis huruf sans serif dengan proporsi klasik dan karakteristik geometris lemah gemulai yang memberinya suatu kemampuan beraneka ragam (great versatility).

1931, Harry Beck
                 Perancang grafis Harry Back ( 1903-1974) menciptakan peta bawah tanah London (London Underground Map) pada tahun 1931. Sebuah pekerjaan abstrak yang mengandung sedikit hubungan ke skala fisik. Beck memusatkan pada kebutuhan pengguna dari bagaimana cara sampai dari satu stasiun ke stasiun yang lain dan di mana harus berganti kereta.

1950, International Style
                International atau Swiss style didasarkan pada prinsip revolusioner tahun 1920an seperti De Stijl, Bauhaus dan Neue Typography, dan itu menjadi resmi pada tahun 1950an. Grid, prinsip matematika, sedikit dekorasi dan jenis huruf sans serif menjadi aturan sebagaimana tipografi ditingkatkan untuk lebih menunjukkan fungsi universal daripada ungkapan pribadi.

1951, Helvetica
                 Diciptakan oleh Max Miedinger seorang perancang dari Swiss, Helvetica adalah salah satu tipe huruf yang paling populer dan terkenal di dunia. Berpenampilan bersih, tanpa garis-garis tak masuk akal berdasarkan pada huruf Akzidenz-Grotesk. Pada awalnya disebut Hass Grostesk, nama tersebut diubah menjadi Helvetica pada tahun 1960. Helvetica keluarga mempunyai 34 model ketebalan dan Neue Helvetica mempunyai 51 model.

1960, Psychedelia and Pop Art
                Kultur yang populer pada tahun 1960an seperti musik, seni, disain dan literatur menjadi lebih mudah diakses dan merefleksikan kehidupan sehari-hari. Dengan sengaja dan jelas, Pop Art berkembang sebagai sebuah reaksi perlawanan terhadap seni abstrak. Gambar dibawah adalah sebuah poster karya Milton Glaser yang menonjolkan gaya siluet Marcel Duchamp dikombinasikan dengan kaligrafi melingkar. Di cetak lebih dari 6 juta eksemplar.

1984, Émigré
              Majalah disain grafis Amerika, Émigré adalah publikasi pertama untuk menggunakan komputer Macintosh, dan mempengaruhi perancang grafis untuk beralih ke desktop publishing ( DTP). Majalah ini juga bertindak sebagai suatu forum untuk eksperimen tipografi.
Pengaruh Desain Pemodelan Grafis Perubahan Teknologi
Kerajinan kain daerah merupakan warisan nenek moyang kita yang sangat indah untuk di jadikan sebagai sumber pikiran dalam membuat desain grafis, contohnya adalah batik dan songket. Sedangkan teknologi juga memiliki andil yang cukup besar untuk perkembangan desain grafis. Di samping itu dengan semakin majunya teknologi maka semakin mudah kita untuk menciptakan karya desain grafis dengan waktu yang singkat kita dapat menghasilkan banyak desin grafis sehingga lebih efisien. Ada juga sekarang tren dalam “Photo Editing” yang sudah menjamur kedalam masyarakat. Banyak sekali lomba-lomba atau event-event yang diselenggarakan dengan menggunakan “photo editing” sebagai contentnya. Hal ini dikarenakan pula oleh teknologi yang sudah sangat berkembang, misalnya kamera yang canggih, kamera yang sudah dimiliki oleh kebanyakan telepon seluler, dan juga peran media sosial yang tak luput untuk ‘memeriahkannya’. Sebut saja Intagram, sebuah media sosial yang fungsi utamanya adalah sharing foto. Foto-foto tersebut kebanyakan sudah melalui proses editing terlebih dahulu, sehingga akan terlihat lebih baik dan menarik untuk dibagikan kepada orang lain. Bayangkan saja pada zaman dahulu, seni berfoto masi belum semenarik sekarang, ditambah lagi teknologi yang belum mumpuni. Kita seharusnya bersyukur bahwa kita bisa mengalami kemudahan akibat dari pengaruh perkembangan teknologi dan desain grafis.
Sumber :

Keunggulan Orang Gendut Ketimbang Orang Kurus :p


1. Orang gendut dosanya lebih sedikit, jarang orang gendut yg jadi maling, karena mereka sadar gampang ketangkep :)
2. Orang gendut rata2 lebih kaya daripada orang kurus, lihat boss2, konglomerat, mafioso, dll... Mana ada yg kurus? Besarnya lingkar pinggang mereka menandakan tingkat kesuksesan hidup mereka :)
...
3. Orang gendut banyak amal:
-ketika mereka terlihat lucu dan orang kurus tertawa, itu amal.
-ketika orang kurus naek mikrolet trus duduknya kegencet orang gendut dan orang kurus menggerutu, amalnya pindah.
-ketika orang kurus bisa merasa langsing diantara orang gendut, amal buat si endut :)
4. Orang gendut mempunyai tingkat kebisingan yg rendah: orang kurus ketika menubruk tembog akan menghasil suara
"BRAAAKKKKKK...!!!", sedangkan orang gendut hanya menimbulkan suara "mmmbuugghh..." lalu "tooeeenk" :) *membal*
5. Orang gendut punya suara indah: lihat penyanyi seriosa yg punya suara tenor dan sopran, rata2 endut kan? Contoh: Pavarroti.
6. Orang gendut mempunyai daya tahan lebih. Contoh: Ketika tersesat tanpa makanan selama 2 minggu di kutub utara, orang kurus pasti udah ko'it duluan jadi santapan beruang kutub. Sedangkan si beruang tidak memakan orang gendut karena: "WaH ada friend nech" :)
7. Orang gendut menyejukkan dunia: Ketika upacara ditengah terik matahari, pasti orang kurus berlindung dibalik bayangan orang gendut :)
8. Orang gendut mampu menghemat waktu:
ketika ada angkot ngetem penumpang dan yg naik hanya orang kurus, pasti gak jalan2 dan isinya kyk ikan sarden, tapi beda ketika orang gendut naik, belum buka pintu, angkotnya udah kaboer duluan :)
9. Orang gendut save the water. Ketika makan yg pedes2 dan panas2, orang gendut akan menghasilkan keringat lebih banyak, so biasanya itu mampu menghemat air minum dan MCK :)
10. Orang gendut itu rata2 berjiwa lembut. Hayo ngaku!
 
 

Rabu, 10 Oktober 2012

Struktur Sistem Komputer

Struktur Sistem Komputer

Tidak ada suatu ketentuan khusus tentang bagaimana seharusnya struktur sistem sebuah komputer. Setiap ahli dan desainer arsitektur komputer memiliki pandangannya masing-masing. Akan tetapi, untuk mempermudah kita memahami detail dari sistem operasi di bab-bab berikutnya, kita perlu memiliki pengetahuan umum tentang struktur sistem komputer.

Operasi Sistem Komputer

Secara umum, sistem komputer terdiri atas CPU dan sejumlah device controller yang terhubung melalui sebuah bus yang menyediakan akses ke memori. Umumnya, setiap device controller bertanggung jawab atas sebuah hardware spesisfik. Setiap device dan CPU dapat beroperasi secara konkuren untuk mendapatkan akses ke memori. Adanya beberapa hardware ini dapat menyebabkan masalah sinkronisasi. Karena itu untuk mencegahnya sebuah memory controller ditambahkan untuk sinkronisasi akses memori.
Pada sistem komputer yang lebih maju, arsitekturnya lebih kompleks. Untuk meningkatkan performa, digunakan beberapa buah bus . Tiap bus merupakan jalur data antara beberapa device yang berbeda. Dengan cara ini RAM, Prosesor, GPU (VGA AGP) dihubungkan oleh bus utama berkecepatan tinggi yang lebih dikenal dengan nama FSB (Front Side Bus) . Sementara perangkat lain yang lebih lambat dihubungkan oleh bus yang berkecepatan lebih rendah yang terhubung dengan bus lain yang lebih cepat sampai ke bus utama. Untuk komunikasi antar bus ini digunakan sebuah bridge .
Tanggung jawab sinkronisasi bus yang secara tak langsung juga mempengaruhi sinkronisasi memori dilakukan oleh sebuah bus controller atau dikenal sebagai bus master . Bus master akan mengendalikan aliran data hingga pada satu waktu, bus hanya berisi data dari satu buah device .
Pada prakteknya bridge dan bus master ini disatukan dalam sebuah chipset .
NB: GPU = Graphics Processing Unit; AGP = Accelerated Graphics Port; HDD = Hard Disk Drive; FDD = Floppy Disk Drive; FSB = Front Side Bus; USB = Universal Serial Bus; PCI = Peripheral Component Interconnect; RTC = Real Time Clock; PATA = Pararel Advanced Technology Attachment; SATA = Serial Advanced Technology Attachment; ISA = Industry Standard Architecture; IDE = Intelligent Drive Electronics/Integrated Drive Electronics; MCA = Micro Channel Architecture; PS/2 =Sebuah port yang dibangun IBM untuk menghubungkan mouse ke PC;
Jika komputer dinyalakan, yang dikenal dengan nama booting, komputer akan menjalankan bootstrap program yaitu sebuah program sederhana yang disimpan dalam ROM yang berbentuk chip CMOS (Complementary Metal Oxide Semiconductor) . Chip CMOS modern biasanya bertipe EEPROM(Electrically Erasable Programmable Read Only Memory), yaitu memori non-volatile (tak terhapus jika power dimatikan) yang dapat ditulis dan dihapus dengan pulsa elektronik. Lalu bootsrap program ini lebih dikenal sebagai BIOS (Basic Input Output System) .
Bootstrap program utama, yang biasanya terletak di Motherboard akan memeriksa hardware-hardware utama dan melakukan inisialisasi terhadap program dalam hardware yang dikenal dengan nama firmware .
Bootstrap program utama kemudian akan mencari dan meload kernel sistem operasi ke memori lalu dilanjutkan dengan inisialisasi sistem operasi.Dari sini program sistem operasi akan menunggu kejadian tertentu. Kejadian ini akan menentukan apa yang akan dilakukan sistem operasi berikutnya ( event-driven ).
Kejadian ini pada komputer modern biasanya ditandai dengan munculnya interrupt dari software atau hardware, sehingga Sistem Operasi ini disebut Interrupt-driven. Interrupt dari hardware biasanya dikirimkan melalui suatu signal tertentu, sedangkan software mengirim interrupt dengan cara menjalankan system call atau juga dikenal dengan istilah monitor call . System/Monitor call ini akan menyebabkan trap yaitu interrupt khusus yang dihasilkan oleh software karena adanya masalah atau permintaan terhadap layanan sistem operasi. Trap ini juga sering disebut sebagai exception .
Setiap interrupt terjadi, sekumpulan kode yang dikenal sebagai ISR (Interrupt Service Routine) akan menentukan tindakan yang akan diambil. Untuk menentukan tindakan yang harus dilakukan, dapat dilakukan dengan dua cara yaitu polling yang membuat komputer memeriksa satu demi satu perangkat yang ada untuk menyelidiki sumber interrupt dan dengan cara menggunakan alamat-alamat ISR yang disimpan dalam array yang dikenal sebagai interrupt vector di mana sistem akan memeriksa Interrupt Vector setiap kali interrupt terjadi.
Arsitektur interrupt harus mampu untuk menyimpan alamat instruksi yang di- interrupt . Pada komputer lama, alamat ini disimpan di tempat tertentu yang tetap, sedangkan padakomputer baru, alamat itu disimpan di stack bersama-sama dengan informasi state saat itu.

Struktur I/O

Ada dua macam tindakan jika ada operasi I/O . Kedua macam tindakan itu adalah:
Setelah proses I/O dimulai, kendali akan kembali ke user program saat proses I/O selesai (Synchronous). Instruksi wait menyebabkan CPU idle sampai interrupt berikutnya. Akan terjadi Wait loop (untuk menunggu akses berikutnya). Paling banyak satu proses I/O yang berjalan dalam satu waktu.
Setelah proses I/O dimulai, kendali akan kembali ke user program tanpa menunggu proses I/O selesai (Asynchronous). System call permintaan pada sistem operasi untuk mengizinkan user menunggu sampai I/O selesai.Device-status table mengandung data masukkan untuk tiap I/O device yang menjelaskan tipe, alamat, dan keadaannya. Sistem operasi memeriksa I/O device untuk mengetahui keadaan device dan mengubah tabel untuk memasukkan interrupt. Jika I/O device mengirim/mengambil data ke/dari memory hal ini dikenal dengan nama (Direct Memory Access) DMA.

Struktur Storage

Hal penting yang perlu diingat adalah program adalah bagian dari data.

Selasa, 09 Oktober 2012

Membuat Web Crawler Sederhana

Hi, kali ini saya akan mencoba menjelaskan bagaimana cara membuat web crawler sederhana. Oh ya, web crawler adalah program seperti robot yang akan menjelajahi dunia web dan kemudian mendownload halaman web tersebut.
Secara garis besar sebuah web crawler memiliki 3 bagian, yaitu:
1. Penentu url (alamat web) tujuan
2. Downloader web
3. Pemarsing (pemroses) hasil downloadan
Mari kita bahas satu persatu.
1. Penentu url(alamat web) tujuan.
Bagian ini akan mengambil 1 url dari database yang belum diproses.
01function db_get_url()
02{
03    $sql = "SELECT id, url FROM tbl_url WHERE status='0' ORDER BY id LIMIT 1";
04    $rs = mysql_query($sql);
05    $url = '';
06    if ($data = mysql_fetch_array($rs))
07    {
08        $url = $data['url'];
09
10        $sql = "UPDATE tbl_url SET status='1' WHERE id='". $data['id']. "' ";
11        $rs = mysql_query($sql);
12    }
13    if ($url == '') $url = 'http://planet.terasi.net';
14
15    return $url;
16}
2. Downloader Web
Fungsi getURL dibawah ini akan menerima $url berisi url tujuan dan akan mengembalikan html nya, sebenarnya kita bisa menggunakan fungsi file($url).
01function getURL($url, $delay=0) {
02    $result = "";
03    $url    = trim($url);
04    $delay  = intval($delay);
05    if ($url != "") {
06        $ch     = curl_init();
07        curl_setopt($ch, CURLOPT_URL, $url);
08        curl_setopt($ch, CURLOPT_HEADER, 0);
09        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
10        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
11        curl_setopt($ch, CURLOPT_MAXREDIRS, 5);
12        if ($delay != 0) {
13            curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);
14            curl_setopt($ch, CURLOPT_TIMEOUT, $delay);
15        }
16        else {
17            curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);
18            curl_setopt($ch, CURLOPT_TIMEOUT, 60);
19        }
20        $result = curl_exec($ch);
21        curl_close($ch);
22    }
23
24    return($result);
25}
3. Pemarsing (pemroses) hasil downloadan
Fungsi parseHTML akan menerima string html kemudian mengekstrak semua link yang ada di string tersebut. Link tadi akan diambil domainnya saja untuk kemudian disimpan ke dalam database.
01function parseHTML($html)
02{
03    if (preg_match_all("/<a href=\"(.*?)\"/i", $html, $match)) {
04        foreach ($match[1] as $row) {
05            $domain = getDomain($row);
06            if ($domain != '')
07            {
08                db_insert_url($domain);
09            }
10        }
11    }
12}
Berikut ini adalah source code lengkapnya.
001<?php
002
003$db = mysql_connect('localhost', 'phpkita', 'phpkita');
004mysql_select_db('db_phpkita', $db);
005
006//loop terus aja
007while (true)
008{
009    $url = db_get_url();
010    $html = getURL($url);
011    db_update_html($url, $html);
012    parseHTML($html);
013}
014
015mysql_close($db);
016exit;
017
018/*
019 * fungsi-fungsi
020 */
021function db_get_url()
022{
023    $sql = "SELECT id, url FROM tbl_url WHERE status='0' ORDER BY id LIMIT 1";
024    $rs = mysql_query($sql);
025    $url = '';
026    if ($data = mysql_fetch_array($rs))
027    {
028        $url = $data['url'];
029
030        $sql = "UPDATE tbl_url SET status='1' WHERE id='". $data['id']. "' ";
031        $rs = mysql_query($sql);
032    }
033    if ($url == '') $url = 'http://planet.terasi.net';
034
035    return $url;
036}
037
038function getURL($url, $delay=0) {
039    $result = "";
040    $url    = trim($url);
041    $delay  = intval($delay);
042    if ($url != "") {
043        $ch     = curl_init();
044        curl_setopt($ch, CURLOPT_URL, $url);
045        curl_setopt($ch, CURLOPT_HEADER, 0);
046        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
047        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
048        curl_setopt($ch, CURLOPT_MAXREDIRS, 5);
049        if ($delay != 0) {
050            curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);
051            curl_setopt($ch, CURLOPT_TIMEOUT, $delay);
052        }
053        else {
054            curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);
055            curl_setopt($ch, CURLOPT_TIMEOUT, 60);
056        }
057        $result = curl_exec($ch);
058        curl_close($ch);
059    }
060
061    return($result);
062}
063
064function parseHTML($html)
065{
066    if (preg_match_all("/<a href=\"(.*?)\"/i", $html, $match)) {
067        foreach ($match[1] as $row) {
068            $domain = getDomain($row);
069            if ($domain != '')
070            {
071                db_insert_url($domain);
072            }
073        }
074    }
075}
076
077function db_insert_url($url)
078{
079    $url = mysql_real_escape_string($url);
080    $sql = "INSERT INTO tbl_url (url, html, status) VALUES ('$url', '', '0')";
081    $rs = mysql_query($sql);
082}
083
084function db_update_html($url, $html)
085{
086    $url = mysql_real_escape_string($url);
087    $html = mysql_real_escape_string($html);
088    $sql = "UPDATE tbl_url SET html='$html' WHERE url='$url' ";
089    $rs = mysql_query($sql);
090}
091
092function getDomain($url)
093{
094    $result = '';
095    if (preg_match("/^(http:\/\/[\d|\w|-|_|.]+)/i", $url, $match)) {
096        $result = $match[1];
097    }
098    return $result;
099}
100?>
O, jangan lupa untuk membuat table nya juga.
1CREATE TABLE `tbl_url` (
2  `id` int(8) NOT NULL AUTO_INCREMENT,
3  `url` varchar(128) NOT NULL,
4  `html` text NOT NULL,
5  `status` int(1) NOT NULL DEFAULT '0',
6  PRIMARY KEY (`id`),
7  UNIQUE KEY `url` (`url`)
8) ENGINE=MyISAM;
Demikianlah cara membuat web crawler yang sederhana. Untuk tahap selanjutnya, kamu bisa menambahkan fungsi filter untuk menentukan url mana saja yang akan disimpan dan mana yang akan diabaikan.

sumber

Transmisi Data

Konsep dan Terminologi

clip_image002Transmisi Data terjadi di antara pemancar dan penerima melalui media transmisi. Terdapat dua buah media transmisi: media transmisi terkendali (guided media transmition) dan media transmisi tidak terkendali (unguided media transmition). Media terkendali adalah media yang menyalurkan gelombang transmisi melalui jalur fisik. Contoh media terkendali adalah kabel twisted pair, kabel coaxial, atau kabel fiber optic. Media tidak terkendali, atau yang biasa disebut media nirkabel, adalah media yang menyediakan perantara untuk menyalurkan gelombang elektromagnetik. Contoh media nirkabel adalah WiFi, propagansi melalui udara, atau propagansi melalui ruang fakum.
Terdapat tiga macam transmisi berdasarkan aliran datanya. Transmisi simplex adalah transmisi yang mengirim sinyal hanya secara satu arah. Satu pemancar dapat diterima oleh beberapa penerima data. Transmisi half-duplex merupakan transmisi yang memungkinkan kedua pemancar mengirimkan sinyal sekaligus, namun hanya satu dalam satu waktu. Transmisi full-duplex merupakan transmisi dua arah. Baik pemancar ataupun penerima dapat mengirimkan sinyal secara simultan.
Sinyal merupakan sesuatu yang dihasilkan oleh pemancar dan ditransmisikan melalui media. Berdasarkan grafik fungsi waktu, sinyal dibedakan menjadi dua : sinyal analog dan sinyal digital. Sinyal analog merupakan sinyal yang ditransmisikan terus – menerus dan dengan amplitudo yang bervariasi. Tidak terdapat waktu tenggang saat sinyal ditransmisikan. Sinyal digital merupakan sinyal yang ditramsisikan dengan intensitas sinar yang mampu menstabilkan amplitudo. Pada sinyal digital, data ditransmisikan dalam bentuk on / off atau 1 / 0.
clip_image002
clip_image004
Gambar 1. Grafik sinyal analog dan digital
Pada suatu periode, grafik amplitudo pada sinyal mengalami pengulangan. Secara matematis, syarat sinyal yang memiliki suatu periode adalah jika dan hanya jika
clip_image006 , clip_image008
untuk T merupakan periode sinyal.

Transmisi Analog dan Digital

Data merupakan entitas yang menyampaikan maksud dari informasi. Sinyal merupakan data yang direpresentasikan dalam bentuk elektrik atau elektromagnetik. Signialing merupakan propagasi fisik sinyal sepanjang media yang memungkinkan. Sedangkan transmisi adalah komunikasi data melalui pemrosesan dan propagasi sinyal.
Sinyal analog memiliki nilai yang berkelanjutan dalam beberapa interval. Contoh sinyal analog adalah sinyal telepon, sinyal televisi, dan sinyal radio. Sinyal digital memiliki nilai diskrit, contohnya text dan integers.
clip_image010
Gambar 2. Spektrum Akustik pada Suara dan Musik [CARN99a]
Audio merupakan contoh sinyal analog. Gambar 2 menjelaskan spektrum akustik suara manusia dan musik. Suara manusia ditransmisikan dengan frekuensi sekitar 100Hz – 7kHz. Suara manusia ini memiliki tingkat densitas suara sekitar 25dB.
Contoh lain dari sinyal analog adalah video. Televisi merupakan penerima sinyal analog dalam bentuk video. Untuk menghasilkan gambar pada layar, balok – balok eletron memindai seluruh permukaan layar dari atas – bawah dan dari kanan – kiri. Untuk televisi hitam-putih, tingkat penerangan suatu titik ditentukan oleh intensitas balok – balok elektron yang melewati titik tersebut. Oleh karena itu, data video ditransmisikan secara analog untuk menyesuaikan tingkat kecerahan titik – titik di permukaan layar.
Contoh paling umum dari sinyal digital adalah text atau character string. Informasi yang disajikan dalam bentuk text lebih nyaman untuk dimengerti oleh manusia. Oleh karena itu, data binary yang ditransmisikan melalui sinyal digital akan diproses untuk ditampilkan dalam bentuk text. Data telah dirancang sedemikian rupa sehingga karakter dapat direpresentasikan oleh pola byte dari data. Digunakan byte parity untuk menentukan letak kesalahan dalam pengiriman data.
Secara prinsip, signaling secara digital memiliki keunggulan dibanding signaling secara analog. Transmisi digital lebih murah dan lebih terbebas dari noise.Oleh karena adanya redaman dari kekuatan sinyal pada frekuensi yang tinggi, pulsa menjadi lebih bundar dan lebih kecil. Redaman ini mengurangi proses kehilangan informasi yang terkandung pada propagasi sinyal.
Data digital dapat direpresentasikan dengan data analog dengan menggunakan modem (modulator – demodulator). Modem mengubah sinyal binary menjadi sinyal analog dengan melakukan encoding data dalam frekuensi yang membawanya. Hasil sinyal konversinya menempati spektrum dari frekuensi tertentu di tengah – tengah frekuensi yang membawanya. Modem merubah data digital yang berasal dari perangkat komputer menjadi data analog yang selanjutnya disalurkan melalui kabel telepon.
Data analog juga dapat direpresentasikan dalam data digital. Untuk melakukan hal itu, dibutuhkan codec (coder-decoder). Codec mengambil sinyal analog yang secara langsung data suara atau aliran byte. Pada proses akhirnya, aliran byte akan digunakan untuk merekonstruksi data analog.
Baik data analog ataupun data digital hanya dapat ditransmisikan dalam media yang tepat. Cara sinyal – sinyal itu diperlakukan merupakan fungsi sistem transmisi.
Transmisi analog merupakan proses pemindahan sinyal analog tanpa mengurangi kontennya sama sekali. Sinyal dapat berupa data analog (data suara) atau data digital (data luaran modem). Untuk pengiriman jarak jauh, transmisi analog membutuhkan alat penguat (amplifier) untuk meningkatkan energi dalam sinyal. Dampak buruknya adalah amplifier juga meningkatkan noise yang terdapat pada sinyal. Dengan demikian, sinyal yang dikirimkan menjadi lebih kotor.
Transmisi digital merupakan proses pemindahan sinyal digital. Sinyal digital mengandung data – data dalam bentuk biner. Untuk pengiriman jarak jauh, transmisi digital memerlukan alat pengulang (repeater). Alat pengulang menerima sinyal digital, memulihkan kembali pola jajaran byte, dan metransmisi ulang sinyal yang baru. Oleh karena itu, redaman dapat diatasi.
Masing – masing transmisi memiliki keunggulan dan kelemahannya. Akan tetapi, sebagian besar industri telekomunikasi menyatakan bahwa penggunaan transmisi digital lebih efektif daripada penggunaan transmisi analog. Hal ini diperkuat oleh beberapa alasan. Alasan – alasan tersebut antara lain :

· Teknologi Digital

Kemampuan lebih dari Large-Scale Integration (LSI) dan Very Large-Scale Integration (VLSI) telah menyebabkan penurunan yang signifikan dalam aspek dana dan ukuran data digital. Peralatan analog tidak mampu menunjukkan penurunan yang mirip.

· Integritas Data

Penggunaan repeater lebih sering daripada penggunaan aplifier sehingga noise atau ketidaksesuaian sinyal yang lain tidak akan dikomulatifkan. Dengan demikian, sangat mungkin untuk mengkomunikasikan data dengan jarak yang lebih jauh melalui media yang kualitasnya lebih rendah dengan tetap menjaga integritas dari seluruh data.

· Kapasitas Penggunaan

Pembangunan jejaring transmisi pada bandwidht yang sangat tinggi, misalnya fiber optic atau kanal satelit, tergolong murah. Multiplexing tingkat tinggi diperlukan untuk memanfaatkan kapasitas penyimpanan secara efektif. Dengan menggunakan transmisi digital, hal ini akan menjadi lebih murah dan lebih mudah daripada dengan menggunakan transmisi analog

· Sekuritas dan Privasi

Teknik enkripsi dapat dengan mudah diterapkan pada transmisi digital daripada pada transmisi analog.

· Integrasi

Dengan memperlakukan baik data analog ataupun data digital secara digital, semua sinyal memiliki bentuk yang sama dan dapat diperlakukan dengan cara yang sama. Pengefektifan sisi ekonomi dapat dioptimalkan salah satunya dengan cara mengintegrasikan suara, video, dan seluruh data digital.

Penurunan Transmisi

Dengan sistem telekomunikasi yang berbeda – beda, sinyal yang diterima juga berbeda dengan sinyal yang dikirim. Hal ini dikarenakan oleh penurunan transmisi yang bervariasi. Untuk transmisi analog penurunan transmisi dapat mengakibatkan turunnya kualitas sinyal. Untuk transmisi digital penurunan transmisi dapat menyebabkan terjadi galat pada data yang dikirim.
Penurunan transmisi dapat berupa disorsi pada redaman, disorsi dalam waktu tenggang, atau noise.
Kekuatan sinyal dapat menurun pada saat dikirim melalui media transmisi. Untuk media terkendali, penurunan bersifat eksponensial. Untuk media yang tidak terkendali, redaman merupakan fungsi jarak yang lebih kompleks.
Untuk menerapkan redaman sinyal terdapat tiga pertimbangan. Pertama, sinyal yang diterima harus memiliki kekuatan yang cukup sirkuit elektronik dalam penerima dapat mendeteksi sinyal. Kedua, sinyal harus memastikan tingkat kecukupan sinyal lebih besar daripada tingkat noise. Ketiga, redaman diterapkan pada frekuensi yang bervariasi.
Disorsi redaman dapat menurunkan kualitas transmisi sinyal digital. Frekuensi pada kekuatan sinyal digital akan turun secara cepat. Sebagian besar konten akan dikonsentrasikan dekat pada daerah frekuensi dasar atau bit rate dari sinyal.
Disorsi waktu tenggang terjadi karena kecepatan propagasi sinyal melewati media transmisi bervariasi dalam hal frekuensi. Untuk sinyal bandlimited, kecepatan cenderung berada pada bagian tengah dari frekuensi atau pada tepi – tepi gelombang. Oleh karena itu, frekuensi komponen yang bermacam – macam akan ditangkap oleh penerima pada waktu yang berbeda – beda. Hal ini menyebabkan adanya pergeseran fase di antara frekuensi yang berbeda – beda.
Efek dari disorsi waktu tenggang terjadi karena waktu tenggang yang bervariasi dan frekuensi yang konstituen menyebabkan sinyal yang diterima mengalami disorsi. Disorsi waktu tenggang merupakan masalah khusus bagi transmisi sinyal digital. Disorsi waktu tenggang akan menyebabkan interferensi di antara simbol – simbol karena penempatan informasi bit yang salah. Hal ini akan menjadi pemicu akan adanya keterbatasan pada pengiriman data digital.
clip_image012

Gambar 3. Disorsi Redaman dan Disorsi Waktu Tenggang pada Transmisi Suara
Teknik equalizing dapat digunakan untuk menanggulangi disorsi waktu tenggang. Hal ini diterapkan dengan menggunakan kabel, sebagai media transmisi, yang lebih pendek. Gambar 3 menjelaskan efek dari teknik equalizing pada waktu tenggang dalam fungsi frekuensi.
Untuk beberapa even transmisi data, sinyal yang diterima mungkin tersusun atas sinyal yang dikirim, dengan sedikit perubahan yang disebabkan oleh sistem transmisi ditambah dengan penetrasi sinyal lain yang tidak diinginkan selama berada di media transmisi. Istilah dari sinyal lain yang tidak diinginkan disebut dengan noise.
Noise dibagi menjadi empat katagori: thermal noise, intermodulation noise, crosstalk, dan impulse noise.
Thermal noise merupakan noise yang terjadi karena agitasi suhu pada elektron. Hal ini dapat terjadi di seluruh media elektronik yang berperan sebagai media transmisi. Termal noise tidak dapat dihilangkan sehingga akan ditempatkan pada batas atas (upper-bound) pada perform sistem komunikasi. Thermal noise sangat berdampak pada komunikasi dengan menggunakan sistem satelit bumi.
Intermodulation noise merupakan noise yang dihasilkan oleh transmisi yang tidak linear pada media transmisi. Idealnya, baik pemancar ataupun penerima harus bersifat linear sehingga sinyal luaran setara dengan sinyal masukan. Akan tetapi, pada kenyataannya sinyal luaran menjadi lebih kompleks daripada sinyal masukan. Sifat tidak linera ini dapat disebabkan oleh kesalahan komponen atau ketidakmuatan kekuatan sinyal.
Crosstalk terjadi pada saat seseorang melakukan panggilan dengan menggunakan telepon tetapi bisa mendengarkan obrolan – obrolan lain. Crosstalk merupakan kesalahan pada pemasangan pemancar dan penerima sinyal. Hal ini terjadi pada pemasangan elektrik yang berada pada media kabel twisted pair atau coaxial yang membawa banyak sinyal.
Impulse noise terjadi karena gangguan pada sinyal elektromagnetic, seperti gangguan halilintar pada sistem telekomunikasi. Impulse noise pada umumnya adalah masalah kecil pada transmisi analog. Misalnya, transmisi suara akan sedikit terganggu karena adanya halilintar di sekitar media transmisi. Pada transmisi digital, impulse noise dapat mengubah informasi bit yang dikirimkan. Bit yang semula bernilai 1 dapat berubah menjadi 0 dengan tidak terprediksi sebelumnya.

Daftar Pustaka

Stallings William. Data and Communication 8th edition. Pearson – Prentice Hall.

sumber