Kitab Ruby, Buku Belajar Pemrograman Ruby, Bagian 1

Posted: April 16, 2007 in RUBY

Apa yang sering ditemui pada Developer Senior ? :-) Tatkala ditanya gimana biar pinter sesuatu? Mis. Gimana biar pinter svn? Gimana biar pinter C? Gimana biar pinter Ruby? Kalau Developer Senior mungkin karna sangat kenyang dengan buku-buku tebal dan bermacam-macam, ditambah lagi pengalaman asam garam di lapangan… biasanya langsung ngejawab, kalau itu svn, ho hoo itu buku nagel svn aja sudah lebih dari cukup. (titik) kalau itu ruby, langsung dijawab, ho hooo itu buku pickaxe dan ruby way sudah cukup (titik) kalau itu C, ho hooo tu buku Kernighan uda cukup, ditambah lagi dengan buku Expert C Programming Deep C Secrets tapi itu untuk Advanced (titik). Kalau ArieKeren nggak gitu, ini sih bukan urusan sebab akibat Arie pakai Mac pakai Apple trus jadi berprinsip Think Different ….. No no no.. Ini semua didapat dari pengalaman saja.
Begini, dulu pernah ada seorang dosen statistik bilang, “ada orang yang langsung paham dengan sekali membaca dari satu referensi saja, ada orang yang baru paham setelah dua kali baca, ada yang setelah tiga kali baca dan banyak trial error oret-oretan statistik, ada yang setelah 50 kali baru bisa.”

Arie bilang, “Orang itu macam-macam. Tergantung pada kemampuan. Juga tergantung dengan letak si orang ini menemukan fun dengan yang dipelajarinya itu dimana.”

OK, karna hidup Arie erat kaitannya dengan dunia Ruby, maka kita bahas buku-buku Ruby, review? Nggak juga… soalnya khawatir nggak level sampe disebut review, yaa sekedar berbagi sajalah.

BTW, Nyentil lebih lanjut, masih mending jawaban Developer Senior, jawaban Software Engineer senior kayak gitu tadi, kalo Hacker C, Hacker2, Tukang ngecrack software low level :-) mungkin ngejawab lebih sadis lagi, “Itu Ruby sudah dibuat dengan C kan?! Ya udah RTFM aja beres!” =D Well, fellas.. not all creatures in this universe are hackers like you :-) You enjoy flying up there, and I enjoy flying up and down here.

OK, kita langsung aja..

RUBY COOKBOOK

Screenshot_1.png
Mulai dari buku yang maanaa yaa? di random aja ya.. Ruby Cookbook, hati-hati ada 2, yang satu yang versi gratis, yang versi gratis ini cocok buat beginner tapi buat yang intermediate apalagi advanced pasti benci bukunya soalnya bertele-tele. Yang satu lagi buku yang versi berbayar, yakni O’Reilly Ruby Cookbook. Buku ini lebih mengoptimasi agar pemakaian Ruby sampai pada puncaknya. Buat Beginner cocok, Advanced juga lumayan lah.. dibahas mulai dari struktur data dan algoritma, integrasi dengan teknologi terkini, string, numbers, array, hash, class, modules, namespace, metaprogramming, pemrosesan XML dan HTML, database, grafis, servis internet seperti email, ssh, bittorent, web servis, multitasking, interface grafis dan terminal, termasuk juga rails (kalau buat railsnya, yaaa kalau uda biasa dgn rails mah resep masak beginian tergolong terlalu sedikit). Jadi boleh dibilang, kalau Ruby Cookbook satunya yang versi HTML yang buat beginner tadi itu semacam quick reference semacam kartu-kartu gitu, kalau yang o’reilly jadi lebih puas. begitu. Bedanya yang satu tadi gratis, kalau o’reilly = bayar atau beli.

BEYOND JAVA

