├── .gitignore
├── .npmrc
├── README.md
├── components
└── Counter.vue
├── netlify.toml
├── package-lock.json
├── package.json
├── preview.jpg
├── slides-export.pdf
├── slides.md
└── vercel.json
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | .DS_Store
3 | dist
4 | *.local
5 | index.html
6 | .remote-assets
7 | components.d.ts
8 |
--------------------------------------------------------------------------------
/.npmrc:
--------------------------------------------------------------------------------
1 | # for pnpm
2 | shamefully-hoist=true
3 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # 程序员的软技能
2 |
3 | [Preview](https://programmer-soft-skills.vercel.app/1)
4 |
5 |
6 | [Download PDF](./slides-export.pdf)
7 |
8 | 
--------------------------------------------------------------------------------
/components/Counter.vue:
--------------------------------------------------------------------------------
1 |
12 |
13 |
14 |
15 |
25 | {{ counter }}
26 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/netlify.toml:
--------------------------------------------------------------------------------
1 | [build.environment]
2 | NODE_VERSION = "14"
3 |
4 | [build]
5 | publish = "dist"
6 | command = "npm run build"
7 |
8 | [[redirects]]
9 | from = "/*"
10 | to = "/index.html"
11 | status = 200
12 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "soft-skills",
3 | "private": true,
4 | "scripts": {
5 | "build": "slidev build",
6 | "dev": "slidev --open",
7 | "export": "slidev export"
8 | },
9 | "dependencies": {
10 | "@slidev/cli": "^0.33.0",
11 | "@slidev/theme-apple-basic": "^0.20.0",
12 | "@slidev/theme-bricks": "^0.0.2",
13 | "@slidev/theme-default": "*",
14 | "@slidev/theme-seriph": "*"
15 | },
16 | "devDependencies": {
17 | "playwright-chromium": "^1.22.2"
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/preview.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/forrestchang/programmer-soft-skills/49952b5c88d52d432825301071d1befd695cd024/preview.jpg
--------------------------------------------------------------------------------
/slides-export.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/forrestchang/programmer-soft-skills/49952b5c88d52d432825301071d1befd695cd024/slides-export.pdf
--------------------------------------------------------------------------------
/slides.md:
--------------------------------------------------------------------------------
1 | ---
2 | # try also 'default' to start simple
3 | theme: default
4 |
5 | # random image from a curated Unsplash collection by Anthony
6 | # like them? see https://unsplash.com/collections/94734566/slidev
7 | background: https://source.unsplash.com/collection/94734566/1920x1080
8 |
9 | # apply any windi css classes to the current slide
10 | class: 'text-center'
11 |
12 | # https://sli.dev/custom/highlighters.html
13 | highlighter: shiki
14 |
15 | # show line numbers in code blocks
16 | lineNumbers: false
17 |
18 | # some information about the slides, markdown enabled
19 | info: |
20 | ## Slidev Starter Template
21 | Presentation slides for developers.
22 |
23 | Learn more at [Sli.dev](https://sli.dev)
24 |
25 | # persist drawings in exports and build
26 | drawings:
27 | persist: false
28 | ---
29 |
30 | # 程序员的软技能
31 |
32 | 代码之外的生存指南
33 |
34 |
35 |
36 | Press Space for next page
37 |
38 |
39 |
40 |
50 |
51 |
54 |
55 | ---
56 |
57 | # 介绍
58 |
59 | 作为一名程序员,除了需要掌握「硬技能」之外(例如编程语言、架构设计等),也需要一些「软技能」来傍身,这些「软技能」可以帮助你更好地成长。
60 |
61 | 今天主要会分享以下几个主题的内容:
62 |
63 | - 🕐 **时间管理** - 如何更好地规划任务,管理时间,提高生产力
64 | - 📚 **快速学习** - 如何快速掌握一门技能
65 | - 👏 **个人营销** - 如何提升影响力
66 |
67 |
71 |
72 |
83 |
84 | ---
85 | layout: center
86 | ---
87 |
88 | # 🕐 **时间管理**
89 |
90 | ---
91 | layout: two-cols
92 | ---
93 |
94 | # Getting Things Done
95 |
96 | - David Allen
97 | - 中文版:《搞定》
98 | - [微信读书](https://weread.qq.com/web/bookDetail/c0e328b05cf118c0e998aee)
99 | - 一种任务管理的流程
100 | - 类似于我们现在使用的 Jira 上的 Workflow
101 | - 核心:清空大脑
102 |
103 | ::right::
104 |
105 |
106 |
107 |
108 | ---
109 | layout: two-cols
110 | ---
111 |
112 | # GTD Workflow
113 |
114 | 1. Capture 收集
115 | - Inbox
116 | - Quick Capture
117 | 2. Calarify 厘清
118 | - 区分是否是可行动的
119 | - Project? Next Action? Reference?
120 | 3. Plan 规划
121 | - 找到 Next Action
122 | - Weekly Plan -> Daily Plan
123 | 4. Do 行动
124 | - Pomodoro Technique
125 |
126 |
127 |
128 | 👉 [用 OmniFocus 3 完成了上千个任务后,我总结出了这些经验](https://sspai.com/post/49105)
129 |
130 | ::right::
131 |
132 |
133 |
134 | ---
135 | layout: two-cols
136 | ---
137 |
138 | # 工具
139 |
140 | - 滴答清单
141 | - Todoist
142 | - OmniFocus
143 | - Things 3
144 |
145 | ::right::
146 |
147 |
148 |
149 | ---
150 | layout: two-cols
151 | ---
152 |
153 | # 番茄工作法
154 |
155 | - Pomodoro Technique
156 | - 一种注意力训练的方法
157 | - 流程
158 | - 设定好一个目标
159 | - 确定每个番茄的时间(一般是 25 分钟)
160 | - 开始计时并专注在当前的目标上,直到这个番茄时间结束
161 | - 如果有插入的事情,就先记录下来(之前讲到的 Inbox)
162 | - 完成一个番茄后休息 5 分钟
163 | - 循环
164 |
165 | ::right::
166 |
167 |
168 |
169 | ---
170 | layout: two-cols
171 | ---
172 |
173 | # 深度工作 Deep Work
174 |
175 | - Cal Newport
176 | - CS 教授,畅销书作家,博客
177 | - 深度工作:专注、不间断、不分心的工作,这种工作会将你的认知能力推到极限
178 | - 浮浅工作:这类工作对认知要求不高,并且不能创造太多价值,任何人都可以做到
179 |
180 |
181 |
182 |
183 | 👉 [知识工作者的深度工作系统 Part 1](https://twitter.com/Tisoga/status/1515663828536598528)
184 |
185 |
186 | 👉 [知识工作者的深度工作系统 Part 2](https://twitter.com/Tisoga/status/1516040155852804098)
187 |
188 | ::right::
189 |
190 |
191 |
192 | ---
193 | layout: two-cols
194 | ---
195 |
196 | # Maker's Schedule vs Manager's Schedule
197 |
198 | 👉 [Maker's Schedule, Manager's Schedule](http://www.paulgraham.com/makersschedule.html)
199 |
200 | - Paul Graham
201 | - YCombinator, 黑客与画家
202 | - Makers
203 | - 大段并且连续的时间
204 | - 避免 context switching
205 | - Managers
206 | - 被会议分割成一个个小的时间段
207 |
208 | Tips:
209 | - 找到自己的 Maker 时间
210 | - Paul 创业的时候是白天开会,然后从 18:00 开始写代码到 03:00
211 |
212 |
213 | ::right::
214 |
215 |
216 |
217 |
222 |
223 | ---
224 | layout: two-cols
225 | ---
226 |
227 | # 案例:Cal Newport
228 |
229 | - [Deep Habits: Plan Your Week in Advance](https://www.calnewport.com/blog/2014/08/08/deep-habits-plan-your-week-in-advance/)
230 | - [How to schedule deep work: Time blocking](https://youtu.be/ykNcnrNvpTI)
231 |
232 | ::right::
233 |
234 |
235 |
236 | ---
237 | layout: two-cols
238 | ---
239 |
240 | # 案例:Lex Fridman
241 |
242 | - MIT 研究员,知名 Podcast 主播
243 | - 采访过的对象:Elon Musk, Mark Zuckerberg, Ray Dalio 等
244 | - Podcast: [Lex Fridman YouTube](https://www.youtube.com/c/lexfridman/videos)
245 | - [A day in my life](https://youtu.be/0m3hGZvD-0s)
246 | - 每天工作 12 小时,8 小时深度工作 + 4 小时低强度工作
247 | - 上午和下午各有 4 小时的 deep work session,在这个 4 小时中,Lex 不会让任何事情打断自己,也绝不刷社交网络
248 |
249 | ::right::
250 |
251 |
252 |
253 | ---
254 | layout: two-cols
255 | ---
256 |
257 | # 案例:George Hotz
258 |
259 | - 计算机黑客,2007 年破解了 iPhone,2009 年破解了 PS3
260 | - 低成本自动驾驶解决方案 comma.ai 的创始人
261 | - 经常在 Twitch 上直播 live coding
262 | - 每次持续 5+ 小时
263 | - [从零实现一个 SLAM (Simulataneous localization and mapping)](https://youtu.be/7Hlb8YX2-W8)
264 | - 同时定位与地图构建,自动驾驶的核心技术之一
265 |
266 | ::right::
267 |
268 |
269 |
270 | ---
271 | layout: two-cols
272 | ---
273 |
274 | # 间隙日志 Interstitial Journal
275 |
276 | 👉 [Replace Your To-Do List With Interstitial Journaling To Increase Productivity](https://betterhumans.pub/replace-your-to-do-list-with-interstitial-journaling-to-increase-productivity-4e43109d15ef)
277 |
278 |
279 |
280 | - 写下来是为了更好地思考
281 | - 可以避免拖延
282 | - 记录下日志方便之后回溯
283 |
284 | ::right::
285 |
286 |
287 |
288 | ---
289 | layout: center
290 | ---
291 |
292 | # 📚 **快速学习**
293 |
294 | ---
295 |
296 | # 主动学习
297 |
298 | - 带着目的去学习
299 | - 解决某个问题
300 | - 了解某个领域的知识
301 | - 学院派
302 | - 从零开始学习,学完一部分再学另一部分
303 | - 耗时长
304 | - 如果没有用起来很容易忘记
305 | - 实用派
306 | - 基于目的的学习方式
307 | - 先表面,再深入
308 | - 以用起来为主
309 |
310 | ---
311 | layout: two-cols
312 | ---
313 |
314 | # 学习金字塔
315 |
316 | - 主动学习与被动学习
317 | - 做和教是最好的学习方式
318 |
319 |
320 |
321 |
322 |
323 | ::right::
324 |
325 |
326 |
327 | ---
328 | layout: quote
329 | ---
330 |
331 | You don't learn, then start. You start, then learn. -- Sahil Lavingia
332 |
333 |
334 |
335 |
347 |
348 | ---
349 | layout: two-cols
350 | ---
351 |
352 | # Do -> Learn
353 |
354 | - Sahil Lavingia
355 | - Pinterest #2
356 | - Gumroad CEO
357 | - [Reflecting on My Failure to Build a Billion-Dollar Company](https://sahillavingia.com/reflecting)
358 | - 先行动起来,遇到不会的再去学习
359 | - Get Your Hands Dirty
360 | - 一个 🌰 : Figma 的学习经验
361 | - 分钟级别速成
362 | - [Figma UI Design Tutorial: Get Started in Just 24 Minutes! (2022)](https://youtu.be/FTFaQWZBqQ8)
363 | - 用到什么查什么
364 |
365 |
366 | ::right::
367 |
368 |
369 |
370 | ---
371 |
372 | # Feynman Technique
373 |
374 | - 理论物理学家
375 | - 量子力学奠基人之一,1965 年获得诺贝尔物理学奖
376 | - 费曼物理学讲义
377 | - [别逗了,费曼先生](https://weread.qq.com/web/bookDetail/cd732d70718db043cd73bb3)
378 |
379 |
380 |
381 |
386 |
387 | ---
388 | layout: two-cols
389 | ---
390 |
391 | # Feynman Technique
392 |
393 | 1. 选择一个想要学习的主题
394 | 2. 把这个主题讲给一个完全不会的人听
395 | 3. 如果讲的过程中卡壳了,就回过头去重新把卡壳的这部分学习一下
396 | 4. 简化所讲的内容,能不能用更简单的话来讲
397 |
398 | ::right::
399 |
400 |
401 |
402 | ---
403 |
404 | # Feynman Technique
405 |
406 | - 写博客
407 | - 2014 - 2022
408 | - [Jiayuan Thoughts](https://blog.jiayuanzhang.com/)
409 | - 利用 Twitter 来进行公开写作
410 | - 2020 年公开写作实验
411 | - [利用 Twitter 来进行低成本写作](https://blog.jiayuanzhang.com/post/low-cost-writing-with-twitter/)
412 | - 参与技术分享
413 | - 2019, Python Open Days, [How to Build a Web Framework from Scratch](https://youtu.be/p8GXdWWHPQU)
414 | - 2019, PyCon, [The Past and Future of GIL](https://slide.jiayuanzhang.com/the-past-and-future-of-gil/#/)
415 |
416 | ---
417 | layout: two-cols
418 | ---
419 |
420 | # 知识的复利
421 |
422 | - 注重积累
423 | - 建立自己的知识管理系统
424 |
425 |
426 |
427 |
428 |
429 |
430 | ::right::
431 |
432 |
433 |
434 | ---
435 | layout: center
436 | ---
437 |
438 | # 👏 **个人营销**
439 |
440 | ---
441 | layout: two-cols
442 | ---
443 |
444 | # 把自己当做产品
445 |
446 | - 找到 PMF
447 | - [Do Things That Don't Scale - Paul Graphaham](http://paulgraham.com/ds.html)
448 | - 创造价值
449 | - 持续迭代
450 | - 案例:[左耳朵耗子(陈皓)](https://coolshell.cn/haoel)
451 | - 2002 年开始写技术博客
452 | - 极客时间专栏「左耳听风」售出 15 万份(收入约 5000 万+,实际可能没有这么多)
453 | - 案例:[阮一峰](http://www.ruanyifeng.com/)
454 | - 《黑客与画家》、《软件随想录》等书的译者
455 | - 坚持博客输出内容
456 | - 科技爱好者周刊(目前已经更新到 211 期)
457 |
458 | ::right::
459 |
460 |
461 |
462 | ---
463 | layout: two-cols
464 | ---
465 |
466 | # Show Your Work
467 |
468 | - Think in system
469 | - Share something small everyday
470 | - Tell good stories
471 | - Teach what you know
472 | - Charge a fair price
473 | - Stick around, don't quit
474 |
475 | ::right::
476 |
477 |
478 |
479 | ---
480 |
481 | # 建立联系
482 |
483 | - 多利用公司资源和不同的人 1:1
484 | - Project: 每天和不同部门/职业的人 1:1
485 | - 画板策略 - Ryan Holiday
486 | - [The Canvas Strategy](https://ryanholiday.net/the-canvas-strategy/)
487 | - Find canvases for other people to paint on.
488 | - 优先为他人创造价值
489 | - 放下 Ego
490 |
491 | ---
492 |
493 | # 建立联系
494 |
495 |
496 |
497 | ---
498 |
499 | # 建立联系
500 |
501 |
502 |
503 | ---
504 |
505 | # 建立联系
506 |
507 |
508 |
509 | ---
510 | layout: center
511 | ---
512 |
513 | # Q&A
--------------------------------------------------------------------------------
/vercel.json:
--------------------------------------------------------------------------------
1 | {
2 | "rewrites": [
3 | { "source": "/(.*)", "destination": "/index.html" }
4 | ]
5 | }
6 |
--------------------------------------------------------------------------------