100 Best Technical Books of All Time

We've researched and ranked the best technical books in the world, based on recommendations from world experts, sales data, and millions of reader ratings. Learn more

Featuring recommendations from Mark Cuban, Jeff Bezos, Elon Musk, and 127 other experts.
1

The Pragmatic Programmer

From Journeyman to Master

-- Ward Cunningham Straight from the programming trenches, The Pragmatic Programmer cuts through the increasing specialization and technicalities of modern software development to examine the core process--taking a requirement and producing working, maintainable code that delights its users. It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse. Read this book, and youll learn how to *Fight software rot; *Avoid the trap of duplicating knowledge; *Write flexible, dynamic, and adaptable... more
Recommended by Jeff Atwood, Hadley Wickham, and 3 others.

Hadley WickhamThis book is about the craft of software development, and thinking about how to produce good code. (Source)

See more recommendations for this book...

2
Even bad code can function. But if code isn t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn t have to be that way.
Noted software expert Robert C. Martin presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship . Martin has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code on the fly into a book that will instill within you the values of a software craftsman and...
more
Recommended by Ana Bell, and 1 others.

Ana BellThis book is going to show you how to write code that is readable by yourself in the future, or by somebody else. You can sit on the couch and read it; you don’t need to code. You can actually enjoy it if you don’t know how to program at all. (Source)

See more recommendations for this book...

3

Code Complete

Widely considered one of the best practical guides to programming, Steve McConnell's original CODE COMPLETE has been helping developers write better software for more than a decade. Now this classic book has been fully updated and revised with leading-edge practices--and hundreds of new code samples--illustrating the art and science of software construction. Capturing the body of knowledge available from research, academia, and everyday commercial practice, McConnell synthesizes the most effective techniques and must-know principles into clear, pragmatic guidance. No matter what your... more

Santiago BasultoIf my career path is hackers turned business people, I’d say: Start with the basics and fundamentals: SICP: Structure and Interpretation of Computer Programs Code Complete 2 (Source)

Ana BellCode Complete is for people working in industry, writing software for companies. It has little checklists at key points in the book; if you are in industry, you can make sure that your code is readable and debugged by going through these checklists and making sure you’re touching upon all aspects. (Source)

See more recommendations for this book...

4
Few books on software project management have been as influential and timeless as The Mythical Man-Month. With a blend of software engineering facts and thought-provoking opinions, Fred Brooks offers insight for anyone managing complex projects. These essays draw from his experience as project manager for the IBM System/360 computer family and then for OS/360, its massive software system. Now, 20 years after the initial publication of his book, Brooks has revisited his original ideas and added new thoughts and advice, both for readers already familiar with his work and for readers discovering... more
Recommended by Jeff Bezos, Andrew Chen, Alan Kay, and 4 others.

Jeff Bezos[From "The Everything Store", written by Brad Stone] “An influential computer scientist makes the counterintuitive argument that small groups of engineers are more effective than larger ones at handling complex software projects. The book lays out the theory behind Amazon’s two pizza teams,” Stone writes. (Source)

Alan KayAn early look and experience with timeless truths (and gotchas) from systems building with teams (Source)

See more recommendations for this book...

5

Design Patterns

Elements of Reusable Object-Oriented Software

Capturing a wealth of experience about the design of object-oriented software, four top-notch designers present a catalog of simple and succinct solutions to commonly occurring design problems. Previously undocumented, these 23 patterns allow designers to create more flexible, elegant, and ultimately reusable designs without having to rediscover the design solutions themselves.

The authors begin by describing what patterns are and how they can help you design object-oriented software. They then go on to systematically name, explain, evaluate, and catalog recurring designs in...
more

See more recommendations for this book...

6

Structure and Interpretation of Computer Programs

Structure and Interpretation of Computer Programs has had a dramatic impact on computer science curricula over the past decade. This long-awaited revision contains changes throughout the text. There are new implementations of most of the major programming systems in the book, including the interpreters and compilers, and the authors have incorporated many small changes that reflect their experience teaching the course at MIT since the first edition was published. A new theme has been introduced that emphasizes the central role played by different approaches to dealing with time in... more

Max LevchinEasier to read [than "The Art of Computer Programming"] end-to-end quickly. (Source)

Hadley WickhamThe most valuable thing this book gives you is confidence and knowledge to go and create your own programming language. (Source)

John Maeda@jesseddy The best book in classical and “hands-on example” terms is Structure and Interpretation of Computer Programs — but it requires maybe a year to get thru and for me, 10 years more to marinate over. *A* book is the one I am finishing now to come out Nov 2019. https://t.co/OODjQXgf1I (Source)

See more recommendations for this book...

7
Since Don’t Make Me Think was first published in 2000, over 400,000 Web designers and developers have relied on Steve Krug’s guide to help them understand the principles of intuitive navigation and information design.

In this 3rd edition, Steve returns with fresh perspective to reexamine the principles that made Don’t Make Me Think a classic-–with updated examples and a new chapter on mobile usability. And it’s still short, profusely illustrated…and best of all–fun to read.

If you’ve read it before, you’ll rediscover what made Don’t Make Me Think so essential to Web...
more

Chris GowardHere are some of the books that have been very impactful for me, or taught me a new way of thinking: [...] Don't Make Me Think. (Source)

Nicolae AndronicI’m a technical guy. I studied the IT field and did software development for a long time until I discovered the business world. So the path for me is to slowly adapt from the clear, technical world, to the fuzzy, way more complex, business world. All the books that I recommend help this transition. “Don’t Make Me Think” - Steve Krug: for seeing software with the eyes of the user. (Source)

Nick GanjuAbout usability and making software and user interfaces that are friendly to people. (Source)

See more recommendations for this book...

8

Head First Design Patterns

You're not alone.

At any given moment, somewhere in the world someone struggles with the same software design problems you have. You know you don't want to reinvent the wheel (or worse, a flat tire), so you look to Design Patterns--the lessons learned by those who've faced the same problems. With Design Patterns, you get to take advantage of the best practices and experience of others, so that you can spend your time on...something else. Something more challenging. Something more complex. Something more fun.

You want to learn about the patterns that matter--why to...
more

See more recommendations for this book...

9
Fully Revised and Updated-Includes New Refactorings and Code Examples "Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
--M. Fowler (1999) For more than twenty years, experienced programmers worldwide have relied on Martin Fowler's Refactoring to improve the design of existing code and to enhance software maintainability, as well as to make existing code easier to understand.
This eagerly awaited new edition has been fully updated to reflect crucial changes in the programming landscape. ...
more
Recommended by David Heinemeier Hansson, and 1 others.

David Heinemeier HanssonThis is next on my list of technical books to read! Refactoring is one of two programming books that I’ve read multiple times (the other is Smalltalk Best Practice Patterns), and I’m due for another reading. What perfect time then to dive into Martin Fowler’s long anticipated 2nd edition, now using JavaScript rather than Java for the code examples. Like the stoic books, I read Refactoring and... (Source)

See more recommendations for this book...

10
Bill is an IT manager at Parts Unlimited. It's Tuesday morning and on his drive into the office, Bill gets a call from the CEO.

