[teknologia] Re: gontok2an

2005-09-23 Terurut Topik Ariya Hidayat

  4. kalau programming, kecenderungannya trial and error. Programming itu
 biasanya pasti ada masalah. Solusinya? cari code snippet pake google, coba
 gabungkan dgn program, kalau jalan ayo teruskan, kalau gak jalan, coba cari
 lagi yg lain. Gak tau kenapa kecenderungannya kalau di depan komputer itu
 trial and error.  Seolah2 tujuan itu hanya supaya program jalan. Apalagi
 kalau udah di kejar2 deadline.

Ini lama-lama jadi seperti sebuah mitos, bahwa keberadaan Internet dan
Google akan menyelesaikan semua masalah, termasuk masalah programming.
Padahal, justru itu hanya salah satu faktor saja (dianggap sebagai
infrastrukur). Kemudahan mencari informasi malah dapat menjerumuskan
sehingga orang berpikir secara instant.

  Akhir dgn kecenderungan tadi, aku kehilangan kontrol sama codeku. And
 kemudian aku butuh bug tracking seperti fogbuzz nya joel on software. I
 don't really agree with bug tracking.  Dengan bug tracking kelihatannya
 developer udah kehilangan kontrol (seolah2 ada ribuan bug). Akhirnya mulai
 lah bug development cycle.

Bug tracking itu penting sekali karena programer tidak bisa mengingat
semua bug di kepalanya. Catatan yang ada di dalam bug tracker juga
pantas digunakan untuk merancang pengembangan ke arah masa depan.
Dalam kasus open-source, bug tracker juga merangkap sebagai buku
komunikasi karena patch, komentar, screenshot, dokumen tes, dan
semacamnya bisa ditempelkan ke dalam bug tersebut sehingga tidak mudah
hilang.

  Tapi realita adalah kita gak nulis OS sendiri, compiler sendiri.  Belum
 lagi kebergantungan sama API (API programmer :). Kalau ada masalah sama API
 cuman bisa nangis. Ini mungkin menghasilkan bug. Untuk kasus ini, mungkin
 perlu bug tracking.

Kalau belum betul-betul fatal, biasanya selalu ada workaround untuk
problem semacam ini. Makanya terkadang bekerja dengan toolkit (Qt,
GTK+, wxWidgets) lebih menguntungkan di sini karena banyak workaround
untuk bug-bug dari layanan OS-nya sudah ditangani (tentu, selama
toolkitnya sendiri tidak mengandung bug lain lagi).

Contoh kasus favorit saya adalah listview control di Win32. Normalnya,
kalau listview ini dibuang dari memori, akan ada message
LVN_DELETEALLITEMS sehingga si program bisa juga menghapus data-data
yang terkait dengan masing-masing item di listview tersebut. Menurut
dokumentasi MSDN, setelah LVN_DELETEALLITEMS ini, tidak akan ada lagi
message LVN_DELETEITEM (yang hanya menghapus satu item). Tetapi
nyatanya dalam beberapa versi comctl32.dll, ada bug sehingga setelah 
mengirim LVN_DELETEALLITEMS, Windows masih mengirim LVN_DELETEITEM
sehingga program bisa crash karena double deletion.

  Nah, untuk ngambil kontrol itu, makanya aku pilih gontok2an, pilih nulis
 dokumen detail,  dan kalau bisa pilih nulis code di kertas bukan di
 computer. Ini kebalikan dari bug tracking, yaitu ngetrack gimana program
 jalan.

Tidak sama karena bug tracker untuk (mayoritas) menyimpan bug-bug
karena perilaku program tidak sesuai dengan implementasinya, bukan
karena gagasan untuk implementasi (alias desain utama) yang salah.
Menulis dan merancang desain di awal-awal hanya menentukan arah jalan
yang dituju adalah benar, tetapi tidak tidak menjamin bahwa nanti
tidak akan terjadi jatuh-bangun selama jalan tersebut dilewati. Lihat
contoh bug listview di atas.

  Test Driven kelemahannya,  hampir gak mungkin nulis semua test. Dan dengan
 test driven, sebenarnya kontrol udah kita kasih ke test code yg kita tulis.
 Kembali seperti yg dikatakan Djikstra bahwa test itu bagus untuk menemukan
 bug, tapi tidak bisa memastikan bahwa gak ada bug.  Dia berpendapat bahwa
 sebaiknya programming itu di kembalikan ke math. Cuman gak terlalu ngerti
 maksudnya, apakah berarti lisp? :)

