Kamis, Mei 05, 2011

Install Skype Pada Ubuntu

Gara-gara iri melihat rekan-rekan di KPLI Bogor ngobrol dan bertelepon ria, akhirnya saya pun terpengaruh ikut-ikutan memasang Skype pada laptop. Padahal kalau boleh dibilang, saya bukan orang yang senang dengan yang namanya instant messaging. Namun berhubung penasaran, akhirnya saya pasang juga.

Bagi anda pengguna Ubuntu, memasang Linux sangatlah mudah. Mengapa saya katakan mudah? Karena anda bisa langsung memasangnya melalui Synaptic Packet Manager. Eits, tunggu dulu. Agasr bisa langsung memasang Skype melalui Synaptic, anda harus melakuka beberapa langah pendahuluan. Apakah itu? Ini dia langkah-langkahnya.

1. Hidupkan laptop / komputer anda
2. Pastikan laptop / komputer anda tersambung ke jaringan internet

Setelah melakukan langkah di atas, langkah selanjutnya adalah menambah repositori untuk Ubuntu Partner. Bagi anda yang telah menambahkan Ubuntu Partner, anda bisa melewati langkah ini. Tapi bagi anda yang belum, silakan tambahkan baris berikut. Bagi anda yang menggunakan Ubuntu dengan versi yang berbeda, silakan sesuaikan dengan yang anda gunakan.

deb http://kambing.ui.ac.id/ubuntu-partner lucid partner

Setelah menambahkan Ubuntu Partner pada repositori, silakan update basis data repositori.

fitra@rabitya:~$ sudo aptitude update

Kamudian, langkah selanjutnya adalah memasang Skype pada Ubuntu yang kita gunakan.

fitra@rabitya:~$ sudo aptitude install skype

Yup, selesai! Berarti sudah bisa digunakan dong? Tentu saja belum. Lho, koq? Kita harus memiliki akun Skype untuk menggunakannya. Caranya? Anda cukup mendaftarkan diri anda di situs Skype. Kalau sudah punya akunnya, baru anda bisa menggunakan Skype dengan leluasa.

Nah, sudah siap untuk ber-Skype ria? Jangan lupa tambahkan akun Skype saya (fitraaditya) pada daftar kenalan anda ya... :)

Minggu, Mei 01, 2011

Mengganti Suatu String Pada Berkas Teks Dengan Sed

Ketika anda ingin mengganti string tertentu pada suatu berkas teks, apa yang biasa anda lakukan? Mungkion sebagian dari anda akan membuka berkas teks tersebut menggunakan teks editor (misalkan saja gedit), kemudian mengganti string yang hendak diganti menggunakan fitur Find and Replace bawaan teks editor. Hm, tapi tahukah anda bahwa di Linux terdapat fasilitas yang memungkinkan kita mengganti string pada suatu berkas teks tanpa perlu membuka berkas tersebut? Kalau anda belum tahu, mari saya beri tahu. :)

Namanya sed, alias stream editor. Salah satu fungsinya adalah seperti yang sudah saya sebutkan di atas. Untuk fungsi lainnya, anda bisa menemukannya sendiri di petunjuk penggunaan sed ini. Cukup dengan:

fitra@rabitya:~$ man sed

Cara penggunaannya adalah sebagai berikut. Misalkan saya memiliki sebuah berkas teks yang berisi tulisan

fitra@rabitya:~$ cat rabitya.teks
Fitra Aditya jelek
Fitra Rabitya jelek
Sekali jelek, tetap jelek

Kemudia saya ingin mengganti kata 'jelek' di atas dengan kata 'ganteng' (narsis dikit :D). Cara menggantinya cukup melalui terminal dengan mengetikkan perintah berikut.

fitra@rabitya:~$ sed 's/jelek/ganteng/g' rabitya.teks

Nah, kemudian lihat hasilnya.

fitra@rabitya:~$ cat rabitya.teks
Fitra Aditya ganteng
Fitra Rabitya ganteng
Sekali ganteng, tetap ganteng

Mudah bukan? Jadi, penggunaan sed untuk mengganti string dari sebuah berkas teks adalah sebagai berikut (silakan catat dan diingat).

fitra@rabitya:~$ sed 's/<string_yang_akan_diganti>/<string_pengganti>/g' <path_berkas_teks>

