Kitab Ruby, Buku Belajar Pemrograman Ruby, Bagian 2

Posted: April 16, 2007 in RUBY

LEARN TO PROGRAM

fr_ltp_medium.jpg
Penulis: Chris Pine.
Kalau Anda adalah seorang yang sama sekali buta tentang apa dan bagaimana programming.. atau kalau Anda adalah seorang guru yang ingin lebih meningkatkan bagaimana cara mengajari anak didik agar penjelasan Anda sebagai guru bisa lebih mudah dicerna anak didik… maka buku ini pas buat Anda. Bahasanya mudah. Tidak ada alternatif, perhatikan banget kalau di Ruby untuk membuat objek string itu sebetulnya bebas banget, boleh petik satu, boleh petik dua, boleh kurung kurawa, boleh persen q kurung kurawa, tanda apit nya bisa bebas… tapi di buku ini nggak, buku ini cuma menyodorkan tanda apit satu aja, nggak ada alternatif lain. Dan cara cerdik oleh Penulis nya itu memang jitu tepat sasaran buat yang ingin improve lagi soal gimana sih mrogram komputer itu. Ada juga interview Chris Pine disini. Beliau ini padahal programmer C++, tukang mbikin game, berarti itu kan uda termasuk AI (Kecerdasan Buatan) yang kalo anak mahasiswa informatika ngambil biasanya uda tingkat2 atas.. ArieKeren bilang beliau ini orang jenius tapi juga selain jenius beliau juga jenius nerangin kejeniusannya itu ke orang lain. Nah beliau bilang kurang lebih intinya gini, kalau Anda ingin mengajarkan orang gimana mbikin program, anda mulailah dengan sejarah komputer, ada lagi sampai kalkulator dan alat hitung dianggap komputer, mulai dari batu, abakus dan seterusnya, sampai ke bahasa pemrograman, sejarahnya, lalu ada ini tentang Ruby karna OOP maka diterangkanlah pertama kali apa itu OOP, apa itu pemrograman berorientasi objek. Objek adalah pelaku. Bisa diibaratkan sebagai orang. Nah metode adalah kata kerjanya, melakukan ini itu, misalkan orang, orang berjalan, orang memukul, orang menangis, dst. Kelas itu adalah blueprint, dan seterusnya dan seterusnya.. WROOOOOONG!!!! Chris Pine tu ngomong gitu. Gimana Bos? Kurang paham artinya WRONG tadi ya? Maksudnya: SAAAAALLLAAAAH!!!!! Yang benar caranya terangkan saja ada sesuatu (bahasa aslinya beliau bilang : something) nah sesuatu itu melakukan anu anu anu… tanpa nerangin tadi itu objeklah, kelaslah, blueprintlah.. Dengan begitu anak didik dengan cepat menyerap apa yang Guru terangkan. Nah nanti pas sudah bab bab akhir, baru diterangin bahwa yang Guru sebutkan “sesuatu” itu tadi sebetulnya gini lho.. begitu lho.. dst. Anda nanya? dst itu apa? ArieKeren kalau nulis dst, artinya bisa multi, bisa dan seterusnya, bisa juga dan saya teruskan, artinya lanjutkan/teruskan baca bukunya sendiri…

PROGRAMMING RUBY / PICKAXE

ruby_medium.jpgPenulis: Dave Thomas.
Buku ini yang edisi pertamanya bisa didapat gratis diinternet. Cek aja di rubydoc. Kalau yang ruby programnya pakai ruby one click installer di windows buatan si Curt Hibbs juga buku gratis pickaxe 1 uda otomatis disertakan dalam format chm. Nah, kalau yang Pickaxe 2 baru versi berbayar. Buku ini bisa disebut sebagai Bibble nya Rubyist / orang Ruby ini. Buku ini cocok buat yang sudah jadi programmer (bahasa lain), lalu pingin tau Ruby itu kayak gimana. Buku Pickaxe 2 bahkan juga menyertakan referensi manualnya, buset, padahal sejak Eric Hodel (satu dari moderator2 ruby-talk) ngebikin fri, Rubyist udah tinggal enak aja mau RTFM lewat console.

