迷思
首发于迷思
2017,程序人生大串烧

2017,程序人生大串烧

从 2014 年第一篇公众号文章开始,三年多时间我竟然已经写下了 386 篇文章,涵盖技术,管理,创业和一些莫名其妙的感悟。这便是小小的坚持迸发出的能量:不经意间,日拱一卒的零零碎碎汇集出这般美妙的结果。

我常说:读自己的日记,仿佛在跟过去的自己对话。读自己的文章也是如此。早上在 4S 店保养小车,闲来翻翻自己的文字,感觉很棒 —— 这并不是说我觉得我的文字有多棒,而是文字中透出的我的想法,成熟的不成熟的,都承载着我的成长。有这些文字(以及少量日记)作伴,我的 2017 虽不完美,好些计划也没完成,但起码留下了些什么。

2017 年我的第一篇文章 Policy Engine 的前世今生 就振聋发聩 —— 火车上的一次突发奇想加上接下来三天的各种实验,奠定了 Tubi TV 这一年诸多工作的基石,也埋下了一些神坑让 team,甚至 elixir 1.7 去填(比如这个:github.com/elixir-lang/)。现在我们线上奔跑的代码已经和文中描述的大大不同,单 policy 一次编译时间也从 10 分钟,优化到几秒钟,但其中的思路,还是值得大家一看,甚至,文中提到的 如何愉快地撰写 Parser,也值得大家重读。

elixir 是我在 2015 年就在跟进的语言,但一路来都是写写小的 side project,直到 2017 年,在 Policy Engine 尝到甜头后,才正式在生产环境中大规模使用。这一年中,团队累积了很多经验,尤其在 cluster deployment / release / hot upgrade / rolling upgrade 方面 —— 2018 年 3 月份我会在旧金山的 Code BEAM 2018 大会上谈谈我们在这些方面的收获,希望大家捧场。

学一门新的语言并非学习它的语法那么简单。去年年初我写下了 如何使用一门新的语言,介绍了我的一些思考。它不仅仅适用于 elixir,也适用于其他的语言。

如果你对 elixir / erlang 感兴趣,那么, Let it crash:因为误解,所以瞎说Phoenix 1.3,迈向正确的道路上帝说:要有一门面向未来的语言,于是有了 erlang,你也许不想错过。

如何用正确的姿势打开 TDD 这篇文章,详细地探讨了我使用 TDD 的一些心得,里面还涵盖了很多和 design/arch 相关的思考。

是时候想想怎么删除代码了 是一篇很有争议的文章,但他给你一个独特的视角考虑如何写出更好的代码。如果你赞同 Begin with end in mind,那么,我们要好好考虑这个问题:有没有可能,我们在架构之初,就考虑到这个代码有可能在将来成为一种负债,因此在设计上考虑到如何能轻松地将其删除或者替换?

去年 3 月份,我参加了 erlang solutions 的一个 OTP 培训,写下了这样的文字:当我参加培训时,我在想些什么?同样的一件事,不同人眼里有不同的价值,就看我们怎么样去发掘了。

很多人写了很多代码。但是,绝大多数人读过的代码还没有自己写过的代码多。这是一个很奇怪的现象 —— 我们从小到大,少说也读了几百几千万字的书,工作数年甚至十数年,还没有读过同样体量的代码。为什么我们要阅读源码?如何阅读一份源码?希望能让你重燃对读优秀代码的兴趣。

提高软件开发的能力,除了多读代码之外,还要下苦功夫。在提高代码能力这事上,没有银弹 就是这个意思。停下来,歇口气,造轮子 告诉你,没完没了打零工(do chores),如果不能把它们串起来,时不时来个从零到一,你会陷入 你以为你知道了但其实你并不知道你不知道的 的窘境。

软件开发是个从起点到终点的高级寻路游戏,考究的是个解决问题的综合能力 —— 虽说条条大路通罗马,但有的路一马平川势如破竹,有的路如临深渊如履薄冰。我们要寻找的是时间空间俱优,还节省开发效率的妥协(compromise)之路。妥协不是件简单的事情 —— Rich Hickey 说,你起码要有两个以上的 solution,才谈得上妥协 —— 所以,见识丰富必不可少。也许下面几篇文章可以帮到你:

看技术文章看累了,换换脑子,我们扯扯淡:

或者开拓一下视野:

或者回顾一下 2017 年发生的灾难性大事件,以史为镜:

然后,躺在懒人沙发上,想想,作为一个程序员,自己眼中牛逼的自己该是什么样?如果没头绪,参看程序君吐血推荐的这篇:程序员字典:「牛逼」。然后,再想想。

2018 我会格外忙一些 —— 过去几年输入和输出都不算少,但主要在夯实自己的舒适区。2018 我将会深入踏足一些之前我只有粗鄙认知的领域:ML/DL 和 blockchain (主要是基于智能合约的去中心化应用)。我报了些线下和线上的课程,一季度每周大概有 10 个小时要用来上课,估计也要用同样体量的时间来夯实所学。所以我的原创文章产量会大大削减,争取每旬一更,最差也要双周更。请大家体谅。

希望这些文章能对对你有用。

往期串烧:

2016 程序人生大串烧

2015程序人生大串烧

发布于 2018-01-16

文章被以下专栏收录