使用 Beancount 记账篇五:使用 Telegram Bot 简化记账

在了解并使用 [[Beancount]] 的过程中,大多数情况都是通过 VSCode 打开 Beancount 仓库,然后手动进行记录,但是通常情况下消费都是遍布在日常生活中的,不会随时随地都有一个 VSCode 环境,所以就需要一个可以随时随地记账的方法,很早之前想过通过 Alfred,或者通过在线构建一个 Fava 环境,但是一方面 Alfred 手机上并没有,而如果构建一个 Fava 则还有安全性问题,所以一直没有很好的对策,直到有一天我看到有人分享了一篇文章说自己使用 Telegram Bot 来作为 Beancount 的记账,我茅塞顿开。 Read more ...


使用 Beancount 记账篇四:证券交易

在我使用 Beancount 的过程中,让我收益最大的是让我知道了一个词 commodity ,直接翻译为通货,它不等同于金钱,也不是我们理解的钱。但是在记账的过程中使用最多的就是以货币单位,比如 CNY 人民币,USD 美元,HKD 港币来作为 commodity 记账。 Beancount 给我普及了 commodity,它可以是用于交换的任何物品或资源,比如可以是股票,可以是黄金,也可以是期权,也可以是加密货币等。这种灵活性使得 Beancount 在处理不同类型的资产时非常强大。 Commodity 每一个投资标的就是一个 commodit Read more ...


使用 Beancount 记账篇三:限制性股票

通过之前几篇文章的介绍,相信大部分人已经入门了基本的 Beancount 的使用,也能理解[[复式记账]]的魅力。 使用 Beancount 记账篇零:Beancount 入门使用 使用 Beancount 记账篇一:给账户命名 使用 Beancount 记账篇二:各类账单导入 这一篇文章就接着之前的内容,来讲讲如何在 Beancount 下记录期权(或者限制性股票)交易的记账。 RSU(restricted stock units),又被称为限制性股票,restricted 意味着当前无法获得,一般经过特定的时间周期,当其成熟时才 Read more ...


Drools 原理之 RETE 算法