21 DAYS WITH RUBY

Buku ini buat Newbie. Bahkan banyak Rubyist bilang buku ini gak worth it buat dibeli, soalnya uda out of date. Tapi kalo ArieKeren ngomong nggak juga sampe bilang gak worth it dibeli ah, yaa tetap worth it lah buat yang keukeuh aja ngomong kesulitan ni mahamin ruby. Iya kan? Makanya gw bilang diawal paragraf tadi juga apa…. buku ini buat Newbie.

RUBY DEVELOPER’S GUIDE

rubyway.png

Penulis: Robert Feldt dan Lyle Johnson. Technical Editornya Michael Neumann lho.. ;-) Gaya buku ini hampir mirip dengan gaya buku Ruby Way. Neranginnya bagus, coding puanjangnya juga bagus. Idih, ArieKeren koq sering suka sebut2 coding itu apa sih? Coding itu bahasa gampang saja dari software engineering itu sendiri, termasuk praktek dan teori, termasuk desain aplikasi, database, maintenance, testing, dst.

RUBY WAY

rubyway.gifPenulis: Hal Fulton. Buku ini ada dua biji, ups, maksudnya ada yang 1st edition sama yang 2nd edition. Buku ini adalah buku ruby favorit ArieKeren! Bahkan tatkala menulis sekedar berbagi di blog inipun ArieKeren tulis tanpa melirik sama sekali ke buku ruby way, saking senangnya… karna bukunya sering bgt dibaca, diulang-ulang karna bikin senang, yg pasti bukunya jadiiii … ehehehe .. tau sendiri aja lah, yg jelas bukunya gak mungkin putih mulus kayak di toko-toko pas masih baru. Hal nerangin ruby bahasanya enak, codingnya enak, topiknya mulai dari kecil sampai gede ya dibahas. Trus bahkan ArieKeren bilang buku ini rating bintang 5. Ya, buku ini bersanding dengan buku Pickaxe!

RUBY SOOSU KOODO KANZEN SEIKATSU / RUBY HACKING GUIDE

rhg.png

Howah…. buku ini adalah buku favorit ArieKeren!!! siapa penulisnya? Howah… penulisnya juga favorit ArieKeren, aamine, ya… Minero Aoki. Biarin… masa bodo’ mo buku ini bahasa Jepang. Emang lahirnya Ruby dari sana. Jadi dari tanah kelahiran tu. Ngelantur dikit, makanya gak usah kuatir dgn sistem file di Ruby ;-) liatin tu yg bikin aamine, ruby library kayak rio, fileutils… Buku RHG ini ngebahas tips dan trik gimana ngehack source code ruby itu sendiri. sangat mudah dicerna (ya, kalau ngerti bahasa Jepang, kalau nggak ngerti, yaa … wis nasibmu le)

RUBY FOR RAILS

rubyforrails.pngPenulis: dblack. ya.. David Black. BTW elo dari tadi ngomongin melulu’ railsnya mana? Alah! Rails Keroco! Nanti aja itu… fundamental harus mantap. Kalo ga mantap, bisa goyang-goyang nanti. Tu… liatin aja ndiri… naah… goyang-goyang kan? Howaa… apa elo geleng-geleng sendiri? Yahaha malah ngeledek pembaca blog ArieKeren (PLAK! PLAK! Puas?! Puas?! ledek lagi orang! ledek lagi orang! kelakuan lu tu kucing garong!). OK, kembali ke ruby. Kalo buku RHG nerangin gimana ngehack ruby source code. Nah kalo buku ini nerangin gimana ngehack rails source code. Wah… source codenya sulit pakai C juga ya Mbah? Nggak nggak…. Rails itu gampang… dibuat pakai Ruby. ArieKeren bilang, kalau Anda suka sama bacaan yang ditulis sama Chris Pine, berarti Anda pasti juga suka sama bahasan yang ditulis sama David Black di buku ini. Ya, buku ini pasti akan jadi favorit Anda, buku ini bahkan nerangin OOP di Ruby tu gimana gimana nya dengan gamblang dan gampang dari yang gampang-gampang sampai ke yang dalam dalam juga jadi gampang.