The company's new IT initiative, code named Phoenix Project, is critical to the future of Parts Unlimited, but the project is massively over budget and very late. The CEO wants Bill to report directly to him and fix the mess in ninety days or else Bill's entire department will be outsourced.

With the help of a prospective board member and his mysterious philosophy of The Three Ways, Bill starts to see that IT work has more in common with...
more
Recommended by Jeffrey Snover, Louis Nyffenegger, and 2 others.

Jeffrey SnoverGreat thread. I know of a number of devops people that haven't read this book. Ya'll should fix that. https://t.co/Yri4JJ0jBZ (Source)

Louis NyffeneggerI don't think I have a specific book that I can call my favourite. Some books have had a big impact on my view of how to build a product/company ("Rework"), some were very enjoyable to read ("The Phoenix Project"), some helped me improve the way I think ("The Pleasure Of Finding Things Out") and some the way I live ("Essentialism") or work ("Deep Work"). (Source)

See more recommendations for this book...

Don't have time to read the top Technical books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
11
I am not a recruiter. I am a software engineer. And as such, I know what it's like to be asked to whip up brilliant algorithms on the spot and then write flawless code on a whiteboard. I've been through this as a candidate and as an interviewer.

Cracking the Coding Interview, 6th Edition is here to help you through this process, teaching you what you need to know and enabling you to perform at your very best. I've coached and interviewed hundreds of software engineers. The result is this book.

Learn how to uncover the hints and hidden details in a question,...
more

See more recommendations for this book...

12

JavaScript

The Good Parts

Most programming languages contain good and bad parts, but JavaScript has more than its share of the bad, having been developed and released in a hurry before it could be refined. This authoritative book scrapes away these bad features to reveal a subset of JavaScript that's more reliable, readable, and maintainable than the language as a whole--a subset you can use to create truly extensible and efficient code.

Considered the JavaScript expert by many people in the development community, author Douglas Crockford identifies the abundance of good ideas that make JavaScript...
more
Recommended by Auston Bunsen, and 1 others.

Auston BunsenI’m actually a self-taught programmer, so these books have really helped me with practical skills that I could put to use & yield results. The return on investment for these kinds of books is off the charts for me! (Source)

See more recommendations for this book...

13

The C Programming Language

This book is meant to help the reader learn how to program in C. It is the definitive reference guide, now in a second edition. Although the first edition was written in 1978, it continues to be a worldwide best-seller. This second edition brings the classic original up to date to include the ANSI standard.

From the Preface:
We have tried to retain the brevity of the first edition. C is not a big language, and it is not well served by a big book. We have improved the exposition of critical features, such as pointers, that are central to C programming. We have refined the...
more

See more recommendations for this book...

14
Many forces affect software today: larger datasets, geographical disparities, complex company structures, and the growing need to be fast and nimble in the face of change.

Proven approaches such as service-oriented and event-driven architectures are joined by newer techniques such as microservices, reactive architectures, DevOps, and stream processing. Many of these patterns are successful by themselves, but as this practical ebook demonstrates, they provide a more holistic and compelling approach when applied together.

Author Ben Stopford explains how service-based...
more

See more recommendations for this book...

15

Effective Java

Since this Jolt-award winning classic was last updated in 2008 (shortly after Java 6 was released), Java has changed dramatically. The principal enhancement in Java 8 was the addition of functional programming constructs to Java's object-oriented roots. Java 7, 8, and 9 also introduced language features, such as the try-with-resources statement, the diamond operator for generic types, default and static methods in interfaces, the @SafeVarargs annotation, and modules. New library features include pervasive use of functional interfaces and streams, the java.time package for manipulating dates... more

See more recommendations for this book...

16

Introduction To Algorithms

Der "Cormen" bietet eine umfassende und vielseitige Einfuhrung in das moderne Studium von Algorithmen. Es stellt viele Algorithmen Schritt fur Schritt vor, behandelt sie detailliert und macht deren Entwurf und deren Analyse allen Leserschichten zuganglich. Sorgfaltige Erklarungen zur notwendigen Mathematik helfen, die Analyse der Algorithmen zu verstehen. Den Autoren ist es dabei gegluckt, Erklarungen elementar zu halten, ohne auf Tiefe oder mathematische Exaktheit zu verzichten. Jedes der weitgehend eigenstandig gestalteten Kapitel stellt einen Algorithmus, eine Entwurfstechnik, ein... more

See more recommendations for this book...

17
"Eric Evans has written a fantastic book on how you can make the design of your software match your mental model of the problem domain you are addressing. "His book is very compatible with XP. It is not about drawing pictures of a domain; it is about how you think of it, the language you use to talk about it, and how you organize your software to reflect your improving understanding of it. Eric thinks that learning about your problem domain is as likely to happen at the end of your project as at the beginning, and so refactoring is a big part of his technique. "The book is a fun read. Eric... more
Recommended by David Heinemeier Hansson, and 1 others.

See more recommendations for this book...

18
Programmers who endure and succeed amidst swirling uncertainty and nonstop pressure share a common attribute: They care deeply about the practice of creating software. They treat it as a craft. They are professionals. In The Clean Coder: A Code of Conduct for Professional Programmers, legendary software expert Robert C. Martin introduces the disciplines, techniques, tools, and practices of true software craftsmanship. This book is packed with practical advice-about everything from estimating and coding to refactoring and testing. It covers much more than technique: It is... more

See more recommendations for this book...

19
Even the smartest among us can feel inept as we fail to figure out which light switch or oven burner to turn on, or whether to push, pull, or slide a door. The fault, argues this ingenious—even liberating—book, lies not in ourselves, but in product design that ignores the needs of users and the principles of cognitive psychology. The problems range from ambiguous and hidden controls to arbitrary relationships between controls and functions, coupled with a lack of feedback or other assistance and unreasonable demands on memorization. The Design of Everyday Things shows that good, usable... more

Marius Ciuchete Pauneval(ez_write_tag([[250,250],'theceolibrary_com-large-mobile-banner-2','ezslot_5',164,'0','1'])); Question: Was there a moment, specifically, when something you read in a book helped you? Answer: Yes there was. In fact, I can remember two separate sentences from two different books: The first one comes from “The Design of Everyday Things” by Don Norman. It says: “great design will help... (Source)

Grey BakerI mainly read to decompress and change my state of mind, so it’s hard to point to an insight I read that helped me. Reading fiction has pulled me out of a bad mood more times than I can count, though, and always reenergises me to attack problems that had stumped me again. That said, I read and loved Norman Norman’s “The Design of Everyday Things”, and it’s helped me think through design problems... (Source)

Kaci LambeThese three books are about how people actually use design in their lives. They helped me understand this very basic idea: There are no dumb users, only bad designers. Take the time to create based on how your design will be interacted with. Test it. Iterate. That's how you become a good designer. (Source)

See more recommendations for this book...

20
What do flashlights, the British invasion, black cats, and seesaws have to do with computers? In CODE, they show us the ingenious ways we manipulate language and invent new means of communicating with each other. And through CODE, we see how this ingenuity and our very human compulsion to communicate have driven the technological innovations of the past two centuries.

