Vraag Wat is het meest invloedrijke boek dat elke programmeur moet lezen? [Gesloten]


Als je terug kunt gaan in de tijd en jezelf kunt vertellen dat je aan het begin van je carrière een specifiek boek moet lezen als ontwikkelaar, welk boek zou het dan zijn?

Ik verwacht dat deze lijst gevarieerd is en een breed scala aan dingen bestrijkt.

Zoeken: Gebruik het zoekvak in de rechterbovenhoek. Om de antwoorden van de huidige vraag te doorzoeken, gebruikt u inquestion:this. Bijvoorbeeld:

inquestion:this "Code Complete"

1439


oorsprong


antwoorden:


  • Code voltooid (2e editie) door Steve McConnell
  • De Pragmatische programmeur
  • Structuur en interpretatie van computerprogramma's
  • De C programmeertaal door Kernighan en Ritchie
  • Inleiding tot algoritmen door Cormen, Leiserson, Rivest & Stein
  • Ontwerp patronen door de Bende van Vier
  • Refactoring: Verbetering van het ontwerp van bestaande code
  • The Mythical Man Month
  • De kunst van computerprogrammering door Donald Knuth
  • Compilers: Principles, Techniques and Tools door Alfred V. Aho, Ravi Sethi en Jeffrey D. Ullman
  • Gödel, Escher, Bach door Douglas Hofstadter
  • Clean Code: een handboek van Agile Software Vakmanschap door Robert C. Martin
  • Effectieve C ++
  • Effectiever C ++
  • CODE door Charles Petzold
  • Parels programmeren door Jon Bentley
  • Effectief werken met oude code door Michael C. Feathers
  • Peopleware door Demarco en Lister
  • Coders op het werk door Peter Seibel
  • Je maakt toch een grapje, Mr. Feynman!
  • Effectieve Java 2e editie
  • Patronen van Enterprise Application Architecture door Martin Fowler
  • The Little Schemer
  • De doorgewinterde Schemer
  • Why's (Poignant) Guide to Ruby
  • The Inmates Are Running The Asylum: Waarom hightechproducten ons gek maken en hoe we de gezondheid kunnen herstellen
  • The Art of Unix Programming
  • Test-driven ontwikkeling: per voorbeeld door Kent Beck
  • Praktijken van een Agile ontwikkelaar
  • Do not Make Me Think
  • Agile-softwareontwikkeling, -principes, -patronen en -praktijken door Robert C. Martin
  • Domain Driven Designs door Eric Evans
  • Het ontwerp van alledaagse dingen door Donald Norman
  • Modern C ++ Design door Andrei Alexandrescu
  • Beste software schrijven I door Joel Spolsky
  • De praktijk van programmeren door Kernighan en Pike
  • Pragmatisch denken en leren: Refacteer je Wetware door Andy Hunt
  • Software-schatting: de zwarte kunst demystificeren door Steve McConnel
  • The Passionate Programmer (My Job Went To India) door Chad Fowler
  • Hackers: Heroes of the Computer Revolution
  • Algoritmen + gegevensstructuren = programma's
  • Solid Code schrijven
  • JavaScript - The Good Parts
  • Echt worden door 37 signalen
  • Foundations of Programming door Karl Seguin
  • Computergraphics: principes en praktijk in C(2e editie)
  • Denken op Java door Bruce Eckel
  • De elementen van computersystemen
  • Refactoren naar patronen door Joshua Kerievsky
  • Moderne besturingssystemen door Andrew S. Tanenbaum
  • De geannoteerde Turing
  • Dingen die ons slim maken door Donald Norman
  • De tijdloze manier van bouwen door Christopher Alexander
  • The Deadline: A Novel over Project Management door Tom DeMarco
  • The C ++ Programming Language (3e editie) door Stroustrup
  • Patronen van Enterprise Application Architecture
  • Computersystemen - het perspectief van een programmeur
  • Agile Principles, Patterns and Practices in C # door Robert C. Martin
  • Groeiende object-georiënteerde software, Guided door Tests
  • Framework Design Guidelines door Brad Abrams
  • Object denken door Dr. David West
  • Geavanceerde programmering in de UNIX-omgeving door W. Richard Stevens
  • Hackers en schilders: grote ideeën uit het computertijdperk
  • De ziel van een nieuwe machine door Tracy Kidder
  • CLR via C # door Jeffrey Richter
  • De tijdloze manier van bouwen door Christopher Alexander
  • Ontwerppatronen in C # door Steve Metsker
  • Alice in Wonderland door Lewis Carol
  • Zen en de kunst van het motoronderhoud door Robert M. Pirsig
  • Over Face - De essentie van interactieontwerp
  • Here Comes Everybody: The Power of Organizing Without Organizations door Clay Shirky
  • De Tao van programmeren
  • Computationele schoonheid van de natuur
  • Solid Code schrijven door Steve Maguire
  • Philip and Alex's Guide to Web Publishing
  • Object-georiënteerde analyse en ontwerp met applicaties door Grady Booch
  • Effectieve Java door Joshua Bloch
  • berekenbaarheid door N. J. Cutland
  • Masterminds of Programming
  • De Tao Te Ching
  • De productieve programmeur
  • The Art of Deception door Kevin Mitnick
  • The Career Programmer: Guerilla Tactics for an Imperfect World door Christopher Duncan
  • Paradigma's van Artificial Intelligence Programming: Case studies in Common Lisp
  • Masters of Doom
  • Pragmatische unit-testen in C # met NUnit door Andy Hunt en Dave Thomas met Matt Hargett
  • Hoe het op te lossen door George Polya
  • De Alchemist door Paulo Coelho
  • Smalltalk-80: de taal en de implementatie ervan
  • Secure Code schrijven (2e editie) door Michael Howard
  • Inleiding tot functionele programmering door Philip Wadler en Richard Bird
  • Geen bugs! door David Thielen
  • rework door Jason Freid en DHH
  • JUnit in actie

