A Reading List of a CSer

Some of them have been studied in my professional courses, some are tutorials for my own extracurricular exploration, and others are on my to read list. They are all good materials and already categoried. The memories will fade with time, including the knowledge we learned. Old man Consucius once said, “Gain new insights through reviewing old material”. The following list worth reading in spare time.

Introduction Books

  • 计算机组成原理, 唐朔飞
  • Compilers Principles, Techniques, and Tools (编译原理)
  • Operating System Concepts (操作系统概念)
  • 计算机网络实验指导书
  • TCP/IP Illustrated (TCP/IP协议详解)
  • Introduction to Algorithms (算法导论)
  • Database System Concepts (数据库系统概论)

Languages & Frameworks


Machine Learning

  • 统计学习方法

Programming Skills

Source Code Reading

  • Orange’S:一个操作系统的实现
  • Understanding the Linux Kernel (深入理解Linux内核)
  • Understanding the JVM (深入理解Java虚拟机)
  • Android Source Code


  • 亿级流量网站架构核心技术
  • 大型网站技术架构:核心原理与案例分析
  • Clean Architecture (架构整洁之道)
  • Java Application Architecture (JAVA应用架构设计)

Software Engineering

  • Continuous Delivery (持续交付)
  • Succeeding with Agile: Software Development using Scrum (Scrum敏捷软件开发)
  • The Mythical Man-Month (人月神话)