收起目录
分享
第 1.1 章 写在阅读本书前

为什么强调效率

写下此书的目的是为了帮助 Mac 的使用者更加高效的使用他们手中的开发工具。在理想化的工作中,程序员的工作就是通过编写代码,让软件能够正常运行。

但在工作中,我们难免要处理与本职编程工作无关的事务,占用了大量的工作时间。因此提高工作效率,本质上就是一个很简单的算术题:

净节省时间 = 每天剩下的时间 * 工作天数 - 一次性学习时间

很明显净节省时间越多,提高效率就越值得、也越有必要。从公式里可以看出,想要提高净节省时间,有两个方案。

其一是减少学习时间,尽量少走弯路,这也是写作本书的目的。

其二是尽早开始学习,越早掌握这些技巧, 节省下来的时间就越多。

我的价值观

在开始正文的介绍前,我还想推广一下自己的价值观,正是这样的价值观,指导我做出了后面五章中的各种方案选型。

我坚持认为没有最好的方案,只有最适合自己的方案。每个人都有不同的工作方式和需求,因此很难找到一套放之四海而皆准的方案。也许一个人绞尽脑汁想要解决的问题,别人永远也遇不到。因此比具体方案更重要的,是对原理的了解,和一颗好奇并且追求极致的心。

我相信简单即是最美,简单即是最有效。奥卡姆剃刀原理告诉我们:“如非必要,勿增实体”。我见过很多人,系统里装满了应用,桌面乱七八糟,菜单栏显示各种插件,Dock 栏里面打开了各种软件,把 Mac 武装得像一艘航空母舰一样,但实际上得到了什么呢?无非是几个月也不打开一次,沦为收藏品的应用,和一堆乱七八糟的应用和文件,真的要用到的反而半天都找不到。这样的电脑其实就是外强中干的纸老虎,庞大的复杂度会悄悄的消耗掉程序员宝贵的时间,降低工作效率。

我更愿意选择正确的方式,而不是最习惯的方式。习惯的方式并不一定适合自己,它不是懒于学习和改进的挡箭牌。要知道对于个体来说,方案一定有高下之分,而且优秀的方案永远是优秀的,甚至越来越优秀,而习惯是可以培养的。我们不能用战术上的勤奋来掩盖战略上的懒惰。

常见误区

写作本书的另一目的是希望通过具体的例子,纠正一些流传甚广的错误和误区。比如一说到键盘党,极客,人们往往有两种极端的误区。

一种人会觉得键盘党是在装逼炫技,认为这样的操作过于复杂,毫无学习记忆的必要。其实不然, 有些快捷键或者命令行的使用确实学习成本不低,但一旦熟练使用,就很容易形成肌肉记忆。但鼠标的点击操作速度是存在上限的,因此我们应该尽可能选择快速、可自动化的方式去完成某个操作。

而另一类人又容易陷入对键盘流的盲目崇拜中,觉得这样很极客,很酷炫,总想着用类似的方式完成所有任务。因此工作中我们也会见到一类同事,对任何操作都想尽办法做优化,花费了大量时间和精力,却没有意识到同类的事情并不很复杂,或者一年也发生不了几次,而程序员的最终目标是产出代码, 一切优化和努力的最终目标都应该是更快的产出代码,而不是酷炫的工作方式。因此,我们凡事都应该计算净收益,如果学习成本高,使用成本低,节省时间又不明显,那么就不值得去做。比较典型的例子就是试图把 Vim 打造成 IDE。

因此在我看来,真正的极客并不关注完成操作的方式,而是理性计算成本和收益。不断的找到当下的痛点,选择学习成本最低,效率最高的方式去完成。

准备工作

阅读本书不需要太多的知识背景,唯一需要了解的就是 HomeBrew。HomeBrew 是 Mac 系统的包管理工具,类似于 Node 的 npm,或者 iOS 的 Cocoapods,或者 Python 的 pip,亦或者 Ruby 的 gem。

如果还没有安装 HomeBrew,安装起来也很简单,只要打开终端,输入以下命令即可:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

然后通过 brew 命令,就可以安装绝大多数系统依赖的工具和应用了:

brew install wget        # 安装 wget 工具
brew cask install wechat # 安装微信

本书中绝大多数技巧,在我的系统配置脚本中都有,只要在终端运行这行命令即可:

curl https://raw.githubusercontent.com/bestswifter/macbootstrap/master/bootstrap.sh | sh

警告⚠️:本项目是为新电脑设计,虽然做了一些保护,请依然谨慎在生产环境中使用此配置,对于因此造成的配置丢失和错乱,作者不负任何责任

9条评论

还能这样装微信。。。

Created with Sketch. 回复
Created with Sketch.

我是从一个麦肯锡的devops manager那里看到brew cask install的。很多mac上的CI/CD的配置、安装与迁移都靠这个

Created with Sketch. 回复
Created with Sketch.

上个月买的新mac就使用了上述的mac bootstrap脚本,让新mac直接变身开发利器👍

Created with Sketch. 回复
Created with Sketch.

应该先查询一下,再去判断是安装还是更新

Created with Sketch. 回复
Created with Sketch.

brew cask 可以安装很多应用,写个脚本,每次重装系统,一键安装平时用的工具还是很方便。

Created with Sketch. 回复
Created with Sketch.

为什么我下载homebrew就会出现curl: (35) LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to
raw.githubusercontent.com:443

Created with Sketch. 回复
Created with Sketch.

请问作者使用了你的配置脚本感到不喜欢或出现问题怎么才能还原呢?

Created with Sketch. 回复
Created with Sketch.

拜托作者告诉我怎么能把键盘恢复设置成默认情况,现在都不认识自己的键盘了,除了control建和CapsLock换了外,F区键盘发生了什么?

Created with Sketch. 回复
Created with Sketch.

#8楼 @月29 见 2.1 章

Created with Sketch. 回复
Created with Sketch.
你的解锁链接已复制成功
将链接发送给文件输出助手,然后打开链接即可解锁
取消