谈程序员的效率和其它
谈起程序员的效率,不免有些资本家的味道,资本家的角度总是希冀同样甚至更低的成本能够获得更高质量的劳动力,而现状是社会在由劳动密集型逐渐向知识密集型转变。某种意义上而言效率越高,知识变现的能力就越强。
不过程序员终归是自然人,如同一个妙龄少女终究每个月绕不过大姨妈一样,一个人难免随着环境的影响,抑或情绪的波动,会呈现出精神状态和工作效率起伏波动的情形。因此想要提升效率难免有两个方面需要着手:一是提升内在的修养,不为小事羁绊,不为琐事忧虑,做思维的主人;另一方面就是借力用力,借助第三方工具或者软件辅助提升自己的工作效率。前者过于虚无,因此本文只是着力探讨后者。
先聊聊大脑,大脑是人类进化的奇迹。但是它也有局限,如同软件的发展通常要依附硬件的革新一样,我们无法短期内突破大脑的局限,但是我们可以通过一些工具和方法来弥补。
我们的记忆依赖大脑里的海马区域。记忆的产生是海马区域与大脑皮层的感知处理区域共同完成的。大脑其实并不擅长短期记忆,为了巩固一段短期记忆,使它变成一段长期记忆,我们需要使记忆能够环流几次,以加强关联性。这就意味着我们需要无数次重复这些信息,有意识地将它们存储在大脑里。不然信息就会丢失。
大脑的短期存储容量并不大,它可以同时容纳大约7项独立内容,而且有研究表明大脑集中精力最多只有25分钟。因此我们需要通过工具帮助我们解决大脑易失性、不擅长记忆和无法长期集中精力等问题。再加上程序员往往很多需要做的事情比较细枝末节,于是便诞生了各种时间管理工具和各种工作法,从中选一种适合自己的工作法和GTD工具能够显著你的工作效率。
其次程序员会遇到如此的窘境:查找某个技术问题,百度搜索未果,Google却链接被重置,偶尔想查阅下一些技术先驱的技术文章,却发现同Google一样的遭遇。于是一个智能的、低成本的跳墙方案也能很大程度提升效率和知识储备,常见的如GoAgent、Proxy Switchy,都是不错的解决方案。顺便透露下,本人最近在研究路由跳墙,希望自己打造一个迷你智能的跳墙路由,后续有结论后会专门分享一篇文章给大家。
除此之外输入法也可能会是效率的一个瓶颈,比如写作,一个优秀智能的输入法几乎能让你一气呵成,否则你可能会面临经常输入错别字从而频繁退格修改的情况。又如多剪切板增强工具也是程序员的利器,除此之外还有双屏甚至多屏工作,现在大公司基本都会给程序员配备双显示器,我之前乃至现在的公司都很重视这点。双屏能够降低屏幕上的窗口熵,避免频繁的窗口切换从而更加专注和高效。
在此顺道向大家介绍下今天花了68元购买的一款iPad软件Air Display,借助它能够将你的iPad作为Mac的扩展屏幕,下班后在家里也能享受伪双屏的生活了。
本文只是希望能够抛砖引玉,旨在提供一种思路,当你发现你的平日工作中有些地方经常重复工作或者效率很低,也许就该试图对重复的工作做一些自动化,或者找一些工具来提升了。
ps: 微信5.0今天发布了iOS版,刚写完本文正好收到Android版的内测包,启动画面很有爱,是一个打飞机的游戏。另外本人最近由于参与书籍的翻译,精力不支,期望大家多多投稿,同时为了保证文章质量,可能会后续出现非每天推送的情况,望大家谅解。