Web atau tidak web

24 09 2008

Dapat forward-an email dari salah satu dedengkot perusahaan IT yang banyak bergerak di bahasa jawa milik sistem kecil matahari.

saya quote kan saja biar blog ini kelihatan banyak 😛

Lama-lama saya bergumam.. ‘capek deeh..’, ketika sudah sering
pada beberapa kesempatan mendengarkan presentasi orang tentang
sistem aplikasi untuk jaringan komputer, maka sistem aplikasinya
katanya harus berbasiskan web. Terutama pada komunitas e-government
seperti pada tender-tender untuk sistem aplikasi di institusi
pemerintahan; baik pada KAK (kerangka acuan kerja) maupun pada
penjelasan pekerjaan (aanwijzing), panitia lelang menyatakan bahwa
pengguna jasa/barang ingin sistem aplikasi berbasiskan web agar
bisa dipakai secara multiuser dan sistem jaringan.

Awalnya saya selalu berusaha menerangkan bahwa aplikasi berbasis
web bukan satu-satunya solusi untuk menghasilkan sistem aplikasi
jaringan. Berbagai cara saya coba ilustrasikan seperti: “anda
pernah pakai Yahoo Messenger? Nah, itu kan bukan aplikasi dengan
web browser, tapi kan bisa untuk komunikasi sistem jaringan”.
Jadi sistem aplikasi lainpun bisa dibuat untuk jaringan tapi tidak
berbasis web, ya seperti YM itu tadi.

Tapi ya capek deh. Entah siapa yang memulai sosialisasi bahwa untuk
solusi sistem aplikasi jaringan ya harus berbasis web. Entah yang
menerima sosialisasi yang wawasannya memang masih kurang atau memang
yang memberi sosialisasi memang hanya seperti itu pemahamannya.

Satu-satunya keuntungan aplikasi berbasis web adalah tidak harus
melakukan instalasi pada sisi komputer klien. Sedangkan aplikasi
jaringan non web harus ada instalasi di sisi klien. Ini bisa suatu
keuntungan besar jika sistemnya tersebar pada lokasi yang banyak dan
berjauhan (antar kota, antar pulau, antar negara). Karena kadang
untuk instalasi memang menuntut skill yang mencukupi.

Tetapi aplikasi web hanya cocok untuk aplikasi yang tidak menuntut
banyak transaksi yang seringkali menggunakan form-form yang cukup
kompleks. Gaya HTTP yang menggunakan ‘post’ dan ‘get’ menuntut
banyak koneksi dengan server sekalipun hanya untuk job yang mudah
seperti menjumlah 2+3. Jika aplikasi web digunakan untuk membangun
aplikasi yang melakukan banyak transaksi seperti misalnya pada
aplikasi produksi, keuangan dan sistem operasional lainnya maka
akan terasa bahwa performa sistem aplikasi web jauh berada di bawah
performa sistem aplikasi jaringan desktop yang bisa mengolah transaksi
secara lokal dan hanya perlu mengirim hasil akhir ke server. Aplikasi
berbasis web hanya cocok untuk aplikasi yang menampilkan informasi data
atau yang menuntut sedikit transaksi data.

Oh sekarang tidak bergitu lagi setelah ada teknologi web 2.0 menuju
teknologi web 3.0. Teknologi seperti Ajax memberikan solusi bagi
aplikasi berbasis web sehingga bisa melakukan transaksi lokal seperti
aplikasi desktop. Tapi sayangnya hingga sekarang teknologi tersebut
belum betul-betul matang dan mencapai standar yang akseptabel pada
seluruh aplikasi browser. Pada kenyataannya masih sering bahwa
aplikasi web dinamis tersebut menuntut ‘Firefox versi xx’ atau
‘Internet Explorer versi xx’. Yang pada akhirnya tetap menuntut
instalasi pada sisi komputer klien untuk mendapatkan jenis dan versi
aplikasi browser yang tepat. Selain itu komponen untuk membangun
common control yang biasa ada pada desktop juga pada kenyataanya
sering masih terasa berat untuk dibangun pada aplikasi berbasis web,
apalagi jika diiringi representasi data yang cukup besar pada
common control tersebut seringkali performa aplikasi web jeblok.

Alhasil. Tulisan saya tidak untuk mendeklarasikan bahwa sistem aplikasi
berbasis web lebih buruk dari sistem aplikasi jaringan desktop.
Masing-masing memiliki kelebihan dan kekurangan. Memilih sistem aplikasi
untuk keperluan yang tepat akan menghasilkan sistem aplikasi dengan
performa dan utilitas yang tinggi. Tapi saya merasa heran
bahwa kalangan masyarakat IT kita seakan hanya mengenal aplikasi web
sebagai satu-satunya solusi untuk sistem aplikasi jaringan. Apakah ini
menunjukan bahwa kualitas para developer sistem aplikasi kita memang
hanya menguasai pemrograman dengan HTTP dan bermain-main dengan port 80?
Apakah ini hasil dari pendidikan IT yang instant di berbagai lembaga
pendidikan IT? Para sistem developer dahulu kala mungkin sekarang suka
bernostalgia ketika dulu masih sering memprogram dengan teknik socket
programming dan RPC. Sekarang toh sudah dipermudah dengan lahirnya
berbagai protokol dengan tingkat abstraksi yang lebih tinggi seperti
DCOM, Java RMI, IIOP dan protokol network programming lainnya (ya
termasuk HTTP yang di dalamnya memang yang paling mudah).

Wallahu’alam

Febi

Alhasil ini memancing pendapat kami untuk angkat bicara. Web atau tidak web, mana kiblat mu.

Bung Rizky, software arsitek kami berpendapat