Mungkin maksudnya menggunakan metoda formal untuk analisis programnya.

Tentang regression test, memang tidak ada jaminan (dan memang tidak
akan pernah ada) bahwa programnya bug-free. Tetapi tetap saja lebih
baik ada test daripada tidak ada. Seperti sudah saya tulis, kelebihan
regression test itu adalah karena otomatisasinya: sekali dijalankan,
banyak test. Bandingkan kalau semuanya harus satu per satu.

  Let me admit again, i am fan of Djikstra. :) dia bisa nulis OS di kertas
 untuk suatu mesin, padahal mesinnya belum ada. Dan ketika mesinnya jadi, OS
 nya jalan perfectly.

Tapi nggak semua orang seperti Djikstra :-P


--
http://www.google.com/search?q=ariya+hidayatbtnI


[teknologia] Re: gontok2an

2005-09-23 Terurut Topik Ronny Haryanto
On Fri, Sep 23, 2005 at 06:38:44PM +0700, Andika Triwidada wrote:
 whoaaa, jangan-jangan Ronny adalah the infamous Polisi EYD yang
 sedang dicari-cari selama ini oleh Amal cs? ;)

Hahaha... ampun pak. Bahasa Indonesia saya aja masih kacau mau jadi
pulisi, hehe. Sumpah bukan saya, hehe.

Ronny


pgp7vlcrGFkER.pgp
Description: PGP signature


[teknologia] Re: gontok2an

2005-09-23 Terurut Topik Bi [G] ™

On 9/23/05, Andika Triwidada [EMAIL PROTECTED] wrote:
 whoaaa, jangan-jangan Ronny adalah the infamous Polisi EYD yang
 sedang dicari-cari selama ini oleh Amal cs? ;)


lah bukannya pak Rektor sendiri pak? (sol)

--
Bi[G]
http://www.7sphere.com
Y!:br4ind4m4ge
Gmail:[EMAIL PROTECTED]
http://blog.adypermadi.com
http://www.adypermadi.com



[teknologia] Re: gontok2an

2005-09-23 Terurut Topik Pakcik
On 9/23/05, Ronny Haryanto [EMAIL PROTECTED] wrote:
On Fri, Sep 23, 2005 at 11:47:08AM +0200, Ariya Hidayat wrote:  Let me admit again, i am fan of Djikstra. :) dia bisa nulis OS di  kertas untuk suatu mesin, padahal mesinnya belum ada. Dan ketika
  mesinnya jadi, OS nya jalan perfectly. Tapi nggak semua orang seperti Djikstra :-PSorry sakit pedantic saya lagi kumat :-)Kalo yg dimaksud ini 
http://en.wikipedia.org/wiki/Edsger_Dijkstra makanamanya Dijkstra, bukan Djikstra.
iya, sorry2 .. mungkin aku kebawa2 eDjaan lama bahasa Indonesia. :)

-- PakcikUnder Construction


[teknologia] Re: gontok2an

2005-09-22 Terurut Topik Samuel Franklyn


Pakcik wrote:


penasaran dgn gontok2an. :)

Pernah dengar test driven programming kan. gimana kalau kita kembangkan 
gontok2an driven programming? hehe ada yg berminat? :p anak sekolahan 
biasanya langsung gak terima nih, gak ada dibuku soalnya. :)


aku lagi ada develope software. bukan kerjaan kantor sih. mungkin 
semacam experimental gitu. Tapi pendekatannya mungkin gontok2an driven 
programming ini.


Jadi udah sekitar 2 bulan developmentnya. Tapi even 1 line code pun 
belum ada. Kita bekerja 2 orang.  Jadi apa yg kita lakukan selama ini? 
Kita itu gontok2an dalam arti positif. Diskusi. Write it down on 
paper. Aku emang sengaja pilih cara ini. Gak mau coding sebelum semua 
jelas banget (detail). Tapi ada yg berpendapat, kalau begini terus kapan 
Codingnya? Hasilnya menurutku bagus.  Apa hasilnya:
1. Roadmap. paling susah dapet roadmap ini. Tau versi 1.0 itu feature 
apa aja, versi 2.0 itu apa. dan seterusnya. Ini menuntut design scalable.
2. Functional spec dan technical spec. (Baca joel on software untuk tau 
bedanya).
3. Layering Architecture . (Kita itu udah bisa ngomong kita lagi 
bicarakan layer 1 kan?)


