Selasa, 03 Februari 2009

Standar De-Facto Web

Yang sedang terjadi adalah pergeseran filosofi.
"dari web-platform ke web-framework."
Kandidat standar de-facto adalah Rails, Zope dan Coocon.


Secara umum hubungan-nya adalah:.

          Platform --- Framework -- CMS
Dari suatu Platform bisa dibangun beberapa jenis Framework berbeda. Dari satu Framework dapat dibangun beberapa CMS berbeda. CMS yang sudah jadi tidak dapat diganti frameworknya tanpa mengubah core system CMS itu sendiri. Ini sebabnya usaha membalik proses seringkali tidak sepadan. Ini sebabnya CMS di PHP menjadi kaku. Sangat ironi mengingat tahun 2009 ini CMS berbasis PHP akan sangat laku di pasaran.

Framework di platform PHP kurang bagus karena desain PHP sendiri yang ketinggalan zaman. Sepuluh tahun lalu yang menjadi standar de-facto web-platform adalah ASP dan PHP4. JSP masih merupakan pilihan. Yang kita butuhkan dua tahun belakangan ini adalah standar de-facto untuk web-framework.

Umumnya kita harus mengucapkan selamat tinggal kepada PHP4 maupun ASP. Mengapa? Isunya bukan lagi platform, namun framework. Kalaupun PHP mengeluarkan PHP6, nasibnya akan sama dengan Perl. Arsitektur PHP yang membuat framework di bawahnya tambal sulam. Pengelolaan perubahan requirement di PHP ada di tatar teknis, bukan konsep. Terimakasih PacktPub, sekarang penulis berpindah platform.

Keterlambatan memahami perubahan kebutuhan inilah yang membuat kebanyakan Framework dan CMS tidak menyatu, betapapun hebat features yang dipakai, seradikal apapun konsepnya. Untuk dapat menjadi dasar dari beberapa CMS, suatu Framework harus netral terhadap konsep dalam CMS, tidak terpaku dengan feature-nya.

Jadi masalahnya adalah pergeseran kebutuhan. Lingkup sekarang tidak memenuhi requirement. Requirement sekarang adalah framework yang mendukung pembuatan CMS.


Solusi
"Ganti framework. Keluar lingkup."

Tentunya secara langsung harus ganti platform (bahasa pemrograman) juga. Tiap Platform ternyata memiliki culture masing-masing.

Saat ini belum ada standar de-facto untuk web-framework untuk membuat CMS. Namun kandidatnya ada dua yaitu Rails dan Zope. Rails memakai bahasa pemrograman Ruby sedangkan Zope memakai bahasa pemrograman Python. Beberapa tadi adalah solusi umum (generic) framework yang matang, namun di atasnya, belum banyak pilihan CMS yang mudah di-implementasikan.

Secara lebih detail
  • Ruby --- Rails --- Radiant
  • Python --- Zope --- Plone
  • Java/Tomcat --- Coocon --- Lenya
Sebetulnya ada framework lain seperti Ruby/Merb dan Python/Django. Namun nasib mereka sama dengan rekannya di PHP5. Yaitu belum berhasil untuk membuat CMS, kecuali untuk para hackers. Sedangkan Java bersifat enterprise dan tidak dibutuhkan untuk pekerjaan yang remeh-temeh.

Lebih Mendetail Mengenai Kandidat

Plone CMS sudah lengkap sistem administrasi-nya, namun berat. Sedangkan Radiant masih jauh di bawah Joomla dalam hal administrasi. Radiant sangat sexy bagi developer. Sebetulnya yang menggairahkan adalah framework-nya yaitu Rails.

Tahun depan akan lebih menarik lagi. Fusi Framework Rails-3/Merb-2 secara radikal berencana membuat dirinya agnostik terhadap kebutuhan spesifik tertentu ini. Artinya, memangkas standar yang telah dibuatnya sendiri.

Radiant diciptakan sebagai CMS minimalis. Membandingkan Radiant dengan Joomla mungkin tidak apple to apple.

Rails membutuhkan waktu untuk menciptakan CMS yang mempunyai fungsi lengkap menyamai joomla. Joomla akan sangat kesulitan untuk menyamai arsitektur Rails. Ini bukan sesuatu yang bagus. Tahapannya masih begitu. Mengingat masa depan rails lebih menjanjikan, harapkan saja ada bundle CMS yang lengkap yang berbasis Rails.

Radiant terlalu sederhana karena memang di-design untuk team kecil. CMS sederhana namun dapat diperluas. Radiant cocok bila developer cuma satu, admin cuma satu dan pengisi content cuma satu. Atau bahkan semua dijadikan satu.

Atau mungkin suatu saat ada alternatif lain yaitu CMS sederhana, namun bisa di-bundle-ulang, baik dengan nama baru, atau dengan nama yang sama. Dengan feature lengkap untuk noobie


Note: Penulis berusaha tidak bias. Sayang sekali penulis masih terbelakang soal Java, belum sempat mencoba Coocon, dan dahulu hanya sempat bermain sebentar dengan Tomcat tanpa menghasilkan satu proyek nyata. Mohon maaf.

Tidak ada komentar:

Posting Komentar