用面向对象方法组织 Flask 应用程序 (一)

Flask

Flask 是著名的 Python Web 微框架,而 《Flask Web 开发——基于 Python 的 Web 应用开发实战》(OReilly出版社出品,以一只大狗作为封面,所以也有人戏称“狗书”)则是这一框架的经典书籍。特别是该书的第七章,描述如何将网站划分为多个模块,很多 Flask 网站都是参照该例子的形式进行规划的。

我的 个人主页 也用了 Flask 框架来开发,网站结构在很大程度上参考了该书的示例。但在开发过程中,我也感觉到该方式也有一些不够合理的地方,主要表现在:

Qt 直接定位下载地址

Qt 5.9 发布了,这是一个LTS(长期支持)版本,应该值得好好研究。

然而不得不说,最近几年从 Qt 官网明显感觉到商业化味道越来越重了,下载 SDK 要你先填一堆个人资料,让人感觉很不舒服,而在不同页面跳来跳去的体验也让人抓狂(速度问题我就不说了,这个锅大概应该让墙来背,不怪你)。

好在 Archive Repository 现在还是可以直接访问的。如果有不想跟官网捉迷藏、或者和我一样,不希望为了下载一个开发包而把个人资料交出去的同学,请温柔地点击如下地址:

Qt Archive Repository

浏览器是更强大的IDE

虽然我很多时间都在做和 Web 网站相关的开发工作,但很少有机会从另一个角度去看待这件领域。直到有一天,我和设计师沟通需求时,看着他在浏览器里打开开发工具,直接修改线上的网页样式,然后观察效果,这样反复几次,最后效果满意了,再把完成的样式复制到自己的设计稿里。

那一刻我被深深触动了。尽管从技术上说这并不是多么稀奇的事情,甚至我自己也做过好多次类似的事情,但是从旁观者的视角,却让我意识到自己过去一直不太注重的一个事实:浏览器实际上是一个非常强大的IDE,甚至比某些人喜欢挂在嘴边的“宇宙最强”,在某些方面更加强大。

Linux Mint 安装中文后菜单字体变成楷体的解决办法

更新(2017年7月4日):最新发布的 Linux Mint 18.2 (Sonya)已经有所改进,设置字体会正确应用到菜单,不再需要 Font Manager 了。

此方法适用于 Linux Mint 18.1。

在 Linux Mint 的控制面板/语言设置中安装简体中文后,系统字体会变成楷体,很不好看。即使在字体设置里全部改为文泉驿,系统菜单和终端的字体仍然顽强地保持楷体。

日本:多难兴邦?

最近阅读知乎书刊《浅谈日本IT行业》,其中一些内容让我颇有感触。

我个人对历史日本IT行业了解非常有限,仅仅知道曾经有一段时间日本IT曾经对整个行业有不少贡献。除了电器游戏什么的就不必提,诸如禅道、Matz 的 Ruby 语言、源自制造业的精益思想,都是我们熟知的内容。但是这本杂志的叙述却让我看到另外一个自成一体、因循守旧的日本。比如,日本互联网从 90 年代开始兴起,和美、中基本上处在同一时间线,然而和中美不同,日本互联网从兴起时就受到国内标准的严重制约,以至于 TCP/IP 这样的基础通信协议在境内都难以推行。讽刺的是,发生在 1995 年的阪神大地震却意外成为互联网推进的契机:在大灾难发生时,日本人才发现通过电子邮件与国际友人和志愿者通信比普通方式更加快捷方便,而互联网在信息传播上也高效得多,这才使得互联网在日本国内得到了长足 的发展。而智能手机通信 App 和 SNS 也是在 2011 年大地震之后迅速普及的。

博客迁移记录

本博客原来使用二级域名(blog.yuhao.space),现为了方便统一管理,迁移到新地址(https://www.yuhao.space/blog)。本文是迁移过程中的一些要点记录,以供参考和备查。

庆祝博客开通成功!

真是充实的一天!在犹豫很久以后,终于在 vultr 上搭建了自己的博客平台,设置了 Godaddy 域名解析,用 Let's Encrypt 生成了 HTTPS 证书。虽然中间经历了一些曲折,但是看到自己的博客成功跑起来,还是体会到了发自内心的幸福感。

搭建这个博客的过程,一方面来说比想象中要容易得多,这要感谢网络上丰富的教程和现代软件良好的上手体验。但从另一方面说,我也感觉到自己知识体系方面的不足,比如域名的 A/TXT/MX 记录用法如何、Nginx一些配置看不太明白、Let's Encrypt 证书的具体原理到底是什么,现在仍然有点晕晕乎乎的,可以说是知其然却不知其所以然吧。当然 WordPress 本身也有很多功能需要去深入了解。

不论如何,现在还是为有一个良好的开端而庆祝吧。Congratulations!