Seringkali saya ditanyai oleh teman-teman atau mahasiswa yang baru belajar pemrograman bagaimana cara menjadi programmer yang baik. Sebagai seorang programmer dengan kemampuan rata-rata, tentunya saya tidak punya jawaban selain “banyak membangun software” dan “banyak membaca”. Di mata saya, tidak ada hal lain yang dapat meningkatkan kemampuan kita dengan cepat selain membaca dan praktek langsung.

The more that you read, the more things you will know. The more that you learn, the more places you’ll go. Dr. Seuss

Kali ini saya hanya akan membahas bacaan-bacaan yang secara langsung maupun tidak langsung, dari pengalaman saya, dapat meningkatkan kemampuan pemrograman kita. Tentunya tidak semua orang akan mendapatkan pengalaman yang sama dengan saya, tetapi menurut saya beberapa buku ini setidaknya akan mempengaruhi bagaimana kita memandang permasalahan pemrograman:

  1. Code Complete: A Practical Handbook of Software Construction, Second Edition

    Cover buku Code Complete

    Buku ini bercerita mengenai pembangunan perangkat lunak, sebuah topik yang sangat jarang dibahas oleh akademisi maupun praktisi. Meskipun sangat jarang dibahas, menurut saya konstruksi atau pembangunan perangkat lunak merupaakn salah satu aspek terpenting dalam membuat perangkat lunak. Kita dapat saja memiliki desain yang terbaik di dunia, dengan rencana pengembangan yang sangat akurat tetapi jika tidak ada yang sanggup mengimplementasikan (menuliskan kode) perangkat lunak tersebut, apa gunanya?

    Jika ingin membangun dan melatih cara pikir untuk menulis kode yang baik, anda wajib membaca buku ini.

  2. Structure and Interpretation of Computer Programs

    Cover buku SICP

    Sebagai buku wajib dan salah satu pengantar kuliah pada MIT, buku ini merupakan buku yang sangat populer dalam kalangan programmer senior. Kenapa? Buku ini menjelaskan cara berpikir dan memberikan panduan sistematis untuk membangun abstraksi program. Selain untuk stimulasi pikiran, kita juga akan sangat banyak belajar mengenai pemrograman fungsional dan cara kerja komputer dari buku ini.

    Ingin mengetahui bagaimana cara kerja komputer, bahasa pemrograman, dan konsep dasar ilmu komputer lainnya secara mendetail? Ingin mampu membangun abstraksi dengan baik serta menghasilkan kode berkualitas tinggi? Baca buku ini, yang untungnya tersedia secara gratis.

  3. Programming Pearls

    Cover buku Programming Pearls

    Programming Pearls merupakan buku yang sangat menyenangkan untuk dibaca, karena disajikan dengan gaya bahasa yang santai dan mengundang. Buku yang membahas berbagai aspek pemrograman, mulai dari penulisan kode sampai kreatifitas berpikir ini wajib dibaca untuk meningkatkan wawasan kita dalam dunia pemrograman.

    Membaca Programming Pearls terasa seperti saling berbagi pengalaman dengan ahli yang sudah pensiun. Sangat banyak hal-hal yang dapat dipelajari berdasarkan pengalaman si ahli. Tidak peduli berapa banyak pengalaman yang anda miliki dalam mengembangkan perangkat lunak, buku ini akan memberikan banyak pengetahuan dan wawasan yang baru.

  4. The Pragmatic Programmer: From Journeyman to Master

    Cover buku Pragmatic Programmer

    Buku ini memiliki gaya penulisan yang sama dengan Programming Pearls, tetapi memiliki pelajaran yang berbeda. Jika Programming Pearls lebih menjelaskan tentang kreatifitas berpikir dalam membangun perangkat lunak, Pragmatic Programmmer lebih menekankan ke metode penulisan kode berkualitas yang sistematis. Keduanya tentu saja adalah buku yang wajib dibaca. Melihat kode dari sudut pandang yang berbeda-beda akan dapat meningkatkan kemampuan menulis kode anda tentunya!

  5. Mathematics for Computer Students

    Banyak mahasiswa yang sering mempertanyakan “apa sih gunanya belajar kalkulus untuk ngoding? Aljabar linear? Statistik? Gak jelas!” Buku ini memberikan jawaban gamblang untuk pertanyaan-pertanyaan umum tersebut. Membahas bagaimana kita dapat menggunakan pengetahuan matematika untuk mengembangkan algoritma (dan akhirnya, perangkat lunak) buku ini wajib dibaca agar dapat membangun program yang tidak hanya dapat berjalan, tetapi juga berjalan dengan benar. Jangan lewatkan buku ini, terutama jika anda bekerja di bidang yang memerlukan pengetahuan matematika yang mendalam seperti game atau program grafis.

Selain kelima buku tersebut, tentunya masih ada sangat banyak buku-buku lain yang dapat meningkatkan kemampuan kita dalam menulis program, dan saya belum berbicara mengenai website, artikel, paper, dan jutaan sumber lainnya! Tetapi tidak usah takut, karena kelima buku tersebut akan memberikan fondasi yang sangat kuat bagi anda, dan pada akhirnya jika telah membaca lima buku tersebut mudah-mudahan anda dapat dengan mudah mengerti buku-buku lainnya tentang pemrograman, dan lebih pentingnya, mengetahui buku yang berkualitas dan tidak.

Well, akhir kata, selamat membaca!

PS. Kelima buku tersebut memakan waktu saya sekitar 2 tahun. Selamat tenggelam dalam pencarian ilmu :D

comments powered by Disqus

Daftar Isi