Screenshot_2.png
Ada lagi Beyond Java – O’Reilly, wah buku ini termasuk kategori sangat sangat bahaya dan sangat sangat beracun, ditulis oleh “Hantu” Java : Bruce A. State, Cara ngIngetinnya aja gampang, kalo Bruce Lee, itu pemaen film kungfu, kalo Bruce State, itu orang Java yang “murtad” ke Ruby trus malah aktif jadi evangelist Ruby, kalo Bruce Eckel, itu yang nulis Thinking in C++, trus kalo Bruce Williams, itu yang orang rails tapi juga jago desain, nah kalo Bruce Wilis, alah.. alah.. nulis namanya betul ga tuh.. itu pemain film senior yang cerai sama Demi More. Arie akan turut prihatin and would say sorry to hear that, kalau ada banyak orang Java (yang termasuk Java Bigot maupun yang sudah punya sertifikasi macam-macam di Java) yang marah-marah kalau tidak pakai Java. C’est la vie. Jadi sebetulnya ngomongin nama-nama Bruce diatas sih sejujurnya biar ga terlalu tegang… kasihan khan… Buat yang sudah mahir Java yang ingin melihat Ruby mungkin dari sudut pandang “orang Java” mungkin cocok baca ini, buat yang imannya dengan Java masih mudah goyah terombang ambing, buat yang merasa kanuragan OOP nya masih mudah terombang ambing .. tapi tetap berniat keras ingin menetapkan keputusan untuk memilih Java, hati-hati baca buku ini. Kalau ada pergeseran Iman di jiwa masing-masing orang, exodus migrasi dari Java ke Ruby, yang berbicara ini tidak mau tanggung jawab. “Love is Blind”, kata orang sih.. Uhmm.. di buku ini juga dibahas sedikit tentang Seaside (Framework yang tadinya dgn IOWA di Ruby, tapi implementasinya jadi pake Smalltalk).

EVERYDAY SCRIPTING WITH RUBY FOR TEAMS, TESTERS AND YOU

bmsft_medium.jpg
Ada lagi, buku Everyday Scripting With Ruby for Teams, Testers and You oleh Brian Marick, setan arie mau komentar dulu, “Waah gw rada kecewa sama buku ini, kalo ginian mah asal konsep OOP Rubynya uda biasa, ya uda pasti bisa.” . OK, buku ini banyak bermain di Terminal, yaa mungkin saja ada yang stuck dengan Ruby, melihat Ruby koq kesusahan, unless ngebandingin dengan cinta nya gw gak komen loh ya (mis. dengan Ruby ini soalnya bukan C sih). mungkin buku ini bisa worth it lah dibaca, hwee jadi inget mainan shell ni ah. :-) Huohoho nanti dulu sebelum ganti paragraf, ini buku penerbitnya Pragmatic :-P yang Arie sering digosipin Arie fanatik Pragmatic itu, ternyata komennya rada kecewa, berarti ya tergantung bukunya juga kan ya ;-) bukan penerbitnya.

ENTERPRISE INTEGRATION WITH RUBY

Screenshot_3.png
Ada lagi, Enterprise Integration with Ruby oleh Maik Schmidt. Huwohohoho .. ini dulu pernah disuka Arie loh.. ;-) yang suka nggosip langsung bilang, penerbitnya Pragmatic kan?! :-B

Di buku ini ngebahas soal database, mulai dari DBI, ORM sampai LDAP. Juga tentang XML. Juga Low Ceremony Distributed Applications, termasuk juga cara-cara “sulit zaman baheula” SOAP, CORBA, dst. Hey, juga tentang Logging, daemon, rake, testing bahasa kerennya Tools and Techniques.

WHYS POIGNANT GUIDE TO RUBY

Screenshot_4.png
Ada lagi, whys poignant guide to ruby ditulis oleh ~why ya, dia memang dikenal sebagai seorang geek ;-) geek itu apa sih, yaa sebut aja makhluk pintar aneh jenius apa lagi ya.. gitu deh. Kalau biasa dengan humor ala amerika, buku ini pasti disuka.. buku ini juga bisa didapat gratis. Bahasannya santai dan mudah dimengerti isinya. Sejak tahun 2007-an ini buku ini sudah ada warna warni alias tulisan ruby nya sudah punya highlight jadi memudahkan banget (nggak kaya waktu dulu ga warna warni). Jadi baca bukunya why ini benar-benar nuansanya Ruby ini gampang banget.

