about

在上的课

上完的课

  • 哈佛CS50

2017年书单

在读

  • 无器械健身
  • Instant Innodb
  • SICP page 42
  • Hotspot实战(比深入理解Java虚拟机更加底层一些,讲到了实现层面,但是感觉看得比较吃力)
  • The Garbage Collection Handbook(正统全面的介绍GC的原理、算法和实现的书籍)
  • 大规模分布式存储系统
  • 深入分析Java Web技术内幕
  • the ten-day mba
  • 区块链技术指南
  • 人性的弱点
  • Java Performance
  • TCP/IP详解
  • MySQL internal refman
  • 如何说服别人

Papers

要读

  • 失控
  • go语言程序设计
  • Inside the JVM
  • GC算法和实现

已读

  • 《赢》分企业和个人职业发展两个部分如何去赢-> 赢:获得更大的成功。
  • 《富爸爸、穷爸爸》讲述富人和穷人对待金钱的态度和做事挣钱、管理现金流、管理自己的方式的不同。富人让钱给自己打工,而穷人给钱打工,自律是重要的要素。现金流管理、人员管理、自己管理。
  • Java并发编程实践(书评: Java并发的经典书籍,对锁、线程有深入介绍,在理论和实践方面都有帮助)
  • 深入理解Java虚拟机(JVM的经典入门书籍,能够在使用Java的层次上更近一部了解到底层的JVM机制、GC、字节码等原理)
  • Netty in action(Netty作者的netty使用教程书籍,文字通俗易懂,将netty的关键部分都进行了介绍,是入门netty的好书)
  • redis入门指南(能够对redis有基本使用和认识)
  • 操作系统精髓与设计原理(对操作系统的进程、文件系统、内存管理等有详细介绍)
  • 代码整洁之道(培养什么是好代码、如何能够写出好代码)
  • MySQL技术内幕 Innodb存储引擎(对mysql innodb都比较详细的介绍, 设计mysql架构、innodb特性、索引、锁、事务等的实现机制)
  • 从0到1(商业领域的不同思路,跳出做技术的视角去看问题)
  • MySQL Reference Manual (The InnoDB Storage Engine)(Mysql手册中的Innodb部分,介绍了innodb的锁和事务处理)
  • 《黑客与画家》(美国硅谷创业之父将他对黑客、创业、财富、编程、编程语言的见解,作者把很多难懂的问题一语道破)
  • Peopleware(人件,讲述关于软件行业中管理、工作效率、工作环境、团队等方方面面的论点)
  • Java8 Lambdas: Functional Programming for tha Masses(很薄的能够整体了解函数式编程、lambda、stream等java8新特性的书, 文中提出了一些关键点: labmda将行为(代码)进行传递, Stream流操作简化集合操作,简洁的代码通常是易维护、不容易出错的, 使用lambda简化、强化一些设计模式、设计原则的实现)
  • 稀缺(讲稀缺如何俘获大脑、占据带宽的,没有余闲导致借用等行为进而导致更大稀缺的恶性循环,通过财务、时间、人际关系等不同的形式进行阐述稀缺,并解释了穷人为什么越穷的原因,并给出了避免稀缺和逃出稀缺的方法)
  • Java Performance Companion(主要讲G1、SA的,中文版的翻译实在是难以阅读, 在看g1论文不懂的时候可以结合理解)

放上stackoverflow上的一个评论

