Showing posts with label Kerjaan. Show all posts
Showing posts with label Kerjaan. Show all posts

Saturday, March 21, 2009

Lelah...

Minggu ini benar-benar menjadi minggu yang melelahkan. Dimulai dari awal minggu ketika ada acara dari kantor selama dua hari berturut-turut yang menyebabkan aku kurang tidur + overdosis kopi. Biasanya, dalam keadaan normal, aku jarang-jarang minum kopi. Kalopun minum, dibatasi hanya secangkir dalam satu hari. Konsumsi melebihi 3 cangkir sudah aku anggap sebagai overdosis. Overdosis kopi menyebabkan pikiran menjadi tak jernih dan nggak bisa fokus. Udah tahu bgini, masih aja nambah terus. Kopi memang enak, tapi tak menyehatkan.

Di tengah minggu, tiba-tiba muncul kerjaan yang berhubungan dengan iPhone yang akan di-launch hari Jumat lalu. Yang paling menyebalkan adalah requestnya biasanya suka mendadak dan gampang berubah. Benar-benar bikin kesal. Seolah memberikan kesan bagian yang meminta request nggak konsisten dan mempermainkan. Dan hari Kamis lalu menjadi hari yang paling parah dalam seminggu ini. Pulang dari kantor jam 11 malem barengan ama temen-temen lain yang satu tim juga. Malam itu, aku mendengar gerutuan, caci maki, dan kekesalan yang ditujukan kepada proyek ini. Well.. It's the dark side of iPhone. Bikin panik tiap orang yang terlibat didalamnya hanya gara-gara orang-orang yang kurasa terlalu paranoid akan proyek ini.

Hari Jumatnya, aku sudah sangat lelah. Kerjaan lain sudah menumpuk, pikiran udah jelas nggak jernih gara-gara efek kopi di awal minggu dan efek negatif iPhone di hari sebelumnya. Emosiku nggak stabil. Pikiran nggak tenang. Pola makan menjadi terganggu. Selera makanku agak-agak bermasalah beberapa hari terakhir ini. Pada hari Jumat itu malah aku rasakan aku mengalami 'trashing' -> istilah yang aku dapatkan dari mata kuliah Sistem Operasi *silakan googling untuk mendapatkan penjelasan*. Yah, istilah kasarnya mungkin bisa disamakan dengan idle atau bengong.

Hari ini, aku ada acara keluarga. Dan memakan waktu seharian. Benar-benar membuatku merasa begitu lelah di akhir minggu ini. Tadinya kupikir hanya sampai setengah hari, sehingga setengah harinya bisa kugunakan untuk istirahat. Ternyata aku salah memperhitungkan waktu. Lebih parahnya lagi, besok aku ada rencana lainnya yang kurasa akan memakan waktu seharian juga. Ah, kapan bisa istirahatnya? Should I take one more cup of hot coffee to throw away all of this matter for a while??? Damn, for this question, I can't even make a decision. Sigh..

Thursday, January 22, 2009

Dateng Siang, Pulang Sore, Tapi Kerjaan Beres

Beberapa hari terakhir ini rasa-rasanya males banget datang ke kantor pagi-pagi. Selain karena pagi-pagi biasanya kantor masih sepi banget, ditambah sekarang musim hujan, tambah males deh. Biasanya kantor mulai ramai jam 9 keatas. Kalaupun ada yang dateng pagi-pagi, paling belum ngurusin kerjaan: browsing, sarapan, ngopi, dan baca koran adalah kegiatan yang sudah lazim dilakukan sebelum jam 9.

Kondisi ini diperparah ketika makan siang. Dalam 3 hari terakhir ini ada ajakan untuk makan siang di luar, dimana kembali lagi ke kantor sekitar jam 2 s/d setengah 3. Yang lebih parah lagi adalah dalam 3 hari ini kerjaanku sedang menumpuk dan lumayan banyak. Entah kenapa aja, walaupun menumpuk, aku masih bisa merasa santai dengan waktu yang terbuang.

Setelah aku sakit tipes ketika awal tahun kemarin, aku selalu berusaha untuk pulang tepat waktu, jam 5 udah harus pulang untuk mengejar kereta ekspress yang berangkat dari Stasiun Sudirman jam 17:30, atau paling telat pulang jam 6 kurang. Dan herannya, dengan kondisi ini, justru waktu yang aku miliki benar-benar menjadi efektif walaupun aku merasa sedikit cemas dan panik karena mesti ngejar deadline kerjaan dan deadline jadwal kereta. Dalam 3 hari ini terbukti semua pekerjaanku bisa beres dan aku bisa pulang tepat waktu. Dengan catatan selama bekerja, nggak ada jeda untuk melakukan sesuatu diluar pekerjaan, seperti browsing, chatting, baca koran, dan lain sebagainya.

Kesimpulannya: Untuk menyelesaikan pekerjaanku dalam sehari, waktu yang dibutuhkan sekitar 5 jam. Sementara jam kerja adalah 8 jam. 3 jam sisanya sebenernya nggak efisien. Karena biasanya ketika kerja 8 jam, banyak waktu yang terbuang juga untuk browsing, chatting, dan segelintir aktivitas-aktivitas lainnya diluar pekerjaan. Untung emang kultur departemenku fleksibel, yang penting kerjaan kelar.

