Welcome to Riky HangOut

Minggu, 27 Mei 2012

Perbandingan 3 CMS ( Jomlaa, Wordpress, Drupal )


Saat ini membuat Website terasa lebih mudah dari sebelumnya karena adanya CMS (Content Management System). CMS adalah sebuah aplikasi software yang digunakan untuk meng-upload, mengedit, dan mengelola konten untuk ditampilkan pada sebuah web.
Sebuah CMS dapat melakukan berbagai tugas yang berbeda untuk sebuah web diantaranya mengatur kapan konten akan ditampilkan, berapa kali konten ditampilkan untuk pengguna tertentu, dan mengatur bagaimana konten menghubungkan atau berinteraksi dengan elemen lain dari website tersebut. Software ini juga memudahkan orang awam untuk mengelola konten pada sebuah website dengan mudah tanpa harus memiliki pengetahuan tentang bahasa pemrograman web.
Keuntungan menggunakan CMS adalah menjaga website terorganisasi dengan baik dan komprehensif, mengurangi biaya pemeliharaan website tersebut, dan meningkatkan keamanan data.
Ada beberapa CMS tapi disini saya menerangkan hanya 3 yang populer bisa anda download dan gunakan secara gratis. Anda bisa memilih salah satu untuk membuat website sesuai dengan kebutuhan :

  •  Joomla!
Joomla! adalah salah satu aplikasi CMS terbaik dan paling banyak digunakan saat ini. Sangat cocok untuk membuat website perusahaan atau intranet, majalah online, web portal berbasis komunitas dan forum, dan banyak lagi. Joomla! memiliki banyak fitur serta banyak pilihan modul dan komponen tambahan yang akan meningkatkan kualitas website Anda dan akan meningkatkan kepuasan pengunjung website.

  •  WordPress
WordPress adalah aplikasi CMS untuk blog yang paling populer. Karena popularitasnya dan memiliki komunitas yang sangat besar, pengembangan CMS ini sangat pesat. Dan saat ini Anda dapat menggunakan WordPress untuk mengelola konten website yang kompleks.

  • Drupal
Dengan Drupal Anda dapat dengan mudah membangun berbagai jenis halaman website – dari membuat blog sederhana sampai forum online dengan komunitas yang besar. Desain Drupal memang tidak sebagus Joomla!, tapi sangat mudah untuk di-customize. Drupal memiliki beberapa modul tambahan yang menarik, seperti untuk search tool dan search-engine friendly URL, dan agregator berita.


KELEBIHAN dan KEKURANGAN di antara 3 CMS di atas :
  •  Jomlaa!
Joomla sangatlah berkembang dan banyak fitur yang disediakan dalam pembangunan sebuah website, dalam pembuatan website pada CMS joomla ini ada beberapa kelabihan dan kekurangannya.

Kelebihan pembuatan website pada joomla adalah :
     1.  Merupakan salah satu open source CMS dengan fitur yang powerfull
     2.  Penggunanya dari seluruh dunia baik itu dalam simple website sampai aplikasi yang komplek
     3.  Gaya pembuatan yang bisa dibilang murah
     4.  Kemudahan dalam instalisasi yang bisa secara online atau offline sehinnga computer yang kita
           gunakan hanya membutuhkan server sperti WAMP
     5.  Dapat digunakan secar gratis dan hanya membayar web hosting
     6.  Component dan modul yang bisa kita dapat secara gratis
     7.  Kemudahan dalam pembentukan website baik dengan cara object-class ataupun dengan system
          pemrograman yang lainnya. Sehinnga serumitnya aplikasi bisa ditangani tanpa harus kita mempelajari
          tentang API Joomla.
Kekurangan pembuatan website pada joomla adalah :
     1.  Fasilitas multisite tidak tersedia pada joomla
     2.  Keterbatasan sebuah ACL (access control list)
     3.  Kurangnya chace memory yang disediakan.
     4.  Tidak adanya fasilitas tracker
     5.  Jarang dalam urutan pertama dalam search engine.

  • Wordpress
Wordpress adalah yang paling populer open source dan software blogging bebas. Wordpress dibuat dengan PHP menggunakan MySQL. Hal ini berkembang menjadi hosting blogging terbesar di dunia, digunakan pada ratusan ribu situs dan dilihat oleh puluhan juta orang setiap hari. Berikut adalah daftar tema bebas, ekstensi, dan plugin untuk Wordpress.

