Showing posts with label programming. Show all posts
Showing posts with label programming. Show all posts

Thursday, February 14, 2013

Ngoding Sampai Luka-Luka

Harry : Liat geh mbak, tangannya (menunjukkan tangan terluka gw pada mbak Shara)

Mbak Shara : Hah? Kenapa itu?

Gw : Kebanyakan ngoding, mbak.

Mbak Shara : -_-

Harry : Kalo ngoding itu di ujung jari lukanya, bukan di situ.

Gw : Bisa ajalah, ri. Kan tangan saya tertekuk dalam waktu lama. Hahaha.

Harry : Demi apa? Masa' ntar muncul di koran, berita "Tangan Seorang Mahasiswa Diamputasi karena Ngoding".

------------------------------------------------------------------------------------------------------------

Ngakaklah. Apakah mentertawakan beritanya yang konyol, atau sebabnya teramputasi yang konyol, atau Seorang Mahasiswa yang entah konyolnya setengah apa sampe hidupnya yang bisa sekonyol itu terekspos ke publik secara konyol, whatever -_- 

Thursday, February 7, 2013

All I Need To Know To Be A Better Programmer I Learned In Kindergarten

Programming is complicated stuff, but a lot of what makes a good programmer isn't all that different from the earliest learning we did in school.

The inspiration for this list came from the essay "All I Really Need to Know I Learned in Kindergarten" by Robert Fulghum at http://www.robertfulghum.com/.


Share everything. 
Use open source where possible, and contribute to it when you are able. The collective wisdom of the entire community is better than the limited vision of a few large companies.

Play fair.
Give other technologies, frameworks, methodologies and opinions a chance. Don't think your choices are the only ones that work. The other choices may very well be better than yours; it doesn't hurt to check them out with an open mind.

Don't hit people.
Like #2, don't attack people just because they happen to use .NET or Java or PHP (I learned my lesson there!). Sometimes they might be more usable and useful than you think. You can learn a lot more from someone when you are not pounding them to a pulp.

Clean up your own mess.
Strive to deliver code that works. Never expect QA to find all of your bugs for you. Test your code often, both narrowly and broadly.

Don't take things that aren't yours.
Follow the licenses for stuff you use, don't just steal it and claim innocence later.

Say you're sorry when you hurt somebody.
Code reviews are a good but rarely used idea. Mentoring programmers with less experience than you helps the entire team. Just don't criticize people openly. Learning is not belittling people. Sometimes people will listen and sometimes they won't. Sometimes you might learn a lot from people you think are inferior to you.

Wash your hands before you eat.
Try to understand things before you set out to write code. Do prototyping, check out examples on the web, talk with other folks who do it, or even just play around. Architecting something you've never done before or worked with is tough cold turkey. The end result will work much better if you start with a clue.

Flush.
Don't be afraid to replace, rewrite, refactor or give up on something that is crap. Sometimes "when in doubt throw it out" is the best philosophy. Never fall in love with your code.

Warm cookies and cold milk are good for you.
Yes, programmers should be well supported in their work environment. A good chair, a quiet place to work, a decent computer and tools that make coding better and easier are essential. Managers should act as umbrellas to keep the crap from flowing down to the programmers. As a programmer, don't accept a life of lowly servitude. If the employer treats you poorly then find one who treats you better.

Live a balanced life - learn some and think some and draw and paint and sing and dance and play and work every day some.
I like Google's deal where 20% of your time is devoted to whatever you think it worth working on. Employers should (discretely) offer nap rooms or game rooms or some kind of chillout environment. Programming is hard mental work; sometimes you really need to give your brain a rest. Refuse to routinely work 80 hour weeks as the quality of your work will wipe out any gains in hours.

Take a nap every afternoon.
Working 24 hours a day doesn't make you more productive. Take breaks, go home, take a real nap. Often I have solved nasty problems by going home, and the solution came to me as I was driving away, or the next morning.

When you go out in the world, watch out for traffic, hold hands and stick together.
Community is good for the soul; read blogs, learn about new languages or frameworks, participate in discussions and see what other people are doing. Just doing your job isn't going to make you a better programmer. Keeping your head down means you will eventually be obsolete.

Be aware of wonder. Remember the little seed in the Styrofoam cup: the roots go down and the plant goes up and nobody really knows how or why, but we are all like that.
Every day something new and wonderful appears in the programming (and technology in general) world. Check it out. Be amazed. Learn something new everyday. It keeps your mind fresh, your options open, and your skills up to date. If you think programming is boring or dead then you may need a new career.