1747



K & R

@Juan: Ik ken Juan, ik weet het - maar er zijn enkele dingen die alleen kunnen worden geleerd door echt aan de slag te gaan. Als je de hele dag in abstracte idealen spreekt, word je gewoon een academicus. Het is in de toepassing van het abstracte dat we echt de reden voor hun bestaan ​​grok. : P

@Keith: geweldige vermelding van "The Inmates are the Asylum" door Alan Cooper - een opener voor bepaalde ontwikkelaars die met me hebben gewerkt sinds ik las dat dit boek me de ideeën heeft horen noemen die het behartigt. 1


9



Discrete wiskunde voor computerwetenschappers http://ecx.images-amazon.com/images/I/51HCJ5R42KL._SL500_BO2,204,203,200_AA219_PIsitb-sticker-dp-arrow,TopRight,-24,-23_SH20_OU02_.jpg

Discrete wiskunde voor computerwetenschappers door J.K. Truss.

Hoewel dit je niet leert programmeren, leert het je fundamentele wiskunde die elke programmeur zou moeten kennen. Je herinnert je dit spul misschien van de universiteit, maar in werkelijkheid zal predikatenlogica je programmeervaardigheden verbeteren, je moet Set Theory leren als je wilt programmeren met behulp van collecties.

Er is hier echt veel interessante informatie die je op verschillende manieren aan problemen kan laten denken. Het is handig om te hebben, gewoon om af en toe iets op te halen om iets nieuws te leren.


9



Systemantiek: hoe systemen werken en vooral hoe ze falen. Krijg het gebruikt goedkoop. Maar je krijgt misschien niet de humor totdat je aan een aantal mislukte projecten hebt gewerkt.

De schoonheid van het boek is het copyrightjaar.

Waarschijnlijk de meest diepgaande afhaalmogelijkheid die in het boek wordt gepresenteerd:

The Fundamental Failure-Mode Theorem (F.F.T.): complexe systemen werken meestal in de faalmodus.

Het idee is dat er falende delen zijn in een bepaald stuk software die worden gemaskeerd door fouten in andere delen of door validaties in andere delen. Zie een real-world voorbeeld op de Therac-25 bestralingsapparaat, waarvan de softwareproblemen werden gemaskeerd door hardwarestoringen. Toen de hardwarefails werden verwijderd, resulteerde de software-racesituatie die al die jaren onopgemerkt was gebleven in de dood van 3 mensen.


9



Een van mijn persoonlijke favorieten is Hacker's Delight, omdat het net zo leuk was om te lezen als educatief.

Ik hoop dat de tweede editie snel verschijnt!


9



Concepten, technieken en modellen van computerprogrammering.

alt-tekst http://ecx.images-amazon.com/images/I/51YZ50ZR13L._SL500_AA240_.jpg


9



Extreme Programming Explained: Embrace Change door Kent Beck. Hoewel ik niet voorstander ben van een hardcore XP-of-the-highway-poging tot software-ontwikkeling, zou ik willen dat ik veel eerder in mijn carrière kennis had gemaakt met de beginselen in dit boek. Unit testen, refactoring, eenvoud, continue integratie, kosten / tijd / kwaliteit / reikwijdte - dit veranderde de manier waarop ik naar ontwikkeling keek. Vóór Agile draaide het allemaal om de debugger en angst voor wijzigingsverzoeken. Na Agile doemden die demonen niet zo groot op.


9



Typen en programmeertalen door Benjamin C Pierce voor een grondig begrip van de onderbouwing van programmeertalen.


9



alt-tekst http://ecx.images-amazon.com/images/I/51E0Ojkz8iL._BO2,204,203,200_PIsitb-sticker-arrow-click,TopRight,35,-76_AA300_SH20_OU01_.jpg


9



Database systeemconcepten is een van de beste boeken die je kunt lezen over het begrijpen van goede principes voor databaseontwerp.

alt text


9