
Technical books, especially for practitioners, that stay relevant over a long period of time are rather rare. I wish I could say that I've had time to study TAoCP or SICP, but I haven't.
Some of what I did find useful back in the day were: Advanced Programming in the Unix Environment by Stevens, Stan Lippman's C++ book, Code Complete by Steve McConnell, the GoF Design Patterns book, Working Effectively With Legacy Code by Michael Feathers, and Introduction to Artificial Intelligence by Charniak and McDermott.
Whether, and to what extent, any of them are useful now is hard to say. Depends what you want to learn and what you're doing. The Charniak book, for example, is about classic "good old fashioned" AI, not the currently dominant connectionist approach. But it's LISP, and LISP is always relevant.
I'd also add The Systems Bible by John Gall as a book that influenced me. Its not a technology book though.
The following are the 49 ebooks categorized 'Computer Science':
Introduction to Evolutionary Computing
Data Structures and Algorithms with Python
LaTeX in 24 Hours
Automata and Computability
The Algorithm Design Manual
Principles of Data Mining
Fundamentals of Business Process Management
UML @ Classroom
Foundations for Designing User-Centered Systems
Computer Vision
Data Mining
Computational Geometry
Cryptography Made Simple
Eye Tracking Methodology
The Data Science Design Manual
An Introduction to Machine Learning
Guide to Discrete Mathematics
Modelling Computing Systems
Understanding Cryptography
Concise Guide to Software Engineering
Fundamentals of Multimedia
The Python Workbook
Recommender Systems
Python Programming Fundamentals
Object-Oriented Analysis, Design and Implementation
Introduction to Data Science
Concise Guide to Databases
Digital Image Processing
Guide to Computer Network Security
Foundations of Programming Languages
Probability and Statistics for Computer Science
Guide to Competitive Programming
Introduction to Artificial Intelligence
Introduction to Deep Learning
A Beginner's Guide to Scala, Object Orientation and Functional Programming
Fundamentals of Business Process Management
Guide to Scientific Computing in C++
Fundamentals of Java Programming
Logical Foundations of Cyber-Physical Systems
Introduction to Programming with Fortran
Neural Networks and Deep Learning
Data Science and Predictive Analytics
Systems Programming in Unix/Linux
Introduction to Parallel Computing
Analysis for Computer Scientists
Introductory Computer Forensics
Java in Two Semesters
A Beginners Guide to Python 3 Programming
Advanced Guide to Python 3 ProgrammingOne bit of warning... the first half of this list includes everything "AI" related I've read (or am currently reading) for about the past two years. I say "AI" and not "AGI" because I haven't always bothered to make the distinction. So some of this stuff may not be relevant to you.
FYI, this list (especially the first half) is a heterogeneous lot that varies considerably along the "pop sci" to "academic" axis, as well as the "applied" to "theoretical" axis.
I'm also leaving off (for now anyway) most the "related, but not specifically about AI" stuff, like books on Probability, Bayesian Statistics, Graph Theory, etc., and books that are more about contemporary "Machine Learning" and "Deep Learning" topics. I do believe that there is a connection though, and that DL may play a role in building a truly intelligent system, so when I write the expanded blog post, I'll include more of that stuff.
OK, With no further ado, the "AI stuff I've read recently" list.
0. Blackboard Systems - Robert Engelmore & Tony Morgan
1. The Age of Spiritual Machines - Ray Kurzweil
2. The Emotion Machine - Marvin Minsky
3. The Society of Mind - Marvin Minsky
4. Possible Minds: 25 Ways of Looking at AI - John Brockman (ed)
5. AI Super-Powers: China, Silicon Valley and the New World Order - Kai-Fu Lee (more meta than actually about AI per-se)
6. Artificial Intelligence In Practice - Bernard Marr
7. Architects of Intelligence - Martin Ford
8. Gödel, Escher, Bach - Douglas Hofstadter
9. Superintelligence - Nick Bostrom
10. The Master Algorithm - Pedro Domingos
11. On Intelligence - Jeff Hawkins
12. Unified Theories of Cognition - Alan Newell
13. The AGI Revolution - Ben Goertzel
14. How To Create A Mind - Ray Kurzweil
15. Case-Based Reasoning: A Textbook - Michael M. Richter & Rosina O. Weber
16. The Age of Intelligent Machines - Ray Kurzweil
17. The Singularity is Near - Ray Kurzweil
18. An Introduction to MultiAgent Systems - Michael J. Wooldridge
19. Engineering General Intelligence - Volume 1 - Ben Goertzel
20. Artificial Intelligence: A Modern Approach - Peter Norvig & Stuart Russell
----
Below here is the stuff that is in the "to read" queue. This part tends to run more to textbooks and more academic material and less of the "pop sci" stuff. The choices on this list were inspired by other reading and research I've done, which led me to believe this group of titles includes material that will be useful. YMMV.
21. Cause Effect Pairs in Machine Learning - Isabelle Guyon, Alexander Statnikov, & Berna Bakir Batu (eds)
22. Propositional, Probabilistic, and Evidential Reasoning: Integrating Numerical and Symbolic Approaches - Weiru Liu
23. Human Compatible - Stuart Russell
23. Rebooting AI - Gary Marcus & Ernest Davis
24. Artificial Intelligence - Melanie Mitchell
25. Protocol Analysis - K. Anders Ericsson & Herbert A. Simon
26. The Robot's Dilemma: The Frame Problem in Artificial Intelligence - Zenon W. Pylyshyn
27. Image and Mind - Stephen Michael Kosslyn
28. Elements of Episodic Memory - Endel Tulving
29. Things and Places: How The Mind Connects With The World - Zenon W. Pylyshyn
30. Information Algebras: Generic Structures for Inference - Jurg Kohlas
31. Probabilistic Logics and Probabilistic Networks - Rolf Haenni, Jan-Willem Romeijn, Gregory Wheeler & Jon Williamson
32. Knowledge-Based Systems in Artificial Intelligence - Randall Davis & Douglas B. Lenat
33. Building Large Knowledge-Based Systems - Douglas B. Lenat & R.V. Guha
34. Elements of Information Theory - Thomas M. Cover & Joy A. Thomas
35. The Bayesian Choice - Christian P. Robert
35. Machine Learning for Commonsense Reasoning Processes - Xenia Naidenova
36. Reinforcement Learning and Optimal Control - Dimitri P. Bertsekas
37. An Introduction to Kolmogorov Complexity and Its Applications - Ming Li & Paul Vitanyi
38. The Mechanical Mind: A Philosophical Introduction to Minds, Machines, and Mental Representation - Tim Crane
39. Constraining Cognitive Theories - Zenon W. Pylyshyn
40. Neuro-Dynamic Programming - Dimitri P. Bertsekas & John Tsitsiklis
41. The Language Instinct - Steven Pinker
42. How The Mind Works - Steven Pinker
43. Images and Words - Steven Pinker
44. Words and Rules - Steven Pinker
45. The Blank Slate - Steven Pinker
46. Consciousness Explained - Daniel Dennett
47. How to Build a Brain: A Neural Architecture for Biological Cognition - Chris Eliasmith
48. Introduction to Artificial Intelligence - Eugene Charniak & Drew McDermott
49. Metamagical Themas - Douglas Hofstadter
50. I Am A Strange Loop - Douglas Hofstadter
51. Fluid Concepts And Creative Analogies: Computer Models Of The Fundamental Mechanisms Of Thought - Douglas Hofstadter
52. Principles of Synthetic Intelligence - Joshua Bach
53. Anatomy of the Mind - Ron Sun
54. Generic Inference: A Unifying Theory for Automated Reasoning - Marc Pouly & Jurg Kohlas
55. Knowledge Representation, Reasoning, and the Design of Intelligent Agents: The Answer-Set Programming Approach - Michael Gelfond & Yulia Kahl
56. Semantic Networks: An Evidential Formalization and its Connectionist Realization - Lockendra Shastri
57. Automated Planning and Acting - Malik Ghallab, Dana Nau, & Paolo Traverso
58. How Can The Human Mind Occur in the Physical Universe? - John Anderson
59. Spiking Neuron Models - Wulfram Gerstner & Werner Kistler
60. Neural Engineering - Chris Eliasmith & Charles H. Anderson
61. Principles of Neural Design - Peter Sterling & Simon Laughlin
62. Semantic Information Processing - Marvin Minsky
63. The SOAR Cognitive Architecture - John Laird
64. The Architecture of Cognition - John Anderson
65. Human Associative Memory - John Anderson & Gordon E. Bower
66. Knowledge Representation & Reasoning - Ronald J. Brachman & Hector J. Levesque
67. Cognitive Architectures - Maria Isabel Aldinhas Ferreira, Joao Silva Sequeira, & Rodrigo Ventura (eds)
68. Scripts, Goals, and Planning - Roger C. Schank & Robert P. Abelson
69. Reasoning About Plans - James F. Allen, Henry A. Kautz, Richard N. Pelavin, & Josh D. Tenenberg
70. Generating Abstraction Hierarchies: An Automated Approach to Reducing Search in Planning - Craig A. Knoblock
71. Representations of Commonsense Knowledge - Ernest Davis
72. Approaches to Knowledge Representation - G.A. Ringland & D.A. Duce
73. Knowledge Representation - John F. Sowa
74. Conceptual Structures: Information Processing in Mind and Machine - John F. Sowa
75. Inside Computer Understanding - Roger C. Schank & Christopher K. Riesbeck
76. Integrating Rules and Connectionism for Robust Commonsense Reasoning - Ron Sun
77. Probabilistic Logic Networks - Ben Goertzel, et al.
78. The Subtlety of Sameness: A Theory and Computer Model of Analogy Making - Robert M. French
79. Analogy Making as Perception - Melanie Mitchell
80. Real World Reasoning - Ben Goertzel, et al.
81. Artificial General Intelligence - Ben Goertzel & Cassio Pennachin
82. The Hidden Pattern: A Patternist Philosophy of Mind - Ben Goertzel
83. Engineering General Intelligence - Volume 2 - Ben Goertzel, Cassio Pennachin, & Nil Geisweiller
84. Computation and Cognition - Zenon W. Pylyshyn
85. Universal Artificial Intelligence - Marcus Hutter
86. The Cambridge Handbook of Computational Psychology - Ron Sun
87. Handbook of Neuroevolution Through Erlang - Gene I. Sher
88. Readings in Cognitive Science: A Perspective from Psychology and Artificial Intelligence - Allan Collins & Edward E. Smith -- this one contains a LOT of seminal papers in the field, including one of the earliest papers on Semantic Networks by Ross Quillian. I actually put this on the wrong part of the list, as I'm about halfway through reading this one, but just remembered it and didn't want to renumber everything. Heh.
Eh, that's a pretty good chunk of the stuff I've got lying around here, waiting to be read. There's a handful of others, but my fingers are getting numb.
For now, that will probably mean Google Drive integration, but we'll probably also eventually do something for working with files in a repository using something like JCR[2] and/or CMIS[3].
Longer term, I think we'll do something with Apache Wave[4] and the Operational Transformation[5] stuff as part of this whole idea of putting interactive entities in the stream. It's not all fleshed out yet, but some of the ideas I'm toying with harken back to the old idea of "compound documents"[6] and "intelligent documents"[7], or something like Bret Victor's "reactive documents" stuff[8].
Outside of all that, I plan to finish reading Permutation City by Greg Egan, and Philip C. Jackson's Introduction to Artificial Intelligence.
[1]: https://github.com/fogbeam/Quoddy
[2]: https://jcp.org/en/jsr/detail?id=283
[3]: http://en.wikipedia.org/wiki/Content_Management_Interoperabi...
[5]: http://en.wikipedia.org/wiki/Operational_transformation
[6]: http://www.w3.org/2004/CDF/
Outside of that, I hope to finish reading most (or all) of Philip C. Jackson's Introduction to Artificial Intelligence, Alvin Toffler's Future Shock and the Predictable Revenue book. I doubt I'll finish all of that over the "holiday season" per-se, but that's what I'll be focusing on in the near term.