// Bagaimana Untuk Menjadi Seorang Pengaturcara Yang Baik
Home Artikel ICT Pengaturcaraan Bagaimana Untuk Menjadi Seorang Pengaturcara Yang Baik
Bagaimana Untuk Menjadi Seorang Pengaturcara Yang Baik
Jumaat, 23 April 2010 00:00

Disediakan Oleh : Mohd Lafiz Bin Mohd Nor

Saya akan menulis kesimpulan tentang apa yang telah saya belajar dari pengaturcaraan dan apakah sikap yang perlu ada dalam diri setiap pengaturcara.

i. Buat kajian sebelum bertanya

Dari apa yang saya dapat dari pengguna-pengguna baru di internet, mereka sentiasa bertanya benda-benda yang terlampau asas dalam forum. Contohnya: Macam mana nak belajar PHP ? Apa itu Linux ? dan saya rasa ini adalah satu sikap yang kurang baik. Mungkin kerana anda merasakan soalan tersebut patut dijawab kerana anda baru dalam dunia pengaturcaraan, cuba bayangkan jika ada 1000 orang bertanyakan soalan yang sama dan pengaturcara yang lain perlu menulis jawapan yang sama untuk kali ke 1000 ? Bukan mereka sombong atau sibuk, tetapi prosedur yang saya rasa patut sebelum anda mulakan pertanyaan dalam forum, mailing list dan IRC adalah:


a. Gunakan enjin carian (ini akan diterangkan dengan lebih lanjut dalam kesimpulan ketiga)

b. Catatkan apa yang patut dari hasil carian anda.

c. Cuba sedaya upaya dalam kemampuan anda untuk mula mengaturcara

d. Lakukan kesilapan

e. Mulakan bertanya di forum, senarai e-mel (mailing list) terhadap kesilapan anda.


Mungkin anda pernah bertanyakan soalan asas terus kepada forum dan berjaya untuk menjawab soalan yang dikehendaki, tetapi percayalah, pengaturcara lain akan lebih menghargai anda jika anda mengikut prosedur di atas. Jadi kata kunci sebelum bertanyakan soalan adalah lakukan kesilapan, dan inilah yang diperlukan oleh orang lain untuk mula merasakan soalan anda wajar untuk dijawab.


ii. Banyakkan membaca sama ada buku, artikel atau tutorial di internet

Kesimpulan kedua walaupun hampir sama dengan kesimpulan pertama, tetapi kata kunci untuk kesimpulan kedua adalah membaca. Membaca adalah kunci segala ilmu. Banyakkan membaca, buku, artikel, autobiografi, komen dan perbincangan, kerana untuk masuk ke dalam kandang kambing, anda perlu mengembik dan kandang kerbau anda perlu menguak jadi jika anda membaca anda akan dapat merasakan

a. Anda adalah sebahagian dari pengaturcara, walaupun anda bukan pengaturcara.

b. Pengetahuan dari segi pembacaan anda akan membolehkan anda berfikir lebih dinamik

c. Segala pembacaan yang pada permulaan tidak logik, akan menjadi semakin logic apabila tahap pengaturcaraan anda meningkat.

Perlu diingatkan bahawa konsep pembacaan di atas adalah berlegar kepada dunia pengaturcaraan. Namun, konsep ini boleh diguna pakai untuk perkara yang lain, memasak, menanam pokok dan belajar. Dari segi pengalaman saya, jika anda rasa terlampau banyak membaca, bagi diri anda 'time out' dari semua ini, bersukan, makan, menonton tv mungkin selepas itu anda akan rasa lebih segar untuk meneruskan pembacaan. Beberapa pelajaran yang saya dapat dari pengaturcara yang baik, mereka akan membaca setiap bulan satu buku sama ada sedar atau tidak sedar, dan untuk yang lebih teratur, mereka telah menyusun apakah buku yang sepatutnya mereka baca setiap bulan dalam tahun itu.