Friday, November 14, 2008

Sisi Positif dan Negatif Audit

Sisi Positif dan Negatif dari Audit

Setelah badai audit mereda beberapa waktu yang lalu, aku mencoba untuk menelaah sisi-sisi positif dan negatif yang diakibatkan oleh proses audit itu sendiri, dilihat dari sudut pandang orang yang diaudit. Tulisan dibawah ini sangat subjektif. Jadi kalo ada yang mau berkomentar atau memberi masukan, sok-sok aja, terutama mungkin dari sisi auditornya sendiri :P.

Sisi positif:

  • Membantu unit kerja tertentu untuk menambal berbagai macam celah yang ada dan yang mungkin timbul di masa yang akan datang.
  • Memastikan suatu unit kerja menjalankan proses yang benar dan sesuai dengan SOP yang telah ditentukan.
  • Dengan adanya audit, proses bisnis unit kerja tempat kita bekerja menjadi transparan. Terutama yang berhubungan dengan uang, dimana unit kerja tersebut sangat rentan dari tindakan-tindakan fraud dan korupsi. Dan tentunya, dengan audit pula, bisa mencegah segelintir orang tertentu untuk melakukan dosa-dosa korupsi dan fraud.
  • Membuat para karyawan menjadi lebih disiplin dalam pekerjaannya. Alasan ini aku pilih karena melalui audit, semua dokumen-dokumen yang mendukung harus tersedia. Cukup memaksa masing-masing unit kerja untuk selalu melengkapi dokumen-dokumen yang diperlukan. Ujung-ujungnya karena adanya suatu paksaan, bisa melatih kedisiplinan.
  • Audit bisa melatih seseorang menjadi rajin, karena semua hal yang berhubungan dengan transaksi dan proses bisnis akan selalu dicatat dengan baik. Sehingga hal ini memudahkan proses pencarian dan pengorganisasian dokumen-dokumen yang diminta oleh tim audit.
  • Bisa meningkatkan Key Performance Index (KPI) dari unit kerja yang diaudit, jika tidak ditemukan temuan apapun.

Sementara itu, sisi-sisi negatifnya antara lain:
  • Menambah kerjaan. Jelas banget nih. Karena mesti mengobrak-abrik dokumen dan menyediakan dokumen-dokumen yang diperlukan. Terkadang, bisa bermunculan dokumen-dokumen baru yang harus dibuat agar unit kerja tertentu comply dengan audit.
  • Menyita waktu dan memicu stress, karena dokumen-dokumen yang diminta seolah tak pernah habis dan deadlinenya sangat ketat. Belum lagi setelah dokumen diserahkan, ternyata masih ada yang salah dan kurang. Ujung-ujungnya, yang ada malah jadi kesel sama auditornya. *Untung audit kemaren auditornya nggak ngeselin*
  • Jika desain kontrolnya ternyata kurang sesuai dengan kondisi nyata, bisa ribet. Karena harus memenuhi dan membuat dokumen yang jelas-jelas tidak bisa dipenuhi. Artinya ekspektasi dari tim penyusun desain kontrolnya terlalu perfeksionis dan kurang memahami kondisi unit kerja yang diaudit.
  • Kurang ramah lingkungan. Bayangkan, berapa banyak lembar kertas yang harus dicetak dan difotokopi untuk menunjukkan bahwa pihak-pihak terkait menandatangani dokumen-dokumen tersebut. Untuk menghindari fotokopi, semua dokumen bisa di scan, dan tentunya akan memudahkan pencarian.
Well, kira-kira kalo dari sisi auditornya sendiri gimana yah?

Tuesday, November 04, 2008

I hate Monday

It was really troubled me. I wished, I could go home early. This week, I intend to go home early everyday. I don't want to waste my time too much in the office. When I come home earlier, at least I can do more things useful for me. Moreover, I could spare my time to rest and sleep.

But, Monday has ruined my schedule. When suddenly, I had to prepare all documents needed for audit requirement. Just guess when I should submit all of them. It's the next day, Tuesday morning, today. Irritated me so much. After collecting all of the documents, I had to verify them one by one, organize them, ask my manager for approval and sign it, and finally scan it one by one and send it to the one who responsible in ruining my day.

Yesterday, I went out from office at 20:30. One hours later, I could relax myself on my room. Straighten my feet on my bed. Thinking, how much time I supposed to be had if I could go home earlier. After all, I am contented of what I had done yesterday. Even though I came home late, all damn things related to audit had been done. The question is: "Why there'll always be one day like this every week?" When, I had a plan but it's all had to be canceled due to my job. Sigh..

Friday, December 14, 2007

Cape Deh...

