终于入坑了

踟蹰了太长时间,差点就放弃,但是心中还是觉得技术人应该写点什么,留下点什么,所以终于还是入坑了。

从弃坑到入坑


第一次产生写博客的想法应该还是大学时,当时经常逛论坛,翻看技术博客,主要是老外的,当时真的是啥啥芯片都是老外的,资料也就基本英文。看人家写的博客就觉得这帮人怎么这么闲,每天干完工作,还有时间写博客、发文章,甚至拍视频,做技术分享交流,老外的文章质量真的很高,甚至比国内某些教材写的都好,所以萌生了自己也要写的想法,然后就开始找各种方案。

那个时候最流行的就是wordpress,话说似乎时至今日依然很多人在用。当时的公共博客平台不像现在这么多,印象中Google搞过,百度似乎也有,csdn之类的还没兴起,更别说简书、lofter,再说直接公共平台上写,也太没意思了,不折腾哪行。

当时对python比较感兴趣,觉得这个语言不错,语法简洁明了,就开始搜python的博客框架,学电子的我其实对web一点也不懂,好在当时基本上都是静态站点,选择范围也不大,看了一大圈,发现没啥合适的,就自己到图书馆找了本书,从0搞起,最后照着示例在电脑上跑起来了,然后博客之路也就止步于hello world了。。。

后来再次想起来大概快毕业了,创客运动悄然兴起,有个小伙伴搭了个wp站点,做创客资讯和博客,邀请我一起搞。坚持了一段时间,发现自己的写作能力实在是太差了,对很多技术自己还是一知半解,写出来当然就更难了,后来就退出了,专心工作提升技能。

然后就是创客运动席卷全球,哈哈,大家都知道,“世界上只有一个中国”,反正中国对我来说基本约等于全球,GitHub这个全球最大交友社区迅速崛起,不经意间发现GitHub推出了pages服务,很多技术人开始把个人博客放到了上面。于是我再次燃起热情,一顿尝试之下,顺利跑通了hello world,那个博客运行了大概一年半,最终还是弃了。

再后来就是现在了,其实中间也有折腾,但基本也就是动动念头,并没有付诸行动。哦,这中间有一件事必须提一下,就是微信公众号的出现。其实在微信出现的相当长的一段时间,我是连微信都不用的,后来身边用微信的人越来越多、越来越多,再加上飞信和其他一些竞品的相继沉沦,我终于也扛不住,用上了微信。在微信推出公众号服务后,我还注册了一个公众号,在上面发一些电子技术相关的文章。这几年工作算是相对顺利,但是激情逐渐消失,想来想去,还是觉得搞技术的应该留下点什么,知识需要积累沉淀,也需要分享、交流。

选型


在过去的这些年中,技术是快速演进的,新技术层出不穷,每次想搞博客时都费劲心思做选型,总是想选一个最好最nb的方案。但是这次不同了,终于明白了,其实没有什么最好最nb,最重要的还是要搞清楚自己想要什么,自己有什么,能折腾到什么程度,适合自己的才是最好的。下面也是循着这个思路,做一点自己的总结供大家参考。

公共博客平台

这个基本没什么好说的,如果只是想写点东西做记录和分享,公共平台无疑是最佳选择,几乎不需要折腾,注册个账号就行,各方面都比较方便。对于技术人,现在CSDN算声势比较浩大,简书博客园等则低调一些,另外还有开源中国51CTO思否,以及最近两年兴起的掘金,可以根据个人喜好进行选择。不过比较遗憾的是,大多数公共博客平台上的作者还是互联网从业者和软件技术从业者居多,硬件和嵌入式技术博主少,专家博主则更是少之又少。我个人之前对csdn印象还可以,但是最近两年可能盈利压力越来越大,吃相越来越难看。

WordPress

WP毫无疑问依然是建站首选,现在很多云服务器直接支持WP建站,十分便利。WP各种资料、插件也是相当齐全,几乎不用太折腾。缺点嘛,就是如果只是建个人博客的话,今天的WP有些过于臃肿了。

Hexo

Hexo诞生的历史其实也很悠久了,但是真正兴起确实是在js技术大行其道之后。快速、简洁、高效是其主打特征,用户群体大、开发者众多,社区比较活跃,有丰富的主题和插件可选,不用太折腾就能搭建起自己的博客。其实关注Hexo很久了,这次几乎没做进一步比较,就直接用上了。

