Books are marked as [S] as for starters.
- Hackers: Heroes of the Computer Revolution [S]
- Hackers & Painters: Big Ideas from the Computer Age. Paul Graham. [S]
- Linux and the Unix Philosophy. Mike Gancarz. [S]
- Free as in Freedom. Richard Stallman. (https://en.wikisource.org/wiki/Free_as_in_Freedom_(2002)) [S]
- Open Sources, Chris DiBona & Sam Ockman (free to read here - https://www.oreilly.com/openbook/opensources/book/index.html)
- The Architecture of Open Source Applications. (http://aosabook.org/en/index.html) [S]
- Ghost in the Wires
- Mother American Night
Writing & Blogging¶
- On Writing, Stephen King[S]
- Bird by Bird, Anne Lamott
- On Writing Well, William Zinsser
- English Composition and Grammar. John E. Warriner. [S]
- Good English: How to Write It. G. H. Valins. [S]
- The Elements of Style. Willam Strunk Jr. and E. B. White. [S]
Design & Presentations¶
- The Non-Designer’s Design Book, Robin Williams[S]
- The Non-Designer’s Presentation Book, Robin Williams (for creating)
- Presentation Zen, Garr Reynolds (for creating)
- Confessions of a Public Speaker, Scott Berkun (for delivering)
- Don’t Make Me Think, Steve Krug
- Visualize This. Nathan Yau.
- i want 2 do project. tell me wat 2 do (http://www.shakthimaan.com/what-to-do.html) [S]
- Men of Mathematics, E. T. Bell.
- Programming Pearls. Jon Bentley.
- Functional Thinking. Neal Ford.
- A Discipline of Programming. Edsger W. Dijkstra.
- The Passionate Programmer. Chad Fowler. [S]
- 97 Things Every Programmer Should Know. Kevlin Henney. [S]
- How to Prove It. A Structured Approach. Daniel J. Velleman. [S]
- Programming Language Pragmatics. Michael L. Scott.
- Thinking Mathematically. J Mason, L Burton, K Stacey.
- Patterns of Software: Tales from the Software Community. Richard P. Gabriel
- Program Construction. Roland Backhouse.
- Small Memory Software. Charles Weir, James Noble.
- Beautiful Code. Leading Programmers Explain How They Think. Andy Oram, Greg Wilson. [S]
- Beautiful Testing. Tim Riley, Adam Goucher. [S]
- Beautiful Data. Toby Segaran, Jeff Hammerbacher. [S]
- Discrete Mathematics using a Computer. John O’Donnell, Cordelia Hall. [S]
- Discrete Mathematics for Computing. Peter Grossman. [S]
- C Interfaces and Implementations: Techniques for Creating Reusable Software. David R. Hanson.
- Expert C Programming. Peter van der Linden.
- The Pragmatic Programmer: From Journeyman to Master. Andrew Hunt. David Thomas. [S]
- Agile Software Development: The Cooperative Game. Alistair Cockburn. [S]
- Refactoring: Improving the Design of Existing Code. Martin Fowler, Kent Beck et. al.
- The Mythical Man-Month [S]
- The 7 Habits of Highly Effective People. Stephen R. Covey. [S]
- How to Get More Done: Seven Days to Achieving More. Fergus O’ Connell. [S]
- How to Win Friends and Influence People. Dale Carnegie. [S]
- Beautiful Teams. Andrew Stellman, Jennifer Greene. [S]
- Mastery, Robert Greene
- Deep Work, Cal Newport
- The War of Art, Steven Pressfield
- Do the Work, Steven Pressfield
- Tuesdays with Morrie. [S]