Browsed by
Category: Tips

Panduan nyata siap praktek

Git vs SVN

Git vs SVN

branch

Sudahkah Anda memakai Version Control Software (VCS)? Penggunaan VCS tidak dibatasi oleh aktivitas yang melibatkan teks saja. Keperluan untuk menyimpan sejarah dokumen, apapun bentuknya, telah menjadi kebutuhan banyak orang. Perusahaan konstruksi pun perlu menggunakan VCS.

Historical value

VCS memberikan kemampuan untuk melihat masa lalu. Dokumen yang ada hari ini bisa kita lacak kembali ke masa awal pembuatannya. Misalnya Anda adalah pegawai baru, dengan VCS Anda akan tahu bagaimana dokumen kesepakatan dievaluasi secara periodikal. Tidak perlu lagi mengandalkan orang untuk mengingat-ingat atau menyimpan bertumpuk-tumpuk kertas atau dokumen digital yang mewakili setiap versi.

Collaboration and Conflict Resolution

VCS juga menjadi alat bantu kolaborasi yang cukup mumpuni. Salah satu masalah besar dalam kolaborasi adalah concurrent access. Setiap orang bisa memodifikasi dokumen sesuai kepentingannya di bagian manapun. Jika proses kolaborasi ini difasilitasi dengan banyak dokumen maka akan muncul masalah siapa yang akan menggabungkan semua pengubahan yang telah dilakukan. Jika difasilitasi dengan satu dokumen yang dibagi bersama (bukan Google Doc) maka akan ada resiko saling menimpa pengubahan yang dilakukan orang lain.

Sentralisasi dan Desentralisasi

Sebenarnya bukan masalah antara Git vs SVN tapi lebih ke sentralisasi dan desentralisasi. VCS yang tersentral berarti tidak ada yang memiliki histori lengkap dari suatu dokumen kecuali server VCS. Sebaliknya, VCS yang terdesentralisasi memungkinkan semua orang memiliki histori lengkap dari sebuah dokumen.

Untuk keperluan pengembangan perangkat lunak, pola terdesentralisasi lebih punya banyak manfaat. Karena setiap orang bisa memiliki histori dokumen sendiri maka perubahan yang dilakukan oleh seorang pengguna tidak perlu dipush ke server. Sebaliknya dalam konsep tersentralisasi, setiap perubahan versi mau tidak mau harus dipush ke server.

Konsep desentralisasi memungkinan seorang pengembang melakukan perbaikan bug pada suatu cabang yang berlainan dengan pekerjaan menambah fitur baru (dalam kaitan dengan proyek/dokumen yang sama).

Ekosistem opensource yang sangat permisif terhadap forking (baca: jika tidak puas, Anda bisa membuat versi perngkat lunak Anda sendiri) sangat cocok dengan konsep desentralisasi. semua orang bisa bereksperimen dengan banyak hal baru tanpa harus mengganggu garis pengembangan utama. Proses penggabungan hasil eksperimen juga tidak susah.

So, Anda sudah pakai SCM? Apa yang Anda pakai dan sebutkan alasannya? Kenapa belum memakai?

Going The Extra Mile

Going The Extra Mile

Frog Ging for Extra Mile

Going the extra mile artinya memberikan lebih daripada yang diharapkan dari seseorang. Ada banyak alasan kenapa going the extra mile dianjurkan untuk dilakukan.

The Dip

Masih ingat The Dip, tentang kapan harus berhenti dan kapan harus terus berlari, yang sempat dibahas di NavinoT beberapa waktu lalu? Well, going the extra mile adalah salah satu bentuk terus berlari. Daripada, “ya seperti ini sudah cukup” kita memilih “sedikit lagi, akan jauh lebih bagus”. Kita mungkin akan terperangah bahwa yang “sedikit” lagi itu bakal punya outputyang jauh lebih besar dari effort yang kita keluarkan atau harapkan.

Eliminating Failures

Masih terkait The Dip, jika kita berhenti sebelum waktunya berati akan ada yang tertinggal. Yang tertinggal ini jadi bibit potensial bagi tumbuhnya kegagalan. Going the extra mile berarti memberikan effort lebih dalam rangka membuat produk yang semakin menjauhi kegagalan.

Always going for extra mile?

Tapi benar juga. Terkadang waktu kita tak akan cukup untuk mendapatkan semua extra mile. Extra mile takes effort. Butuh usaha dan waktu lebih untuk bisa mencapai kilometer lebih. Akhirnya kembali lagi ke prinsip dasar bahwa kita selalu harus pandai menata prioritas. Kita mungkin tidak akan dapat extra mile di suatu bagian atau mungkin malah gagal. Tapi kita bisa berusaha memastikan untuk mendapat extra mile pada bagian yang lebih berarti.

Okay, I know it doesn’t sound easy. Mungkin memang benar, practise makes perfect. Saya sendiri juga harus banyak berlatih.

PS:

Apa kabar teman NavinoT? Rasanya lama sekali tidak menyapa kalian. Selamat menyongsong weekend. Jangan lupa vote wakil Indonesia, “Nothing Wasted“. Sudah ke Indocomtech belum? 😉

Eh, ID Saya Apa Ya?

Eh, ID Saya Apa Ya?

Lazy Registration turns to Confusing Registration

Lazy registration adalah salah satu teknik untuk mengatasi persoalan konversi (mengubah pengunjung menjadi pembeli/anggota). Caranya adalah dengan memberikan form pendaftaran yang minimalis supaya calon pengguna tidak kehilangan kesabaran dan akhirnya batal mendaftar.

Trik lain yang serupa dengan lazy registration adalah dengan menerapkan single sign on atau berbagi identitas. Alih-alih mengisi ulang form pendaftaran dengan kolom isian yang serupa, kini calon pengguna bisa menggunakan OpenID untuk mendaftar dan langsung login.

Ada cara baru lagi yang lebih mudah. Jika sebelumnya kita harus mengisi kolom isian untuk OpenID, sekarang lazy registration cukup diterapkan dengan satu tombol saja. Facebook dengan Facebook Connect-nya menjadi pelopor UI yang benar-benar efisien ini.

Walapun konsep yang dipakai adalah standard, kecuali Facebook Connect, ternyata tetap saja kita akan berakhir dengan begitu banyak tombol untuk dipilih. Sebuah situs akhirnya akan menampilkan berbagai macam metode yang bisa dipakai untuk lazy registration. Cara klasik dengan username dan password, Facebook Connect, OAuth, dan tombol-tombol OpenID. Lazy registration menjadi confusing registration. Betapa tidak, terlalu banyak ID yang tersedia kita tak lagi bisa mengingat ID mana yang kita pakai login atau akan kita pakai untuk mendaftar ke situs tersebut.

Jadi, bagaimana cara memecahkan masalah ini? Well, saya sebenarnya tak ingin menyajikan solusi namun ingin sekedar menggarisbawahi permasalahan. Langkah yang jelas ya memilih satu atau dua di antara banyak ID tersebut sehingga sewaktu pengguna kembali ke layar login atau pendaftaran maka dia tidak akan bingung dengan banyaknya pilihan.

Ambil saja masing-masing satu pilihan untuk tiap opsi. Untuk menggaet pengguna Facebook kita pakai Facebook Connect. Untuk OAuth, sepertinya Twitter lebih populer. Sedangkan untuk OpenID, Yahoo atau Google bisa jadi pilihan. Jika Anda cukup berani, mungkin OpenID bisa dihilangkan opsinya karena hampir semua orang yang punya OpenID pasti punya Facebook atau Twitter ID. Walau tak semua.

Atau Anda bisa pakai username dan password seperti biasa. Mana yang Anda pilih?

Magazine Layout Untuk Blog

Magazine Layout Untuk Blog

magazinelayout

Bagi yang mengikuti perjalanan NavinoT dari awal sampai sekarang, tentunya sudah menyaksikan beberapa theme yang digunakan. Mulai dari awal memang NavinoT punya tampilan yang sedikit berbeda, selain dari sketsa tangan, tapi juga tatanan halaman depan.

Pada mulanya memang berusaha tampil lebih serius dengan magazine layout. Namun dalam prakteknya, magazine layout tidak sesuai dengan kinerja kita. Berikut ada beberapa pertimbangan tentang magazine layout.

Read More Read More

Get More From Twitter

Get More From Twitter

Owl Smile

Setelah melewati pengamatan yang non akademis, saya berkesimpulan bahwa timeline twitter saya justru tampak sangat menarik saat lewat tengah malam. Well, sebenarnya no-brainer sih karena lebih dari setengah yang saya follow adalah orang-orang yang tinggal di belahan bumi yang lain (lihat map-nya). Lalu, bagaimana supaya saya tidak terlewatkan hal-hal menarik tersebut?

Stay up

Mungkin bisa diakali dengan mengubah jam biologis menjadi tidur siang dan bangun di malam hari. Sayangnya hal ini tidak dimungkinkan karena pagi hari masih ada kewajiban bekerja. Tapi kita sebenarnya bisa menyalakan twitter client kita sepanjang malam untuk menangkap tweets yang muncul lewat tengah malam. Hanya saja kadang kala kemampuan twitter client kita terbatas. Dan ada resiko komputer bisa crash karena kehabisan memory. Saat ini saya belum  menemukan twitter client yang cukup pandai untuk mengarsipkan timeline ke disk.

Save the feed, save our night time

Ya ini adalah ide bagus. Masukkan saja feed timeline ke dalam Google Reader/Feedly. Kita bisa lihat kapan saja tanpa khawatir melewatkan satu tweet pun. Sepertinya ide yang brilian sampai saya sadar bahwa feed timeline kita diproteksi oleh suatu skema autentikasi. Mungkin ada beberapa dekstop feed reader yang punya fasilitas autentikasi. Sayangnya saya belum rela untuk menginstall feed reader terpisah hanya untuk membaca tweets. Terlalu merepotkan.

Saya berangan-angan andai ada layanan OAuth proxy yang bisa kita pakai untuk mendapatkan feed kita dengan lebih mudah. Seperti yang dituliskan di blog ini misalnya. Mungkin bisa kita install di AppEngine karena Python based.

Semantics

Salah satu masalah yang selalu mengikuti kita adalah signal vs noise ratio. Semakin banyak kita berlangganan informasi maka semakin besar pula resiko kita untuk mendapatkan lebih banyak noise daripada signal. Daripada melakukan scanning secara manual terhadap timbunan besar informasi, alangkah menyenangkan jika informasi tersebut bisa disaring dan diproduksi keyword-nya. Apalagi jika keyword tersebut bisa kita jadikan tag cloud yang akan jadi alat navigasi untuk menjelajahi data kita.

Saya punya ide melewatkan feed timeline saya ke OpenCalais dan mendapatkan anotasi semantik. Sejauh ini kendalanya adalah autentikasi dan output OpenCalais. Autentikasi mungkin bisa terpecahkan dengan solusi OAuth proxy di atas. Namun output OpenCalais ini agak kurang bersahabat. Jika kita melewatkan feed ke OpenCalais, OpenCalais akan menambahkan anotasinya dalam bentuk teks yang ditambahkan ke field deskripsi feed. Hal ini merepotkan proses ekstraksi semantik. Belum lagi, jika kita lewatkan feed dari twitter, Twitter akan selalu muncul sebagai salah satu anotasi yang ditambahkan.

Kita bisa saja melewatkan satu persatu item dalam feed kita, namun bisa dipastikan kita akan menghabiskan jatah pemanggilan API yang dibatasi tiap harinya.

Anda punya tips yang bisa dibagi?

Berapa sih Harga Rainmaker?

Berapa sih Harga Rainmaker?

rainmaker

Dulu kita pernah berbicara tentang rainmaker dan bagaimana pengaruhnya pada tribe yang bernaung di bawahnya. Dulu, brand hanya diasosiasikan dengan produk dan korporasi, sekarang banyak orang yang punya personal brand. Dua hal ini jadi isu menarik di masa sekarang karena kecenderungan orang untuk lebih mendengarkan teman jadi lebih kentara dan terpupuk akibat munculnya social network.

Sebuah perusahaan menyewa jasa marketing agency, itu sudah lumrah. Sekarang perusahaan justru tertarik menyewa jasa rainmaker secara personal. Ini fenomena baru, baik bagi perusahaan maupun bagi rainmaker itu sendiri. Yang masih belum jelas adalah berapa sih ongkos untuk menyewa seorang rainmaker. Berapa sih seorang rainmaker harus menghargai influence-nya?

Berikut ini kita coba telusuri bersama apa yang bisa dijadikan tolak ukur dalam mengukur performa rainmaker.

Friends and Followers

Jumlah ini tidak selalu bisa dijadikan patokan tapi bisa dijadikan hal pertama yang dirujuk karena sangat kentara. Friends dan followers bisa dilihat lewat Facebook, Twitter, blog dan social network lain. Jika friends dan followers ini bisa disegmentasi berdasar kriteria tertentu (eg: age, industry, etc), semestinya bisa membantu formulasi nilai influence yang lebih akurat.

Social Activities

Friends dan followers boleh saja banyak, akan tetapi jika rainmaker tidak pernah melakukan social activity apalah gunanya. Social activities bisa dimonitor lewat technorati atau backtype dan google, walaupun tidak memiliki metode yang akurat dan efektif. Hal yang bisa di-track adalah jumlah konten yang diproduksi baik di tempat sendiri maupun di tempat-tempat lain (termasuk komentar, dan lain-lain)