Hasilnya bagus? Apa ya hasilnya? Dokumen berisi ide. He he he.
Kalau dokumen itu dalam waktu panjang tidak jadi aplikasi juga
maka sesungguhnya tidak bagus. Karena ini adalah penyakit
klasik paralysis by analysis.



Yang paling penting itu yg aku temukan, bahwa aku bukan jenius. Butuh 
orang lain untuk argue designku. Sering kejadian begini, Kok gak 
kepikir yah, iya juga yah. Padahal peerku itu cuman kuliah IT 1 tahun 
dan udah 2 tahun gak pernah ber-IT ria lagi. Sekurang2 pengalamannya 
peer kita, kalau diajak gontok2an(diskusi), sangat membantu.


Pernah juga coba langsung coding. hasilnya bug semua. hehe mirip tulisan 
om rofiq ini http://blog.bujursangkar.net/post/227


Betul tapi ini cara yang dipakai MS untuk bikin Windows 3.1 dan
Linus untuk bikin kernel Linux. Nah kita sudah tahu kan apa
manfaat bug. Bug ada untuk dibunuh. :-D


Pernah ikutin cara2 kuliahan, hasilnya boring. :P


Kuliah saja sudah membosankan apalagi kerja pakai cara kuliahan.


[teknologia] Re: gontok2an

2005-09-22 Terurut Topik Ariya Hidayat

  Pernah dengar test driven programming kan. gimana kalau kita kembangkan
 gontok2an driven programming? hehe ada yg berminat? :p anak sekolahan
 biasanya langsung gak terima nih, gak ada dibuku soalnya. :)

Sulit dibandingkan. Kelebihan pendekatan test-driven itu adalah karena
mekanisme tesnya dijalankan secara otomatis. Bila salah satu bagian
program diubah, selama hasil tes totalnya tidak failed, maka bug
diasumsikan belum muncul. Juga, karena fitur perlu dites, hal ini
sedikit memaksa programer untuk mengimplementasikan fitur (dan
interfacenya) sedemikian rupa sehingga dapat dites.

Gontok-gontokan itu kan belum bisa dijalankan secara otomatis dan
berulang-ulang. Kecuali memang nantinya tingkat kecerdasan buatan (AI)
sudah semakin meyakinkan sehingga IDE nggak cuma dipakai mengedit,
compile, debug, tapi juga gontok-gontokan :-P
Bayangkan kalau Anda seenaknya sendiri membuat objek global lalu
ditegur dan disuruh oleh KDevelop (atau Eclipse, atau Emacs, atau apa
pun) untuk dijadikan singleton...

--
http://www.google.com/search?q=ariya+hidayatbtnI


[teknologia] Re: gontok2an

2005-09-22 Terurut Topik Pakcik
On 9/22/05, Monang Setyawan [EMAIL PROTECTED] wrote:
Jadi ingat kata dosen saya dulu : Semakin cepat kamu menyentuhkomputer (meninggalkan kertas dan pensil), semakin lama programmu akanselesai.
:) let me admit it. actually, i hate computer. hehe .. ini kebiasaan ku kalau di depan computer:
1. baca email/mailing list
2. baca berita/blog
3. browsing2
4. kalau programming, kecenderungannya trial and error. Programming itu
biasanya pasti ada masalah. Solusinya? cari code snippet pake google,
coba gabungkan dgn program, kalau jalan ayo teruskan, kalau gak jalan,
coba cari lagi yg lain. Gak tau kenapa kecenderungannya kalau di depan
komputer itu trial and error. Seolah2 tujuan itu hanya supaya
program jalan. Apalagi kalau udah di kejar2 deadline. 

Makanya aku penggemari quote2:
Programs must be written for people to read, and only incidentally for 
machines to execute.
Computer Science is not about computer

Akhir dgn kecenderungan tadi, aku kehilangan kontrol sama codeku. And
kemudian aku butuh bug tracking seperti fogbuzz nya joel on software.
I don't really agree with bug tracking. Dengan bug tracking
kelihatannya developer udah kehilangan kontrol (seolah2 ada ribuan
bug). Akhirnya mulai lah bug development cycle.

