Shadowsocks 安装教程

我一开始并不知道 shadowsocks(简称 ss)是由一位中国的女程序员写的,后来,她受到了当局的压力,现在的她在 github 上并不怎么活跃,真是可惜。

搭一个 ss 服务不难,以安装一个 Python 包为例。先检查一下我的环境:

cat /etc/centos-release
#CentOS Linux release 7.7.1908 (Core)
继续阅读“Shadowsocks 安装教程”

检测无向图有没有闭环

这篇文章来自工作中的一个实际问题:电子工程师在进行电路设计时,一般不用画出有闭环的导线,否则就短路了,这个是没有意义的。为了避免电子工程师的误操作,需要做这么一个防呆的工作。这是一个实际的场景,为了解决这个问题,可以转换成一个图的问题。

先来解释几个概念。

继续阅读“检测无向图有没有闭环”

戴口罩和蜗居

2020-02-29

缺失 1 天

2020-02-28

1 月 30 日来深圳的时候,我在看《猎凶风河谷》,大雪皑皑,阒静无声,旷野中的人们显得孤独渺小,苍凉悲壮。一如现车上的人都戴着口罩,车厢里有人,但是这种距离感,跟独自站在旷野中没有什么分别。

标题:我经历过的传染病及其中的事

内容来自曾小乱的blog:https://zengxiaoluan.com/infectious-diseases-ive-been-through-and-things-about-them/

2020-02-27

某天,我写博客突然有一个小需求:今天我修改了一篇以前的老文章,但是她没有排序靠前,没能让大家最新看到我修改了什么,这不是我想要的,怎么解决呢?这就是这个小插件的源头。

标题:新 WordPress 插件:Reorder Posts

内容来自曾小乱的blog:https://zengxiaoluan.com/new-wordpress-plugin-reorder-posts/

继续阅读“戴口罩和蜗居”

函数柯里化

函数柯里化是一个很有意思的话题,用起来也非常的神奇有趣。以前的我不太想深入的去了解这个话题,今天做了一些例子放在下面,加深理解。

在计算机科学中,柯里化(英语:Currying),又译为卡瑞化或加里化,是把接受多个参数的函数变换成接受一个单一参数的函数,并且返回接受余下的参数而且返回结果的新函数的技术。

https://zh.wikipedia.org/wiki/%E6%9F%AF%E9%87%8C%E5%8C%96

简单理解,就是将一个可以接受多个参数的函数转化成可以接受任意个数参数的函数。我们可以将 curry 函数简化成这样:

继续阅读“函数柯里化”

新 WordPress 插件:Reorder Posts

某天,我写博客突然有一个小需求:今天我修改了一篇以前的老文章,但是她没有排序靠前,没能让大家最新看到我修改了什么,这不是我想要的,怎么解决呢?这就是这个小插件的源头。

Reorder Posts 插件支持在“阅读”页面,修改 Posts 的 orderorderby 排序。

继续阅读“新 WordPress 插件:Reorder Posts”

我经历过的传染病及其中的事

1 月 30 日来深圳的时候,我在看《猎凶风河谷》,大雪皑皑,阒静无声,旷野中的人们显得孤独渺小,苍凉悲壮。一如现车上的人都戴着口罩,车厢里有人,但是这种距离感,跟独自站在旷野中没有什么分别。

我经历的一些传染病其实是这个社会传染病流行的缩影,说明大家都经历过,比如非典、疥疮、h1n1 和现在的新冠肺炎。并不是说我都得过这些,而是这些恰恰发生在我的记忆里。这不算什么私事,我也没什么不能启齿的羞涩。

继续阅读“我经历过的传染病及其中的事”

使用 prettier 格式化 PHP 代码

在 js 项目中,因为使用了 prettier,可以一顿乱写,完全不管格式,写完之后,在自动保存的时候使用 prettier 格式化一下。代码又变成了美美哒、井然有序的样子,这种体验非常好。这种好的体验,应该怎么复制到 PHP 的开发中呢?那么请看这篇文章吧。

继续阅读“使用 prettier 格式化 PHP 代码”

解决 mac 下 xampp 安装 WordPress 插件需要 ftp 账号

xampp、ftp、mac、wordpress

想在 mac 里做点 wordpress 开发没有那么困难,安装 xampp 就行,而且是免费的。

但是在默认情况下,安装 wordpress 插件需要 ftp 账号的权限,怎么解决呢?于是就有了这个文章。因为我从网上找答案还是花了一些时间,所以有记录一下的必要。

在 wp-config.php 中添加

define( 'FS_METHOD', 'direct' ); 
// 定义这个常量是做什么用的,我并没有深究。

更改文件的权限

sudo chmod -R 777 /Applications/XAMPP/xamppfiles/htdocs/

上面是更改对应目录下的权限,找到对应的目录,比如我的是:/Users/zengliaoliao/.bitnami/stackman/machines/xampp/volumes/root/htdocs/zengxiaoluan,这样就搞定了。

参考链接:https://www.youtube.com/watch?v=dn6_nYQFjok

forin 和 Object.entries 运行效率对比

我们从一个很简单的问题出发,怎么遍历一个 js 对象?第一种使用 forin,但是会遍历到原型链上的属性,这个不是我们想要的。

forin 存在的问题

var s = {a:1}
s.__proto__ = {b:2}
for(var i in s) {console.log(i)}

所以我们要这样判断一下。

var s = {a:1}
s.__proto__ = {b:2}
for(var i in s) { if(s.hasOwnProperty(i)) console.log(i)}
继续阅读“forin 和 Object.entries 运行效率对比”