用 vim 来磨练一下人生意志呗

vim 挺难的,真的。

但难点多好啊。你不觉得现在很多东西一下都变得简单了反而让人特别不安么,尤其是那些本应该很难或者说需要花时间的那些事。举栗子,

我身边已经好几个人,用了一两个周末听完了一个课程,据说就已经掌握编程精要了,
还有几个,一个月之内已经熟用 python,成为数据分析师了,
另几个,好像已经结识行业翘楚,随时等待机会创造双赢了。

很多东西都是需要花时间才能掌握,并因此获得进步的。学习是这样,工作是这样,就连游戏也是这样。打怪升级要花时间,练习枪法、走位、战术这些不都要花(大量)时间么。所以老话说量变产生质变也不是没有道理。

当然,除了时间,还要有正确的方向。我到现在还依稀记得高中物理课上的一个发射火箭遇卫星的例子,如果算错方向,那么永远都遇不上,并总结为 “失之毫厘,谬以千里”。这多年过去了,知识都还给老师了(甚至这个例子我可能都记错了),但这句话倒还是记得。而寻找方向,就要沉下心去搜集资料,仔细分析,甚至去试错。所以,总结起来就是

  1. (花时间)寻找方向
  2. (花时间)检验方向,评估,甚至去试错
  3. (花时间)总结反思。

Problem Solving 的思维代码

如果你喜欢编程,那就干脆把刚才的过程写成这段 “思维代码” 1

1
2
3
4
5
6
def problem_solving(problem):
optimal_solution = None
possible_solutions = research_and_find_solution(problem)
for solution in possible_solutions:
optimal_solution = better_solution(solution, optimal_solution)
return optimal_solution

这段思维代码虽然过于简单,但也有很多可展来讨论的部分,也有很多可以拓展的部分(比如,可以把问题分类,或者存下每次的最佳解,称之为 knowledge,等等等等,一瞬间想到好多),咱们以后慢慢再拓展也不迟。

说了这么说,那……这一切和 vim 有毛关系啊……

当然有了,因为学习并使用 vim 本身就是实践这段 “思维代码” 的过程。

如果你从没有用过这样的思路来解决问题的话,那么至少在学习和使用 vim 的过程中,这样的思路是有用的。正是因为 vim 比较复杂同时有十分强大,它成为了我眼中的一个锻炼 “问题解决能力” 的一个工具。正是因为过去几年的学习和使用,我更能沉下心去研究问题(因为着急也不解决问题),更多的去关注思维过程和处理过程的优化(永远在想怎么能用更少的键做更多事情)。而这些 “副产品” 是我当年怎么想也想不到的。

“心急” 的思维代码

vim 学期曲线虽然陡峭,但是一切进步都是不可逆的。你弄明白的每一个插件,每一个设置都能在以后的使用过程中有形或无形地带来收益。而且,这个过程及其锻炼人的耐心,很多人甚至在过第一个门槛之前就已经放弃了。因为他们的 “思维代码” 是这样的:

1
2
3
4
5
6
7
8
9
def problem_solving(problem):
time, patient = 0, 0
optimal_solution = None
# 以下这段代码是废的,因为永远不会执行
if patient > 0 and time > 0:
possible_solutions = research_and_find_solution(problem)
for solution in possible_solutions:
optimal_solution = better_solution(solution, optimal_solution)
return optimal_solution

如果你熟识 vim 并运用流畅,那么你一定是一个脾气很好的人。

这里 patient = infinity

新年快乐

但凡事都不能本末倒置 (这句话是提醒我自己)。虽说磨刀不误砍柴功,但还是要搞明白这第一目标是 “砍柴” 而不是 “磨刀”。因为如果最终连目标都没完成,那 “刀再快” 也没用。甚至,如果起初根本就不需要 “砍柴”,而是需要 ”写诗“,那连刀也不用碰。

如果你本来就对 vim 兴趣不大,那么我也希望这段 “思维代码” 提供一个有意思的思考角度。如果你有些兴趣,并想试一试的话,那么:

新的一年,就用 vim 来磨练一下人生意志呗。大家新年快乐!

2018.2 于多伦多


  1. 1.没错,我那几个熟练掌握了 python 的数据分析师朋友,这就是 python 代码 :P
VZJ wechat
欢迎您扫一扫上面的二维码,订阅 V 字君的微信公众号。