May07

work at home Sudah 1,5 bulan lamanya aku keluar dari kantor yang dulu, CV Kiranatama, selama hampir 2 tahun itulah aku berkutat dengan namanya pekerjaan outsourcing di perusahaan tsb, aku bersyukur kepada Alloh SWT pernah menjadi bagian dari kiranatama, karena bisa menimba ilmu tentang proses bisnis outsourcing, awalnya aku mempertimbangkan keluar karena aku sering sakit kelelahan dikarenakan jarak tempuh ke kantor yang jauh dan sering juga terjebak kemacetan, jd berpikir, mungkinkah aku bekerja di rumah ?, so maka dari itu sekarang aku mencoba menjadi suami rumahan :D , pindah kuadran dari employee ke self-employee, memutuskan bekerja telecommuting dan mencari proyek outsourcing sendiri.

Banyak hal baru yang dihadapi, awalnya gusar karena ndak punya pekerjaan Full-time, setelah berjibaku selama lebih dari 3 minggu, dapat juga pekerjaan Full-time tetapi remote, senang tentu saja, apalagi mengingat puluhan proposal dan lamaranku yang ditolak. Menggali dan mencari pekerjaan telecommuting tidaklah mudah, apalagi dengan bahasa inggris-ku yang pas-pasan ditambah lagi skill ruby on rails yang baru 1,5 tahun, ragu-ragu, tetapi tetaplah harus dicoba, bismillah aku pun melangkah, dan berkeliaran lah aku di situs2 penyedia telecommuting job/remote job, beberapa yang aku coba, diantaranya adalah

http://www.workingwithrails.com
http://www.linkedin.com
http://jobs.rubynow.com
http://www.guru.com
http://www.odesk.com

Yang paling banyak aku kirim lamaran tentu saja workingwithrails.com, cuma dapat 2 wawancara, 1 dari Singapore dan 1 dari Australia, hasilnya “tidak diketahui”, selama beberapa hari aku menunggu email untuk mendapatkan hasilnya, ah sepertinya keduanya nyuekin daku tanpa satu patah kata pun penolakan, lalu berlanjut ke guru.com dapat 1 wawancara dari Amerika, deal tetapi aku cuma kuat beberapa hari, proyeknya sulit ditambah lagi gajinya juga sangat kecil, so resign deh, lalu beralih ke odesk.com dan melamar pulahan kali ndak ada respon, tetapi setelah aku ngambil test dan lulus ruby on rails, Alhamdulillah akhirnya dapat 2 proyek, keduanya dari Amerika, tetapi satu akhirnya aku lepas, karena khawatir ndak bisa fokus, oiya ini juga ditambah aku membanting harga “secukupnya” ketika melakukan penawaran, dari semua anggota team yang ada di projek tersebut, aku yang dihargai terendah kedua

Ah pikirku nggak masalah dibayar rendah juga, yang penting pengalaman dulu, uang mah belakangan, setelah 2 minggu berjalan ternyata ada kesulitan juga adaptasi, karena “hampir” tidak ada pengawasan, aku belum biasa untuk mengawasi diri sendiri, seringkali pekerjaan ditunda sampai malam hari, pagi dan siang malah dipakai chating atau maen Warcraft, imbasnya rada kewalahan dan capek karena terkadang mesti begadang sampai pagi, untung aja boss belum pernah sekalipun negur, ni sore ini aja aku malah ngeblog…… padahal kerjaan masih buanyak xixixixi, untungnya di team tersebut bukan hanya aku saja yang berasal dari Indonesia, ada teman dekatku yang sudah berkecimpung di dunia outsourcing dari tahun lalu, ternyata satu team dengan daku, ah syukurlah ada teman curhat, setidaknya lebih mudah curhat dengan menggunakan bhs indonesia ketimbang bhs inggris