Using everyday objects and familiar language systems such as Braille and Morse code, author Charles Petzold weaves an illuminating narrative for anyone who’s ever wondered about the secret inner life of...
more
Recommended by Ana Bell, and 1 others.

Ana BellIt gets you to use your imagination to virtually build a computer. It’s easy to read, you can lie down on the couch and enjoy it—it’s not so much of a textbook. It demystifies the magic of a computer and what it is. (Source)

See more recommendations for this book...

Don't have time to read the top Technical books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
21

Working Effectively with Legacy Code

Get more out of your legacy systems, more performance, functionality, reliability, and manageability.Is your code easy to change? Can you get nearly instantaneous feedback when you do change it? Do you understand it? If the answer to any of these questions is no, you have legacy code, and it is draining time and money away from your development efforts.

In this book, Michael Feathers offers start-to-finish strategies for working more effectively with large, untested legacy code bases. This book draws on material Michael created for his renowned Object Mentor seminars, techniques...
more

See more recommendations for this book...

22

Algorithm Design Manual

Recommended by Hadley Wickham, and 1 others.

Hadley WickhamThis book is an illustration of the power of names in the Google era. (Source)

See more recommendations for this book...

23
The practice of enterprise application development has benefited from the emergence of many new enabling technologies. Multi-tiered object-oriented platforms, such as Java and .NET, have become commonplace. These new tools and technologies are capable of building powerful applications, but they are not easily implemented. Common failures in enterprise applications often occur because their developers do not understand the architectural lessons that experienced object developers have learned. Patterns of Enterprise Application Architecture is written in direct response to the... more
Recommended by David Heinemeier Hansson, and 1 others.

See more recommendations for this book...

24
Distributed systems have become more fine-grained in the past 10 years, shifting from code-heavy monolithic applications to smaller, self-contained microservices. But developing these systems brings its own set of headaches. With lots of examples and practical advice, this book takes a holistic view of the topics that system architects and administrators must consider when building, managing, and evolving microservice architectures.

Microservice technologies are moving quickly. Author Sam Newman provides you with a firm grounding in the concepts while diving into current solutions...
more

See more recommendations for this book...

25

The Goal

A Process of Ongoing Improvement

Written in a fast-paced thriller style, 'The Goal' contains a serious message for all managers in industry and explains the ideas which underline the Theory of Constraints developed by the author. less

Jeff BezosEncourages companies to identify the biggest constraints in their operations and then structure their organizations to get the most out of those constraints. (Source)

Kevin SystromAbout basically manufacturing and supply chain management. It sounds really boring, but I promise you it’s really good. (Source)

Chris GowardHere are some of the books that have been very impactful for me, or taught me a new way of thinking: [...] The Goal. (Source)

See more recommendations for this book...

26
Winner of the 2011 Jolt Excellence Award!

Getting software released to users is often a painful, risky, and time-consuming process. This groundbreaking new book sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers, and operations, delivery teams can get changes released in a matter of hours-- sometimes even minutes-no matter what the size of a project or the...
more

See more recommendations for this book...

28
The Barnes & Noble Review
Since early in the 90s, working C++ programmers have relied on Scott Meyers s Effective C++ to dramatically improve their skills. But the state-of-the-art has moved forward dramatically since Meyers last updated this book in 1997. (For instance, there s now STL. Design patterns. Even new functionality being added through TR1 and Boost.) So Meyers has done a top-to-bottom rewrite, identifying the 55 most valuable techniques you need now to be exceptionally effective with C++.


Over half of this edition s content is new....

more

See more recommendations for this book...

29
Whether it's in Java, .NET, or Ruby on Rails, getting your application ready to ship is only half the battle. Did you design your system to survivef a sudden rush of visitors from Digg or Slashdot? Or an influx of real world customers from 100 different countries? Are you ready for a world filled with flakey networks, tangled databases, and impatient users?

If you're a developer and don't want to be on call for 3AM for the rest of your life, this book will help.

In Release It!, Michael T. Nygard shows you how to design and architect your...
more

See more recommendations for this book...

30
Peter Seibel interviews 16 of the most interesting computer programmers alive today in Coders at Work, offering a brand-new companion volume to Apress’s highly acclaimed best-seller Founders at Work by Jessica Livingston. As the words "at work" suggest, Peter Seibel focuses on how his interviewees tackle the day–to–day work of programming, while revealing much more, like how they became great programmers, how they recognize programming talent in others, and what kinds of problems they find most interesting.

Hundreds of people have suggested names of programmers to interview on the...
more
Recommended by Santiago Basulto, Vicki Boykis, and 2 others.

Santiago BasultoFounders at Work and Coders at Work are really good ones too. They’re filled with interesting and inspiring stories. (Source)

Vicki BoykisIt’s about how those people got into programming and how they think about it. It’s a very conversational book that really helps you to learn the culture of this industry you’re coming into, and some of its terminology. (Source)

See more recommendations for this book...

Don't have time to read the top Technical books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
31

Clean Architecture

Building upon the success of best-sellers The Clean Coder and Clean Code, legendary software craftsman Robert C. "Uncle Bob" Martin shows how to bring greater professionalism and discipline to application architecture and design.
As with his other books, Martin's Clean Architecture doesn't merely present multiple choices and options, and say "use your best judgment": it tells you what choices to make, and why those choices are critical to your success. Martin offers direct, no-nonsense answers to key architecture and design questions like:

What are the best high level...
more

See more recommendations for this book...

32

Programming Pearls

The first edition of Programming Pearls was one of the most influential books I read early in my career, and many of the insights I first encountered in that book stayed with me long after I read it. Jon has done a wonderful job of updating the material. I am very impressed at how fresh the new examples seem. - Steve McConnell When programmers list their favorite books, Jon Bentley's collection of programming pearls is commonly included among the classics. Just as natural pearls grow from grains of sand that irritate oysters, programming pearls have grown from real problems that have... more
Recommended by Jeff Atwood, James Stanley, and 2 others.

James StanleyI very much enjoyed reading "Programming Pearls" by John Bentley. Most of the software we write is trying to solve fairly large and ill-defined problems in a way that minimises development cost, but Programming Pearls presents a lot of small, well-defined problems, and talks through their solutions in ways that minimise machine resource usage. There are lots of good "a-ha" moments when reading... (Source)

See more recommendations for this book...

33
The classic book on statistical graphics, charts, tables. Theory and practice in the design of data graphics, 250 illustrations of the best (and a few of the worst) statistical graphics, with detailed analysis of how to display data for precise, effective, quick analysis. Design of the high-resolution displays, small multiples. Editing and improving graphics. The data-ink ratio. Time-series, relational graphics, data maps, multivariate designs. Detection of graphical deception: design variation vs. data variation. Sources of deception. Aesthetics and data graphical displays.
This is the...
more
Recommended by Bret Victor, Michael Okuda, and 2 others.

Michael OkudaEdward Tufte's classic book, The Visual Display of Quantitative Information is a fascinating, surprisingly readable treatise for anyone interested in infographics. When I hired artists for the Star Trek graphics dept, I sometimes asked them to read it.https://t.co/cK4GQqBDxp (Source)

See more recommendations for this book...

34

Gödel, Escher, Bach