Tapi realita adalah kita gak nulis OS sendiri, compiler sendiri.
Belum lagi kebergantungan sama API (API programmer :). Kalau ada
masalah sama API cuman bisa nangis. Ini mungkin menghasilkan bug. Untuk
kasus ini, mungkin perlu bug tracking. 

Nah, untuk ngambil kontrol itu, makanya aku pilih gontok2an, pilih
nulis dokumen detail, dan kalau bisa pilih nulis code di kertas
bukan di computer. Ini kebalikan dari bug tracking, yaitu ngetrack
gimana program jalan. 

Test Driven kelemahannya, hampir gak mungkin nulis semua test.
Dan dengan test driven, sebenarnya kontrol udah kita kasih ke test code
yg kita tulis. Kembali seperti yg dikatakan Djikstra bahwa test
itu bagus untuk menemukan bug, tapi tidak bisa memastikan bahwa gak ada
bug. Dia berpendapat bahwa sebaiknya programming itu di
kembalikan ke math. Cuman gak terlalu ngerti maksudnya, apakah berarti
lisp? :)

Let me admit again, i am fan of Djikstra. :) dia bisa nulis OS di
kertas untuk suatu mesin, padahal mesinnya belum ada. Dan ketika
mesinnya jadi, OS nya jalan perfectly.

-- PakcikUnder Construction


[teknologia] Re: gontok2an

2005-09-22 Terurut Topik Patriawan, Carlos

  4. kalau programming, kecenderungannya trial and error. Programming itu
 biasanya pasti ada masalah. Solusinya? cari code snippet pake google, coba
 gabungkan dgn program, kalau jalan ayo teruskan, kalau gak jalan, coba cari
 lagi yg lain. Gak tau kenapa kecenderungannya kalau di depan komputer itu
 trial and error.  Seolah2 tujuan itu hanya supaya program jalan. Apalagi
 kalau udah di kejar2 deadline.

Programer levelnya macam2,ada yang kelas rt/rw sampai kelas Dunia,
yang bedain berapa line of code dan permasalahn apa yang dicoba untuk
di-tackle ? Is it leading edge problem or not ?

Kalau mau coba hire programer world class,coba hire orang2 IIT,
sebagian orang2 IIT ini bener2 bisa nulis code (misalnay untuk
protocols) tanpa referensi :)

Gua pernah denger joke kalau gak ada org2 dari IIT,there will be no
India in Global Software Roadmap.Sampai ada karikaturnya lagi di
Dilbert Comics.


  Makanya aku penggemari quote2:
  Programs must be written for people to read, and only incidentally for
 machines to execute.
  Computer Science is not about computer

Pernah dengar quote ini ?
At Startup,there is time to shoot the Engineer


  Akhir dgn kecenderungan tadi, aku kehilangan kontrol sama codeku. And
 kemudian aku butuh bug tracking seperti fogbuzz nya joel on software. I
 don't really agree with bug tracking.  Dengan bug tracking kelihatannya
 developer udah kehilangan kontrol (seolah2 ada ribuan bug). Akhirnya mulai
 lah bug development cycle.

  Tapi realita adalah kita gak nulis OS sendiri, compiler sendiri.  Belum

Yang realistis,sampai sekarang masih susah untuk temukan developer yg
tahu isi produk dari A-Z dan arsiktektur,etc...biasanya mereka cuman
responsible/care dengan modul dan interkoneksi dengan modul lain.


 lagi kebergantungan sama API (API programmer :). Kalau ada masalah sama API
 cuman bisa nangis. Ini mungkin menghasilkan bug. Untuk kasus ini, mungkin
 perlu bug tracking.


Bug Tracking itu satu komponen paling penting untuk
persh/vendor/startup yang jual software apalagi networking box.

Jaman sekrg kompleksitasnya beda. Bayangkan persh yg punya multiple
products line,multiple software release,customer issues,QA
Bugs,internal software issues,development team yang satu ada di US dan
satunya lagi di India,etc  ..untuk mecahin masalah ini memang
state of the art dan gak bakal ketemu jawabanya di buku2 software
classic.tantangan development  jaman skrg jauh lebih rumit
dibanding dulu.

Anyway paling penting dalam software discipline sebenarnaya Code Review.
Habis coding,kemudian harus dibikin code review antara software team
lead dan developer.Setelah dicheck,code dicompile,masuk ke
automation,dan kemudian codenya ditest lagi menggunakan 3rd party
tools seperti Lint atau Coverity untuk checking standard programer
error seperti null pointer,buffer overflow, freed/unfreed
descriptor/memory blocks,etc ...

