Programming + Reading >
I found resources and talked to programmers about books they would recommend. I never got my brain around programming, so this project ended up being aborted.
Do note that some of these are very heavy reading, and most are not remotely suitable for new programmers.
See also /tag/programming+writing
Lined up ∞
-
Structure and Interpretation of Computer Programs
- Abelson, Sussman
- The "purple book"
- MIT introductory text.
- https://mitpress.mit.edu/sites/default/files/sicp/index.html
- https://mitpress.mit.edu/sites/default/files/sicp/full-text/book/book.html
-
The Art of Computer Programming
- Donald E. Knuth
Consider seriously ∞
-
The Programmer's Book of Rules - (1979), by George Ledin
- ISBN-10: 9780534979935
- ISBN-13: 978-0534979935
-
Smalltalk Best Practice Patterns
- ISBN-10: 0-13-476904-X
- ISBN-13: 978-0134769042
-
The Definition of Standard ML, Revised Edition
- ISBN-10: 0262631814
- ISBN-13: 978-0262631815
- A really, really tough read.
-
Types and Programming Languages
- ISBN-10: 0262162091
- ISBN-13: 978-0262162098
-
How to Solve It: A New Aspect of Mathematical Method
- ISBN-10: 0691023565
- ISBN-13: 978-0691023564
Un-judged ∞
- dave astel's reading list
- Best of Ruby Quiz
- Everyday Scripting with Ruby
- Ruby Developers Guide
- Ruby Cookbook: Rough Cuts Version
- Ajax Hacks: Rough Cuts Version
- Magic Ink - Information Software and the Graphical Interface
-
Pragmatic Version Control - Using Subversion, by Mike Mason
- Agile Web Development with Rails (Dave Thomas, David Heinemeier Hannson with Leon Breedt, Mike Clark, Thomas Fuchs, Andreas Schwarz) - ISBN 0-9766940-0-X [http://www.oreilly.com/catalog/097669400X/index.html]
-
Pragmatic Ajax - A Web 2.0 Primer, by Justin Gehtland, Ben Galbraith, Dion Almaer
-
Mastering Regular expressions, by Jeffrey E. F. Friedl
-
Lessons Learned in Software Testing . A Context-Driven Approach by Cem Kaner, James Bach, Bret Pettichord - ISBN 0-471-08112-4
- Partially-read.
- Great software testing teams aren't born, they're made -- through a lot of hard work and persuasive communication. Along the way, there is an abundance of traps that one can fall into, which can derail the best-laid plans and put your projects behind schedule.
-
- Kernighan, Ritchie
-
The Unix Programming Environment
- Kernighan, Pike
-
- Jason Fried, David Heinemeier Hansson
- ISBN-10: 0307463745
- ISBN-13: 978-0307463746
- reportedly: Short and focused chapters make it easy to pick up and read a little bit at a time.
-
Absolute Java
- Walter Savitch, Kenrick Mock
- ISBN-13: 978-0134041674
- ISBN-10: 0134041674
- "... I still think its a great starter book, it helped me understand things like arrays and memory, and really grounded a lot of concepts for me." -- Josh Creek
-
Stroustrup's book on language creation.
- I think that is Bjarne Stroustrup
-
- Kernighan and Pike
- ISBN 0-201-61586-X
-
- Peter Siebel
- ISBN 1-430-21948-3
-
- https://htdp.org/
- ISBN 0-262-06218-6
-
How to Think Like a Computer Scientist - Learning with Python 3 (RLE)
- http://www.openbookproject.net/thinkcs/
- by Peter Wentworth, Jeffrey Elkner, Allen B. Downey, and Chris Meyers
-
- Steve McConnell
- ISBN 978-0-7356-1967-8
-
Working Effectively with Legacy Code
- Micheal Feathers
- ISBN-13: 978-0131177055
- ISBN-10: 0131177052
-
Object-Oriented Software Construction
- Bertrand Meyer
- 0-13-629155-4 (1997 ed.)
- https://www.eiffel.org/doc/eiffel/Object-Oriented_Software_Construction%2C_2nd_Edition
-
Object Oriented Analysis and Design
- Booch et al
- ISBN-13: 978-0201895513
- ISBN-10: 020189551X
- Not recommended. Try Bertrand Meyer. Or perhaps Rebecca Wirfs-Brock.
-
Object-Oriented Software Construction
- Bertrand Meyer
- ISBN 0-13-629155-4 (1997 ed.)
-
Object Design: Roles, Responsibilities, and Collaborations
- Rebecca Wirfs-Brock and Alan McKean
- https://web.archive.org/web/20190430225705/http://wirfs-brock.com:80/DesignBooks.html
- ISBN 0201379430.
-
Mastering Regular Expressions
- Jeffrey E.F. Friedl
- ISBN: 0-596-52812-4
- ISBN 10: 978-0-596-52812-6
- https://www.oreilly.com/library/view/mastering-regular-expressions/0596528124/
-
Clean Code: A Handbook of Agile Software Craftsmanship
-
Smalltalk/V DOS
- Digitalk
- I don't know what this is a reference to, but see Smalltalk.
-
The Logic Book
- Merrie Bergmann, James Moor, Jack Nelson
- ISBN-10 007353563X
- ISBN-13 978-0073535630
- Or any tolerable book on symbolic logic. This was already on the plan, but I ought to begin a reading list. There are some nice videos on logic on youtube. Begin there.
-
- The llama book
-
- The alpaca book, originally called Perl Objects, References, and Modules
-
Seven Languages in Seven Weeks
- ISBN 978-1-93435-659-3
- https://pragprog.com/book/btlang/seven-languages-in-seven-weeks/
-
The School of Niklaus Wirth: The Art of Simplicity
- ISBN-13: 978-1558607231
- ISBN-10: 1558607234
-
Compiler Construction
-
Effective TCP/IP Programming: 44 Tips to Improve Your Network Programs
- ISBN-13: 978-0201615890
- ISBN-10: 0201615894
-
The Annotated C++ Reference Manual
- ISBN-13: 978-0201514599
- ISBN-10: 0201514591
- "The first and last good book on C++, besides Meyers" [TODO: Research what that one is]
-- That is probably Scott Meyers - https://www.aristeia.com/books.html
-
The Little Schemer
- ISBN 0-262-56099-2
-
The Seasoned Schemer
- ISBN 0-262-56100-X
-
The Reasoned Schemer
- ISBN 0-262-56214-6
-
Performance and Evaluation of LISP Systems
- Originally Published by The MIT Press in their Computer Systems Series (ISBN 0-262-07093-6)
- https://dreamsongs.com/Files/Timrep.pdf
-
LISP 1.5 Programmer's Manual
- ISBN-13: 978-0262130110
- ISBN-10: 0262130114
- http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf
-
- ISBN 0-521-56247-3
-
BUGS in Writing, Revised Edition: A Guide to Debugging Your Prose
- ISBN-13: 978-0201379211
- ISBN-10: 020137921X
- "best English book ever"
-
Smalltalk-80: The Language and its Implementation
- ISBN-13: 978-0201113716
- ISBN-10: 0201113716
-
Smalltalk With Style
- ISBN-10: 0131655493
- ISBN-13: 978-0131655492
-
The Design and Evaluation of a High Performance Smalltalk System
- ISBN: 026221010X
- ISBN-13: 9780262210102
- https://www2.eecs.berkeley.edu/Pubs/TechRpts/1986/5376.html
- "[the] best fucking book on objective profiling and optimization ever written" -- Ryan Davis
-
Lions' Commentary on UNIX 6th Edition, with Source Code
- ISBN: 978-1-57398-013-5
-
A Pattern Language: Towns, Buildings, Construction
- ISBN 0-19-501919-9
-
- ISBN 0-19-502402-8
-
More Programming Pearls: Confessions of a Coder
- ISBN-13: 978-0201118896
- ISBN 0-201-11889-0
-
Programming Pearls
- ACM Press
- ISBN 0-201-65788-0
-
Writing Efficient Programs
- Prentice-Hall Software Series
- ISBN-10: 013970244X
- ISBN-13: 978-0139702440
-
Writing Solid Code: Microsoft's Techniques for Developing Bug-Free C Programs
- ISBN-10: 1556155514
- ISBN-13: 978-1556155512
- https://web.archive.org/web/20160316194356/http://www.microsoft.com/mspress/books/1024.aspx
-
Thinking Forth
- ISBN-10: 0976458705
- ISBN-13: 978-0976458708
- http://thinking-forth.sourceforge.net/
-
How to Write Parallel Programs: A First Course
- ISBN 026203171X
- ISBN-13 9780262031714
-
Building Better Applications: A Theory of Efficient Software Development
- ISBN-10: 0442017405
- ISBN-13: 9780442017408
-
Tao of Objects: A Beginner's Guide to Object-Oriented Programming
- ISBN-10: 1558511555
- ISBN-13: 978-1558511552
-
The Design and Construction of Compilers
- ISBN-10: 0471280542
- ISBN-13: 978-0471280545
- Robin Hunter, John Wiley & Sons, 1984
-
- ISBN 0-201-00022-9
- by Alfred V. Aho and Jeffrey D. Ullman...1977
- "the green dragon book"
-
Compilers: Principles, Techniques, and Tools
- ISBN 0-201-10088-6
- Aho & Ullman
- "the red dragon book"
- "This is a much fatter revision which supersedes the above version. The above book is still valuable though."
-
Programming Language Pragmatics
- ISBN-13: 978-0124104099
- ISBN-10: 0124104096
- Michael Scott
- https://www.cs.rochester.edu/~scott/pragmatics/
-
UML Distilled
- by Martin
- ISBN-13: 978-0321193681
- ISBN-10: 0321193687
- Bjarne Stroustrup's books
-
C++ Template Metaprogramming
- ISBN-13: 978-0321227256
- ISBN-10: 0321227255
- Abrahams and Gurtovoy.
-
Metaprogramming Ruby
- ISBN-13: 978-1-941222-12-6
- ISBN 10: 1-941222-12-9
- https://web.archive.org/web/20160609183320/https://pragprog.com/book/ppmetr/metaprogramming-ruby
- https://www.oreilly.com/library/view/metaprogramming-ruby-2/9781941222751/
- See also http://ruby-metaprogramming.rubylearning.com/
Lists ∞
Other ∞
-
Carolyn Snyder:: Paper Prototyping: The Fast and Simple Techniques for Designing and Refining the User Interface ISBN 1558608702
James recommends ∞
-
https://www.satisfice.com/resources
- "These books are useful sources if you want to learn more about the underpinnings of the rapid approach to software testing. Each book on this list held some key insight that helped me make sense of how excellent testers do their work." -- James Bach
Systems Thinking ∞
- Quality Software Management, Vol. 1: Systems Thinking - ISBN 0932633226 - 1991, Gerald M. Weinberg
- An Introduction to General Systems Thinking - ISBN 0932633498 - 1975, Gerald M. Weinberg
- Secrets of Consulting: A Guide to Giving and Getting Advice Successfully - ISBN 0932633013 - 1986, Gerald M. Weinberg
-
General Principles of Systems Design - ISBN 0932633072 - 1988, Gerald M. Weinberg, Daniela Weinberg
Heuristics ∞
- Tools of Critical Thinking - ISBN 0205260837 - David A.Levy, 1997
- Exploring Requirements: Quality Before Design - ISBN 0932633137 - 1989, Don Gause, Gerald M. Weinberg
- How to Solve It - ISBN 0691023565 - 1945, George Polya
-
How to Read and Do Proofs - ISBN 0471510041 - 1990, Daniel Solow
Ways People Think and Learn ∞
- Cognition in the Wild - ISBN 0262581469 - 1996, Edwin Hutchins
- Thinking and Deciding - ISBN 0521659728 - 1994, Jonathan Baron
- Lateral Thinking: Creativity Step by Step - ISBN 0060903252 - 1990, Ed De Bono
- The Social Life of Information - ISBN 1578517087 - 2000, John Seely Brown, Paul Duguid
-
Things That Make Us Smart: Defending Human Attributes in the Age of the Machine - ISBN 0201581299 - 1993, Donald Norman
Scientific Thinking ∞
- The Sciences of the Artificial, 3rd Ed. - ISBN 0262691914 - 1996, Herbert A. Simon
- Conjectures and Refutations: The Growth of Scientific Knowledge - ISBN 0415043182 - 1992, Karl Popper
- Theory and Evidence: The Development of Scientific Reasoning - ISBN 0262112094 - 1996, Barbara Koslowski
- Abductive Inference: Computation, Philosophy, Technology - ISBN 0521434610 - 1996, John R. Josephson, Susan G. Josephson
- The Pleasure of Finding Things Out - ISBN 0738203491 - 1999, Richard Feynman
- Science as a Questioning Process - ISBN 0750303697 - 1996, Nigel Sanitt
-
Administrative Behavior, 4th ed. - ISBN 0684835827 - 1997, Herbert Simon
Software testing ∞
- Testing Computer Software - ISBN 0471358460 - 1992, Cem Kaner, Hung Quoc Nguyen, Jack Falk
- Software Testing: A Craftman's Approach - ISBN 0849308097 - 1995, Paul C. Jorgensen
-
Bad Software: What to Do When Software Fails - ISBN 0471318264 - 1999, Cem Kaner, David Pels
Example of an Implicit Specification ∞
-
The Windows Interface Guidelines for Software Design - ISBN 1556156790 - 1995, Microsoft
Teamwork and Communication in a Technical Team ∞
-
Quality Software Management, Vol. 3: Congruent Action - ISBN 0932633285 - 1994, Gerald M. Weinberg
Articles ∞
Dump ∞
- The Object-Oriented Thought Process, Fifth Edition
- Jonathan Kohl's Collaborative Software Testing blog
- https://www.joelonsoftware.com/
- https://alistapart.com/
-
https://web.archive.org/web/20051231141353/http://www.userinterfacehallofshame.com/
Last updated 2021-10-10 at 16:51:25

added a few more books from an old archive