Everything you care about in one place

Follow feeds: blogs, news, RSS and more. An effortless way to read and digest content of your choice.

Get Feeder

ramsayleung.github.io

自由庄园

Get the latest updates from 自由庄园 directly as they happen.

Follow now 27 followers

Latest posts

Last updated 12 days ago

关于破解加拿大航空飞机网络限制的一件小事

12 days ago

1 序章 前段时间,坐飞机从加拿大飞回香港,全程大概12个小时,坐的是加拿大航空(Air Canada)的飞机。 有趣的是,飞机上竟然有 Wifi 但是 Wifi 做了限制,对于Aeroplan的会员,如果未付费,就只提供 Free Texting 的功能,即只能使用即时通信软件,比如...

Telegram频道精华贴检索机器人

20 days ago

1 引言 我有时总会觉得自己是个「奇葩」: 在现在各种算法推荐大行其道的当下,我却偏偏不喜欢算法推荐,因为这种「千人千面」的模式,总让我担心自己会陷入「信息茧房」的焦虑之中,此外我也希望可以看到一些我兴趣之外的内容。 我算是很多年的 Twitter 老用户了,使用 Twitter 已经超过十年了,只是在马斯克收购 Twitter,新增了一个 “For You”...

基于贝叶斯算法的Telegram广告拦截机器人(二):上线半月的故障、挑战与优化之路

about 1 month ago

1 引言 半个月前,我发布了一个基于贝叶斯算法的Telegram广告拦截机器人 @BayesSpamSniperBot (https://t.me/BayesSpamSniperBot) 项目地址:https://github.com/ramsayleung/bayes_spam_sniper 系列文章 基于贝叶斯算法的Telegram广告拦截机器人(一):从问题到产品 尽管项目代码开源,但我始终以产品思维运营它。上线半个月以来,经历了故障、用户反馈与持续优化,现将这段经历分享出来。 2 上线即故障 没想到我的产品的第一个线上故障来得这么快,发布的时候直接不可用,把正常消息都给删了,用户在各种途径都向我反馈:...

一个自学习的Telegram广告拦截机器人

about 2 months ago

1 序言 我花了一周末时间,写了一个自学习的 Telegram 广告拦截机器人 @BayesSpamSniperBot (https://t.me/BayesSpamSniperBot),项目开源在:https://github.com/ramsayleung/bayes_spam_sniper 1.1 Telegram Telegram 是一个流行的即时通讯软件,类似微信,Whatsapp,已有超过10亿用户,支持许多强大的功能,如聊天记录云存储,支持Linux, Mac...

一本读了八年还没读完的书

3 months ago

1 缘起 正如我在之前博客文章《这些年走过的路:从广州到温哥华》1提到的那样,我在大二暑假的时候因缘际会,获得了去一家在深圳的初创公司实习的 Offer。 实习的两个多月时间也快就过去了,我也顺利拿到了 Return Offer,公司也非常有人情味地给实习生办了个欢送典礼。 当时实习的导师,也是这家公司的副总裁,加州州立大学的刘颖教授2,在欢送典礼上给我们几个实习生每人都赠送了一本书作为临别礼物。(可惜换了几次手机,已经找不回当初手捧着书的合照了) 他说这是一本可以帮助我们了解程序本质,以及学习抽象的好书,这本书就叫《计算机程序的构造和解释》3(Structure and Interpretation of...

从在加拿大退货失败的一件小事思考系统设计

5 months ago

1 前言 前天刚写完《软件设计的哲学》,满脑子还萦绕着模块耦合和接口抽象, 结果昨天就撞上一个现实中的“设计陷阱”——一次耗时数小时却无解的「退货」噩梦。 今天趁着周末,决定把这场荒诞遭遇拆解出来,既当吐槽,也当案例分析 2 来龙去脉 前段时间搬了家,自然就需要重新办理宽带,一直用的是 Telus 家的家庭宽带服务,他们家的宽带服务也支持从一个住址迁移到另外一个住址, 就预约了 Telus...

软件设计的哲学

5 months ago

1 前言 知道这本书是因为在 Hacker News 上有人提问:你读过最好的技术书是什么 1 最高赞的书是 Design Data Intensive Application(DDIA,...

重新造轮子系列(六):构建工具

6 months ago

项目 GitHub 地址: Build Manager 1 前言 以 C 语言为例,一个程序通常由多个源文件 .c 组成...

重新造轮子系列(五):模板引擎

6 months ago

项目 GitHub 地址: Page Template 1 前言 在现代网站开发里,内容与表现的分离已经成为基本准则(Separation of content and presentation)...

《过河卒》: 比特币雏形之父之父的故事

6 months ago

1 缘起 在《软件那些事儿》播客采访听众故事的系列里面,有一期名为《No.502 跟35岁的程序员聊聊比特币》1 长达三个多小时的播客,主人公分享自己与比特币的故事,还谈到其在2020年卖房买比特币的故事。 既钦佩这位仁兄知行合一的投资理念,也羡慕他卖房买比特币的财力,胆识与机遇。 这位同行在节目结束前分享了一本名为《过河卒》2的书籍,其作者戴习为是文革前就读于中国科技大学电子系的高材生。 为什么他会在聊比特币故事的播客节目中提及这位书呢? 因为比特币的作者中本聪的第一封已知公开的邮件3,即讨论比特币白皮书草稿的邮件,就是发给戴习为之子,戴维 4的 戴维的项目 b-money...

重新造轮子系列(四):正则表达式引擎

7 months ago

项目 GitHub 地址: Regex 1 前言 所谓的正则表达式,指的是由一系列字符和特殊字符组成的模式,用于描述要匹配的文本。 最开始是一位叫 Stephen Cole Kleene 的数学家用被他称为...

重新造轮子系列(三): HTML Selector

7 months ago

项目 GitHub 地址: Selector 1 1 前言 以前写爬虫的时候,必不可少的一个工具就是 HTML selector, 就是用于匹配指定的 HTML...