Social Reactions

Social reactions menggambarkan bentuk influence rainmaker. Berapa orang yang terpengaruh dengan konten yang diproduksi rainmaker. Ini hal yang cukup susah karena belum banyak tool yang tersedia untuk mengukur valuenya. Beberapa yang bisa dipakai misalnya UberVU dan Radian6. UberVU bersifat gratis dan cukup informatif untuk menggambarkan buzz atas suatu keyword atau URL. Jika kita memakai pemendek URL seperti Bit.ly, kita bisa mendapatkan statistic berapa orang yang mengklik URL yang kita sebarkan. Kita juga bisa melihat bagaimana buzz yang diciptakan oleh rainmaker berkembang lewat socialcollider.

Anda punya ukuran lain yang bisa dipakai? Jika Anda adalah perwakilan sebuah perusahaan, bagaimana Anda akan menghitung biaya menyewa rainmaker? Value apa saja yang Anda harapkan?

Jika Anda rainmaker atau calon rainmaker, berapa angka yang akan Anda ajukan? Apa yang bisa Anda tawarkan?

Kesan Pertama adalah Segalanya

Kesan Pertama adalah Segalanya

WOW!

Hampir sih, hampir segalanya. Kesan pertama menjadi penting karena semakin lama semakin sedikit pula waktu yang dimiliki konsumen untuk bisa melihat semua alternatif yang ada. Ditambah dengan semakin naiknya jumlah alternatif layanan yang bersaing mencari perhatian konsumen. Ya, tidak terbatas dalam satu jenis saja. Semua layanan bersaing mencari perhatian konsumen. Jika kita tidak bisa melekatkan kesan baik di hati konsumen, kemungkinan besar konsumen tersebut tidak akan kembali lagi. Kecuali ada hal menarik yang mengingatkan dia untuk kembali, which is a rare opportunity.

Jadi, bagaimana kita bisa memberi kesan pertama yang baik? Tentunya ada banyak sisi dari suatu layanan. Semakin tinggi skor Anda di semua sisi, semakin baik pula kesan pertama yang Anda timbulkan

Response Time

Sedini mungkin memberikan notifikasi bahwa layanan Anda sedang dimuat. Tidak, tidak harus memuat semua fasilitas di halaman pertama dan dalam sekali load saja. Ada banyak trik yang bisa diaplikasikan di sini. Selain konfigurasi web server (kompresi, cache, load balancer, dll) dan aplikasi (algoritma yang efisien, ramah cpu serta memory, akselerasi lewat byte-code, dll), Anda bisa memakai ajax untuk melakukan loading di background. Atau memuat fitur hanya saat diminta.

Desain

Konsumen bisa punya selera yang bermacam-macam. Jika pasar Anda tidak berda di segmen selera yang sama maka yang terpenting adalah design that works. Tidak hanya fokus pada art, tapi pada fungsi. Pastikan tidak ada elemen yang sekedar nampang tanpa punya fungsi khusus. Namun, jika Anda berani, Anda bisa go all out dengan tambahan pernak-pernik yang memberikan value keren. All out, tidak boleh setengah-setengah!

Konten

Jika layanan kita berjualan konten, tentunya jangan dibiarkan konten amburadul saat launching. Pastikan ada cukup konten yang tersedia untuk mengakomodasi beberapa variasi selera pengguna. Pada masa ini konsumen jauh lebih peka dengan konten-konten yang niche. Vertikal yang dulunya niche, sekarang justru mengandung banyak sub vertikal. Contoh: Operating System, dulu hanya ada beberapa saja namun sekarang sudah ada banyak pilihan yang bahkan menjadi vertikal tersendiri.

Customer Service

Anda pasti ditertawakan jika meluncurkan layanan tanpa membuat akun twitter. Kalaupun tidak ditertawakan mungkin Anda akan menyesal. Sebagian besar konsumen akan menyuarakan tanggapan dan keluhannya lewat media sosial. Jika Anda bisa merespon tanggapan dan keluhan konsumen tersebut dengan cepat, Anda akan bisa memberikan kesan pertama yang benar-benar mengesankan. Ini adalah hal-hal kecil yang sangat personal namun memiliki skor besar.

The worst thing about first impression is that we never know when it’s going to happen. Tidak ada pilihan lain, Anda tidak boleh memburu kesan pertama di saat launching layanan saja. Kesan pertama saat launching memang akan menentukan banyak hal, termasuk userbase dan viralitas. Namun setelah itu masih ada banyak momen lagi untuk bertemu konsumen. Make sure every moment counts!