Mungkin anda terfikir, mereka kaya, boleh beli buku sesuka hati, namun kita ada alternatif lain seperti perpustakaan, pinjaman dari rakan-rakan dan 'photostat' (saya tidak cadangkan konsep Photostat kepada anda semua, kerana penghargaan kepada penulis terhadap titik peluh mereka dan saya rasa tiada penulis yang menjadi 'superkaya' kerana menjadi seorang penulis, jadi hargailah mereka dengan membeli yang asli tetapi siapalah saya untuk menasihat anda.


iii. Men'google'kan diri anda

Katakanlah saya fanatik, tetapi dalam dunia internet sekarang 'google' adalah segalanya. Google (http://www.google.com) adalah gerbang kepada sumber dalam internet, google lah bla bla bla (masukkan segala yang sepatutnya untuk orang yang mengkagumi sesuatu) . Jadi antara kunci dari kesimpulan pertama ialah carian, cari sebelum tanya.

Mungkin apa yang anda ingin tanya, ada orang lain pernah bertanya soalan yang sama seperti anda. Bukan semua pengaturcara, tibatiba menjadi superbagus, jadi apa yang berlegar dalam fikiran anda, mungkin berlegar dalam fikiran mereka pada awalawal pembelajaran. Newsgroup, halaman web, artikel, tutorial , kemusykilan mungkin ada di satu sudut gelap di internet yang tidak sabar untuk ditemui, maka carilah sebelum memulakan pertanyaan.


iv. Sanggup menerima konsep yang baru dalam dunia pengaturcaraan (think out of the box)

Untuk menjadi pengaturcara yang baik, setelah anda mencapai tahap yang membolehkan anda nampak apa hasil aturcara anda. Ini mungkin menyebabkan anda rasa selamat, tidak ingin mengubah prinsip anda, anda adalah betul dan anda tidak perlukan pendapat orang lain. Nasihat saya kepada anda, cuba buat satu benda baru setiap hari, satu benda yang anda rasa tidak boleh dilakukan.

Buat sesuatu yang diluar pemikiran anda yang sebenarnya, jika sebelum ini anda menggunakan gelung while, apa kata hari ini menggunakan gelung for sebagai pertukaran dan esok mungkin anda boleh menggunakan while bersama for dan keesokan harinya anda cuba lagi benda yang anda rasa anda tidak patut cuba,tetapi nasihat ini bukanlah kepada kod anda yang stabil, tetapi apa yang dikatakan dalam dunia perisian iaitu Kajian dan Pembangunan.

Kaji, bangunkan, sehingga anda rasa keserasian terhadap kod anda, mungkin anda dapat merasakan anda dan komputer bercakap bahasa yang sama. Pada tahap ini, anda sepatutnya boleh digelar superpengaturcara,walaupun begitu, anda boleh jumpa banyak superpengaturcara disekeliling anda, jadi sentiasa buat kajian dan pembangunan untuk menjadi salah satu yang terbaik.


v. Reinvent the Wheel , bagus atau tidak ?

Kesimpulan ini mungkin berbeza bagi setiap pengaturcara, tetapi apa yang saya rasakan mungkin tidak sama bagi setiap pengaturcara. Kesimpulan ini juga dibuat dengan anggapan pengaturcara menggunakan konsep open source (http://www.opensource.org) untuk membuat pengaturcaraan. Di samping membaca buku, artikel dan tutorial, pembacaan aturcara orang lain adalah salah satu sifat yang baik untuk setiap pengaturcara dan bagi saya jika anda rasakan kod pengaturcara tersebut kurang baik, berikan maklum balas kepada pengaturcara tersebut dan jika lagi baik, berikan 'patch' kepada mereka. Gunakanlah perpustakaan kod sumber (source code,library), rangkakerja yang anda rasa boleh digunakanlah untuk projek anda. Jika ada kod yang anda rasa kurang bagus, betulkan, berikan maklum balas kepada pengurus kod atau rangkakerja tersebut.

Dengan sikap ini anda sudah menjimatkan berjam-jam masa anda untuk membangunkan kod atau rangkakerja tersebut dari sifar. Jadi, kesimpulannya adalah, pilih satu rangkakerja atau perpustakaan kod yang anda rasakan serasi, gunakan dalam projek anda, jika ada kelemahan, berikan maklumbalas kepada pengurus tersebut dan anda akan menjimatkan masa mereka serta masa anda sekali. Situasi menang-menang di atas akan menjadikan dunia ini lebih baik.


vi. Jika anda rasa anda sudah pandai, percayalah ada orang yang lagi pandai dari anda.

Pernahkan anda rasa, pada suatu ketika, anda adalah yang terbaik, anda telah berjaya mengatasi segala-galanya, anda boleh bercakap dengan komputer dengan bahasa yang sama anda adalah superpengaturcara. Sifat seperti ini sepatutnya dibuang dalam diri anda dan sifat ini sebenarnya didapati apabila anda duduk dalam kepompong dan tidak mahu bercampur dengan orang, mungkin takut ada orang yang lagi baik dari anda. Sifat yang patut ditanam ialah, percaya ada yang lagi bijak dari anda dan anda perlu berusaha untuk mencapai satu tahap yang lebih baik setiap hari.


vii. Saya ada satu epal, anda ada satu epal, kita tukar epal, anda ada satu dan saya tetap ada satu

Jika anda ada satu ilmu dan saya ada satu ilmu, kemudian kita tukar ilmu tersebut, anda ada dua ilmu dan saya ada dua ilmu. Pertukaran ilmu atau mengajar ilmu kepada orang lain adalah satu sifat yang baik patut ada dalam diri setiap pengaturcara. Jika anda rasakan mereka lemah, ajarkan mereka, jika anda rasa diri mereka lebih baik dari anda, belajar daripada mereka. Walau bagaimanapun situasi yang berlaku, anda tetap keuntungan dalam setiap situasi. Bagi orang yang beragama Islam pula, agama juga menggalakkan kita mengajar ilmu yang baik kepada orang lain dan pahalanya akan bercambah setiap hari sehingga hari kiamat.


viii. Dokumenkan diri anda dan kod anda - blog dan todo

Mendokumenkan diri anda bermakna, tulislah apa yang berlaku dalam dunia pengaturcaraan anda. Simpan apa sumber artikel yang anda rasa perlu untuk rujukan. Buatlah satu 'knowledge base' anda sendiri, tuliskan apa yang anda patut buat esok dan matlamat diri anda pada hari esok. Saya mendapati 'trend' baru yang dikenali sebagai blog (web log) semakin popular untuk mendokumenkan diri. Kebanyakan pengaturcara yang baik saya dapati mempunyai satu blog sendiri. Kod yang anda buat juga perlukan dokumentasi, tulis apa yang anda buat dalam kod untuk memudahkan orang lain atau anda membacanya dikemudian hari. Sifat ini akan memudahkan diri anda dan orang lain untuk membuat rujukan serta yang penting, tidak akan membuat kesilapan yang sama seperti anda.


ix. Sistematik membawa kedamaian

Penstrukturan diri dan juga kod anda adalah penting. Susun pustaka kod anda dalam satu folder, dan grafik dalam satu folder, modul dalam satu folder yang lain. Ini akan memudahkan anda dan orang lain faham apakah kandungan kod anda. Sifat sistematik ini mendatangkan kesan yang baik untuk jangka panjang.


x. Mudahkan aturcara anda

Kod yang mudah kadangkala mendatangkan hasil yang sama dengan kod yang panjang dan tidak difahami. Kod yang mudah juga mempunyai kurang pepijat (bug) dari kod yang kompleks. Cuba biasakan diri anda untuk menghasilkan kod yang mudah, jadikan fungsi mempunyai satu tugas yang khas dan kecil. Dalam konsep pengaturcaraan ini dinamakan modular dan semakin modular aturcara yang anda buat, semakin mudah untuk membuat perubahan jika ada satu perkara yang ingin ditambah atau dibuang.


xi. Komunitikan diri anda

Katak dibawah tempurung akan merasakan diri adalah yang terbaik. Komuniti atau kumpulan bukanlah satu geng yang berlawan dari sifat negatif, tapi sudut positif. Apabila anda bergaul dengan satu komuniti, anda akan dapat belajar perkara yang baru, walaupun mereka anda rasakan tidak sebaik anda, tetapi anda akan dapat belajar satu sifat yang baik yang anda sendiri tidak pernah terfikir sebelum ini. Mungkin anda sebelum ini tidak pernah mendokumenkan kod anda, dan anda lihat orang lain dalam komuniti atau kumpulan mendokumenkan kod mereka, menyebabkan anda terpengaruh untuk membuat seperti mereka.


xii. Merendah diri dan tidak sombong

Ular menyusur akar tidak akan hilang bisanya. Kata bidalan ini boleh menjadi rujukan kepada pengaturcara yang merasakan diri mereka sudah mencapai tahap yang tinggi. Jika anda rasa sudah bagus, ajarkan ilmu anda kepada orang dengan gaya yang tidak menunjuk-nunjuk. Jadi lebih sensitif kepada situasi, cuba rasakan diri anda ketika anda mula belajar dulu, tiada orang yang memberikan petunjuk kepada anda, cuba jadikan perasaan mereka yang baru belajar tidak seperti anda. Sifat ini jika dikekalkan menyebabkan anda dihormati oleh orang lain.


xiii. Fokus

Jack of all trade, Master of none. Mungkin anda sebelum ini pernah belajar C/C++ dan Java, kemudian anda belajar Perl dan baru-baru ini anda baru belajar C#. Resume anda penuh dengan bahasa pengaturcaraan yang ada di dunia ini, tetapi anda tidak boleh menjadi pengaturcara yang baik dalam semua bahasa tersebut. Kebiasaan syarikat mencari orang yang pakar dalam satu bahasa lebih banyak dari mereka yang mengetahui banyak bahasa. Dengan memfokuskan diri anda dalam satu atau dua bahasa pengaturcaraan adalah lebih baik daripada anda cuba mengetahui sedikit dalam semua bahasa pengaturcaraan. Konsep fokus ini juga menjadikan anda lebih cepat mengetahui satu bahasa, tetapi fokus ini bukan bermaksud jangan membaca yang luar dari bahasa pengaturcaraan anda, tetapi lebih fokuskan diri anda kepada satu bahasa.


xiv. Yakin kepada diri (sentiasa terbuka kepada komen)

Anda masih menanamkan sifat orang putih adalah yang terbaik dan sampai bila-bila anda tidak akan melawan mereka. Kesimpulan ini bukanlah menanamkan sifat membenci orang-orang barat, tetapi lebih kepada konsep yakin kepada diri sendiri. Kajilah sifat baik mereka, belajar dari yang terbaik untuk menjadikan anda lebih baik. Yakin kepada diri sendiri bukan bermaksud degil tetapi sepatutnya merasakan diri tidak lemah. Tiada perkataan tidak boleh patut ditanamkan dalam diri seorang yang ingin menjadi seorang pengaturcara yang baik.


xv. Hendak seribu daya, taknak seribu dalih.

Anda sibuk, anda tidak ada masa untuk memperbaiki diri dan bermacam-macam alasan lagi untuk mengelakkan diri anda dari berubah kepada yang lebih baik. Cuba cari satu masa yang sesuai, ambil 5 minit untuk membaca semula kod anda, ambil 5 minit untuk mendokumenkan diri anda. Jika anda dapat ambil masa 10 minit dalam satu hari, cuba kira berapa masa yang anda dapat ambil dalam sebulan? 10 x 30 = 300 minit, hampir 5 jam dalam sebulan anda dapat masa untuk membaca dan mendokumenkan kod anda. Kemudian cuba tambah lagi masa tersebut untuk bulan yang seterusnya, dan apa yang anda dapat selepas itu adalah semua sifat terbaik bagi seorang pengaturcara.

Sumber : http://berantogis.ueuo.com/index2.php?option=com_content&do_pdf=1&id=2

 

 

 


 

 
/* remark */