Intinya: dalam realita,bug tracking,3rd party tools dan software
discpline sama pentingnya.



Carlos


[teknologia] Re: gontok2an

2005-09-19 Terurut Topik Andika Triwidada

On 9/19/05, Patriawan, Carlos [EMAIL PROTECTED] wrote:
 Sebenarnya untuk produk roadmap,bukan orang teknis yang
 menentukan,tapi input dari orang Produk marketing yang lebih punya
 peran.
 
 Orang teknis cenderung lebih rancu...(contohnya debat mau pake OSnya
 vxworks atau bsd atau linux, codenya mau beli atau develop sendiri,
 asicnya mau beli atau develop sendiri, mau develop diatas C atau
 Java,hahahaha :) )
 
 Istilahnya,80% waktu yang dipakai,harus digunakan untuk develop module
 yang making money,dan harus robust.Daripada bikin software dan waktu
 yg digunakan lebih banyak ke fancy stuffs,tapi gak sellable.
 
 Oh ya,version 1.0 itu memang penting banget,karena design
 arsitekturnya sangat mempengrahui development dan limitation
 kedepannya.
 
 Kalau pertanyaanya Kenapa orang Product Marketing ? Ini karena2 org2
 ini tahu market intellegence,tahu customer maunya apa,tahu customer
 untuk software ini mereka mau bayar berapa,etc.

Ini berlaku untuk sistem yang dikembangkan dan dipakai untuk keperluan
internal juga? :D

Bias kita jauh berlawanan ya? :D

(I *hate* marketing.)


[teknologia] Re: gontok2an

2005-09-19 Terurut Topik Patriawan, Carlos

  Kalau pertanyaanya Kenapa orang Product Marketing ? Ini karena2 org2
  ini tahu market intellegence,tahu customer maunya apa,tahu customer
  untuk software ini mereka mau bayar berapa,etc.
 
 Ini berlaku untuk sistem yang dikembangkan dan dipakai untuk keperluan
 internal juga? :D

Tidak.
 ini gimana vendor develop produk sebenarnya.
Hampir semua vendor yang saya tahu pola penentuan software roadmapnya ya begini.

 
 Bias kita jauh berlawanan ya? :D
 
 (I *hate* marketing.)

Makanya sebagian produk IT karena gak memerhatikan market.

Anyway orang Product Marketing sebenarnya orang2 Engineer juga yang
terus pindah karir.

Dan Jangan salah,orang2 PM ini seringkali orang2 yang nulis buku dan
punya kontribusi di draft/RFC.

Jadi level marketingnya beda dengan marketing di Indonesia.


Carlos


[teknologia] Re: gontok2an

2005-09-19 Terurut Topik Jay adalah Yulian

Pada tanggal 9/20/05, Nico Las [EMAIL PROTECTED] menulis:
 
 sori kalau semi oot, tapi si crichton kalau bikin novel kan risetnya
 cukup dalam, dan kalau sampai dia angkat penokohan cowok itu dan
 backgroundnya, pasti practice itu cukup sering terjadi di dunia IT,
 setidaknya di belahan dunia 'sana'.

tema yang diangkat di filem itu soal kekuasaan, perempuan vs
laki-laki, dengan quote-nya sexual harrasment is not about sex, it's
about power

balik kedunia nyata, gontok-gontokan sering terjadi karena kekuasaan
juga, yang nyata adalah marketing vs engineering, sama-sama sering
(tanpa sadar) saling melecehkan

karena orang engineering sering ketiban pulung oleh ulah marketing,
jadilah quote baru engineering harrasment is not about engineering,
it's about money


-- 
http://yulian.firdaus.or.id/


[teknologia] Re: gontok2an

2005-09-18 Terurut Topik Patriawan, Carlos