Semoga bermanfaat. :)

Sabtu, April 30, 2011

Panada: PHP Web Framework Asli Indonesia

Bagi anda penggemar PHP, mungkin sudah tidak asing lagi dengan framework PHP. Misalnya CodeIgniter, CakePHP, ataupun yang Zand Framework. Tapi tahukah anda bahwa di Indonesia ada seseorang yang membuat framework PHP serupa? Panada, itulah nama frameworknya.

Dikembangkan dengan PHP 5.3, Panada kini telah dirilis dalam versi 0.3 RC 1. Beberapa keunggulan yang ditawarkan Panada di antaranya, open source, ringan, dan cepat. Dukungan untuk berbagai jenis DBMS lumayan banyak. Mulai dari MySQL, PostgreSQl, hingga MongoDB. Cara penggunaannya pun mudah. Bagi anda yang sudah terbiasa dengan framework PHP, saya yakin anda tidak akan menemukan kesulitan ketika menggunakan Panada. Saat ini Panada telah digunakan pada situs Kompasiana.

Satu-satunya kekurangan yang mungkin bisa menjadi perhatian adalah masalah dokumentasi. Ya, sayangnya dokumentasi Panada tidak selengkap CodeIgniter maupun CakePHP. Namun melihat dari umurnya yang masiih terbilang muda, dokumentasi yang disediakan sudah cukup merepresentasikan.

Jika anda  tertari untuk menggunakan dan mempelajari Panada, silakan kunjungi situs resminya. Di sana anda akan menemukan tautan unduhan serta dokumentasi penggunaannya.

Jumat, April 29, 2011

Membuat Badge Kalender Menggunakan PHP

Iseng sore ini saya berkunjung ke salah satu blog sahabat. Di bilah sisinya, saya melihat ada badge (lencana) yeng menampilkan tanggal hari ini. Langsung saja terlintas dalam pikiran saya (ngoprek mode on) bagaimana kalau saya membuat badge serupa. Tanpa menunggu lama, langsung saja saya membuka Geany dan...ngoding pun dimulai.

Cukup sederhana untuk membuat badge seperti itu. Yang kita butuhkan hanyalah gambar latar. Sisanya, serahkan saja pada fungsi bawaan PHP. Oya, karena badge ini memanfaatkan scripting PHP, jadi yang kita butuhkan juga web server yang mendukung PHP dan PHP-GD.

Tanpa perlu banyak basa-basi, langsung saja kita simak barisan kode di bawah ini. Kita simpan kode ini dengan nama tanggal.php. Untuk gambar latarnya, anda bisa mendapatkannya di sini, serta hurufnya di sini dan di sini.

<?php
// Inisiasi tanggal, bulan, dan tahun
date_default_timezone_set('UTC+7');
$penanggalan = getdate();
$hari = $penanggalan[wday];
$tanggal = $penanggalan[mday];
$bulan = $penanggalan[mon];
$tahun = $penanggalan[year];

// Konversi nama bulan
if($bulan==1){ $namabulan = "Januari";}
if($bulan==2){ $namabulan = "Februari";}
if($bulan==3){ $namabulan = "Maret";}
if($bulan==4){ $namabulan = "April";}
if($bulan==5){ $namabulan = "Mei";}
if($bulan==6){ $namabulan = "Juni";}
if($bulan==7){ $namabulan = "Juli";}
if($bulan==8){ $namabulan = "Agustus";}
if($bulan==9){ $namabulan = "September";}
if($bulan==10){ $namabulan = "Oktober";}
if($bulan==11){ $namabulan = "November";}
if($bulan==12){ $namabulan = "Desember";}

// Konversi nama hari
if($hari==0) { $namahari = "Minggu"; }
if($hari==1) { $namahari = "Senin"; }
if($hari==2) { $namahari = "Selasa"; }
if($hari==3) { $namahari = "Rabu"; }
if($hari==4) { $namahari = "Kamis"; }
if($hari==5) { $namahari = "Jum'at"; }
if($hari==6) { $namahari = "Sabtu"; }