Wordpress menawarkan lebih banyak fitur. Wordpress tidak diragukan lagi platform yang paling populer saat ini untuk manajemen konten atau blogging. WordPress adalah sebuah raksasa industri, dengan memiliki plug-in yang banyak dan koleksi tema platform.

Kelebihan CMS pada Wordpress adalah :

     1.  FULL SEO Friendly
     2.  Instalasi Mudah
     3.  Ramah antarmuka pengguna grafis (GUI)
     4.  Pengeolaan artikel, komentar, dan blog lebih mudah
     5.  Ringan dan mudah digunakan

Kekurangan CMS pada Wordpres adalah :

  1.  Artikel lebih "Bloggy" diurutkan berdasarkan tanggal publich
  2.       Terbatas pada komponen / ekstensi
  3.  Ringan / terbatas daya
  4.       Terbatas pada bagian-bagian lain Administrasi

  • Drupal
Sebagai perangkat lunak open source drupal bebas digunakan oleh siapa saja inilah yang membuat orang tertarik, tapi ini bukan satu-satunya faktor penentu kelebihan drupal dibanding dengan CMS lain. Yang membuat Drupal ( Content Management System ) menjadi favorit untuk pengembangan web adalah fitur fleksibilitas yang memungkinkan tingkat lanjutan dari konfigurasi untuk pengembangan situs web yang kompleks.
Pengembangan website jadi jauh lebih mudah di Drupal karena pengembang diberikan kebebasan untuk mempersiapkan kebutuhan fitur dan prediksi kebutuhan situs dimasa depan. Lingkup dan batasan dalam open source menjadi keuntungan terbesar bagi pengguna Drupal adalah hak guna tanpa batas, lisensi drupal pun memberi peluang bagi siapapun untuk mengembangkan sesuai kebutuhan.

Keunggulan CMS pada Drupal adalah :
  1.       Diklaim sebagai cms terbaik saat ini dan mengalahkan Joomla.
  2.             Digunakan oleh website yang sederhana hingga website profesional.
  3.             Mudah dioperasikan
  4.       Dapat dijalankan di komputer lokal.
  5.       Banyak pluggin tambahan.
  6.       Template dapat dirubah-rubah sekehendak hati dan dapat membuat template sendiri.
  7.       Mendukung SEF (search engine friendly) secara default, sehingga lebih mudah ditemukan di search engine. 
           Kekurangan CMS pada Drupal adalah :

           1.      Penggunanya tidak terlalu banyak, terutama di Indonesia.
           2.      Plugginnya tidak sebanyak Joomla.


»»  read more

Minggu, 01 April 2012

Perkembangan Website

Web 1.0 adalah versi pertama dari web, terkadang juga dikenal sebagai web informasi yang dikembangkan dari tahun 1991 . berbeda dari web 2.0, web sosial, yang muncul sekitar tahun 2000. Web 1.0 pada dasarnya merupakan sumber informasi yang dibuat oleh sejumlah penulis untuk sejumlah pengguna yang sangat besar. Web 1.0 hanya terdiri dari halaman web statis dengan sedikit ruang untuk interaktivitas nyata. Dengan demikian, berfungsi seperti sebuah buku referensi besar, atau memang seluruh perpustakaan buku referensi.

Implementasi pertama dari web merupakan 1,0 Web, yang, menurut Berners-Lee, dapat dianggap sebagai "read-only web." Dengan kata lain, web awal memungkinkan kami untuk mencari informasi dan membacanya. Ada sangat sedikit jalan interaksi pengguna atau kontribusi konten. Namun, ini adalah apa yang pemilik situs web yang paling dicari. Tujuan mereka untuk sebuah situs web adalah untuk mendirikan sebuah kehadiran online dan membuat informasi mereka tersedia bagi siapa saja disetiap saat.