Malam ini, kesabaranku diuji. Berhubung sore-sore ada meeting di luar jam kantor, jadinya aku harus pulang agak malam. Sebenarnya nggak apa-apa sih. Yang jadi masalah adalah kejadian setelahnya. Meetingnya sih selesai tepat sebelum maghrib. Karena masih ada pekerjaan yang belum selesai, aku memutuskan untuk menyelesaikannya malam itu juga. Sekalian nunggu waktu isya. Supaya ketika pulang nanti udah tenang. Tinggal tidur.

Setelah sholat Isya, ketika udah mau pulang, aku diminta temenku untuk menyelesaikan suatu masalah teknis dengan salah satu Content Provider alias CP. Beberapa hari yang lalu beberapa layanan CP ini ditutup karena menyalahi kesepakatan yang berlaku. Dan malam itu layanan tersebut sudah dibuka kembali tetapi mengalami masalah.

Well, berhubung orang teknis yang tersisa cuma aku, ya sudahlah aku terima pekerjaan itu. Aku mencoba memeriksa apakah ada kesalahan konfigurasi atau tidak, dan ternyata tak ada. Bahkan ujung-ujungnya sampe telpon-telponan hingga berlanjut ke chatting di YM untuk menyelesaikan masalah ini. Karena kurasa disisi sistemku nggak ada masalah, akhirnya aku meminta log query yang lebih lengkap ke CP tersebut. Jam sudah menunjukkan pukul 9 malam. Hhh.. Kalo jam segini aku pulang, sampai di rumah jam setengah 11 pikirku. Padahal ini masalah belum selesai. Melalui YM aku menunggu respon yang tak kunjung datang, log query yang kuminta untuk menyelidiki masalah lebih lanjut. Aku coba tanyakan lagi, tapi tetap tak ada respon. Duh.. dalam hatiku ini yang butuh siapa, ditanya kok nggak menjawab. Berhubung besok paginya aku ada acara, dan mesti berangkat pagi, aku memutuskan untuk segera pulang. Bodo ah, udah capek aku 'dikerjain' seperti ini. Memangnya nggak ada kerjaan lain apa sampe jam 9 malem di kantor nungguin sesuatu yang nggak jelas. Mana mendadak pula lagi.

Secara track record, ini CP sering bermasalah, aku juga tahunya dari temenku yang menangani CP ini. Dari mulai pelanggaran-pelanggaran ringan sampe dengan pelanggaran berat (dapet surat peringatan dari B**I juga), ada aja masalahnya. Konon, aku jadi merasa bersalah juga ketika melihat log data sms yang dikirimkan pelanggan ke CP ini. Penuh kata-kata kasar dan kata-kata makian. Atas dasar inilah aku jadi agak-agak males jika berhubungan dengan CP ini. Cuma karena memang namanya juga kerjaan, mau nggak mau mesti dikerjain. Tapi apa yang kualami sekarang ini udah kelewatan. Di perjalanan aku mencoba rileks. Beberapa kali ada telepon masuk, sekitar jam 10 yang aku tahu itu dari CP tersebut. Udah males aku angkat. Lagipula yang bener aja jam 10 mesti ngurusin yang beginian. Aku biarkan saja. Biar tahu rasa tuh. Kuperkirakan revenue CP tersebut yang hilang selama weekend ini (dengan asumsi hari senin masalahnya solved) bisa sampe puluhan juta, dan mungkin lebih. Biarin ah, salah sendiri nggak merespon waktu aku tanya tadi.

Semoga saja keputusan yang aku ambil tepat. Walaupun tercampur oleh emosi-emosi dan persepsi negatif.

Wednesday, December 12, 2007

The Power Of Unix Shell

Kemarin malam, aku melakukan kesalahan bodoh dalam membuat script menggunakan bahasa PHP. Intinya sih script yang aku buat akan memberikan output file yang merepresentasikan isi dari suatu query ke database MySQL. Masing-masing field akan dipisahkan oleh tanda semicolon (;) dan masing-masing row akan dipisahkan oleh karakter newline (\n).

Berhubung karena aku melakukan kesalahan, aku lupa menambahkan karakter newline yang akan menjadi pemisah antar row. Karena kesalahan ini, file output tersebut hanya berisi satu baris. Terlebih lagi hasil query data yang aku lakukan juga lumayan banyak, maka ukuran file output tersebut juga lumayan besar. Isi file tersebut memiliki format :

aaaa1;bbbb1;cccc1;dddd1;eeee1;fffff1;;;;;;aaaa2;bbbb2;cccc2;dddd2..... (dst)

Entah juga apakah ini merupakan kesalahan lain dari scriptku atau bukan. Satu row query berisi enam field. Tapi jika melihat isi filenya seolah ada 11 field. Tapi beruntung juga sih, karena kesalahan ini aku bisa melihat bahwa masing-masing row dipisahkan oleh string ';;;;;;'.

Setelah berpikir lumayan lama mengenai solusi untuk memecahkan masalah ini - yang diantaranya adalah membuat script lain yang akan memecah satu baris file tersebut sesuai dengan jumlah row hasil query -, aku mencoba cara lain yang lebih sederhana, yaitu membuka file tersebut menggunakan editor dan me-replace semua string ';;;;;;' dengan karakter newline. Ternyata, karena saking besarnya ukuran file, ketika dibuka saja aplikasi editornya udah nge-hang duluan.

