Dunia Kerja

Dunia Kerja? Dunia atau saat yang mungkin paling ditunggu waktu masih sekolah/kuliah, membayangkan kerja punya uang sendiri, bisa beli barang dengan uang sendiri, bla..bla..bla..bla.. memang angan-angan tidak selalu indah seperti kenyataanya, bisa lebih buruk atau lebih baik 🙂

Jadi, artikel kali ini soal apa ya? Hanya mau menuangkan pikiran saja. Pernah membaca sebuah berita yang disebutkan bahwa 90% orang yang sedang bekerja ingin keluar dari tempat kerja mereka sekarang ini(tidak ingat persis dari media mana). Wow! Angka yang sungguh sangat mencengangkan, bisa saya katakan bahwa setidaknya hanya 10%(atau kurang) yang benar-benar menikmati pekerjaan mereka saat ini. Bagaimana dengan Anda?

Kalau demikian banyak sangatlah mungkin, tentu disekitar juga banyak, teman/rekan kerja yang tidak puas dengan pekerjaan sekarang dan menginginkan pindah mencari yang lebih baik lagi, nyatanya belum tentu juga tempat yang baru lebih baik dari yang sekarang. Yang sering saya temukan adalah, mereka sangat ingin pindah, cari kerja di kota A, perusahaan X, bla..bla..bla sampai-sampai mereka lupa bahwa mereka masih bekerja sekarang, sehingga tidak memberikan hasil kerja yang maksimal. Menurut saya sah saja jika kita mencari tempat yang lebih baik, tapi juga tidak boleh melupakan dimana kita sekarang bekerja, melakukan yang terbaik juga untuk perusahaan yang sekarang, dan menurut saya, hidup juga begitu, tidak baik kita terlalu terhanyut akan masa lalu(kesalahan, hal buruk, hal baik) atau akan angan-angan masa depan(mau ini, itu, bla..bla..bla) TAPI lupa akan kehidupan kita SEKARANG(NOW, PRESENT).

Jadi, do the best now for the future!

Advertisements

Perubahan

PERUBAHAN. Mungkin kata ini yang sering kita dengar sehari-hari, bagi kita yang berkecimpung di dunia development program, kata-kata ini menimbulkan efek pusing berkepanjangan :D. Bagaimana tidak, program yang sudah kita susun dengan baik ternyata ada perubahan, perubahan, perubahan lagi, menimbulkan kejenuhan.
Dari beberapa project yang pernah saya ikuti, ternyata hal ini tidak dapat dihindarkan, tidak tahu apakah karena memang skala project yang belum profesional yang belum menerapkan Software Development Life Cycle(SDLC) dengan baik, kesalahan pada saat desain pada saat desain, atau memang dari pihak user yang tidak bisa membatasi pemikirannya sehingga dengan seiring perkembangan pemikirannya program juga harus berubah. Hal inilah yang membuat project tidak selesai tepat waktu dan orang yang terlibat project merasa jenuh.

Memang perubahan dalam proses development program sebisa mungkin dihindari, karena semua kemungkinan harus sudah didefinisikan pada waktu kita melakukan desain sistem, tapi yang namanya kekurangan pasti tetap ada. Nah, bagaimana menyikapi hal ini jika memang perubahan ini tidak mungkin dihindari sehingga perubahan ini mau tidak mau harus dilakukan. Menurut saya, lebih baik jika sistem yang kita kembangkan dibuat lebih fleksibel terhadap perubahan-perubahan yang mungkin terjadi, jadi memang sistem siap untuk menerima berbagai kemungkinan perubahan, dan kita juga siap jika perubahan memang tidak bisa lagi ditolak. Dengan demikian tidak akan ada frustasi yang berkepanjangan atas perubahan-perubahan yang terjadi, karena kita sudah menyiapkan semuanya dari awal, baik itu sistem dan diri kita. seperti kata pepatah kita “sedia payung sebelum hujan”, mungkin yang lebih ekstrim lagi adalah memandang perubahan itu sabagai tantangan untuk lebih maju lagi – walaupun untuk mengubah pola pikir ini bukan hal yang mudah 😀

Jadi, persiapkan diri untuk perubahan 🙂

Ext.Ajax.timeout

Sempat beberapa waktu yang lumayan lama saya berkutat dengan kebingungan karena request ajax saya lewat ExtJs mengembalikan respon ‘Aborted’. Identifikasi pertama saya adalah masalah di max_execution_time di setingan PHP nya, tapi walau sudah saya seting ke nilai yang lebih tinggi juga ternyata tidak pengaruh. Hal yang aneh adalah walaupun status yang dikembalikan adalah ‘Aborted’ tetapi query saya ke MySQL tetap dijalankan, berarti bukan masalah diPHPnya, pasti di ExtJs nya.

