HTTPS 小白知识(一)

10月发生的 Apple 在iOS 可信根证书列表中屏蔽其对中级CA WoSign(沃通) CA Free SSL Certificate G2 的信任 让许多普通人第一次接触到了 HTTPS 这个已经陪伴了我们很久的技术。作为程序员,我们应该更多地了解 HTTPS 的相关知识。

HTTPS 到了应该全面普及的时候了。 继续阅读HTTPS 小白知识(一)

开发一个 Flask 网站:基础知识

十一期间,我花了大概 5 天时间(每天3-4小时),用 Flask 开发了一个内部工具用来管理团队 KPI 。这个工具会交给其他同学继续开发,为了方便交流,我用几篇文章来描述一下如何从零开始快速上手 Flask 的开发流程。我会提供包括参考资料,书籍链接,学习顺序和方法,最佳实践等内容。 继续阅读开发一个 Flask 网站:基础知识

Karabiner 在 macOS Sierra 下的解决方案

  • 2016-09-26更新: HHKB支持。
  • 2016-10-04更新: 蓝牙鼠标支持。
  • 2016-10-10 更新: macOS Sierra 兼容软件列表。

今天手贱升级了 macOS Sierra ,进入新系统后发现 Karabiner 不能用了。

Karabiner 用来映射按键,我在 OS X 技巧与软件选择 一文中提到过。对于我这种使用 HHKB 键位的小众人群来说,所有的按键都必须一致,否则效率奇低。使用 Karabiner 把我常用的键盘定义存成 Profile 就行了。

Karabiner

但由于 macOS Sierra 大幅修改了鼠标和键盘驱动,导致 Karabiner 在该系统下无法工作。我定义的所有 Profile 都失效了。 继续阅读Karabiner 在 macOS Sierra 下的解决方案

桌面软件GUI开发框架: Electron 和 NW.js

2014年底,我在开发给策划使用的游戏工具时,曾短暂地研究了几个月 Qt,当时感觉用 Qt 来写桌面程序还是挺方便的,生成的界面也比 Swing 要漂亮许多, QML 则让 Qt 的易用性得到了进一步增强。

不过这两年来,Javascript 如日中天,开源世界基于 Chrominum 创造了类似 Chrome App 的桌面应用开发工具,可以使用 Javascript+CSS+HTML 来开发桌面程序。除了安装包大一点之外,看起来似乎还不赖。AtomVisual Studio Code 都是使用这种方式开发的。 继续阅读桌面软件GUI开发框架: Electron 和 NW.js

部署Flask + uWSGI + Nginx

作为一个选择综合症+洁癖患者,在部署 Flask app 的时候着实有点纠结。互联网上能找到的教程都不怎么靠谱,要么太老,要么太乱连话都说不通顺,更别提那些转了无数手的资料了。 uwsgi 的参数别名众多,各种旧版本的配置也不尽相同,让急着把自己的 Flask 站点搭建到正式服务器上的新手们无所适从。

我把自己的部署过程写出来,所有资源参考官方文档,我也尽量给出选择的原因。这教程适用于各个 linux 发行版。若有疑问,请留言。

继续阅读部署Flask + uWSGI + Nginx

Homebrew 安装的 MySQL 在 EI Capitan 上无法启动

用 Homebrew 安装的 MySQL 5.7.12 莫名其妙就挂掉了,翻看系统日志,看到一堆这样的提示:

Jun 2 20:08:49 zrong-mbp com.apple.xpc.launchd[1] (homebrew.mxcl.mysql) : Service only ran for 0 seconds. Pushing respawn out by 10 seconds.

这样的提示每10秒一次,从中午一直到现在。 继续阅读Homebrew 安装的 MySQL 在 EI Capitan 上无法启动