Akhirnya aku mencoba untuk mengutak-atik isi filenya mengunakan perintah di Shell. Ternyata hanya dengan menggunakan perintah sed (stream editor), semua masalah bisa terselesaikan. Untuk me-replace semua string ';;;;;;' menjadi karakter newline, hanya perlu menggunakan perintah

sed 's/;;;;;;/\n/g' [nama file]

Lama-lama jadi semakin betah aja ngutak-ngatik perintah-perintah Shell di Unix :P. Praktis dan cepat, tanpa perlu membuka file dan melihat isinya, semuanya langsung dikerjakan oleh satu baris perintah. Mungkin masalah diatas juga bisa diselesaikan menggukana editor vi. Cuma berhubung masalahnya udah selesai, nggak aku cobain deh tuh vi nya.

Wednesday, August 08, 2007

Got error 127 from table handler

Minggu ini kebetulan aku kebagian kerjaan untuk melakukan suatu operasi pada suatu tabel di MySQL. Operasinya cukup sederhana. Pada tabel tersebut, akan dilakukan operasi penghapusan sesuai dengan data-data yang berada pada tabel lain. Berhubung operasi ini melibatkan data yang jumlahnya lumayan banyak - dan karena tabel ini digunakan untuk production, maka untuk berjaga-jaga tabel tersebut harus dibackup terlebih dulu.

Menurutku, cara yang paling mudah untuk melakukan backup adalah dengan membuat salinan tabel tersebut. Yang paling gampang adalah membuat tabel baru yang strukturnya sama dengan tabel sebelumnya, lalu kemudian datanya disalin dengan menggunakan perintah seperti berikut :

INSERT INTO tabel2 SELECT * FROM tabel1;

Seharusnya perintah tersebut dapat dieksekusi dengan benar. Namun, yang terjadi adalah kebalikannya. Setelah menunggu agak lama, muncul pesan error: ERROR 1030: Got error 127 from table handler. Walaupun terjadi error, sebagian data berhasil disalin. Hanya sekitar 200 ribu row data yang tidak berhasil disalin.

Kemudian, aku mencoba cara selanjutnya, yaitu menggunakan perintah mysqldump pada shell. Dan anehnya, cara ini pun gagal. Hanya sebagian data yang berhasil di dump. Dan sekitar 200 ribu row data yang tidak berhasil di dump. Jumlahnya sama persis dengan cara sebelumnya.

Setelah melakukan googling, ternyata diketahui bahwa error 127 disebabkan karena ada bug pada MySQL 4.0.17 yang kebetulan versinya sama dengan yang sedang aku gunakan. Dan konon katanya bug ini sudah dihilangkan pada versi 4.0.18 keatas. Tetapi bisa juga pesan error tersebut muncul karena tabelnya korup.

Jika menggunakan asumsi yang pertama, memang ada bug pada versi 4.0.17, gimana mau melakukan upgrade ke versi yang lebih baru, sementara data-datanya tidak bisa dibackup terlebih dulu. Benar-benar aneh nih jadinya. Dan akhirnya, kerjaanku pun nggak selesai, malah nambah kerjaan baru :P. Ada solusi?

Tuesday, June 19, 2007

Secure SHell FileSystem

Berhubung di Ubuntu aku tidak menemukan aplikasi yang cukup user friendly semacam WinSCP di Windows, maka terpaksa deh mencari alternatif lain yang dapat memudahkanku dalam melakukan transfer file dari local ke remote ataupun sebaliknya. Di Ubuntu setahuku package yang cukup interaktif adalah secpanel, sejenis WinSCP. Cuma tampilannya terkesan kuno dan cara pakainya juga rada-rada ribet. Masa setiap mau transfer file ditanyain dulu passwordnya. Entahlah jika aplikasi tersebut butuh konfigurasi lebih lanjut lagi.


Setelah melakukan pencarian, aku menemukan package yang bernama sshfs yang merupakan singkatan dari Secure SHell FileSystem. Aplikasi sshfs ini memungkinkan adanya sebuah file system yang beroperasi dengan file-file yang ada pada remote komputer menggunakan SSH login. Dengan kata lain, aku dapat melakukan mount folder remote kedalam folder lokal. Malah lebih praktis jadinya. Aku nggak perlu repot-repot menyalin file dari local ke remote ataupun sebaliknya. Tinggal buka filenya, edit, lalu save seperti halnya menyunting file-file yang berada di local.

Untuk melakukan instalasi package sshfs di Ubuntu, caranya sangat mudah. Aku mengikuti panduan yang aku dapat dari Ubuntu Guide. Kira-kira seperti inilah langkah-langkahnya:

Install package sshfs

sudo apt-get install sshfs
Menambahkan driver kernel untuk FUSE yang memungkinkan pengguna Linux untuk membuat file system sendiri tanpa harus menulis kode kernel.

sudo modprobe fuse

Menambahkan username ke dalam group fuse, dalam kasus ini username yang aku gunakan adalah amphie

sudo adduser amphie fuse

