Blog | Phodal - A Growth Engineerhttp://www.phodal.com/blog/2019-09-09T12:22:44+00:00Blog客户现场,三年2019-09-09T12:22:44+00:002019-09-09T03:23:27.619790+00:00Phodal Huanghttp://www.phodal.com/blog/author/root/http://www.phodal.com/blog/client-side-three-years-summary/再三犹豫,终于在 rebase 到上海之后,还是决定写下这篇文章。三年多以前,我 rebase 到了深圳,开始了国内交付项目的旅途,我也几乎成为了待在该 account 下最长的 **developer** 没有之一。在那之前,我在 offshore 项目,混吃混喝混 session。
从 offshore 项目下来时,我不太适应客户现场——整个项目的人驻场开发,并需要在一定程度上遵循客户的规范。所以:
- 没有每天的水果
- 没有每天的运动
- 没有很多 session(PS:相比于西安、成都 office)
- 没有 people 关心(PS:还是有的)
- 没有 workshop 和各种培训
要知道在 office,那可是早上 10 点有水果,下午 2:30 有水果,5:00 后有各种 session,还管饭。渐渐地,我远离了 office 的八卦,贴近了客户的八卦。(PS:所以,最后我 rebase 了,笑~。)
## 成长
对于每个刚进入一个新的公司,一个新的领域的人来说,成长是一个永恒的话题。而时代在变化,哪怕是退休的人呐,也都在学习怎么使用微信抢红包。
### 技艺
从技术的成长来说,只要有同等的学习时间,那么成长都是差不多的。所以,从某种程度上来说,我觉得不管是哪种类型的项目,靠的还是自己。不过,稍有区别的是,在 office 的项目,有更多的时间,也有机会接触到更多的机会:
- 接触到新项目。这一点对于不擅长表达的同学来说,在客户现场就少去了很多机会。
- 培训机会。office 也不大,一有风吹草动大家都知道了。
- session 和 workshop。
从技术挑战上来说,国内项目周期相对较短,比较有机会接触到有技术挑战的项目;当然了,国内项目的交付压力和业务挑战,往往会比 offshore 项目要大。从生命周期来看,长期项目更有利于初级技术人员的成长——可以学习到先进的开发思想,培训出好的开发习惯。然而,国内交付项目的周期都比较短。值得注意的是,这里是从总体上来看的或者说叫平均值。因为一个优秀的 Tech Lead,会帮助大家更好的成长。
因此,这么一来看,国内项目比较适合中级开发人员的成长——需要不断平衡技术、业务、实践优先级。什么时候处理技术债?什么时候放弃一些技术实践?什么时候优先关注于业务开发。每个问题都很难,你总会遇到各种挑战。
### 应变能力
我第一次来到客户现场的时候,并没有任何相关培训,也缺少一些相关的经验。大抵是因为在当时,国内交付项目还不成规模。这就可能造成诸多的事故,反正我是见了不少,笑~。
事实上,第一个在客户现场的人都是**半个真正的咨询师**——尽管名义的 title 是咨询师,但是干的是普通开发的话。但是,从应对的挑战和职责来看,每一个人都是咨询师。所以,并非所有的入场员工,都会拥有相关的角色认知。
作为一个咨询师,你只需要比客户快半步即可。但是作为一个在客户现场的开发来说,你得比客户快一步。你每天都和客户一起工作,技术社区一有什么风吹草动,客户就知道了,诸如于 NPM 事故,React Native License 问题等等。外加一些无良的自媒体的捕风捉影,它们的错误言论,总会让客户对你的解释将信将疑。遇到的这样的每一个问题,都需要快速地做出响应。
如果比客户晚半步,那么还可以:『回去研究研究』;『建张卡做』。
### 沟通
于我而言,在这段期间里,与技术的提升相比,在沟通上的提升反而更大——毕竟从 10 分到 60 分,远到 60 分到 80 容易得多。
> **个体和互动 高于 流程和工具**。 『敏捷宣言』
当你直接和客户一起工作的时候,快速的响应比什么都重要,而沟通是每时每刻都在做的事情——当然了,你得注意沟通的顺序:**内部沟通,随后再与客户沟通**。尤其是在遇到问题的时候,更考验相关的应变能力。记得先在内部把问题抛出来,再在内部去讨论怎么解决——或者与客户一起讨论,如果已经取得客户的信任。
而与 offshore 项目不同的是,每一个在客户现场的人都**有机会**参与到:一个需求从想法到上线的完整过程。这到是也蛮能提升开发者的各种能力,沟通、表达、快速响应。毕竟有的时候你要去**截胡**——将不可能实现的功能,扼杀在摇篮中。这样一来就不会出现那种奇怪的需求:根据手机壳的颜色来适配主题。
总之:**实时沟通,注意言行**。
### 赋能 ta 人
作为一个 ThoughtWorks 的 developer,赋能 ta 人是你所需要具备的能力。你会经常分享一些相关的 session,又或者是手把手的结对编程,又或者是在 code review 的时候多提一些意见,还有针对于新人布置一些作业等等。
就当前而言,ThoughtWorks 引以为傲的是**工程实践**与**抽象复用**——与国内的 ~~B~~AT T 相比,还是领先的。对于某一特别的领域和技术,如果它不能快速的复制应用到整个组织,那么它就缺乏竞争力。而哪怕能快速复制,还会遇到对方水平的问题。可归根到底,这些都依赖于有能力的个人,哈哈哈。
**赋能客户**。你会遇到的挑战,并非是把东西教给某个人,而是某些人不愿意学习,又或者是持相反意见。这就是你要面临的挑战,但是不妨着以让对方去尝试的角度来说服 ta 试用,万一真香呢?
**赋能 TWer**。在客户现场的时候,你也得去保护那些新的团队成员,或者是第一次来到客户现场工作的人。而取决于团队的规模,你可能无法保护所有人,只可能尽可能去分享其中的经验。而当你和新的 ThoughtWorker 一起工作的时候,你,你经常就会遇到一些挑战,诸如于:如何在赋能的同时,体现这个新 TWer 的挑战。尤其是对于 Tech Lead 来说,这种挑战更为严峻。所以,『这个卡交给 xxx,一天就能做完了』。
当你赋能到累、没有成长的时候,可以试着把这个工作分享出去。
## 四步曲
在之前的那篇《项目初期的最优技术实践》里,我抽象了现场开发的三个时间:
- **技术准备期**。进行一系列充分、不充分的技术工作,从搭建脚手架,到部署测试等等。
- **业务回补期**。填补第一个时期造成的业务落后问题,技术实践业务来证明技术的价值。
- **成长优化期**。持续地对项目的技术和业务进行优化,以实现开发及业务人员的诉求。
而对于客户现场来说,对应的则是四个步骤。:
1. 糅合团队,应对挑战
2. 保证交付进度
3. 赋能客户
4. 扩大影响力
嗯,大概就是这么简单。
### 1. 糅合团队,应对挑战
在第一阶段,你可能随时可能被 challege,原因有多种多样的:
- 设计细节有些小问题
- 和原有系统出现差异
- 架构设计得很好,但是其它开发人员不一定能接住
尤其是,我们在项目初期的建立开发规范的时候,会遇到一系列的挑战。诸如于和客户原来的开发习惯不一致——多数时候,可能是一些不好的、落后的习惯,那么客户……。
不管怎样,**妥协是最后的可行办法**。不过,作为一个以咨询师 title 存在的开发,你所能做的事件是:**说服客户采用**。
### 2. 保证交付进度
出现多种原因,会出现迭代 delay 的情况,如需求变化,预期的对应出现问题。其中的原因与我在《项目初期的最优技术实践》讲述的差不多。
不过,还要记得偿还你的**技术债**(务)。
### 3. 赋能客户
如上所述。
哪怕是客户有其它的 vendor,他/她们也可以成为你的朋友,帮助项目更好。
### 4. 扩大影响力
手疼,写不下去了。
总之,作为一个乙方要从长远来考虑问题,从 A 小组,到大组,再到整个部门。
#### 交接(可选)
不同的客户有不同的利益,
#### 演进(可选)
嗯,为未来做准备。
## 其它
### 保持你的幽默
当你是项目的 Tech Lead / Team Lead,适当地幽默气息,可以在困难的时候,看上去不会这么艰难。
### ……
TBC2018 节点:Think Big & Be Long2018-12-29T09:09:26+00:002018-12-29T08:10:33.076246+00:00Phodal Huanghttp://www.phodal.com/blog/author/root/http://www.phodal.com/blog/summary-2018-think-big-and-be-long/> 有人经常问我,什么每年能做这么多东西。我的答案一直、总是、老是:不加班。
不加班,钱少,多了点 x 生活。人生总是要做很多的抉择,如我这一般穷的人做的抉择,便更加有限了。上一年里的收入帮家里还了钱,这一年下来赚得不多,攒下的钱也就十一二万,勉勉强强算是自己的所有金钱财富。尽管又借给朋友买房了,可大抵自己总算留下了几块钱。虽然远不如一个自媒体一个月的收入,远不如别人一套房的涨跌,远不如比尔·盖茨/贝佐斯弯个腰,但还是攒了钱,还算蛮开心的。
这样一看,有些人可能会说:“混得这么差,还写一篇这么长的文章,那得是有多骄傲”。若是你觉得不好,倒是也不必要往下看,时间于你和我都是相当的宝贵。于我而言,记录过去,记录过去的好的、坏的、困惑,对我的帮助都相当的大。于你,道理也相似,除非你已经过得相当的好。
每年固定的时间,它总会提醒我,哪些地方在变好。虽远远赶不上别人的水平,也没有必要和力气去追赶。而很多事情都在持续不断地变好,又或者是不幸地在变差——如不断增长地年龄。活着,需要活在自己的感觉里。
### 编程:Think Big
#### 工作:MOVE BIG
**ONE**。 年初,我先是在一个 Android 项目里,努力 “奋斗” 了一个多月。虽说在我看来有点划水的味道,可真真实实地还是在写编写精力代码、完成需求。说是混,那到底还是对不住自己的学习;说是贡献吧,也没有什么优异的表现。除却更熟悉 Android、Java、Kotlin 之外,唯一做的可圈可点的事,裁剪了预定的 Android 与 JavaScript Bridge 的复杂设计,转成用 URL Scheme 唤醒的方式,降低了不必要的技术成本。
**TWO**。过完农历新年,我变身成为了一个 Tech Lead——事隔 2 年多之后,重新回到了这个坑位上。两年多的漫长日子里,我的提升都在技术上;在技术管理上,还是没有多少的长进——在项目最初的节点上,缺乏与关键利益者的沟通。可也说不上缺乏吧,沟通还是相当的多,可能是不得要点。好在这个问题,在后来的项目里,多多少少有了一些改进。它也充分说服了持证上岗的重要性。在快结束这个项目的时候,终于又被培训了(持证),培训的主题是:Team Lead。同样是 TL,差别还是蛮大的,虽然不一样,多多少少还能学到点东西。
再回到项目上来说,我终于算是完完完完整整整整地经历一个项目,Inception、Interation 0、交付、收尾。除此,还 GET 了微前端的技能——我在 2017 年里,心心念念想实践的架构,勉勉强强得到了充分的施展。此刻,按我司的 Tech Lead 的维度,我大抵可以算得上是一个 Tech SME(Subject Matter Expert)。
**THREE**。而在年底的项目里,我则是经历了售前、Inception、Iteration 0 的阶段。在 Google Play 上上架了七八个混合应用的我,成为了一个混合应用框架的创建者,而不再是使用者;与此同时,进一步地思考了大前端相关的内容,从头创建前端相关的组件库、脚手架等一系列的工具。按我司的 Tech Lead 的维度,大抵在这样的项目里,可以朝向 System Architecture 的方式发展。几次不同的经历,让我重新思考了角色的定义,不免在下一个项目里,我需要在开始时重新定位自己——需要以怎样的角色存在。
经历了一系列的原生应用、混合应用、半混合应用、RN 应用的开发之后,对于如何整合再有应用,有了更深的经验。与此同时,对于内部的政治还是深有体会,只是尚不能理解原因。与过去相比,我觉得做底层框架支持很有意思,但是**长时间**的投入之后,发现还是业务代码更有成就感一些——有稳定的上线计划。
几个不同梯度的项目,考虑问题时的方式,都各有所不同。过去,只关注于团队内部的能力成长,相关的架构实践。在第 2 个和第 3 个项目里,则关注于更高维度的架构事宜,致力于提升总体的开发效率。所需理解的非技术因素更多,并且面向的受众更广。不远的将来,也需要从更高、更宽的角度,来考虑整个系统。
#### 业余编程:FOR LIFE
在这一年里,因为过去的几年里翻译、查阅了大量 IoT 相关的内容,相关的资源相当地 “匮乏”——要么重复,要么质量低。我停止了玩点什么的文章翻译计划以及相应的 Play 应用开发,但是它仍然有着一丝丝的访问量——每天有 100 次左右的点击量。在可见的未来几年,这个网站仍然相当有前途。只是在互联网巨头们,各自推广自己开发社区的这几年,大抵会慢慢下滑。
在这一年里,关于 Serverless 的投入倒是有些变少了,但仍还是使用了 Serverless 架构 + 微信小程序 + AI 写了一些(个)应用,如 CODE 应用。用户量还是上了 8k 左右,这样一看,倒也是一个不错的尝试。在下一年里,或许可以在这一方面有更多的探索,能面向普通的用户,而非程序员——想从程序员身上赚钱太难了。诸如小游戏的开发,这样一看倒也是难得可贵,到了这个年纪,还有探索计算机的好奇心。以致于那些上年纪的程序员,想的也都只能割割知识付费的韭菜。
上一年里,我制定了一个粗略的计划,用于替换日常工作的一些软件。如去年年底编写的 ADR (架构决策记录)工具,已经成为了我日常管理开源项目需求的一部分,而不仅仅是架构决策相关的内容。在这一年里,又有了两个新的小伙伴加入了:
**Mifa Design**。设计的初衷是面向我的开源项目的设计系统,最开始的形式是 UI 框架(CSS 架构)。就目前而言,它已经是我默认的 GitHub Pages 的主题,默认的 GitHub 电子书主题,默认的开源项目的 CSS 框架。我可以毫无顾忌地说,它达到了广泛的验证,hiahia~。
**Phodit 编辑器**。它满足了我日常的写作需求,如在我写本文时,还作为了新书(TBD)的编辑器。尽管过程中,充满了相当数量的 bug,如重命名文件的时候,不会替换当前窗口的文件——需求小的 bug,都懒得改。
在未来的一年里,仍然想的是继续创造自己的工具。诸如,随着舆论的不断收紧,对于隐私问题的担忧。关于隐私,我有了一些更多的想法:
- 输入法,是一个相当危险的工具,它可能会随时出卖你。要么接入原生开源,要么使用云的方式。
- 物理密码生成器,做了一些了解,诸如 Raspberry Pi Zero,只是需要保证便携性。
- iOS 还是 Android?可惜 Ubuntu Touch 还是半死不活,支持不了主流的设备。
倒也不是担心自己说了什么,怕被追责——天生就不喜欢一种被监视感。要么屈服,要么天性自由,这是一个值得考虑的问题。国内的聊天工具,无时无刻不在被审视着,于我的感觉就好似 “达摩克利斯之剑”。倘若能做一个物理上的输入法,倒是会更加的方便。
## 写作:HIGH QUALITY -> 非技术写作
依旧地,我仍然在为 Packt 干着廉价的技术审阅工作,它们又出版了两本印有带上我名字的书《Mastering Angular Components - Second Edition》和《Angular 6 by Example - Third Edition》。即可以免费地看技术书籍,又可以练习英语,有时还有收入,倒算是不错的买卖。
原先打算在这一年写完的书,终究还是没有写完,两年了。倒是《自己动手设计物联网》繁体版——《物聯網原來這麼近:立即手動實作一個》,能为平淡的生活添加几多的色彩。从国内到到港澳台地区,倒也是个不错的进步。哪天要是在马来西亚、新加坡这样的国家里,看到自己的书,倒可以自诩说走向了国际化。未来,倘若有本书,要是能写作出版到西方国家,那便是个更大的突破,就这么放个心愿吧。
在 2017 年,我写了一系列的热点文章,在年底总结的时候,我开始意识到了这些文章的问题——它们不能帮助我成为一个更好的程序员。与此同时,依赖于热度的文章,在热度散去的时间,也就没有不存在的价值。于是,2018 年,我调整了写作的策略——尝试在阅读量与质量之间平衡,不再去追求更高的阅读量,转而是我眼中的 “高质量文章”。
高质量的文章,大抵也是有好有坏,一来,一篇文章要花费一天的时间编写,文章的长度往往太长了,不适合所有的人阅读。二来,高质量的文章,并不一定带来好的阅读量,但是对于自己来说,内心是满足的——写的是给自己看的文章,对自己的帮助更大。
我尝试以 《架构拾集》作为标题,作为其中的一个方向,用于记录我在使用架构方面的所见所闻,并将其作为我的知识库来储备。练习它们,然后记录其中的关键部分,相关的核心思想。要是说成长吧,那还有一点相关的不错,吐槽一些 “不好” 的架构实施。往往,我们一直讲的是某个架构中的好处,而一直刻意忽略其中的一些缺点。在使用的过程中,因为一些使用的不当,反而带来更多的问题。诸如《微 “害” 架构》和《前后端分离的资源浪费问题》,便是在讲述其中的一些问题。若是直接放大缺点,吐槽一番,那倒是相当的不错。
只是写多了技术文章之后,写一般的文章有了些许的不合适。技术文章,特性是简洁、干炼,少了些许废话,也就没有人情味。浓缩了精华,便也意味着需要一遍一遍的深思熟虑,删删减减,时间也就过去了——没有了愉快地写作感。渐渐变得没有自己的风格,千篇一律,也就失去了自己的个性。
每晚的睡前,都在阅读技术之外的文学类书籍,想寻找一些新的写作手法。这些日子下来,还没有太大的突破,或许是量变还不够,又或者是需要多练习,写写非技术文章。
## 设计:PRACTISE -> MORE PRACTISE
为了响应 2017 年留下的遗憾,在这一年里,我练习了很多设计相关的工作。
设计上最大的长进,莫过于结合编程相关的知识,设计(复制)出了 Mifa Design。推广在了开源项目上,公号的排版上,自己的博客上……。就目前而言,倒也只是普普通通的排版和样式,论不上丰富的个人风格,倒是应用得有点广泛。起初呢,打算作为 Design System 来使用的,但关于 Design System 相关的设计、技术,倒也没有落到实践上。这样一推论,倒也是颇为遗憾的,只用在了术上,却没有掌握道。
我开始手绘文章中的流程图,倒也是蛮有趣的,却又稍微显得有些麻烦。先将流程图绘制在 Wacom Folio 的设备上,再同步到云上,便可以在电脑上、平板上,进行编辑和上色。好用(贵)的 Wacom设备,可以直接在上面绘制、上色、导出,省去了转换过程稍许的麻烦。而设计的最先步骤,还是得先在纸上绘制相应的草稿。
心情好的时候,又或者是闲暇时间,便会画上点东西,作为封面。虽只能算上涂鸦,作为封面,却有了一点个性——不再是千篇一律。偶然间,也和 @花仲马 一起参加了公司的周末活动,尝试了画一张油画,尽管画出了水墨画的感觉。多多少少,还是有了点信心,未来在时机合适的时候,但是会发挥更大的价值。只是于自己而言,还是相当的缺乏练习。在未来的一年里,写累代码的时候,倒可以投入部分的精力,以放松一下神经。掌握了门道,多加练习,快速地画上一张画,倒也是蛮兴奋的。也许还可以结合一些 AI 图像相关的内容,完善相关的个人风格化图像。
除此,和 @花仲马 的马来西亚之游里,我还 GET 了一个摄影相关的技能:连拍——一千张图里,总有一张是合适的。摄影、漫画和电影,存在相仿的地方,对于镜头的把握,便也是一个值得掌握的技巧。日常多加了解,多加注意,便是也会 GET 到新功能。
总得尝试新的方式,突破渴望,才能知道自己会什么。
## 其它
这一年下来,看了几本关于人生的文学、人说书籍。也算领悟了一个基本的道理,想在某一个行业里干下去,靠的不是年轻时候的熬夜、学习,而是持续保持稳定的投入以及稳定的输出,也就是长期的职业生涯。做喜欢做的事情,寻找提高点,不断突破自己。如此一看,关于编程-设计-写作,都有了各自的场景、应用、规则和计划。时间一长,问题倒也是不大,都有各自发挥的空间。
可生活和工作,不止是这些个人兴趣,还得花些时间在其它的方方面面,如各种各样的软技能。
比如说,沟通,如何达到令人信服的沟通能力。
比如说,成为一个栽培者、Coach、导师。
比如说,影响力,面向更高 title 人级的技术和非技术影响力。
若是要考虑未来,便总会想着成为自由的职业者,而不是成为螺丝钉。
## Hello, 2019
2019 大抵会是一个艰苦的开始。程序员成长:如何写一份给自己看的年终总结?2018-12-17T12:56:02+00:002018-12-17T11:57:06.593586+00:00Phodal Huanghttp://www.phodal.com/blog/author/root/http://www.phodal.com/blog/how-to-write-programmer-years-summary/你差的可能不是能力,而是一把复盘。
每年到了这个时候,为了生活仪式感或者 KPI,便都开始筹备自己的年终总结。三言两语之下,总结这一年里:
- **做了些什么事情?**
- **取得了怎样的成功?**
- **收获了什么东西?**
- **未来会做什么?**
或是出于成长的需要,总结自己辛辛苦苦一年的~~柴米油盐~~酸甜苦辣。或是出于公司对于 KPI 的需求,写一份总结。其差异也源于目的的不同,或是面向的是涨工资的需求,或是面向的是 “领导” / KPI 团队,或是为了嘉奖自己。目的地不同,写的东西也不同,收获也不同。面向工作写出来的东西,往往对于自己的帮助不是那么多——它们永远关注于工作。它们的方式,大抵是以年为单位的**结果导向**——充满了不可持续性。它们比不上以**五年**、**十年**为的个人目标为核心的计划。
## 我们关心什么?
无论卑贱与崇高,无论美丽与丑陋,无论年轻与衰老,无论健康与疾病,我总会给自己写一份年终总结。再加上一定地装饰、美化,将它公开出来。或是用来获取被监督感,或是提醒自己前方的道理是否正确,一方面大抵是为了获得认同。而这种总结,依自己的角度来看,往往拥有这么一些套路,或者说模式,或者说模板。也不需要一一去区分三者之间有什么区别,它们拥有一个核心的内容便是:**我们关心什么?**。如从技能来说,我关心的几个技能方向:
- 编程。
- 写作。
- 设计。
对应的要审视自己的有:在技术上,有什么提高,造了什么轮子,哪些地方可以做得更好?在书写方面,学习了什么东西,看了什么书籍,写出的文章怎样,下一步如何提升?在艺术方面,是否有投入足够的时间,某些方面是否与工作相结合?
正是一个个要素,能探索出每年关注于我们想要的东西,不断纠正自己的路线。
## 1. 写下 “流水账”
作为总结的第一步,我习惯将做过的事情,罗列到每年的时间线上。这种方式看上去,便是将年终总结变成了流水账,看上去一点意义也没有。但是它的目的是,一来可以防止**漏掉某些重要的内容**,以便方便后期做总结;二来,往往多个细小的内容,可能组成一个**有效的结果**。
倘若我们是一个机器人,不耗费多少力气,便可以统计出每天的时间花费,自己一年的主要时间花费在哪里。可惜,我们并不是,我们只是普普通通的肉身,哪怕是一丁点的身体不舒服,都会影响我们的行为,思考速度。可以说,每天几乎都是完全不一样的。可在我们看来并不是这样的,我们的工作日看上去是一样的:
> 起床 -> 吃饭 -> 上班 -> 午饭 -> 午休 -> 上班 -> 下班 -> 吃饭 -> 业余活动 -> 睡觉
在这些平淡中,我们需要罗列一下,这一年里做了哪些重要的事?按照不同的公司的模式,罗列的方式也有所不同:
- 如在工作上,笔者是需要以项目为单位,来统计在不同的项目上做了什么事。
- 如在业余学习上,则是以 GitHub 的项目为单位来统计
从总体上来说,以每月为单位,来罗列一下自己做了哪些事情,会更为细致一些:
- 1 月,blabla
- 2 月,blabla
- ……
将我们关心的维度,结合到 “账单” 上,便拥有了一个初级版本的年终报告。
**记录下这些东西,方便进行总结。**
## 2. 寻找关键结果
无论是在公司内部提供一份年终报告,还是写给自己看的年终总结,都得提炼出其中**最重要**的部分。如同,我们在编写简历一样,好的简历能突出某一部分,给 HR 留下好的印象;而差的简历,则看上去很平淡——因为写简历的人,可能把每一项都视为重要的部分。
这部分的内容,就好像在考察 KPI 一样。做得好的地方,便是能收获的地方。若是哪个地方没有做好,导致没有产生结果,那么也就无能为力了。这也就是为什么需要一份自我总结的原因——以 KPI 为出发点,便会忽视自我的成长。KPI 并不一定认可,你这一年的学习成果。因为对于你的学习来说,它在当前没有体现出任何的价值。
从我们的流水账中,找出那些闪亮的点、成就,它们值得我们去炫耀、证明自己的价值,鼓舞我们前进;或写入到简历中,又下一份工作寻找契机。如:
> 在这一年里,我写了一本微前端相关的电子书,编写了一个微前端框架,都受到了一定程度的关注。前者在 GitHub 上有 550+ 的 star,后者在 GitHub 上则有 250+ 的 star。数字 + 结果,无一不让人觉得欣喜。
若是因为做的事情过于平凡,不要过于羞愧,更应当去**找寻关键的结果**。一旦我们找不到自己做的重要的事情,又或者自己起的关键作用,在未来一年里,便**更应当注意**——是学习不到新的东西,还是位置不合适导致发挥不了才能。若是学不到新的东西,怕在将来会有危机,也因此会自己让自己更加地**焦虑**,而后**起而行动**。
**记录下这些东西,作为里程碑。**
## 3. 总结收获
年终总结的目的,并不单纯只是为了晒到朋友圈,其主要目的在于:**让自己审视(Review、复盘)自己的表现**,以决定下一步要怎么做。
> 总结,是事后对某一阶段的工作或某项工作的完成情况,包括取得的成绩、存在的问题及得到的经验和教训加以回顾和分析,为今后的工作提供帮助和借鉴的一种书面材料。
在笔者的习惯里,我习惯将成功的结果和不那么 “成功” 的事情,分开来讨论。我总感觉某一部分有结果,似乎是理所当然的。但是,对于成功的项目、结果来说,我不会认为它没有学习的地方。
在有些事情里,反而是成功的部分更加坎坷,便能学到东西。因为在过程中,你或者别人挺身而出,解决了一个问题,推进了整个事件的正常化。那么,人人称道的地方,便也容易观察得出。
而有些失败,则是一开始就注定的,如饼太大,消化不了。不过,大部分的的失败,并不是这样的情况,它们值得我们去关注。对于目前的我们而言,有些事情的结果,并不是我们力所能及的,有些超出了我们的能力范围。比如说,我们花了极大的精力,去编写了一个开源项目,它一点儿也没有用户。不论是应用中存在 bug,或者是运营能力所有不足,都会在一定程度上体现出来。
所以,无论如何,我们都得从中去寻找原因,以便于自己学习。先总结下自己的所思,下次遇到的时候,便可以尝试解决。
**记录下这些思考,方便未来进行对比。**
## 4. 改进方案及目的
随后,从过去的点点滴滴里,我们会不断地获取知识:
- 既然知道为什么成功,那么就知道学习如何成功,总结出经验和模式
- 既然总结为什么失败,那么就要分析出改进的方案
而后,我们所做的事情,无非便是制定一个目的,然后创建一个计划;又或者是创建一个目标,而后制作改进计划。
但是,并非所有的目标,都需要实现的。按照不同的划分方式,有不同的目标划分级别(典型的如 MoSCoW 优先级排序法),又或者是笔者习惯的:
- Must to have(一定要做)
- Nice to have (做了更好,但是可以不做)。
这辈子有些事情,一年要明年做;有些事情,明年更了更好。分清它们的轻重缓急,然后计划之即可。
**记录下这些目标,方便我们变更计划。**
## 5. 计划
不论是学习和实现计划,都是这么几点:
- 心态。
- 技能。
- 工具。
视目标的不同,方式便各有差异。
就笔者而言,笔者的佛系计划,都是顺其自然的。2017年节点——学习到的新技能2017-12-24T14:15:27+00:002018-01-18T13:36:20.234270+00:00Phodal Huanghttp://www.phodal.com/blog/author/root/http://www.phodal.com/blog/summary-2017-skills-learn/这一年里,在工作上,我主要做的都是移动开发,分别是三种不同的技术栈:
* **基于 Ionic + Cordova 的混合应用**
* **基于 React Native 的跨平台应用**
* **基于 Java 的 Android 原生应用**
期间,使用 Java、Objective-C 编写 Cordova、React Native 插件。又花了好多时间,将 Cordova 应用嵌入到 React Native 中,详细见:《[我们是如何将 Cordova 应用嵌入到 React Native 中](https://www.phodal.com/blog/cordova-webview-embeded-react-native-case-study/)》
![](http://mmbiz.qpic.cn/mmbiz_jpg/aG1vFUMgRBDicHIBfkDsgl9uvV5Mu7Hsl2zZ3X58EUbkw3TS35libKj70wOhlMgZciayj0gP8QHmpFkVTCO9bBOzw/640?wx_fmt=jpeg&tp=webp&wxfrom=5&wx_lazy=1)
最近,在将 React Native 上的 WebView 经验,整理成半混合应用框架:《[Dore 混合应用框架 —— 基于 React Native 的混合应用迁移方案](http://mp.weixin.qq.com/s?__biz=MjM5Mjg4NDMwMA==∣=2652975576&idx=1&sn=9d74230aae2b7a69fc048b2ecd303b66&chksm=bd4ae2fb8a3d6bedfecd623fcbfb9dbf99d3ba5b36ae02f8b29140cac2796e4874f9e3f39c64&scene=21#wechat_redirect)》。
新版本的 Growth 也是用 React Native 写的:《[开源编程学习 APP Growth 发布 3.0,在碎片时间里练习](http://mp.weixin.qq.com/s?__biz=MjM5Mjg4NDMwMA==∣=2652975200&idx=1&sn=8ee8a8f1b42e8877614589c5316be3ca&chksm=bd4ae3438a3d6a55296bc39ec3ed786e6593bbc9c114dbfa0b1934bfab66fbd8566a571c6ba3&scene=21#wechat_redirect)》
![](https://mmbiz.qpic.cn/mmbiz_jpg/aG1vFUMgRBDDTjaWvAI2QbPEva2BtFcg0qzRznwEHOSLtQXAbic5SibaVPrP0pv6hOgEsXSVDa0KGuGRdasKnJibg/640?wx_fmt=jpeg&tp=webp&wxfrom=5&wx_lazy=1)
这几个月,顺手撸了一遍 Serverless,写了二三个 Serverless 应用,以及相关的几篇文章。
* [花了 1000G,我终于弄清楚了 Serverless 是什么(上)?](https://www.phodal.com/blog/serverless-architecture-what-is-serverless-architecture/)
* [花了1000G,终于弄清楚了Serverless (中):Serverless 架构的优缺点](https://www.phodal.com/blog/serverless-architecutre-cons-and-pros/)
* [什么时候我们才需要 Serverless 架构?](http://mp.weixin.qq.com/s?__biz=MjM5Mjg4NDMwMA==∣=2652975555&idx=2&sn=1fdc95e5cce54be1ac5773196cdcf8b1&chksm=bd4ae2e08a3d6bf64ad8f60c8e1ed49592bcddee8dbd3c446209d35251c38a9b656fbb3971cd&scene=21#wechat_redirect)
![](http://mmbiz.qpic.cn/mmbiz_jpg/aG1vFUMgRBDicHIBfkDsgl9uvV5Mu7HslWbibQ763b9yicYDHsRCNGQYFvdLbF0tJbmWs6iaLicWicX6PBzEEQecgS8g/640?wx_fmt=jpeg&tp=webp&wxfrom=5&wx_lazy=1)
当然,如果你想要的话,也可以看看:phodal/serverless。
今年,也出版了今年的新书《全栈应用开发:精益实践》:
![](https://mmbiz.qpic.cn/mmbiz_png/aG1vFUMgRBCqGdwKsnicI3Tf33USibOX2baFfNZPDTnooSerbr8s14eVU759ibIkSWoPz9xRf8eLD78HqYMQenJAg/640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1)
详细的介绍见:《[【新书上架】 | 《全栈应用开发:精益实践》——历时两年二十万余字](http://mp.weixin.qq.com/s?__biz=MjM5Mjg4NDMwMA==∣=2652975010&idx=1&sn=8fa13f27e33b544762928e2441baa28e&chksm=bd4afc818a3d7597db7443c1789867bdc6d604e136285f243de386c1f953f0bebff1caf299e9&scene=21#wechat_redirect)》
从概念上,收获最大的,莫过于参加公司的 DDD 培训《事件风暴》,理解了,**如何从业务到建模的一系列流程。**详见《[Stepping.js——两步完成前后端分离架构设计](http://mp.weixin.qq.com/s?__biz=MjM5Mjg4NDMwMA==∣=2652974849&idx=1&sn=60b157098b1e167aca2ed5544d24fa27&chksm=bd4afc228a3d75348450bb83c8702afb1792b9347c861eb4a0fd99a8662ac4ccb8d57d1bebc7&scene=21#wechat_redirect)》
![](http://mmbiz.qpic.cn/mmbiz_jpg/aG1vFUMgRBDicHIBfkDsgl9uvV5Mu7HslAvZmica0pfv2LfuYszpo2eJE5J6R2BIy7gxR8xH3MtkuDyqhiaW7vwwg/640?wx_fmt=jpeg&tp=webp&wxfrom=5&wx_lazy=1)
也顺便使用 TypeScript 撸了一个生成图形的框架:phodal/stepping 。
培训的话,还有一系列的基于 Spring Boot 的微服务工作坊。《[【工具推荐】价值百百万的后台微服务生成工具](http://mp.weixin.qq.com/s?__biz=MjM5Mjg4NDMwMA==∣=2652975144&idx=1&sn=4724f9043ad4466bb83e418cd90c8f60&chksm=bd4ae30b8a3d6a1d3758858e90d8951c5e088a10ee6d93d8d6a6c117e3f18de34216ab20085b&scene=21#wechat_redirect)》大致就是:
* Eureka 服务,提供服务注册、发现
* Ribbon 服务,提供客户端的软件负载均衡算法
* Hystrix 服务,熔断器
* Hystrix dashboard 服务,对 Hystrix 进行实时监控的工具
* Turbine 服务,日志收集器,用于聚合 Hystrix 中的日志
* Config 服务,统一配置中心
* Feign,声明式、模板化的HTTP客户端
* Spring Security Oauth 2 服务,授权管理
大抵对于新的后端技术有一个全面的认识,微服务相关的代码在:[phodal/ms-workshop](https://github.com/phodal/ms-workshop)。
12 月份里,也顺手撸了一个小程序——“一起玩点什么”。2016年节点——增长的一年:不只编程2016-12-22T14:15:33+00:002016-12-22T14:15:41.044289+00:00Phodal Huanghttp://www.phodal.com/blog/author/root/http://www.phodal.com/blog/summary-2016-growth-year-notolny-programming/
时间过得很快很短,十二个月前在准备回南方的机票;八个月前在西安忍受着雾霾;四个月前在陪 @花仲马 吐槽桂林山水;今天我在这里,码下了这一行行的字。
在最近的一年里,有一个明显的变化是:进步不再那么明显。虽然这是一个不可避免,但是也找不到合适的突破点。这也意味着我拥有更多的非编程时间,我可以去探索更多的东西。
我开始关注于社交(技术型社交)、增长(技术营销),还有一些细分领域。从这个秋天开始,我开始走路回家,大概 4.5 公里左右。除了感觉更能走以外,还没有别的明显的变化——按理说,多运动应该能提高某方面的能力。
依旧的让我们继续从 **Line Of Business** 说起,即编程、写作、设计。LoB,即业务线,当我第一次听到这个名字,我就喜欢上它了——简单的来说,就是业务及收入来源。下面的这张图非常适合当前的情况:
![Line Of Business][1]
在过去的一年,编程(即工资)依旧是最主要的收入来源。不过值得让人高兴的是写作的收入,也相当于一个季度的工资收入。只是设计依旧不起色,这主要是没有时间投入造成的。在未来的一年,**是否咨询与演讲也可以转换变 LoB 的一部分**?
编程
---
在十月的那个国庆里,我停止了 GitHub 上的连击——「不要用战术上的勤奋,掩盖战略上的懒惰」。其实我只是想说,有些人应该关心一下上面的 Star 数好吗?
Growth 毫无疑问是今年编程方面的主角了:
![Growth Project][2]
当它还是 Ionic 1 时就有一千两百次左右的提交,而升级到 Ionic 2 时又重写了一遍,就有了上图中的 1964 次提交,差不多是 2016 提交量的 1/3。每一次更新 Growth 的时候,都有大量的代码修改,如下图所示:
![GitHub 2016][3]
然而这是一个面向最终的产品,而我一直想创建一个开发者日常使用的工具、框架等等。 Growth 可能有点难以达到这个目标,但是它对于大部分的新手程序员来说还是挺有帮助的——日活量接近 300 说明了这一点。
在工作上的变化不是很大,从之前西安的国外交付项目变为了深圳的国内交付项目。Title 变小了,做的事情也变少了,时间变多了,写代码的时间也变多了。原来的项目都要熟悉项目上的一切技术栈,还要负责架构的设计,现在只需要关注于混合应用。这是不是也意味着,**可以考虑在明年写一本混合应用的电子书**?
再回到一个老生常谈的问题,**没有一个代表性的开源作品**。这是去年 Annual Review,同事对我的建议:缺乏代表性作品。那么问题来了,**Growth 算是一个代表性的作品吗**?我需要有一个代表性的开源作品吗?我依旧没有想明白答案到底是:是还是不是。不过在下一年里,依然还需要有一个作品,不是吗?
写作
---
在这一年里,写作里面已经有相当多可圈可点的内容了。年初设定的公众号 10000 粉的目标,现在已经达到了 -> 目前是 12100 左右。
在微信公众号方面仍然有一个问题:**缺乏一个合理的定位**。开始运营公众号的时候,一方面是为了帮我们家 @花仲马 引粉,一方面则是普及读者——博客的大部分流量来源是 Google。
不过有一件事,我发现很奇怪:每当我秀恩爱的时候都有很多赞赏,但是干货的时候都很少有赞赏~。
写作上已经完成了第一步的**战略性转移**。年中的时候,我审阅完 Packt 出版社的《Smart IoT Projects》一书时,向编辑提出审阅前端书籍的请求。随后,我用 GitHub 和 Growth 项目证明了:写 Angular 2 和 TypeScript 的经验。于是我将审阅的方向转向了前端领域,这就意味着,我可以在**真正的第一时间**阅读到国外的前端书籍——作者在写书的时候,我就可以读到相关的内容。然后等这本书出版了,需要两三个月。再等到翻译成中文出版,估计到一年多以后了。现在正在审阅两本 Angular 2 的书,预期下个月和明年四月份会出版。
除此,**写作上正在尝试另外一个实验**。《自己动手设计物联网》最早是来源于我的毕业设计及 GitHub 上的开源电子书《教你设计物联网系统》,除此它还有一个开源的 APP。简单的总结一下这些步骤就是:精益出版 + 技术营销,而这一点特别适合 Growth 系列的内容。
Growth 最初推出的时候是一个开源的 APP,它被验证是有一定用处的。随后,推出了两本相关内容的电子书,即《Growth:全栈增长工程师指南》及《Growth:全栈增长工程师实战》。从项目的 Star 数和 APP 的用户来看,它特别适合于有一本纸质书籍。因为他在前期的市场宣传上已经不错了,同时它还有 APP 的用户在持续使用着。因此,你可能在明年看到这本书电子书——目前在写最后一章,出版合同还未签下。
这也存在一个问题是:**编写技术书籍相当的花费时间**。从长期来看,这是有益于国内的 IT 环境,并且有利于自己梳理自己的知识体系——电子书可以完成梳理,并且周期更短。但是编写技术书籍,对于**待我代码编成,娶你为妻可好** 的进度条影响比较小。
设计
---
尽管我一直想在设计上投入一些时间, 但是并没有那么多的可用时间。让我看到一点希望的是:我创建了一个项目:[Brand](https://github.com/phodal/brand),它让看到编程和设计之间的一些交集:即,用代码来生成一设计。SVG 是在这方面的一个很好突破点,它甚至让我有了**创建一个图形框架**的冲动。挖坑之前,让我再想想**有没有这方面的必要性**——需要在数学方面投入相当多的精力。
不过我计划在下一年里:**拍摄一些照片还当作公众号的题图**。同时,尝试去整理出一个自己的色彩集,又或者整理一个前端 CSS 框架。
生活
---
在这一年里,陪我们家花仲马去了桂林,完成她想要的毕业旅行。在国庆期间,我们去逛了逛张家界。
工作的时候,只要不下雨,轻轻松松地走上 8000 步,打卡如下:
并且,我发现这个距离的散步,很容易让我想好一篇推送的内容。
年初的时候,从西安搬到了深圳。从 1500 大概 60 平的房子,变成了 30 平不到 2400 的房子,让我感概这涨了四倍的房租,这就意味着没有那么多的地方可以放下书了。然而总算远离了雾霾的重灾区,在西安的期间动不动就咽喉炎,2333~。这高高在上的房价,让我有了挪屋的想法。
今年终于等到我们老家的房子装修年,只是年后又要身无分文的节奏。不过看这情况,明年就可以存下钱了,然后你们就可以准备三年后的份子钱了~~。
2017
---
下一年里,我应该就会变成一个『Senior Consultant』, 是不是可以靠着这个 Title 出去刷刷脸?No
[1]: /static/media/uploads/lob.png
[2]: /static/media/uploads/growth-commit.png
[3]: /static/media/uploads/github-2016.png2016节点——增长的一年:成就与问题2016-12-20T13:18:09+00:002016-12-20T13:19:12.738661+00:00Phodal Huanghttp://www.phodal.com/blog/author/root/http://www.phodal.com/blog/summary-2016-goal-and-problem/时间过得很快很短,十二个月前在准备回南方的机票;八个月前在西安忍受着雾霾;四个月前在陪 @花仲巴 吐槽桂林山水;今天我在这里,码下了这一行行的字。
每年年终的时候,总会为明年定下一系列的目标。在这一年里,做了很多事情,有些情况做得像预期一样,有些事情没有做完,很多事情没有能力做。如预期的那样,完成了:
- 顺利地从西安『乔迁』往深圳(详情可见文章:『[别了西安,再见深圳](http://mp.weixin.qq.com/s?src=3&timestamp=1482238902&ver=1&signature=z1onJvKn4TSrUmXm384CQUF1IZBVsLShsQ4DpmumN6xVgek8ZHRdP1MJJmPR4YUYVf-J-iM7GcBh8Rc7IISMQQ1ErklfG8x384UlJ08yH9d8PakcAn8kx45kF20UvL5uSoLBKZFphCdsIe2*4DCxFM-nj7Z*gl3Q6wvSXSoEDOk=)』)。然而房子的面积减半,房租加倍,**付出的租金相当于原来的四倍**。
- 出版了《自己动手设计物联网》(详情可见文章:『[《自己动手设计物联网》已在各大书城有售](http://mp.weixin.qq.com/s?src=3&timestamp=1482238931&ver=1&signature=z1onJvKn4TSrUmXm384CQUF1IZBVsLShsQ4DpmumN6y0r063HB9VCHZMJpuY3lgy99AjshNARhI9bY419nyefBiUqbbHImPgny1-tIIJJc6h0BKJxA6jFxxXJxSmr2Mx*EuuzNs8t9DrXb16Sl9cuNa42ZJU8xLYhL3vUJpUMUE=)』),到目前为止只卖了 ~3000/4000。
- 完成了 Growth 系列的电子书和APP,下载量约 20000,日活用户 250 左右。
- 《Growth:全栈 Web 开发思想》——预计本周内写完~~,出版社待定,2333~
- 公众号上有 10000 的粉(现在有 12000 个,比预期好一些)
原本预期会完成:
- Growth Studio 的建设,但是一直抽不出足够的时间来寻找成员。
除了预期的内容,还有一些在预期之外的收获。
- 战略性的切换技术书籍的审阅“业务”。即将为 Packt 出版社审阅英语技术书籍的从物联网迁往前端领域,同时也审阅了『Smart IoT Projects』一书,现在在审阅两本 Angular 2 的书籍。
- 这一年里斩获了上万个 star,并在所谓的『GitHub Rank』上有一个好的排名。**然并卵**
除此,还有一些潜在的风险:
- **花了相当多的时间在 Social Network上**。可以适当地减少在这方面的支出了,目前的投入已经差不多了,应该继续关注于主要业务。
- **公众号缺乏一个合理的定位**。最初只是帮我们家 @花仲马 引流,那么下一步呢?应该写一些高质量的文章了?
- 缺乏一个合适的开源软件方向,这似乎是一个很大的问题,2333~~
结尾
---
去年在年底写了一篇《回顾2015年:从复杂到简单》的文章,文章在最后讨论了信息流变复杂的问题。而这个问题在今年稍微有一些改善,这仍然也是一个值得思考的问题。
标题来源于 Growth 计划~~。2016节点——增长的一年:电子书2016-12-19T14:55:29+00:002016-12-19T14:55:31.689611+00:00Phodal Huanghttp://www.phodal.com/blog/author/root/http://www.phodal.com/blog/summary-2016-ebook-lists/电子书
---
《管理3.0:培养和提升敏捷领导力》、《只要会呼吸,就能做冥想》
《创客书包系列套装》,《人生总会有办法》,《精益创业:如何建立一个精悍、可持续、可赢利的公司》,《潜意识:控制你行为的秘密》,《精力管理:管理精力,而非时间互联网+时代顺势腾飞的关键》,《逆转:弱者如何找到优势反败为胜(格拉德威尔系列)》,《定位:有史以来对美国营销影响最大的观念(特劳特经典丛书)》,《惊讶心理学:拥抱不可预测性并策划让人意想不到的事》
《梦影红楼:旅顺博物馆藏全本红楼梦》,《商业模式全史》,《创业时我们在知乎聊什么?(完整图文版)(知乎系列)"》,《探询式领导:如何通过问题发现正确的解决方案》,《品牌洗脑:世界著名品牌只做不说的营销秘密》,《参与感:小米口碑营销内部手册》,《哈佛最受欢迎的营销课》,《浅薄:互联网如何毒化了我们的大脑》
《影响力-技能与实操(实践版)》,《互联网营销:理念的颠覆与蜕变》,《引爆社群:移动互联网时代的新4C法则》,《社群营销大爆炸》,《认同感:用故事包装事实的艺术》,《没有任何借口》,《自品牌》,《需求:缔造伟大商业传奇的根本力量》,《营销的16个关键词》
《品牌大师:塑造成功品牌的20条法则(无)》,《再琐碎也不怕:职场人的自我管理方法(知乎周刊Plus总第008期)》,《富爸爸穷爸爸(全球最佳财商教育系列)》,《番茄工作法图解:简单易行的时间管理方法》,《囚徒健身:用失传的技艺练就强大的生存实力》,《领导力21法则》,《增长的本质:秩序的进化,从原子到经济》,《影响力:口碑实战版》,《影响力(珍藏版)》
《内在革命:一本关于成长的书》,《人生的智慧(叔本华系列)》,《众媒时代(完整图文版)》,《拆掉思维里的墙:原来我还可以这样活》,《迷恋:如何让你和你的品牌粉丝暴增》,《精要主义(如何应对拥挤不堪的工作与生活!)》,《重新定义团队:谷歌如何工作(完整图文版)》,《一本正经又怪诞的行为心理学(国际著名心理学大师怀斯曼继《正能量》后的重磅力作!数百个洞穿人心的心理学实验,帮你解决人生中难题,让你的工作和生活瞬间改变。)》,《沃顿商学院品牌课:凭借品牌影响力获得长期增长(沃顿商学院高级管理核心课程)》
《战略品牌管理(第4版)》、《咨询的奥秘》,《麦肯锡方法(经管图书的常青树,外企员工入职必读图书)》,《超越智商:为什么聪明人也会做蠢事》,《清醒思考的艺术(完整图文版)》
《协作的诅咒——团队协作与员工管理》,《优秀到不能被忽视》,《赢者思维:欧洲最受欢迎的思维方法》,《故事力学:掌握故事创作的内在动力》,《自制编程语言(图灵程序设计丛书)》,《怪诞心理学1:解密日常生活中的古怪之处》,《优秀的绵羊》
《赤裸裸的统计学:除去大数据的枯燥外衣呈现真实的数字之美》,《少有人走的路1:心智成熟的旅程》,《菊与刀(中英双语版)》,《我用博客赚了6000万》,《卖故事:让你的产品和身价高卖10倍的秘密》,《解决问题最简单的方法》,《商业的本质》,《知更鸟女孩》
《凸法则》,《移轨创新》,《关键20小时,快速学会任何技能!》,《我可以咬一口吗》,《中层领导力:团队建设篇》,《中层领导力:自我修行篇》
《营销革命3.0:从产品到顾客再到人文精神》,《团队之美》,《释放潜能:7个改变个人、团队和组织的教练技巧》,《最重要的事,只有一件》,《门后的秘密:卓越管理的故事》,《自私的基因(20世纪经典著作)(精编图文版)》
《巨人的陨落》,《爆品战略:39个超级爆品案例的故事、逻辑与方法》,《潜规则:中国历史中的真实游戏》,《丝绸之路:一部全新的世界史》,《Ask:反直觉询问(引爆线上销量的询问式营销技巧)》,《每个人都有故事,却不是他们讲的那一个》
《策略思维——商界、政界及日常生活中的策略竞争(大师细说博弈论)》,《遇见苏格拉底,我的人生睡醒了》,《魔鬼的牧师:关于希望、谎言、科学和爱的思考》,《TED竞争心理学》,《逆向管理》,《狩猎式创新:如何让你的创新思想源源不断(完整图文版)》,《理性动物》
《谷物大脑》,《新内容创业:我这样打造爆款IP》,《关键洞察力:成功沟通的要诀》,《我为什么离开高盛——华尔街的故事》,《至关重要的关系》,《让大脑自由(经典版)》,《沉默的告白》,《应变思维:看穿情势的本质和隐藏的力量》
《鞋狗:耐克创始人菲尔·奈特亲笔自传》,《神秘的量子生命》,《颠覆性思维——想别人所未想,做别人所未做》,《慢思考:大脑超载时代的思考学》,《黑箱社会:控制金钱和信息的数据法则》,《买买买时代的行为经济学》
《能量》,《感召力》,《目标感-28天养成卓越人士的思维和行动模式(普华自我管理系列图书)》,《刻意练习:如何从新手到大师》,《培训师》,《设计冲刺:谷歌风投如何5天完成产品迭代》,《简单思考》
《超预测:预见未来的艺术和科学(完整图文版)》,《你从未真正拼过》,《客观思考的艺术:重构创新、创业、管理和领导新思维》,《如何实现有效社交:做一个高段位的沟通者》,《管理的未来》,《金字塔原理:麦肯锡40年经典培训教材》
《给予者》,《首席内容官:解密英特尔全球内容营销》,《忠诚度革命:用大数据、游戏化重构企业粘性(阅想时代)》,《价值主张设计:如何构建商业模式最重要的环节》,《高效能家庭的7个习惯》,《为什么精英都是清单控》,《匠人如神》,《她和他》,《雪人》,《一位经营鬼才的自白:7—ELEVEn创始人亲述零售帝国背后的故事》2016节点——增长的一年:书单2016-12-19T14:29:22+00:002016-12-19T14:53:28.954355+00:00Phodal Huanghttp://www.phodal.com/blog/author/root/http://www.phodal.com/blog/summary-2016-book-lists/2016 年的书的名字比较多,一半以上是电子书,2333。这些电子书大概有 127 本,估计只有 1/3 看完了,应该还有 1/3 看了一半,还有一些只看了一部分,这些电子书多数为传记、小说、历史、市场营销类的~~。
纸质版的,仍然以技术类、设计类为主
纸质
---
《国际经典交互设计教程:界面设计》,《设计心理学1(增订版):日常的设计》,《精益创业实战(第2版)》,《UX设计之道以用户体验为中心的Web设计(第2版)》、《如何阅读一本书》、《精益客户开发》、《用户体验方法论》、《Scala学习手册》、《精益创业UX篇:高效用户体验设计》、《App这样设计才好卖》、《iOS编程(第4版)》、《AngularJS深度剖析与最佳实践》、《EffectiveObjectiveC2.0:编写高质量iOS与OSX代码的52个有效方法》
《如何作出正确决策:直击决策真相》、《线的魔力:全球最震撼人心的风格插画》、《小说写作教程:虚构文学速成全攻略》、《开始写吧!虚构文学创作》
《游戏大师ChrisCrawford谈互动叙事》、《游戏的人:文化的游戏要素研究》、《计算机程序的构造和解释(原书第2版)》、《服务设计与创新实践》、《你的团队需要一个会讲故事的人》、《如何在30秒内说出关键点》、
《凤凰项目:一个IT运维的传奇故事》、《程序员的呐喊》、《社交天性:人类社交的三大驱动力》、《领域驱动设计模式、原理与实践》
《架构即未来:现代企业可扩展的Web架构、流程和组织(原书第2版)》、《用户故事地图》、《电子工程师必读:元器件与技术》、《深入理解ElasticSearch》、《若为自由故自由软件之父理查德斯托曼传》,《软件随想录卷2》、《软件随想录卷1》、《JavaScript忍者秘籍》
《柔软对话》、《如何作出正确决策:直击决策真相,揭秘是什么在影响你作决定》、《PaaS实现与运维管理:基于Mesos+Docker+ELK的实战指南》、《UCD火花集2:有效的互联网产品设计交互/信息设计用户研究讨论》、《软技能代码之外的生存指南》、《可视化沟通:用信息图表设计让数据说话(全彩)》,《体验经济(珍藏版)》、《编码:隐匿在计算机软硬件背后的语言》、《你能影响任何人:无障碍沟通、高效率合作、强有力执行》、《谁偷走了我的客户?》
《精力管理:管理精力而非时间·互联网+时代顺势腾飞的关键》、《Swift与Cocoa框架开发》、《瞬变:让改变轻松起来的9个方法(新版)》
《嵌入式Linux基础教程(第2版)》、《精通Linux设备驱动程序开发》、《CoreOS实践之路》、《4件自己动手设计物联网》、《绝佳提问:探询改变商业与生活》、《学会提问(原书第10版)》、《视觉会议:应用视觉工具促进团队沟通、决策与执行(典藏版)》
《Microsoft.NET企业级应用架构设计(第2版)》、《新媒体营销圣经:引诱引诱引诱出击!》、《分享时代:如何缔造影响力》
《内向性格的竞争力:发挥你的本来优势》、《小家越住越大》、《博弈思考法:麻省理工学院最受欢迎的商业课》、《TED竞争心理学》
《编程人生:15位软件先驱访谈录(下卷)》、《编程人生15位软件先驱访谈录(上卷)》、《精益品牌塑造》,《流光飞舞》,《学习敏捷开发(影印版)(英文版)》,《DevOps实践》
《迈向Angular2:基于TypeScript的高性能SPA框架》、《精通Nginx》、《精通Python设计模式》、《企业级Web开发》
《奔跑吧Ansible》、《决胜UX互联网产品用户体验策略》、《实时分析:流数据的分析与可视化技术》、《爆品手记》、《响应式架构:消息模式Actor实现与Scala、Akka应用集成》、《精益念力:成就卓越的心态与关键问题》、《图数据库(第2版)》、《游戏编程模式》、《技术人创业攻略》
《SVG精髓(第2版)》、《SPA设计与架构:理解单页面Web应用》、《大型网站性能监测、分析与优化》、《Jenkins权威指南》、《代码不朽:编写可维护软件的10大要则(Java版)》、《金字塔原理:麦肯锡40年经典培训教材》
2015节点——思考的一年:IT书单2015-12-24T13:48:29+00:002015-12-26T14:20:22.732930+00:00Phodal Huanghttp://www.phodal.com/blog/author/root/http://www.phodal.com/blog/summary-2015-book-lists/照例([高速发展的一年](https://www.phodal.com/blog/2014-node-quick-grow-year-books-list/))还是发一下今年的书单。不过,和去年的相比已经去除了非IT类书籍。
大体还是四个方向吧:
- 架构
- 前端
- 数据
- 工程实践
然后就是书单了。。
##前端
《WebComponent实战:探索PolymerJS、MozillaBrick、Bosonic与ReactJS框架》
《DOM启蒙》
《Polymer:面向未来的Web组件开发》
《响应式Web设计性能优化》
《Backbone.js应用程序开发》
《O'Reilly:基于MVC的JavaScriptWeb富应用开发》
《JavaScript框架设计》
《CSS禅意花园(修订版)》
《JavaScript函数式编程》
《移动应用UI设计模式(第2版)》
《网页设计创意书(卷3)》
##架构
《软件架构师的12项修炼(技术技能篇)》
《服务设计模式:SOAP/WSDL与RESTfulWeb服务设计解决方案》
实现模式(修订版)》
《软件架构设计:程序员向架构师转型必备(第2版)》
《面向模式的软件架构(第3卷):资源管理模式》
《面向模式的软件架构(第1卷):模式系统》
《面向模式的软件架构:并发和联网对象模式(卷2)》
《软件架构师的12项修炼》
《软件框架设计的艺术》
《微服务架构与实践》
《思考软件创新设计:A段架构师的思考技术》
《Java应用架构设计:模块化模式与OSGi》
《程序员必读之软件架构》
《领域专用语言实战》
##后台
《RabbitMQ实战:高效部署分布式消息队列》
《大规模分布式存储系统:原理解析与架构实战》
《ZeroMQ:云时代极速消息通信库》《大型分布式网站架构设计与实践》
《大型网站技术架构:核心原理与案例分析》
《七周七并发模型》
《数据库重构》
《构建高性能Web站点(修订版)》
《网站分析师实战指南》
##项目与工程
《程序开发心理学(银年纪念版)》
《配置管理最佳实践》
《成为技术领导者:掌握全面解决问题的方法》
《构建之法:现代软件工程》
《华章程序员书库:代码之殇(原书第2版)》
《发布!软件的设计与部署》
《持续交付:发布可靠软件的系统方法》
《可扩展的艺术:现代企业的Web架构、流程及组织》
《深入理解软件构造系统》
##算法
《迷茫的旅行商:一个无处不在的计算机算法问题》
《代码之髓:编程语言核心概念》
《设计原本》
《算法帝国》
《啊哈!算法》
《集体智慧编程》
##游戏开发
《图灵程序设计丛书:代码本色·用编程模拟自然系统》
《游戏设计要则探秘》
《游戏设计的100个原理》
《不可错过的250款独立游戏(珍藏版)》, 《Unity游戏设计与实现南梦宫一线程序员的开发实例》
《HTML5Canvas核心技术:图形、动画与游戏开发》
《游戏引擎架构》
##代码质量
《编写可读代码的艺术》
《修改代码的艺术》
《优质代码:软件测试的原则、实践与模式》
##敏捷
《用户故事与敏捷方法》
《敏捷教练:如何打造优秀的敏捷团队》
##语言与框架
《Scala并发编程》
《快学Scala》
《WebKit技术内幕》
《Spring源码深度解析》
《深入理解Java虚拟机:JVM高级特性与最佳实践(第2版)》
《Lucene实战(第2版)》
《Java8函数式编程》
《FlaskWeb开发:基于Python的Web应用开发实战》
《图灵程序设计丛书:Python网络编程攻略》
《Python编程实战:运用设计模式、并发和程序库创建高质量程序》
《MongoDB权威指南(第2版)》
《NoSQL精粹》
##DevOps
《自动化运维软件设计实战》
《OpenStack设计与实现》
《Docker源码分析》
《深入剖析Nginx》
##其他
《HTTP权威指南》
《Unix内核源码剖析》
《移动Web手册》
《Web性能实践日志》
《社交电商》