// Pembuatan output gambar berformat PNG
header("Content-Type: image/PNG"); 
$img = imagecreatefromPNG("kalender.png");
$fontfile = "YKL.otf";
$fontfiletebal = "YKLB.otf";
$putih = imagecolorallocate($img, 255, 255, 255);
imageTTFText($img, 10, 0, 5, 45, $putih, $fontfile, $namahari);
$hitam = imagecolorallocate($img, 0, 0, 0);
$batas = imageTTFbbox(40, 0, $fontfiletebal, $tanggal);
$x = imageSX($img)/2 - ($batas[0] + $batas[2] + $batas[4] + $batas[6]) / 4;
imageTTFText($img, 40, 0, $x, 100, $hitam, $fontfiletebal, $tanggal);
$batas = imageTTFbbox(10, 0, $fontfile, $namabulan);
$x = imageSX($img)/2 - ($batas[0] + $batas[2] + $batas[4] + $batas[6]) / 4;
imageTTFText($img, 10, 0, $x, 118, $hitam, $fontfile, $namabulan);
$batas = imageTTFbbox(10, 0, $fontfile, $tahun);
$x = imageSX($img)/2 - ($batas[0] + $batas[2] + $batas[4] + $batas[6]) / 4;
imageTTFText($img, 10, 0, $x, 133, $hitam, $fontfile, $tahun);
imagePNG($img);
imagedestroy($img);
?>

Terlihat dari kode di atas bahwa kita hanya memanfaatkan fungsi tanggal yang sudah tersedia pada PHP. Kemudian untuk menghasilkan badge berupa gambar, kita membutuhkan PHP-GD untuk meng-embed keluaran kode tadi ke gambar latar yang sudah disertakan. Selanjutnya, kita hanya perlu meletakkan berkas tanggal.php dan gambar latar tadi ke web server. Cukup dengan mengakses tanggal.php melalui web server, dan tralala...ini dia hasilnya. Anda juga bisa melihat hasilnya pada sidebar blog ini.

Cukup mudah bukan?

Nah, untuk memasang badge tersebut pada blog maupun situs kita, yang perlu kita lakukan adalah meletakkan berkas tanggal.php dan gambar latarnya ke dalam web server publik. Kemudian, dengan menggunakan tag html, kita siap memasang badge buatan sendiri ke dalam blog atau situs kita. Tag html-nya adalah sebagai berikut.

<img style="float:center;" src="http://rabitya.with-linux.com/blog/tanggal.php" alt="Tanggal hari ini" title="Tanggal hari ini" />

Kalau anda malas ngoding, saya sudah menyiapkan berkasnyas di sini.

Keren kan kalau buatan sendiri? Anda bisa mengkreasikan sesuka hati anda. Mulai dari merubah warna, gambar latar, ukuran huruf, maupun jenis huruf. Selamat berkreasi. :)

Selamat Datang Natty Narwhal

Tanggal 28 April 2011, waktu Inggris setempat, merupakan tanggal bersejarah bagi generasi terbaru dari keluarga Ubuntu. Ya, setelah enam bulan berlalu semenjak kelahiran Maverick Meerkat (Ubuntu 10.10), sang adik pun menyusul. Dengan nomor rilis 11.04 (yang menunjukkan bahwa di lahir pada bulan keempat di tahun 2011), Ubuntu kini memiliki keluarga baru yang diberi kode rilis Natty Narwhal. Apa yang spesial dari Natty Narwhal? Banyak! Mari kita kupas satu-persatu.

Natty Narwhal merupakan Linux pertama yang menggunakan desktop environment GNOME generasi terbaru. Dengan mengusung nama Unity, tampilan Natty boleh dibilang sangat jauh berbeda dari versi Ubuntu sebelumnya. Ini merupakan perubahan yang sangat kentara dalam keluarga Ubuntu.

Dengan mengusung GNOME Shell, Unity memberikan pengalaman terbaru bagi penggunanya dalam hal berinteraski dengan desktop interface. Didesain dengan jargon easy to use, unique, inovative, and good looking, pengguna akan menemukan tampilan desktop yang sengaja didesain layaknya desktop netbook. Bagi anda pengguna Ubuntu Netbook Remix dari versi sebelumnya, mungkin anda akan menemukan persamaan pada desktop environment Unity.

