Check out my first novel, midnight's simulacra!
Book list for streetfighting computer scientists
2022 edition. this is very different from most "best books for programmers" lists you'll see, with like Code Complete and Clean Code and Wistful Wanking for Practical Wankers and Design Patterns aka Architects without Skills and titles like that. you'll figure that all out as you go along. these are books to read so that you can cut motherfuckers with knives. do you need to read all of these? only if you want to know the shit inside, i guess.
- Dijkstra, A Discipline of Programming
- Knuth, The Art of Computer Programming, especially volume 1
- Warren, Hacker's Delight
- Stevens, Advanced Programming in the UNIX Environment
- Stevens, UNIX Network Programming
- Abelson + Sussman, Structure and Interpretation of Computer Programs
- Varghese, Networking Algorithmics
- McKusick, The Design and Implementation of the FreeBSD Operating System
- Kerrisk, The Linux Programming Interface
- Stroustrup, The C++ Programming Language
- Gustedt, Modern C
- Hanson, C Interfaces and Implementations
- Garcia + Widjaja, Communications Networks
- Hennessy + Paterson, Computer Architecture: A Quantitative Approach
- Kennedy, Optimizing Compilers for Modern Architectures
- Stepanov, From Mathematics to Generic Programming
- CLRS, Introduction to Algorithms
- Samet, Metric and Multidimensional Data Structures
- McKenney, Is Parallel Programming Hard, And, If So, What Can You Do About It
- Crochemere et al, Algorithms on Strings
- Culler et al, Parallel Computer Architecture
- Ward + Halstead, Computation Structures
- Shriver + Smith, The Anatomy of a High-Performance Microprocessor
- Vazirani, Approximation Algorithms
- Raghaven + Motwani, Randomized Algorithms
- Sipser, Introduction to the Theory of Computation
- Ahora + Barak, Computational Complexity
- Pierce, Types and Programming Languages
- Barendregt, The Lambda Calculus
- Okasaki, Purely Functional Data Structures
- Van Roy + Hardidi, Concepts, Techniques, and Models of Computer Programming
now go forth and fight in the streets. i list no machine learning because i dislike machine learning. there are no quantum books because quantum is not yet useful for streetfighting (we all look forward to this situation changing). i list no SIMT/accelerator books because they're all shite. i list no infosec because infosec is a subfield of QA, fight me. there are no links because i'm a lazy, lazy man.
you should of course also read Hacking the Planet with Notcurses, buying copies for your team and family.