Verne in GitHub

跨平台开源卡片记忆工具 Anki

在最开始了解到这个应用的时候,我无法简单地用一句话来形容这个应用,大部分人将它称为背单词软件,单词记忆应用,部分人有拿他作为知识管理应用,甚至有人拿他来学习乐谱,诗歌,但总之如果要用简单的话来描述这个软件,那么跨平台必定是关键词,另外一个关键词就是卡片(flash card),在另外一个就是循环记忆,那么至于卡片上承载什么样的内容,就完全由用户来决定了。 德国心理学家[[莱特纳]]在 1970 年出版了他一部重要的著作《How to learn to learn》,他在这本书中引用艾宾豪斯的遗忘曲线,发明了「莱特纳系统」,也就是「间隔式复习」的方法,让 Read more ...


每天学习一个命令:用 ab 命令来进行 HTTP 服务压测

ab 是针对 HTTP 服务进行性能压力测试的工具,它最初被设计用来测量 Apache 服务器的性能指标,主要用来测试 Apache 服务器每秒能够处理多少请求以及响应时间,但这个命令也可以用来测试通用的 HTTP 服务器性能,比如 Nginx,tomcat,resin 等等。 几个概念 吞吐量 Requests per second 吞吐量是系统每秒钟处理的请求数量,可以通过 总请求数量 / 请求花费时间 来计算。 服务器平均请求等待时间 服务器平均请求等待时间指的是服务器平均处理一个请求花费的时间,公式是 总花费时间 / 请求数量,这个指标是吞 Read more ...

2018-10-03 linux , ab , apache , command

Dash 视频串流技术

这里的 Dash 可不是一加手机的快充技术,在使用 Youtube DL 的时候频繁的接触到 DASH 这个关键词,查了一下 DASH 是流媒体技术,全称是 Dynamic Adaptive Streaming over HTTP,自适应流媒体技术,通过 HTTP 服务传送流媒体,在 YouTube,Netflix,Hulu 等流媒体网站中被频繁应用,国内 Bilibili 也引入了该技术 1。 该技术的大致实现原理是在服务端将视频分片,每个分片都有自身的编码方式,甚至不同的分辨率,码率等等,而在客户端根据当前网速或者设备自行选择需要播放的分片,可以实 Read more ...

2018-10-01 wiki , dash , youtube , bilibili , mpeg , stream

mastering xxx vs xxx cookbook vs xxx in action 系列图书的区别

常看计算机相关图书的话对,Mastering XXX,XXX in Action 肯定不会陌生,不同系列的图书定位是有差别的,刚开始学习一种技术时,选择一本合适的书非常重要。所以这里就我个人的感受来说一下这几个系列的区别。 Mastering XXX 大部分 Mastering 系列图书都是 Packt Publishing 出版社出版的。Mastering 系列的图书是大而全的书籍,从介绍开始,到使用,再到具体的技术细节都有涉及。翻译为中文一般叫做“精通 XXX”,“深入理解 XXX”。 适合有一定基础的初学者阅读。 常见的有: 《Mas Read more ...


Selenium 使用介绍

在之前介绍 Appium 的时候就提到了一些 Selenium ,如果说 Appium 是移动端测试框架,那么 Selenium 就是 Web 端测试框架。简单的理解就可以认为我们可以编程控制浏览器的行为。Selenium 支持 Chrome,Firefox,Safari 等主流浏览器,也支持 PhantomJS, Headless Chrome 等等无头 (headless) 浏览器(无界面)。Selenium 支持的语言也非常多 Java, C#,Python, Ruby,JavaScript 1 等等 官网 https://www.sel Read more ...


KIE 一些隐藏需要注意的问题

KIE 的使用和踩坑记录。 Guided Decision Table 的顺序 决策表默认使用的是 None 的 hit policy,这里涉及到一个问题也就是规则执行的顺序,默认的 None 其实是并发所有规则一同执行的,那么也就隐藏了一问题,如果传入的参数满足多条规则,那么极有可能造成结果不符预期的情况。 更多关于决策表 Hit Policy 的内容可以参考这篇 —- 决策表规则执行顺序 None 默认,多行可以同时被执行,verification 会将冲突 warning 出来 Resolved Hit,根据优先级,每一次只有一行 Read more ...

2018-09-29 kie , jboss , rule-engine

需要注意的 Python round() 方法

今天无意间看到 Python 的 round() 方法,它支持第二个可选参数 round(number[, ndigits]) ,看其文档可以知道 当 ndigits 为 None 时,返回返回距离最近的整数 当 ndigits 不为空时,则返回小数点后面 n 精度的 float 数字 所以可以简单的将该函数记忆成四舍五入的方法,然而该方法在执行过程中有些情况需要特别注意,尤其是在输入数字为浮点数时。 正负数 >>> round(0.5) 1.0 >>> round(-0.5) -1.0 Pyt Read more ...

2018-09-28 python , round , programming , tips

威联通折腾篇十一:USB 一键备份

我手上的这款威联通机身前部有一个 USB 端口,平时用处也不多,但是今天看文档看到了威联通的 USB 一键备份,于是就找到了 Hybird Backup Sync 这样一个内置的应用。以前没仔细研究,发现这个应用能够做的事情还挺多,包括云端备份,或者是 Rsync 备份到 NAS,或者外部硬盘备份,总之这也可以单独拿出来写一篇文章了。 回到 USB 一键备份的主题上来,我原本的习惯并不把 U 盘当做便携的数据存储,大部分情况下 U 盘都是启动盘,装机盘,少部分没有网络环境需要便携的数据备份的时候才会用 U 盘来拷贝一些数据。那么这个时候 USB 一键备 Read more ...