BEST OF RUBY QUIZ

Screenshot_5.png

Ada yang suka banget teriak, “programming itu yg penting algoritmanya!”

?

Kalau ya, berarti ni buku cocok banget elo baca. Ini sebetulnya pembukuan dari kegiatan rubyquiz yang dilempar ke ruby-talk lalu setelah jeda sekian waktu baru boleh direply untuk didapat solusinya. Bedanya mungkin kalo di buku ini dibahas dengan lebih dimanja lagi ketimbang langsung ikutan di milis ruby-talk, sama kalo cuman ngandelin buku ini berarti ketinggalan kereta, soalnya di ruby-talk kegiatan ini masih terus berlangsung. Buat milestone yang gak bisa dibilang newbie buku ini worth it banget dibaca.

MR. NEIGHBORLY’S HUMBLE LITTLE RUBY BOOK

Penulis: Jeremy McAnally.
Buku ini bisa didapet gratis disini. Bahasanya juga ngga serius-serius, santailah, inggris gaul amrik ;-) Ini buku nerangin, ruby tu kek gimana sih, trus nginstal ruby di win, linux, mac gimana, nyobain, trus konsep dasar di ruby gimana aja, trus dipecah ngebahas OOP di ruby (tambahan ariekeren ngomong: yaaa yg OOP ruby gitu gitu itulah… macem2 metode, dulu pernah dibahas di blog ini, Proc, lamba, block, iterator / ada jg yg kebiasaan nyebut closure :-) Mixin, nah lo yg dulu punya latar belakang PHP masuk Ruby kepetot Module anu Module anu kebiasaan, tabrakan sama Mixin ini padahal yang dimaksud objek anak punya objek parent yang lebih dari satu, bingunglah anak-anak ini… makanya dinasihatin sama ariekeren nurut atuh, biar ga bingung-bingung tersesat sama fundamental diri sendiri…ada lagi dinasihatin jangan jadiin kata “public” sebagai nama field karna di ruby ada enkapsulasi public, protected, private, biar ga keluar error, itu buat jaga2 biar ga bingung sendiri sama kelakuan tu… sama biar syntax highlight editor juga nggak “bingung” alias “ambigu” yg dimaksud ni jadinya atribut atau pengkapsulan isolasi metoda nih.) OK, lanjut lagi, trus dibahas hal2 biasa di programming kayak struktur kontrol, ya apalagi kalo bukan if then else unless itu, lalu IO, threads, fork, win32. Hey btw uda tau belum kalo ada blog rubyonwindows ha? ariekeren biar ga pegang windows sama sekali buat ngoding ruby, tapi tetep sempet tu ngelirik ke blog itu. sambil nyanyi: liiriiikaaan maaataaaamuuuu jemuranmuuuu hilaaaang…. seribu tiga ratus… pasti kan kau belii… seribu lima ratus… memiikat haatii. Hmm.. lanjut lagi, trus ya ngebahas networking di ruby, lalu distributed Ruby, database baru yang terakhir library yg dibahas.

Comments
  1. Buku Ruby Way memang sangat sangat menarik, maklum saja yang menulis adalah Hal Fulton, seorang anggota ACM, seorang software engineer yang sudah pengalaman / senior. Kita benar2 dilatih agar intuitif memakai Ruby. Mis.

    Bedanya {} dan do end.

    mymethod param1, foobar do … end
    # Here, do-end binds with mymethod

    sedangkan,

    mymethod param1, foobar { … }
    # Here, {} binds with foobar, assumed to be a method

    dan masih banyak lagi ;-)

  2. Ini ada buku bagus lagi,

    http://www.brpreiss.com/books/opus8/

    Data Structures and Algorithms
    with Object-Oriented Design Patterns in Ruby

    Bruno R. Preiss, B.A.Sc., M.A.Sc. Ph.D., P.Eng.

    Bukunya GRATIS! :-D

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