Follow feeds: blogs, news, RSS and more. An effortless way to read and digest content of your choice.
Get Feederramsayleung.github.io
Get the latest updates from 自由庄园 directly as they happen.
Follow now 24 followers
Last updated about 1 month ago
about 1 month ago
1 前言 前天刚写完《软件设计的哲学》,满脑子还萦绕着模块耦合和接口抽象, 结果昨天就撞上一个现实中的“设计陷阱”——一次耗时数小时却无解的「退货」噩梦。 今天趁着周末,决定把这场荒诞遭遇拆解出来,既当吐槽,也当案例分析 2 来龙去脉 前段时间搬了家,自然就需要重新办理宽带,一直用的是 Telus 家的家庭宽带服务,他们家的宽带服务也支持从一个住址迁移到另外一个住址, 就预约了 Telus...
about 1 month ago
1 前言 知道这本书是因为在 Hacker News 上有人提问:你读过最好的技术书是什么 1 最高赞的书是 Design Data Intensive Application(DDIA,...
3 months ago
项目 GitHub 地址: Page Template 1 前言 在现代网站开发里,内容与表现的分离已经成为基本准则(Separation of content and presentation)...
3 months ago
1 缘起 在《软件那些事儿》播客采访听众故事的系列里面,有一期名为《No.502 跟35岁的程序员聊聊比特币》1 长达三个多小时的播客,主人公分享自己与比特币的故事,还谈到其在2020年卖房买比特币的故事。 既钦佩这位仁兄知行合一的投资理念,也羡慕他卖房买比特币的财力,胆识与机遇。 这位同行在节目结束前分享了一本名为《过河卒》2的书籍,其作者戴习为是文革前就读于中国科技大学电子系的高材生。 为什么他会在聊比特币故事的播客节目中提及这位书呢? 因为比特币的作者中本聪的第一封已知公开的邮件3,即讨论比特币白皮书草稿的邮件,就是发给戴习为之子,戴维 4的 戴维的项目 b-money...
4 months ago
项目 GitHub 地址: Regex 1 前言 所谓的正则表达式,指的是由一系列字符和特殊字符组成的模式,用于描述要匹配的文本。 最开始是一位叫 Stephen Cole Kleene 的数学家用被他称为...
4 months ago
项目 GitHub 地址: Selector 1 1 前言 以前写爬虫的时候,必不可少的一个工具就是 HTML selector, 就是用于匹配指定的 HTML...
4 months ago
1 前言 既然我们已经有单元测试框架来测试软件了,我们肯定不想已经写好的代码丢失掉。 对于重要的文件,一个必不可少的功能肯定是备份, 这样在丢失文件之后可以重新恢复。 今天我们就来写个简单的文件备份软件,类似 Git 这样的版本系统可以当作是高级版本的文件系统,因为它还支持切换到不同版本,对比版本间的差异等等功能,而我们不打算实现一个版本管理系统,只实现基础的文件备份功能。 2 实现思路 2.1 校验文件是否变更...
5 months ago
1 目录 软件工程师的软技能指北(一):总览篇 软件工程师的软技能指北(二):事业篇 软件工程师的软技能指北(三):高效交流篇 软件工程师的软技能指北(四):简历篇 软件工程师的软技能指北(五):面试篇(暂时跳过, 后面再填) 软件工程师的软技能指北(六):谈薪篇 2 前言 打了这么多年工,要说最后悔和最遗憾的是什么,「拿到...
5 months ago
1 前言 单元测试的重要性无须多言,它是保证项目质量的基石 如果没有单元测试,根本没有信心说自己开发的功能是符合要求的,更没法在没有测试的保证进行项目的重构。 既然单元测试如此重要,今天就用Typescript来写一个简单但五脏俱全的单元测试框架。 2 历史 Javascript 比较流行的测试框架是 Mocha 和 Jest...
5 months ago
1 起因与动机 最近在看 System Design By Example 这本书,主旨是通过设计和实现各种日常开发中常见的软件,以理解和提高系统设计(System Design)的能力。 每个章节都会实现一个软件,然后还会有大量的习题来完善这个软件,以练带学。 而我最推崇,并且认为最好的学习方法就是:费曼学习法(Feynman Technique)...