Setelah googling beberapa waktu lama dan melihat dokumentasi dari ExtJs ternyata request melalui Ext.Ajax.request punya properti timeout yang di-set ke 30000(miliseconds) praktis setelah 30 detik request ajax dibatalkan dan mengembalikan respon ‘Aborted’ walaupun script PHP di server masih dijalankan.

Ext.Ajax.request({
	waitMsg: 'Wait a second...',
	url: 'http://localhost/appl/proses/',
	params: { strans: 'barang' },
	timeout : 180000, // timeout di-set menjadi 180s
	success: function(response) {
	},
	failure: function(response) {
	}
});

Semoga bisa bermanfaat untuk kita semuanya,
Semangat berkarya..

Koneksi PHP ke Oracle di Fedora 12 x86_64

Beberapa waktu lalu, saya sempat dipusingkan dengan settingan koneksi PHP ke Oracle di Fedora 12 x86_64. Karena selama ini belum pernah bekerja di lingkungan x86_64, dan jika di lingkungan 32bit cukup dengan LAMPP, untuk koneksi ke Oracle sudah saya bahas di artikel sebelum ini, tidak terlalu sulit. Setelah cukup lama mencari-cari kesana kemari, akhirnya saya menemukan artikel yang membahasnya di sini. Berikut saya rangkum prosesnya.

  1. Install PHP
    # yum install httpd php php-adodb php-pecl-mailparse phpmyadmin php-odbc php-pecl-fileinfo php-cli php-pear-file php-eaccelerator php-pecl-memcache php-pear-db php-common 
  2. Download Oracle Instant Client
    Oracle Instant Client yang dibutuhkan ada dua, yaitu basic dan devel, masing-masih dapat didownload melalui link di bawah ini:

  3. Install Oracle Instant Client
    # rpm -ivh oracle-instantclient11.2-basic-11.2.0.1.0-1.x86_64.rpm
    # rpm -ivh oracle-instantclient11.2-devel-11.2.0.1.0-1.x86_64.rpm
    
  4. Install Oci8
    Ini adalah langkah paling utama yaitu instalasi Oci8,

    # pear install pecl/oci8

    kemudian akan muncul perintah untuk memasukkan path dimana kita menempatkan Oracle Instant Client yang sudah kita install pada tahap 3. Jika Anda tidak memindahnya ke path yang lain secara default berada di /usr/lib/oracle/11.2/client64/lib. Masukkan instantclient,/usr/lib/oracle/11.2/client64/lib/ kemudian lanjutkan dengan menekan enter.

  5. Setelah instalasi selesai, langkah yang paling akhir adalah menambahkan extension=oci8.so di bagian Dynamic extensions pada php.ini (/etc/php.ini)

Ada satu tambahan lagi yang penting adalah secara default httpd di Fedora 12, modul mod_rewriter.so belum bisa dipakai walaupun modul ini sudah di-load. Untuk mengaktifkannya dengan cara mengganti properti di httpd.conf (/etc/httpd/httpd.conf) di bagian AllowOverride dari  AllowOverride None menjadi  AllowOverride All, kemudian restart service httpd. Demikian, semoga bermanfaat.

Instalasi oci8 di LAMPP

Tidak seperti versi untuk Windows, aktivasi driver Oracle untuk PHP oci8 di XAMPP untuk Linux atau LAMPP perlu  tambahan driver yaitu Oracle Instant Client. Jika di versi Windows, kita tinggal menghilangkan comment di file php.ini pada line oci8, sementara di Linux kita harus menambahkan library Oracle Instant Client ini ke folder lib di instalasi LAMPP. Berikut yang perlu dilakukan untuk mengaktifkan oci8 di LAMPP:

  1. Download LAMPP di sini.
  2. Download Oracle Instant Client di sini.
  3. Ekstrak kedua file tersebut kemudian salin Oracle Instant Client driver di folder lib di lampp,
    root@daniel-laptop:/media/Data/Linux# tar -zxf xampp-linux-1.7.3a.tar.gz
    root@daniel-laptop:/media/Data/Linux# unzip oracle-instantclient-basic-10.2.0.4-1.i386.zip
    root@daniel-laptop:/media/Data/Linux# mv lampp /opt/
    root@daniel-laptop:/media/Data/Linux# cp instantclient_10_2/* /opt/lampp/lib/
  4. Instalasi oci8. masukkan path Oracle Instant Client di /opt/lampp/lib/ saat muncul prompt yang meminta memasukkan path Oracle
    root@daniel-laptop:/media/Data/Linux# cd /opt/lampp/
    root@daniel-laptop:/opt/lampp# ./lampp oci8
    Please enter the path to your Oracle or Instant Client installation:
    [/opt/oracle] /opt/lampp/lib/
    installing symlink...
    patching php.ini...
    OCI8 add-on activation likely successful.
  5. Instalasi selesai, silahkan di lihat di phpinfo(), jika belum muncul oci8, coba restart Apache kemudian cek kembali.

Semoga membantu.. 🙂