威联通折腾篇十:使用 aria2 下载百度云

无奈现在还是很多人使用百度云,以前用一个 bcloud 在 linux 上还能解决 80% 的需求,但是后来封了,也就一直没有理。不过后来发现 aria2 也能够现在百度云的资源,所以想着 qnap 威联通上也应该是能够安装的,使用 docker 会更加容易些。 新建容器 在 Container Station 中搜索 xujinkai/aria2-with-webui 安装即可。镜像是开源的地址在:https://github.com/XUJINKAI/aria2-with-webui 在设置中,网络选项下需要注意 6080 端口映射容器 Read more ...


响应式网页编程中 HTML 标签 meta viewport

在看 html meta 信息的时候看到了 <meta name="viewport" content="width=device-width"> 这样的内容,所以学习下 Viewport 概念。 viewport 是用户浏览网页时视觉区域的大小,浏览器的可见区域就大,而手机屏幕明显就小。在平板和手机还未流星之前,网页一般都是为计算机浏览器设计,这就通常让网页有一个固定的设计,和固定的宽高。 然后,当我们使用平板或者手机浏览网页时,固定大小的页面内容通常都无法适应 viewport,为了解决这个问题,这些小屏幕设备上的浏览器通常将整个页面 Read more ...

2018-09-24 html , viewport , html5 , css

最近文章

  • Nowledge Mem 使用半年体验:让所有 AI Agent 共享同一份记忆 今年 2 月份我把 [[Nowledge Mem]] 装到 MacBook 上,想解决的是一个很常见的问题:我希望在 [[Perplexity]] 网页上查过的资料,直接在 Claude Code 中可以记住。但没想到大半年过去,它已经变成了我每天都在用的软件,而且是那种「不在后台跑着就会觉得别扭」的存在。我在 Claude Code、[[Codex]]、[[OpenClaw]] 里开的每一个会话,开头都会先从它这里拿一份简报;网页上和 AI 聊过的东西会自动同步进去;我做过的决定、踩过的坑、服务器的配置,都沉淀成一条条可以被任何 Agent 检索的记忆。说它是我所有 Agent 的记忆和大脑,一点都不夸张。
  • Aside AI 浏览器介绍:既能自己干活,也能接入 Agent 前两天整理了一篇 AI 浏览器自动化方案怎么选,把 Playwright、MCP、Agent 专用浏览器、WebMCP 这些路线梳理了一遍。在那篇文章里我提到,「内置 Agent 的 AI 浏览器」这一类里我最看好的是 Aside,原因是它的密码管理器设计得很用心,但篇幅有限没有展开。今天就单独写一篇,聊聊这个浏览器到底能做什么、和 [[Comet]]、[[Dia Browser]] 有什么不一样,以及我现在是怎么用它的。如果你看完想试试,可以用我的邀请链接 注册,注册后会额外获得 100 Credits。
  • AI 浏览器自动化方案怎么选:从 Playwright、MCP 到 Agent 浏览器和 WebMCP 的全景梳理 最近我一直在研究「让 AI 用浏览器」这件事。起因是看到 Nowledge 写了一个 browse-now Skill,可以直接让 Claude 控制浏览器,紧接着又偶然发现了 [[Ego Lite]] 这款专门为 Agent 设计的浏览器。顺着这条线,我把 Aside、BrowserOS、Deta Surf 这几款 AI 浏览器挨个调研了一遍,越看越发现它们的侧重点和实现方式差别很大:有人在做测试框架,有人在做浏览器插件,有人从 Chromium 内核开始为 Agent 改造浏览器,还有人在推动新的 Web 标准。它们看起来都在「让 AI 操作网页」,解决的却根本不是同一个问题。
  • 入手 GL.iNet Comet Pro(RM10):支持 Wi-Fi 6 的远程 IP KVM 家里的 [[Homelab]] 一直是一台 4 盘位的小主机跑 [[Proxmox VE]],上面跑着 Ubuntu 虚拟机、一堆 Docker 服务和下载机。平时远程管理全靠 SSH 加 [[Tailscale]],只要系统还活着基本没什么问题。真正让我不放心的是系统起不来的时候:升级内核后卡在启动界面、改网卡配置时手滑导致网络没起来、BIOS 被重置后不再从正确的硬盘启动,这时候 SSH 连不上,Tailscale 也不会在线,人不在家就只能干等。最近正好赶上一波促销,我入手了 [[GL.iNet]] 的 Comet Pro(型号 GL-RM10)远程 [[IP KVM]],叠加各种限时优惠之后实际支付 590.76 元,算是把 Homelab 远程管理的最后一块短板补上了。
  • 用 PowerContext 给多个 Coding Agent 做任务交接 现在我写代码基本是 [[Codex]] 和 [[Claude Code]] 轮着用。有时候是 Codex 的额度先用完了,有时候是某一步我觉得 Claude Code 更合适,于是一个任务经常要在两个 Agent 之间换手。真正麻烦的不是换工具本身,而是换手的那一刻:新会话对前面发生的事一无所知。之前选了哪个库、哪个旧接口不能动、改了哪些文件、测试跑没跑过,这些信息全都留在上一段对话里。我只能手动复述一遍,或者把一大段聊天记录贴回去,前者容易漏掉关键约束,后者浪费 Token,还会让模型在几千行历史里抓不住重点。说到底,我缺的不是一个更大的上下文窗口,而是一份能在 Agent 之间传递、而且接手方可以核对的「当前状态」。在写这篇文章的时候还出现了另外一个思路就是利用 [[magpie]] 将模型路由给充足额度的账号,这个之后再写文章说。