Skip to content

Commit

Permalink
Add a new post
Browse files Browse the repository at this point in the history
  • Loading branch information
jacksonwuu committed Sep 1, 2023
1 parent 91e71c3 commit 673a682
Show file tree
Hide file tree
Showing 2 changed files with 89 additions and 1 deletion.
87 changes: 87 additions & 0 deletions docs/programming/程序员的经验之谈.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
# 程序员的经验之谈

Date: 2023.04.05

## 伟大的程序员都是产品经理

他们也许不懂产品设计的那些术语,但是不管是代码、API、协议、架构、文档、UI/UX,他们心里都总会有装着「人」,他们会思考别人会如何使用这些东西、为什么某个东西对别人来说很重要……

他们会持续不懈地追求更好的用户体验。

## 尽量构建小而美的东西

你总会有很多机会去做「添加」,但是却很难有机会去做「减少」。你要尽量抵挡这种趋势,专注于核心功能。无论是小到编写一个函数还是大到设计一个架构,尽量让它简单而优雅地完成任务。

## 要记得魔数 7

《Unix 编程艺术》里也提到过,人们无法一下子处理超过 7 个问题,因为人的短期记忆跨度是非常有限的。

这个数字可以让你避免构建过于复杂的东西,比如说你最好不要让一个函数调用别的函数超过 7 个,文档的一个小结最好不要超过 7 个要点……

The Magical Number Seven, Plus or Minus Two[1]

## 永远学习

哪怕你是个老炮,你也永远有不懂的地方,唯一的办法就是持续学习。实际上,不管是程序员还是什么职业,学习都是终身的事情,请成为一个终身学习者。

勇敢承认自己的无知,乐于向他人学习和请教。

## 永远重视基础知识

基础知识是有长期价值的,尽量多花时间掌握基础知识而不是上层那些花里胡哨的东西。因为基础知识才能让你「以不变应万变」,才可以让你理解事物的本质,当你遇到难题时才会更有自信。

## 成长是一个艰辛的过程

你或多或少要经历一些迷茫、痛苦、挣扎,最终才能走到更高的地方。认清楚这个现实,然后再稳扎稳打、踏踏实实地把路走出来。

这是长期主义者应该有的心态。

## 保持写作的习惯

程序员应该保持写作的习惯,不管是博客、文档,还是论文,不管你发布还是不发布这些东西,你都要持续地写、写、写。写作可以让人的思维变得清晰,让交流变得高效。

写作也是一件超高杠杆的事情。

## 数据往往比代码更值钱

永远重视数据,不要把它们搞丢了,让它们保持干净有序,长期来看,数据会给你带来源源不断的收益。

自己的数据资料也要管理好、备份好,因为这些都是你多年的劳动成果,千万不要把安全感寄托在一块磁盘上。

## 不妨多花点时间做决策

我们总是希望马上行动起来,马上看到产出,但这样很容易盲目。我们应该把大部分时间都花在思考问题和调研上,让自己尽量能做出好的决策。你待在越高的位置就应该把越多的时间花在做决策上。

好的决策可以让整个团队甚至是社区少走很多弯路。

## 赚钱并不寒碜

自信地为自己的劳动收取费用。免费做贡献是没问题的,它给你带来了荣誉,但是你为你的劳动收费也是理所应当的。我们为别人创造了价值,那么我们就应该获得应有的报酬。

这也是你尊重自己的知识、技能、时间的一种表现。

## 放下大厂和名校光环

你应该为自己的作品(做的事情)而感到骄傲而不是头衔。不要被那些光环给迷住了双眼,学会客观认识自己,想想看自己刨除那些光环后还剩下什么。

寻找合作伙伴或者员工的时候也是如此,不要被那些光环给眩晕了。

## 接受不完美

工程上很少有一个完美的解决方案,你学会理解那些不完美背后的权衡。尽量避免完美主义,因为在追求完美之外,还有很多更有价值的事情,它们更值得你付出时间和精力。

## 创建项目简单,维护项目难

我们或多或少都有「达芬奇综合征」:不停地开启新项目但是很少有真正完成的。

我们会沉迷在开新项目和收获新知识的快乐之中,但是真正要把一个项目做好是需要长年累月地迭代的,这个过程中大部分时候是枯燥的。

## 是否为科班出身并不重要

很多人会因为自己不是科班出身的而不自信,其实这并不重要,重要的是你是否有兴趣和热情。这个世界上已经有无数的例子向我们证明了这一点。

---

最后我想说,知易行难。懂得道理是几秒钟的事情,但是实践却需要长期地努力。

不过我们要坚信一句话:努力终有回报。
3 changes: 2 additions & 1 deletion mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ copyright: Copyright © 2018 - 2022 Jackson Wu

nav:
- 思考:
- 斯坦福创业课笔记: thinking/斯坦福创业课笔记.md
- 观点集: thinking/观点集.md
- 2023世界趋势: thinking/2023世界趋势.md
- 推荐书单: thinking/推荐书单.md
Expand All @@ -64,7 +65,6 @@ nav:
- 我的写作方法论: thinking/我的写作方法论.md
- 如何避免被误导?: thinking/如何避免被误导?.md
- 十条做产品的经验: thinking/十条做产品的经验.md
- 斯坦福创业课笔记: thinking/斯坦福创业课笔记.md
- 针对迷茫的建议: thinking/针对迷茫的建议.md
- 为什么要做内容输出?: thinking/为什么要做内容输出?.md
- 做事前先问问自己几个问题: thinking/做事前先问问自己几个问题.md
Expand All @@ -77,6 +77,7 @@ nav:
- 创业的小思路: thinking/创业的小思路.md
- 《重来》读书笔记: thinking/《重来》读书笔记.md
- 技术:
- 程序员的经验之谈: programming/程序员的经验之谈.md
- 软件架构模式: programming/软件架构模式.md
- 各大公司的科技博客: programming/各大公司的科技博客.md
- 如何Trouble Shooting?: programming/如何TroubleShooting?.md
Expand Down

0 comments on commit 673a682

Please sign in to comment.