An Eternal Golden Braid

Douglas Hofstadter's book is concerned directly with the nature of “maps” or links between formal systems. However, according to Hofstadter, the formal system that underlies all mental activity transcends the system that supports it. If life can grow out of the formal chemical substrate of the cell, if consciousness can emerge out of a formal system of firing neurons, then so too will computers attain human intelligence. Gödel, Escher, Bach is a wonderful exploration of fascinating ideas at the heart of cognitive science: meaning, reduction, recursion, and much more. less

Steve Jurvetson[Steve Jurvetson recommended this book on the podcast "The Tim Ferriss Show".] (Source)

Seth GodinIn the last week, I discovered that at least two of my smart friends hadn't read Godel, Escher, Bach. They have now. You should too. (Source)

Kevin KellyOver the years, I kept finding myself returning to its insights, and each time I would arrive at them at a deeper level. (Source)

See more recommendations for this book...

35
Follows two TDD projects from start to finish, illustrating techniques programmers can use to increase the quality of their work. The examples are followed by references to the featured TDD patterns and refactorings. This book emphasises on agile methods and fast development strategies. less

See more recommendations for this book...

36

Java Concurrency in Practice

"I was fortunate indeed to have worked with a fantastic team on the design and implementation of the concurrency features added to the Java platform in Java 5.0 and Java 6. Now this same team provides the best explanation yet of these new features, and of concurrency in general. Concurrency is no longer a subject for advanced users only. Every Java developer should read this book."
--Martin Buchholz
JDK Concurrency Czar, Sun Microsystems

"For the past 30 years, computer performance has been driven by Moore's Law; from now on, it will be driven by Amdahl's Law. Writing...
more

See more recommendations for this book...

37

Pro Git

Git is the version control system developed by Linus Torvalds for Linux kernel development. It took the open source world by storm since its inception in 2005, and is used by small development shops and giants like Google, Red Hat, and IBM, and of course many open source projects.

A book by Git experts to turn you into a Git expert. Introduces the world of distributed version control Shows how to build a Git development workflow.
less

See more recommendations for this book...

38

An Introduction to Statistical Learning

With Applications in R

An Introduction to Statistical Learning provides an accessible overview of the field of statistical learning, an essential toolset for making sense of the vast and complex data sets that have emerged in fields ranging from biology to finance to marketing to astrophysics in the past twenty years. This book presents some of the most important modeling and prediction techniques, along with relevant applications. Topics include linear regression, classification, resampling methods, shrinkage approaches, tree- based methods, support vector machines, clustering, and more. Color graphics and... more
Recommended by Roger D. Peng, and 1 others.

Roger D. PengThis book is written by a powerhouse of authors in the machine learning community, true authorities in the field. But beyond that, they’re also great writers. (Source)

See more recommendations for this book...

39

Artificial Intelligence

A Modern Approach

For one or two-semester, undergraduate or graduate-level courses in Artificial Intelligence. The long-anticipated revision of this best-selling text offers the most comprehensive, up-to-date introduction to the theory and practice of artificial intelligence. *NEW-Nontechnical learning material-Accompanies each part of the book. *NEW-The Internet as a sample application for intelligent systems-Added in several places including logical agents, planning, and natural language. *NEW-Increased coverage of material - Includes expanded coverage of: default reasoning and truth maintenance systems,... more

See more recommendations for this book...

40

The C++ Programming Language

The new C++11 standard allows programmers to express ideas more clearly, simply, and directly, and to write faster, more efficient code. Bjarne Stroustrup, the designer and original implementer of C++, has reorganized, extended, and completely rewritten his definitive reference and tutorial for programmers who want to use C++ most effectively. "The C++ Programming Language, Fourth Edition, " delivers meticulous, richly explained, and integrated coverage of the entire language--its facilities, abstraction mechanisms, standard libraries, and key design techniques. Throughout, Stroustrup... more

See more recommendations for this book...

Don't have time to read the top Technical books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
41
Increase profitability, elevate work culture, and exceed productivity goals through DevOps practices.

More than ever, the effective management of technology is critical for business competitiveness. For decades, technology leaders have struggled to balance agility, reliability, and security. The consequences of failure have never been greater whether it's the healthcare.gov debacle, cardholder data breaches, or missing the boat with Big Data in the cloud.

And yet, high performers using DevOps principles, such as Google, Amazon, Facebook, Etsy, and Netflix, are routinely...
more

See more recommendations for this book...

42
Completely revised and updated, this best-selling introduction to programming in JavaScript focuses on writing real applications.

Eloquent JavaScript dives into the JavaScript language to show programmers how to write elegant, effective JavaScript code. Like any good programming book, Eloquent JavaScript begins with fundamentals--variables, control structures, functions, and data structures--then moves on to complex topics like object-oriented programming and regular expressions. This third edition introduces new features covering the 2017 version of...
more

See more recommendations for this book...

43

Site Reliability Engineering

How Google Runs Production Systems

The overwhelming majority of a software system's lifespan is spent in use, not in design or implementation. So, why does conventional wisdom insist that software engineers focus primarily on the design and development of large-scale computing systems?

In this collection of essays and articles, key members of Google's Site Reliability Team explain how and why their commitment to the entire lifecycle has enabled the company to successfully build, deploy, monitor, and maintain some of the largest software systems in the world. You'll learn the principles and practices that enable...
more

See more recommendations for this book...

44
Foreword by Kent Beck "The authors of this book have led a revolution in the craft of programming by controlling the environment in which software grows." --Ward Cunningham "At last, a book suffused with code that exposes the deep symbiosis between TDD and OOD. This one's a keeper." --Robert C. Martin "If you want to be an expert in the state of the art in TDD, you need to understand the ideas in this book."--Michael Feathers Test-Driven Development (TDD) is now an established technique for delivering better software faster. TDD is based on a simple... more

See more recommendations for this book...

45

Compilers

Principles, Techniques, and Tools

This introduction to compilers is the direct descendant of the well-known book by Aho and Ullman, Principles of Compiler Design. The authors present updated coverage of compilers based on research and techniques that have been developed in the field over the past few years. The book provides a thorough introduction to compiler design and covers topics such as context-free grammars, fine state machines, and syntax-directed translation. less

See more recommendations for this book...

46

Deep Learning

An introduction to a broad range of topics in deep learning, covering mathematical and conceptual background, deep learning techniques used in industry, and research perspectives.

Deep learning is a form of machine learning that enables computers to learn from experience and understand the world in terms of a hierarchy of concepts. Because the computer gathers knowledge from experience, there is no need for a human computer operator to formally specify all the knowledge that the computer needs. The hierarchy of concepts allows the computer to learn complicated concepts by...
more

Elon MuskWritten by three experts in the field, Deep Learning is the only comprehensive book on the subject. (Source)

Nassim Nicholas TalebVery clear exposition, does the math without getting lost in the details. Although many of the concepts of the introductory first 100 pages can be found elsewhere, they are presented with remarkable cut-to-the-chase clarity. (Source)

Satya NadellaElon Musk and Facebook AI chief Yann LeCun have praised this textbook on one of software’s most promising frontiers. After its publication, Microsoft signed up coauthor Bengio, a pioneer in machine learning, as an adviser (Source)