Apakah hanya tampilan saja yang berubah? Tentu saja tidak. Jika sebelumnya Ubuntu mengandalkan OpenOffice sebagai perangkat lunak perkantoran, kini Natty mempercayakan perangkat lunak perkantorannya pada LibreOffice. Ya, meskipun antara OpenOffice dan LibreOffice adalah sama, namun beda pengembang.

Aplikasi lainnya yang berubah adalah pemutar media. Jika sebelumnya Ubuntu menggunakan Rythmbox, kini Natty menjatuhkan pilihan hatinya kepada Banshee. Dengan terintgrasi dengan Amazon MP3 dan 7Music, anda bisa membeli lagu secara online layaknya iTunes milik Apple.

Untuk peramban situs, jangan khawatir. Natty masih mengandalkan Mozilla Firefox versi 4, yang boleh saya bilang lebih ringan dibandingkan dengan Firefox versi 3. Dan aplikasi lainnya yang tersedia sudah tidak asing lagi bagi anda para penggemar Ubuntu. Seperti Shotwell Photo Manager, Evolution, Ubuntu One, dan aplikasi bawaan lainnya.

So, tunggu apalagi. Segera upgrade Ubuntu anda Natty, dan rasakan sensasi new desktop environment bersama Unity. Oya, bagi anda yang tidak suka atapun tidak senang dengan tampilan Unity, jangan khawatir. Anda pun masih bisa menggunakan GNOME seperti versi terdahulu. Cukup dengan mengganti session pada login screen.

Kamis, April 28, 2011

Modifikasi Halaman Error 404 Not Found

Error 404 Not Found. Sebuah pesan kesalahan yang sering kali muncul ketika kita mengakses sebuah web server. Error 404 Not Found menandakan bahwa web server tidak dapat menemukan request yang kita minta, yang dalam hal ini bisa berupa halaman, dokumen, maupun HTTP Request lainnya.

Penampakan dari pesan Error 404 Not Found pun terbilang standar. Itu-itu saja dan kurang menarik. Lalu bagaimana jika ingin mengubah dan mempercantik tanpilan pesan Error 404 Not Found? Apakah bisa dipercantik? Jawabannya adalah bisa! Mari kita simak.

Untuk melakukan modifikasi ini, syarat yang wajib dipenuhi adalah web server kita harus mengijinkan penggunakan .htaccess. Jika tidak, maka akan muncul pesan kesalahan Internal Server Error. Berkas .htaccess merupakan distributed configuration file yang berfungsi sebagai konfigurasi bagaimana web server kita diakses di dalam direktori tersebut. Selain itu juga dapat berfungsi sebagai autentikasi halaman, konfigurasi URL, dan lain sebagainya.

Jika syarat di atas dipenuhi, langkah selanjutnya adalah membuat berkas .htaccess. Di sini, kita memanfaatkan fungsi bawaan .htaccess yang akan me-redirect jika terjadi kesalahan. Berkas .htaccess tersebut harus diletakkan pada root directory dari web server. Nah, isi dari .htaccess adalah sebagai berikut:

ErrorDocument 404 /error.html

Dari berkas .htaccess tersebut dapat kita pahami maksudnya bahwa jika terjadi kesalahan dengan kode 404, maka request akan di-redirect menuju ke halaman error.html. Lalu di mana halaman error.html-nya? Tentu halaman tersebut juga harus kita buat. Dan halaman error.html juga harus diletakkan di root directory sama seperti berkas .htaccess. Sebagai contoh, halaman error.html yang saya buat adalah sebagai berikut:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <title>Anda Tersesat?</title>
 <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
 <style type="text/css">
 body {
 }
 #container {
 width: 750px;
 margin: 0 auto;
 font-family: Lucida Grande, Tahoma, Arial, Helvetica, sans-serif; 
 color: #666666;
 background-color: #ffffff;
 border: 4px solid #000000;
 }
 #header {
 background:#ffffff;
 font-size:16px;
 border-bottom:4px solid #000000;
 }
 #header h1 {
 margin-top:30px;
 margin-bottom:10px;
 padding:0px 0px 0px 0px;
 text-align:center;
 background:#ffffff;
 color:#000000;
 font-family: Lucida Grande, Tahoma, Arial, Helvetica, sans-serif; 
 }
 #footer {
 height:50px;
 border-top:solid 2px #000000;
 font-size:12px;
 }
 #footer p,a {
 margin-top:15px;
 color:#000000;
 text-align:center;
 }
 #footer a {
 color:#bdb8b8;
 text-decoration:none;
 }
 #footer a:hover {
 color:#ef2d19;
 }
 .center {
 float: center;
 }
 </style>