RETE 算法是卡内基梅隆大学的 [[Charles L.Forgy]] 博士在 1974 年发表的论文中实现的算法,是一种[[模式匹配算法]]。简易版本的论文发表于 1982 年 (http://citeseer.ist.psu.edu/context/505087/0)。拉丁语的 rete 表示 ”net” 和 “network”。 这个算法设计的目的是为了在大量的规则,Objects(或者说 Facts)中寻找匹配的规则。其核心思想是通过分离的匹配项,根据内容动态的构造匹配树,缓存中间结果,以空间换取时间,降低计算量。 RETE 算法主要可以分 Read more ...


使用 Beancount 记账篇二:各类账单导入

在上一篇如何给 Beancount 账户命名 的文章中,我们已经迈出了 Beancount 使用的第一步,建立一套属于自己的账户系统,之后所有的资金就会在这些账户之间流转。复式记账讲求账户的流入与流出。 那接下来就是 Beancount 真正关键的地方,熟悉并导入以前的帐本。使用 Beancount 就会想着如何将之前的账单导入到 Beancount。 但人的惰性总是让我们不会每一笔交易都事无巨细的记录下来,所以我的方式便是固定一个时间,然后对上一个周期内的账单进行一次性批量处理,比如在信用卡账单日对信用卡消费做处理,或者在月末对微信账单进行处理。 Read more ...


使用 Beancount 记账篇一:给账户命名

在之前整理复式记账 的文章中曾短暂的提及过 Beancount,上一篇文章简单介绍了一下 Beancount,现在经过一段时间的使用,也正好回顾总结一下自己的使用经历和经验。 要入门 Beancount 的使用,其中最重要的第一步便是充分的认识 Beancount 中的账户概念,在复式记账中资金都是在账户与账户之间流转,因此账户就非常重要。但是因为 Beancount 的入门难度要远远超过其他的记账软件,所以迈出第一步就变得至关重要,迈出了这第一步后面就会发现 Beancount 能带来远超预期的收益。 在 Beancount 中内置类几类账户,这几 Read more ...


如何进行有效的讨论 论 Clubhouse

这两天 Clubhouse 非常火热,又使得「声音」这一载体被放到了台前,但听了多个 Room,并没有收获太多,反而是相对较大的「杂音」影响了收听,并且大部分的观点并没有让人眼前一亮的感觉。 而从去年读[[洛克]], [[密尔]]开始,我就在思考什么叫做「有效讨论」,这些先贤们在写下他们流传百世的著作之前,当然有其自身深入地思考,但也绝不是将自己关在小黑屋与世隔绝而诞生了其思想,往往在他们形成自己的思想之前,他们会阅读大量比他们时代更早的作品,也会与他们同时代的伟大思想家进行书信,甚至直接的交流。在这样的思辩和讨论之中,他们最终才会形成自己的思想,这些 Read more ...

2021-02-06 discussion , locke , clubhouse , talk , podcast , voice , sound

使用 Beancount 记账篇零:Beancount 入门使用

说起 Beancount,就不得不提复式记账,在之前的文章里面已经完整的叙述过复式记账是比单式记帐更加科学的记账方法,但是复式记账在目前只被大多数企业所采用,并没有被大众所接受,市面上也依然缺少复式记账的工具。而 Beancount 就是其中比较好用的一个工具。 为什么要用 Beancount 记账 为什么要用 Beancount 记账? 要回答这个问题需要从两个方面说起,一方面是为什么要记账,另一方面是在这么多的记账软件中为什么要用 Beancount。 首先回答为什么要记账,在之前的文章中也提到过,通过记账是认识自己的一种方式,通过周期性的记账 Read more ...


Maven 中的 classifier

今天看 maven-embedder 中定义的引用 [[Google Guice 轻量级依赖注入]] 依赖时,定义了 classifier 标签。故来学习一下 Maven 配置中 classifier 的含义。 首先来看两个例子: <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.2.2</version> Read more ...

2021-01-29 maven , build-tool , java

解决 NoSuchMethodException 错误的方法

问题的出现 在使用 Java Instrumentation API 的时候,因为在应用启动的时候加载了一个 Java Agent,然后在 Java Agent 中依赖的包,和应用内依赖的包产生了冲突,同时使用了 commons.lang3 这个包,但是依赖的版本不一致。导致使用 FieldUtils 的时候出现了 NoSuchMethodError: Caused by: java.lang.NoSuchMethodError: org.apache.commons.lang3.reflect.FieldUtils.getFieldsWithAnno Read more ...

2021-01-27 java , jdk , jvm , methodology

最近文章

  • Amazon 推出 Kiro AI IDE 新一代 AI 辅助集成开发环境 在 AI 辅助代码生成领域,从来不缺竞争者,现在 Amazon 正式加入了战争推出 Kiro AI IDE,Amazon 在之前就推出过智能助手 Amazon Q,以及代码补全插件 CodeWhisperer,但是在激烈的代码生成领域依然没有竞争过 Cursor,Windsurf,Claude Code 等一众的领跑者,甚至声量都没超过 Gemini CLI。现在推出的 Kiro 是一个集成的开发环境,至此互联网巨头中除了苹果没有推出 AI 辅助编码的工具之外所有的公司都已经有了对应的产品。
  • SuperClaude 让 Claude Code 更专业更顺手 SuperClaude 是一个 开源的 Claude Code 增强工具,提供了额外的命令,人物角色(Personas),以及更好的 MCP 服务集成。
  • Claude Code 编程助手使用总结 在我之前的文章中分别介绍过 AI 支持的集成开发环境 Cursor,Windsurf,Void 等等,还介绍过不少相关的编程辅助工具比如说最早的 GitHub Copilot,Augment Code 等等,但是今天要介绍的这一款 Claude Code,从 2025 年 2 月诞生之日,就被誉为 2025 年最强的编程助手。
  • Readdy:AI 驱动的交互设计工具 Readdy 是一款可以自然语言交互的 AI 建站工具,通过对话时设计,可以实现零代码快速生成网站,还可以直接发布到 Figma,或者是一键导出代码进行进一步的编辑。 在我之前的文章和视频中,我也介绍过如何使用 Claude,Vercel 的 [[v0.dev]],还有 Google 的 [[Stitch]],[[lovable]],[[bolt new]],[[Replit]] 等等非常多通过自然语言来生成代码的工具。
  • 利用 ClickUp 来管理你的任务 我在之前的文章中介绍过 Trello 这样一款看板工具,还介绍过日本很多公司在使用的 Backlog 项目管理工具,最近和朋友一起合作想要做一款英语学习外教平台,朋友推荐了一款叫做 ClickUp 的团队协作和项目管理工具,初步用起来非常的灵活自由,并且免费的套餐给的使用权限还非常大,基本上什么功能都能使用,还可以无限制添加成员和创建任务,相较于其他一些项目管理的应用非常慷慨。

赞助