See more recommendations for this book...

47

Rework

Most business books give you the same old advice: Write a business plan, study the competition, seek investors, yadda yadda. If you're looking for a book like that, put this one back on the shelf.

Rework shows you a better, faster, easier way to succeed in business. Read it and you'll know why plans are actually harmful, why you don't need outside investors, and why you're better off ignoring the competition. The truth is, you need less than you think. You don't need to be a workaholic. You don't need to staff up. You don't need to waste time on paperwork or meetings. You...
more
Recommended by Jeff Bezos, Mark Cuban, Tony Hsieh, and 33 others.

Jeff BezosUnperturbed by conventional wisdom, [the authors] start fresh and rewrite the rules of business. Their approach turns out to be as successful as it is counter-intuitive. (Source)

Mark CubanIf given a choice between investing in someone who has read Rework or has an MBA, I'm investing in Rework every time. This is a must read for every entrepreneur. (Source)

Tony HsiehThe wisdom in these pages is edgy yet simple, straightforward, and proven. Read this book multiple times to help give you the courage you need to get out there and make something great. (Source)

See more recommendations for this book...

48

JavaScript

The Definitive Guide

Since 1996, JavaScript: The Definitive Guide has been the bible for JavaScript programmers—a programmer's guide and comprehensive reference to the core language and to the client-side JavaScript APIs defined by web browsers. The 6th edition covers HTML5 and ECMAScript 5, with new chapters on jQuery and server side JavaScript. It's recommended for experienced programmers who want to learn the programming language of the Web, and for current JavaScript programmers who want to master it. less

See more recommendations for this book...

49

Programming Perl

Unmatched power for text processing and scripting

Adopted as the undisputed Perl bible soon after the first edition appeared in 1991, Programming Perl is still the go-to guide for this highly practical language. Perl began life as a super-fueled text processing utility, but quickly evolved into a general purpose programming language that’s helped hundreds of thousands of programmers, system administrators, and enthusiasts, like you, get your job done.

In this much-anticipated update to "the Camel," three renowned Perl authors cover the language up to its current version, Perl 5.14, with a preview of features in the upcoming...
more
Recommended by Garry Tan, James Hong, and 2 others.

James HongAll legit OG web people will remember the camel book well... except @pud who somehow did amazing things all using .cfm 😉 https://t.co/n4pOpkOY6M (Source)

See more recommendations for this book...

50

Mastering Regular Expressions

Regular expressions are an extremely powerful tool for manipulating text and data. They are now standard features in a wide range of languages and popular tools, including Perl, Python, Ruby, Java, VB.NET and C# (and any language using the .NET Framework), PHP, and MySQL.

If you don't use regular expressions yet, you will discover in this book a whole new world of mastery over your data. If you already use them, you'll appreciate this book's unprecedented detail and breadth of coverage. If you think you know all you need to know about regularexpressions, this book is a stunning...
more

See more recommendations for this book...

Don't have time to read the top Technical books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
51
Success in today's IT environment requires you to view your career as a business endeavor. In this book, you'll learn how to become an entrepreneur, driving your career in the direction of your choosing. You'll learn how to build your software development career step by step, following the same path that you would follow if you were building, marketing, and selling a product. After all, your skills themselves are a product. The choices you make about which technologies to focus on and which business domains to master have at least as much impact on your success as your technical knowledge... more
Recommended by Timur Badretdinov, and 1 others.

Timur BadretdinovAs for programming, I’d recommend The Passionate Programmer. (Source)

See more recommendations for this book...

52
"In this second edition of Extreme Programming Explained, Kent Beck organizes and presents five years' worth of experiences, growth, and change revolving around XP. If you are seriously interested in understanding how you and your team can start down the path of improvement with XP, you must read this book."



--Francesco Cirillo, Chief Executive Officer, XPLabs S.R.L. "The first edition of this book told us what XP was--it changed the way many of us think about software development. This second edition takes it farther and gives us a lot more of the 'why'...
more
Recommended by Steve Blank, and 1 others.

See more recommendations for this book...

53
Enterprise Integration Patterns provides an invaluable catalog of sixty-five patterns, with real-world solutions that demonstrate the formidable of messaging and help you to design effective messaging solutions for your enterprise. The authors also include examples covering a variety of different integration technologies, such as JMS, MSMQ, TIBCO ActiveEnterprise, Microsoft BizTalk, SOAP, and XSL. A case study describing a bond trading system illustrates the patterns in practice, and the book offers a look at emerging standards, as well as insights into what the future of enterprise... more

See more recommendations for this book...

54
The first revision of this third volume is the most comprehensivesurvey of classical computer techniques for sorting and searching. It extends thetreatment of data structures in Volume 1 to consider both large and smalldatabases and internal and external memories. The book contains a selection ofcarefully checked computer methods, with a quantitative analysis of theirefficiency. Outstanding features of the second edition include a revised sectionon optimum sorting and new discussions of the theory of permutations and ofuniversal hashing. less

See more recommendations for this book...

55
Software development happens in your head. Not in an editor, IDE, or design tool. You're well educated on how to work with software and hardware, but what about wetware--our own brains? Learning new skills and new technology is critical to your career, and it's all in your head.

In this book by Andy Hunt, you'll learn how our brains are wired, and how to take advantage of your brain's architecture. You'll learn new tricks and tips to learn more, faster, and retain more of what you learn.

You need a pragmatic approach to thinking and learning. You need to...
more

See more recommendations for this book...

56

Algorithms to Live By

The Computer Science of Human Decisions

A fascinating exploration of how insights from computer algorithms can be applied to our everyday lives, helping to solve common decision-making problems and illuminate the workings of the human mind

All our lives are constrained by limited space and time, limits that give rise to a particular set of problems. What should we do, or leave undone, in a day or a lifetime? How much messiness should we accept? What balance of new activities and familiar favorites is the most fulfilling? These may seem like uniquely human quandaries, but they are not: computers, too, face the same...
more

Doug McMillonHere are some of my favorite reads from 2017. Lots of friends and colleagues send me book suggestions and it's impossible to squeeze them all in. I continue to be super curious about how digital and tech are enabling people to transform our lives but I try to read a good mix of books that apply to a variety of areas and stretch my thinking more broadly. (Source)

Sriram Krishnan@rabois @nealkhosla Yes! Love that book (Source)

Chris OliverThis is a great book talking about how you can use computer science to help you make decisions in life. How do you know when to make a decision on the perfect house? Car? etc? It helps you apply algorithms to making those decisions optimally without getting lost. (Source)

See more recommendations for this book...

57
Don't simply show your data--tell a story with it! Storytelling with Data teaches you the fundamentals of data visualization and how to communicate effectively with data. You'll discover the power of storytelling and the way to make data a pivotal point in your story. The lessons in this illuminative text are grounded in theory, but made accessible through numerous real-world examples--ready for immediate application to your next graph or presentation.

Storytelling is not an inherent skill, especially when it comes to data visualization, and the tools at our disposal...
more
Recommended by Roger D. Peng, and 1 others.