Melakukan logout dan login ulang agar perubahan dapat terjadi

Mengubah kepemilikan /dev/fuse menjadi milik group fuse

sudo chgrp fuse /dev/fuse

Membuat mountpoint (lokasi mount remote folder di local folder), dalam kasus ini aku membuat mountpoint di folder remote208 di folder /home/amphie

mkdir ~/remote208

Dan yang terakhir adalah melakukan mount remote folder ke mountpoint (remote208). Pada contoh dibawah ini, aku melakukan mount remote folder /home/ekopre yang berada pada 10.1.89.208 ke dalam /home/amphie/remote208 yang berada di local.

sudo sshfs 10.1.89.208:/home/ekopre ~/remote208 -o allow_other

Untuk melakukan proses unmount, perintahnya adalah:

fusermount -u ~/remote208

Sejauh ini, aplikasi sshfs ini aku gunakan untuk menyunting file-file PHP yang berada di remote. Lumayan juga, jadi lebih praktis dan lebih menghemat waktu. Tetapi anehnya Ubuntu punyaku seringkali nge hang ketika file-file remote yang aku sunting menggunakan editor Screem ataupun BlueFish. Ketika aku menggunakan Komodo Edit, semuanya berjalan dengan normal. Nggak tahu deh apakah ini adalah bug atau memang ada konflik di package-pakcage yang sudah kuinstall di Ubuntu punyaku.

Sunday, June 17, 2007

Editor apa yang bagus di Ubuntu???

Setelah merasa cukup jenuh menggunakan Windows, beberapa waktu lalu aku mencoba untuk menggunakan Linux kembali. Sudah lama Ubuntu yang sudah ku upgrade dari 6.10 ke 7.04 nggak aku pake lagi. Sayang aja kalo udah cape-cape di install kemudian nggak dipake lagi. Yah, itung-itung sekalian download update-update terbaru lah.

Berhubung minggu ini banyak sekali kerjaan yang berhubungan dengan kodingan, aplikasi Ubuntu yang aku gunakan tak jauh dari text editor untuk HTML dan PHP. Aku mengalami masalah dalam hal pemilihan text editor di Ubuntu. Sejauh ini, aku belum begitu terbiasa mengembangkan suatu aplikasi menggunakan Ubuntu. Paling banter yang aku pakai cuma text editor biasa semacam gedit. Setelah nanya-nanya temenku tentang editor yang paling oke, aku dianjurkan untuk menggunakan Bluefish. Editornya lumayan bagus. Simpel dan nggak aneh-aneh. Ada syntax highlightingnya yang cukup membantu. Namun entah kenapa justru fitur ini yang sering membuat masalah. Terkadang ketika sedang asyik-asyik coding, fitur ini jadi ngaco. Separuh file ada syntax highlightingnya sementara separuh file yang lain cuma plain text saja. Duh, kode-kode PHP nya jadi nggak enak dipandang deh.

Pilihan lain adalah Screem, gPhpedit, Quanta Plus, emacs, dan vim. Emacs dan vim konon katanya bagus. Tetapi learning curve nya agak-agak nggak bagus. Setelah aku coba juga ternyata sepertinya tampilan editor-editor ini kurang user friendly.

Menurut info yang aku dapat dari suatu forum, editor yang paling bagus adalah Screem. Ternyata editornya oke juga. Ada fitur syntax highlighting dan code foldingnya. Tetapi menurutku masih ada yang kurang. Di dalam IDE nya, tidak ada panel untuk browsing file. Padahal fitur ini mempercepat dan memudahkanku untuk membuka file-file lain yang masih berada dalam satu direktori. Terlebih lagi sepertinya Screem lebih cocok digunakan sebagai editor HTML, bukan PHP.

Akhirnya aku mencoba Quanta Plus. Iseng-iseng karena aplikasinya sudah terinstall di Ubuntu punyaku. Kesan pertamaku menggunakan editor ini adalah tampilannya yang cukup kompleks dan memiliki banyak menu-menu di menubarnya, yang menunjukkan bahwa editor ini memiliki fitur-fitur yang lumayan banyak. Semua fitur-fitur seperti syntax highlighting, code folding, panel untuk browsing file, list fungsi-fungsi PHP yang sudah aku buat, hingga fitur code completion, semuanya ada disini. Menurutku, jika dibandingkan dengan Screem, Quanta masih unggul. Sepertinya sih karena Quanta tidak seperti Screem yang aku rasa hanya spesifik untuk menangani file-file HTML saja. Sayangnya menurutku syntax highlighting pada Quanta tidak sebaik di Screem. Hanya masalah pemilihan font dan warna saja siy. Cuma males aja mesti mengubah settingan-settingan default yang sudah tersedia disitu. :P

