https://github.com/valkey-io/valkey/issues/18
看到 Linux 基金会分叉了 Redis 建立了 Valkey,想起前几天另外一个 Redis 分叉 Redict,好奇两个分叉是什么关系,特地去搜了下。
看到这个 issue,Redict 维护者疯狂推销他们的许可证以及 FOSS 协作工具,尝试合并两个开发者社区。而 Valkey 维护者显然更加务实, 不接受更换代码托管和证书。
管窥开源社区的政治生态,挺有意思的。
看到 Linux 基金会分叉了 Redis 建立了 Valkey,想起前几天另外一个 Redis 分叉 Redict,好奇两个分叉是什么关系,特地去搜了下。
看到这个 issue,Redict 维护者疯狂推销他们的许可证以及 FOSS 协作工具,尝试合并两个开发者社区。而 Valkey 维护者显然更加务实, 不接受更换代码托管和证书。
管窥开源社区的政治生态,挺有意思的。
GitHub
Merging efforts with Redict · Issue #18 · valkey-io/valkey
Hi, I'm one of the people working on the Redict fork, and we would like to merge efforts if possible. Bringing the discussion here from #8 (and various private conversations) where there is som...
有一台闲置的 mac,打算用来当作家里的网络代理服务器。有几个方案:
- (现状)在软路由里面安装 Clash,指定部分设备流量走 Clash,实现透明代理
- 缺点:手机电脑日常使用 Surge,只有路由器使用 Clash,需要额外维护一份 Clash 配置,麻烦
- 使用 Mac Surge 接管 DHCP,让流量走 Surge 过,实现透明代理
- 缺点:稳定性差,一旦 Mac 挂了,整个网络就瘫痪了
- 特定设备主动配置代理服务器为 Mac Surge
- 缺点:不是透明代理,可能部分设备无法设置 Proxy
- 在方案一的基础上,让 Clash 直接将所用流量通过 socks5 转发到 Mac Surge,Clash 当中只需要配置一条固定的 socks5 策略
目前来看,最后一个方案既能实现透明代理,又不会影响稳定性,还能实现全设备使用 Surge。
- (现状)在软路由里面安装 Clash,指定部分设备流量走 Clash,实现透明代理
- 缺点:手机电脑日常使用 Surge,只有路由器使用 Clash,需要额外维护一份 Clash 配置,麻烦
- 使用 Mac Surge 接管 DHCP,让流量走 Surge 过,实现透明代理
- 缺点:稳定性差,一旦 Mac 挂了,整个网络就瘫痪了
- 特定设备主动配置代理服务器为 Mac Surge
- 缺点:不是透明代理,可能部分设备无法设置 Proxy
- 在方案一的基础上,让 Clash 直接将所用流量通过 socks5 转发到 Mac Surge,Clash 当中只需要配置一条固定的 socks5 策略
目前来看,最后一个方案既能实现透明代理,又不会影响稳定性,还能实现全设备使用 Surge。
👍1
日常技术碎碎念
有一台闲置的 mac,打算用来当作家里的网络代理服务器。有几个方案: - (现状)在软路由里面安装 Clash,指定部分设备流量走 Clash,实现透明代理 - 缺点:手机电脑日常使用 Surge,只有路由器使用 Clash,需要额外维护一份 Clash 配置,麻烦 - 使用 Mac Surge 接管 DHCP,让流量走 Surge 过,实现透明代理 - 缺点:稳定性差,一旦 Mac 挂了,整个网络就瘫痪了 - 特定设备主动配置代理服务器为 Mac Surge - 缺点:不是透明代理,可能部分设备无法设置…
意识到这个模式,使用 iPhone 或者 AppleTV 替换 Mac 也可以实现。因为 AppleTV 不方便插网线,故选择了一台闲置的 iPhone12 搭配 lighting 以太网适配器进行测试。碰到两个问题:
lighting 接口理论带宽有 480Mbps,因为在一个接口上下载并转发,实际吞吐还得打 5 折。实际测试下载,最高下载速率只有 10MB/s,实在不够看。
有一个workaround,让iPhone同时接入Wifi,因为有线网卡和无线网卡是不一样的MAC地址,可以分配不同的IP,软路由侧对这两个 IP 负载均衡,那么就可以实现低延迟需求走有线,高带宽需求走无线。
因为经过一层转发,Surge无法识别请求来源设备了,所有来源地址都是软路由。之前使用 SRC-IP 来识别 XBOX 让游戏通通走低延迟的机场,现在没法实现了。
lighting 接口理论带宽有 480Mbps,因为在一个接口上下载并转发,实际吞吐还得打 5 折。实际测试下载,最高下载速率只有 10MB/s,实在不够看。
有一个workaround,让iPhone同时接入Wifi,因为有线网卡和无线网卡是不一样的MAC地址,可以分配不同的IP,软路由侧对这两个 IP 负载均衡,那么就可以实现低延迟需求走有线,高带宽需求走无线。
因为经过一层转发,Surge无法识别请求来源设备了,所有来源地址都是软路由。之前使用 SRC-IP 来识别 XBOX 让游戏通通走低延迟的机场,现在没法实现了。
https://planetscale.com/docs/concepts/hobby-plan-deprecation-faq
PlanetScale 居然开始全面收费了,原来的免费实例会自动休眠。我有几个定时任务还在依赖 PlanetScale 的 MySQL,刚发现已经好些天没有成功运行了。研究了半天,我才发现是 Planetscale 的 DB 挂了,太无语了。
https://planetscale.com/blog/planetscale-forever
估计对于 PS 来说,云数据库 SaaS 业务增长基本到头了,再深入得横向扩展很多业务。倒不如砍掉营销和销售,保持一个收支平衡的状态,专注服务好当前的企业客户就好。
PlanetScale 居然开始全面收费了,原来的免费实例会自动休眠。我有几个定时任务还在依赖 PlanetScale 的 MySQL,刚发现已经好些天没有成功运行了。研究了半天,我才发现是 Planetscale 的 DB 挂了,太无语了。
https://planetscale.com/blog/planetscale-forever
估计对于 PS 来说,云数据库 SaaS 业务增长基本到头了,再深入得横向扩展很多业务。倒不如砍掉营销和销售,保持一个收支平衡的状态,专注服务好当前的企业客户就好。
PlanetScale
Hobby tier deprecation - FAQ - PlanetScale
最近在写一个 TUI 的程序,深度使用了一下风很大的 bubbletea,锐评一下:
1. 易于构建大型复杂界面
将界面上每一个元素抽象为 model,拆分逻辑执行函数 Update 和视图渲染函数 View,在组件 Update 当中可以消费全局各种消息更新自身状态,View 当中专注渲染画面,很像 MVVM 架构。通过这种方式可以很容易创造出事件驱动的 UI 架构,对于构建复杂的交互程序很有帮助。
2. 存在界面刷新闪烁问题
可能因为封装比较浅,每一个组件渲染是输出字符串,框架视角下每次渲染是获取整个页面的字符串,很难做到根据变更区域按需要渲染,每次发生元素变更可能导致整行或者整页刷新,页面会闪烁一下,体验比较差。
对比我常用的 TUI 工具,在相同的terminal+shell下,zellij、lazygit、bottom 等,它们并有类似的情况。
1. 易于构建大型复杂界面
将界面上每一个元素抽象为 model,拆分逻辑执行函数 Update 和视图渲染函数 View,在组件 Update 当中可以消费全局各种消息更新自身状态,View 当中专注渲染画面,很像 MVVM 架构。通过这种方式可以很容易创造出事件驱动的 UI 架构,对于构建复杂的交互程序很有帮助。
2. 存在界面刷新闪烁问题
可能因为封装比较浅,每一个组件渲染是输出字符串,框架视角下每次渲染是获取整个页面的字符串,很难做到根据变更区域按需要渲染,每次发生元素变更可能导致整行或者整页刷新,页面会闪烁一下,体验比较差。
对比我常用的 TUI 工具,在相同的terminal+shell下,zellij、lazygit、bottom 等,它们并有类似的情况。
GitHub
GitHub - charmbracelet/bubbletea: A powerful little TUI framework 🏗
A powerful little TUI framework 🏗. Contribute to charmbracelet/bubbletea development by creating an account on GitHub.
👏1
有了推理模型之后,工作中一些复杂算法代码,目前都是交给 LLM 去生成。深刻感受到,之前鼓吹了很久 TDD,在 AI 编码之后变得非常容易:
1. 根据描述,让 AI 生成一组事无巨细的 test cases。
2. 然后让 AI 生成具体代码逻辑就行,根本不需要 review 内部逻辑,单测出错了就让它一直改到对为止,必要的时候给点提示。
颇有产品经理使唤 QA 和 RD 的感觉。
1. 根据描述,让 AI 生成一组事无巨细的 test cases。
2. 然后让 AI 生成具体代码逻辑就行,根本不需要 review 内部逻辑,单测出错了就让它一直改到对为止,必要的时候给点提示。
颇有产品经理使唤 QA 和 RD 的感觉。
看到 brew 终于有 Trae 的 cask 了,安装一个试试看。之前体验过AI生成生成前端的工具,但是从来没有尝试过生成一个正儿八经的小工具。今天试试看用 Trae builder 模式“复刻”了下我的一年前的写的小工具,可以用来计算免息分期的实际价值。
老版本 https://0apr.sorcererxw.com/
新版本 https://0apr-ai.sorcererxw.com/
整个开发过程全是 AI (Claude-3.5-sonnet),没有改过一行代码,看着效果还不错,甚至胜过我之前的版本
同时也供君品鉴AI写的代码:https://github.com/sorcererxw/0apr-ai
老版本 https://0apr.sorcererxw.com/
新版本 https://0apr-ai.sorcererxw.com/
整个开发过程全是 AI (Claude-3.5-sonnet),没有改过一行代码,看着效果还不错,甚至胜过我之前的版本
同时也供君品鉴AI写的代码:https://github.com/sorcererxw/0apr-ai
Sorcererxw
How much 0% APR installment worth?
Interest-free installment plans are enticing, saving you money to invest. The tool helps you in calculating the actual rate of return.
写了个小玩具,可以往文本里面注入typo,让 LLM 生成的文本更像手写的,可以用来对抗基础 AI 检测 https://noisemake.xyz/zh?v=1
造声
造声 - 让文本别那么工整
给文本注入一些小错误,让它更像手工写出来的
👍2
搓了一个实验性的 skill:可以把我的 RSS feed 自动整理成一篇经过 AI 筛选和聚合的网页。
目前有两种输出形态:
一种是流畅的长文,把多条新闻无缝组织在一起,有点像播客口播稿;另一种是按主题分组,方便快速浏览重点。
它能明显缓解资讯阅读的负担,也能减少信息积压带来的 FOMO。
更有意思的是,在 AI 的加持下,传统推荐算法也许有机会也变成 BYO 模式:不再由平台决定你该看什么,而是由你带着自己的信息源、偏好和筛选逻辑来生成属于自己的信息流。
(源文件在评论区⬇️)
目前有两种输出形态:
一种是流畅的长文,把多条新闻无缝组织在一起,有点像播客口播稿;另一种是按主题分组,方便快速浏览重点。
它能明显缓解资讯阅读的负担,也能减少信息积压带来的 FOMO。
更有意思的是,在 AI 的加持下,传统推荐算法也许有机会也变成 BYO 模式:不再由平台决定你该看什么,而是由你带着自己的信息源、偏好和筛选逻辑来生成属于自己的信息流。
(源文件在评论区⬇️)
发现 Bun compile 模式已经让 TypeScript 输出单一二进制变得相当可用,再叠加各家都在把 TypeScript SDK 当一等公民,未来业务级 CLI 得优先用 TS。
系统级工具可以直接一步到位使用 Rust。
Go 在 CLI 领域的价值会被持续压缩。
系统级工具可以直接一步到位使用 Rust。
Go 在 CLI 领域的价值会被持续压缩。