每月分享 202004 新的尝试

不知不觉又到更新每月分享的时间。

想写一下我为什么做这件事情?分享自己平时看到有意思的内容,现实世界认识的人,很少对我关注的内容感兴趣,所幸能借助博客超越时间和空间限制的分享。

另外一点,我希望自己能将这个系列当成一个产品去迭代,每一期都有形式和内容上的进步。这件事看起来很简单,但却需要耗费很大的精力。其实在网上看到很多人通过这种形式分享,到头来还在坚持的大概也没有多少人(比如阮一峰的科技爱好者周刊)。

Zettelkasten 以及 Roam Research

Zettlekasten 是一个德语单词,意思是卡片盒。现在主要指一种记笔记的思路。Roam Research 是目前国外很火的一个笔记软件,最大的特点是实现不同笔记之间的双向链接。好几个月前就开始尝试 Zettlekasten 的方法,4 月开始才使用 Roam Research。这里先分享一些我看过的文章。

阅读

  • 中文互联网中“讨论”的消亡 | 机核 GCORES:从产品设计角度分析国内主流网站如何限制用户讨论,互联网缩短人与人之间的距离,但我们用来互喷。
  • 互联网是人类历史的一段弯路吗?-虎嗅网:又一篇深度长文,很多观点可以背下来出去装B。
  • ByteDance程序员生存指南 - 知乎
    • 有些年轻人,在结束一整天的工作后,拖着疲惫不堪的肉体回到出租屋,这时候只想躺着啥都不想干,躺在好几周没有换过的床单上点开了抖音,不一会儿就刷到了凌晨,第二天再拖着疲惫不堪的肉体上班。到了周末也没有任何心力出去玩,只能睡到中午然后随便吃点东西看看剧。没有生活,没有朋友,一晃就单身了四五年,长此以往不仅仅是肉体在亚健康和崩溃的边缘,心理健康更是会出现问题。 孤独、焦虑、易怒等等情绪时刻伴随着一个人。
    • 每个月仅仅只有收到工资短信时可以高兴几分钟。但这笔钱并不敢轻易花出去,因为都是血汗积攒而来,付出的多自然不敢随意花出去。
  • 构建优雅的知识创造系统 [[阳志平]] [[卡片写作法]]
    • 利用电子卡片后,如何量化每天的产出?是不是可以换算成 github 更新多少字?
    • 卡片是自己看的,不需要分享:在卡片层级最大的误区是:分享不少人误将卡片、文件和项目三个层级混为一谈,喜欢在卡片层级搞分享。这样每次撰写卡片时就增加了一个选择项:这张卡片我是该分享还是该存着自己看?增加的认知操作加大了认知负荷,从简单反应时变为选择反应时。所以尽可能在卡片层级少做分享。
    • 一周、一月、一年、十年与数十年,进行自己的实践。
  • 所有人问俞军
    • [[金字塔原理]] 和 [[学会提问]]
    • 优秀的思维方式以及对人性和世界的底层理解
    • 我不是说人工智能不好,而是我自己只关心我能想明白一两年内能给创造什么用户价值的产品(或技术等),如果我想不明白这东西马上能给用户创造什么价值,我就毫无兴趣。
    • 看《搜索研究院》页首页尾的那句话,“我们若能更妥善地搜寻资料,实在已经改变世界。”
  • 前百度首席科学家吴恩达谈学习
    • 如果你学习,两天后的周一,你不会很快的就在工作中出彩,你的老板也不会知道你花了整天的时间学习,更不会夸奖你什么。你几乎找不到任何东西可以证明你在努力学习。
  • 再谈个人知识管理:革新我的笔记系统 | 吕立青的博客 好久没有看到立青写文章
    • 不同软件之间,单条笔记的迁移相当于一次对知识进行提炼的过程。
  • 关于动物之森的三则 – 苔原带
    • 以前玩家渴望在游戏里杀死巨龙,飞向人马座,击败外星侵入者。而现在我们只需要在游戏里“正常”的生活就乐呵呵了。和朋友一起野餐,请朋友到家里来玩,一个人傻乎乎做开心的事情在现实世界中已经有这么高的门槛了么?又或者只是因为在游戏里做这些事情的成本足够低,多巴胺回报足够快?

机器学习

放弃的事情:Emacs

写作软件中积累一些文章的草稿,不过由于我的兴趣变化太快,很多文章还没有完成就已经被我放弃。借这个机会,展示一些有意思的东西。

程序员圈子中编辑器战争一直是一个绕不过去的话题。自己日常的工作中会使用多种编辑器:

  • Sublime Text 简单处理文本
  • IDEA 处理 Scala Spark 相关的代码
  • PyCharm 连接 GPU 服务器处理 python 相关的代码
  • VS Code 本机上写 python、shell、cpp、sql 等脚本
  • Vim 服务器上修改文件

不论选择什么编辑器,都推荐大家去看陈斌的一年成为Emacs高手 (像神一样使用编辑器)

去年底的时候,由于想尝试 org-mode 做任务管理(下个月再分享相关的内容),开始尝试使用 Emacs。Emacs 最大的有点是基于 Elisp 开发,软件中的每一个功能都对应一个函数,一个快捷键对应一个按键和函数的 map。修改功能和配置非常的方法。比如有人完全将 Vim 在文本操作上的功能迁移过来做成 evil 这个插件(号称所有和 Vim 中表现不同的情况都是 bug)。

Emacs 需要大量时间调教才能用起来舒心,对于初学者推荐去网上找一些成熟的配置直接使用。目前比较流行的有 Spacemacs 和 Doom emacs,这些配置维护以及使用的人很多,方便解决你遇到的各种问题。另外那些某些大佬个人分享的配置,如果你和大佬的技术栈不同,没有必要强行 clone。把它当成是一个学习素材,更好的理解 Emacs 背后的哲学。再这些基础上,成为高效的程序员的第一步,就是打造属于你自己的专门的配置文件。

使用好的编辑器是为了更快的工作。那如何更快的工作?

  1. 在加快敲击键盘的速度
  2. 减少敲击键盘的次数
  3. 减少鼠标和键盘之间的切换

关于 2,我在之前的文章中提到过一点,改变中文的输入方式(从全拼切换到小鹤双拼)。另外一点就是多使用快捷功能,比如 vim 里面的行号跳转。大部分软件的快捷键都是开发商配置好的,不过每一人主要使用的功能其实是完全不一样的。Emacs 中所有的快捷键可以查到定义的文件,从而进行修改。想象一种情况,为了减少我们按快捷键的次数以及难度。我们统计一段时间内使用 Emacs 各个功能的次数(插件 keyfreq),然后重新定义对应的快捷键。

由于我自己之前主要使用的是 vim,所以也给 vim 用户一个相对于合理的替换过程:

  1. 当成普通的 vim 使用
  2. 逐步接触 org-mode 相关的功能
  3. 使用 emacs 其他的特性