Goldfish and hamsters and white mice and even the little seed in the Styrofoam cup - they all die. So do we.
Code goes stale and dies. Sometimes you just have to bury it and do it again. Fight against keeping terrible code bases around just to save money.

And then remember the Dick-and-Jane books and the first word you learned - the biggest word of all - LOOK.
You won't learn anything at all if you don't try. Everything I learned in programming came from trying new stuff and generally playing around. Every morning I read a lot of sites to see what is happening in the programming world; I have been doing this since my first job in the early 80's (when it meant reading catalogs and magazines).

See, programming is easy when you look at it through 5-year-old eyes.


And this is the source.

Sunday, February 3, 2013

Semester Gundah Gulana

Gw sudah curcol kan mengenai ketiga sistem memuakkan yang harus selesai dalam jangka waktu kurang dari 6 bulan? Kondisi finalnya adalah : tidak ada yang selesai. Bayangkanlah rasanya hati gw ketika gw mengetik kalimat terakhir dengan jari-jari tangan gw sendiri. Dan ternyata, setelah 2 tahun gw melakoni seluruh derita rimba belantara ini, gw belum bisa menghasilkan apa-apa. Gw tetap LEMAH, seperti biasanya. Gw tidak fenomenal, hanya persis sama seperti mahasiswa kebanyakan.

Sistem pertama dikomentari "terlalu besar" oleh dosen pembimbing yang bersangkutan. Mending kalau pengakuan itu datangnya di awal-awal kehidupan, nah ini setelah menyentuh tahap desain interface, ya pilihan apa lagi coba yang kami punya kalau bukan melanjutkan apa yang sudah kami mulai? Daripada kami rempong ganti judul dan akhirnya sangat kekurangan waktu untuk mengerjakannya, mendingan kami mencoba meneruskan sesuatu yang sudah sampai di tengah jalan, walaupun akhirnya bergegalauan ria juga karena tugas luar biasa ini tidak keliatan titik rampungnya sampai minggu terakhir perkuliahan aktif.

Proses pengodingannya gw iringi dengan pembelajaran pelan-pelan karena gw bukan programmer Java kelas Advanced. Kesabaran gw pun berbuah pada form login yang tuntas tergenggam di tangan. Oh yeah. Gw memperoleh momennya, dan dari situlah kepercayaan diri gw bangkit. Tapi ternyata dunia itu kejam, kawan. Semangat anak muda yang gw pelihara hancur luluh lantak saat gw dihadapkan pada realita : semakin dalam kutangani sistem ini, semakin chaos-lah struktur programnya -_- 

Gw ngerti apa maksud pesan error yang di-generate Netbeans. Karenanyalah gw bolak-balik hapus-tambah-edit kode-kode di bagian-bagian yang gw pikir berkaitan dengan itu. Gw berperang secara tegar melawan rule-rule OOP, bersekutu sama internet, rela budget bertambah demi mengompensasi meningkatnya jumlah gelas kopi yang perlu dikonsumsi per hari, serta ngansos gak sudah-sudah. Tapi apa? Tulisan-tulisan merah itu tetap muncul di layar. Ketika gw gak punya ide lagi yang mana yang harus diperbaiki, maka gw cuma bisa bingsal. 

Puncaknya adalah : gw menyerah. Pola pikir para developer Java belum tercakup dalam akal sehat gw.  Gw memilih tidak mengusahakannya lagi karena 1) perkuliahan ini tidak terbatas pada sistem sial ini aja. Masih berjibun beban hidup yang harus gw perhatikan, 2) kepala gw sudah lelah, dan ia harus "diservis" secepat mungkin untuk melayani segala beban tersisa yang gw singgung di poin (1), serta 3) deadline sudah datang. Atas dasar pertimbangan itulah, maka gw menyerahkan CD berisi source code yang gw buat kepada Sang Dosen, disertai dengan pernyataan apa adanya. Mungkin Sang Dosen kecewa, juga rekan setim gw, tapi... ya gimana? Gw mencoba memaafkan diri gw dengan memaklumkan status gw yang masih mahasiswa, yang masih dekat dengan kata "gagal".