</head>
<body>
 <div id="container">
  <div id="header">
   <h1>Anda Tersesat?</h1>
  </div>
  <center><img class="center" alt="Error 404 Not Found" title="Error 404 Not Found" src="404.jpg" /></center>
  <div id="footer">
   <p>Copyleft © 2011 Rabitya | Valid <a href="http://jigsaw.w3.org/css-validator/check/referer">CSS</a>.</p>
  </div>
 </div>
</body>
</html>

Nah, dengan demikian misalkan kita memiliki sebuah website dengan alamat http://rabitya.with-linux.com/, dan ada seseorang yang mengakses halaman http://rabitya.with-linux.com/rabitya-jelek.html, padahal halaman tersebut tidak ada (dan itu artinya saya tidak jelek :D), maka web server secara otomatis akan me-redirect ke halaman http://rabitya.with-linux.com/error.html (dengan catatan sudah ada berkas .htaccess dan halaman error.html sesuai dengan ketentuan di atas).

Contoh bisa anda download di sini. Contoh jadinya bisa anda simak di sini.

Cara ini juga bisa anda terapkan pada pesan kesalahan lainnya, misalkan Error 500 Internal Server Error. Sebagai informasi, pesan kesalahan yang terdapat pada HTTP Request secara lengkap bisa anda temukan di sini.

Sumber gambar: http://compassvgg.com

OCTAVE Approach: Information System Risk Management

OCTAVE (Operationally-Critical-Threat-Asset-Vulnerability-Evaluation)

OCTAVE dikembangkan dibawah program Technology Insertion, Demonstration, and Evaluation (TIDE) yang dikelola untuk Software Engineering Institute oleh John Foreman.

Langkah pertama dalam mengelola resiko keamanan informasi adalah dengan mengenali apakah resiko yang terdapat d iperusahaan itu. Setelah mengidentifikasi resiko maka barulah dibuat penanggulangannya terhadap resiko yang dihadapi. Dengan Metode OCTAVE perusahaan dimungkinkan untuk melakukan semua itu. OCTAVE adalah suatu pendekatan terhadap evaluasi resiko keamanan sistem informasi yang komprehensif, sistematik, dan terarah.

Referensi lebih lanjut bisa anda simak dari beberapa dokumen yang telah saya kumpulkan. Salah satu buku yang cukup terkenal dalam pembahasan OCTAVE adalah Managing Information Security Risks: The OCTAVE Approach. Saya tidak menyertakan versi elektronik dari buku ini, karena memang buku ini dirilis secara komersil. Namun anda bisa membacanya secara online di sini.

Adapun referensi lainnya bisa anda baca melalui publikasi yang diterbitkan oleh CERT - Software Engineering Institute Cerniege Mellon secara gratis.

Well, semoga bermanfaat. :)

Tautan Unduhan:

Senin, April 25, 2011

Tulisan Pertama: Sebuah Perkenalan

Setelah menunggu sekian lama, akhirnya blog ini pun siap untuk lepas landas di dunia maya. Sengaja saya pilih tanggal ini, karena tanggal ini menyimpan kenangan khusus bagi saya pribadi. Apakah itu? Oups, hanya saya dan Allah saja yang tahu. :)

Berhubung ini tulisan pertama, anda tidak akan menemukan sesuatu yang spesial di sini. Namun saya berjanji, dalam waktu ke depan blog ini akan penuh dengan tulisan-tulisan seputar Linux dan F/OSS. Kenapa harus Linux dan F/OSS? Saya jamin, jika kita membicarakan tentang open source, kita akan membicarakan sesuatu yang tak pernah ada habisnya. Ya, dengan open source kita bebas belajar dan berkreasi semau kita. Belajar dan berkreasi untuk membuat sesuatu yang berguna bagi umat manusia. Trust me! I told the truth.

Oya, bagi yang belum mengenal saya, saya sarankan anda tidak mencari saya melalui mesin pencari Google. Karena saya jamin anda tidak akan pernah menemukannya. :)