Roger D. PengIt’s important to think in terms of what your audience needs, and what would be best for them among the many choices you could make when analysing data. (Source)

See more recommendations for this book...

58

Programming in Scala

Updated for Scala 2.12

Programming in Scala less
Recommended by Santiago Basulto, and 1 others.

Santiago BasultoI love the following books, even though I don’t code in these languages in a daily basis. It’s still interesting to learn the concepts behind them Programming in Scala (Odersky) Learn You a Haskell for Great Good (Source)

See more recommendations for this book...

59
"…the best introduction to cryptography I've ever seen. … The book the National Security Agency wanted never to be published." –Wired Magazine

"…monumental… fascinating… comprehensive… the definitive work on cryptography for computer programmers…" –Dr. Dobb's Journal

"…easily ranks as one of the most authoritative in its field." —PC Magazine

"…the bible of code hackers." –The Millennium Whole Earth Catalog

This new edition of the cryptography classic provides you with a comprehensive survey of modern cryptography. The book details how programmers...
more
Recommended by Dominic Steil, and 1 others.

Dominic Steil[One of the five books recommends to young people interested in his career path.] (Source)

See more recommendations for this book...

60
The Complete Guide to Writing More Maintainable, Manageable, Pleasing, and Powerful Ruby Applications Ruby's widely admired ease of use has a downside: Too many Ruby and Rails applications have been created without concern for their long-term maintenance or evolution. The Web is awash in Ruby code that is now virtually impossible to change or extend. This text helps you solve that problem by using powerful real-world object-oriented design techniques, which it thoroughly explains using simple and practical Ruby examples. Sandi Metz has distilled a lifetime of conversations and... more

See more recommendations for this book...

Don't have time to read the top Technical books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
61
Through a series of recent breakthroughs, deep learning has boosted the entire field of machine learning. Now, even programmers who know close to nothing about this technology can use simple, efficient tools to implement programs capable of learning from data. This practical book shows you how.

By using concrete examples, minimal theory, and two production-ready Python frameworks-scikit-learn and TensorFlow-author Aurélien Géron helps you gain an intuitive understanding of the concepts and tools for building intelligent systems. You'll learn a range of techniques, starting with simple...

more
Recommended by Mark Tabladillo, and 1 others.

Mark TabladilloBook to Start You on Machine Learning - KDnuggets https://t.co/19fdX59b0d This book is “Hands-On Machine Learning with Scikit-Learn & TensorFlow”. each new revision has become an even better version of one of the best in-depth resources to learn Machine Learning by doing. https://t.co/ujyUH3xU3e (Source)

See more recommendations for this book...

62
Written by a software developer for software developers, this book is a unique collection of the latest software development methods. The author includes OOD, UML, Design Patterns, Agile and XP methods with a detailed description of a complete software design for reusable programs in C++ and Java. Using a practical, problem-solving approach, it shows how to develop an object-oriented application--from the early stages of analysis, through the low-level design and into the implementation. Walks readers through the designer's thoughts -- showing the errors, blind alleys, and creative... more

See more recommendations for this book...

63

Learn You a Haskell for Great Good! is a fun, illustrated guide to learning Haskell, a functional programming language that's growing in popularity. Learn You a Haskell for Great Good! introduces programmers familiar with imperative languages (such as C++, Java, or Python) to the unique aspects of functional programming. Packed with jokes, pop culture references, and the author's own hilarious artwork, Learn You a Haskell for Great Good! eases the learning curve of this complex language, and is a perfect starting point for any programmer looking to expand his or her...

more
Recommended by Santiago Basulto, and 1 others.

Santiago BasultoI love the following books, even though I don’t code in these languages in a daily basis. It’s still interesting to learn the concepts behind them Programming in Scala (Odersky) Learn You a Haskell for Great Good (Source)

See more recommendations for this book...

64
“The computer world is like an intellectual Wild West, in which you can shoot anyone you wish with your ideas, if you’re willing to risk the consequences.” —from Hackers & Painters: Big Ideas from the Computer Age, by Paul Graham

We are living in the computer age, in a world increasingly designed and engineered by computer programmers and software designers, by people who call themselves hackers. Who are these people, what motivates them, and why should you care?

Consider these facts: Everything around us is turning into computers. Your typewriter is...
more

Evan WilliamsI want everybody I know to read "How to Make Wealth" and "Mind the Gap" (chapters 6 and 7), which brilliantly articulate the most commonly, and frustratingly, misunderstood core economic principles of everyday life. (Source)

Yukihiro MatsumotoSince programmers create programs out of nothing, imagination is our only limitation. Thus, in the world of programming, the hero is the one who has great vision. Paul Graham is one of our contemporary heroes. He has the ability to embrace the vision, and to express it plainly. His works are my favorites, especially the ones describing language design. He explains secrets of programming,... (Source)

Chris AndersonA delightful ping-pong around the brain of a really smart guy. The chapter that answers the key question of our age-- why are nerds unpopular?-- is worth the price of admission alone. (Source)

See more recommendations for this book...

65

Head First Java

Learning a complex new language is no easy task especially when it s an object-oriented computer programming language like Java. You might think the problem is your brain. It seems to have a mind of its own, a mind that doesn't always want to take in the dry, technical stuff you're forced to study.

The fact is your brain craves novelty. It's constantly searching, scanning, waiting for something unusual to happen. After all, that's the way it was built to help you stay alive. It takes all the routine, ordinary, dull stuff and filters it to the background so it won't interfere with...
more

See more recommendations for this book...

66
Python's simplicity lets you become productive quickly, but this often means you aren't using everything it has to offer. With this hands-on guide, you'll learn how to write effective, idiomatic Python code by leveraging its best and possibly most neglected features. Author Luciano Ramalho takes you through Python's core language features and libraries, and shows you how to make your code shorter, faster, and more readable at the same time.

Many experienced programmers try to bend Python to fit patterns they learned from other languages, and never discover Python features outside...
more

See more recommendations for this book...

67

Hacking

The Art of Exploitation

Hacking is the art of creative problem solving, whether that means finding an unconventional solution to a difficult problem or exploiting holes in sloppy programming. Many people call themselves hackers, but few have the strong technical foundation needed to really push the envelope.

Rather than merely showing how to run existing exploits, author Jon Erickson explains how arcane hacking techniques actually work. To share the art and science of hacking in a way that is accessible to everyone, Hacking: The Art of Exploitation, 2nd Edition introduces the fundamentals of C...
more

See more recommendations for this book...

68
If you've ever spent hours renaming files or updating hundreds of spreadsheet cells, you know how tedious tasks like these can be. But what if you could have your computer do them for you?

In "Automate the Boring Stuff with Python," you'll learn how to use Python to write programs that do in minutes what would take you hours to do by hand no prior programming experience required. Once you've mastered the basics of programming, you'll create Python programs that effortlessly perform useful and impressive feats of automation to: Search for text in a file or across multiple...
more

See more recommendations for this book...

69

Agile Principles, Patterns, and Practices in C#

With the award-winning book Agile Software Development: Principles, Patterns, and Practices, Robert C. Martin helped bring Agile principles to tens of thousands of Java and C++ programmers. Now .NET programmers have a definitive guide to agile methods with this completely updated volume from Robert C. Martin and Micah Martin, Agile Principles, Patterns, and Practices in C#.

