分类: '精华' 的归档
Notchy 1.3.7
上次写 Notchy 的时候(从接手到日用:我把 Notchy 改成了什么样),我自以为已经比较完善了,自己想要的功能都有了。但后面自己深度使用以后,包括也有网友反馈,发现还是有不少细节需要打磨。
于是一晃一个半月过去,翻了下 git log,从 1.2.7 到 1.3.7,中间又是 23 个 commit、小一千五百行 Swift,版本号跳了整整十个小版本。。。
点击查看全文 »
每日一辨 DailyDiff
最近上架了一个新 App:DailyDiff(每日一辨)。做它的初衷很简单:一是我自己想把英语再往上提一提,二是儿子也在学英语,我想给他(也给自己)找一个每天花几分钟、细水长流的练法。
市面上背单词的软件很多,但它们解决的基本都是”认识”:看见 soldier 知道是战士,看见 warrior 也知道是战士。可这两个词的区别是什么、什么场合该用哪个——这种”掌握”层面的功夫,几乎没有软件管。而”认识一个单词”和”掌握一个单词”之间恰恰隔着一条鸿沟,它决定了你的英语是只能读,还是真的能用。所以我做了一个专门练这个的 App。
点击查看全文 »
从接手到日用:我把 Notchy 改成了什么样
还记得上次那篇吗?当时我接手 Notchy 的时候,基本就是原作者 Adam Lyttle 的初始版本——点子非常好,但功能比较基础,bug 也不少。我本来只是想”修修 bug,打个包”就完事了。
结果一改就停不下来了。
55 个 commit、4600 多行 Swift 之后(当然大部分都是 vibing 的),Notchy 已经从一个”能用”的 demo 变成了我日常干活的主力终端。是的,之前我还是混着状态,现在 iTerm2 已经从 Dock 上消失了。
点击查看全文 »
Claude Code Account Switcher
如今这AI时代,如果你也写写代码,我相信你肯定在用一些AI工具了吧?
如果你恰好用的也是Claude code,那大概率也会因为每月20$的pro套餐用量不够而烦恼吧?这时,如果你不差钱,可能就直接订阅200$的max套餐了,但如果你也觉得200刀有点下不去手,那可能再买一个20刀,就是更加可以接受的方案了。
此时,你就会遇到两个Claude账号频繁切换的问题了。。。那你可能就需要这个小工具了。
功能挺简单的,也无需我过多介绍了,直接看图就能明白了。这是一个macOS下的菜单栏小工具。可以同时登录多个Claude账号,能查看每个账号的余量,能帮你快速切换账号。

截图里,我的账号1是公司给开的enterprise账号,一个月200$的token(也是不经用的);账号2是我自己的pro账号。两种账号都是支持的。
工具以MIT开源。代码在GitHub。等我再整理一下,放个编译好的二进制吧。
App Store Small Business Program
事情是这样的,3月初的时候,我上线了我的第一款收费APP(用于在睡眠期间监测和记录呼噜声的),然后陆陆续续也有几笔成交了。
于是我这个数据控,就研究了一下Apple的开发者后台,里面的一些看板和详细数据。由于我的APP一共也才成交了几笔而已,样本非常有限,还刻意和资深开发者朋友 TualatriX 聊了一下,还真让我发现了一些门道和问题。。。
那就是在app store connect里,Sales、Proceeds的数据,和你给APP的定价肯定都会不一样。原因有以下几层:
第一层,是汇率的影响。
因为你的 APP 是全球卖的。用户可能用的是欧元、日元、人民币付款,而你后台的结算通常是按美元(或你本地货币)来算的。中间一定会经历一次甚至两次货币转换。
关键点在于:Apple 用的不是实时汇率,而是自己的一套定价和结算汇率(按周期更新)。这就会带来几个结果:
- 同样标价 2.99,在不同国家对应的本地价格其实是不一样的
- 不同货币换算回来的“基准金额”,本身就有偏差
- 即使同一个国家,汇率调整周期不同,Proceeds 也可能轻微波动
换句话说,从一开始,你的“2.99”,在全球范围内就已经不是一个严格一致的数字了。
然后,才是第二层:税。
App Store 的价格是“含税展示价”,不同国家税率不同(比如 VAT、GST)。这些税是从用户支付的钱里先扣掉的。
接着是第三层:Apple 抽成。
而且这个抽成,是在“去税之后”的金额上算的(默认抽走30%)。再剩下的才是你真正拿到的 Proceeds。
所以完整链路其实是:本地定价 → 汇率换算 → 扣税 → Apple 抽成 → 最终收入(Proceeds)
那,作为开发者,有什么可以action的东西么?
显然,汇率和税,作为小卡拉米的我们,是没法去影响的,但苹果其实有个“App Store Small Business Program”,是可以给小开发者一些抽成上的优惠的。
具体来说,苹果针对年销售额不足1百万美元的小开发者,可以把默认的30%的抽成比例,降到15%。其实之前我也听说过这个计划,但当时也没细看,以为是默认开通的。但其实是要开发者去单独申请,并审核开通的。方法倒是很简单,就是用开发者账号登录后,在这个页面点“Enroll now”,填上相应的信息,就算提交成功了。
注意,提交成功,并不代表你enroll成功了,在收到以下邮件之前,抽成将还是30%。而且苹果处理这个请求相当地慢,以我为例花了3周的时间,而且我中间还催过一次。