mengenai permasalahan MITOS/ISU/GOSIP INFLEKSIBILITAS aplikasi desktop dalam hal melakukan update pasca deployment, misal klo ada perubahan aplikasi musti menyebarkan ulang paket instalasi ke semua client (klo web kan tinggal upload ke host-server dan semua client otomatis akan keupdate) — menurut gw juga gag tepat, karna gw udah nemu solusinya utk itu..

gw juga keluhkan masalah yg (kalo di desktop itu) SANGAT-SANGAT-SANGAT-SANGAT-STANDAR sekali sedangkan di web itu bener2 butuh skill dan pengalaman coding yg expert. wewww…

Contoh kasus (yg sedang hangat2nya di ruang kerja gw nih) :
1. spin button
2. transaction-safe query
3. upload/browse
4. editable grid

dan gw belum sodorkan tema ‘dynamic chart/graph reporting’, Pivot Query, shortcut, print & print preview, sub-report, ato interaksi dengan device (yg kalo di desktop itu tinggal semudah drag-drop sesuatu dari component pallete)

masalah utama aplikasi web atau desktop itu sebenarnya terletak di PLATFORM (dimana web itu termasuk platform independen, sedangkan desktop = platform dependen –> termasuk Flex, Java, .NET/Mono yg “katanya” multiplatform itu sebenarnya platform dependen jg — karna mereka berjalan di atas virtual machine mereka sendiri)

nah, klo utk masalah ini, Aplikasi Web menang telak.

Jadi, pilih mana? desktop ato web ?
jujur, pertanyaan ini udah berkecamuk di hati gw sejak 4 tahun yg lalu.
dan sampai sekarang, gw masih blom bs temukan jawaban pastinya… ^_^

“Apakah ini hasil dari pendidikan IT yang instant di berbagai lembaga pendidikan IT?”

Ini pun sempat membuat saya sempat ragu pada awalnya, apakah akan memperdalam ilmu di Web programming karena munculnya teknologi-teknologi baru seperti Ruby dan FLEX. Sempat terpikir, stop learning PHP! and focus to new technology. Sama halnya bapak ini juga pernah bertanya demikian.

Teknologi tidak akan ada habisnya karena ini buah karya pikiran manusia, dengan keunggulan dan kelemahannya masing-masing sebagai trade-off nya, dan masing-masing komunitas bahasa dengan “agama” nya masing-masing.

Beberapa Plus nya desktop app menurut pendapat pribadi:

  • Tren desktop tidak secepat trend di web. Ada lebihnya ada kelemahannya.
  • User lebih bisa look n feel, walau ini mulai diadopsi oleh web.
  • Interaksi dengan device
  • Siklus yang lama (terkait poin 1)

Minusnya

  • Very hard to debug when it has become binaries. Coba siapa yang bisa debug dengan cepat kaskus salah akses memory address, bentrok dengan program lain, tidak kompatibelnya library.
  • Propietary, walau ada yang opensource, namun dominasinya masih kalah JAUH sama propietary
  • Karena propietary nya, kadang pembangunan aplikasi desktop disusupi muatan politis dan ekonomi yang bikin (at least saya) jengah!

Pergerakan teknologi pun mulai terlihat, voice over IP, TV over IP, IPTV (beda sama yg TV over IP lho), Mobile IP, meyakinkan saya bahwa, “the future still promising” di web technology. Desktop bagaimana? Arahnya desktop pun makin menyokong keperluan dari “the great collaboration era” ini.

Apapun teknologinya, portnya tetap : 80





Mencegah Browser Mengingat Password di Web Kita

16 08 2007

Anda membuat web-web berisi informasi sensitif seperti tarding, forex, e-shopping? Anda sudah menggunakan clean URL, https, captcha, honeypot, blackhole, dannnn segala macam pencegahan dalam berbagai layer aplikasi, namun masih saja jebol hanya karena kelalaian user yang awam, memilih opsi “remember password” pada browser di komputer yang digunakan secara bersama-sama, misal di warnet, atau bahkan di kantor dan institusi-institusi, baik pendidikan hingga pemerintahan (Angkatan Bersenjata, POLISI, Dinas Rahasia, dll). Cukup gawat bukan??

Lalu saya melihat situs Yahoo! Saat kita login pada Yahoo!mail misal, kita tidak di prompt! Mengapa?? Ternyata ada script trik tertentu, dengan menambahkan variabel

autocomplete=“off”

pada tag

<form>

Sehingga tag form kita menjadi

<form method=”post” action=”” autocomplete = “off” >

Mudah bukan??

Semua hal di dunia seperti dua muka mata uang, selalu ada kebalikannya. Demikian pun untuk script ini, anda dapat melakukan kebalikannya, Read the rest of this entry »





Web and wap application just in 2 days

4 05 2007

Maybe for some of you guys, the title it’s not a big deal. Building a web application with databases, template engine and wap site included, how bout that.
Read the rest of this entry »





Day n of dead end

27 04 2007

Symfony ini mulai sumbang. Buntu..buntu..buntu…

Memang sulit merubah cara pandang berfikir kita.. terlebih jika waktu yang tersedia sangat mepet. Memahami bentuk baru dari suatu sowtware development cycle. ahh.. tidak mudah, tapi pasti bisa.. Read the rest of this entry »





S Y M F 0 N Y

25 04 2007

The image “https://i0.wp.com/www.symfony-project.com/images/symfony_logo.gif” cannot be displayed, because it contains errors.

First look, its difficult, second looks , kinda fun. But then, whaaa its troublesome
May be coz reaaaalllyyy uneasy to change our mindset just in a clap! From procedural method to object oriented, even more..

The simplest way to describe symfony is

PHP + ORM-Database + Pear + CLI + Propel (ORM-engine)+Phing + YML

Read the rest of this entry »