On 9/18/05, Pakcik [EMAIL PROTECTED] wrote:
 
  penasaran dgn gontok2an. :)
  
  Pernah dengar test driven programming kan. gimana kalau kita kembangkan
 gontok2an driven programming? hehe ada yg berminat? :p anak sekolahan
 biasanya langsung gak terima nih, gak ada dibuku soalnya. :)
  
  aku lagi ada develope software. bukan kerjaan kantor sih. mungkin semacam
 experimental gitu. Tapi pendekatannya mungkin gontok2an driven programming
 ini.
  
  Jadi udah sekitar 2 bulan developmentnya. Tapi even 1 line code pun belum
 ada. Kita bekerja 2 orang.  Jadi apa yg kita lakukan selama ini? Kita itu
 gontok2an dalam arti positif. Diskusi. Write it down on paper. Aku emang
 sengaja pilih cara ini. Gak mau coding sebelum semua jelas banget (detail).
 Tapi ada yg berpendapat, kalau begini terus kapan Codingnya? Hasilnya
 menurutku bagus.  Apa hasilnya:
  1. Roadmap. paling susah dapet roadmap ini. Tau versi 1.0 itu feature apa
 aja, versi 2.0 itu apa. dan seterusnya. Ini menuntut design scalable.

Sebenarnya untuk produk roadmap,bukan orang teknis yang
menentukan,tapi input dari orang Produk marketing yang lebih punya
peran.

Orang teknis cenderung lebih rancu...(contohnya debat mau pake OSnya
vxworks atau bsd atau linux, codenya mau beli atau develop sendiri,
asicnya mau beli atau develop sendiri, mau develop diatas C atau
Java,hahahaha :) )

Istilahnya,80% waktu yang dipakai,harus digunakan untuk develop module
yang making money,dan harus robust.Daripada bikin software dan waktu
yg digunakan lebih banyak ke fancy stuffs,tapi gak sellable.

Oh ya,version 1.0 itu memang penting banget,karena design
arsitekturnya sangat mempengrahui development dan limitation
kedepannya.

Kalau pertanyaanya Kenapa orang Product Marketing ? Ini karena2 org2
ini tahu market intellegence,tahu customer maunya apa,tahu customer
untuk software ini mereka mau bayar berapa,etc.



  2. Functional spec dan technical spec. (Baca joel on software untuk tau
 bedanya).
  3. Layering Architecture . (Kita itu udah bisa ngomong kita lagi bicarakan
 layer 1 kan?)
  
  Yang paling penting itu yg aku temukan, bahwa aku bukan jenius. Butuh
 orang lain untuk argue designku. Sering kejadian begini, Kok gak kepikir
 yah, iya juga yah. Padahal peerku itu cuman kuliah IT 1 tahun dan udah 2
 tahun gak pernah ber-IT ria lagi. Sekurang2 pengalamannya peer kita, kalau
 diajak gontok2an(diskusi), sangat membantu.

Untuk ini sebaiknya kudu kerja di Valley (biar puas banget sama yang
kayak beginian),argumentasi di software war room memang paling hangat
dan gua paling demen disitu,soalnya kebanyakan developer main
implmentasi asal cepet aja,tapi gak mikirin interkoneksi dengan module
lain.jadi bisa disikat kalau ada yang ngeyel dan schedulenya gak
realistis.



Carlos


[teknologia] Re: gontok2an

2005-09-18 Terurut Topik Ivo Setyadi
On 9/19/05, Patriawan, Carlos [EMAIL PROTECTED] wrote:
Untuk ini sebaiknya kudu kerja di Valley (biar puas banget sama yangkayak beginian),argumentasi di software war room memang paling hangatdan gua paling demen disitu,soalnya kebanyakan developer mainimplmentasi asal cepet aja,tapi gak mikirin 
interkoneksi dengan modulelain.jadi bisa disikat kalau ada yang ngeyel dan schedulenya gak
realistis.
Ada temen pernah ngasih 'rahasia' kenapa dulu itu Microsoft bisa 'berjaya' 
and be way-ahead the other. It's because it's modularity in developing
it's application. Terserah modulnya dibikin oleh siapa or pakai tool apa,
yang penting modul tsb interfacingnya jelas. Inputnya apa, outputnya apa.
Begitu jadi, intergrate and then sell it!! 

It may be a quick and dirty solution. Soalnya kalau mau menunggu
sebuah software itu 'jadi' dan 'sempurna', bisa jadi nggak jualan...

Selain itu, dengan dibikin modular, programmer jadi terpecah belah.
It will be difficult to the programmers to know the big picture,
yang bisa jadi merupakan rahasia perusahaan.

FYI, that friend of mine, end up ONLY doing bezier planes for drawing icons.
Doing that. Only. For months. So he quits :p

Nggak tau deh apa sekarang Microsoft masih begitu.
Nggak tau juga apa sekarang lawan Microsoft juga ada yang ikut-ikut 
menjalankan cara itu.

-ivo