改进版迷宫

以前曾经写过一个JavaScript版迷宫,生成迷宫的算法很简单,就是在一个空白迷宫中,让一个小人随机地行走,并记录下每个格子所通过的方向,直到地图上每个格子都到达过为止。

由这个算法生… 阅读全文

一个简单的有限状态机(easy-fsm)

最近一个前端项目中,我需要用有限状态机对代码逻辑进行管理。一开始想用 javascript-state-machine 这个库,后来注意到如果商用,它需要购买商业授权。然后又研究了一下 xstate,它的功能很完备,并且项目很… 阅读全文

因贫穷而贫穷

很早就听说过《我在底层的生活》(Nickel and Dimed)这本书,但直到最近才将它读完。

这是一本关于社会底层的穷人的书,作者芭芭拉‧艾伦瑞克是一位受过良好教育有着博士学位的专栏作家,在一次与编辑的交流中产生考察真实穷人生活状态的想法,于是便隐匿了学历,潜入底层社会,先后从事了… 阅读全文

修仙过滤器与费米悖论

这是一篇胡思乱想的文章。:-)

一、修仙过滤器

很多修仙故事中,都有这样一个设定:等级越高的东西,越不容易出现,即使出现,也要经历重重考验,并且这些考验很可能是来自自然界(或者说天道)。

比如《斗破苍穹》中高级丹药的出世会引发丹雷,这种丹雷威力巨大,炼药师如果不能抗过丹雷,轻则丹毁,重则人… 阅读全文

使用 Node.js 模拟滑动验证码操作

近几年,网页上各种新型验证码层出不穷,其中一种比较常见的是滑动验证码,比如下图这种。

本文介绍了一种使用纯前端方法寻找滑动终点并模拟滑动的方法。

我们需要三个依赖库:p… 阅读全文

加法器原理

作为一名半路出家的程序员,我一直没有弄明白计算机是怎么实现加法操作的,直到最近读了《编码》这本书。

下面,是我对加法器原理学习的小结。

1、继电器

做加法器首先需要需要各种逻辑门,而实现逻辑门的一个关键部件是继电… 阅读全文