Selain Quanta Plus, aku juga menemukan editor lain, yaitu Komodo Edit. Sayangnya editor ini walaupun free tetapi tidak open source dan tidak ada pada package Ubuntu. Selain untuk Linux, ada juga versi untuk Windowsnya. Namun untuk versi Windows, aku lebih suka menggunakan Notepad++. Versi Komodo Edit yang aku gunakan adalah versi 4.1. Tampilan Komodo Edit jauh lebih sederhana dibandingkan dengan Quanta Plus. Namun jangan salah, walaupun lebih sederhana, fitur-fiturnya lumayan OK. Fitur syntax highlighting, code folding, dan auto complete ada disini. Syntax highlightingnya lebih enak dilihat dibandingkan dengan Quanta Plus. Selain itu fitur auto complete untuk fungsi-fungsi built in PHP pada editor ini lebih user friendly dibandingkan dengan Quanta. Jika pada Quanta untuk mengaktifkan auto complete harus menekan tombol Ctrl+Space, maka pada Komodo Edit, fitur tersebut akan aktif dengan sendirinya begitu kita mengetikkan beberapa karakter dari nama fungsi yang akan diketik. Bahkan fungsi auto completenya tidak hanya berlaku untuk fungsi-fungsi built in PHP saja, namun berlaku juga untuk nama variabel dan nama fungsi lokal yang ada di dalam file yang sedang diedit. Selain itu, terdapat fitur lain yang tidak dimiliki oleh Quanta, yaitu fitur IntelliSense. Sebagai contohnya, misalkan ada potongan kode seperti dibawah ini:


class Test
{
var $var1;

function Function1($var1, $var2)
{
. . .
}

function Function2()
{
. . .
}
}
Lalu diluar kelas tersebut kita mengetikkan

$test = new Test();
$test->Function2();

maka ketika kita mengetikkan $test-> akan muncul daftar semua fungsi dan variabel yang dimiliki oleh class Test. Sejauh ini aku belum menemukan editor gratisan untuk PHP yang memiliki fitur ini. Entah apakah aku yang terlalu ketinggalan jaman atau karena aku baru nemu aja. Dulu banget aku percaya bahwa IntelliSense itu akan sangat sulit diterapkan di PHP. Karena semua variabel di PHP dianggap sebagai variant atau apalah (nggak tahu istilahnya apa). Tetapi ternyata anggapan itu menjadi hilang sekarang. Ternyata ada juga editor yang dapat mem-parsing tipe variabel untuk PHP disaat design-time. Walaupun aku rasa fitur ini hanya berlaku jika secara eksplisit statement:

$test = new Test();

masih berada dalam satu scope dengan statement

$test->Function2();

Berbicara tentang fitur, sayangnya Komodo Edit tidak memiliki panel untuk melakukan browsing file seperti di Quanta. Tetapi editor ini memiliki toolbar yang dapat menampilkan file-file yang masih berada dalam satu folder dengan file yang sedang diedit melalui sebuah combo box. Untuk membuka file di folder lain secara cepat, ada pilihan untuk memilih folder dimana nanti akan ditampilkan file-file yang berada dalam folder tersebut.

Hmm... begitu banyak pilihan dalam memilih editor mana yang paling cocok. Menurutku sih Quanta atau Komodo Edit cukup mencukupi. Entah jika ada editor lain yang lebih bagus. Ada yang tahu editor lain yang lebih baik dari yang telah aku sebutkan diatas???

Friday, June 15, 2007

User, Developer, dan Notulis

Setelah bersantai-santai dalam beberapa minggu terakhir, akhirnya minggu ini bisa sibuk juga. Empat hari terakhir ini aku kerja lembur. Rata-rata pulang dari kantor jam 9 malam. Sampai di rumah sekitar jam setengah 11. Capek juga sih, namun aku merasa puas. Akhirnya aku bisa produktif juga dalam urusan pekerjaan, walaupun beberapa rutinitasku terganggu karena pulang larut malam setiap hari.

Diawali dari hari Senin. Saat itu aku kebagian kerjaan sebagai "User", melakukan UAT bersama bagian IT dan vendor yang telah aku sebutkan dalam postinganku sebelumnya. Menjadi "User" memang harus jeli pada setiap celah yang mungkin ada. Jika memang terjadi sesuatu yang salah pada sistem, mau nggak mau mesti menunggu vendor menambal celah tersebut. Untungnya di UAT yang kemarin hal-hal yang seperti itu tidak terjadi. Malahan yang terjadi kesalahan banyak terjadi dari internal perusahaan. Maklum, setahuku ini UAT nya juga mendadak, jadi kurang persiapan. Seharusnya bisa pulang cepat, akhirnya malah mesti lembur hingga jam 10 malam.

Hari Selasa dan Rabu, aku menjadi "Developer" atau disini bisa lah disebut sebagai "Programmer". Berhubung kebagian pekerjaan yang memang sudah aku nanti-nantikan, ya nggak apa-apa lah lembur. Maksudnya biar kerjaan cepet beres. Aku berharap minggu depan jam kerjaku bisa normal lagi. Dalam kasus ini, aku bisa dibilang menjadi vendor untuk Departemen Content yang berada satu divisi denganku. Dari sisi "Vendor" ini, aku harus bisa membuat sistem yang sempurna (kalo nggak bisa ya paling nggak mendekati lah) yang sesuai dengan permintaan mereka.