GAME PROGRAMMING WITH PYTHON, LUA AND RUBY

pythonluaandruby.png

Ya, buku ini juga ngebahas bahasa selain Ruby. tapi disini cuma diungkit yang ruby nya aja ya. Kalo uda baca buku ini harapannya biasa dgn Ruby buat Desktop GUI. bisa ngejawab pertanyaan sbb: Rubysdl jalan di platform apa? Gimana cara pakai threads di RubySDL .

MAKING USE OF RUBY

makinguseofruby.png

Hweh, judulnya sih making use of ruby, tapi isinya ya kurang lebih sama saja dengan general things tentang ruby. buku ini juga ngebahas lumayan mendalam loh. Bagus banget buat dibaca-baca. Setan berkata: “Wahai ariekeren, kamu sudah kecapekan ya nulisnya koq singkat banget gitu?”. Dijawab: “Iya, gw laper… pusing… enakan ngeLmu (baca buku+coding) ketimbang ceritainnya lagi”.

CODE GENERATION IN ACTION

codegenerationinaction.png

yang ngebahas rubynya lumayan sih.. tapi biar pake’ sih, buku ini bagus loh. Mungkin yg ngomong ini keseringan liatin source code ruby jadi tau kalo di rails sering gaya modular, kalo generate yang library anu kayak gitu, library ini kayak gini, dst, jadinya tadi ngomong pake’ sih. bagus buku ini, selain ruby, juga dibahas kalau bukan pake ruby, tapi pake apa ya? Ehm… yg ngebahas ruby sajalah yang dibahas ariekeren ya :-) Soalnya biasanya kalau sudah ketagihan Ruby jadinya malas ke lain hati. Hati-hati aja!

BUKU PEMROGRAMAN RUBY

Penulis: ???????? (bulan April 2007: Masih Tuhan yang Maha Tau)

BUKU FRAMEWORK WEB RUBY ON RAILS

Penulis: ???????? (bulan April 2007: Masih Tuhan yang Maha Tau)

Untuk 2 buku terakhir, memang kalau bahasa indonesia belum ada :-) Tertarik mbikin/nulis bukunya? ;-) Perlu waktu berapa lama? Ada baaaanyak banget timpalan-timpalan komentar menyoroti buku ruby berbahasa indonesia ini… waaah nanti paaasti pengarangnya bakal terkenall! (komentar_ariekeren[0]), ayooo cepaaat kapan buku rubymu keluar??? hah!! kelamaan!! gak jadi-jadi!! huh!! (komentar_ariekeren[1]), berapa lama butuh waktu nulis buku ruby? kalau buku rails? kalau penerbit? (komentar_ariekeren[2]), mbikin buku itu yg penting asal ada, asal jadi terus sudah … selesai … yg penting jadi uang, banyak uang…. copy paste saja tulisan-tulisan banyak di Internet (komentar_ariekeren[3]). dst … dst…