Code Complete (2nd edition) by Steve McConnell
The Pragmatic Programmer
Structure and Interpretation of Computer Programs
The C Programming Language by Kernighan and Ritchie
Introduction to Algorithms by Cormen, Leiserson, Rivest & Stein
Design Patterns by the Gang of Four
Refactoring: Improving the Design of Existing Code
The Mythical Man Month
The Art of Computer Programming by Donald Knuth
Compilers: Principles, Techniques and Tools by Alfred V. Aho, Ravi Sethi and Jeffrey D. Ullman
Gödel, Escher, Bach by Douglas Hofstadter
Clean Code: A Handbook of Agile Software Craftsmanship by Robert C. Martin
Effective C++
More Effective C++
CODE by Charles Petzold
Programming Pearls by Jon Bentley
Working Effectively with Legacy Code by Michael C. Feathers
Peopleware by Demarco and Lister
Coders at Work by Peter Seibel
Surely You’re Joking, Mr. Feynman!
Effective Java 2nd edition
Patterns of Enterprise Application Architecture by Martin Fowler
The Little Schemer
The Seasoned Schemer
Why’s (Poignant) Guide to Ruby
The Inmates Are Running The Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity
The Art of Unix Programming
Test-Driven Development: By Example by Kent Beck
Practices of an Agile Developer
Don’t Make Me Think
Agile Software Development, Principles, Patterns, and Practices by Robert C. Martin
Domain Driven Designs by Eric Evans
The Design of Everyday Things by Donald Norman
Modern C++ Design by Andrei Alexandrescu
Best Software Writing I by Joel Spolsky
The Practice of Programming by Kernighan and Pike
Pragmatic Thinking and Learning: Refactor Your Wetware by Andy Hunt
Software Estimation: Demystifying the Black Art by Steve McConnel
The Passionate Programmer (My Job Went To India) by Chad Fowler
Hackers: Heroes of the Computer Revolution
Algorithms + Data Structures = Programs
Writing Solid Code
JavaScript - The Good Parts
Getting Real by 37 Signals
Foundations of Programming by Karl Seguin
Computer Graphics: Principles and Practice in C (2nd Edition)
Thinking in Java by Bruce Eckel
The Elements of Computing Systems
Refactoring to Patterns by Joshua Kerievsky
Modern Operating Systems by Andrew S. Tanenbaum
The Annotated Turing
Things That Make Us Smart by Donald Norman
The Timeless Way of Building by Christopher Alexander
The Deadline: A Novel About Project Management by Tom DeMarco
The C++ Programming Language (3rd edition) by Stroustrup
Patterns of Enterprise Application Architecture
Computer Systems - A Programmer’s Perspective
Agile Principles, Patterns, and Practices in C# by Robert C. Martin
Growing Object-Oriented Software, Guided by Tests
Framework Design Guidelines by Brad Abrams
Object Thinking by Dr. David West
Advanced Programming in the UNIX Environment by W. Richard Stevens
Hackers and Painters: Big Ideas from the Computer Age
The Soul of a New Machine by Tracy Kidder
CLR via C# by Jeffrey Richter
The Timeless Way of Building by Christopher Alexander
Design Patterns in C# by Steve Metsker
Alice in Wonderland by Lewis Carol
Zen and the Art of Motorcycle Maintenance by Robert M. Pirsig
About Face - The Essentials of Interaction Design
Here Comes Everybody: The Power of Organizing Without Organizations by Clay Shirky
The Tao of Programming
Computational Beauty of Nature
Writing Solid Code by Steve Maguire
Philip and Alex’s Guide to Web Publishing
Object-Oriented Analysis and Design with Applications by Grady Booch
Effective Java by Joshua Bloch
Computability by N. J. Cutland
Masterminds of Programming
The Tao Te Ching
The Productive Programmer
The Art of Deception by Kevin Mitnick
The Career Programmer: Guerilla Tactics for an Imperfect World by Christopher Duncan
Paradigms of Artificial Intelligence Programming: Case studies in Common Lisp
Masters of Doom
Pragmatic Unit Testing in C# with NUnit by Andy Hunt and Dave Thomas with Matt Hargett
How To Solve It by George Polya
The Alchemist by Paulo Coelho
Smalltalk-80: The Language and its Implementation
Writing Secure Code (2nd Edition) by Michael Howard
Introduction to Functional Programming by Philip Wadler and Richard Bird
No Bugs! by David Thielen
Rework by Jason Freid and DHH
JUnit in Action