Salah satu sisi positif bekerja remote adalah waktu lebih fleksibel, terserah kita bekerja kapan saja, tetapi negatifnya, kalau kurang disiplin bisa2 kerjaan numpuk dan akhirnya dikerjakan sampe subuh atau pagi, selain itu masalah terbesar bekerja remote adalah infrastuktur, mesti berinvestasi untuk mempunyai koneksi internet yang bagus, kalo kerja di kantor kita tidak memikirkan hal ini karena memang diurusi sama kantor, tapi kalo kerja remote, mikirin infrastruktur sangatlah penting, jujur aja aku diketawain sama client waktu dia tahu kalo kecepatan inetku cuma 7-9 KBps, dia bilang, it’s so 10 years ago, untung aja dia baik masih nerima aku walaupun koneksiku pas-pasan, paling ndak enak hati kalo internetnya mati, apalagi mati tersebut gara2 di ISP-nya mati lampu, bingung deh mau bilang apa ke client, aku pernah mengalami 2x tentang hal ini, syukurlah client masih sabar dan mengerti

Memang dengan kondisi infrastruktur internet indonesia yang payah, hal ini mesti disiasati, minimal Punya koneksi internet 2 macam, 1 utama, 1 cadangan, dalam konteks aku mungkin 2 minggu ke depan aku sudah harus switch ke koneksi speedy yang unlimited, dan untuk cadangan mesti beli HP GPRS, entahlah apa operatornya, mungkin matrix, lalu bagaimana kalau mati lampu ?, hmm mungkin bisa disiasati dengan Laptop (hiks aku lum punya laptop), ketika mati Lampu bisa lari ke hotspot terdekat, ya ya ya…. hotspot gratisan biasanya koneksinya payah……. mana bisa dipake kerja, apalagi setau saya biasanya akses SVN dan SSH diblok, tapi setidaknya dengan lari ke hotspot, messenger kita masih bisa Online, sehingga masih bisa keep in touch dengan boss atau rekan kerja yang lain, yah begitulah aku baru sadar sekarang ternyata bekerja di rumah pun butuh modal yang tidak sedikit

Sisi minus lain bekerja remote biasaya, jarang disediakan tunjangan, walaupun slot bekerja kita 8 jam sehari, tetap saja kita disebut sebagai “kontraktor” dan bukan “karyawan”, jadi perlu menyiasati untuk membuat tunjangan sendiri, misalnya inisiatif mendaftar di asuransi kesehatan, sisi positifnya karena posisi kita kontraktor, kalau mau kita bisa saja mendelegasikan pekerjaan kita ke orang lain alias meng-hire orang lain untuk menjadi karyawan kita, dengan demikian kita punya potensi untuk switch quadran ke business owner, tapi inipun tidaklah mudah karena integritas kita yang jadi taruhannya, jika salah pilih karyawan dan kita tidak bisa membinanya, bisa2 proyek jadi gagal, client kecewa, kita pun menunggak gaji karyawan, untuk hal ini aku belum berani, kalo temanku dia malah sudah punya 5 karyawan, dan uniknya dia belum punya CV atau PT untuk perusahaannya

Sisi minus yang lain adalah perkara bahasa dan mental, dari sisi bahasa seringkali aku kesulitan untuk mengungkapkan suatu ide yang memerlukan deskripsi yang panjang dan detail, alhasil ide kadang tercetus tidak sempurna, menyesal juga tentang hal ini, karena waktu SMP dulu aku membenci pelajaran bhs inggris, dari sisi mental perasaan inferior terkadang suka muncul, tapi ini biasanya akan segera terpulihkan kalo misalnya si bule rekan kerja kita ndak tahu tentang suatu subjek lalu nanya ke kita, pikirku “nah tu dia, bule juga manusia, ndak pinter2 amat koq ^-^”, jd berusaha bersikap biasa saja untuk mengatasi inferior ini