Tadi sepertinya dari nomer index ke nol sampai 3, disingkat gitu, sekarang digabung aja komentarnya…. dgn berbagai mood dan teriakan dari berbagai jenis makhluk, mood model egois: Ngapain bikin buku ruby berbahasa indonesia?? Itu kan udah banyak buku ruby… bagus-bagus.. paling-paling kalo ada buku bahasa indonesia pengarangnya berilmu cetek, goblok bin tolol dan tak tahu malu tentang copyright karna memang sudah biasa dengan budaya maling!! Apa? Kau bilang aku kasar? Dasar berarti kamu yang goblok! aku bicara kenyataan kamu langsung justifikasi berdasarkan perasaan, dasar goblok! paling paling pengarang indonesia mayoritas (catat: gak semuanya ya) mbikin buku itu yg dasar-dasar aja, yang kulit-kulit aja, mana pernah menyentuh ke yang lebih dari dasar itu, bahasa singkatnya ya ilmu pengarangnya cetek itu tadi. Lagi, Ngapain bikin buku ruby indonesia? Istilah-istilah komputer, teknologi informasi, itu justru kalau nggak Inggris akan aneh, lucu, sudah mending pakai bahasa inggris saja! tetikus, taut, unduh, dst. Ada orang Perl bilang jangankan membuat buku perl dalam bahasa indonesia, menerjemahkan perl saja sudah susah. Salahkan saja sistem yang berjalan di Indonesia! Salahkan saja murid2 yang malas belajar bahasa inggris yg padahal gampang itu! Salahkan saja guru2 bahasa Inggris yang goblok nerangin sehingga murid2nya gak bisa pintar-pintar! Salahkan saja kurikulum pendidikan yang bloatednya dari eSD, eSMP, eSMA, eKuliah, eS1, eS2, eS3, aStaganaga!! dari kecil sampai jenggotan masih gagu soal bahasa inggris! Salahkan saja itu! Pokoknya sudah ada buku yg lebih dari cukup tentang ruby dalam bahasa inggris. Titik. ! Naah, kalau ada yang pola pikirnya Salahkan saja anu, salahkan saja itu, berarti ini play victim, coba kalau sudah ngerasanya jadi victim itu mikir, gimana biar bisa bangkit, mikir, arahnya ke solusi, bukan mikir arahnya ke masalah, mikir, gimana biar bisa maju, apa tujuan yg ingin dicapai, catat, dalam berapa lama waktu yang diperlukan buat sampai ke tujuan yang ingin dicapai, catat, dan… lakukan sekarang juga, jangan kerjaan teori melulu’ catat-catat melulu’, lakukan apa yang dicatat tadi! Usaha … inilah hidup, didapat dari tetesan keringat yang mengkristal, mungkin bahkan hingga tetes darah, bukan darahnya menetes karna ditembak sewaktu jaman penjajahan dulu, tapi darahnya tidak lancar karena sakit. Dunia tak sesempit daun kelor, bung. Tentulah sudah mafhum kalau ada katak dalam tempurung gak akan bisa alias sulit nerima kalau gak paradigma play victim tadi. Lagi, mau terkenal caranya nulis buku? :-) Ada pepatah Arab bilang, “Kalau kau mau terkenal, kencingi itu sumur zam zam”. Gila… itulah yg jadi orang-orang sebut si terkenal ini. Tulisan buku itu mengikuti siapa penulisnya, bukan sebaliknya. Jadi bukan, lantaran buku si penulis jadi pintar, tapi si penulis pintarlah yang menjadi sebab buku si penulis kualitasnya bagus. Mengenai bayaran penulis itu sendiri, ini dilihat dari si penulis, mentalnya ingin merampok dan menguras serta mengisap darah sesama orang Indonesia sendiri, atau mentalnya ingin bikin pintar si pembaca. Mentalnya dilihat, apa sambil dari dasar-dasar sambil ditulis, trus dilempar ke penerbit jadi buku, lalu pas sudah jadi, si penulisnya sudah semakin pintar, melihat buku itu ngomong, “Ini buku aaaapa sih?!”. Nah Lo, kasiaan deh rakyat Indonesia… Coba ya, untuk nasihat yang saangat bijak, ada dari Bapak Ruby kita, ya, beliau adalah Dave Thomas, seorang yang pragmatic programmer, memberikan wejangan untuk penulis. Silakan baca selengkapnya di blog beliau, SYWTWAB 1: So You Want to Write a Book?. SYWTWAB 2: The Hero’s Journey. SYWTWAB 3: The Hero’s Journey: Are You Experienced?. SYWTWAB 4: Readers on Your Shoulders. SYWTWAB 5: Finding Your Voice. SYWTWAB 6: Wrandom Writing Wrules. SYWTWAB 7: Reviewers, And How Not to Kill Them.

you-suck-penulis-penerjemah-lokal.png

