{"id":801,"date":"2004-12-16T13:47:41","date_gmt":"2004-12-16T13:47:41","guid":{"rendered":"\/?p=801"},"modified":"2004-12-16T13:57:49","modified_gmt":"2004-12-16T13:57:49","slug":"php-java-et-al","status":"publish","type":"post","link":"https:\/\/harry.sufehmi.com\/archives\/2004-12-16-php-java-et-al\/","title":{"rendered":"PHP, Java, et al"},"content":{"rendered":"

Sekitar beberapa tahun yang lalu, saya menghadapi kenyataan bahwa saya harus mempelajari paling tidak sebuah web-programming language — sebuah bahasa pemrograman yang memungkinkan saya untuk membuat aplikasi-aplikasi berbasis web.<\/p>\n

Pada saat itu pilihan saya jatuh ke PHP, karena mudah dipelajari, bisa develop aplikasi dengan cepat, tidak banyak menuntut resources komputer, dst. Dan alhamdulillah ternyata memang banyak manfaat yang saya dapatkan.<\/p>\n

Namun akhir-akhir ini dengan semakin populernya PHP, berbagai kelemahannya juga semakin makin terasa. Seperti :<\/p>\n

# Banyaknya security hole di berbagai aplikasi PHP – cukup mudah untuk coding aplikasi PHP yang penuh security hole.
\n# PHP sendiri tidak terlalu aman – ada proyek “hardened PHP”, ada bug di urldecode() sehingga bukannya mengamankan tetapi justru menjadi pintu masuk bagi cracker, PHP 4.3.9 ternyata juga masih banyak security hole-nya, dst
\n# PHP memang memungkinkan development aplikasi Web dengan cepat, tapi untuk melakukan development aplikasi Web dengan benar<\/strong> cukup membutuhkan waktu; pemisahan presentasi dengan logik perlu dibantu dengan tools seperti Smarty dkk, abstraksi database perlu dibantu dengan ADODB dkk, kurang terasa dorongan dari struktur bahasanya sendiri untuk memprogram dengan rapi (rada “hack-ish” \ud83d\ude42 )dan aman.<\/p>\n

Saya masih akan terus menggunakan PHP, namun sepertinya saya sudah harus mulai memikirkan alternatifnya dari sekarang.<\/p>\n

Java masih tetap kurang menarik bagi saya karena kelihatannya learning curve-nya terlalu terjal \/ barrier to entry-nya terlalu tinggi (saya bisa coding PHP dari tidak tahu sama sekali dalam waktu 2-3 jam saja)<\/p>\n

Enter Rails<\/a>.<\/p>\n

Rails adalah web-application framework berbasis Ruby, yang memungkinkan kita untuk develop aplikasi web secara terstruktur, dengan sangat cepat. <\/p>\n

Dulu saya kira tidak akan mungkin bisa develop aplikasi web dengan “benar” dan<\/strong> tetap cepat, tapi, ternyata bisa dengan Rails
\nSaya tidak akan banyak komentar, cukup [
download demo ini<\/a> ], dan saksikan sendiri kemampuan Rails — dari setup sampai jadi aplikasi blog hanya memakan waktu 10 menit…..<\/p>\n

Satu lagi yang menarik adalah Ruby Gems<\/a>, package management untuk Ruby. Kalau ini sudah terpasang, maka instalasi Rails cuma perlu satu baris perintah :
\ngem install rails<\/strong><\/p>\n

Dan update-nya juga mudah, tinggal ketik gem update<\/strong>, wow…. sangat berguna, misalnya untuk Rails, yang masih aktif dikembangkan sehingga sering muncul versi barunya; Anda tidak perlu upgrade Rails terus menerus secara manual.<\/p>\n

Bagi pengguna Debian yang ingin mencoba memulai Rails dengan memasang Ruby, bisa merujuk kesini<\/a>.<\/p>\n

Selamat mencoba Ruby.<\/p>\n","protected":false},"excerpt":{"rendered":"

Sekitar beberapa tahun yang lalu, saya menghadapi kenyataan bahwa saya harus mempelajari paling tidak sebuah web-programming language — sebuah bahasa pemrograman yang memungkinkan saya untuk membuat aplikasi-aplikasi berbasis web. Pada saat itu pilihan saya jatuh ke PHP, karena mudah dipelajari, bisa develop aplikasi dengan cepat, tidak banyak menuntut resources komputer, dst. Dan alhamdulillah ternyata memang … Continue reading PHP, Java, et al<\/span> →<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-801","post","type-post","status-publish","format-standard","hentry","category-teknoblogia"],"_links":{"self":[{"href":"https:\/\/harry.sufehmi.com\/wp-json\/wp\/v2\/posts\/801"}],"collection":[{"href":"https:\/\/harry.sufehmi.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/harry.sufehmi.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/harry.sufehmi.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/harry.sufehmi.com\/wp-json\/wp\/v2\/comments?post=801"}],"version-history":[{"count":0,"href":"https:\/\/harry.sufehmi.com\/wp-json\/wp\/v2\/posts\/801\/revisions"}],"wp:attachment":[{"href":"https:\/\/harry.sufehmi.com\/wp-json\/wp\/v2\/media?parent=801"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/harry.sufehmi.com\/wp-json\/wp\/v2\/categories?post=801"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/harry.sufehmi.com\/wp-json\/wp\/v2\/tags?post=801"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}