This book presents a series of case studies illustrating the fundamentals of Agile development and Agile design, and moves quickly from UML models to real C# code. The introductory...
more

See more recommendations for this book...

70
You should learn a programming language every year, as recommended by The Pragmatic Programmer. But if one per year is good, how about Seven Languages in Seven Weeks? In this book you'll get a hands-on tour of Clojure, Haskell, Io, Prolog, Scala, Erlang, and Ruby. Whether or not your favorite language is on that list, you'll broaden your perspective of programming by examining these languages side-by-side. You'll learn something new from each, and best of all, you'll learn how to learn a language quickly.

Ruby, Io, Prolog, Scala, Erlang, Clojure, Haskell. With...
more

See more recommendations for this book...

Don't have time to read the top Technical books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
71
Vim is a fast and efficient text editor that will make you a faster and more efficient developer. It's available on almost every OS--if you master the techniques in this book, you'll never need another text editor. Practical Vim shows you 120 vim recipes so you can quickly learn the editor's core functionality and tackle your trickiest editing and writing tasks.

Vim, like its classic ancestor vi, is a serious tool for programmers, web developers, and sysadmins. No other text editor comes close to Vim for speed and efficiency; it runs on almost every system imaginable and...
more

See more recommendations for this book...

72
Managing people is difficult wherever you work, but the tech industry as a whole is pretty bad at it. Tech companies in general lack the experience, tools, texts, and frameworks to do it well. And the handful of books that share tips and tricks of engineering management don t explain how to supervise employees in the face of growth and change.

In this book, author Camille Fournier takes you through the stages of technical management, from mentoring interns to working with the senior staff. You ll get actionable advice for approaching various obstacles in your path, whether you re a...
more

See more recommendations for this book...

74

Refactoring to Patterns

In 1994, "Design Patterns" changed the landscape of object-oriented development by introducing classic solutions to recurring design problems. In 1999, "Refactoring" revolutionized design by introducing an effective process for improving code. With the highly anticipated " Refactoring to Patterns ," Joshua Kerievsky has changed our approach to design by forever uniting patterns with the evolutionary process of refactoring.

This book introduces the theory and practice of pattern-directed refactorings: sequences of low-level refactorings that allow designers to safely move designs...
more

See more recommendations for this book...

75

Pattern Recognition and Machine Learning

Pattern recognition has its origins in engineering, whereas machine learning grew out of computer science. However, these activities can be viewed as two facets of the same field, and together they have undergone substantial development over the past ten years. In particular, Bayesian methods have grown from a specialist niche to become mainstream, while graphical models have emerged as a general framework for describing and applying probabilistic models. Also, the practical applicability of Bayesian methods has been greatly enhanced through the development of a range of approximate inference... more

See more recommendations for this book...

76
An algorithm is nothing more than a step-by-step procedure for solving a problem. The algorithms you'll use most often as a programmer have already been discovered, tested, and proven. If you want to take a hard pass on Knuth's brilliant but impenetrable theories and the dense multi-page proofs you'll find in most textbooks, this is the book for you. This fully-illustrated and engaging guide makes it easy for you to learn how to use algorithms effectively in your own programs.

Grokking Algorithms is a disarming take on a core computer science topic. In it, you'll learn how to apply...
more

See more recommendations for this book...

77

Accelerate

Building and Scaling High-Performing Technology Organizations

Does technology actually matter? And how can we apply technology to drive business value? For years, we've been told that the performance of software delivery teams doesn't matter--that it can't provide a competitive advantage to our companies. Through four years of groundbreaking research, Dr. Nicole Forsgren, Jez Humble, and Gene Kim set out to find a way to measure software delivery performance--and what drives it--using rigorous statistical methods. This book presents both the findings and the science behind that research. Readers will discover how to measure the performance of their... more
Recommended by Kirk Borne, and 1 others.

Kirk BorneFantastic accomplishment! Congratulations @nicolefv on your outstanding #DevOps book ... I love that: “The Science of Lean” ... that works also for #DataOps and Lean Analytics. https://t.co/i9gPhKL0dt https://t.co/DNJpuJtER0 (Source)

See more recommendations for this book...

78

Types and Programming Languages

A comprehensive introduction to type systems and programming languages.

A type system is a syntactic method for automatically checking the absence of certain erroneous behaviors by classifying program phrases according to the kinds of values they compute. The study of type systems--and of programming languages from a type-theoretic perspective--has important applications in software engineering, language design, high-performance compilers, and security.

This text provides a comprehensive introduction both to type systems in computer science and to the basic theory...
more
Recommended by Ana Bell, and 1 others.

Ana BellIt’s not a book for beginners, but it’s a good book if you’re interested in the theory behind programming languages. (Source)

See more recommendations for this book...

79
More than 300,000 developers have benefited from past editions of UML Distilled . This third edition is the best resource for quick, no-nonsense insights into understanding and using UML 2.0 and prior versions of the UML. Some readers will want to quickly get up to speed with the UML 2.0 and learn the essentials of the UML. Others will use this book as a handy, quick reference to the most common parts of the UML. The author delivers on both of these promises in a short, concise, and focused presentation. This book describes all the major UML diagram types, what they're used... more

See more recommendations for this book...

80
A fundamental software engineering project management guide based on the practical requirements of "Taming Wild Software Schedules". Emphasizes possible, realistic and "best practice" approaches for managers, technical leads and self-managed teams. The author emphasizes efficient development concepts with an examination of rapid development strategies and a study of classic mistakes, within the context of software-development fundamentals and risk management. Dissects the core issues of rapid development, lifecycle planning, estimation and scheduling. Contains very good and practical... more
Recommended by Jeff Atwood, and 1 others.

See more recommendations for this book...

Don't have time to read the top Technical books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
82
Coming to grips with C++11 and C++14 is more than a matter of familiarizing yourself with the features they introduce (e.g., auto type declarations, move semantics, lambda expressions, and concurrency support). The challenge is learning to use those features effectively--so that your software is correct, efficient, maintainable, and portable. That's where this practical book comes in. It describes how to write truly great software using C++11 and C++14--i.e. using modern C++.

Topics include:


The pros and cons of braced initialization,...
more

See more recommendations for this book...

83
Recommended by Jeff Morris Jr., Charity Majors, and 2 others.

Jeff Morris Jr.@briannekimmel @Lethain Great book — highly recommend. (Source)

Charity MajorsHoly fuckola. I got ~4 pages through @lethain's new book before realizing "this might be the best book I have ever read on engineering teams" and by page 42 I knew for sure. Every engineer should read this. Not just managers. https://t.co/cNI53wS4bK (Source)

See more recommendations for this book...

85

Unix and Linux System Administration Handbook

"As an author, editor, and publisher, I never paid much attention to the competition--except in a few cases. This is one of those cases. The UNIX System Administration Handbook is one of the few books we ever measured ourselves against." --Tim O'Reilly, founder of O'Reilly Media "This edition is for those whose systems live in the cloud or in virtualized data centers; those whose administrative work largely takes the form of automation and configuration source code; those who collaborate closely with developers, network engineers, compliance officers, and all the other worker... more

