建立属于你自己的 Wiki

这个想法最初来源于 熊猫小A-为什么每个人都应该有自己的 Wiki,所以会引用他写的部分文字。

什么是个人 Wiki?

在文章最开始的部分,我们先来区分学习过程中的两个基本概念——知识能力

知识是人对客观规律的主观表征。举一些专业相关的例子,在一个新的 Linux 系统下,如何安装 MySQL?如何初始化一个 Spring Boot 工程并配置好相关依赖?这些知识使用频率不高,但往往最容易习得,遇到类似的问题翻翻官方文档,或者看看别人的 blog,很轻松就会解决。

而能力是以熟练不熟练为判断的,它没有知识那种知道或不知道,“原来是这么回事”的瞬间快感。比如遇到 bug 如何快速定位?再比如面对具体问题如何快速建模转化为计算机可以处理的形式?它是许多个知识点、许多次实践积累出来的,是一种抽象高维的存在。

两个概念间的一个关键的区别就是,能力是不占用很大的记忆空间的,多数情况下,它已经被训练成为了人的一种肌肉记忆;而知识并不总是那么稳当,当你需要的时候它们经常消失在大脑里,因此你不得不做无用功,去搜索,再一次习得这部分知识。

所以,对于这类繁杂易忘的知识,最好的办法是招之即来挥之即去,用的时候习得,不用时就不要让它占据自己的大脑太久。这也是印象笔记这类软件的一个核心理念,像它声称的一样,要做你的「第二大脑」,意在让人把当下不重要的零散知识 dump 出来,保持大脑的干净整洁,同时也保证知识并没有丢失,它们一直在笔记库里静静等待你的调用。

为什么不直接去互联网搜索?原因其实挺显而易见。互联网是变化的,一个信息来源,下一次去访问就不一定还存在,而且从搜索结果中剔除出需要的内容耗费的精力也不低,而这种精力本没必要每次都付出。

因此,每个人都应该具有这样的一个系统:它能装下上文所述的那些零散知识,同时能够在你需要的时候方便地找到。把这样的系统都叫做「个人 Wiki」,Wiki 这个词本来指的是多人维护的写作系统,但是我曲解它,把它解释成像维基百科那样由一个个词条组成的知识网络。

背后的实现方式重要性却没有那么高,你可以用印象笔记,可以用为知笔记,甚至纸笔、系统自带的备忘录也可以。

我的个人 Wiki 的建立方式

对于我而言,个人 Wiki 需要有以下几项功能:

  • 多层级分类:至少两级分类以明确知识之间的关系。
  • 搜索功能强大。

通过各方面的取舍,我选择了使用本地 Typora + Hexo + GitHub / Coding Pages 的解决方案。

Typora 是目前我最喜欢的 Markdown 编辑器,它使 Markdown 所见即所得,区别于传统的左侧编写右侧预览,在同样大的显示区域中提供了更大的操作空间。且与 PicGo 良好的绑定,使图片的上传与文章编写无缝衔接。

远程托管使用了 Hexo 工具,选择了 Wikitten 主题,它几乎满足了我对 Wiki 样式和功能的所有需求。此外,为了简化 Hexo 部署的步骤以及多终端编辑,我参考了使用 Travis CI 自动生成与部署 Hexo 博客,实现了 git push 后直接自动部署网站。

网站托管使用了 GitHub / Coding Pages ,国内国外都可以保证访问的流畅性。

Wiki+

在使用的过程中,我一开始只记录琐碎的知识点,后来进行扩充,它又多了一些区别于传统 Wiki 的内容(我称之为 Wiki+),主要包括了以下几个模块:

  • 项目:用于记录参与项目时总结的一些文档,包括 regular meeting 的记录。
  • 学习:包括从课堂或线上视频学习到的知识点,可理解为课堂笔记。
  • 整理:这部分分类还不是很具体,它又可以包括以下几个内容:

    • 杂:一些难以分类的东西,比如和别人讨论时的观点,或是从网络文章中获得的东西,再或是灵光一现的思考。
    • 面试:为面试而准备的一系列知识。
    • 草稿:一般是我在发表 blog 前的草稿,通常会经过几次迭代。
    • 环境配置:包括配置开发环境时的一些文章,当我再次需要安装某个软件时,首先搜索的不是 Google 而是这里。

以上就是我目前记录在 Wiki 中的内容,结构和形式随时都会变化,所以参考意义不大。另外,这里的内容不是面向普通用户的,而是仅仅面向我个人的,它们可能难以阅读、可能仍有错误,不过如果你愿意了解,欢迎访问我的 Wiki

最后,我还是希望每个人都建立自己的 Wiki 系统,用什么方式建不重要,建不建很重要。

添加新评论