Apa saja hal-hal yang telah Anda baca yang menginspirasi dan membimbing Anda sebagai seorang programmer? [Tutup]

32

Misalnya, sebagai pemula, saya menemukan banyak inspirasi dan arahan dari membaca posting ini oleh Bryan Woods .

aredkid
sumber
Bagaimana Anda menemukan posting blog itu? Itu bacaan yang menakjubkan.
Michael Riley - AKA Gunny

Jawaban:

26

Saya terkejut tidak ada yang menyebutkan Programmer Pragmatis . Ini harus dibaca jika Anda benar-benar tertarik pada kerajinan Anda.

Wyatt Barnett
sumber
Dulu "harus dibaca."
kirk.burleson
2
@ kirk.burleson: Masih.
Steven Evers
Saya akan setuju, membacanya membantu saya menyadari banyak tentang apa yang kita lakukan dan bagaimana cara melakukannya.
aredkid
Saya suka bait `` select '' Is Broken. Itu tidak rusak, itu hanya menyebalkan :)
Tim Post
Akhirnya setelah membacanya, saya akan setuju. Dan saya kira itu adalah jawaban yang layak.
aredkid
13

Sarung tangan

Sarung tangan - perhatikan dengan cermat revisi pertama Anda dan katakan saja pada diri sendiri, "sarung tangan."

Posting ini dari Daily WTF membuat saya tetap di jalur yang benar. Saya akui beberapa kali sudah mulai mengembangkan sesuatu di mana sepasang "sarung tangan" adalah solusi yang tepat.

Covar
sumber
3
Saya tidak mengerti.
kirk.burleson
1
Kirk, Anda perlu membaca artikel yang ditautkan untuk mendapatkan jawaban yang masuk akal ... meskipun itu tidak benar.
Peter Boughton
5
Itu berarti ketika Anda terlalu memikirkan masalah Anda bisa berakhir dengan solusi yang sangat rumit yang akhirnya menjadi lebih rumit karena pilihan desain sebelumnya. Untuk meringkas artikel yang ditautkan, mereka mencoba membuat sistem pemanas tubuh yang konyol untuk menghangatkan tangan Anda. Alih-alih hanya mengenakan sarung tangan
Matt Phillips
pos luar biasa! Luar biasa.
Dave
+1 Saya suka cerita. Saya tidak percaya mereka tidak berhenti setelah "Itu brilian: kita bisa menggunakan kembali panas tubuh lebih efisien! Dengan cara ini, sistem dapat digunakan saat berjalan / jogging juga." komentar.
Evan Plaice
12

Baca pidato yang diberikan oleh Alex Stepanov di Adobe. Pada akhir 5 tahun ini akan memisahkan yang HEBAT dari yang BAIK.

http://www.scribd.com/doc/210467/Speech-by-Alex-Stepanov

Kutu buku
sumber
Anda tahu, Stepanov mengatakan beberapa hal yang saya sangat tidak setuju, tetapi pidato itu bagus.
Frank Shearar
@ Frank: Silakan berbagi jika itu terkait pemrograman, mungkin kita semua bisa belajar sesuatu dari Anda. Janganlah kita bicara tentang komentar Amerika-nya.
Geek
Komentarnya tentang OOP benar-benar salah: stlport.org/resources/StepanovUSA.html Dia pikir OOP adalah pengiriman tunggal dan berbasis kelas, sebagai permulaan. (CLOS menggunakan banyak pengiriman, Self dan Javascript berbasis prototipe, sebagai contoh tandingan.)
Frank Shearar
Apakah ada sumber lain selain transkrip ini? Dia mencatat bahwa transkrip itu salah terjemahan.
Jonn
@ Frank Shearar Cowok itu hanya mengubah kesederhanaan pada spaghetti potensial. Dia juga memberi kuliah dalam bahasa Rusia sekitar setahun yang lalu; di sana dia mengatakan bahwa dia lebih suka hal-hal sederhana seperti "untuk, jika" dan pada dasarnya tidak melihat apa pun yang buruk dalam menulis Pascal dalam bahasa apa pun, jika kodenya efektif dan jelas (sebagai lawan mistis-mengetik, seperti yang saya dapatkan).
mlvljr
10