Sisi minus yang lain bekerja remote ini adalah saingannya banyak, terutama dari negara-negara berkembang sepertu India, Filipina, dan juga Negara-negara eropa timur seperti Rusia, Polandia dan Ukraina, apalagi terkadang ada juga yang banting harga edan-edanan, tetapi selama kita tekun dan berpikir positif, kalau kita yakin punya skill dan pengalaman, don’t worry proyek cepat atau lambat akan dapat, sisi positifnya kalau sudah dapat satu, wuiiih senangnya minta ampun, apalagi kalo di odesk segalanya ter-record dengan rapi, jadi history pekerjaan kita bisa jadi alat penawaran yang bagus bila kita akan mencari proyek selanjutnya

Dari sisi keluarga, bekerja di rumah juga memungkinkan kita lebih punya banyak waktu untuk keluarga, jadi sembari bekerja bisa juga bermesraan atau menggoda istri (ups), dan kalau nanti punya anak, mungkin akan punya waktu untuk mengantar atau menjemput anak sekolah, sisi negatifnya istri seringkali mesti mengalah untuk pemakaian komputer, kadang kasihan juga apalagi kami cuma punya 1 komputer, mungkin memang mesti punya rencana untuk membeli komputer khusus untuk bekerja

Nah terakhir tentu saja sisi minus di bagian penghasilan, kalo di odesk penghasilan biasanya berpindah tangan sampai beberapa kali, dari odesk lalu ke payment provider, dari payment provider barulah nyampe ke Bank ataupun ATM dan itu dalam jangka waktu berminggu-mingu, jika boss kita membayar gaji kita hari ini, maka uang tersebut paling cepat bisa diterima 3 minggu kemudian dengan dipotong beberapa kali, tetapi walaupun begitu penghasilan bersihnya masih lebih …………… eh cek sendiri deh di odesk…, berapa minimal uang yang diterima kontraktor tiap jam/bulan-nya :D

So kesimpulannya, walaupun ada banyak sisi minus, overall aku sangat bahagia dengan situasi ini, soalnya sisi positifnya lebih banyak ketimbang minusnya, cita-cita personal mungkin aku akan terus berjibaku sampai benar2 bisa jadi business owner ataupun investor, sedangkan cita-cita secara keseluruhan, aku ingin membagi ilmu tentang outsourcing/telecommuting ini ke teman-teman di indonesia dengan harapan Indonesia bisa melebihi india di bidang IT, indonesia punya potensi dan kultur kurang lebih sama dengan India, jd punya modal untuk menyaingi india aamiin, dan tak lupa seperti kata orang bijak kalau ada kemauan pasti di situ ada FABULA NOVA CRYSTALLIS FINAL FANTASY XIII (loh - maklum terobsesi sama gim ini :D ), ah kalo bayi mungkin aku baru mulai belajar berdiri, menjadi dewasa adalah langkah panjang, so mohon doanya …. SEMANGAAAAAAAD

May Ruby Be With You ^_^

Note : Image is courtesy of Workathomeus

Apr26

What’s Ultrasphinx ? Ultrasphinx is ruby on rails plugin that utilize Sphinx, the open source Full text search engine, why we need another 3rd party library to query our database ?, it’s because Ultrasphinx fairly fast and easy to use, last week i’ve tried to install it on My lovely Werewolf, then here it is :

Install mysql server and mysql devel

sudo yum install mysql-server mysql-devel

some note : sphinx use mysql-devel to interfacing with mysql databases, for first time, i am very frustrating to compile it on my werewolf and people got the same problem like me too, so after hours + cofeemix and searching on the internet, fortunately i got the saviour, … mysql-devel of course

download sphinx

wget http://www.sphinxsearch.com/downloads/sphinx-0.9.8-rc2.tar.gz

configure and install it

tar -xzf sphinx-0.9.8-rc2.tar.gz
cd sphinx-0.9.8-rc2
./configure
make
make install

create log folder

mkdir -p /var/db/sphinx/log
chmod -R 777 /var/db/

install chronic gem

gem install chronic

go to your RAILS_ROOT directory and install ultrasphinx plugin

ruby script/plugin install svn://rubyforge.org/var/svn/fauna/ultrasphinx/trunk

