There are a lot of books that can be influential to programmers. But, what is the one book that every programmer should read? This is a question that has been asked by many, and it is still up for debate. However, there are some great contenders for this title. In this blog post, we will discuss three possible books that could be called the most influential book for programmers. So, what are you waiting for? Keep reading to find out more!
- Bjarne Stroustrup – The C++ Programming Language,
- Brian W. Kernighan, Rob Pike – The Practice of Programming,
- Donald Knuth – The Art of Computer Programming,
- Ellen Ullman – Close to the Machine,
- Ellis Horowitz – Fundamentals of Computer Algorithms,
- Eric Raymond – The Art of Unix Programming,
- Gerald M. Weinberg – The Psychology of Computer Programming,
- James Gosling – The Java Programming Language,
- Joel Spolsky – The Best Software Writing I,
- Keith Curtis – After the Software Wars,
- Richard M. Stallman – Free Software, Free Society,
- Richard P. Gabriel – Patterns of Software,
- Richard P. Gabriel – Innovation Happens Elsewhere,
- Code Complete (2nd edition) by Steve McConnell,
- The Pragmatic Programmer,
- Structure and Interpretation of Computer Programs,
- The C Programming Language by Kernighan and Ritchie,
- Introduction to Algorithms by Cormen, Leiserson, Rivest & Stein,
- Design Patterns by the Gang of Four,
- Refactoring: Improving the Design of Existing Code,
- The Mythical Man Month,
- The Art of Computer Programming by Donald Knuth,
- Compilers: Principles, Techniques and Tools by Alfred V. Aho, Ravi Sethi and Jeffrey D. Ullman,
- Gödel, Escher, Bach by Douglas Hofstadter,
- Clean Code: A Handbook of Agile Software Craftsmanship by Robert C. Martin,
- Effective C++,
- More Effective C++,
- CODE by Charles Petzold,
- Programming Pearls by Jon Bentley,
- Working Effectively with Legacy Code by Michael C. Feathers,
- Peopleware by Demarco and Lister
- Coders at Work by Peter Seibel,
- Surely You’re Joking, Mr. Feynman!,
- Effective Java 2nd edition,
- Patterns of Enterprise Application Architecture by Martin Fowler,
- The Little Schemer,
- The Seasoned Schemer,
- Why’s (Poignant) Guide to Ruby,
- The Inmates Are Running The Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity,
- The Art of Unix Programming,
- Test-Driven Development: By Example by Kent Beck,
- Practices of an Agile Developer,
- Don’t Make Me Think,
- Agile Software Development, Principles, Patterns, and Practices by Robert C. Martin,
- Domain Driven Designs by Eric Evans,
- The Design of Everyday Things by Donald Norman,
- Modern C++ Design by Andrei Alexandrescu,
- Best Software Writing I by Joel Spolsky,
- The Practice of Programming by Kernighan and Pike,
- Pragmatic Thinking and Learning: Refactor Your Wetware by Andy Hunt,
- Software Estimation: Demystifying the Black Art by Steve McConnel,
- The Passionate Programmer (My Job Went To India) by Chad Fowler,
- Hackers: Heroes of the Computer Revolution,
- Algorithms + Data Structures = Programs,
- Writing Solid Code,
- JavaScript – The Good Parts,
- Getting Real by 37 Signals,
- Foundations of Programming by Karl Seguin,
- Computer Graphics: Principles and Practice in C (2nd Edition),
- Thinking in Java by Bruce Eckel,
- The Elements of Computing Systems,
- Refactoring to Patterns by Joshua Kerievsky,
- Modern Operating Systems by Andrew S. Tanenbaum,
- The Annotated Turing,
- Things That Make Us Smart by Donald Norman,
- The Timeless Way of Building by Christopher Alexander,
- The Deadline: A Novel About Project Management by Tom DeMarco,
- The C++ Programming Language (3rd edition) by Stroustrup,
- Patterns of Enterprise Application Architecture,
- Computer Systems – A Programmer’s Perspective,
- Agile Principles, Patterns, and Practices in C# by Robert C. Martin,
- Growing Object-Oriented Software, Guided by Tests,
- Framework Design Guidelines by Brad Abrams,
- Object Thinking by Dr. David West,
- Advanced Programming in the UNIX Environment by W. Richard Stevens,
- Hackers and Painters: Big Ideas from the Computer Age,
- The Soul of a New Machine by Tracy Kidder,
- CLR via C# by Jeffrey Richter,
- The Timeless Way of Building by Christopher Alexander,
- Design Patterns in C# by Steve Metsker,
- Alice in Wonderland by Lewis Carol,
- Zen and the Art of Motorcycle Maintenance by Robert M. Pirsig,
- About Face – The Essentials of Interaction Design,
- Here Comes Everybody: The Power of Organizing Without Organizations by Clay Shirky,
- The Tao of Programming,
- Computational Beauty of Nature,
- Writing Solid Code by Steve Maguire,
- Philip and Alex’s Guide to Web Publishing,
- Object-Oriented Analysis and Design with Applications by Grady Booch,
- Effective Java by Joshua Bloch,
- Computability by N. J. Cutland,
- Masterminds of Programming,
- The Tao Te Ching,
- The Productive Programmer,
- The Art of Deception by Kevin Mitnick,
- The Career Programmer: Guerilla Tactics for an Imperfect World by Christopher Duncan,
- Paradigms of Artificial Intelligence Programming: Case studies in Common Lisp,
- Masters of Doom,
- Pragmatic Unit Testing in C# with NUnit by Andy Hunt and Dave Thomas with Matt Hargett,
- How To Solve It by George Polya,
- The Alchemist by Paulo Coelho,
- Smalltalk-80: The Language and its Implementation,
- Writing Secure Code (2nd Edition) by Michael Howard,
- Introduction to Functional Programming by Philip Wadler and Richard Bird,
- No Bugs! by David Thielen,
- Rework by Jason Freid and DHH,
- JUnit in Action
Source: Wikipedia
Summary: There’s no doubt that books have had a profound influence on society and the advancement of human knowledge. But which book is the most influential for programmers? Some might say it’s The Art of Computer Programming, or The Pragmatic Programmer. But I would argue that the most influential book for programmers is CODE: The Hidden Language of Computer Hardware and Software. In CODE, author Charles Petzold takes you on a journey from the basics of computer hardware to the intricate workings of software. Along the way, you learn how to write code in Assembly language, and gain an understanding of how computers work at a fundamental level. If you’re serious about becoming a programmer, then CODE should be at the top of your reading list!
- Levy Dragon Animation in 32 bytes (source/capture included)by /u/Hell__Mood (programming) on August 18, 2022 at 9:54 am
submitted by /u/Hell__Mood [link] [comments]
- How to load new scene in Unity without destroy your player object!by Ada Kaminkure (Programming on Medium) on August 18, 2022 at 9:44 am
มา! วันนี้เรามาพูดการเปลี่ยน Scene โดยที่ตัวละครของเราไม่โดนทำลายกัน ซึ่งเอาความจริง คือ มันมีหลายวิธีมากครับ แต่วันนี้ผมจะมาพูดถึง API…Continue reading on Medium »
- Հեռախոսի տեղն ու դերը երեխայի կյանքումby Haykuhi Tovmasyan (Programming on Medium) on August 18, 2022 at 9:38 am
Երկար ժամանակ է, ինչ փորձում եմ հետևել, դիտարկել ու հասկանալ ժամանակակից սարքերի՝ հեռախոսների տեղն ու դերը երեխաների կյանում: Իմ…Continue reading on Codzilla »
- Demystifying Dependence, Part 2: The Three Dimensions of Dependenceby /u/note89 (programming) on August 18, 2022 at 9:35 am
submitted by /u/note89 [link] [comments]
- How to measure DORA Metrics?by /u/zohar275 (programming) on August 18, 2022 at 9:29 am
submitted by /u/zohar275 [link] [comments]
- Day 27 of 50 Days of React: Radio and Checkbox Component of MUI in React.by Aman Khan (Programming on Medium) on August 18, 2022 at 9:13 am
Hi, Dev’s👋🏻, Let’s see How to use the Button and Button Group Component of MUI in React?Continue reading on Medium »
- The Bigger Pictureby AayushCodes (Coding on Medium) on August 18, 2022 at 9:08 am
When someone hears “Software Development”, they might think of one singular guy just yapping away at his keyboard all day long. But it…Continue reading on Medium »
- The Bigger Pictureby AayushCodes (Programming on Medium) on August 18, 2022 at 9:08 am
When someone hears “Software Development”, they might think of one singular guy just yapping away at his keyboard all day long. But it…Continue reading on Medium »
- Continuous Profiling is drawing a lot of attention for dev observabilityby /u/horovits (programming) on August 18, 2022 at 9:02 am
submitted by /u/horovits [link] [comments]
- Day 32 of 100 Days of Django: Styling Errors in Form Field in Django.by Aman Khan (Coding on Medium) on August 18, 2022 at 8:55 am
Hi, Dev’s👏, Let’s see How to style field errors in Django?Continue reading on Medium »
- Day 32 of 100 Days of Django: Styling Errors in Form Field in Django.by Aman Khan (Programming on Medium) on August 18, 2022 at 8:55 am
Hi, Dev’s👏, Let’s see How to style field errors in Django?Continue reading on Medium »
- Day 32 of 100 Days of Django: Styling Errors in Form Field in Django.by Aman Khan (Python on Medium) on August 18, 2022 at 8:55 am
Hi, Dev’s👏, Let’s see How to style field errors in Django?Continue reading on Medium »
- Listsby Jared Amlin (Programming on Medium) on August 18, 2022 at 8:45 am
Using a list in C# is kind of like using a list in real life. If you want to keep track of something, specifically the same kind of…Continue reading on Medium »
- Object-oriented or functional? Two ways to see the worldby /u/KatarzynaSygula (programming) on August 18, 2022 at 8:45 am
submitted by /u/KatarzynaSygula [link] [comments]
- How big is a JavaScript string?by ehmicky (Programming on Medium) on August 18, 2022 at 8:40 am
The many sizes of a JS stringContinue reading on Bits and Pieces »
- How big is a JavaScript string?by ehmicky (Coding on Medium) on August 18, 2022 at 8:40 am
The many sizes of a JS stringContinue reading on Bits and Pieces »
- เชื่อมต่อ API กับ Bitkub ด้วย Pythonby Investic (Python on Medium) on August 18, 2022 at 8:37 am
Bitkub Crptocurrency Exchange เบอร์ต้นๆของเมืองไทย มี API ให้เราสามารถเชื่อมต่อกับ Server ของ Exchange ผ่าน Python…Continue reading on investic »
- Through reverse engineering and code generation to microservicesby Viacheslav Tyutyunkov (Programming on Medium) on August 18, 2022 at 8:29 am
How our backend team prepared to work with the monolith, what difficulties we encountered in the process, and what we got as a resultContinue reading on Wrike TechClub »
- How To Make Peace With Time Limit In Software Developmentby CodeSparrow (Coding on Medium) on August 18, 2022 at 8:24 am
Setting a deadline is hard because there are some facts that we tend to ignore.Continue reading on Medium »
- How To Make Peace With Time Limit In Software Developmentby CodeSparrow (Programming on Medium) on August 18, 2022 at 8:24 am
Setting a deadline is hard because there are some facts that we tend to ignore.Continue reading on Medium »
- Summing time using the modulus operatorby Caick Andrade (Programming on Medium) on August 18, 2022 at 8:24 am
Hello, friends! This is my first post and I hope you like it. I confess it was hard to choose something to write about, a lot of topics…Continue reading on Medium »
- Regression with statsmodels in Pythonby Shawn (Python on Medium) on August 18, 2022 at 8:23 am
A tale of two variablesContinue reading on Medium »
- This Module In Python Organized My Mindby Mohammad Al Jadallah (Python on Medium) on August 18, 2022 at 8:20 am
No more talking, let us get started, but wait, what we were talking about? it was a simple joke, now you are in focus mode so I will start…Continue reading on Medium »
- สร้าง OPCUA Server & clientด้วย Python OPCUA แบบเบื้องต้น ตอนที่ 1by Nut Techosakondee (Python on Medium) on August 18, 2022 at 8:18 am
เนื้อหานี้เป็นการบันทึกการทดลอง สร้าง server & client OPCUA ด้วย python เพื่อใช้สำหรัการทดสอบโปรเจค หรือ ทดสอบการสื่อสารระหว่างอุปกรณ์…Continue reading on Medium »
- Tattoos & Javascript feat. Designby YLD (Coding on Medium) on August 18, 2022 at 8:17 am
A passion project called “Tat Me Up! founded by two talented brothers that allow users to create tattoos and apply them on 3D human models.Continue reading on YLD Blog »
- Managarm: August 2022 Updateby /u/Geertiebear (programming) on August 18, 2022 at 8:14 am
submitted by /u/Geertiebear [link] [comments]
- Check if a singly linked list is a palindrome in Pythonby /u/TheGamingGod_ (programming) on August 18, 2022 at 8:14 am
submitted by /u/TheGamingGod_ [link] [comments]
- A Heavy Lift: Bringing Kestrel + YARP to Azure App Servicesby /u/ben_a_adams (programming) on August 18, 2022 at 8:05 am
submitted by /u/ben_a_adams [link] [comments]
- [Python]First day learning Python by myselfby Yiqi (Coding on Medium) on August 18, 2022 at 7:54 am
First of all, I’m a college student from Taiwan, major in Cultural & Creative Industry, nothing related to Computer Science, Why I still…Continue reading on Medium »
- [Python]First day learning Python by myselfby Yiqi (Python on Medium) on August 18, 2022 at 7:54 am
First of all, I’m a college student from Taiwan, major in Cultural & Creative Industry, nothing related to Computer Science, Why I still…Continue reading on Medium »
- Redis Monitoring: Gaining Fresh Perspective on Your Key-Value Storeby /u/bogtaghey (programming) on August 18, 2022 at 7:29 am
submitted by /u/bogtaghey [link] [comments]
- Getting Started With Programming On A Budgetby RayRay (Coding on Medium) on August 18, 2022 at 7:25 am
Don’t Let Your Budget Decide If You Start ProgrammingContinue reading on Medium »
- Customer Segmentation in Pythonby Sumitdebnath (Python on Medium) on August 18, 2022 at 7:18 am
Segmentation Using K-Means clustering algorithm.Continue reading on Medium »
- Create JavaScript Calculator (Complete Code)by /u/tutorialstonight (programming) on August 18, 2022 at 7:13 am
submitted by /u/tutorialstonight [link] [comments]
- Java String intern() functionby /u/mike_jack (programming) on August 18, 2022 at 7:12 am
submitted by /u/mike_jack [link] [comments]
- Specialization In Python For Better Future.by Pratikbais (Python on Medium) on August 18, 2022 at 7:05 am
Python is a multi-program paradigm-supporting open-source programming language. It is a language with straightforward codes and quick…Continue reading on Medium »
- Pomodoro Timer GUI in Python using Tkinterby Suhanikashyap (Python on Medium) on August 18, 2022 at 6:52 am
Day 28 Project from the 100 Days of Code Python Course from Udemy taught by Dr. Angela YuContinue reading on Medium »
- Best Programming Languages to Learn in 2022 and 2023by Joshua Bryan (Coding on Medium) on August 18, 2022 at 6:38 am
Programming is one of the hottest skills in demand. We are surrounded by technology, and the domain is full of opportunities. Programmers…Continue reading on Medium »
- InfoQ: Creating a Secure Distributed Database Cluster Leveraging Your Existing Database Management Systemby /u/y2so (programming) on August 18, 2022 at 6:29 am
submitted by /u/y2so [link] [comments]
- Using Git & GitHub In Visual Code Studioby Daniel Vazquez (Coding on Medium) on August 18, 2022 at 6:27 am
Learning Git inside of visual code studio makes the clunkiness of using a command line Git Bash a thing of the past, I love that visual…Continue reading on Medium »
- Reduce Array Size to The Half | Leetcode | Mediumby JM69 (Coding on Medium) on August 18, 2022 at 5:52 am
You are given an integer array arr. You can choose a set of integers and remove all the occurrences of these integers in the array.Continue reading on Medium »
- Reduce Array Size to The Half | Leetcode | Mediumby JM69 (Python on Medium) on August 18, 2022 at 5:52 am
You are given an integer array arr. You can choose a set of integers and remove all the occurrences of these integers in the array.Continue reading on Medium »
- video of Brian Kernighan (history of Awk, grep, etc.)by /u/sixthsheik (programming) on August 18, 2022 at 4:50 am
submitted by /u/sixthsheik [link] [comments]
- EchoSVG: Pure Java SVG renderer supporting level 4 CSS selectorsby /u/solarvictoria (programming) on August 17, 2022 at 11:50 pm
submitted by /u/solarvictoria [link] [comments]
- Accounting for Developersby /u/saarons-mt (programming) on August 17, 2022 at 10:54 pm
submitted by /u/saarons-mt [link] [comments]
- Agile Projects Have Become Waterfall Projects With Sprintsby /u/DynamicsHosk (programming) on August 17, 2022 at 9:33 pm
submitted by /u/DynamicsHosk [link] [comments]
- Demystifying Dependence, Part 1: The Nine Dependency Puzzlesby /u/note89 (programming) on August 17, 2022 at 8:06 pm
submitted by /u/note89 [link] [comments]
- Google is killing off Google Cloud IoT Core at five-years-oldby /u/mrharold_finch (programming) on August 17, 2022 at 5:44 pm
submitted by /u/mrharold_finch [link] [comments]
- For the last three years my friend and I have been making a top-down, 3D metroidvania with Unity, programmed entirely by me! AI, gameplay, backend, all from scratch. Proof you can do anything with enough coffee 😛by /u/JadeEmberArtist (programming) on August 17, 2022 at 4:47 pm
submitted by /u/JadeEmberArtist [link] [comments]
- The End-to-End Principle in System Designby /u/sublimefunk (programming) on August 17, 2022 at 4:21 pm
submitted by /u/sublimefunk [link] [comments]
- Why don't bootcamps teach the command line?by /u/david_nix (programming) on August 17, 2022 at 2:43 pm
submitted by /u/david_nix [link] [comments]
- Rise of the Anti-Joinby /u/craigkerstiens (programming) on August 17, 2022 at 2:34 pm
submitted by /u/craigkerstiens [link] [comments]
- Study: Developers spend over 4 days on average waiting for their pull requests to be reviewed by other devs.by /u/Jam-packedBasin (programming) on August 17, 2022 at 11:53 am
submitted by /u/Jam-packedBasin [link] [comments]
- "Microsoft and Canonical announce native .NET availability in Ubuntu 22.04 hosts and containers" – yeah, very nice, but there's still no cross-platform way to build graphical .NET apps, right?by /u/lproven (programming) on August 17, 2022 at 11:03 am
submitted by /u/lproven [link] [comments]
- Janet Jackson had the power to crash laptop computersby /u/mattdw (programming) on August 17, 2022 at 5:09 am
submitted by /u/mattdw [link] [comments]