Saya selalu menemukan Coding Horror and Joel di Software untuk menginspirasi posting blog tertentu. Mereka juga selalu membuat saya merasa senang karena saya mengerti apa yang mereka bicarakan dan membuat saya berpikir tentang diri saya sebagai seorang programmer.

jsternberg
sumber
8

Untuk membaca

Untuk melihat


Terkadang lebih tentang orang ...

Dan sekelompok orang yang mengikuti jejaknya, dan di pundak siapa yang harus berdiri (tanpa urutan tertentu dan terdaftar ketika mereka masuk ke pikiran saya sekarang dalam arus bebas): Alan Kay , Richard Stallman , Ken Thompson , Dennis Ritchie , Brian Kernighan , Theo de Raadt , Linus Torvalds , Eric S. Raymond , Rob Pike , Bill Gates , Steve Jobs , John MacCarthy , John Conway , Martin Odersky , James Gosling , Guy Steele , Donald Knuth ,Edsger Dijkstra , John Carmack , Peter Molyneux ... Entah kata-kata dan karya mereka sendiri inspirasional atau cerita mereka diceritakan oleh orang lain. Selama Anda ingat bahwa keterampilan dan kejeniusan mereka di beberapa bidang tidak mencegah mereka untuk memihak pada keyakinan mereka sendiri terhadap orang lain. Seperti orang lain. (2 buku yang tercantum di atas sudah cukup baik untuk sebagian besar dari mereka!)

Atau teknologi yang kurang terkenal tetapi tetap aktif yang menarik untuk diikuti dari jauh: Neal Gafter, Martin Fowler , Don Syme , dll ...

Saya terinspirasi oleh karya-karya orang-orang ini, dan hal-hal yang mereka lakukan untuk mencapai (atau mengabaikan) proyek mereka.

Terkadang lebih tentang budaya dan mimpi, dan memecahkan hambatan ...

Membaca 2600 sebagai seorang anak ketika bahasa Inggris saya adalah embyonik, kisah phreakers awal seperti Kapten Crunch atau kelahiran era PC dengan Wozniak di Apple dan membaca buku dan esai oleh William Gibson dan Neil Stephenson juga menginspirasi saya sebagai programmer , meskipun itu tidak berhubungan dengan pemrograman secara langsung. Dalam nada itu, bahkan Manifesto Peretas , Agile Manigesto atau bahkan hal-hal seperti Kode Etik IEEE adalah dan masih memberi inspirasi.