congratz, ultrasphinx already installed on your rails application, then after this i will show you a little example how to implement that

say you have User model and you want the app be able to search name, email and address easily

class User< ActiveRecord::Base
  is_indexed :fields => [’name’, ‘email’,'address’]
end

configure and start ultrasphinx daemon

rake ultrasphinx:bootstrap

or

rake ultrasphinx:configure
rake ultrasphinx:daemon:start

run the indexer

rake ultrasphinx:index

note : Sphinx is a asynchronous search engine, so it is necessary to reindex your data periodically, so perhaps you need to re-index that 10-20 minutes a time, you can make cronjob for this

execute rails console and ultrasphinx on user model

ruby script/console

@search_user = Ultrasphinx::Search.new(:query => “aditya”)
@search_user.run
@search_user.results

DONE and for your reference, here i put rake command that related to ultrasphinx

rake ultrasphinx:bootstrap = Bootstrap a full Sphinx environment
rake ultrasphinx:configure = Rebuild the configuration file for the first time
rake ultrasphinx:daemon:restart = Restart the search daemon
rake ultrasphinx:daemon:start = Start the search daemon
rake ultrasphinx:daemon:status = Check if the search daemon is running
rake ultrasphinx:daemon:stop = Stop the search daemon
rake ultrasphinx:index = Reindex and rotate all indexes.
rake ultrasphinx:index:delta = Reindex and rotate the delta index.
rake ultrasphinx:index:main = Reindex and rotate the main index.
rake ultrasphinx:index:merge = Merge the delta index into the main index.
rake ultrasphinx:spelling:build # Rebuild the custom spelling dictionary.

Credit :
thank’s to Nikada team for the help

Apr16

Kebetulan saya sedang mencoba masa-masa trial VPS di http://www.daxa.net/ dengan menggunakan sistem operasi Debian 4.0 Ecth, secara default program yang tersedia belum begitu lengkap, paling yang berguna hanya apt-get saja yang digunakan untuk install paket program, sedangkan software sisanya mesti install sendiri (bahkan termasuk gcc pun belum tersedia), awalnya saya coba install Ruby dari repositorynya Debian, namun sayang setelah selesai, Ruby yg ada hanya Versi 1.8.5, sedangkan yang diinginkan oleh saya adalah Versi stable terbaru Ruby 1.8.6 Patch Level 114

so terpaksa deh compile ruby from source, oiya sebelumnya login sebagai root dan jangan lupa update apt-getnya, lihat dibawah ini untuk langkah selengkapnya

apt-get update

download source ruby

wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.6-p114.tar.gz

install library2 yang dibutuhkan untuk kompilasi

apt-get install gcc build-essential

ekstrak ruby tar.gz

tar -xvvf ruby-1.8.6-p114.tar.gz

masuk ke direktory tsb

cd ruby-1.8.6-p114

lalu compile

./configure
make
make install

selesai deh

untuk memastikan apakah ruby telah terinstall ketik ruby -v, setelah itu mari kita install Ruby on Rails dan antek-anteknya :D

download rubygems

wget http://rubyforge.org/frs/download.php/35283/rubygems-1.1.1.tgz

extract lalu install

tar xzf rubygems-1.1.1.tgz
cd rubygems-1.1.1
ruby setup.rb

lalu install library Zlib karena gem membutuhkannya

apt-get install zlib1g-dev

lalu Download dan install ruby-Zlib

wget http://www.blue.sky.or.jp/atelier/ruby/ruby-zlib-0.6.0.tar.gz
tar -xzf ruby-zlib-0.6.0.tar.gz
cd ruby-zlib-0.6.0
ruby extconf.rb
make
make install

setelah itu install rails

gem install rails –include-dependencies

dan sebagai tool pendukung jangan lupa install juga SVN, mysql server dan Mongrel

apt-get install subversion mysql-server
gem install mongrel mongrel_cluster

selesai deh :D