From ae21ae289a6acc1aca08947b38982d76f6a9b4f6 Mon Sep 17 00:00:00 2001 From: 7Wate Date: Mon, 14 Nov 2022 10:14:36 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=9A=E5=AE=A2=EF=BC=9A=E3=80=8C=E8=BD=AC?= =?UTF-8?q?=E8=BD=BD=E3=80=8D=E5=81=9A=E4=BA=86=206=20=E5=B9=B4=E7=A8=8B?= =?UTF-8?q?=E5=BA=8F=E5=91=98=EF=BC=8C=E6=88=91=E5=AD=A6=E5=88=B0=E7=9A=84?= =?UTF-8?q?=2010=20=E6=9D=A1=E7=BB=8F=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...½¬è½½ã€åšäº† 6 年程åºå‘˜ï¼Œæˆ‘学到的 10 æ¡ç»éªŒ.md | 115 ++++++++++++++++++ 1 file changed, 115 insertions(+) create mode 100644 blog/「转载ã€åšäº† 6 年程åºå‘˜ï¼Œæˆ‘学到的 10 æ¡ç»éªŒ.md diff --git a/blog/「转载ã€åšäº† 6 年程åºå‘˜ï¼Œæˆ‘学到的 10 æ¡ç»éªŒ.md b/blog/「转载ã€åšäº† 6 年程åºå‘˜ï¼Œæˆ‘学到的 10 æ¡ç»éªŒ.md new file mode 100644 index 00000000..e82e978f --- /dev/null +++ b/blog/「转载ã€åšäº† 6 年程åºå‘˜ï¼Œæˆ‘学到的 10 æ¡ç»éªŒ.md @@ -0,0 +1,115 @@ +--- +title: 「转载ã€åšäº† 6 年程åºå‘˜ï¼Œæˆ‘学到的 10 æ¡ç»éªŒ +description: 「转载ã€åšäº† 6 年程åºå‘˜ï¼Œæˆ‘学到的 10 æ¡ç»éªŒ +keywords: +- Randy +- 程åºå‘˜ +- ç»éªŒ +tags: +- æ„Ÿæ‚Ÿ +authors: +- Randy Lu +date: 2022-11-14 +--- + +- ä¿æŒä¸€é¢—解决问题的心 +- 了解你的用户 +- ä¸è¦æ‹¿è‡ªå·±çš„å°ºå­åŽ»åº¦é‡åˆ«äºº +- ä¿æŒå­¦ä¹ ã€be open-mind +- 想清楚,å†ä¸‹æ‰‹å†™ä»£ç  +- 敬ç•ç”¨æˆ· +- 跨团队åˆä½œæ˜¯åˆ©ç›Šäº¤æ¢ +- 用别人的语言交æµï¼Œä¼šæœ‰æ„想ä¸åˆ°çš„收获 +- ç†è§£å‰äººå†™çš„「烂代ç ã€ +- 在技术和工作之间找到平衡点 + +> æ¥æºï¼š[åšäº† 6 年程åºå‘˜ï¼Œæˆ‘学到的 10 æ¡ç»éªŒ | Randy's Blog](https://lutaonan.com/blog/things-i-learnt-after-6-years-as-software-engineer/);仅学术引用,著作æƒå½’作者所有。 + +## ä¿æŒä¸€é¢—解决问题的心 + +按照我的观察,那些在工作中用技术å–胜的人们共åŒç‚¹éƒ½åœ¨äºŽä»–们能ä¿æŒä¸€é¢—解决问题的心。他们å¯ä»¥çŽ‡å…ˆæƒ³åˆ°ä¸€ç§æ›´ä¼˜çš„手段解决存在的问题(一般是效率问题)。他们ä¸æ˜¯å—…觉特别çµæ•æˆ–者技术特别强,而是当他们é‡åˆ°äº†é—®é¢˜ï¼Œä¸æ˜¯æŠŠå®ƒä½œä¸ºæŠ±æ€¨çš„è¯é¢˜ï¼Œè€Œæ˜¯å¼€å§‹æ€è€ƒè¿™ä¸ªé—®é¢˜ä¸ºä»€ä¹ˆæ²¡äººè§£å†³ã€åº”该怎么解决,然åŽæŠŠå®ƒå®žçŽ°å‡ºæ¥ã€‚è¿™ç§å¿ƒæ€åœ¨èŒåœºä¸Šç‰¹åˆ«ç¨€ç¼ºã€‚ + +我在创业公å¸çš„时候åšä¸€ä¸ªå›¾æ–‡æŽ’版的 App, 设计师会设计一些模æ¿ï¼Œç„¶åŽäº¤ç»™æˆ‘æ¥å®žçŽ°ã€‚当时我们有很多模æ¿ï¼Œä¸ºäº†æµ‹è¯•è¿™äº›æ¨¡æ¿å®žçŽ°åœ¨ä¸åŒçš„手机å±å¹•å¤§å°ä¼šæœ‰ä»€ä¹ˆé—®é¢˜ï¼Œæˆ‘们è¦èŠ±ç‰¹åˆ«å¤šçš„精力。å¯ä»¥æƒ³è±¡æµ‹è¯•çš„æ•°é‡ = 模æ¿æ•°é‡ * å±å¹•å°ºå¯¸çš„æ•°é‡ã€‚åŽæ¥æˆ‘用 puppeteer 写了个自动生æˆä¸åŒå±å¹•å’Œæ¨¡æ¿çš„截图,直接交给设计师一个一个地看。节çœäº†å¤§é‡çš„时间。这个事情没什么技术å«é‡ï¼Œä½†å®ƒè§£å†³äº†å¾ˆé‡è¦çš„问题。 + +工作中需è¦è§£å†³çš„问题ä¸ä»…仅在代ç ä¸Šï¼Œä¹Ÿæœ‰å¯èƒ½å‡ºçŽ°åœ¨éžæŠ€æœ¯é—®é¢˜ä¸Šã€‚工作中我特别喜欢和éžæŠ€æœ¯åŒäº‹èŠå¤©ï¼Œäº†è§£ä»–们的工作。因为我常常觉得影å“项目å‰è¿›çš„原因ä¸ä¸€å®šå‡ºåœ¨æˆ‘们用了ä¸é€‚åˆçš„技术或者ä¸å¤Ÿã€Œå…ˆè¿›ã€çš„技术。了解éžæŠ€æœ¯åŒäº‹çš„工作æµç¨‹è®©æˆ‘大有收获,我会å‘现他们有一些工作是å¯ä»¥é€šè¿‡å†™ä¸€æ®µç¨‹åºæŠŠåŽŸæœ¬çš„工作é‡åšåˆ°æŒ‡æ•°çº§çš„下é™ï¼Œè€Œé€šå¸¸éžæŠ€æœ¯åŒäº‹æ˜¯å¾ˆéš¾å¯Ÿè§‰åˆ°çš„。 + +这样的例å­ç‰¹åˆ«å¤šã€‚有次我和一个è¿è¥åŒäº‹èŠå¤©ï¼Œæˆ‘们当时在开å‘一个新闻内容的管ç†åŽå°ï¼Œä»–们常常用这个åŽå°å¯¹ä¸€äº›å†…容åšåˆ†æžã€‚èŠå¤©çš„时候了解到他们有一部分的工作就是在上é¢æŒ‰æ¡ä»¶æŸ¥è¯¢ä¸€äº›å†…容,å†ä¸€æ¡æ¡åœ°ç²˜è´´åˆ° excel 里é¢ï¼Œä»–说这常常è¦èŠ±ä¸€ä¸‹åˆã€‚åŽæ¥æˆ‘帮她åšäº†ä¸€ä¸ªä¸€é”®å¯¼å‡ºæˆ excel 的功能。 + +她觉得这很ä¸å¯æ€è®®ï¼Œä½†è¿™åœ¨æŠ€æœ¯çš„角度æ¥è¯´å¤ªç®€å•äº†ã€‚我也因此了解到,对于ä¸æ˜¯åšæŠ€æœ¯çš„人æ¥è¯´ï¼Œä»–们很难察觉到哪一些事情是å¯ä»¥ç”¨æŠ€æœ¯è§£å†³çš„,所以我们ä¸èƒ½å¸Œæœ›ä»–们主动地æ出一个需求,åªèƒ½æˆ‘们作为掌æ¡æŠ€æœ¯çš„人主动地去了解他们。 + +有一次我和我们的测试åƒé¥­ï¼ŒèŠåˆ°ä»–们怎么åšæµ‹è¯•ã€‚我å‘现他们会用 mindmap 先梳ç†å‡ºæ¥ä¸€äº›æµ‹è¯•æµç¨‹ï¼Œç„¶åŽä¸€ä¸ªä¸ªåœ°åšã€‚但是痛点在于他们常常è¦æ‰‹åŠ¨ç»´æŠ¤ä¸€ä¸ªæ–‡æ¡£åˆ—出这些 case 的测试结果,这些结果包括截å±ï¼Œä»¥åŠè¯æ˜Žæµ‹è¯•é€šè¿‡çš„请求返回信æ¯ç­‰ç­‰ã€‚ä¸ä½†éº»çƒ¦ï¼Œè¿˜å¾ˆéš¾è¿½è¸ªã€‚ + +于是我åšäº†ä¸€ä¸ªå° demo Web App,他们å¯ä»¥ç›´æŽ¥ä¸Šä¼ ä»–们åšå¥½çš„ Mindmap, 通过他们的 mindmap 直接生æˆå‡º + +æ¥ case item,在项目的开å‘环境页é¢ä»£ç é‡Œé¢ï¼Œåªè¦æ³¨å…¥è¿™ä¸ª case id,就å¯ä»¥åœ¨æµ‹è¯•ä¹‹å‰å¼€å§‹è®°å½•è¯·æ±‚日志,结æŸä¹‹åŽä¼šä¸Šä¼ åˆ°è¿™ä¸ªå¹³å°ï¼Œè¿™æ ·åœ¨è¿™ä¸ªå¹³å°å°±èƒ½ç›´æŽ¥çœ‹åˆ°æ¯ä¸€ä¸ª case æ“ä½œçš„æ—¶å€™çš„æ•´ä¸ªè¿‡ç¨‹çš„è®°å½•ã€‚è¿™ä¸ªå° demo åŽæ¥è¢«ç”¨äºŽèŠ±å‘—的大部分å‰ç«¯é¡¹ç›®ï¼Œå½“然å¬è¯´çŽ°åœ¨å·²ç»åšå¾—和我当时åšçš„å° demo 完全ä¸åŒäº†ã€‚ + +## 了解你的用户 + +我自认为自己还算是一个有那么一些产å“æ€ç»´çš„程åºå‘˜ï¼Œå› ä¸ºç»å¸¸ä¹Ÿä¼šå†™ä¸€äº›è‡ªå·±çš„å°äº§å“。但在刚出æ¥å·¥ä½œçš„时候,我在工作中太沉迷于技术本身。把心æ€éƒ½æ”¾åœ¨äº†è¯¸å¦‚怎么é‡æž„,怎么改进构建速度之类的问题。我在阿里 P5 å‡ P6 的答辩中,我被问了一个我至今å°è±¡æ·±åˆ»çš„问题:你有了解你的用户是怎么用你在åšçš„这个东西å—? + +这个问题是我从æ¥æ²¡æœ‰æƒ³è¿‡çš„,我哑å£æ— è¨€ã€‚å¯èƒ½å®ƒåªæ˜¯ä¸€ä¸ªæ™‹å‡ç­”辩问题模æ¿ä¸­çš„一个问题,但对我æ¥è¯´è¿™ä¸ªé—®é¢˜è®©æˆ‘清醒了许多。当时我们åšçš„是内部用的新闻内容管ç†åŽå°ï¼Œè¿™ä¸ªåŽå°çš„用户是一些å°ç¼–。我们和这些å°ç¼–有一个群,但基本是用æ¥æŠ¥ bug 的。我离这些用户这么近,å´ä»Žæ¥æ²¡æœ‰äº†è§£è¿‡ä»–们的使用感å—。我想,如果我当时找他们èŠä¸€èŠï¼Œå¯èƒ½ä¹Ÿä¼šæœ‰æ„想ä¸åˆ°çš„收获。或许他们会抱怨这个åŽå°çš„加载速度很慢,我们就å¯ä»¥ç€æ‰‹è§£å†³åŠ è½½é€Ÿåº¦çš„问题,而ä¸æ˜¯å’ŒåŒäº‹çº ç»“在用哪ç§å‰ç«¯çŠ¶æ€ç®¡ç†åº“è¿™ç§æ— èŠäº‹æƒ…上。用户并ä¸å…³å¿ƒæˆ‘们用的是 MobX 还是 Redux. + +## ä¸è¦æ‹¿è‡ªå·±çš„å°ºå­åŽ»åº¦é‡åˆ«äºº + +我刚出æ¥å·¥ä½œçŠ¯çš„最大的错误之一就是拿自己的尺å­åŽ»åº¦é‡åˆ«äººã€‚我因为从å°å¯¹ç¼–程痴迷,写程åºå¯¹æˆ‘æ¥è¯´æ˜¯äººç”Ÿä¸­æœ€å¤§çš„兴趣,我把几乎所有的时间都花在了技术上。当时我天真地认为所有程åºå‘˜éƒ½åº”该åƒæˆ‘这样,对待技术也应该有一ç§ç†æƒ³ä¸»ä¹‰ï¼Œæˆ‘在互è”网上结交的技术朋å‹éƒ½æ˜¯è¿™æ ·çš„。所以我当时对我的åŒäº‹ç‰¹åˆ«è‹›åˆ»ï¼Œç”šè‡³å¯¹é‚£äº›æŠŠå†™ç¨‹åºåªå½“æˆå·¥ä½œçš„人嗤之以鼻。åŽæ¥å›žæƒ³èµ·æ¥ï¼Œè¿™æ˜¯éžå¸¸é”™è¯¯çš„想法。æ¯ä¸ªäººæœ‰æ¯ä¸ªäººçš„追求,技术也åªæ˜¯å¤šä¸ªå…´è¶£çˆ±å¥½çš„其中一ç§ã€‚在当时别人的眼里我å¯èƒ½æ˜¯ä¸ªã€Œæ€ªäººã€ï¼Œç”šè‡³æœ‰ç‚¹ã€Œè£…逼ã€ã€‚ + +## ä¿æŒå­¦ä¹ ã€be open-mind + +我æ¯å¤©éƒ½ä¼šåœ¨ Twitter å’Œ Hackernews å‘现很多最新的技术和æ€è€ƒï¼Œæˆ‘关注了很多开æºåº“的作者,我å¯ä»¥ç¬¬ä¸€æ—¶é—´äº†è§£åˆ°ä»–们最近在æ€è€ƒä»€ä¹ˆï¼Œåœ¨æŽ¥è§¦ä»€ä¹ˆã€‚è¿™ç§ä¸»åŠ¨æŽ¥æ”¶ä¼šæ‰©å¤§ä½ çš„眼界,让你在解决问题的时候有更广的æ€è·¯ã€‚ + +ä¸è¦åªå…³æ³¨è‡ªå·±çš„领域。我还关注了很多写 Rust, 写 Go, 写 iOS/Android 的人。主è¦æ˜¯å­¦ä¹ æŠ€æœ¯èƒŒåŽè§£å†³é—®é¢˜çš„æ–¹å¼ï¼Œè¿™äº›è§£å†³é—®é¢˜çš„æ–¹å¼è¯´ä¸å‡†ä¹Ÿèƒ½åº”用到你自己的领域。 + +ä¿æŒå­¦ä¹ ä¸€ç›´æ˜¯å’ŒåŒè¡Œæ‹‰å¼€å·®è·æœ€é‡è¦çš„一点。 + +## 想清楚,å†ä¸‹æ‰‹å†™ä»£ç  + +我写代ç çš„速度éžå¸¸å¿«ï¼Œå› ä¸ºæˆ‘å·²ç»èŠ±äº†è¶…过å年的时间在写代ç äº†ã€‚很多东西想实现,对我æ¥è¯´åŸºæœ¬æ˜¯çº¯ç²¹çš„堆代ç ã€‚导致我éžå¸¸å®¹æ˜“ä¸ç»è¿‡å¤šçš„æ€è€ƒå°±å¼€å§‹åŠ¨æ‰‹å†™ã€‚我为此åƒäº†ä¸å°‘äºï¼Œå¸¸å¸¸å†™åˆ°ä¸€åŠå‘现一些没有想到过的问题,导致需è¦é‡æ–°è®¾è®¡ï¼Œé‡æ–°æ”¹å†™ã€‚我的一ä½å‰è€æ¿å¾ˆäº†è§£æˆ‘,他也是个多年ç»éªŒçš„程åºå‘˜äº†ã€‚有一次我们在讨论一个新东西,他对我说,「ä¸è¦ç€æ€¥ï¼Œæƒ³æ¸…楚了å†å†™ã€ã€‚è¿™å¥è¯æˆ‘一直记在心里。åŽæ¥æ¯æ¬¡åŠ¨æ‰‹å†™ä»£ç ä¹‹å‰ï¼Œæˆ‘都会把整个æµç¨‹çš„设计先æ€è€ƒæ¸…楚,é¿å…了很多ä¸å¿…è¦çš„é‡å†™ã€‚ + +## 敬ç•ç”¨æˆ· + +在写自己的一些没什么人用的开æºåº“或者公å¸å†…部用的平å°çš„时候,通常ä¸éœ€è¦è¿‡å¤šæ€è€ƒå°±èƒ½æŠŠä»£ç å‘布出去。到了åšèŠ±å‘—è¿™ç§ç”¨æˆ·åŸºæ•°åºžå¤§çš„产å“,æ‰æ„识到代ç å‘布和以å‰æ‰€ä½“验到的完全ä¸åŒã€‚ + +èš‚èšé‡‘æœæœ‰ä»£ç å‘布的「三æ¿æ–§ã€ï¼Œè¿™æ˜¯ä»Žå…¥èŒåŸ¹è®­åˆ°å®žé™…工作中就会被åå¤æåŠçš„ must-follow rule. 「三æ¿æ–§ã€æŒ‡çš„是「å¯ç°åº¦ã€ã€ã€Œå¯ç›‘控ã€ã€ã€Œå¯å›žæ»šã€ã€‚在代ç å‘布之å‰ï¼Œè¦å…ˆæƒ³æƒ³è‡ªå·±çš„代ç æ˜¯ä¸æ˜¯ç¬¦åˆè¿™ä¸‰ä¸ªæ¡ä»¶ã€‚ + +你的代ç å‘布之åŽï¼Œå¦‚果出了问题,是ä¸æ˜¯å¯ä»¥è¢«ç›‘控到的? + +你的代ç æ˜¯ä¸æ˜¯å¯ä»¥ç°åº¦å‘布的,而ä¸æ˜¯ä¸€ä¸‹å­å…¨é‡è¢«æŽ¨åˆ°çº¿ä¸Šçš„? + +代ç å‘布以åŽï¼Œå‡ºäº†é—®é¢˜ï¼Œæ˜¯ä¸æ˜¯å¯ä»¥å›žæ»šçš„?如何回滚? + +在ç»åŽ†äº†ç”¨æˆ·åŸºæ•°å¦‚此庞大的产å“å¼€å‘之åŽï¼Œæˆ‘对代ç å‘布å˜å¾—尤为审慎。我记得有次åªæ˜¯å•çº¯æ”¹äº†æŸæ®µ HTML, 但我还是盯ç€è¿™ä¸ª PR diff 看了几分钟,在想这个修改会ä¸ä¼šå¯¼è‡´ä»€ä¹ˆé—®é¢˜ã€‚ + +虽然蚂èšçš„基础建设å¯ä»¥è®©è¿™ä¸‰æ¿æ–§å¾ˆå®¹æ˜“实现(有æˆç†Ÿçš„å‘布平å°è¿›è¡Œç°åº¦å’Œå›žæ»šï¼Œæœ‰æˆç†Ÿçš„监控库);虽然å³ä½¿éµå®ˆäº†ä¸‰æ¿æ–§ï¼Œè¿˜æ˜¯ä¼šæœ‰ bug. 但是这ç§ä»£ç å‘布的æ€ç»´æ¨¡å¼æ˜¯å¥½çš„,å³ä½¿æˆ‘到了别的公å¸ï¼Œæˆ‘在代ç å‘布å‰è¿˜æ˜¯ä¼šé—®è‡ªå·±è¿™ä¸‰ä¸ªé—®é¢˜ã€‚ + +## 跨团队åˆä½œæ˜¯åˆ©ç›Šäº¤æ¢ + +在大公å¸é‡Œï¼Œæœ‰æ—¶åœ¨åšä¸€ä¸ªäº‹æƒ…的时候,需è¦åˆ«çš„团队一起åˆä½œï¼Œæˆ–许是用到别的团队的接å£ã€æˆ–许是需è¦åˆ«çš„团队开å‘新的接å£ï¼Œä½†è¿™é€šå¸¸å¾ˆéš¾ã€‚我以å‰å¤©çœŸåœ°ä»¥ä¸ºï¼Œåªè¦æˆ‘们åšçš„事情是有利于业务的,别的团队自然就应该一起åˆä½œã€‚但实际上,大家更看é‡çš„是这个事情对自己的团队有什么好处。 + +æ¢ä½æ€è€ƒä¸€ä¸‹ï¼Œæˆ‘们和别的团队åˆä½œï¼Œå¯¹äºŽä»–们æ¥è¯´ï¼Œå¢žåŠ äº†å·¥ä½œé‡ï¼Œå¢žåŠ äº†é£Žé™©(带æ¥æ›´é«˜çš„ qps, 写更多的代ç ä¼šå¯¼è‡´æ›´å¤šçš„维护æˆæœ¬)。决定是å¦åˆä½œï¼Œé¦–å…ˆå–决于这是å¦æ˜¯è‡ªä¸Šè€Œä¸‹çš„è¦æ±‚,其次就是åˆä½œå¯¹ä»–们的 KPI 有没有好处。 + +所以我学会了在游说别的团队åˆä½œçš„时候,首先应该想明白åˆä½œèƒ½ç»™åˆ«äººå¸¦æ¥ä»€ä¹ˆå¥½å¤„,而ä¸æ˜¯å¯¹äº‹æƒ…本身夸夸其谈。这样更容易促æˆåˆä½œã€‚ + +## 用别人的语言交æµï¼Œä¼šæœ‰æ„想ä¸åˆ°çš„收获 + +有研究å‘现如果你用别人的æ¯è¯­å’Œä»–交æµï¼Œä»–会更容易接å—你的观点,对你也会更å‹å¥½ã€‚我å‘现这个心ç†åŒæ ·é€‚用在技术交æµä¸­ã€‚作为一个å‰ç«¯ç¨‹åºå‘˜ï¼Œåœ¨å’ŒåŽç«¯ç¨‹åºå‘˜å•†é‡æŠ€æœ¯æ–¹æ¡ˆçš„时候,如果å¯ä»¥æ›´å¤šåœ°ä½¿ç”¨åŽç«¯çš„术语,从åŽç«¯çš„角度å推å‰ç«¯çš„想法,他会更容易接å—。 + +我自己业余是个 full stack 程åºå‘˜ï¼Œæ‰€ä»¥å¾ˆå®¹æ˜“切æ¢åˆ°åˆ«äººçš„语境,也能从别人的角度去ç†è§£ä»–的想法。因此沟通会更加顺畅。 + +## ç†è§£å‰äººå†™çš„「烂代ç ã€ + +这里的「ç†è§£ã€ä¸æ˜¯æŒ‡ç†è§£çƒ‚代ç çš„逻辑,而是ç†è§£ä¸ºä»€ä¹ˆä¼šå†™æˆçƒ‚代ç ã€‚我ç»å¸¸ä¼šå¬åˆ°åŒäº‹æŠ±æ€¨ä»–看到的旧代ç å†™å¾—如何烂,但是实际上很多烂代ç äº§ç”Ÿçš„原因ä¸æ˜¯å› ä¸ºæŠ€æœ¯ä¸è¡Œï¼Œè€Œæ˜¯å—é™äºŽæŠ€æœ¯çš„å‘展和业务的å¤æ‚性。éšç€è‡ªå·±å†™çš„代ç è¶Šæ¥è¶Šå¤šï¼Œå°±è¶Šèƒ½ç†è§£è¿™äº›ã€Œçƒ‚代ç ã€çš„存在。看出æ¥äº†çƒ‚代ç ï¼Œä¹Ÿä¸è¦ç€æ€¥åŽ»é‡æž„,这些代ç å¾ˆæœ‰å¯èƒ½è—ç€ä¸€äº›ä½ ä¸çŸ¥é“的特殊业务需求。如果你ä¸éœ€è¦ç¢°è¿™äº›ä»£ç ï¼Œé‚£å°±å°½é‡åˆ«ç¢°ã€‚ + +## 在技术和工作之间找到平衡点 + +在刚出æ¥å·¥ä½œçš„å‰å‡ å¹´ï¼Œæˆ‘特别陶醉在把自己学到的新东西试图用在工作中。我的想法是,åªæœ‰æˆ‘把这个技术用到实际的工作中,我æ‰ç®—学习了这个技术。 + +其实这个想法是ä¸å¯¹çš„,学习技术并ä¸ä¸€å®šè¦æ±‚你把他用到工作中。工作就是工作,学习就是学习。工作的内容是为了业务æœåŠ¡çš„。我在创业公å¸å·¥ä½œçš„时候,曾ç»å› ä¸ºæŠŠä¸€ä¸ªæˆ‘刚学习到的库用在业务中,因为一些我ä¸çŸ¥é“çš„å‘导致业务进度出了点问题。è€æ¿ç”Ÿæ°”地说:业务ä¸æ˜¯ä½ çš„试验田。 + +我åŽæ¥é‡åˆ°å¾ˆå¤šã€ŒåŽè¾ˆã€(我竟然也开始有åŽè¾ˆäº†) 请教我说觉得自己在工作中ä¸èƒ½è¿ç”¨åˆ°è‡ªå·±å¹³æ—¶å­¦ä¹ çš„技术,因此觉得自己技术没什么长进。我认为这ç§æƒ³æ³•ä¸å¤ªæ­£ç¡®ã€‚ + +能把学习到的技术è¿ç”¨åˆ°è‡ªå·±çš„工作中当然是最好的,但这是å¯é‡ä¸å¯æ±‚的事。但是这ä¸ä»£è¡¨æ²¡æœ‰ç”¨åœ¨å·¥ä½œä¸­ï¼Œå°±ç­‰äºŽæ²¡æœ‰çœŸæ­£å­¦ä¹ åˆ°è¿™ä¸ªæŠ€æœ¯ã€‚我认为很多人对技术学习有错误的ç†è§£ï¼Œå¯¹æˆ‘æ¥è¯´ï¼Œå­¦ä¹ æŠ€æœ¯çš„精髓在于ç†è§£è¿™ä¸ªæŠ€æœ¯çš„ Why, What, How. 和能ä¸èƒ½ç”¨åˆ°å·¥ä½œä¸­æ²¡æœ‰å¤ªå¤§çš„关系。 + +举个例å­ï¼Œæˆ‘在刚接触到 Redux 的时候,我去学习它,除了了解它怎么用以外,我特别关心的是,Redux 的哲学是什么?是什么å¯å‘了 Redux 的作者创造了 Redux? 他和别的库有什么ä¸åŒï¼Ÿé¡ºç€è¿™äº›é—®é¢˜ï¼Œæˆ‘就会了解更多的东西,比如我å‘现 Redux 是å—了 Elm çš„å¯å‘,我就会去了解 Elm -> 了解 Functional Programming -> 了解 Immutable, 然åŽå…³æ³¨ Dan (Redux 的作者) çš„ Twitter, 看他日常会分享什么,看他对自己åšçš„这个东西的ç†è§£æ˜¯ä»€ä¹ˆã€‚å³ä½¿æˆ‘没有把 Redux 用在工作中(事实上我从æ¥æ²¡æœ‰ç”¨è¿‡ Redux),当我在学习这个库的时候,我学习到的ä¸ä»…仅是 Redux 本身,还有它背åŽçš„更多东西。我å¯èƒ½å¾ˆå¿«å°±ä¼šå¿˜æŽ‰ Redux çš„ API, 但那åˆå¦‚何,那些它背åŽçš„知识æ‰æ˜¯æœ€æœ‰ä»·å€¼çš„,是ä¸ä¼šè¢«å¿˜æŽ‰çš„。 + +而工作则相当于是一个真实的场景,是在你学习新的技术的时候,帮助你进行实际æ€è€ƒçš„场景。你需è¦æœ‰æ„识地去想,这个技术如果用到我的工作中,它是å¦é€‚åˆï¼Ÿå®ƒèƒ½è§£å†³ä»€ä¹ˆé—®é¢˜ï¼Ÿå®ƒä¸ºä»€ä¹ˆé€‚åˆï¼Ÿå®ƒä¸ºä»€ä¹ˆä¸é€‚åˆã€‚当你在学习新技术的时候,结åˆè¿™ä¸ªæŠ€æœ¯ï¼Œå¤šæ€è€ƒè¿™äº›é—®é¢˜ï¼Œè¿™æ‰æ˜¯çœŸæ­£çš„学习。 +