HUGO

就一个字——快!Hugo应该算是后起之秀中Hexo的最有力竞争者,go语言编写,数量上万的文章,几秒之内搞定,非常适合文章数量多的用户。同时也有很多主题模板可用。如果以后我还会换框架,那大概率就是hugo了。

Pelican

老牌python静态博客框架,其实python web框架有很多,cms也很多,基于django的、flask的,等等,非常丰富,python社区资源绝对没得说,只要你想得到,几乎干啥都有相应的包。Pelican跟hexo、hugo相似,也是静态站点生成器,除了支持markdown,还支持reStructuredText(比markdown语法更严谨更丰富),采用Jinja2模板渲染。我本来是对python相对更熟悉一点,从内心上也是更倾向python的框架,但是看了一些pelican站点之后,还是选择了Hexo,颜值即正义。开玩笑了,其实主要还是因为Hexo是node.js写的,js大杀四方大家都有目共睹,甚至有个说法说能用js的地方最后都会用js,太可怕了,现在已经有一些单片机能跑js了。

MkDocs

一个简单快速的静态站点生成器,python语言编写,很多开源社区使用它编写文档,主题可定制,material主题很漂亮,内置的readthedocs主题与文档托管网站readthedocs无缝衔接。

Jekyll

虽然现在似乎已经没有以前那么主流了,但是作为曾经的王者,必须得列上。在GitHub Pages上应该还有超级多数量的Jekyll生成的站点,可以说Jekyll的出现是创造性的,正是在Jekyll出现之后,Hexo、Hugo等等才如雨后春笋般涌现。Jekyll的作者Tom Preston-Werner(也是GitHub的创始人)说用Jekyll写博客是”Blogging Like a Hacker“。这两天再看相关资料时发现一个国内用Jekyll的博客,胡涂说,很有意思,关于评论系统的一篇文章给了我很大帮助。

docsify

这个跟前面的有点不太一样,官网介绍是”A magical documentation site generator.” 它不是静态生成,而是动态渲染。示例中有很多公司和团队用它做文档服务器。有很多云服务器上托管了这个功能,比如Netlify,几乎零配置,关联下自己的git仓库就可以了,很方便。

其他

比如语雀,也有很多人在上面写博客。还有飞书文档,在最近的功能发布介绍中,也介绍了博客功能。其实语雀和飞书文档的编辑功能很强大,做博客发布也是个不错的选择,语雀现在应该可以绑定自定义域名,飞书文档则不可以,这个算是个硬伤。对于飞书文档,hexo有个插件,可以把博客文章链接到飞书文档,其实就相当于在hexo那里只是做了个索引。

评论系统

博客中评论系统也是不可或缺的。关于第三方评论系统,这篇文章总结的比较全面,以下摘录部分要点。

Disqus

Disqus作为当前最大的第三方评论系统,功能强大,也不用担心数据跑路。使用广泛,一个账号可以通用许多博客评论,甚至可以和均使用 Disqus 作为评论系统的网站建立联系,形成社区。但对于国内来说,却有一个致命缺点,需要科学上网。

Gitalk

基于GitHub Issues的评论系统,目前似乎不维护了。

Waline

这个对于国内使用还是非常友好的,起初是决定用这个做评论系统的。

Giscus

在 GitHub 正式推出 Discussions 后,Giscus 应该说是果不其然地诞生了,它受到了 utterances 的启发,但相比有着更好的权限划分,以及 Discussions 本就是为了讨论而生,因此可以直接回复对应内容,且使用 reactions (各式各样的图标反馈)。且国内似乎尚未被墙,国内也可以正常加载评论。(但不确保以后,毕竟……你懂的)。目前计划使用这个做评论系统,一是主要读者群体应该也都是搞技术的,还是用GitHub交友比较轻松愉快,二是也实在没有能力和精力折腾。希望GitHub永不被墙。

Twikoo

这个是最新找到的,看介绍也很好用,但是需要自己托管服务,虽然现在使用云函数挺方便的,但是想想还是先不折腾了。

Artalk

Artalk 是一款简洁的自托管评论系统,你可以在服务器上轻松部署并置入前端页面中。

最后


关于评论系统,如果有精力,我觉得飞书话题群可能是个很好的方案,缺点就是需要飞书登录。如果飞书文档能把评论组件独立出来就好了。