好了,最后祝所有开发者都能APP大卖!早日被踢出Small Business Program!
新加坡天气云图
在新加坡呆过的同学就会知道,这地方的天气变化莫测,尤其最近这段时间,属于新加坡的雨季,就更夸张了。一天能经历N次下雨、晴天、下雨的过程。
而且虽然新加坡就那么点儿大,但由于地形差异、对流性降雨、城市热岛效应等因素的影响,经常是过了一个街区,天气就完全不同了。
因此,在这地方看天级的甚至小时级的天气预报是肯定不够的。很多人出门前都会打开新加坡气象局的网站(PC|手机)去看降雨云图,往往就能比较准确地判断接下来的天气走向了。
这个网站其实并不提供天气“预报”,它只会告诉你,最近2个小时内,降雨带的走势是怎么样的。只告诉你事实,让你自己来预测未来。这点很好。
但,依然有两个不足之处:
第一,它不会在地图上显示“你所在的位置”,即使他的Mobile页面会请求用户的地理位置信息,但并不会显示;虽然你肯定知道你自己大致在哪里,但判断就不够精确了。
第二,它只能查看2小时内的天气,不能查看历史。
然后,我看了下这个网站请求的数据,还挺简单的。于是就自己糊了一个更纯粹的天气网站,尽量适配了PC和手机端,补上用户位置,更重要的是补上查看历史的功能(目前能查看2025年11月往后的任何时间)。
链接在这里,默认和官方一样是看最近2个小时数据,点击右边的📅图标,可以激活“历史模式”,就可以查看一整天的数据了,希望用得开心。
点击查看全文 »
thirsty@SG
前言:
自从我2022年来到新加坡以后,就发现这边有些地方确实是挺人性化的。举个我自己感受最深的例子:这边会有很多的免费喝水点,分布在机场里、食阁角落、公厕边上、小区内部,最主要还有很多在公园里和绿道边。要知道新加坡是一个接近赤道的热带国家,气温一直比较高,如果出门在外,是很容易口干舌燥的,如果去哪都要自己带水会很麻烦,如果光靠买水,那经济上的压力也会不小。
在户外能喝到免费放心的饮用水,对喜欢户外跑步或者徒步的人(比如我)尤其友好。但也因此带来了一个小小的问题:当我探索到一个陌生的地方,我要怎么才能知道附近哪来有喝水点呢?
试着解决:
我当然想过在google maps或者苹果的地图里搜索,但很遗憾,这个数据可能只在新加坡有意义,需求也相对比较小众,因此这些巨头企业是覆盖不到这个需求的。在新加坡的各种政府网站,我也没有搜到想要的答案。
而且,我看到有人做了类似事情,比如这个: https://linktr.ee/brayontng 作者是一个大一到学生,用Google forms收集数据,最终在google maps的自定义地图上做展示。但现在似乎也有大半年没更新了,而且我身边熟知的几个点好些都没有收录。还有就是大部分点都没有图片,真要用起来可能也不是太方便。
我的方案:
所以,我想到做一个手机app,嵌入地图SDK,打开app就能显示附近的喝水点,除了告诉你经纬度以外,还会告诉你所在楼层、水是常温的还是冰水或者热水;并且能显示一张图片,让你大致知道周边的情况,还能方便地调用第三方地图软件导航过去。
当然,我自己并没有完整的数据。所以,还会有一个“上传喝水点”的功能,希望发挥广大网友的力量,逐步完善这个数据。最终希望能覆盖整个新加坡绝大部分的喝水点。
于是,就有了 thirsty@SG。不过由于我也是刚学的SwiftUI,对界面设计也不太在行,因此目前app可能会有这样那样的小问题,界面也比较简陋,但我还是会尽我所能把这个事情做好。
APP:
所以,大家可以通过这里下载这个叫做“thirsty@SG”的app。目前只有iOS的,因为我不会安卓的app开发,可能暂时不会有安卓的版本。而且目前仅限在新加坡范围内使用,暂时没有打算支持更多地区。
关于上传喝水点:
方法也很简单,点击app左下角,会弹出上传的界面,此时需要拍一张喝水点的照片,app会自动获取此时的经纬度信息,填上一些必要的信息以后,就可以点界面上的“upload”上传了。
显示上传成功以后,暂时还不会直接在app上显示,为了防止有人滥用而误导其他用户,我设计了数据需要审核才能生效,审核我主要会看上传的照片,因此照片是不接受图库里选择的,只能现场拍,望大家理解。我也会尽快审核,慢也不太会超过一天。
上传的时候,可以选择填上你的邮箱。即使填了,也不会在任何地方公开这个信息,万一以后有会员体系什么的,这些做过贡献的用户,肯定默认就是高级用户。(对,我在画饼了,哈哈)
如果在使用app的过程中有任何问题,可以通过X(前Twitter)联系我: https://twitter.com/senob_ 其他未尽事宜,也欢迎联系咨询。
