Showing posts with label Web App. Show all posts
Showing posts with label Web App. Show all posts

Saturday, July 25, 2015

HTML 5 Javascript API

Overview

HTML 5 bukan merupakan hal baru, pertama kali dipublish ke public pada tahun 2008, perkembangannya sudah sangat signifikan. Perlahan tapi pasti, browser-browser mulai memfasilitasi HTML 5, atau mungkin sudah memfasilitasi sepenuhnya.

Dari perspektif software development, HTML 5 memberikan API javascript baru yang bermanfaat untuk membuat Web App, beberapa diantaranya seperti Audio, Video memudahkan developer untuk membuat fitur-fitur tertentu yang sebelumnya sulit dilakukan.



Audio dan Video

Belum terlalu lama sebenarnya, untuk suatu halaman web bisa menayangkan video atau memutas musik, perlu download dan install plugin dari third-party vendor. Sekarang tidak lagi.

Saat ini HTML 5 men-support Tag Audio dan Video. Memasang video dan audio pada halaman web menjadi semudah memasang gambar, cukup dengan memberikan tag dan sumbernya


Web Workers

Adakalanya developer perlu membuat lebih dari satu thread untuk memfasilitasi kebutuhan tertentu, dan ini bukan hal gampang pada Web App sebelum HTML 5.

Dengan adanya Web Worker API pada HTML 5, developer bisa membuat background worker yang basically merupakan thread lain karena terpisah dari Main Thread web yang melakukan rendering UI.


Web Sockets

WebSocket merupakan teknologi menarik di HTML 5 karena memungkinkan Web App untuk berkomunikasi dengan server tidak hanya via Http tapi juga via Tcp.

Komunikasi dengan Tcp bersifat persisten dan bi-directional. Persisten memungkinkan Web menerima data tanpa request terlebih dahulu, sedangkan bi-directional memungkinkan server dan web saling mengirimkan data pada waktu yang sama.

LocalStorage

LocalStorage API memungkinkan browser untuk menyimpan data di browser tanpa membutuhkan jaringan. Data bisa dibuat, disimpan, di ambil meski sedang tidak ada koneksi internet.

Meski memiliki kemiripan dengan cookie, sebenarnya mereka memiliki kegunaan yang berbeda, masing-masing memiliki manfaat pada situasi dan kondisinya.


Lain-lain

Banyak API-API lain seperti geolocation, History API, File Writer dan lain-lain. Semua ini merupakan sebuah tools, yang memiliki skenario dan kegunaan yang apabila dimanfaatkan dengan pas, akan membantu developer dalam mengembangkan Web App.



Tuesday, July 21, 2015

Tips Mempercepat Development Web App

Overview

Web-App sudah menjadi mainstream, atau bahkan mulai bisa dikatakan old-school sekarang-sekarang ini, namun bukan berarti membangun Web-App lantas menjadi mudah dan cepat. Memang saat ini banyak sekali teknologi yang dapat digunakan untuk mempercepat proses development Web-App, bahkan mungkin terlalu banyak sehingga mungkin agak membingungkan untuk sebagian orang.

Berikut merupakan beberapa teknologi/konsep yang bisa dimanfaatkan untuk mempercepat development Web-App, antara lain:

  1. Develop dengan Arsitektur Front-End dan Back-End
  2. Manfaatkan Javascript Widget Libraries
  3. Gunakan PostgreSQL
  4. Manfaatkan Scaffolding / Source Code Generator
  5. Gunakan Bootstrap Admin Template

Arsitektur Front-End Back-End

Dewasa ini berkembang istilah Front-End dan Back-End, bahkan terdapat 1 halaman Wikipedia yang menjelaskan hal tersebut. Untuk mendevelop Web-App dengan tim tiga orang atau lebih, arsitektur ini sangat bermanfaat untuk mengelola kompleksitas, karena arsitektur ini memisahkan dengan jelas UI/UX dengan inner engine dibaliknya, sehingga comply dengan prinsip Separation of Concern, dimana prinsip tersebut merupakan best practice dalam Software Development.

Javascript Widget Libraries

Widget Javascript Libraries dapat mempercepat development karena menyediakan widget-widget yang langsung bisa dipergunakan dengan sedikit kode, bahkan umumnya tidak ada logic pada kode, hanya setting-setting dan konfigurasi saja. Selain itu, Widget umumnya bersifat komponen based sehingga dapat mengunakan berbagai macam libraries sekaligus atau dipadukan dengan Javascript Framework seperti AngularJS, EmberJS dll. Dengan kerugian hanya bentuknya yang standard dan mungkin loading time pertama kali lebih lama, trade-off-nya masih lebih condong ke positif daripada negatif.