Pertama, mari kita mendefinisikan Web 2.0. Istilah "Web 2.0" kurang lebih bermerek dengan open source dan freeware advokat Tim O'Reilly pada 2004 konferensi pers-nya. Para pemasok utama media sosial, yaitu, Twitter, Facebook, dan Youtube, berada di pusat keindahannya, tetapi Web 2.0 mencakup blog, tag, wiki, RSS, dll. Sungguh, filosofi Web 2.0 adalah tentang konten yang dibuat pengguna dan menolak pasif browsing. Ini tentang kustomisasi dan spesialisasi. Web 3.0 memiliki sejumlah definisi yang berbeda, tapi penjelasan (dan sederhana) yang paling populer tampaknya bahwa itu campuran virtual dunia online dan offline. Contoh ini mungkin komputer Anda mengingat selera dan minat Anda, sehingga browser Anda menjadi seperti asisten pribadi ketika Anda mencari atau mencari rekomendasi. Yang paling penting, Web 3.0. adalah peningkatan eksponensial dalam kecerdasan komputer, ke titik di mana komputer akan dapat beralasan dan menganalisis. Tapi mereka akan lebih baik dan lebih efisien dalam hal itu.

Generasi web terus berkembang dari web 1.0 , 2.0 , 3.0 sampai saatnya akan ada generasi web 4.0. Menurut Nils Müller, CEO TrendOne, sebuah perusahaan analisis trend mikro di Jerman mengatakan sebuah masa depan dimana teknologi dan manusia menjadi satu akan segera tiba. Bukti dari generasi ‘4.0’ dunia yang selalu berjalan dimana manusia meningkatkan dirinya melalui ekstensi teknologi yang dilakukan oleh generasi muda, tambah Müller. Generasi web 4.0 akan disebut juga dengan WebOS dimana kecerdasan intelegensi menjadi landasannya. Dimana setiap web akan berinteraksi dengan cerdas satu sama lain. Web cerdas ini melibatkan individu dalam web. Kemungkinan web 4.0 ini memiliki aspek sebagai berikut:

            Perkembangan teknologi informasi yang kian pesat memacu munculnya situs baru yang dapat diakses melalui jaringan internet. Data dari survey yang dilakukan oleh Netcraft (http://news.netcraft.com/archives/web_server_survey.html) menunjukkan bahwa sampai pada bulan Maret 2008 ini jumlah website telah mencapai angka 162.662.052 situs dengan 4,5 juta situs baru pada bulan ini. Hal ini memungkinkan jumlah situs baru pada tahun 2008 ini mencapai 60 juta situs atau meningkat 20% dari perkembangan tahun 2007 yang mencapai 50 juta situs baru. Perkembangan jumlah situs ini tidaklah mengherankan karena semakin banyaknya orang yang melakukan blogging baik melalui Google, blogspot.com, ataupun MySpace. Namun demikian, situs yang benar-benar aktif pada bulan Maret 2008 hanyalah 65,6 juta atau 40,33% dari jumlah total situs.
            Dengan perkembangan jumlah situs yang luar biasa besar ini menuntut para pemrogram web (web programmer) untuk selalu berkreasi menciptakan ide-ide baru baik dalam desain layout, penggunaan aplikasi server web, maupun operating system yang dipakai, agar situs yang dibangunnya tidak kandas dalam persaingan.
            Saat ini banyak sekali bahasa pemrogaraman web yang dipakai untuk membangun sebuah situs. Bahasa pemrograman yang dipakai antara lain Hyper Text Markup Language (HTML), Dynamic HTML (DHTML), eXtesible Markup Language (XML), XHTML, PHP (PersonalHome Page: Hypertext Preprocessor), CGI (Common Gateway Interface), Perl (Practical Extraction and Report Language), ColdFusion, ASP (Active Server Page), Java, JHTML.
            HTML sebenarnya bukanlah bahasa pemrograman namun hanyalah bahasa markup. Bahasa HTML adalah bahasa yang sederhana dan hanya memiliki sedikit kesulitan. Bahasa yang merupakan dasar dari framework Internet ini ditemukan oleh Tim BernersLee pada tahun 1989. Hampir setiap situs web menggunakan bahasa ini, entah sekedar menampilkan teks, animasi, tampilan grafis, ataupun suara. Bahasa HTML sebenarnya berasal dari bahasa lama yang disebut dengan SGML (Standard Generalized Markup Language). Namun perkembangan HTML sudah dimulai sejak kurang lebih 10 tahun bahasa tersebut diperkenalkan. Sedangkan DHTML adalah bahasa yang bisa diakses dan dimodifikasi oleh bahasa script seperti Vbscript, Javascript. DHTML sering dimanfaatkan untuk menampilkan animasi-animasi seperti efek text, perubahan warna, dan lain sebagainya. Bahasa ini sering juga disebut sebagai versi objek dari HTML. XML adalah bahasa yang sifatnya lebih terbatas daripada elemen-elemen HTML. Dengan XML, orang bisa menentukan elemen-elemennya sendiri lalu kemudian mengembangkannya. XML saat ini biasa dijumpai pada aplikasi RSS (Really Simple Syndication).
            Bahasa ini masih dalam pengembangan. XHTML merupakan gabungan dari bahasa HTML dan XML. Seperti halnya XML, bahasa ini juga masih tergolong baru namun diramalkan akan sangat berperan dalam mewarnai dunia web di masa depan. Info selengkapnya mengenai bahasa ini bisa ditemukan di www.w3r.org. Bahasa pemrograman web yang paling populer saat ini adalah PHP. PHP ditulis oleh Rasmus Lerdorf pada tahun 1994 yang pada awalnya ia gunakan untuk mencatat jumlah pengunjung situs yang membuka halaman resumenya. Ia kemudian menulis ulang kode-kodenya dengan bahasa C yang kemudian menjadikan bahasa itu menjadi lebih kaya kemampuan. Barulah setelah itu banyak bermunculan tokoh-tokoh yang berjasa dalam perkembangan PHP seperti Zeev Suraski dan Andi Gutmans yang menulis kembali parsing engine unuk menciptakan PHP versi 3. PHP kemudian menjadi modul Apache yang paling sering digunakan. Saat ini sedang dikembangkan PHP versi 5.2.5 dan PHP 4.4.8.
            CGI (Common Gateway Interface) merupakan standar internet tertua dan paling berkembang sebagai suatu alat lewatnya informasi dari web server ke suatu program dan mengembalikan hasilnya ke browser. Suatu program CGI dapat ditulis dengan bahasa-bahasa Perl, Java, C, C++, Scriptscript UNIX, Visual Basic, MacOS atau AppleScript. Karena itulah CGI sebenarnya kurang tepat jika dikategorikan sebagai bahasa karena program CGI sendiri dapat ditulis menggunakan beragam bahasa. PERL merupakan bahasa pemrograman tingkat tinggi yang ditemukan oleh Larry Wall (1987). PERL memiliki kemampuan untuk dapat diterapkan pada hampir semua jenis Operating System dan yang terpenting, PERL bisa didapatkan secara free. Dalam aplikasinya eksekusi PERL biasa dijalankan dengan CGI (Common Gateway Interface) sebagai mekanisme untuk menampilkan output text ke browser.
            Coldfusion adalah sistem pengembangan aplikasi yang dikembangkan oleh Alaire. File Coldfusion ini memiliki ekstensi CFM. File-file CFM disimpan dalam bentuk plain text, sama halnya seperti PERL dan PHP sehingga siapapun dapat melihat isinya. ASP diciptakan khusus bagi server IIS milik microsoft, namun demikian saat ini server Apache::ASP yang ditulis dengan bahasa Perl sudah dapat menangani file ASP. Bahasa ini merupakan bahasa pemrograman web yang dinamis. ASP dapat digunakan untuk mengeksekusi beragam request terhadap suatu database atau perintah-perintah pada system lokal. JHTML adalah bahasa standard JavaSoft keluaran SUN yang diciptakan untuk mengikutsertakan Java dalam sebuah file HTML. Bahasa ini memiliki tag tersendiri yang diproses sebelum mengirimkan output pada browser. JHTML hampir mirip dengan HTML, hanya saja memiliki tambahan tag <Java>.
            Selain bahasa pemrograman yang harus dipilih, untuk membangun sebuah website yang dinamis diperlukan sebuah basis data (database). Saat ini tersedia berbagai database yang dapat diaplikasikan untuk pemrograman web baik yang berbayar seperti Oracle, Microsoft Access, Microsoft SQL Server maupun yang gratis (free) seperti MySQL, PostgreSQL. Banyak programer web yang saat ini memilih database gratis seperti MySQL karena kemudahan akan penggunaan, referensi, dan di samping karena faktor ketenarannya. Tatacara dan mekanisme penggunaan database dalam pemograman web tidak akan dijelaskan dalam makalah ini.

Kriteria Web dan Aspek Keamanan

            Website yang baik harus memenuhi kriteria dalam aspek fungsionalitas, desain, konten, orisinalitas, profesionalisme dan keefektivan. Sesuai dengan kriteria dalam penghargaan website terbaik tingkat dunia (World Best Website Awards), aspek fungsionalitas yang dinilai meliputi: keteraksesan, kecepatan dan bandwidth, kualitas HTML, navigasi dan link, dan legalitas. Sedangkan dalam aspek desain, subaspek yang dinilai adalah desain grafis, user friendliness, beauty, layout, dan integritas. Dari segi konten, termasuk aspek yang dinilai adalah tujuan, interaktivitas manusia, proses informasi, ekspresi verbal, ketersediaan konten secara detail. Dalam aspek orisinalitas, subaspek yang dinilai adalah inovasi, kreativitas, teknologi, dan visi. Untuk aspek profesionalisme dan keefektivan meliputi customer service dan respon client, nilai, focus, komponen tambahan, dan keefektifan situs secara keseluruhan. Kriteria-kriteria tersebut dinilai untuk penilaian level 1. Untuk penilaian level berikutnya aspek yang paling penting adalah sekuritas server dan rangking search engine. Dengan demikian aspek aspek tersebut di atas dapat dijadikan acuan dalam pembangunan sebuah website yang baik, sehingga peran programer web dalam hal ini sangat penting.

Konsistensi dalam Basis Data

            Banyak programer yang kurang menyadari konsistensi data ketika membangun sebuah aplikasi berbasis web. Padahal konsistensi data adalah sesuatu yang sangat penting agar output yang dikeluarkan sesuai dengan yang diharapkan. Hal ini akan semakin bertambah sensitif jika aplikasi kita berhubungan dengan nasib seseorang atau paling tidak berkaitan dengan masalah uang. Sebagai sebuah ilustrasi, maka akan dikemukakan sebuah contoh kasus pengisian KRS yang terjadi di Unnes pada tiap semester.
            Unnes menggunakan sistem rombel (rombongan belajar), sebuah sistem yang kurang lebih sama dengan sistem kelas pada jaman dahulu. Dengan sistem rombel, peserta yang mengikuti suatu mata kuliah X dibatasi sesuai dengan kapasitas ruang yang tersedia. Misalkan mata kuliah X tersebut memiliki kapasitas maksimum 50 orang. Pengambilan MK dilakukan dengan melakukan request ke server tentang MK yang akan diambil dengan mengklik link yang disediakan. Dengan model ini, maka besar kemungkinan dalam satu waktu yang bersamaan terdapat sejumlah banyak user mahasiswa yang melakukan klik mata kuliah yang sama. Jika itu terjadi pada saat jumlah pengikut baru mencapai kurang dari 49 peserta, maka konsistensi data mungkin masih terjaga. Masalah akan timbul jika peserta sudah mencapai 49 orang sehingga masih ada sisa 1 orang yang bisa tertampung, padahal dalam satu waktu tersebut terdapat 10 orang yang sedang klik MK X. Jika semua counter untuk seluruh mahasiswa mengatakan peserta baru 49 orang, maka apakah kesepuluh tersebut akan dicatat sebagai peserta MK tersebut? Tentu tidak. Jika semua diterima, maka peserta yang terdaftar sebanyak 59 orang yang sudah barang tentu melebihi kapasitas ruang. Jika tidak semua peserta diterima sebagai peserta mata kuliah X, maka siapa yang harus diterima? Jawabnya adalah sistem transaksi basis data (database transaction). Masalah yang hampir sama dapat terjadi dalam banyak kasus dalam kehidupan seharihari, seperti yang terjadi saat 'transaksi' di bank.
            Idealnya, sebuah basis data harus memenuhi syarat ACID yaitu: atomicity (transksi dikerjakan semua atau tidak sama sekali), consistency (seluruh transaksi harus terintegral sesuai dengan konsistensinya), isolation (suatu proses tidak boleh mencampuri proses yang lain), durability (transaksi tidak dapat dibatalkan kemudian atau hasil yang diperoleh diabaikan). MySQL sebagai salah satu database yang sangat populer dipakai oleh para pemrogram web telah mendukung transaction. Agar proses transction dalam sebuah tabel berjalan, maka tabel tersebut harus bertipe InnoDB. Untuk itu pada saat membuat tabel yang diperlukan dalam aplikasi perlu didefinisikan tipe dari tabel tersebut, karena secara default tipe tabel di MySQL adalah MyISAM.
»»  read more

Followers

 

Copyright © 2015 by Riky HangOut

Fiance Nina Latifah | Powered by Blogger