Tulisan sekadar berbagi ini diakhiri dengan kisah “Dunia Edan, Bangga dengan Masa lalu akut”. Ada 3 Kakek2 di Rumah Sakit saling membanggakan pengalaman pernah kena sakit apa: Kakek 1 bilang: “Saya pernah Stroke, gara-gara sering hipertensi / tekanan darah tinggi, waduh repot ya, bukannya kita ini gak mau bersabar, tapi memang kalau hipertensi ini sulit untuk mengendalikan emosi” (Argumen balik: jadi logika NOT tidak sabar itu selain sabar apa?) Ada lagi kakek 2 cerita: “Wah saya pernah operasi ginjal, saya harus cuci darah sebulan sekian kali, biaya sekali cuci darah mahal, saya sekarat”, kakek yang satu lagi cerita, “wah saya pernah sakit jantung, saya dioperasi by pass, tulang dada / yang melindungi jantung saya ini di gergaji loh.. lalu urat di kaki saya (yang dari sekitar lutut hingga ke mata kaki) diambil 2 biji, kalau uratnya jelek, sama dokter nya diambil lagi 2 biji di kaki yang satunya buat dibikinkan semacam Jalan Tol di Jantung supaya darah bisa ngalir lewat jalan tol (urat yang dari kaki tadi).. bla bla bla”… Nah begitulah cerita orang2 yang bangga dengan penyakitnya, boleh saja bilang / menutup-nutupi kenyataan kalau itu sekedar cerita, atau sebut aja itu dengan Word apa saja, tapi kalau wacananya begitu jadi seperti berlomba-lomba siapa yang paling sakit. Mentalitas siapa yang paling sakit itu yang jadi masalah. Gak cukup dengan kelakuan kakek-kakek di rumah sakit tadi, ternyata di rumah para tetangga ngegosip, “Itu loh Jeng Pak Nganu Pak Nganu penyakit Nganu wah sakitnya parah loh di…. macem2 dah” trus tambah jadi, ibu-ibu yang lain menimpali, “Wah itu belum apa-apa Jeng, si Pak Itu bahkan harus berobat pulang balik ke luar negri” (Nah nah malah jadi ngerumpi urusan materi). Justru Sang Nenek istri Kakek yang menderita penyakit, cuma bilang dalam hati: “Kalian tidak tau apa-apa… Yang paling merasakan mengurusi suami sakit itu saya. Sudah habis segala tetes tangis, darah, tidur di lantai menunggu di Rumah Sakit, capek, sampai sakit-sakit juga, hingga masalah hutang kesana kemari sekian puluh-ratus juta, sehingga sampai masalah cari informasi dimana kuburan dan siap-siap kain kafan sambil hati ini bingung tak menentu, lutut kaki gemetar serasa tak mampu berdiri tapi apa boleh dikata kalau tidak diurus ya tidak jadi solusi. Dan itu intinya tidak bisa diucapkan dengan kata-kata!”