PostgreSQL

Jika Oracle merupakan pilihan solid untuk database enterprise, maka PostgreSQL merupakan ekuivalent Oracle pada dunia open source. PostgreSQL memiliki fitur-fitur hebat yang umumnya tidak ada di database lain. Googling PostgreSQL vs Database lain akan memberikan perspektif kapan sebaiknya postgreSQL digunakan dibanding database lain, yang tampaknya lebih sering daripada tidak.

Source Code Generator

Dengan hanya sedikit menulis kode, generate, and BAM! jadilah simple version dengan fully functional features. Sayangnya, menggunakan source code generator ibarat pedang bermata dua, namun jika dipergunakan dengan pas, akan lebih banyak manfaatnya daripada kerugiannya. Salah satu prinsip untuk menggunakannya dengan baik adalah: Hindari men-Generate 2 kali untuk hal yang sama.

Bootstrap Admin Template

CSS Framework tidak hanya bootstrap, banyak pilihan lain yang sebenarnya tidak kalah bagus. Namun khusus untuk Admin Template yang based on Bootstrap, pilihannya sangatlah baaanyaaakk. Dari yang gratis sampai yang berbayar. Untuk menghemat waktu dalam melakukan design, akan jauh lebih efektif jika melakukan modifikasi dari Template yang sudah dipilih, tidak perlu memulai dari nol.




Bagaimana dengan anda, adakah teknologi/prinsip yang anda pergunakan untuk mempercepat proses development web-app?




Thursday, December 8, 2011

RSS atau Atom Reader Dengan Google Reader

RSS/Atom adalah teknologi yang sudah lama ada dan sudah banyak digunakan. Untuk orang-orang yang sering browsing internet mengupdate info-info terbaru tentang apapun, RSS/Atom ini memudahkan mereka melakukannya.

Apa itu RSS/Atom?
RSS/Atom adalah teknologi yang memungkinkan kita mendapatkan summary dari informasi terbaru pada website yang kita pantau. Summary ini kadang berupa Judul saja, kadang Judul dan beberapa kalimat awal, kadang seluruh isi informasi terbaru, tergantung dari website yang kita pantau.

Kenapa harus RSS/Atom, kenapa ga langsung aja ke websitenya?
Adakalanya suatu website mengeluarkan informasi baru dengan kecepatan yang tinggi, bisa ratusan per harinya. Dan belum tentu kita tertarik dengan seluruh informasi tersebut. Akan lebih enak jika kita punya summary untuk seluruh informasi yang ada, dan hanya membuka halaman dari informasi yang menarik untuk dibaca.

Ok, lalu bagaimana caranya untuk menggunakan teknologi ini?
prinsipnya ada 3 langkah utama, yang nantinya akan didetailkan, yaitu:

  1. Aktifkan RSS/Atom Reader software
  2. subscribe website favorit
  3. ulangi langkah 2
Banyak sekali software Reader baik yang diinstall ataupun Web App. Thunderbird atau outlook juga bisa digunakan sebagai RSS/Atom Reader. Namun Saya disini menggunakan Google Reader, karena Saya menggunakan gmail sebagai email pribadi utama, dan tidak ingin menambahkan aplikasi yang diinstall. 

Aktifkan Google Reader
login ke email google anda, Register jika belum punya, maka pada bagian teratas akan terdapat banyak link. Click more dan pilih Reader, seperti pada gambar berikut:
Maka halaman akan berpindah ke google Reader. Dengan begini, Google Reader telah aktif.

Subscribe Website Favorit
dengan mengclick tombol subscribe
akan muncul window kecil untuk memasukkan alamat website favorit, seperti gambar berikut:
Google Reader memudahkan proses website subscription. Biasanya kita perlu mencari link ke RSS/Atom Feed pada suatu website, pada Google Reader hal itu dilakukan secara otomatis. Namun mungkin saja pada software lain terdapat fitur serupa.

Tambahkan beberapa website-website favorit lainnya. Saya memiliki teman yang men-subscribe banyak website sehingga 1 harinya memiliki lebih dari 1000 item untuk dibaca. If you have no idea, Google Reader memiliki fitur rekomendasi untuk memudahkan kita men-subscribe website-website populer. Selamat mencoba.