Satu alasan yang tertinggal : 4) hati gw sudah sama jenuhnya, dan beliau ingin lepas dari jeratan moral yang diberikan proyek ini padanya. Kalian gak tau betapa senangnya gw sesudah Sang Dosen menerima sistem yang tidak kelar itu tanpa syarat. Gw berlarian di koridor sampai mau kepeleset di depan pintu lab. 

CONTINUED to Semester Gundah Gulana 2.

Wednesday, December 19, 2012

Setelah Malam Pertama

Gw tau kalau judul posting ini sungguh sangat kooontroversial. Whatever, sebenarnya itu semua tergantung pada interpretasi kepala Anda masing-masing. Yang berada pada jalan yang benar, jelas akan melihatnya sebagai hal yang biasa saja. Namun lain ceritanya kalau Anda berada pada jalur yang salah, seperti apa yang gw alami saat ini. Ahahahaha :P

Gw menyesal terbangun pagi ini karena harus bertemu lagi dengan sistem gw yang belum selesai. Maaf ya Allah, tapi aku ngomong begitu dengan ciyus. Rasanya otak ini mau berontak dan berhenti kerja aja, sayangnya gw gak bisa melakukan itu karena rupanya beban tanggung jawab gw kepada temen-temen gw berkali-kali lipat lebih menekan daripada keinginan gw tersebut. 

Jadilah gw sekarang membuka mata dengan wajah tak berdaya. Untungnya gw sedang menghadap Daze dan menutup kuping dengan headset. Coba kalau gw duduk-duduk di teras rumah sambil minum kopi panas, pasti bakalan dikira bapak-bapak setengah baya tampan yang lagi pusing mikirin uang sekolah anak-anaknya.

Fuuuh. Sungguh malam pertama yang super melelahkan. 
#hayooo mikir apaan???

Thursday, November 24, 2011

Trapped When I Was Surfing

Memang ya, yang beginian bener-bener menohok batin dengan dalam rasanya.


#lemes

Friday, October 7, 2011

Plagiarism

All academic work, written or otherwise, that you submit is expected to be the result of your own thought, research, or self-expression. You may certainly discuss the programs with each other, but you must not show each other your code ; everyone must develop the code completely independently. It is a serious offense to allow other students to copy your work or to copy the work of other students (even if it is in a public computer file). If you borrow ideas, algorithms,wording, or code from other sources, you must acknowledge that fact or you have committed plagiarism. If you directly take more than about 4 words in a row from any source, you must indicate that you have done so, typically with a footnote or an in-line citation, using indentation or quote marks to set off the quoted text. (Some of this text is taken from the EDP202 plagiarism guide.) Offenses against this policy are punished quite strictly. I catch plagiarism practically every semester.

http://www.cs.uky.edu/~raphael/courses/CS450/backgr.html.

Saturday, October 1, 2011

Hari Pertama Perkuliahan Semester 3 [Shot1]

Hari ini kuliah Pak ##### lagi.

Dan tau kenapa? Tiba-tiba saya merasa tertekan dengan huruf mutu A pada Pemrograman Pascal yang lalu. Karena saya sadar kalau saya tidak terlalu hebat untuk dianugerahi nilai sebesar itu.

Lalu saya grogi sendiri saat disuruh membuat algoritma pencarian nilai terbesar, sehingga malah terpikir jalan paling sulit untuk menuju tujuan. Pada akhirnya, sebuah tusukan manis berhasil saya dulang setelah menyaksikan betapa simpelnya hasil diskusi Tanto dkk..

Dan itu 100. Sedangkan saya kalah 10 poin.


Terserah sih nilainya mau berapa juga ; saya gak terlalu peduli karena gak mengincar nilai. Tapi feel-nya itu lho. Mau diabaikan gimanapun ya kan tetap kerasa daleeem.

Saturday, May 7, 2011

Kesal, Lalu Ng-upload -_-"

Tugas koding yang satu ini membuat gw pusing sampai akhirnya kesal sendiri walaupun 7 jam kemudian akhirnya selesai juga.


Walaupun memang sudah pasti benar, tetap aja gw kesel.

Lalu gw ng-upload koding tersebut di situs Scribd. Gak ada maksud apa-apa sih, cuma iseng ng-upload aja sebenernya ; cuma dalih gw begini : biar mereka-mereka yang suatu saat punya kepentingan sama dengan gw gak ngerasain dahsyatnya kesal tak terobati.

Check this at http://www.scribd.com/doc/54840771/Share-SC.