通知:9月起博客暂时切换到 HTTP

前几天博客证书错误的原因找到了。在网站迁移的时候博客配置文件没有复制成功,但 Certbot 创建的 cron job 还是很顽强的不断重发请求(大概每天一次的频率),几天以后就因为请求次数过多被 ban 了。

该问题出现的原因是,LetsEncrypt 的服务应该是为了避免被滥用而限制了一定时间内可以使用的次数,如果超过次数,则会禁止使用一段时间。而 Certbot 的定时服务并没有考虑为什么出错,只是简单粗暴地反复尝试,于是一段时间以后就被封了。

为什么他们什么都可以不认真

最近发生的几件事情。我对事件本身并没有太多感想,但是之后发生的一些事情却让我想要说点什么了。

小女孩在光天化日之下被猥亵。犯人被惩处是理所当然的,却有人跳出来说,你看小女孩也没有当回事啊,人家的家庭有人家的情况,你们这些外人起什么劲啊。

海底捞爆出卫生问题。官方的表态还是很不错的,比推锅给临时工的强太多。这时候又有人出来说了,其他饭店的卫生还有更差的啊,有什么好大惊小怪的。

暴风“杀了一个程序员祭天”,部分程序猿同学表示了不满。还是有人跳出来说,不就是一句玩笑话,这么当真干嘛,你们都是玻璃心么。

似乎在这些人眼里,所有的事情都不值得认真。但是我更愿意尊重认真的人,他们才是改变这个世界的动力。苏格拉底说,我是雅典的牛虻。而那些事事觉得无所谓、对认真做事的人还要冷嘲热讽的人,西方谓之犬儒,中国称为乡愿,孔子瞧不起他们,说他们是德之贼,宁愿与狂狷之人交往,也不要理他们。

博客迁移完毕

当您看到本文章,说明本博客的 DNS 修改已经生效,您看到的是新的博客了。欢迎造访!

本博客最初的版本是用 Wordpress 搭建的。虽然工作的还不错,功能也足够强大,但就是 喜欢不起来。一方面因为本人是对 PHP 无爱; 另一方面,花了很多时间去折腾各种插件, 却感觉质量良莠不齐,很多缺乏维护,社区商业气氛也太重。

这次改版,我选择了 Hexo。本来也想过放到 Github Page 上,但是到域名解析那一步 才发现,为子域名提供 HTTPS 证书很棘手,按照网上的信息设置 Cloudflare 解析, 结果主域也被搞乱了...放弃。(如果您在2017/08/24 当天访问网站或博客,可能会发现间歇 性的问题,就是我在调整域名解析...)当然,选择了静态化方案也就意味着博客缺少交互 功能。目前暂时没有引入其他交互性插件的打算,如果确实有话想说,请 邮件联系我 吧。

博客近期更新计划

首先感谢您对本博客的关注。

本博客(及主站)最近在酝酿一次比较大的调整,也因此有一段时间没有更新了。由于最近几个月工作上的事情一直比较多,迁移的进程比预期要慢,可能要到9月份,才能给大家看到一个全新的网站。在此期间,博客和网站基本上不会再更新。期待新的网站诞生后能够更好的迎接大家。再次感谢!

Qt5.9.1 修正了编译问题

Qt 5.9.0 今年5月份已经发布了,但我下载以后,用 Visual C++ 2015编译却不成功,出现了一些奇奇怪怪的问题。当时因为时间有限,并且也没有资源可供参考(太新了),因此也就弃坑没有深究。

这两天偶然间发现 Qt 5.9.1 已经放出来了(看目录信息,真正放出来的时间应该是6月底)。下载回来用同样方法再编译,这次非常顺利的通过了。看起来上个版本确实存在问题,这次修正了。CHANGELOG 很简单,只说这是个 bug 修复版本,没有更详细的记录。

不过编译已经通过,并且 5.9 是 LTS 版本,我可以考虑逐渐把以前用 5.6/5.8 编写的程序迁移过来了。和 5.6~5.8 有一点不同的是,mkspec 中现在 msvc 不再像以前那样区分版本号(win32-msvc20XX),现在统一为 win32-msvc。在 configure 指令中简单调整一下就好。

用雷达图帮你做技术选型

软件开发行业一个经久不衰的主题是:如何从一堆不同的技术(语言、类库、框架、应用、数据库 etc...)中做出选择。这也难怪,因为可以选择的轮子实在太多了。

当这种问题出现的时候,通常看到的局面是——一群不关己事的人七嘴八舌的评论这个好,那个不好,有时候还会有人强行安利和问题本身不大的内容。结果往往并不好。因为提问者会问出这个问题,说明他自己缺少足够的背景知识,再听上这么多东拉西扯的意见,不昏头转向才对。

事实上,做技术选择也可以是有方法、有套路的。我在这里介绍一种有用的思考方法:雷达图。

Linux Mint 18.2 (Sonya)发布了

Linux Mint Sonya

第一时间下载安装试了试——在虚拟机(VMWare)里。很惊喜的发现,安装速度比 18.2 版本快了很多,大概只有几分钟时间;我看个网页回来的时候,发现界面已经提示我 Reboot 了。安装过程中的图像比以前略有调整,更漂亮了一些。

Beyond What?——十年之后,谈谈 Ruby, Rails,过去和未来 (二)

Beyond Java

上一篇文章 中,我们讲到了 Ruby / Rails 为何没有如先前人们预期的那样成为业界开发的主流——主要是在技术的层面上。但我觉得似乎还缺点什么。

有意思的是,Rails 当初之所以被当作 Java 的继承者,主要原因是在开发效率上有10倍的差距(撇开其中的宣传成分不论)。而之后被众多网站弃用,则是因为在性能上比后继者有10倍以上差距——这个变化当然有点讽刺意味,却也道出了一个事实:开发的风向已经变了。

Beyond What?——十年之后,谈谈 Ruby, Rails,过去和未来

Beyond Java

2005年,Java 开发者和专栏作家 Bruce Tate 写下了 《Beyond Java》 一书(中译本《超越 Java》,2007年出版)。该书的主要目标是探讨 Java 企业开发的发展方向。尽管作者尽力避免对未来做出明确的预言,但通读全书后,含义仍然是非常明显的:以 Ruby 编程语言和 Rails 框架为代表的新一代编程技术将会超越 Java,引导下一个时代的开发潮流。

需要说明的是,该书提出的观点并不只是作者的个人意见,而是在很大程度上代表了当时很多具有前瞻思想的开发者、包括一些著名业界领袖的共识。要理解这一点,首先需要了解 Ruby / Rails 兴起的历史背景。

用七牛云备份博客记录

经过多方尝试后,我决定不使用任何插件,而是用脚本来自己备份博客数据到七牛云。具体方法:

  1. 用 mysqldump 导出整个数据库;
  2. 拷贝站点文件到备份目录下;
  3. 用 tar 归档上述文件;
  4. 用七牛提供的 shell 工具,将备份文件上传到自己的空间。