Bagaimana Anda memaksimalkan pengetahuan yang Anda peroleh dari buku pemrograman? [Tutup]

26

Bukan karena saya peduli berapa lama seseorang untuk membaca buku, tetapi lebih karena saya tertarik pada bagaimana orang mendapatkan pengetahuan dari sebuah buku (atau saya kira sumber lain) ke dalam otak mereka dengan cara terbaik, paling efisien.

Secara pribadi saya mengambil pendekatan multi-pass (dari jawaban saya ke pertanyaan awal):

  1. Telusuri isi, celupkan, dan baca apa pun dengan judul yang menarik dan akhirnya telusuri diagram dan ilustrasi yang bagus. Saya tidak akan mengambil banyak pada tahap ini, tetapi itu memberi saya pandangan mental tentang buku (paling banyak satu jam atau lebih)
  2. Pertama melewati buku, umumnya saya akan membaca bab-bab pembukaan untuk buku yang sangat berat atau memperkenalkan sesuatu yang sama sekali baru. Untuk buku-buku yang membahas subjek saya sudah tahu tentang saya akan membaca sekilas atau melewatkan bit yang tampak sepele. Sisa buku ini akan saya lalui dengan cukup cepat tetapi tidak terlalu cepat sehingga saya hanya membalik halaman. (sekitar seminggu)
  3. Tidak semua buku yang saya baca sampai sejauh ini, tetapi jika saya menemukan buku yang cukup menarik atau bermanfaat saya akan mempelajarinya dengan benar. Saya akan membaca buku dengan lebih lambat dan melakukan beberapa atau semua contoh, mencoba kode, dll. Saya akan sering melewatkan seluruh bab di sini kecuali buku itu benar-benar bagus (1-3 minggu tergantung pada buku).
  4. Akhirnya ketika saya selesai membacanya dan membaca buku-buku lain saya akan sering mencelupkannya berulang kali ke referensi silang, membandingkan, mencari sesuatu, menelusuri, dll - begitu banyak buku favorit saya tidak hanya berakhir mengumpulkan debu di rak buku.

Saya jarang membuat catatan saat membaca (walaupun saya mungkin melakukan perencanaan di atas kertas jika saya sedang mengerjakan sesuatu seperti contoh kode). Saya juga mempertimbangkan untuk mulai menggunakan kanban pribadi untuk mengatur kemajuan saya, tetapi tidak pernah cukup menggunakan teknik itu. Mindmap adalah hal lain yang saya sukai tetapi jarang saya lakukan.

Apa metode lain yang dimiliki orang? Seberapa sukses Anda menemukannya? Apakah ada teknik yang umum direkomendasikan yang Anda rasa membuang-buang waktu?

FinnNk
sumber
Saya pribadi mencoba membuktikan penulis salah atau melihat apakah ada kasus sudut yang pecah atau saya tidak mengerti. IMO, pengetahuan apa pun yang Anda pelajari tetapi tidak menguji kesalahan bisa menjadi pedang bermata dua.
Semoga bermanfaat

Jawaban:

30

Lakukan latihan.

Jika tidak ada, ciptakan beberapa.


sumber
3
Dan setelah melakukan latihan, implementasikan kembali dalam kode Anda sendiri dengan cara Anda sendiri. Contohnya bagus dan bagus, tetapi tidak seperti implementasi dunia nyata untuk sepenuhnya memahami konsep.
Hugo
+1: Anda dapat menambahkan ini ke bagian atas jawaban ini: "Berlatih."
Klaim
Semua buku pemrograman hari ini menjelang akhir datang dengan proyek pendek. Melakukan itu adalah tolok ukur terbesar yang dapat dimiliki siapa pun untuk melacak kemajuan.
Venki
6

Pastikan Anda menerapkan beberapa teknik dalam pemrograman sehari-hari Anda sesegera mungkin.

Saya menemukan bahwa jika saya tidak segera menerapkan hal-hal yang telah saya pelajari, saya harus mengunjungi kembali ketika saya benar-benar membutuhkannya.

ChrisF
sumber
1
Benar. Saya juga berpikir bahwa hanya ketika Anda menerapkan sesuatu dalam konteks yang berbeda dengan yang disajikan dalam buku, Anda benar-benar bertukar dari menghafal ke pemahaman. Sayangnya itu tidak selalu mungkin ... meskipun menjadi manajer pengembangan tempat saya bekerja, jadi tidak ada yang akan benar-benar menanyai saya jika saya dapat menemukan alasan yang masuk akal mengapa kita harus melakukan ini-dan-itu di Prolog atau apa pun, itu terkadang tidak tepat untuk membawa hal-hal ke dalam pekerjaan sehari-hari. Saya kira itulah tujuan proyek pribadi, tetapi kemudian Anda kehilangan banyak manfaat dari pembelajaran kumulatif.
FinnNk
@FinnNk - Saya tidak mengatakan itu akan mudah;) Itulah masalah yang saya miliki saat ini dengan WPF. Saya melakukan proyek di rumah, tetapi tidak mendapatkan banyak waktu untuk dihabiskan untuk itu sehingga saya harus terus merevisi apa yang saya tahu.
ChrisF
6

Sorot apa pun yang mengejutkan Anda. Ini akan membuatnya lebih mudah untuk menemukannya di masa depan.

Tuliskan dalam margin secara ekstensif.

Jika Anda meminjamkan buku Anda kepada seseorang, minta orang itu untuk mengikuti aturan yang sama ini, idealnya dalam berbagai warna. Ini menambah nilai pada buku Anda.

Andy Lester
sumber
2

Pergi dengan seorang teman. Sebaiknya pertimbangkan membaca buku ini sebagai latihan seperti Pair Programming, di mana Anda berdua mencoba menjelaskannya satu sama lain. (Dan tentu saja melakukan latihan seperti yang dikatakan di atas)

Zachary K
sumber
1

Melaksanakan

Terapkan setiap algoritma atau teknik baru yang Anda baca sendiri, hanya dengan menggunakan memori Anda tentang deskripsi algoritma atau teknik sebagai referensi.

Jay Beavers
sumber
1

Karena kekurangan perhatian saya, saya merasa sulit untuk fokus ketika saya belajar dalam pendekatan tradisional, dari awal sampai akhir. Saya lompat ke bagian akhir bab dan langsung ke latihan, dan kemudian menggunakan kombinasi buku dan internet sebagai referensi untuk menyelesaikan masalah.

Begitu saya menempatkan diri pada posisi di mana saya harus menggunakan bahan buku sebagai alat untuk mencapai tujuan alih-alih mempelajarinya "karena saya harus mengetahuinya", konsep-konsep menjadi lebih mudah untuk diambil dan dipraktikkan.

Masalah fokus saya juga berarti saya tidak mengetikkan contoh kode secara langsung, dan alih-alih memikirkan contoh saya sendiri dan menggunakan kode dalam buku untuk membantu saya mewujudkannya. Menjadi kreatif dengan proses belajar memastikan bahwa saya bersenang-senang dengannya, dan keunikan apapun yang saya buat membuatnya lebih mudah untuk mengingat apa yang saya lakukan.

gr33kbo1
sumber