Skip to content

Commit 741068c

Browse files
ying.liuying.liu
authored andcommitted
revise learn programming
1 parent 27d66fc commit 741068c

File tree

2 files changed

+23
-1
lines changed

2 files changed

+23
-1
lines changed

learning/深度学习.md renamed to learning/how-to-learn-programming.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
作为程序员,我们一直思考应该掌握哪些技能,从而能够从事更有挑战性和满足感的工作。熟练掌握 Angular 或 Spring 这类流行框架是一个合格的业务应用程序员的基本要求。开发出微信或 [TiDB](https://github.com/pingcap/tidb)这种水平的软件需要更加深层的技术知识。所有的技能,可以浅尝即止,但是要做到 10 倍效率和接受挑战,需要深度学习,从基础开始。
44

5-
想通过看几本书就成为 10 倍效专业程序员,就好像看几次世界杯就想成为职业足球球员,最大的用处就是知道了差距
5+
想通过看几本书就成为 10 倍效专业程序员,就好像看几次世界杯就想成为职业足球球员,最大的好处可能就是知道了差距。[Teach Yourself Programming in Ten Years](http://norvig.com/21-days.html) 讨论了 24 小时学习编程和 10 年学习编程的本质区别
66

77
## 1 基础知识
88

learning/programming-tips.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# 编程常识
2+
3+
## 应该知道的数字
4+
5+
Latency Comparison Numbers (~2012)。 互动的[更新版本](https://people.eecs.berkeley.edu/~rcs/research/interactive_latency.html).
6+
7+
---
8+
9+
L1 cache reference 0.5 ns
10+
Branch mispredict 5 ns
11+
L2 cache reference 7 ns 14x L1 cache
12+
Mutex lock/unlock 25 ns
13+
Main memory reference 100 ns 20x L2 cache, 200x L1 cache
14+
Compress 1K bytes with Zippy 3,000 ns 3 us
15+
Send 1K bytes over 1 Gbps network 10,000 ns 10 us
16+
Read 4K randomly from SSD* 150,000 ns 150 us ~1GB/sec SSD
17+
Read 1 MB sequentially from memory 250,000 ns 250 us
18+
Round trip within same datacenter 500,000 ns 500 us
19+
Read 1 MB sequentially from SSD* 1,000,000 ns 1,000 us 1 ms ~1GB/sec SSD, 4X memory
20+
Disk seek 10,000,000 ns 10,000 us 10 ms 20x datacenter roundtrip
21+
Read 1 MB sequentially from disk 20,000,000 ns 20,000 us 20 ms 80x memory, 20X SSD
22+
Send packet CA->Netherlands->CA 150,000,000 ns 150,000 us 150 ms

0 commit comments

Comments
 (0)