Sistem yang aku kembangkan berurusan dengan salah satu perusahaan di luar sana yang berurusan dengan "email dan mesin pencari". Yang perlu aku lakukan hanya membaca data, membuat file XML dan mengirimkannya ke mereka. Aktivitas ini akan dilakukan rutin setiap hari. Menurutku cukup simple dan seharusnya dalam waktu kurang dari satu minggu bisa beres. Tetapi kenyataannya tak seperti itu. Beberapa hari ini koneksi ke server yang biasa aku pakai mengalami masalah. Anehnya ini cuma terjadi di divisiku. Sepertinya router untuk akses ke server di lantaiku mengalami masalah. Sehingga terkadang untuk melakukan upload atau download file dari server internal saja lama sekali. Tentunya hal ini mempengaruhi kecepatanku dalam menyelesaikan pekerjaan ini.

Hari Kamis, terpaksa aku harus menghentikan pekerjaanku untuk sementara waktu karena ada acara workshop dari pagi hingga sore. Workshop ini membahas perencanaan-perencanaan yang akan dilakukan divisiku pada kuartal ke-3 dan ke-4 tahun ini sekaligus mengevaluasi apa-apa yang telah dilakukan pada dua kuartal sebelumnya. Pada workshop itu aku menjadi notulis yang bertugas mencatat semua hal yang disiskusikan. Sejauh ini sih, aku belum pernah mendapat kerjaan yang 'resmi' seperti ini. Lumayan juga buat nambah-nambah pengalaman sekaligus melatih indera pendengaranku. Karena sejauh ini, aku tipe orang visual yang lebih mengandalkan penglihatan dibanding pendengaran.

Setelah workshop, akhirnya aku bisa melanjutkan kembali kerjaanku sebagai "Developer". Setelah memaksakan untuk lembur di hari itu dan sempat frustasi akibat ulah PHP yang aneh, akhirnya selesai juga pekerjaanku. Walaupun hanya untuk tahap awal, aku merasa senang karena semuanya sudah beres.


Minggu ini benar-benar aneh. Aku telah mengerjakan tiga hal yang menurutku cukup berarti dan ketiga-tiganya sangat berlainan. Walaupun demikian, aku sangat puas. Karena seminggu ini aku cukup produktif. Tidak seperti minggu-minggu sebelumnya. Apalagi ketiga hal ini tentunya menambah pengalaman dan pelajaran untuk memandang sesuatu dari sudut pandang lain. Kurasa inilah cara untuk mengaktualisasikan diri: mengerjakan apa saja yang bisa aku kerjakan untuk membuat segalanya menjadi lebih baik. Tak masalah apakah pekerjaan itu aku suka atau tidak, selama bisa aku kerjakan dan bisa kubuat lebih baik, mengapa tidak???

Thursday, June 14, 2007

Codingan yang aneh..

Beberapa hari ini aku dapet kerjaan buat mendevelop suatu sistem menggunakan PHP. Kerjaannya sih sederhana. Aku cuma perlu membaca data dari database tertentu, lalu memindahkannya ke tabel pada database lain, lalu membuat file XML yang isinya merepresentasikan data-data yang sebelumnya aku baca. Data yang harus dibaca mencapai ribuan. Jumlah data seharusnya nggak menjadi masalah disini, karena aku rasa PHP cukup reliable dalam menangani file berukuran besar.

Anehnya, jumlah data yang banyak itu menjadi masalah dalam script yang aku buat. Jika datanya sedikit, file XML yang dihasilkan dapat terbaca dan ter-parsing dengan baik (well formed). Namun, karena data yang aku baca lumayan besar, file XML yang dihasilkan berukuran sekitar 10 MB. Anehnya, file XML yang dihasilkan menjadi tidak well formed. Pada beberapa tag tertentu muncul karakter-karakter aneh. Bahkan nama tag yang sudah jelas-jelas aku hardcode pun untuk record-record tertentu menjadi kosong atau menjadi karakter-karekter aneh. Masa untuk suatu record tertentu element XML yang dihasilkan bisa berubah, sementara untuk hampir semua record nggak ada masalah. Padahal kode yang digunakan untuk mem-parsing masing-masing record itu sama.

Dan setelah aku coba mengacak-ngacak kode yang aku buat sendiri, akhirnya aku menemukan solusi yang tak terduga. Aku mengganti nama variabel yang aku gunakan dengan nama lain, dan semua masalah terselesaikan. Benar-benar aneh. Sebagai informasi tambahan, PHP yang aku pakai adalah PHP versi 4. Aku rasa ini adalah salah satu bug di PHP versi tersebut yang berkaitan dengan masalah alokasi memory secara dinamis. Mau minta upgrade versinya juga pasti susah karena server yang digunakan adalah server production. Alhamdulillah... yang penting semuanya udah beres. Bikin frustasi aja selama 2 jam ini... Fiuhh...

Monday, June 11, 2007

UAT bersama NSN

