"You Are Not Expected to Understand This": How 26 Lines of Code Changed the World
Computer code governs nearly every aspect of modern life, from the way we drive to how we express our identities. This collection of essays pulls back the digital curtain to reveal that software is not an inevitable force of nature, but the product of human choices, biases, and accidents. By examining twenty six specific lines of code, the contributors show how brief snippets of logic have reshap…
Shelves
More like this
Peopleware: Productive Projects and Teams
Demarco and Lister demonstrate that the major issues of software development are human, not technical. Their answers aren't easy--just incredibly …
Designing Data-Intensive Applications
Data is at the center of many challenges in system design today. Difficult issues need to be figured out, such as scalability, consistency, reliab…
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 incep…
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 platfo…
Clean Code: A Handbook of Agile Software Craftsmanship
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 signifi…
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…
Building Microservices: Designing Fine-Grained Systems
Distributed systems have become more fine-grained in the past 10 years, shifting from code-heavy monolithic applications to smaller, self-containe…
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 prese…
Automate the Boring Stuff with Python: Practical Programming for Total Beginners
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…
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 s…
97 Things Every Programmer Should Know: Collective Wisdom from the Experts
Tap into the wisdom of experts to learn what every programmer should know, no matter what language you use. With the 97 short and extremely useful…
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 …