See more recommendations for this book...

86
The need to handle increasingly larger data volumes is one factor driving the adoption of a new class of nonrelational "NoSQL" databases. Advocates of NoSQL databases claim they can be used to build systems that are more performant, scale better, and are easier to program." ""NoSQL Distilled" is a concise but thorough introduction to this rapidly emerging technology. Pramod J. Sadalage and Martin Fowler explain how NoSQL databases work and the ways that they may be a superior alternative to a traditional RDBMS. The authors provide a fast-paced guide to the concepts you need to know in order... more

See more recommendations for this book...

87

JavaScript Patterns

What's the best approach for developing an application with JavaScript? This book helps you answer that question with numerous JavaScript coding patterns and best practices. If you're an experienced developer looking to solve problems related to objects, functions, inheritance, and other language-specific categories, the abstractions and code templates in this guide are ideal -- whether you're writing a client-side, server-side, or desktop application with JavaScript.

Written by JavaScript expert Stoyan Stefanov -- Senior Yahoo! Technical and architect of YSlow 2.0, the web page...
more

See more recommendations for this book...

88
Every day, more and more people want to learn some HTML and CSS. Joining the professional web designers and programmers are new audiences who need to know a little bit of code at work (update a content management system or e-commerce store) and those who want to make their personal blogs more attractive. Many books teaching HTML and CSS are dry and only written for those who want to become programmers, which is why this book takes an entirely new approach.

• Introduces HTML and CSS in a way that makes them accessible to everyone—hobbyists, students, and professionals—and it’s...
more

See more recommendations for this book...

89

Swipe to Unlock

The Primer on Technology and Business Strategy

An alternative cover edition for this ISBN can be found here.

Authored by Product Managers at Google, Microsoft, and Facebook, Swipe to Unlock is a guide which enables anyone to understand the core concepts of tech and the business strategy behind it in order to succeed in the tech industry or even just be an informed digital citizen and consumer.

This #1 Amazon Business Bestseller has been featured in Business Insider and was touted as "our...
more

See more recommendations for this book...

90
If you're a technical recruiter who wants to keep your skills up to date in the competitive field of technical resource placement, you need a detailed guidebook to outpace competitors. This technical skills primer focuses on technology fundamentals-from basic programming terms to big data vocabulary, network lingo, operating system jargon, and other crucial skill sets. Topics covered include -sample questions to ask candidates, -types of networks and operating systems, -software development strategies, -cloud systems administration and DevOps, -data science and database job roles, and... more

See more recommendations for this book...

Don't have time to read the top Technical books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
91

You Don't Know JS

Up & Going

It’s easy to learn parts of JavaScript, but much harder to learn it completely—or even sufficiently—whether you’re new to the language or have used it for years. With the "You Don’t Know JS" book series, you’ll get a more complete understanding of JavaScript, including trickier parts of the language that many experienced JavaScript programmers simply avoid.

The series’ first book, Up & Going, provides the necessary background for those of you with limited programming experience. By learning the basic building blocks of programming, as well as JavaScript’s core...

more

See more recommendations for this book...

92
Implementing Domain-Driven Design presents a top-down approach to understanding domain-driven design (DDD) in a way that fluently connects strategic patterns to fundamental tactical programming tools. Vaughn Vernon couples guided approaches to implementation with modern architectures, highlighting the importance and value of focusing on the business domain while balancing technical considerations.

Building on Eric Evans’ seminal book, Domain-Driven Design, the author presents practical DDD techniques through examples from familiar domains. Each principle is backed up by realistic...
more

See more recommendations for this book...

93

Joel on Software

Someone once said that the task of a writer is to "make the familiar new and the new familiar". For years, Joel Spolsky has done exactly this at www.joelonsoftware.com. Now, for the first time, you can own a collection of the most important essays from his site in one book, with exclusive commentary and new insights from joel. less
Recommended by Ev Williams, and 1 others.

See more recommendations for this book...

94

The Art of Electronics

This is the thoroughly revised and updated Second Edition of the single, authoritative text and reference on electronic circuit design--both analog and digital. It emphasizes the methods actually used by circuit designers--a combination of some basic laws, rules of thumb, and a large bag of tricks. This completely new edition responds to the breakneck pace of change in electronics with a large number of new and revised topics. less

See more recommendations for this book...

95
In his first book since the bestselling Fermat's Enigma, Simon Singh offers the first sweeping history of encryption, tracing its evolution and revealing the dramatic effects codes have had on wars, nations, and individual lives. From Mary, Queen of Scots, trapped by her own code, to the Navajo Code Talkers who helped the Allies win World War II, to the incredible (and incredibly simple) logistical breakthrough that made Internet commerce secure, The Code Book tells the story of the most powerful intellectual weapon ever known: secrecy.

Throughout the text are clear...
more
Recommended by Stephen Kinsella, and 1 others.

Stephen Kinsella@gavreilly @SLSingh Love that book (Source)

See more recommendations for this book...

96
The Linux Programming Interface is the definitive guide to the Linux and UNIX programming interface—the interface employed by nearly every application that runs on a Linux or UNIX system.

In this authoritative work, Linux programming expert Michael Kerrisk provides detailed descriptions of the system calls and library functions that you need in order to master the craft of system programming, and accompanies his explanations with clear, complete example programs.

You'll find descriptions of over 500 system calls and library functions, and more than 200 example...
more
Recommended by Julia Evans, and 1 others.

Julia Evanshanging out with my favourite Linux book this morning. I love that the chapters are so short (usually less than 20 pages) and I always learn something interesting by picking a chapter and reading it. https://t.co/fZBNu8rfU8 (Source)

See more recommendations for this book...

97

Computer Networks

For courses in computer networking or introductions to networking at both the undergraduate and graduate level in computer science, engineering, CIS, MIS, and business departments. In this revision, the author takes a structured approach to explaining how networks function. less

See more recommendations for this book...

98

Scrum

The Art of Doing Twice the Work in Half the Time

Se você já foi surpreendido por quão rápido o mundo está mudando, Scrum é uma das razões. Para aqueles que acreditam que deve haver uma maneira mais eficiente de se fazer as coisas, este é um livro sobre o processo de gestão que está mudando a maneira como vivemos. Desde o advento do método, já foram registrados ganhos de produtividade de até 1.200%. Tecida com insights de artes marciais, tomadas de decisão judicial, combate aéreo avançado, robótica e muitas outras disciplinas, Scrum é sempre fascinante. Seja para inventar uma tecnologia pioneira ou para estabelecer os alicerces de... more

See more recommendations for this book...

99
How prepared are you to build fast and efficient web applications? This eloquent book provides what every web developer should know about the network, from fundamental limitations that affect performance to major innovations for building even more powerful browser applications—including HTTP 2.0 and XHR improvements, Server-Sent Events (SSE), WebSocket, and WebRTC.

Author Ilya Grigorik, a web performance engineer at Google, demonstrates performance optimization best practices for TCP, UDP, and TLS protocols, and explains unique wireless and mobile network optimization requirements....
more

See more recommendations for this book...

Don't have time to read the top Technical books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.