Tanpa diduga siang hari ini aku disuruh untuk UAT di lantai 11, tempat dimana orang-orang IT dan vendor berada :P. Rada-rada males juga, soalnya lagi ada kerjaan yang mesti cepet-cepet diberesin. Terlebih lagi, pengalamanku dengan UAT agak-agak kurang bagus. Terakhir kali UAT, pulangnya jam 10 malam, mana itu juga belum selesai lagi. Walaupun berada di posisi user, tetep aja males juga kalo sampe jam segitu.

UAT kali ini dilakukan bersama dengan bagian IT Business System Development (IT BSD) sebagai bagian yang bertanggung jawab dalam pengembangan sistem yang akan diuji. Sementara vendor yang mengerjakan sistem yang akan diuji adalah Nokia Siemens Network (NSN). Ternyata orang NSN yang dateng adalah kakak kelasku sendiri, Parlin 97. Yah, itung-itung jadi kenal lah. Dulu sewaktu kuliah, aku nggak terlalu kenal sama orangnya.

Pada awalnya, UAT berjalan dengan sukses. Skenario yang dibuat harus dapat dijalankan untuk kartu HALO, Simpati, dan Kartu As. Untuk Simpati dan Kartu As, semua skenario dapat berjalan dengan baik. Namun, ternyata untuk kartu HALO tidak demikian. Beberapa skenario mengalami masalah dan ujung-ujungnya UATnya molor sampe malem. Duh, padahal harusnya sebelum jam 6 sore udah bisa kelar. Masalahnya ternyata sederhana. Ada beberapa kesalahan konfigurasi dan environment yang digunakan untuk UAT ini ternyata digunakan juga oleh bagian lain, yang mungkin sedang dalam tahap development atau bahkan sedang UAT.

Akhirnya UAT diakhiri jam 10 malam, walaupun sebenarnya belum selesai. UAT akan dilanjutkan besok pagi. Untungnya skenario yang belum diuji tinggal sedikit. Semoga saja besok sebelum makan siang semuanya sudah beres. Masih banyak kerjaan yang mesti diberesin. Mana kerjaannya nggak bisa selesai dalam waktu satu atau dua hari lagi. Sepertinya minggu ini bakalan lembur tiap hari. Rencanaku untuk minggu ini jadi berantakan deh. Hhh.. Ya Allah, berilah aku kesabaran untuk menghadapi semua ini. Semoga aja weekend ini aku nggak sakit gara-gara kecapekan.

Walaupun baru sampe rumah jam setengah 12 malem, puas juga rasanya. Beban untuk UAT sudah berkurang lumayan banyak. Berpikir positif aja lah. Besok insyaallah semuanya pasti beres. Terlebih lagi, paling nggak tadi bisa makan malem bareng sama temen-temen dari IT. Udah lama nggak kumpul-kumpul ama temen Induction. Puas lah walaupun cuma bisa ngobrol-ngobrol dan bersenda gurau ketika makan malem. Semuanya terasa menjadi menyenangkan dan harus disyukuri, jika kita dapat melihat dari sudut pandang yang benar. Ahh.. kebahagiaan memang bisa datang dari mana saja tanpa bisa diduga.

Wednesday, June 06, 2007

SOP

Seminggu terakhir ini kerjaan di kantor nggak begitu banyak. Beruntung juga keadaan ini terjadi ketika aku lagi merasa nggak terlalu sehat seperti sekarang ini. Untuk menyibukkan diri, aku mencoba untuk membuat dokumentasi dari apa-apa yang menjadi pekerjaan rutinku disini, berhubung selama ini dokumentasi dari proses bisnis yang menjadi kerjaan rutinku belum ada. Lumayan lah, daripada nyantai-nyantai malah nggak enak juga.

Dimulailah pekerjaan pembuatan dokumentasi atau SOP ini mulai minggu kemarin. Berhubung banyak step-step yang sama, ujung-ujungnya copy-paste dimana-mana. Menurutku kebiasaan copy-paste ini kurang bagus karena membuatku menjadi kurang teliti dan tidak memeriksa kembali apa-apa yang udah aku copy-paste. Terbukti beberapa kali aku harus merevisi apa-apa yang telah aku copy-paste Walaupun kurang bagus, kurasa inilah cara yang paling cepat yang bisa aku lakukan untuk menyelesaikan pekerjaan ini.

Setelah semua langkah-langkah selesai didokumentasikan, kemudian ditambahkan screenshot dari masing-masing langkah. Selanjutnya dibuat tata alir dari semua langkah-langkah tadi menggunakan Cross Functional Flowchart (CFF). Duh, jadi inget kerjaan ketika Student Project dulu. Mulai dari mewawancara narasumber, membuat langkah-langkahnya, hingga membuat CFF dari langkah-langkah tersebut. Ternyata kepake juga nih ilmu bikin SOP. Padahal dulu rasa-rasanya aku nggak bakalan nyentuh lagi yang namanya bikin SOP.

Alhamdulillah hari ini sudah beres semuanya. Tinggal menunggu review dan perbaikan dari rekan-rekan yang ada disini. Walaupun ini kerjaan nggak resmi, karena ini dari inisiatifku sendiri, semoga saja aku bisa mendapat banyak masukan untuk perbaikan-perbaikan selanjutnya.