Saya merekomendasikan The Clean Coder karya Uncle Bob. Dalam banyak kasus, banyak orang keliru menganggapnya sebagai Clean Code, tetapi buku ini membahas tentang bagaimana cara menjadi pengembang yang baik. Ada banyak poin yang bisa langsung dipraktikkan di perusahaan sebagai action item. Secara pribadi, saya merasa ini adalah buku yang paling pertama harus dibaca, terutama oleh mereka yang baru mulai belajar pengembangan :)
Saya pribadi ingin merekomendasikan buku ini sebagai bacaan wajib untuk pengembangan diri, bahkan bagi yang bukan developer. Alasannya, buku-buku pengembangan diri lain umumnya ditulis setelah seseorang sukses (jadi distorsi ingatan dan penggambaran yang diperindah cukup parah), sedangkan buku ini adalah buku yang dibuat dari jurnal yang ditulis Jordan Mechner apa adanya, sehingga kita bisa mengetahui tanpa distorsi kehidupan seperti apa yang dijalani seseorang dan kegelisahan apa yang ia hadapi sebelum meraih kesuksesan.
Di sela-selanya, kita juga bisa melihat sekilas upaya seperti apa yang dilakukan seorang developer untuk membuat game, terutama seberapa besar perhatian yang dicurahkan pada optimasi.
Ini sangat membantu saya dalam mempelajari konsep dan intuisi untuk membangun perangkat lunak yang bukan sekadar berfungsi, tetapi mampu bertahan di dunia nyata yang keras.
Ada juga buku yang sering disebut dalam konteks pembahasan serupa, yaitu Humble Pi: When Math Goes Wrong in the Real World karya Matt Parker (Dasan Science, 2020). Isinya tidak terbatas hanya pada perangkat lunak, tetapi memperkenalkan banyak kasus kesalahan yang berkaitan dengan perangkat lunak.
Buku ini juga sangat bagus. Dengan susunan yang dimulai dari rangkaian listrik sederhana dan relay yang menghubungkannya, lalu membangun pemahaman tentang cara kerja komputer secara bertahap dari level paling bawah untuk melihat bagaimana abstraksi terbentuk, buku ini bisa dibilang sebagai pelopor buku-buku seperti [Membangun Komputer dari Nol].
Understanding the Ruby internals: memahami internal Ruby.
Ini bukan semata buku tentang Ruby, melainkan berisi penjelasan yang rinci dan ramah tentang bagaimana program memahami bahasa pemrograman, jadi saya merasa akan lebih baik kalau saya membacanya lebih awal.
Saya juga langsung teringat "The Pragmatic Programmer", tetapi karena itu sudah lebih dulu direkomendasikan, saya akan memilih "Refactoring".
Dan di https://mysetting.io/books ada daftar buku yang membantu untuk pengembangan, dan ternyata sebagian besar adalah buku-buku yang juga ingin saya rekomendasikan.
Itu adalah [Hamkke Jaragi]. Ada subjudul "jalan menuju Agile". Buku ini memuat pembahasan yang solid dan berbasis bukti tentang pembelajaran dan pertumbuhan, kolaborasi, serta hasil.
Saya pribadi merekomendasikan "Logicomix". Buku ini mempertemukan kita dengan jejak yang ditempuh matematika, fondasi ilmu komputer, serta kisah orang-orang yang bergulat dan tersesat di tengah perjalanannya.
Buku yang cukup terkenal sampai layak masuk jajaran bacaan wajib mungkin juga akan banyak direkomendasikan oleh orang lain, jadi alih-alih itu saya ingin sedikit mengubah arahnya dan memilih satu buku yang kiranya bisa membantu pemula pemrograman.
Hirokazu Nishio, 『Teknik yang Menopang Coding: Teknik Pemrograman yang Dipahami lewat Prinsip』(BJ Public, 2013)
Ini adalah buku yang memperkenalkan berbagai konsep yang umum muncul di banyak bahasa pemrograman, sekaligus menjelaskan mengapa konsep-konsep tersebut muncul, dengan membandingkan beberapa bahasa. Secara pribadi, ini benar-benar buku yang sangat membantu saya.
Selain buku ini, saya juga merekomendasikan buku yang sedang saya baca sekarang karena menurut saya sangat cocok untuk orang yang sudah mulai belajar pemrograman dan menuntaskan sintaks dasar, tetapi belum tahu harus melakukan apa setelah itu.
Raoul-Gabriel Urma · Richard Warburton, 『Pengembangan Perangkat Lunak Java Praktis: Mempelajari Teknik Pengembangan Java Modern lewat 4 Proyek』(Hanbit Media, 2020)
Ini adalah buku yang secara ringkas memperkenalkan prinsip SOLID, test-driven development, design pattern, dan topik serupa berbasis bahasa Java, lalu memberi kesempatan untuk berlatih menerapkannya ke kode nyata. Walau volume bukunya sendiri tidak terlalu besar, buku ini tetap layak dikerjakan sambil menyelesaikan semua latihan yang ada.
Hanya dengan melihat daftar isinya saja, kedua buku itu tampaknya sudah memuat inti yang dibutuhkan untuk pemrograman dan pengembangan. Terima kasih atas rekomendasinya.
23 komentar
Saya pribadi tidak membaca banyak buku,
namun saya merekomendasikan 'The Pragmatic Programmer'.
Saya merekomendasikan Clean Agile.
Ini adalah buku yang bagus untuk mendapatkan gambaran umum tentang agile secara menyeluruh.
Tentang budaya hacker, "Hackers: Heroes of the Computer Revolution"
Saya pribadi merasa ini adalah buku yang bagus dan memotivasi.
Buku yang mengubah hidup saya adalah Code Complete.
Saya merekomendasikan The Clean Coder karya Uncle Bob. Dalam banyak kasus, banyak orang keliru menganggapnya sebagai Clean Code, tetapi buku ini membahas tentang bagaimana cara menjadi pengembang yang baik. Ada banyak poin yang bisa langsung dipraktikkan di perusahaan sebagai action item. Secara pribadi, saya merasa ini adalah buku yang paling pertama harus dibaca, terutama oleh mereka yang baru mulai belajar pengembangan :)
"Prince of Persia: Catatan Pengembangan".
Saya pribadi ingin merekomendasikan buku ini sebagai bacaan wajib untuk pengembangan diri, bahkan bagi yang bukan developer. Alasannya, buku-buku pengembangan diri lain umumnya ditulis setelah seseorang sukses (jadi distorsi ingatan dan penggambaran yang diperindah cukup parah), sedangkan buku ini adalah buku yang dibuat dari jurnal yang ditulis Jordan Mechner apa adanya, sehingga kita bisa mengetahui tanpa distorsi kehidupan seperti apa yang dijalani seseorang dan kegelisahan apa yang ia hadapi sebelum meraih kesuksesan.
Di sela-selanya, kita juga bisa melihat sekilas upaya seperti apa yang dilakukan seorang developer untuk membuat game, terutama seberapa besar perhatian yang dicurahkan pada optimasi.
Ah.. apakah selain versi bahasa asli, sudah terbit juga versi terjemahannya?
https://fabianist.tistory.com/716 Sepertinya tersedia dalam bentuk e-book
Release It
Ini sangat membantu saya dalam mempelajari konsep dan intuisi untuk membangun perangkat lunak yang bukan sekadar berfungsi, tetapi mampu bertahan di dunia nyata yang keras.
Saya merekomendasikan "Kesalahan perangkat lunak dalam sejarah"
Mungkin Anda akan merasakan bobot dari satu baris kode secara berbeda..
Ada juga buku yang sering disebut dalam konteks pembahasan serupa, yaitu Humble Pi: When Math Goes Wrong in the Real World karya Matt Parker (Dasan Science, 2020). Isinya tidak terbatas hanya pada perangkat lunak, tetapi memperkenalkan banyak kasus kesalahan yang berkaitan dengan perangkat lunak.
Menurut saya pribadi, dua buku di bawah ini tampaknya paling akurat menggambarkan layanan web modern dari sisi arsitektur dan operasional.
Building Microservices: Designing Fine-Grained Systems
The Site Reliability Workbook: Practical Ways to Implement SRE
Saya merekomendasikan "CODE" karya Charles Petzold.
Buku ini juga sangat bagus. Dengan susunan yang dimulai dari rangkaian listrik sederhana dan relay yang menghubungkannya, lalu membangun pemahaman tentang cara kerja komputer secara bertahap dari level paling bawah untuk melihat bagaimana abstraksi terbentuk, buku ini bisa dibilang sebagai pelopor buku-buku seperti [Membangun Komputer dari Nol].
Understanding the Ruby internals: memahami internal Ruby.Ini bukan semata buku tentang Ruby, melainkan berisi penjelasan yang rinci dan ramah tentang bagaimana program memahami bahasa pemrograman, jadi saya merasa akan lebih baik kalau saya membacanya lebih awal.
Saya juga langsung teringat "The Pragmatic Programmer", tetapi karena itu sudah lebih dulu direkomendasikan, saya akan memilih "Refactoring".
Dan di https://mysetting.io/books ada daftar buku yang membantu untuk pengembangan, dan ternyata sebagian besar adalah buku-buku yang juga ingin saya rekomendasikan.
Itu adalah [Hamkke Jaragi]. Ada subjudul "jalan menuju Agile". Buku ini memuat pembahasan yang solid dan berbasis bukti tentang pembelajaran dan pertumbuhan, kolaborasi, serta hasil.
Saya pribadi merekomendasikan "Logicomix". Buku ini mempertemukan kita dengan jejak yang ditempuh matematika, fondasi ilmu komputer, serta kisah orang-orang yang bergulat dan tersesat di tengah perjalanannya.
Buku yang cukup terkenal sampai layak masuk jajaran bacaan wajib mungkin juga akan banyak direkomendasikan oleh orang lain, jadi alih-alih itu saya ingin sedikit mengubah arahnya dan memilih satu buku yang kiranya bisa membantu pemula pemrograman.
Hirokazu Nishio, 『Teknik yang Menopang Coding: Teknik Pemrograman yang Dipahami lewat Prinsip』(BJ Public, 2013)
Ini adalah buku yang memperkenalkan berbagai konsep yang umum muncul di banyak bahasa pemrograman, sekaligus menjelaskan mengapa konsep-konsep tersebut muncul, dengan membandingkan beberapa bahasa. Secara pribadi, ini benar-benar buku yang sangat membantu saya.
Selain buku ini, saya juga merekomendasikan buku yang sedang saya baca sekarang karena menurut saya sangat cocok untuk orang yang sudah mulai belajar pemrograman dan menuntaskan sintaks dasar, tetapi belum tahu harus melakukan apa setelah itu.
Raoul-Gabriel Urma · Richard Warburton, 『Pengembangan Perangkat Lunak Java Praktis: Mempelajari Teknik Pengembangan Java Modern lewat 4 Proyek』(Hanbit Media, 2020)
Ini adalah buku yang secara ringkas memperkenalkan prinsip SOLID, test-driven development, design pattern, dan topik serupa berbasis bahasa Java, lalu memberi kesempatan untuk berlatih menerapkannya ke kode nyata. Walau volume bukunya sendiri tidak terlalu besar, buku ini tetap layak dikerjakan sambil menyelesaikan semua latihan yang ada.
Hanya dengan melihat daftar isinya saja, kedua buku itu tampaknya sudah memuat inti yang dibutuhkan untuk pemrograman dan pengembangan. Terima kasih atas rekomendasinya.
Kalau harus memilih satu buku saja, saya akan pilih 'The Pragmatic Programmer'
Kalau memilih 3 buku, saya akan menambahkan
'Hackers & Painters' dan 'Just for Fun'.
Secara pribadi, meskipun sangat lawas dan mendasar, saya akan memilih "The Pragmatic Programmer".