Boleh percaya boleh tidak, cerita diatas bahkan bukan sekedar cerita fiktif, tapi banyak realita di masyarakat yang betul-betul terjadi… Miris.. Analogi dengan Sharing Buku tadi? Jadi begini, gak usah pakai membandingkan “Ooooooough.. dulu jaauuuuh sebelum kamu lahir saya sudah coding dari dulu! Jadi boro-boro baca anjuran kamu!”, pakai Fortran.. ada lagi pakai Prolog.. Pakai Assembler. Hmmm.. intinya kan bagaimana pekerjaan itu selesai, saya tau coding PHP saya berantakan tapi kan liat buktinya webnya manis sekali dan tidak ada masalah (bug). Walau ada jawaban tapi tidak dijawab oleh Arie, (paling-paling kalau ngejawab sendiri: “Boy, You’re free to stay away from Ruby World :-)” khawatir dianggap tidak sopan, lalu bisa esmosi, sambil cuap-cuap ini yang educated sama uneducated apa bedanya?) ,tapi oleh Matz sendiri yang bikin Ruby sejak awal coding beliau tahun 1993 dulu, Matz pernah di interview lalu menjawab yang kurang lebih maksudnya begini: “Komputer itu untuk kepentingan manusia. Kalau ada Geek yang sampai sangat teliti ngebahas pengalamatan/lokasi memori, untuk membuat Range saja sampai perlu berbaris-baris code, maka orang-orang ini bukan prioritas untuk kepentingan manusia, tapi untuk kepentingan komputer”. Lalu diskusi pun berlanjut, mungkin jadi ada newbie ruby yang kesal, ah Arie suka yel yel gimana coding yang Ruby Way, bukannya kita Rubyist prioritas ke manusia. Ya itu betul, tapi tentu harus dengan cara-cara Ruby itu sendiri. Dan ini akan lebih mengoptimalkan sejalan dengan prinsip Matz itu, prioritas komputer itu ke manusia, bebas tapi tidak cryptic dan jelas tidak kaku, dan seterusnya. Paragraf yang ini sebaiknya diakhiri nasihat-nasihat dari Planet Haskell, ya.. walau Haskell = Bahasa Pemrograman yang functional .. tapi lihatlah sendiri keindahannya, Arie berapa kali (tak terhitung sih) terkagum-kagum akan keindahan coding Haskell ini. Back again, di site Haskell ini ada criticism terhadap Geek, yaitu bersikaplah sebagaimana computer scientist bersikap, tidak debat kusir, nggak pakai otak tapi pakai dengkul. Intinya kritikan tersebut melihat kenyataan yang ada di banyak komunitas Geek akan rame kalau sudah ada holy war, flame, Editor, editor dianggep dipisah lagi ada yg buat hacker serba Terminal sama IDE yang serba main klak klik, lalu soal Pemilihan Bahasa, dan seterusnya.

Terakhir, kalau boleh ArieKeren punya nasihat, duh maaf buat yang lebih senior dari Arie, bukan maksud hati untuk sok menasihati, tapi sebut saja saling ingat-mengingatkan ya.. Belajar suatu bahasa itu (terlebih-lebih dengan cara otodidak), adalah belajar tentang tau pola sesuatu, membiasakan berpikir dengan pola bahasa tersebut. Kita tidak akan bisa berbahasa Jepang yang baik kalau disaat kita berbahasa Jepang dipikiran kita bahasa lain. Kita tidak akan bisa berbahasa Prancis yang baik kalau disaat kita bercakap Prancis di pola pikir kita tidak berubah ke Perancis, tapi hanya tetap di pola Indonesia. Kita tidak bisa berbahasa Ruby kalau di pola pikir kita tertata bahasa lain. Biasanya sifat kewalahan dan memaksa suatu bahasa tertentu (yg baru dipelajari) menjadi bahasa tertentu (yg sudah biasa dikuasai) inilah yang melemahkan seseorang. Menjadi kuatlah dari kelemahan. Kalau sudah tau kelemahannya disana, maka optimalkan sisi kuatnya. Yaitu bandingkan saja antar banyak bahasa itu untuk kekuatan sendiri, dan tetap terus praktekkan memakai pola bahasa yang sedang dipelajari. Ya, boleh-boleh saja membandingkan Ruby dengan bahasa lain, DAN tetap mempraktekkan pola pikir di Ruby, bukan setelah membandingkan tetap berpola pikir di bahasa lain yang jadi perbandingan tadi. Inilah dia rahasianya kenapa ada orang yang bisa bercakap banyak bahasa maupun bisa banyak bermacam-macam bahasa pemrograman. Jadi prinsipnya, membandingkan itu untuk menguatkan, bukan malah melemahkan yang dipelajari. Nanti disuatu saat kalau Rubyist mau pelajari bahasa baru selain Ruby lagi ya gitu lagi caranya, rumusannya sama, teorinya gak jauh beda, prakteknya membuat kaya berlimpah.

Comments
  1. ini link listing buku ruby komplit : http://ruby-doc.org/bookstore (nyampur-nyampur sama rails)

    ada lagi yang satunya dari rekomendasi matz tapi gw lupa narohnya dimana, nanti deh kalo uda dapet di copy paste kesini.

    belajar ruby … belajar rails … GAMPANG

tinggalkan feedback konstruktif atau lebih baik diam

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s