haylem
sumber
+1 untuk wawancara gerbang / pekerjaan. Wawancara hebat dan benar-benar benar pada catatan tamu vs. tamu.
Steven Evers
++ untuk 11 tautan dalam 11 kata
sova
@sova: terima kasih, saya harus benar-benar menggali tetapi saya pikir itu bisa membantu. Kalau dipikir-pikir, hanya menunjuk ke pencarian di youtube mungkin lebih baik jika mereka dihapus.
haylem
Anda lupa Wau Holland (salah satu pendiri Chaos Computer Club, yang merupakan salah satu organisasi peretas tertua) - ia menentang sensor, hak cipta, dan karena infrastruktur informasi terbuka.
Joschua
@Joschua: referensi yang bagus. Saya tidak benar-benar mengikuti prestasi Belanda secara langsung, tetapi saya mengikuti berita seputar CCC untuk sementara waktu. Tidak punya waktu luang untuk semua ini sekarang, jujur. :(
haylem
7

The Last Lecture sebuah buku yang ditulis oleh Randy Pausch pria di belakang Alice. Ini sejalan dengan kuliah terakhirnya "Sungguh-sungguh Mencapai Impian Masa Kecil Anda". Harus selalu ingat untuk menjadi Tigger.

JustJohn
sumber
6

daftar yang sangat pendek, terbuat dari dua buku:

  • kepala dulu - pola desain
  • kode bersih
Belun
sumber
5

Dalam hal panduan

Buku The Elements of Programming Style oleh Kernighan dan Plauger sangat berpengaruh bagi saya ketika saya belajar C. Buku ini sudah dianggap "usang" pada saat saya membacanya, karena penggunaannya sampel PL / I dan Fortran, tetapi tips melampaui kedua bahasa.

Sebelum membaca buku itu, saya yakin "gaya" adalah tentang apa yang sekarang saya anggap sebagai masalah sepele, seperti pemformatan (berapa banyak ruang untuk sebuah tab? Di mana Anda menempatkan curlies?). Tetapi gaya adalah apa yang Anda miliki setelah Anda menghapus konvensi pemformatan dan penamaan. Apakah lebih mudah membuat string ke belakang dan kemudian membalikkannya? Kemudian buat kembali dan balikkan.

Buku lain dari Kernighan dan Plauger, Software Tools , juga membantu, tetapi tidak sebagus itu. Dan buku yang jauh lebih baru, The Practice of Programming , karya Kernighan dan Pike juga berguna, tetapi jauh dari The Elements of Programming Style . Saya berharap saya masih memiliki salinan saya. Ini layak untuk dibaca oleh setiap programmer.

Saya menumbuhkan apresiasi terhadap pengujian dan QA setelah membaca Glenford Myers The Art of Software Testing . Itu menunjukkan kepada saya bahwa pengujian adalah kegiatan kreatif yang nyata, dan bukan hanya sesuatu untuk jurusan ilmu komputer yang tidak suka memprogram. Mungkin dengan semakin populernya Test-Driven Development, lebih banyak orang akan beralih ke buku Myers.

Dan saya tidak bisa memikirkan pengantar yang lebih baik untuk gagasan abstraksi daripada buku The Structure and Interpretation of Programs , yang tersedia gratis secara online. Ini memperkenalkan bahasa pemrograman Skema, tetapi menyentuh banyak topik lain dalam ilmu komputer, termasuk pemrograman deklaratif.

Dari segi inspirasi

Dalam karir akademis saya, saya terinspirasi oleh konsep Pemrograman Berorientasi Aspek. Anda dapat membaca beberapa makalah awal tentang AOP dan berakhir dengan setengah halaman catatan untuk ide.

Saya juga berpikir kemajuan Gereja dan Turing sangat menginspirasi. Pada 1930-an, bahkan sebelum komputer dibuat, para ilmuwan dan matematikawan sedang memprogram dalam bahasa pemrograman tingkat tinggi: kalkulus Lambda. Konstruksi angka Gereja dan fungsi pendahulunya mungkin merupakan salah satu konstruksi pemrograman paling pintar yang pernah ada. Ini menunjukkan kepada Anda cara membuat sesuatu dari hampir tidak ada.

Macneil
sumber
1
Jika Anda membaca tentang AOP, jangan lupa karya Kiczales et al sebelumnya, dalam bentuk The Art of the MetaObject Protocol .
Frank Shearar
Keandalan Perangkat Lunak Myer : Prinsip dan Praktek juga merupakan bacaan yang cukup bagus.
Frank Shearar
+1 untuk SICP dalam instruksi
Inaimathi
5

Bukan sesuatu yang saya baca. Pada 1984 saya berbicara dengan tetangga saya dan temannya. Saya berusia 16 tahun. Teman itu memberi tahu saya bahwa pada dasarnya dunia terbagi antara pengguna komputer dan pemrogram komputer. Dia mengatakan hanya orang terpintar di dunia yang bisa menjadi programmer.

Ya ampun! Sungguh suatu tantangan!

Christopher Mahan
sumber
5

Asli Joel pada Perangkat Lunak , cara dia menulis membuatnya sangat mudah untuk memahami konsep ketika saya mulai.

DBlackborough
sumber
2
Dia penulis yang baik dan saya suka membaca barang-barangnya. Ambillah sebagian dengan sebutir garam atau Anda mungkin mengalami depresi jika Anda bukan pengembang rockstar.
kirk.burleson
1
Saya ingin menjadi pengembang rockstar seperti saya ingin menjadi douchebag.
Jonathan Sterling
5

Kode Lengkap, Edisi Kedua oleh Steve McConnell.

Pola Desain: Elemen Perangkat Lunak Berorientasi Objek yang Dapat Digunakan Kembali oleh Erich Gamma

Saya sepenuhnya belajar sendiri, dan saya cukup beruntung untuk menemukan sebuah artikel (saya sudah lama lupa di mana) pada awal pekerjaan saya yang mengarahkan saya ke dua buku ini. Transformasi kode saya setelah saya membaca kedua buku itu mengejutkan. Saya berhutang banyak pada penulis-penulis itu.

Philip Regan
sumber
3

Di antara banyak inspirasi yang paling baru adalah buku ini tentang: Pola Magang

Xencor
sumber
Saya berharap lebih banyak orang akan membenarkan ini. Buku ini luar biasa! Ini bukan panduan teknik pemrograman tetapi juga strategi; menunjukkan kepada Anda cara mendekati karier pemrograman Anda (dan profesi pemrograman pada umumnya) dengan menganggapnya sebagai jalan seumur hidup dan memandang diri Anda sebagai pengrajin seni yang terampil.
Ubur
3

Ketika saya pertama kali membaca Buku Pola Desain pada tahun 1995 atau sesuatu itu adalah pembuka mata nyata bagi saya sebagai seorang programmer.

Saat ini, buku James Shores tentang pengembangan lincah menginspirasi saya, dan akhir-akhir ini Lyssa Adkins tentang tim pelatih, keduanya sangat direkomendasikan jika Anda tertarik pada hal-hal seperti itu.

Martin Wickman
sumber
3

Orang-orang dari suku Timur mungkin menikmati buku kecil lucu koan tentang Tao Pemrograman yang transenden .

Ini adalah langkah pertama saya menuju jalan menuju pencerahan, dan merupakan hal pertama yang mendorong saya untuk berpikir tentang pemrograman, dan karya kreatif secara umum, sebagai entitas yang tidak terkalahkan sendiri yang ditemukan untuk ditemukan seiring waktu oleh pencipta. Mereka yang mencoba melawannya atau memahaminya pasti akan gagal.

Jon Purdy
sumber
3

The Little LISPer mengejutkan saya.

Saya mengambil kelas pemrograman pascal SMA. Saya sudah tahu dasar C64 dengan cukup baik dan bertanya kepada guru apakah semua bahasa pemrograman seperti Basic dan Pascal. Dia meminjamkan saya salinan LISPer Kecil. Setelah menghabiskan akhir pekan membacanya, saya tidak percaya bahasa aneh seperti itu bisa ada atau akan berhasil. Ketika saya melihatnya menjalankan mini dial-up yang dia akses, saya gagal. Itu memang ada.

Setelah kelas pemrograman tingkat universitas kedua saya; Algoritma dan Struktur Data, saya beralih jurusan untuk mendapatkan akses ke lab Komputer CS yang lebih baik. Mereka memiliki mesin Unix dengan lisp, skema, prolog, SmallTalk80 dan banyak alat lainnya.

sal
sumber
3

Kode Lengkap . Ini mencakup sebagian besar mata pelajaran dasar yang perlu Anda ketahui sebagai seorang programmer, dan memberi Anda arahan untuk mempelajari lebih lanjut tentang masing-masingnya. Langkah pertama yang sangat bagus dalam jalur pembelajaran. Saya sendiri dan banyak orang yang saya kenal, berharap mereka membacanya lebih awal dalam kehidupan programmer mereka.

Matthieu
sumber
3

Pembicaraan yang paling menginspirasi yang pernah saya dengar adalah Richard Gabriel berbicara tentang menulis perangkat lunak mirip dengan menulis puisi. Penyair sering menggunakan banyak upaya untuk mendapatkan beberapa kata yang tepat - pikirkan Haikus - dan kita harus berusaha menuju keunggulan dan keanggunan yang sama saat menulis perangkat lunak.

Keanggunan dan keringkasan sama pentingnya dalam pemrograman seperti dalam puisi dan matematika, dan itu membutuhkan banyak upaya untuk melakukannya dengan lancar.

Lihat beberapa poin di http://www.dreamsongs.com/PoetryOfProgramming.html

user1249
sumber
Saya berbagi kantor dengan Richard di MIT sekitar 74-ish.
Mike Dunlavey
2

Buku tunggal paling berguna yang pernah - bukan tentang pemrograman, tetapi tentang cara bekerja secara efektif di bidang ini: "Peopleware" oleh DeMarco dan Lister. Harus di rak buku setiap programmer. Dan jika Anda naik ke manajemen, dua kali lipat.

dengan cepat_now
sumber
2

Seperti yang dikatakan Alan Kay hampir 30 tahun yang lalu , sudut pandang bernilai 80 poin IQ. Buku yang mengubah sudut pandang saya:

  • "Investigasi Filsafat" oleh Ludwig Wittgenstein

    Terkadang kita berpikir kita tahu, padahal sebenarnya, kita tidak tahu. W. menunjukkan cara melihat lebih dekat.

  • "Fakta, Fiksi, dan Ramalan" oleh Nelson Goodman

    Di sini saya telah belajar apa arti kata analitik sebenarnya. Juga, apa arti kata pragmatis sebenarnya.

  • "Zen dan Seni Maintanance Sepeda Motor" oleh Robert M. Pirsig

    Bagaimana mungkin ada hal-hal yang lebih baik daripada hal-hal lain? Mengapa tidak semuanya sama, berkualitas? TKI, apa kesamaan yang dimiliki film bagus, mobil bagus, makanan enak, dan peranti lunak bagus, yang membuatnya bagus?

pembuat pil
sumber
2

Saya menemukan Cara Menjadi Peretas sangat inspiratif. Ini juga memberikan peta jalan yang bisa diterapkan untuk berkembang sebagai programmer.

Larry Coleman
sumber
2

Jiwa Mesin Baru (inspirasi ketika saya masih di sekolah menengah) SICP (mungkin salah satu buku terbaik yang berkaitan dengan pengembangan perangkat lunak yang pernah saya baca)

Tim
sumber
Tracy Kidder's Soul of a New Machine harus menjadi bacaan wajib untuk setiap programmer profesional. Saya telah memberikan salinan kepada setiap pengembang wannabe yang baru dicetak yang telah saya bimbing selama bertahun-tahun. Memahami konsepnya tentang "mendaftar" sepadan dengan harga dan waktu.
Ross Patterson
1

Marvin Minsky

  • Komputasi: Mesin Hingga dan Tak Terbatas

  • Pemrosesan Informasi Semantik

Mike Dunlavey
sumber
1

Seth Godin , walaupun tidak sepenuhnya terkait dengan pemrograman, memiliki beberapa posting yang menginspirasi bagi saya sebagai seorang programmer dan pelaku bisnis yang penuh harapan (selain Joel pada Perangkat Lunak).

eds
sumber
1

Buku lima cincin oleh Myomoto Musasashi.

Beberapa highlight.

Tidak punya alat favorit. Belajarlah untuk menggunakan setiap alat, pelajari kapan waktu yang tepat untuk digunakan, pelajari kelemahan dan kelebihannya.

Staf yang karyanya tidak sempurna dapat digunakan di tempat-tempat di mana kualitas pengerjaan mereka di depan umum. Pilar-pilar yang menopang lantai di bawah bangunan tidak harus memiliki hasil akhir yang sempurna (mereka hanya harus bekerja).

Dengan melakukan satu hal, lakukan banyak hal. Jadi, jika ada pilihan antara melakukan A dan B, tetapi B dapat digunakan untuk melakukan banyak hal minggu depan, lakukan B jika Anda mampu.

Tim Williscroft
sumber
1

Saya mulai dari pemrograman game. Itu semua berasal dari NES hari. Bercita-cita menjadi pengembang game dan saya mencapainya tetapi berubah menjadi Application Software / Hardware Analyst untuk karier yang lebih baik karena negara saya untuk industri game terlalu ceruk.

Selama hari-hari awal saya, saya benar-benar merasa agak menyesal telah masuk ke peran TI ini. Tetapi kemudian diilhami dan dipengaruhi oleh mantan kolega saya atas prestasinya dan mereka cukup aktif dalam bidang pengembangan teknis baru ini. Selama waktu luang saya, saya akan bergaul dengan pemrograman perangkat lunak untuk bekerja pada proyek-proyek pribadi dengan mantan rekan kerja saya.

Bung Digital
sumber
1

Saya tahu ini sulit dibaca, tetapi Seni Pemrograman Komputer Knuth benar-benar masalah besar di bidang kami. Dan Douglas Hofstadter's Gödel, Escher, Bach: An Eternal Golden Braid adalah inspirasi bagi kita yang memiliki kecenderungan matematika atau algoritmik.

Ross Patterson
sumber
Saya telah membaca Coders di tempat kerja ( en.wikipedia.org/wiki/Coders_at_work ) dan hampir semua programer yang diwawancarai merujuk ke buku Knuth, jadi itu pasti terasa seperti harus dibaca.
fejd
1

The Turing Beranotasi

Membayangkan seseorang mendesain metode & algoritma yang rumit hampir seabad lalu membuat saya termotivasi.

Jeff Swensen
sumber