Advertisement
Mobius_Shrimp

A Complete CS Education Reading List

Nov 21st, 2017
2,046
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.59 KB | None | 0 0
  1. # A Complete CS Education Reading List
  2.  
  3. ## How Computers Work - A Casual Intro
  4. 1. The Pattern on the Stone - Hills
  5. 2. Code - Petzold
  6.  
  7. ## Actual Programming
  8. 1. Haskell Programming From First Principles
  9. - http://haskellbook.com
  10. 2. Parallel and Concurrent Programming in Haskell
  11. 3. Software Foundations
  12. - https://softwarefoundations.cis.upenn.edu
  13. 4. The Idris Tutorial
  14. - http://docs.idris-lang.org/en/latest/tutorial/index.html
  15. 5. Functional C
  16. 6. Modern C
  17. - http://icube-icps.unistra.fr/index.php/File:ModernC.pdf
  18. 7. Understanding and Using C Pointers
  19. 8. Elements of Programming
  20.  
  21. # Unix, Operating Systems, and Computer Architecture
  22. 1. Think Unix
  23. 2. Classic Shell Scripting
  24. 3. Linux From Scratch
  25. - http://www.linuxfromscratch.org/
  26. 4. Structured Computer Organization
  27. 5. Operating Systems in Three Easy Pieces
  28. - http://pages.cs.wisc.edu/~remzi/OSTEP/
  29. 6. Operating Systems Design and Implementation
  30. 7. Computer Networks - Tanenbaum
  31.  
  32. ## Language Design
  33. 1. Build Your Own Lisp
  34. - http://www.buildyourownlisp.com/
  35. 2. Engineering a Compiler
  36. 3. Programming Language Pragmatics
  37. 4. Practical Foundations for Programming Languages
  38.  
  39. ## Math
  40. 1. How to Read and Do Proofs
  41. 2. A Book of Abstract Algebra
  42. 3. A First Course in Graph Theory
  43. 4. Conceptual Mathematics
  44. 5. Seven Sketches in Compositionality: An Invitation to Applied Category Theory
  45. - https://arxiv.org/abs/1803.05316
  46. 6. Category Theory for Programmers
  47. - https://bartoszmilewski.com/2014/10/28/category-theory-for-programmers-the-preface/
  48. 7. Introduction to Lattices and Order
  49. 8. Thinking in Systems
  50. 9. Think Complexity
  51. 10. Concrete Mathematics
  52. 11. Probability Theory: The Logic of Science
  53.  
  54. ## Databases
  55. 1. The Reasoned Schemer
  56. 2. Database Design and Relational Theory: Normal Forms and All That Jazz
  57.  
  58. ## Algorithms
  59. 1. Algorithmics: The Spirit of Computing
  60. 2. Grokking Algorithms
  61. 3. Algorithms and Data Structures - Wirth
  62. - http://www.inr.ac.ru/~info21/ADen/
  63. 4. Purely Functional Data Structures
  64. 5. Pearls of Functional Algorithm Design
  65. 6. The Algorithm Design Manual
  66. 7. Clever Algorithms
  67. - http://www.cleveralgorithms.com/nature-inspired/index.html
  68.  
  69. ## Security
  70. 1. The Art of Software Security Assessment: Identifying and Preventing Software Vulnerabilities
  71. 2. Data Hiding: Exposing Concealed Data in Multimedia, Operating Systems, Mobile Devices, and Network Protocols
  72. 3. Crypto 101
  73. - https://www.crypto101.io/
  74. 4. Serious Cryptography
  75.  
  76. ## Software Development
  77. 1. Patterns, Principles, and Practices of Domain-Driven Design
  78. 2. Clean Code: A Handbook of Agile Software Craftsmanship
  79. 3. Literate Programming
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement