SHUHARI 的博客

流光飞舞

重要通知: 本站将迁移到域名 https://shuhari.dev/, 原有域名 https://yuhao.space/ 将于一个月后过期。 如果您收藏了本站,请及时更新链接。给您带来不便,深表抱歉!

我们是否应当克制对新技术的追求?

毋庸讳言,程序开发是一个快速发展的行业,尤其是最近几年,从Web/移动到云、容器、DevOps、大数据、大前端、VR、区块链、人工智能,我们似乎有永远学不完的新技术;同样明显的是,程序员这个开发群体也极其热衷于追求各种更新、更酷、更强大、更优雅的技术。很难全面地评价这究竟是好事还是坏事,似乎我们已经把这当成一种不言自明的事实。

但最近,我听到了一些特别的声音,虽然它们来自不同技术背景的开发者,立场和观点也不尽相同;但这些内容似乎指向同一个结论,即:一些被认为是“老旧”的技术实际上是被低估了;而另外一些为众多开发者所追捧的新技术,它们未必真正达到如预期的那种生产力提升,并且,使用“老旧”的技术实际上可以达到同样的效果。无论如何,这些确实来自真正的一线开发者的实际经验总结。我希望你能够听一听他们的声音。

2

Themes 子站点上线了

Themes 子站点上线了

Visual Studio Code (以下简称 VSCode) 现在也是我日常使用的编辑器之一(其他还包括 PyCharm 和 Sublime Text)。和 PyCharm 相比,VSCode 更轻便一些,比 Sublime 则有更多的代码级别辅助功能,这两年发展势头很猛,算是一个比较中庸的选择吧。当然,重度的项目开发我依然会用 PyCharm。

2019 首个网站版本上线

2019 年 1 月 22 日,站点在本年度的第一个大的更新版本上线,我也终于可以松口气了。

过去的一年无论对中国还是我来说都称得上是不平凡的一年。大的气候且不去说它,我自己在上一年也因为各种原因两度辞职,心情一直不算太好,对网站的维护也未免有点松懈,甚感惭愧。好在最近有些空余时间,终于可以把去年落下的债补上一些,也算是对自己有个交待。

Linux Mint 19.1 (Tessa) 发布了

Linux Mint 19.1 (Tessa) 发布了

Linux Mint 19.1 (Tessa) 正式发布了。

我在虚拟机里尝试安装了该版本。马上能发现的是任务栏现在默认使用大图标,外观也有所调整,色调更深了。同时,安装后显示的 Welcome Screen 也介绍了该特性,我就直接引用官方的介绍图了:

2018 年底折扣活动:Packtpub 和 Vultr

眼看就是 8012 年底了,各大厂家不出意外的也在搞各种优惠促销活动。我最近个人比较关注的出版社 Packtpub 前一阵子搞了个 $10 Ebooks and Videos,应该是很受欢迎,所以该社趁着年底又来了一波猛的,这回是 $5 一本,就算折成人民币也平过国内大多数 IT 书籍的价格了,而且数量相当多(参加活动的书籍大概有近 5000 本),有兴趣的朋友不妨去淘一淘(打开 Packt 首页 即可看到)。仍然要多嘴唠叨一句,Packet 社出版的书籍虽然多且新,但质量参差不齐,部分书籍水平不高,购买时请注意鉴别,如果书籍页面下方有差评的就要留心了。当然了,$5 的价格就算买到了次品也不至于太过肉痛。

Windows Forms Invoke() 泄露句柄原因之调查

C#

有朋友问我关于 微软开源 WinForms, WPF 和 WinUI 的看法。说实话,我没什么看法。开源这个事,从来都是有兴趣的人才会 Awesome,对吃瓜群众只能是 So what。不过这则消息让我想起大概半年前维护产品客户端时遇到的一个问题,当时没有机会深入分析,现在既然 WinForm 已经开源,倒是值得深入分析一下了。

Flask 基于子域名的蓝图管理

Web

在 Flask 中,蓝图(Blueprint)通常是基于路径进行分派的,因此我们看到典型的注册代码一般类似这样:

app.register_blueprint(home_bp, url_prefix='...')

相对少见的另一种用法是,Blueprint 也可以通过子域名来分派,这涉及到程序结构上会有一些改变,同时也会带来一些新的问题(当然都是可以解决的)。使用子域名是大型网站的常规做法,同时也使得 URL 路径更有针对性,比如提供一个 https://api.mydomain.com/... 比起所有页面都堆到 https://mydomain.com/ 下面,看上去也显得更专业一些。我自己也在尝试通过这种方式重构自己的网站,最开始尝试的是每个域名使用一个单独的 app 去管理,但很快发现如果一些比较小的功能也做成独立的网站,会带来比较多额外的管理负担。因此,把这些功能合并到一个app,对外又能通过子域名公开,是不错的做法。因此,我对这种实现做了一些尝试,并对遇到的问题和解决办法做一个记录,以供自己和其他朋友参考。

2

RSS 子域名上线了

RSS

2019 年 1 月的说明

抱歉,由于网站重新规划的关系,rss 子域名暂时不可用,后续再上线的话我会另行通知。如果影响到部分同学的话,深表道歉。


虽然 RSS 技术近些年已经有式微的倾向,但我个人仍然是其重度用户。这主要是因为,大量网络阅读是我的“刚需”,在这一方面,目前没有什么技术比 RSS 更加有效。所以在看到像 RSSHub 这样的项目出现时,我的内心是欣喜的,这说明该技术仍然有像我一样的用户支持和生存空间。

在站点上启用 Let's Encrypt 通配符证书

今年早些时候,我曾在本站上尝试使用 Let's Encrypt 推出的新通配符证书,但出现了一些问题。由于网站原有的证书还在正常使用,所以这个事情的优先级并不高,加上当时还有不少别的事情,就没有再继续下去。昨天,我再次进行了测试,这次终于成功生成证书,但过程中仍然走了一些弯路。本文对此作一个记录总结,以便自己今后、以及其他朋友参考。

4

Qt 在 Windows 下默认字体比较丑,但是我们有办法修改它

Qt
Qt
Qt 在 Windows 下默认字体比较丑,但是我们有办法修改它

一直觉得 Qt 在 Windows 系统上的默认字体不太好看,不过自己写程序时自己去指定字体也很方便,就没怎么在意。这几个月专门用 Qt 写了一些程序,发现这还真的是个问题,因为包括官方的 Qt Creator 在内,都没有开放给用户自定义默认字体的设置,天天看着实在不怎么舒服。本来 Windows 系统是允许用户自定义桌面字体的,Win10 不知是出于去桌面化还是什么考虑,把这个功能又拿掉了。