Showing posts with label software engineering. Show all posts
Showing posts with label software engineering. Show all posts

Thursday, December 03, 2009

Belajar mengatur project

Hari ini saya hosting project di google code. Namanya project pawang. Project ini adalah project belajar bahasa pemrograman python bersama sama. Jadi project tutorial, kita buat artikel artikel step by step belajarnya di fasilitas wiki, dan kita hosting contoh contoh programnya di google code. Project ini ber-licence MIT , apa dan bagaimana saya juga kurang tahu detailnya :D. Mohon petunjuknya.

Bagi diri pribadi, harapan saya adalah bisa belajar bersama sama secara virtual dengan rekan rekan pengguna python di indonesia. Selain itu saya juga belajar untuk mengatur project secara virtual. Semoga project ini bisa memiliki team member yang cukup banyak sehingga bisa atraktif.

Wish me luck

Thursday, September 03, 2009

3 hal yang menggangu dalam membuat applikasi yang besar

Applikasi yang kita bangun sekarang boleh dikatakan cukup "jelek". Jelek dalam arti "developer point of view". Jadi kejelekannya itu dilihat dari cara pandang developer.
Berikut adalah daftar kejelekannya :
1. Ugly Foot-Print
Applikasi yang kita bangun menempal pada suatu software CMS. Kita membangun-nya sebagai component dari sistem CMS tersebut. Untuk suatu halaman yang sederhana, let say "hello world", masih terdapat foot-print yang cukup besar yang digenerate oleh CMS tersebut, ini bisa dilihat pada saat kita "view source" dari document html yang di generate. Hal ini memang tidak bisa dihindari akibat sistem kita yang menempel ke sistem CMS tersebut.
Solusi-nya :
Kita harus lepas dari sistem CMS tersebut.

2. Too many programming language
Yup, kita memakai banyak bahasa untuk membangun sistem kita ini. Php, Javascript, Pascal & Java adalah bahasa bahasa pemrograman yang kita pakai. Mungkin ini salah satu akibat dari kurangnya pengalaman dalam membangun sistem, banyaknya developer yang keluar masuk di sistem kita dan adanya keyakinan "yang penting jalan dulu".
Solusi-nya :
gunakan general-purpose language dan bangun ulang keseluruhan sistem dalam bahasa pemrograman tersebut

3. Our code is not easy to read
Walaupun kita memiliki standard penulisan code code di sistem kita, perbedaan antara developer yang satu dengan developer yang lain tetap terlihat di source code applikasi kita. Hal ini tidak mempengaruhi sistem yang berjalan ditempat kita, tetapi hal ini mempengaruhi pada saat kita akan memodifikasi source code tersebut. "Cara membaca" dari source code yang berbeda beda "pattern" penulisannya tentu akan sangat menyulitkan developer, dan ini adalah problem yang kita hadapi saat ini.  Tidak mengganggu jalannya sistem yang ada tapi cukup merepotkan pada saat memodifikasi source code-nya.
Solusi-nya :
tulis ulang code yang ada dan buat standard penulisan

Sementara baru tiga hal ini lah yang menurutku cukup "mengganggu" dalam kita membangun sistem kita. Sementara sistem kita terus berjalan, problem ini tetap tidak bisa teratasi tanpa kita memiliki momentum untuk memutus mata-rantai tersebut.

What do you think ?
ada usul ?


Friday, May 22, 2009

Getting Bigger and Ugly

Our Application project  is big enough, and its getting bigger.
Many collegue is get an eye on our application, they can see the benefit of our integrated system and they demand us to build a system for them.
Its good since they recognize our system already.

But, when u go deep into our application source code, you will realize that our source code is getting ugly. Its not goes beauty. Every developer bring their on style of develop codes. Their tend to "ignoring" our naming standard. Its fine if you deal with 2 or 3 programmers but if you deal with more than that, than you will have a problem.

This is what we saw on our project. When I have to fix a resign developer code, I amaze by seeing the code. it was different than what we followed and it force me to learn. Not easy, but I know what its mean. I said its not readable. At the end, I have to create my own style again, and I will apply it to our future application.