阅读视图
AI 编码方法论:从探索到精进的系统化实践
该渲染由 Shiro API 生成,可能存在排版问题,最佳体验请前往:https://innei.in/posts/tech/ai-coding-methodology-systematic-practice
IMPORTANT 此文章由 AI 总结和润色内部分享,由笔者校对,请注意甄别。
方法论演进路径
阶段一:提示工程(Prompt Engineering)
作为 AI 辅助开发的最基础形态,提示工程采用离散式交互模式。开发者通过连续对话逐步细化需求,AI 基于即时反馈进行代码迭代。该模式在需求边界模糊、探索性强的场景中具有天然优势,但存在显著的效率瓶颈。
特征分析
- 交互模式:线性对话驱动,缺乏系统性规划
- 迭代成本:高频率人工介入,需求理解偏差导致的重构成本显著
- 时间复杂度:O(n²) 级别,随需求复杂度指数增长
- 质量曲线:收敛速度慢,最终效果依赖开发者经验判断
实践案例研究
案例 1:高性能图片预览库开发
项目背景:构建基于 WebGL 的高性能图片预览解决方案
开发过程回溯:
在 afilmory 项目 中,初期采用纯对话式开发模式。经过数周的探索性开发,通过 20+ 轮次的需求澄清和架构重构,最终采用 Gemini-2.5-pro-preview-0605 进行系统性重写,产出 最终方案。
案例 2:Landing Page 重构
需求描述:"重新构建 folo.is landing page 的 UI,使其现代化,AI 风格。样式参考 Vercel、Linear 的 landing page 设计"
交互过程可视化:
通过 12 轮精细化微调,涵盖:
- 视觉层次优化(图片错位修正)
- 色彩系统统一(移除紫色渐变,采用主题色方案)
- 交互元素规范化(圆角、阴影、动效)
- 信息架构重组(Accordion 组件移除,内容整合至详情页)
阶段二:探索式工程(Exploratory Engineering)
该模式构建了需求澄清的系统性框架,将 AI 从代码实现者转变为架构顾问。通过结构化的需求勘探,显著降低后期重构成本。
案例实践:Feature Flags 系统
探索式对话过程:
流程优化
- 需求解构:将模糊需求分解为可验证的技术命题
- 架构预研:基于约束条件评估技术方案可行性
- 风险识别:提前暴露实现路径中的潜在阻塞点
- 决策固化:形成可执行的技术规格说明书
💡 关键提示:在探索式对话确定最终方案后,务必让 AI 将完整的架构决策、技术选型、接口设计等核心要素输出到结构化文档(如
ARCHITECTURE_DECISION_RECORD.md
)。这能防止后续实现过程中因上下文窗口限制或记忆衰减导致的方向偏离,确保实现过程与既定方案保持严格一致。
阶段三:上下文工程(Context Engineering)
实现从"AI 能做什么"到"AI 应该怎么做"的认知跃迁。通过构建完整的项目上下文,将隐性知识显性化,确保 AI 行为与项目规范高度一致。
上下文构建框架
1. PRD Specification Template
# Product Requirements Document (PRD)
## Objective
- [Clearly defined, measurable feature goals]
## Technical Constraints
- [Non-negotiable technical decisions]
- [Architectural principles that must be followed]
## Quality Standards
- [Performance benchmarks]
- [Maintainability requirements]
- [Test coverage criteria]
## Integration Requirements
- [External dependencies inventory]
- [Interface specifications]
## Deliverables Definition
- [Code organization patterns]
- [Documentation requirements]
2. Context Engineering Automation
https://github.com/coleam00/context-engineering-intro
PRD Generation Workflow:
Implementation Execution:
Core Commands:
/generate-prps
: Generate technical implementation plan from PRD specifications/execute-prp
: Execute development tasks according to predefined plan
项目认知增强体系
知识图谱构建
AI 的认知受限于上下文窗口,无法完整理解项目所有细节。通过构建可维护的知识图谱,实现项目智慧的持续积累。
1. 项目索引初始化
Claude Code:
# 初始化项目认知
/init
生成基础项目记忆,包括:
- 技术栈识别
- 目录结构解析
- 构建流程梳理
- 基础约束提取
2. 规范化知识注入
案例:UIKit 颜色系统规范
Prompt:
你应该使用 tailwindcss-uikit-color 文档是 https://github.com/Innei/apple-uikit-colors, 使用这个颜色系统去编写组件,这个规则写到 claude.md
AI 理解的规范化表达:
### UI/UX Guidelines
- Use Apple UIKit color system via tailwind-uikit-colors package
- Prefer semantic color names: `text-primary`, `fill-secondary`, `material-thin`, etc.
- Follow system colors: `red`, `blue`, `green`, `mint`, `teal`, `cyan`, `indigo`, `purple`, `pink`, `brown`, `gray`
- Use material design principles with opacity-based fills and proper contrast
3. 约束规则持续集成
i18n 规范示例
Prompt:
你在编写 i18n key 时,应该使用扁平 key,不能使用冲突的 key 如 exif.custom.rendered.custom 和 exif.custom.rendered,你应该遵循语言的规则;最后把这个规则写到 claude.md 中。
通过交互式反馈,将隐式约束转化为显式规则:
#### i18n Writing Guidelines
1. Follow [i18next formatting guidelines](https://www.i18next.com/translation-function/formatting)
2. **Use flat keys only** - Use `.` notation for separation, no nested objects
3. For plural-sensitive languages, use `_one` and `_other` suffixes
4. **Avoid conflicting flat keys** - During build, flat dot-separated keys (e.g., 'exif.custom.rendered.custom') are automatically converted to nested objects, which can cause conflicts.
Example:
```json
{
"personalize.title": "Personalization",
"personalize.prompt.label": "Personal Prompt",
"shortcuts.add": "Add Shortcut",
"shortcuts.validation.required": "Name and prompt are required"
}
```
Claude Code 增强实践
SuperClaude 集成
SuperClaude 提供了一系列增强命令:
/document
: 自动化文档生成/review
: 代码质量审查/refactor
: 重构建议
全局记忆配置
在 ~/.claude/CLAUDE.md
中配置全局行为准则:
### Code Structure & Modularity
- **Never create a file longer than 500 lines of code.** If a file approaches this limit, refactor by splitting it into modules or helper files.
### Documentation & Explainability
- **Comment non-obvious code** and ensure everything is understandable to a mid-level developer.
- When writing complex logic, **add an inline `# Reason:` comment** explaining the why, not just the what.
### 🧠 AI Behavior Rules
- **Never assume missing context. Ask questions if uncertain.**
- **Never hallucinate libraries or functions** – only use known, verified packages.
- **Always confirm file paths and module names** exist before referencing them in code or tests.
- **Security** You are prohibited from accessing the contents of any .env files within the project.
方法论总结
AI 编码已从简单的代码生成演进为系统化的工程实践。关键认知转变:
- 从工具到伙伴:AI 从执行者转变为协作伙伴
- 从随机到确定:通过上下文工程消除不确定性
- 从短期到长期:构建可持续演进的项目知识体系
- 从个体到系统:形成可复制、可扩展的 AI 协作框架
最终,AI 工程的核心在于将人类的专业判断与 AI 的执行能力有机结合,在保持技术前瞻性的同时,确保交付物的工程质量和长期可维护性。
American hype
This is cultural bedrock. The fault lines have been settling for generations. It'll take an earthquake to move them.
To say I have a complicated relationship with venture capital is putting it mildly. I've spent a career proving the counter narrative. Proving that you can build and bootstrap an incredible business without investor money, still leave a dent in the universe, while enjoying the spoils of capitalism. And yet...
That really is exceptional.
发布于 2025年07月17日 19:31:12 的推文
来自AI的自信
学习周刊-总第220期-2025年第29周
完工 域名服务整理
今天终于把域名、服务器布局完成了。这次折腾目的:1.降低成本;2.统一个人网站为两个字母开头的二级域名3.提升速度;4.网站分类存储管理。乱糟糟的域名和服务器,这下就规整起来了,满意的操作,花了些业余时间。
成本控制
这两天陆续购入泽云两个2核2G轻量云19.9元/月,加上之前的共3个泽云的19.9元,三个一起算60元。原来的8核8G智云下线了,79.9元,相当于省了20元。
优刻得的香港服务器真差劲,新人身份买的138一年的2核2G,经常无法访问,看老人价差不多500一年,我怀疑新客户的机子配置是缩水了,原本以为捡了138元的高配,结果垃圾的一批,浪费了我138元,这次直接断舍离了。
这里又省了138元。
目前服务器剩下阿里99元1个,腾讯99元一个,刺激云13.9元/月一个,泽云19.9元/月三个,共六个。
服务器分类
这次把不同类型的网站规整了下,比如石头厝独立放泽云2核2G的一个服务器,阅读和哪吒放一个,日常记录放一个,公司放一个,花园放一个....区分开来管理。
不混不乱
新的收获
这次搬家除了上面这些效果外,还有些意外收获,比如发现宝塔的整机迁移,这功能很适合呀,买了个新服务器,填上服务器就能把宝塔和网站等一键搬过去,这真的太省事了,不然备份解压,各种操作太浪费时间了。后续试试。
哪吒面板重新装了,没啥技术,又不爱看教程,想当然的搞,差点没搞明白,最终还是突然想到法子搞对了,依然蛮好的界面。
智云刚开始入手时内置了宝塔,那个体验真棒,近期啥都不内置了,空空的。新入的三个都遇到些问题,反正不懂就折腾了,比如这两天就遇到无法装宝塔最新版,错误代码一堆完全看不懂,结果系统从centos换到debian后解决了,莫名其妙的。
这次折腾后,估计后面就少折腾了,续费起走就行了。话说国家真实每年都在搞免费注册CN活动,今年西部数码来来,一个公司一个,薅了七八个,全是日常记录的CN域名,哪天看不惯二级域名全给绑上去用着。
娃哈哈遗产风波的受害者出现了
老婆认真地问我外面有没有私生子。
周天去了趟青海湖
这段时间,工作太忙了,几乎天天要加班。都没时间更新博客里,但心里一直惦记。
周末也没有了,还要时刻待命,不知道今年为什么这么忙,工作根本干不完,并且大家都很卷。
上周末,和我家芳去了趟青海湖,转了一圈,拍了点航拍,航拍我一般都会拍全景,未来,我可能会出很多全景的照片,把我去年、今年拍摄的全景图贴到博客里。
周天早上 8 点三个人吃了碗牛肉面,从西宁出发,一路高速,到达西海镇,我开车驶进了环青赛的赛段上,一辆车都没有,路边全是交警和警察,因为那天是环青赛的最后一天,是同宝山绕圈线也是最后赛段,在比赛开始请 半个小时离开了西海镇,真是刚刚好,再晚十来分钟就要封路,一旦封路就得等比赛结束后才能继续前行。
既然来个刚察,抱着试一试的态度去仙女湾看看,毕竟是习大大去过的地方,也听说不对外开放。到了门口发现景区是开放的,每人 60 元的门票,感觉也挺贵的,几个人就进去了。
不过飞无人机的过程挺惊险的,我飞到 300 米高度拍了全景,但是遥控器显示周围有障碍物,我也是捏了一把汗,300 多米的高空怎么有障碍物靠近,后来一想,仙女湾水鸟比较多,可能是水鸟靠近飞机而报警,将飞机快速下降10 米左右,又在沼泽区域飞过去,发现白色的水鸟围着飞机,太危险了,我迅速飞回身边,不过也提醒了我,鸟多的地方需谨慎飞无人机。
而后驱车围绕青海湖转,到达圣泉湾生态体验区,当然景区是收费的,我车停路边废弃了无人机,天气是真的给力同时也晒伤了我,青海湖真不愧是“高原蓝宝石”,确实美,美的无言而喻。
当然我也拍个全景图,拍摄当天虽然晴空万里,还是有不小的风,无人机拍摄的全景照片时存在抖动,全景照片拼接不是太完美。
过了圣泉湾,过了鸟岛就正式进入了海南州共和县,就在前一周我刚来黑马河镇的尕日拉村,上次来时天气不好,天特别冷,也是把我冻坏了,可这次去,天气正给力,青海湖是真的好看。
当天天气特别刺眼,飞机在处理逆光和顺光的全景照片时,存在照片整体曝光不一致的问题,导致全景照片曝光异常的死黑,我尝试调试,感觉出不来那种感觉。
嗯!好看,这个就是传说中的青海湖蓝吧,看着很舒服,很纯净,照片后期只是拉了一点点自然饱和度。
最后行驶到了二郎剑景区,看到一片油菜花海,感觉不错,看全景图,稍微调色。
图片再美也感受不出什么,重要的是和谁去,一起用眼看到的才是最美的。
城市上空的云
23点过,困意袭上心头,闭目。这段时间特别热,热辣滚烫的天气。下午路过东城根街,三医院的新大楼在绿树丛后显得分外高大。旁边的云朵漏出弯弯一角,像天空笑出的小括号,软软的,柔柔的,竟然有些犹抱琵琶半遮面的感觉。
楼顶奶奶种的蔬菜在烈日下茁壮成长,你看这红辣椒举着火焰,豆角藤蔓缠着竹架往夕阳里钻,紫茄子裹着柔光藏在叶间。这些努力生长的小生命,和天边云、落日余晖一起,让这岁月不至于那么单调,而是充满生命的活力与美的律动。
再抬眼,一大片一大片悬在城市上空的云,它们像被揉碎又随意拼起的棉絮,在湛蓝底色上肆意蔓延。目之所及,楼群成了框住自由的画边,却拦不住云朵飘向远方的梦。任何时刻,云都在不疾不徐的移动,奔跑着,自自然,四海皆家。
早上,单位楼下遇见一只吃百家饭的流浪猫。它低着头,望着自己的爪子。继而,白猫打了一个哈欠,继续在布满裂痕的水泥路上踱步,几多从容、优雅。来来去去的上班人,白猫连正眼都不瞧,或许它在想:“嘿,你们这些打工狗”。
黄昏追着落日跑,橘红的光把楼宇染成温柔的剪影。电线杆静静立着,成了这幅暖色调油画里沉默的笔锋。落日下沉,浮现出天上的老神仙。这烟火与自然交织的时刻,藏着人世间最本真的联结。红红火火恍恍惚惚,一切都是最好的安排。
20250717
开始了两本新书,床头放的是马尔克斯的《世上最美的溺水者》,办公室沙发放的是科塔萨尔的…忘记名字了。
想起来昨天到了一包新的 Oma 的豆子,最近好像每次买他们家烘焙的都不错,自从我和 ChatGPT 要了一个冰冲方案,每天都一模一样,不过今天没做咖啡,和 Claude Code 一起编程让我不想离开电脑。
今天做了很多测试工作,桌上一堆测试机。今天也是和 Claude 一起编程的第五天,一开始我定的计划是每个月更新一次花样文字,昨天我已经激进地改为了每周,甚至今天我提交一个版本后,吃完晚饭梳理任务,立马又做了一个我认为至关重要的改进。虽然这个改进 Claude 努力了三次都没搞定,最后是我通过和 ChatGPT 聊天找到了方案。多 AI 一起其实就是如何用好 AI 范畴内的,也就是多个成长背景的小弟一起来帮你干活。
最后瓶颈会落在产品和视觉设计。对于产品部分,我已经有了想法,和代码一下,学会不纠结,先让 AI 给方案呗,不行再说么。视觉部分暂时还是需要设计师支持,不过晚上看到了 figma mcp,研究研究。
一人力量还是太弱了,对着屏幕一天眼睛就受不了,这当然也是限制一人产出的因素之一,还是需要团队啊。
#游戏 本周Epic游戏喜加一 文明6白金版 截止日期:7 月 24 日 23 点
#游戏 本周Epic游戏喜加一 文明6白金版 截止日期:7 月 24 日 23 点
NAS上的AI知识中心,熊猫力荐!三分钟部署PandaWIKI
NAS、键盘、路由器······年轻就要多折腾,我是爱折腾的熊猫,今天又给大家分享最近折腾的内容了,关注是对我最大的支持,阿里嘎多
引言
关注这个项目也是因为它的名字,沾了熊猫感觉无比亲切,不过进一步了解发现这项目真挺不错的,WIKI项目市面上其实已经有很多非常优秀的作品了,而其中引入AI功能的也不少,而要说在AI的功能利用、界面的布局以及上手难度上,PandaWiki一定是最优秀的那一个。
功能上PandaWiki的AI能进行辅助创作、问答以及搜索,加上项目本身的引导与界面UI设计极为出色,使其在一众Wiki项目中它的上手非常简单,再加上支持作为挂件挂在网页上,也支持对接钉钉、飞书以及企业微信,所以很适合工作室或者中小型企业使用。
部署机
本次用到的部署设备为绿联的DXP 6800Pro,主要还是因为可以白嫖绿联的穿透服务,上个月系统更新之后,现在在外网环境下也能利用UGREENLink实现自部署项目的访问,在外网环境下,在Docker中直接点击快捷访问,这时候会自动跳转到uglink域名下访问docker应用。
因为目前PandaWiki没有提供手动部署的文档,所以我们需要利用一键脚本,而UGOS Pro系统在权限方面算是目前国内NAS中放的最开的,所以也方便我们去折腾。目前京东Plus会员、天猫88VIP在18日0点-19日24点,一共有四挡plus券(1500-150元、800-80元、500-50元、200-20元),感兴趣的快去蹲一蹲。
项目部署
因为要用到一键脚本,所以这里我们先打开绿联的SSH端口,随后用SSH工具连接上NAS,工具选择随意,熊猫这里用的是electerm。
输入sudo -i
获取root权限,随后输入密码,当用户名变为root之后我们输入PandaWIKI给到的一键脚本bash -c "$(curl -fsSLk https://release.baizhi.cloud/panda-wiki/manager.sh)"
安装会有操作引导,跟着引导选择就行了,默认的安装路径为/data/pandawiki
,这里可以自行更改,熊猫主要是演示,就不更改了。后续的卸载也是用这个脚本,还是蛮方便的。
安装会自动进行目录创建、compose文件下载、env变量文件生成等等,随后会自动执行compose文件,能看到该项目涉及的镜像真不算少。
安装完成之后会有控制台的信息输出,默认的用户名和密码也会给到,记得首次访问之后更改一下,默认的密码非常长,端口默认是2443。
项目体验
浏览器直接输入IP与端口访问,登录界面很简洁,没有看到有什么广告,输入刚刚得到的用户名和密码登录即可。
首次登录会看到系统配置,这里会显示用户管理、Chat模型设置以及内置的百智云,如果想要使用自己的API,在设置中去调整就行。
设置好模型之后就能进行知识库的创建,知识库的端口默认为80,这里我们需要根据自身NAS的环境去更改。
知识库的导入支持非常丰富,除了能直接导入本地文件,还支持URL、RSS、Sitemap、Notion、Epub等网站以及软件的导入,格式上面常规的文档格式例如doc、txt等等,也支持md等格式。
导入之后来到编辑界面,编辑器用的是富文本编辑器,支持AI润色以及总结,同时也支持支持内容的AI摘要。
在统计这里能看到wiki的访客以及访客属性等信息。
Wiki的设置中能进行知识库名称的更改、第三方的设置以及访问口令等等设置,后台配置非常丰富,主要是整个界面简洁大方,操作起来很好上手。
点击右上角的访问Wiki网站,能查看已发布的独立网站,整体观感蛮不错的。
写在最后
非常不错的项目,个人最喜欢的还是它简洁的操作和美观的UI,后续建议给AI加一个文档整理功能,如果能通过AI自动给文档分类或者打标签,那对于后续知识库的整理就方便很多了。
以上便是本次分享的全部内容了,如果你觉得还算有趣或者对你有所帮助,不妨点赞收藏,最后也希望能得到你的关注,咱们下期见!
雀魂 MajsoulMax / Akagi / MajsoulCopilot 使用教程
import { GithubCard } from 'astro-pure/advanced' import { Aside } from 'astro-pure/user'
- 本文及出现的我的相关项目仅供学习参考之用,请勿用于商业用途,请使用者于下载 24 小时内删除相关内容。
- 不建议使用 AI 代打(但你可以适当使用 AI 辅助学习如何打牌可以最大化牌效、如何防守等),这于你的技术水平无益,AI 上去的分也没有意义,而且使用自动代打极其容易被封号。
- 如果本文或相关项目对你有帮助,欢迎 Star。
MajsoulMax
雀魂 Max 可用于本地解锁全角色、皮肤、装扮等。
原始 Python 仓库:
基于 Rust 重构的仓库:
在前者基础上,外加 TinyProxy 做鉴权并封装为了 Docker 镜像:
MajsoulMax 初始化的时候会自动下载更新 liqi
这一依赖,请保证你的网络环境可以正常访问 GitHub。
同时,建议关闭 MajsoulMax 的 helper
功能。
解锁原理
首先我们要明白,MITM(Man-in-the-Middle) 中间人攻击的本质是在雀魂游戏进程和服务器之间插入一个代理。当游戏客户端发送请求到服务器,或服务器返回响应给客户端时,这些网络流量都会经过我们启动的代理程序。
也即,原来是:
game -> server
现在变成了:
game -> proxy -> server
代理程序会识别出特定的游戏数据包(Protobuf 格式),并根据预设的规则在本地对其进行实时修改,将“未拥有”的角色或装扮数据修改为“已拥有”。修改后的数据包再被发送到游戏客户端,从而在视觉上欺骗客户端,让我们看到已经解锁了全角色和装扮。这个过程只发生在你的电脑或手机上,服务器端的数据完全没有改变。
由于他只是一个代理,所以部署在本地或者服务器 VPS 上都可以,而如果部署在 VPS 上,便可以实现全平台使用,且数据共享。
各个版本的差异:
- Python:基于 mitmproxy 实现,兼容性最好,但需要手动安装管理依赖,可以比较方便的实现上下游代理链,兼容本地 AI 使用。
- Rust / Docker:基于 hudsucker 实现,兼容性较差,优点是已经完全编译为二进制文件,快速启动无需安装依赖。
注意,Rust / Docker 所基于的 omjadas/hudsucker 项目有一个很令人困惑的地方,即其虽然身为会进行 MITM 的节点,但是对外提供的是 HTTP 的代理节点而非 HTTPS 的代理节点。这导致你必须在填写代理软件的时候,填写 HTTP 代理,并且同时信任其自签名的证书,而且在对流量进行代理链式配置的时候(如搭配本地 AI 软件),也会存在一些问题。
这点具体表现在:
-
游戏初始化的时候不能过双层代理链(解锁 + AI),只能插入一层代理
-
通过 Surge 测速的时候,日志会显示
WARN hudsucker::proxy::internal: Unknown protocol, read '[48, 45, 41, 44]' from upgraded connection
不过这并不影响使用。
我尝试了一些办法,但始终无法解决这个问题,只能做简易 Patch,详情见后。
启动代理
请首先阅读各项目的 README 文档,了解启动方法。
Python
git clone https://github.com/Avenshy/MajsoulMax.git
cd MajsoulMax
pip install -r requirements.txt
mitmdump -p 23410 -s addons.py
Rust
无需下载源码,直接在 Releases 根据你的平台下载二进制文件,解压出来后运行 majsoul_max_rs
即可。
Docker
目前只支持 Linux 平台。
-
拉取并启动服务
创建并进入目录:
mkdir majsoul && cd majsoul
然后创建
docker-compose.yml
:services: majsoul-proxy: image: arthals/majsoul-max-rs:latest restart: unless-stopped ports: # 将容器的 23411 端口映射到宿主机的 8888 端口 - '8888:23411' volumes: - ./app:/app environment: - username=username - password=password # Github 代理下载 - download_url=https://ghproxy.net/https://github.com/Xerxes-2/MajsoulMax-rs/releases/download/0.6.7/majsoul_max_rs-0.6.7-x86_64-unknown-linux-gnu.tar.gz # 原始下载 # - download_url=https://github.com/Xerxes-2/MajsoulMax-rs/releases/download/0.6.7/majsoul_max_rs-0.6.7-x86_64-unknown-linux-gnu.tar.gz # 可选:代理下载 # - http_proxy=${HTTP_PROXY:-http://172.17.0.1:7890} # - https_proxy=${HTTPS_PROXY:-http://172.17.0.1:7890}
启动容器:
docker compose up -d
默认会:
- 映射宿主机
8888
端口到容器23411
端口。 - 使用账号
username/password
进行 Basic Auth 认证。 - 通过
download_url
环境变量自动下载 GNU 版本的可执行文件。
如需修改端口或账号密码,请直接编辑
docker-compose.yml
对应字段即可。 - 映射宿主机
-
验证运行
curl -k -x http://username:password@127.0.0.1:8888 https://baidu.com --head
返回
HTTP/1.1 200 OK
即代表代理工作正常。然后你需要放行你服务器的 8888(或同自定义)端口,使之可以在外网访问。
信任证书
- 对于原始 Python 仓库,需要信任
~/.mitmproxy/
下的mitmproxy-ca-cert.pem
证书。这个证书是本地自动生成的,非常安全。 - 对于 Rust 版本或者 Docker 封装版本,需要信任 hudsucker.cer 证书。这个证书是在源码中写死的,如果你担心安全性,想要更换证书,你需要下载源码替换后重新编译。
以下以 hudsucker.cer
证书为例,讲解步骤:
macOS
-
将证书拖入到
钥匙串访问-系统-证书
中 -
右键-显示简介-信任
,调整为始终信任,然后关闭,输入密码确认。
iOS / iPadOS
-
将下载好的
hudsucker.cer
隔空投送到 iPhone/iPad 上,进入设置-已下载描述文件
,点击安装 -
前往
通用-关于本机-证书信任设置
,打开 Hudsucker Industries 的选项
Windows / Android
点击下载下来的 hudsucker.cer
证书文件,跟随指引安装证书即可。
代理配置
原始项目需要使用 Proxifier 来进行流量代理,然而我们有更好的选择,那就是直接利用 Surge / Clash 来进行规则分流代理。
注意,如果是本地客户端,请开启 TUN / 增强模式以确保正确代理进程流量。
以下配置在 macOS Steam 客户端和 iOS / iPadOS 港服客户端测试通过,注意替换相关字段(IP、端口、协议、账号密码)为你的实际值。
Python
提供的是本地 HTTPS 节点,无需账号密码。
Clash 配置示例:
proxies:
- name: Majsoul
port: 23410
server: 127.0.0.1
tls: true
type: http
proxy-groups:
- name: 🀄 雀魂麻将
proxies:
- Majsoul
- DIRECT
type: select
rules:
- PROCESS-NAME,雀魂麻將,🀄 雀魂麻将
- PROCESS-NAME,jantama_mahjongsoul.exe,🀄 雀魂麻将
- PROCESS-NAME,Jantama_MahjongSoul.exe,🀄 雀魂麻将
Surge 配置示例:
[Proxy]
Majsoul = https, 127.0.0.1, 23410
[Proxy Group]
🀄 雀魂麻将 = select, Majsoul, DIRECT
[Rule]
PROCESS-NAME,雀魂麻將,🀄 雀魂麻将
Rust
提供的是本地 HTTP 节点,无需账号密码。
Clash 配置示例:
proxies:
- name: Majsoul
port: 23410
server: 127.0.0.1
tls: false
type: http
proxy-groups:
- name: 🀄 雀魂麻将
proxies:
- Majsoul
- DIRECT
type: select
rules:
- PROCESS-NAME,雀魂麻將,🀄 雀魂麻将
- PROCESS-NAME,jantama_mahjongsoul.exe,🀄 雀魂麻将
- PROCESS-NAME,Jantama_MahjongSoul.exe,🀄 雀魂麻将
Surge 配置示例:
[Proxy]
Majsoul = http, 127.0.0.1, 23410
[Proxy Group]
🀄 雀魂麻将 = select, Majsoul, DIRECT
[Rule]
PROCESS-NAME,雀魂麻將,🀄 雀魂麻将
Docker
提供的是远程 HTTP 节点,需要账号密码、IP 端口等配置,此时服务器作为中间代理,而客户端设备只需要信任证书后配置节点和分流规则即可。
Docker 的配置和 Rust 非常类似,只是多了一个鉴权部分。
Clash:
proxies:
- name: Majsoul
port: your_service_port
server: your_server_ip
tls: false
type: http
username: username
password: password
Surge:
[Proxy]
Majsoul = http, your_server_ip, 8888, username, password
如果你是桌面端,请参考之前的 Rust 版本配置,只需替换 proxies
字段即可,无需对规则做操作;
如果你是移动端设备,即 iOS(无法使用 PROCESS-NAME 规则,会被忽略)或者是安卓但不确定 PROCESS-NAME 是否正确,那你需要将规则改为域名关键字或者 IP 分流,如下:
Clash:
rules:
- DOMAIN-KEYWORD,majsoul,🀄 雀魂麻将
- DOMAIN-KEYWORD,maj-soul,🀄 雀魂麻将
- DOMAIN-KEYWORD,catmjstudio,🀄 雀魂麻将
- DOMAIN-KEYWORD,catmajsoul,🀄 雀魂麻将
- IP-CIDR,146.66.155.0/24,🀄 雀魂麻将
- IP-CIDR,185.25.182.18/32,🀄 雀魂麻将
- IP-CIDR,203.107.63.200/32,🀄 雀魂麻将
Surge:
[Rule]
DOMAIN-KEYWORD,majsoul,🀄 雀魂麻将
DOMAIN-KEYWORD,maj-soul,🀄 雀魂麻将
DOMAIN-KEYWORD,catmjstudio,🀄 雀魂麻将
DOMAIN-KEYWORD,catmajsoul,🀄 雀魂麻将
IP-CIDR,146.66.155.0/24,🀄 雀魂麻将
IP-CIDR,185.25.182.18/32,🀄 雀魂麻将
IP-CIDR,203.107.63.200/32,🀄 雀魂麻将
Akagi
Akagi 可以提供 AI 雀魂分析,帮你分析下一步应当打什么牌,并且具有一个十分现代化的 TUI(Terminal UI),对于 Windows 客户端,还可以下载编译好的版本完成自动代打,不过我没尝试过。
AI 原理
和解锁类似,AI 的工作流程也是通过 MITM 来截获对局信息,从而还原出牌局状况,然后送入 AI 来进行分析。所以你需要类似的完成信任证书、配置软件分流的操作。
Akagi 使用的证书和 MajsoulMax 的 Python 版本一致,位于 ~/.mitmproxy
。
对于 Windows 用户,可以直接下载编译好的 exe 可执行文件;对于 macOS 用户,则必须手动执行 py 脚本。
启动 AI
git clone https://github.com/shinkuan/Akagi.git
cd Akagi
pip install -r requirements.txt
# 然后按照原仓库的 README 走
# 先按照 For Developer 走,配置好 libriichi 的依赖
# 然后同前文(macOS)或者 README(Windows) 一样,安装证书。
python run_akagi.py
原始仓库提供了一个基础的 Mortal 版本,不过你可以在 这个 issue 下载到更新的权重。
需要注意的是,如果你替换了权重,那你也需要相应的修改 mjai_bot/mortal
下的 model.py
和 bot.py
,注意 issue 直接下载下来的 model.py
直接拖进去是不行的,这两个文件都需要稍微的改一改导入语句。
MajsoulCopilot
类似 Akagi 的项目,也是可以本地提供 AI 辅助,不同的是其同时支持 Windows / macOS 的自动打牌功能,而 Akagi 虽然也支持,但只支持 Windows 平台。
我的 Fork 版本(修了一些 macOS 上的证书信任检测问题,支持兼容雀魂 Max 解锁,但 PR 尚未合并,推荐使用):
自动打牌原理
自动打牌基本就是通过在浏览器里定位控件元素,并模拟鼠标操作,来完成自动打牌、自动开启对局等功能。
然而,其不仅存在一些限制(浏览器分辨率、尺寸等),而且浏览器的渲染界面(至少在 macOS 上)精度不如客户端,体验也有所残缺,且自动打牌很容易被封号,所以不建议使用。
启动 Copilot
参见原文 README 即可。
与 Akagi 不同的是,对于 MahjongCopilot,只需要将模型文件拖入即可,无需再额外修改代码。
值得注意的一点是,MahjongCopilot 与前文的项目有所不同的一点是,其做了一层隔离,所需要信任的证书位于 ./mitm_config
下而非默认的 ~/.mitmproxy
,这一点在联合使用的时候可能需要注意,但代码应当会自动完成信任过程。
联合使用
Akagi + MajsoulMax
由于二者都需要进行 MITM,所以你需要配置代理链让流量串行经过两个节点,并且需要同时信任二者的证书。
注意,联用二者的时候,千万不要同时使用 PROCESS-NAME 和 DOMAIN-KEYWORD / IP-CIDR 规则,否则容易导致回环代理,出现 Bug。
这里有基于 MajsoulMax-rs 和基于 MajsoulMax 的两种配置,配置相近,不同点在于:
- MajsoulMax-rs(Rust)启动的是 HTTP 代理(基于 hudsucker),且链式代理时,初始化的时候会遇到问题
- MajsoulMax(Python)启动的是 HTTPS 代理(基于 mitmproxy),可以完美进行链式代理。
虽然听起来后者更好,但还是建议按照前者走,原因无他,方便快捷(无需切换 Python 环境等)。
Rust 版本代理链条如下:
game -> majsoul_max_rs(23410, http) -> akagi(7880, https) -> server
Python 版本代理链条如下:
game -> MajsoulMax(23410, https) -> akagi(7880, https) -> server
建议的配置如下:
Clash:
proxies:
- name: Majsoul
port: your_service_port
server: your_server_ip
tls: false
type: http
username: username
password: password
- name: MajsoulLocal
port: 23410
server: 127.0.0.1
tls: false
type: http
- name: Akagi
port: 7880
server: 127.0.0.1
tls: true
type: http
proxy-groups:
- name: 🀄 雀魂麻将
proxies:
- Majsoul
- MajsoulLocal
- DIRECT
- 🔰 节点选择
type: select
rules:
- PROCESS-NAME,雀魂麻將,🀄 雀魂麻将
- PROCESS-NAME,majsoul_max_rs,Akagi
Surge:
[Proxy]
Majsoul = http, your_server_ip, your_service_port, username, password
MajsoulLocal = http, 127.0.0.1, 23410
Akagi = http, 127.0.0.1, 7880
[Proxy Group]
🀄 雀魂麻将 = select, Majsoul, MajsoulLocal, DIRECT, 🔰 节点选择
[Rule]
PROCESS-NAME,雀魂麻將,🀄 雀魂麻将
PROCESS-NAME,majsoul_max_rs,Akagi
这么配置的好处在于,你可以在不想用 AI 的时候分流到服务器上的 Majsoul 节点进行简单的解锁,而在需要 AI 的时候,先通过服务器节点或者直连进行初始化,然后再换到本地的 MajsoulLocal 节点即可。
如果你实在嫌麻烦,你还可以让 LLM 给你写一个基于 Clash / Surge HTTP API 的自动化脚本,来完成这个过程。
MahjongCopilot + MajsoulMax
参见 我的 Fork 的 README 即可。
在 settings.json
中设置 "majsoulmax_proxy": "http://127.0.0.1:23410"
。
随后,请以如下方式启动 MajsoulMax:
mitmdump -p 23410 --mode upstream:http://127.0.0.1:10999 -s addons.py --ssl-insecure
请注意,如果你修改了 MajsoulMax 或者 MahjongCopilot 的代理端口,请相应修改对应端口,并且确保 MajsoulMax 和 MahjongCopilot 的自签名证书均正确安装(这两者是不同的,前者默认使用 ~/.mitmproxy/
下的证书,而后者使用 ./mitm_config/
下的证书)。
最终代理链为:
game -> MajsoulMax(23410, https) -> MahjongCopilot(10999, https) -> server
分流类似前文,在此不再赘述。
兄弟们!!!15天超100k
云散愿空
我仰着头,脖颈因长久的凝视而僵硬发酸。那片乌云起初还厚重饱满,此刻却被无形的风之手肆意撕扯,化作缕缕灰絮四散飘零。每一缕消散的云絮都像从我心头剥离的希望,轻飘飘地消失在灼热的空气中。我能感觉到,随着云影的褪去,胸腔里那份对甘霖的渴盼也在一点点干涸。
天空渐渐露出它残酷的本色——一片刺眼的白,像被烈日漂洗过无数次的尸布,惨淡地覆盖着整个世界。那白色并非纯净,而是某种更可怕的空无,是所有可能性的终结。龟裂的大地倒映在这苍白的穹顶之下,仿佛两个濒死的巨人在默默对峙。
风不知何时停了,连最后一丝扰动空气的躁动也归于沉寂。在这令人窒息的白光里,我听见自己干裂的嘴唇微微开合的声音,却连一声叹息都挤不出来。汗水还未渗出就被蒸发的皮肤紧绷着,像另一层干枯的壳。我和天空之间,只剩下这场无声的、绝望的对峙,以及那些永远等不到的雨滴,在记忆里发出虚幻的回响。
梦四十六
臭宝在玩剧本杀,我在楼下等。实在坐到无聊了,出去转转。
推开一扇门,竟然是二舅家。
进门后发现一切都是记忆中的样子。我走到衣柜前仔细端详。
表哥过来搭话:“大致啊,记得吗,这个柜是赧家搬家的时候送给俺家的,30多年了。”
我:“你说错了,不是1993年俺家搬家送来的,是1988年俺家买了组合柜换下来送来的。”
表哥:“妈的你记性怎么那么好。你知道这个柜在哪买的吗?”
我:“给我挖坑?这个柜是我爸准备结婚的时候,跟我大爷自己在家打的。木头在成仁街买了一些,我大姑父从厂里偷了一些。”
表哥:“你在研究啥呢?”
我:“这个柜门啊。我爸跟我说上面的画是我大爷在厂里拿电烙铁烫出来的。小时候没注意,现在欣赏一下。”
表哥:“你大爷在厂里这么闲么?他在石油七厂到底干什么活啊?”
我:“石油厂下面好几个电厂,他们那个排名很靠后,负荷很轻。天天就是隔几个钟头溜达一趟,看一下表盘,活就干完了。”
表哥:“有忙的时候吗?比如设备坏了线路烧了什么的。”
我:“他们不管修,坏了打个电话,有专门的部门修。但也有忙的时候,就是五一、七一、十一和年底厂里组织文艺汇演的时候。”
说话间,二舅家窗外自东向西掉下来一架飞机,带着滚滚烟尘,在西南方向碎了一地。
烟散得差不多了,正南面的山上又冲下来一列绿皮火车,洋洋洒洒,在门前也掉了一地。
与表哥两个不约而同地溜达向火车。
表哥:“你怎么也往这边凑,你也怕航空煤油爆炸啊?”
我:“啊,我只是觉得火车人更多,而且坐绿皮的人带现金的可能性更大。”
到了事故现场,我发现遍地是手机。
我把它们一个个捡起,扒开手机壳,把里面藏的钱拿出来。
钱都不多,一二百的,最多三五百,甚至还有10元的。更多的是啥也没有。不过也有富兰克林和福泽谕吉的。
还有放周慧敏照片的,这个也没收了。
捡起一个某为三折叠。
哎,这个用不用手机壳啊?好像是没有啊。
算了,掰着玩吧。像掰铁丝一样反复反复反复折,这玩意儿也越来越越来越越来越软,终于变成黑乎乎的一团,沾了满手,似乎还有刺鼻的沥青味儿。
忽然耳边响起一个声音:“你敢故意损坏某为,倒大霉了!”
醒了。
哪吒面板安装代理前注意事项
在安装前,需要提前在管理面板中设置通信域名,该域名不建议接入 CDN。本文档以示例通信域名 “data.example.com” 为例。
在后台管理面板点击头像,进入“系统设置”页。
在“Agent 对接地址【域名/IP:端口】”项中填入通信域名和端口 “data.example.com:8008”。
点击“确认”保存设置。
为什么我不认为百度快码目前的产品形态能解决他想要解决的问题?
最近这两个月,是我最拥抱 AI Coding 的这两个月,我尝试了多个不同的 AI 辅助编程工具,包括 Github Copliot、Cursor、Claude Code、百度快码、V0 等一系列 AI 辅助编程工具。
而 6月底,刚好被邀请参加了百度快码的 AI Day 发布会,我觉得要给大家分享一些我对于百度快码的看法,以及对于 AI 辅助编程的看法。
为什么 AI 辅助编程 / Vibe Coding 这么火?
如果用一句话来描述为什么 AI 辅助编程 / Vibe Coding 这么火,我觉得是人民日益增长的数字化和智能化需要同落后的软件生产力之间的矛盾。这里的软件生产力不是指个体的生产力,而是整个行业的生产力之于整个经济的生产力。我们的软件生产力,目前仅出现在互联网领域,其他领域都极差。
这个问题早已有之,我国从 2014 年开始,就开始推广大众创业、万众创新,涌现了一批又一批的互联网公司,我们国家的各种 SaaS 企业,也是从哪个时间开始逐步出现。但总的来说,新的公司和企业主要出现在互联网领域,而更多的传统行业的数字化和智能化的改造,走的并不快。这里存在一些投入产出比和优先级的问题,互联网拥有规模化效应,可以快速造富,所以所有人都冲进互联网,但所有赚钱没有那么快的领域,就缺乏大量的数字化、智能化的人才去参与到行业的改变当中,有需求的人,但因为不是赚钱最快的事情,导致始终停留在低效的工作方式里。
这两年,数据库型表格大火(比如 Notion、Airtable、多维表格),其主打的便是除了像 Excel 一样像表格一样的管理,还提供各种不同的展示形态和对接功能,使其还更像一个复杂的「业务系统」,虽然你可能到真实的落地场景中,发现依然不好用。但不得不说,这种简单的数字化处理,已经帮助很多人解决问题。
So,这个和百度快码有什么关系?
在百度快码的发布会中,我看到,百度希望快码能够帮助每个有梦想的人构建他们的世界,从愿景的视角来看,是很好的,也是符合我上面说的,在试图解决人民日益增长的数字化和智能化需要同落后的软件生产力之间的矛盾

这个初衷和愿景不错,但由于大厂「平庸的重力」,快码并没有那么的直击目标,而是走在了一个「跟随者」的脚步上。百度快码目前的产品形态都还停留在 IDE、Copliot 这个维度,就决定了他从一开始,就不是设计给非工程师使用的。

一个很现实的问题 —— 那些不懂研发的人们,他们真的知道 IDE 代表着什么?那些不懂研发的人们真的知道 AI 让他点运行时,下一步代表着什么么?
当然,这样并不是说快码不好,只是,和他的愿景相比,似乎有些南辕北辙。
单从产品力和功能的视角来看,我认为快码会是一个不错的 AI 辅助编程工具,比如各种不同点位的 AI 功能(帮你写 Commit、写单测);还有一些洞察了 Vibe Coding 用户痛点的功能(比如预览选中截图后再次修改)


我相信,百度快码可能在百度内部也被大量的使用,去解决一些基础的编程问题,但这条路可能也不一定是一个好事 —— 他会让你习惯于解决工程师的问题,而忽视了那些愿景想要覆盖的每一个人。
AI 辅助编程工具的几个世代
目前市面上的 AI 辅助编程产品大体可以分为三类, Copliot 类、 Agent 类、自动化 Agent 类。
最底层是基本上只服务于工程师的 Copliot 的产品,这类产品的特点是基本上是围绕着 IDE或者直接基于 IDE 进行魔改搞出来的,大量的依赖了工程去看代码,找到需要修改的代码。

更上一层是在 IDE 之上集成的 Agent 类产品,在我实际去做线下活动的时候,会发现大量的非计算机背景用户其实会使用 Agent 类产品来完成自己想要做的事情。这是因为 Agent 类产品基本上不需要你再找到代码给他看,而是用编辑器打开文件夹,直接让 AI 自己去改就行,你只负责提需求,并在过程中参与到其中去干活。
而再上一层,就是最近比较火的 Claude Code、 Gemini Code 类产品。这类产品基本上不太给用户看代码,而是只是让用户输入需要做的事情就可以,你不需要关注代码,你只需要关注最终我实现的效果就行。不过因为产品设计的问题,坦诚的讲,这类产品其实是对普通用户最不友好的。。。因为「终端」也是一个非常工程师的词汇。一个更好的方案可能是封装成对用户更友好的界面,让普通人也能用的起来。
而更下一代,则希望可以完全跳出开发者和工程师的视角,为用户提供一个易用的工具,同时提供全生命周期的解决方案。从这个视角来看,我认为大厂是有机会的,或者是小厂可以先做,等着被大厂收购。原因是目前来看,从 Claude Code 的终端版到 GUI 版只是个产品决策和产品时间的问题。下一步则是需要解决部署上线的问题,这个是一个传统的云厂商有优势的领域,对于大厂们来说, 既可以卖模型消耗,还可以卖云资源消耗,美滋滋。
(又回到了我的老本行 BaaS、云开发 hhhh)
AI编程的终极目标不是「让人人成为工程师」,而是「让人人不必成为工程师也能解决问题」。
给百度快码的小建议
作为一个前大厂人,我其实能理解这里面的平庸的重力,不过我还是觉得,可以给一些建议,避免说 「you can you up」(虽然我真的 can)。
- 和老板好好聊聊,画画饼,sell 一下未来:百度既然有云,又有模型,为什么不直接一步到位做第四代产品,而是继续做第一代产品呢?这个事你不干,阿里、字节也一定会干的。人家也和你一样,要模型有模型,要云有云,没有不干的理由。
- 用好云,整合好资源,实在不行用 AI 先霸王硬上弓提供了再说:大厂里难免要解决优先级排序的问题,甚至可能比小厂要慢的多,但如果你们有一个团队可以极致的敏捷,其实云现有的 API 也不是不能搞(我们当时轻服务不就是这么干的)。你们先干出来一个版本,打磨出一个还不错的产品,然后拿回去找老板要资源嘛。
& 一些小吐槽
在发布会上,邀请小朋友来分享用百度快码做应用很好,但,这是一个「only 海淀 can do」 的事情,离开北京的环境,这个 case 并不具有普适性。。。反而会让大家觉得,稍微有点「何不食肉糜」,特别是,我在台下做的时候,我旁边的一位是北京的大学老师,他都不会使用快码,同时台上的小朋友们做分享,让我深深的感觉到,背后大概率是一位大厂的工程师爸爸。。。
远离效率工具与方法论焦虑
技术迭代呈现爆炸式发展,如今的效率工具与方法论多到让人眼花缭乱。AI 的诸多新玩法听着厉害,实际用起来却多是基础功能,若想掌握复杂用法,还得投入更多心力。对普通人而言,在技术尚未成熟时,关注产品化落地的成果(比如笔记软件里的AI提问功能)就已足够,不必盲目追逐技术本身。真要使用AI,也犯不着想着私有化部署一套大模型。真正重要的,从来不是“跟上所有新技术”,而是“用适合自己的方式解决实际问题”。
探索效率工具和方法论时,人很容易陷入“大而全”的漩涡。几年前刚接触 Obsidian 时,我也曾一度沉迷研究 PARA、INKP、DIKW、IPO、CODE 等方法论,反复规整笔记,还体验了 Roam Research、Logseq、Bear、Flomo、Notion、Anytype、Trilium Notes 等一众工具,期间经历了一次次挫败。有人做知识管理时弄了一堆双向链接,结果光整理链接就累得够呛,反倒没精力去做正事。
后来我停止折腾,“躺平”用了几年 Obsidian,使用率和产出反而更高了。面对工具与方法论的洪流,与其焦虑追赶,不如回归本质:工具是解决问题的手段,而非目的本身。正如梭罗所说:“工具是身体的延伸,但别让延伸绑架了本体。”
工具选择需要“断舍离”。知识管理的核心是“记录与检索”,而非盲目追求双向链接。对创意工作者而言,一个备忘录或许就足够了,复杂的系统反而会成为负担。优化应从“补丁思维”开始,盖尔定律揭示:复杂系统是由简单演化而来的。与其推翻旧习惯,不如仔细观察阻塞点,用最小的操作去修补。
当然,行动是破解焦虑的终极答案。知识管理的核心在于复习和梳理,阅读的重点是拓展与思考,写作的首要任务是落笔。把简单的事坚持做好,远比追逐新方法更有意义。
别被“怕错过”(FOMO)的心态困住。工具是“为我所用”,而非“为我所困”。认清自身需求与习惯,明确自己想要什么(是记录东西快?还是梳理思路?),关键不在于“跟上所有新技术”,而在于用适合自己的方式解决实际问题。我在 Obsidian 中践行 PARA 方法论的这几年,经过持续迭代,如今已演化出属于自己的“3I.R.A.S”(闪念、索引、洞见、文献、领域、系统)稳定结构。
【读书记1573】费迪曼《一生的读书计划》
#简讯 恭喜 TailScale 拿到了 192.200.0.0/24 和 2606:B740:49::/48 。TailScale 的 API、控制平面从 2025 年 7 月 15 日(UTC+0)起将开始使用来自该 IP 段内的静态 IP。
#简讯 恭喜 TailScale 拿到了 192.200.0.0/24 和 2606:B740:49::/48 。TailScale 的 API、控制平面从 2025 年 7 月 15 日(UTC+0)起将开始使用来自该 IP 段内的静态 IP。
- login.tailscale.com
- controlplane.tailscale.com
写在博客发表文章1000篇的节点
去了烟台
去了烟台,参加一个在鲁东大学召开的研讨会,主题为“县域幼儿教育质量的提升”,演讲嘉宾与听众共400多人。
烟台国际机场在蓬莱,我想起了40年前我每年都会去,因为那里有华东师范大学举办的函数班,我去为的是为山东省培养幼儿教育工作者。过去的事情,哪怕是小事都记得很清楚。
我的演讲题目是“学前有法,面向未来——守正创新,迎接幼教新时代”,守正讲的是幼儿教育为什么,要守住这一根本问题,不可已以有偏差;创新讲的是在AI时代幼儿教育者要做什么,要紧紧跟上时代的步伐。
我是一口气讲完了这个报告的,一个半小时没有松懈,不差一分钟正好在规定的时间内讲完。结束时,我不由自主地说了一句:我有点“佩服我自己了,一点都不耽误会议安排的时间。”
居然会没空调
把世界交到现在这帮莫名其妙的人的手里,真的可以吗?我根本不想管这些东西,以前我也的确没管过,但是随着人生阅历的逐渐丰富,自然而然地会出现各种各样的吐槽。为什么居然可以这样呢?
3楼的办公室和会议室主体的装修已经结束,现在主要在散味道以及再做一些零星的修补。财务科这边有一个档案室,之前我也就只是看档案室的基础东西是否到位,比如地面、窗、窗帘、档案柜,直到周三同事才告诉我,你们这个档案室里面只有排风扇,没有空调。这是在广东东莞办公楼里面的档案室,到底是什么脑洞让他们觉得这个东西里面不需要装空调?!有什么理由不在那里装空调?!3楼用的是中央空调,所以需要做的就是预埋管道,然后做出风口,凭什么其它地方都有做,唯独那个地方不用呢?他们到底是怎么想的?从一开始,图纸就已经明确那里是一个档案室。2楼是最先装修的,有两个档案室,那些档案室有空调。一个正常普通人思路,一个普通办公室,里面怎么会没有空调呢?别的档案室里面有空调,为什么财务科里面就不需要?如果他们觉得是因为面积的原因不需要独立空调出风口,那么可以这么说,其实分隔开来的那些什么科长办公室,副科长办公室面积跟档案室没差多少,按照这个逻辑,只需要在大开间里面设置中央空调出风口就行了,那些分隔开来的独立房间,根本不需要有空调的出风口。
整个工程,从一开始到结束,都有办公室的人在跟进,每天都在跟进,每周都会各种检查。如果一开始图纸就出现了疏忽,那么在后续的施工过程之中,为什么依然没人发现这个问题?现在,装修结束了,那里的确只有排风扇没有空调,但是在广东,夏天没有空调是没办法活的,所以现在可以怎么办呢?要不申请资装一个新的挂式空调,又或者直接从其它地方拆一个挂式空调过去。毕竟多出来的空调还是有的,比如现在4楼我临时办公室里面那个空调,就是从3楼装修前的那个档案室拆下来的,理论上不应该装那个空调,但不知道为什么,装空调的那个人就是搞混了。空调装上去,室内机我发现右侧有个洞,我觉得很奇怪,因为以前我3楼的办公室空调的室内机是左侧开洞的,为什么这个空调右侧有个洞呢?后来我才恍然大悟,之所以右侧有个洞,是因为这个不是我们以前办公室的那个空调。以前档案室的那个空调装的方向刚好跟我们相反,所以是右侧开洞。现在把它装到了4楼,只能左侧也把洞打开,如果往后不买新空调,要把这个旧空调挪到下面去的话,现在档案室可以装空调的那个位置跟旧的那个档案室一样,所以一进门你就会看到空调室内机有个莫名其妙的左侧开洞。
3楼的办公室装修已经是第3轮了,首先是2楼,然后是1楼,接着是3楼,之前从未有过,说某个办公室里面没有预留中央空调出风口,事后要进行这种分体式空调补救。
这种低级弱智的行为,我觉得不应该完全归咎为设计图纸的那个,设计图纸的那个不知道为什么脑子进水了,审图纸的那个居然没发现,监督施工的那些视而不见,最后反倒是看有什么东西需要购置的人告诉我这个简直可以说是天方夜谭的缺陷。
这个乱七八糟的世界,我觉得已经无药可救了。
深入浅出 LEA 指令: x86 汇编中的地址计算神器
什么是 LEA 指令?
在 x86 汇编语言中,LEA
(Load Effective Address)指令用于**计算一个内存地址的值并存入寄存器**,但并不访问该地址对应的内存内容。
它非常适合用来做指针运算、地址偏移等操作。
基本语法
LEA destination, source
- destination:必须是一个寄存器(如
eax
,ebx
等) - source:是一个有效的内存地址表达式,如
[ebx + ecx*4 + 8]
实际示例
lea eax, [ebx + ecx*4 + 8]
假设:
ebx = 1000
ecx = 3
那么上述指令的效果为:
eax = 1000 + 3 * 4 + 8 = 1020
注意:它**不会访问内存地址 1020 的内容**,只是把地址本身算出来放进 eax
。
LEA 的常见用途
-
指针运算
mov esi, [ebp+8] ; 从栈中读取一个指针 lea eax, [esi+4] ; 相当于 pointer + 1(一个 int 是 4 字节)
-
高效的乘法和加法
lea eax, [eax + eax*2] ; eax = eax * 3
-
数组索引
lea eax, [array + edi*4] ; 计算 array[edi] 的地址
LEA 与 MOV 的区别
指令 | 说明 |
---|---|
mov eax, [ebx + 4] |
从内存地址 ebx + 4 中读取值到 eax |
lea eax, [ebx + 4] |
将地址 ebx + 4 的值计算后存入 eax |
C 编译器中生成的 LEA 示例
C 代码如下:
int foo(int* arr, int i) {
return arr[i + 2];
}
使用 GCC 编译并查看汇编输出(gcc -O2 -S foo.c -o foo.s
)可能得到如下(简化后):
foo:
lea eax, [rsi+2]
mov eax, DWORD PTR [rdi+rax*4]
ret
解释:
rdi
保存的是数组arr
的首地址rsi
是传入的索引i
lea eax, [rsi + 2]
把i + 2
算好存入eax
(不访问内存)- 接着通过
[rdi + rax*4]
取数组中的第i + 2
项(每项 4 字节)
64-bit 模式下 LEA 的用法
在 x86-64(即 64-bit 模式)中,LEA 同样强大,并能操作 64 位寄存器(如 rax
, rbx
, rsi
, rdi
等)。
lea rax, [rbx + rcx*8 + 16]
这条指令的作用是:
rax = rbx + rcx * 8 + 16
常用于结构体成员访问、数组遍历、栈帧偏移等场景。
64-bit 示例:结构体成员地址计算
C 代码:
struct Point {
int x;
int y;
};
int* get_y(struct Point* p) {
return &p->y;
}
对应汇编(GCC 生成,优化后):
get_y:
lea rax, [rdi+4]
ret
这里假设 int
为 4 字节,y
紧随 x
,所以 &p->y = p + 4
。因此直接使用 lea
得到地址,而无需访问内存。
总结补充
LEA
是汇编语言中强大的工具之一。它不像名字那样“加载”数据,而是更像是一个“指针运算器”。
无论是做复杂偏移、模拟乘法、还是指针遍历,只要涉及地址计算,你都应该想到 LEA
。
学习汇编语言,理解 LEA
是迈向系统底层编程的关键一步。
- 编译器很喜欢用
LEA
来做常数加法、索引乘法,而不是使用加法或乘法指令 LEA
在 64-bit 模式下可以处理更大的地址空间,更常见于系统级编程- 它提供了一种“零内存访问”的方式,极大提高了性能
汇编语言
英文:Understanding the LEA Instruction: A Powerful Tool for Address Calculation in x86 Assembly
本文一共 610 个汉字, 你数一下对不对.
相关文章:
- 简易教程: C++的智能指针 C++ 智能指针教程 C++ 中的智能指针提供了自动且安全的内存管理。它们通过 RAII(资源获取即初始化)机制,帮助开发者避免内存泄漏和悬空指针的问题,确保对象在生命周期结束时被正确释放。 本教程将介绍 C++ 中三种主要的智能指针: std::unique_ptr:独占式所有权 std::shared_ptr:共享式所有权 std::weak_ptr:非拥有式弱引用 1. std::unique_ptr unique_ptr 拥有独占所有权。一个资源只能被一个...
- 写在教娃编程视频300天 时间过得好快, 第300天了. 其中因为打COVID辉瑞疫苗第2针后反应很大暂停了一周, 还有几天娃不在状态暂更, 其它时间我都会带着娃坚持做这一件事. 回顾第一天: 还记得当时只是上传到我的油管帐号 DoctorLai, 当时还在AMAZON, 第二天例会的时候便和团队分享了, 当时同事还说我能在5分钟内讲清楚递归很厉害, 而且我的方法很特别. 后来就一稿多投到了B站 justyyuk 反而B站更受欢迎一些....
- 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
- Javascript 中 sleep 函数实现 Javascript 中并没有 built-in 的 sleep 函数支持, 在 async/await/Promise 的支持之前, 我们可以用 busy-waiting 的方式来模拟: function sleep( milliseconds...
- 智能手机 HTC One M9 使用测评 虽然我对手机要求不高, 远远没有像追求VPS服务器一样, 但是怎么算来两年内换了四个手机, 先是三星 S4 用了一年多, 然后 Nokia Lumia 635 Windows Phone, 后来又是 BLU, 半年多前换了...
- 《Steem 指南》之 justyy 在线工具与 API 系列 – 同时给多个帐号发送SBD或者STEEM 同时给多个帐号发送SBD或者STEEM STEEMIT 和 BUSY 的前端都有一个内置的钱包工具, 您可以一次给一个帐号发送 SBD 或者 STEEM. 当我们要给很多很多人发送钱的时候, 就显得有些不方便了. 这时候可以用这个在线工具: https://steemyy.com/wallet-tool/ 填写表单 只需要填上你的ID,...
- 快通过 PAYPAL ME 捐点给我吧 PAYPAL在西方国家 很是流行 国内的山寨PAYPAL就是支付宝. PAYPAL 的好处就是 在英国和银行转帐 免费的. 转帐的速度很快. 几乎是几秒就转到了我的HALIFAX银行. PAYPAL和EBAY还真是一伙的 之前在EBAY上卖 需要交 10%的费用 PAYPAL费用 还有EBAY的上架费....
- 借助AI快速开源了三个小工具: 写代码越来越像做产品了, AI 真把我宠坏了(Vibe Coding) 程序员的未来?Vibe Coding + AI 一起上! 借助 AI 快速开源了三个小工具 最近,我利用 ChatGPT-4o 和 o4-mini 快速开发并开源了三个小工具。起因其实很简单——每次想转换 YAML/JSON 或进行...
买借死 Buy Borrow Die: 富人如何合法避税而我们却在交税
今天在群里了解到这个术语:买借死/Buy Borrow Die:富人避税的方法之一。
什么是 买借死 / Buy Borrow Die?
“Buy Borrow Die”(买、借、死)是一种富人广泛使用的税务优化策略,特别在美国尤为常见。通过合法利用资本利得递延、贷款免税、继承成本重置等机制,富人可以终生消费而几乎不缴纳所得税或资本利得税 Captial Gain。
这个策略包括三个步骤:
- Buy(买):购买会升值的资产,如股票、房地产等,不卖出就不触发税收。
- Borrow(借):以资产作为抵押借款,借来的钱不是“收入”,因此不需纳税。
- Die(死):死后将资产传给下一代,享受“成本重置”,升值部分的资本利得税被免除。
继承的时候资产带来的收益就不用交税了,资产本身会升值 通过借钱或者其他方式有现金流。
举个故事:老李的财富魔术
老李30岁那年用100万元买了一块郊区地皮。几十年后升值到了1亿元。下面是他如何操作的:
- 买: 老李从未卖出地皮,升值部分没有触发资本利得税。
- 借: 他用地皮抵押,向银行借出几千万,用于豪车、旅游、投资,全程无需缴税。
- 死: 老李去世后,儿子继承地皮,按当时市值1亿元重置成本,卖出后税务为零。
过程总结表格:
阶段 | 操作 | 避税机制 |
---|---|---|
Buy(买) | 购买资产,不卖出 | 未实现收益无需缴税 |
Borrow(借) | 用资产抵押贷款 | 贷款不算收入,无需纳税 |
Die(死) | 将资产传给后代 | 成本重置,历史升值完全免税 |
为什么这种策略被认为“不公平”?
- 穷人交税,富人不交: 工薪阶层的工资直接扣税,而富人的资产只要不卖就可以避税。
- “死”是避税工具: 利用“step-up basis”(成本重置)机制,升值部分彻底免税。
- 财富差距持续拉大: 富人用借来的钱消费和再投资,穷人则交完税才消费,难以积累。
政策应对建议有哪些?
1. 取消“成本重置”机制
让继承人必须为未实现的升值缴税,而不是通过死亡彻底“洗白”。
2. 最低富人税
对拥有超过一定净资产的人群设立“最低税率”,即使资产未卖出,也按年度计税。
3. 限制抵押贷款避税
对高净值资产抵押贷款用于消费的行为征收额外税或设立门槛。
4. 强化遗产税与执行
堵住通过信托、避税基金、离岸结构等方式逃避遗产税的渠道。
打工人的RSU/股票也能这么操作吗?
这种“抵押借款避税”的操作主要适用于高净值人士,尤其是持有大量可流通股票的人。
普通打工人的资产规模较小,比如手上的 RSU(限制性股票单位),在 vest(归属)之前属于公司承诺,并不真正属于个人,无法抵押。
即便在 vest 之后,这些股票也已经计入个人收入并被扣过税了。而银行通常只愿意给资产丰富、信用极高的客户提供低利率、高额度的资产抵押贷款。
所以,这类玩法主要是针对特别富有、资产高度集中、且有能力持续融资的人群而言。对普通人来说,很难复制。
为什么普通人做不到?
一般人资产不够多,银行不愿意以优惠利率提供高额贷款。
富人可以用低利率借到大量现金,而且能持续用这种方式生活。
对于富人来说,“借钱过一生”+“死亡时传给后代”比卖资产缴税划算得多。
区块链上也有类似的借贷平台 DeFi
虚拟货币区块链金融DeFi也有类似,抵押BTC比特币大饼/ETH以太坊二饼来低利息借出USDT稳定币。
TLDR;
Buy Borrow Die 是富人精心设计的合法避税手段。它利用当前税法的缺陷,在不出售资产的情况下生活奢侈,再通过死亡将所有升值合法“洗白”,将税负彻底转嫁给整个社会。如果我们希望实现税收公平,就必须正视这一机制背后的不平衡,并加以改革。
“Buy Borrow Die”是富人利用税法漏洞延迟或避免缴税的合法策略,但其长期效果是:富人越来越富,穷人交的税越来越重。因此,很多政策改革的目标就是堵住这些漏洞,让税收更加公平。
普通人: 工资收入 → 先交个人所得税 → 才能用来消费
有钱人:抵押资产借钱 → 无需交税 → 钱直接花
交税交到麻木
- 买借死 Buy Borrow Die: 富人如何合法避税而我们却在交税
- 英国税务局HMRC和瑞士收入
- 公司买东西 20% 的VAT税可以拿回来?
- 英国房子的印花税(Stamp Duty Tax)
- 英国工资的税码介绍(史上最全)
- 如何通过申请英国的结婚津贴Marriage Allowance(婚姻免税额)来合理避税?
- Vultr 主机通过 推广返现是不需要交VAT税的
- 交了TV License(电视授权税) 用于看BBC电视节目
- 英国的房屋税 Council Tax 是啥?
- 英国每年自我申报税的过程 (Self Assessment)
- 英国政府说我有三年的工作空档期可以选择补税(Payable Gaps, HMRC)
- 今年报税欠英国税务局HMRC大几千英镑: 1月31日前要缴清

相关文章:
- 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
- 智能手机 HTC One M9 使用测评 虽然我对手机要求不高, 远远没有像追求VPS服务器一样, 但是怎么算来两年内换了四个手机, 先是三星 S4 用了一年多, 然后 Nokia Lumia 635 Windows Phone, 后来又是 BLU, 半年多前换了...
- 同一台服务器上多个WORDPRESS站点的一些设置可以移出去 我自从把所有网站都挪到一处VPS服务器上 就发现很多事情省事很多 可以同时管理多个网站 包括 WORDPRESS博客. 比如我有四个WORDPRESS博客 然后我就把通用的一些资料给移出去 移到 HTTP或者HTTPS都不能直接访问的文件夹里这样就更安全许多. 文件 wp-conn.php 存储了 相同的数据库资料. /** MySQL...
- 英国房子的EPC节能报告(Energe/Efficiency Performance Certificate) EPC (Energe/Efficiency Performance Certificate) 是英国房子的节能报告, 法律上规定, 每个房子都必须要有一个EPC报告, 报告的有效期为十年. 房东在把房子出租或者想卖房的时候, 这个EPC就必须有效, 在一些情况下 比如出租房子的时候, 这个EPC报告还必须符合一些最低标准, 比如房子必须满足 F档(类似及格线)...
- 在英国请专门装修公司铺地板 买新家 之前楼上是铺地毯的 地毯不好清洁 所以有点脏. 在交换合同/购买完成之后就到中介拿到了钥匙. 后来和老婆商量要把地毯换成木板 或者防水的材料 (有很多种材料 我们也不是太懂) 网上黄页找了一家装修公司, 离这里挺近, 于是就打了电话, 约了个时间过来看房子估个价. 当时估价就根据你的需要, 选材料选颜色...
- 比特币最近波动有点大: 一天牛市一天熊 比特币10万美金以内都是最后上车的机会! 比特币近期的价格波动可以归因于多个关键因素,包括地缘政治动态、监管变化以及加密行业内的重大安全事件。其中一个主要影响因素是美国前总统唐纳德·特朗普对乌克兰和加密货币监管的立场变化。据报道,特朗普再次当选,他可能会推动减少美国对乌克兰的支持,这可能会影响全球金融市场和风险偏好。同时,特朗普正在将自己塑造为亲加密货币的候选人,表示有意让美国成为一个更加友好的加密货币环境。这一立场引发了市场对监管政策可能发生变化的猜测,导致市场情绪在乐观和不确定性之间波动。 特朗普对俄乌战争的态度 美国第43届总统唐纳德·特朗普已经在2025年1月当选并正式上任(第二次),那么他的政策可能会对比特币价格的波动产生更加直接和显著的影响。他政府对乌克兰和加密货币监管的立场已经不再是猜测,而是正在实际塑造市场的关键力量。 特朗普(Donald Trump)减少美国对乌克兰的支持,全球投资者可能会预期地缘政治稳定性发生变化,从而增加对比特币作为避险资产的需求。同时,他的亲加密货币立场可能正在推动市场的乐观情绪。如果他的政府推出有利于加密行业的监管政策,例如明确的合规指南或减少监管审查,可能会吸引更多机构投资者进入市场,并促进更广泛的加密货币采用。然而,政策的快速变化也可能导致短期市场剧烈波动,因为市场需要时间来消化新的政策动向。 朝鲜黑客盗取Bybit交易所15亿美元的ETH 另一个显著影响比特币价格的事件是近期涉及朝鲜黑客组织“Lazarus”的15亿美元以太坊被盗案件。据报道,Bybit交易所(全球第二)这些被盗的ETH已经被清洗,此次大规模黑客攻击引发了人们对加密行业安全性的担忧。此类安全事件不仅会削弱投资者信心,还可能引发更严格的监管审查,导致短期市场动荡。此外,被盗资金的大规模流动和出售可能对市场流动性造成冲击,进一步加大价格波动。随着这些事件的持续发酵,比特币价格正受到政治决策、监管预期以及安全挑战等多重因素的影响。 与此同时,与朝鲜黑客组织 Lazarus 相关的 15 亿美元以太坊被盗事件仍在影响加密市场。由于这些被盗 ETH 已被清洗,人们对加密行业安全漏洞的担忧持续存在,同时也可能引发更严格的监管审查。政治、监管和安全等多重因素交织在一起,共同导致了比特币近期的剧烈价格波动。...
- 老婆的配偶签证被拒 郁闷死了, 601镑签证费打水漂,一去不回!费钱费力. 去年12月份我请了律师拿到了永居.老婆是T1G签证的陪工签 (DEPENDENT VISA) 2016年4月份到期. 然后我就想说得趁早把她的签证转成配偶签(SPOUSE)这样她就可以尽快走五年永居的路线. 今天收到拒签信,原因是我没有提供 有工资进帐的那份银行帐单,我提供了我和我老婆的联名帐户, 但是工资并不是直接打到这个帐单上的.所以就这一点被拒了.完全不给解释,不给补材料的机会.601镑就这样再见了. 英国的签证寄出之后是先由另一个部门先收费, 收完费才正式审理,而且不管结果如何是不退钱的.后悔没让律师弄,也不至于到现在浪费这么多时间和金钱,签证还没过.由于原签证还没到期,所以还不能上述.估计只能等搬完家后年底请律师搞定这事. 真是郁闷, 600镑, 我可以再买一个IPHONE6,或者给我的新买的车换四个轮胎....
- 公司给配了台高配DELL笔记本 早上例会结束的时候我顺便说了一句 我的笔记本有点慢, 当时我并不知道我的经理远程用电话也参加会议了(他全程在听), senior staff SE 对着电话说, “peter, you hear that? btw, my disks are...
我将充电量一直限额在90%,现在循环了229次,还有99%的健康度。
我将充电量一直限额在90%,现在循环了229次,还有99%的健康度。
拍荷花
这不最近刚刚买了个长焦镜头嘛,一直没空拍片,周末没事就决定去公园拍拍荷花。正好被我赶巧了,原来给小朋友捞鱼的地方,长满了荷花,有普通的大荷花,也有睡莲,都很好看。
因为天气很热,又是10点多才到,光线很强,很多照片感觉都过饱了,只好拼命的减高光,大家伙就凑合看吧。
自己拍的片,虽然可能不太好,发出来也不一张都舍不得删,索性就都发出了了。
以下是睡莲。
我最喜欢的是粉色的睡莲,感觉相机拍不出它的美丽。
而公园里面就能看到远处起落的飞机,于是开始找在荷花田里尝试拍飞机,但是拍了很多都不太好,以下两张还不错,但是对焦不太对,欢迎点评。
朋友们可以根据这两张图,猜猜这是哪个公园。
台风天,很热,但是天很蓝,在公园里面随便拍一张也好看。
因为来的晚,照片有过曝,拍荷花还是早上趁早来,如果有点露水在荷叶上,相比会更好。另外长焦就是好,之前有50mm焦距,完全不能拍到单独一朵的荷花,这次荷花离岸边很近,再加上200mm的长焦,拍花蕊也完全不是问题。
下午再次带着小朋友来公园玩耍,睡莲已经开始睡了,上午过来拍照真是个不错的决定。
本文图片拼接使用了运维咖啡吧作者37丫37开发的免费在线拼图工具,免费无广告,也比较好用,推荐一下。
看完评论一下吧
感慨: 时间过得真快啊
有娃以后时间过得飞快,
前几年还觉得孩子不怎么花钱,其实只是“初级烧钱版”;
现在好了,正式进入“高阶花钱+情绪消耗双重打击模式”,
感觉钱包和精力都在同步清空。
娃在谢菲尔得出生,现在已经十几年了,一晃就过去了。

相关文章:
- 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
- 智能手机 HTC One M9 使用测评 虽然我对手机要求不高, 远远没有像追求VPS服务器一样, 但是怎么算来两年内换了四个手机, 先是三星 S4 用了一年多, 然后 Nokia Lumia 635 Windows Phone, 后来又是 BLU, 半年多前换了...
- 在英国给孩子换学校的经历: 孩子离开了村里的小学 由于搬了家, 孩子上学得提前半小时出门了, 因为早上堵, 也得开车半小时才能到. 之前在 Fen Drayton 村庄上小学, 早上8:45学校门开, 9点敲钟孩子排队依次进入教室, 我们由于在村里, 只需要提前5分钟出门和孩子一起走路就可以了. 现在一下子早上变得很匆忙, 得叫孩子起床, 做早饭,...
- 同一台服务器上多个WORDPRESS站点的一些设置可以移出去 我自从把所有网站都挪到一处VPS服务器上 就发现很多事情省事很多 可以同时管理多个网站 包括 WORDPRESS博客. 比如我有四个WORDPRESS博客 然后我就把通用的一些资料给移出去 移到 HTTP或者HTTPS都不能直接访问的文件夹里这样就更安全许多. 文件 wp-conn.php 存储了 相同的数据库资料. /** MySQL...
- 英国房子的EPC节能报告(Energe/Efficiency Performance Certificate) EPC (Energe/Efficiency Performance Certificate) 是英国房子的节能报告, 法律上规定, 每个房子都必须要有一个EPC报告, 报告的有效期为十年. 房东在把房子出租或者想卖房的时候, 这个EPC就必须有效, 在一些情况下 比如出租房子的时候, 这个EPC报告还必须符合一些最低标准, 比如房子必须满足 F档(类似及格线)...
- 比特币最近波动有点大: 一天牛市一天熊 比特币10万美金以内都是最后上车的机会! 比特币近期的价格波动可以归因于多个关键因素,包括地缘政治动态、监管变化以及加密行业内的重大安全事件。其中一个主要影响因素是美国前总统唐纳德·特朗普对乌克兰和加密货币监管的立场变化。据报道,特朗普再次当选,他可能会推动减少美国对乌克兰的支持,这可能会影响全球金融市场和风险偏好。同时,特朗普正在将自己塑造为亲加密货币的候选人,表示有意让美国成为一个更加友好的加密货币环境。这一立场引发了市场对监管政策可能发生变化的猜测,导致市场情绪在乐观和不确定性之间波动。 特朗普对俄乌战争的态度 美国第43届总统唐纳德·特朗普已经在2025年1月当选并正式上任(第二次),那么他的政策可能会对比特币价格的波动产生更加直接和显著的影响。他政府对乌克兰和加密货币监管的立场已经不再是猜测,而是正在实际塑造市场的关键力量。 特朗普(Donald Trump)减少美国对乌克兰的支持,全球投资者可能会预期地缘政治稳定性发生变化,从而增加对比特币作为避险资产的需求。同时,他的亲加密货币立场可能正在推动市场的乐观情绪。如果他的政府推出有利于加密行业的监管政策,例如明确的合规指南或减少监管审查,可能会吸引更多机构投资者进入市场,并促进更广泛的加密货币采用。然而,政策的快速变化也可能导致短期市场剧烈波动,因为市场需要时间来消化新的政策动向。 朝鲜黑客盗取Bybit交易所15亿美元的ETH 另一个显著影响比特币价格的事件是近期涉及朝鲜黑客组织“Lazarus”的15亿美元以太坊被盗案件。据报道,Bybit交易所(全球第二)这些被盗的ETH已经被清洗,此次大规模黑客攻击引发了人们对加密行业安全性的担忧。此类安全事件不仅会削弱投资者信心,还可能引发更严格的监管审查,导致短期市场动荡。此外,被盗资金的大规模流动和出售可能对市场流动性造成冲击,进一步加大价格波动。随着这些事件的持续发酵,比特币价格正受到政治决策、监管预期以及安全挑战等多重因素的影响。 与此同时,与朝鲜黑客组织 Lazarus 相关的 15 亿美元以太坊被盗事件仍在影响加密市场。由于这些被盗 ETH 已被清洗,人们对加密行业安全漏洞的担忧持续存在,同时也可能引发更严格的监管审查。政治、监管和安全等多重因素交织在一起,共同导致了比特币近期的剧烈价格波动。...
- 公司请的专业摄影师 公司来了新的CEO管理之后,很多事情都不一样了, 特别是一些公司对外形象的事情就特别的在意, 比如公司网站用上SSL.现在公司还有空闲的位置,请速来(钱多人不傻). 一月份出差回LUTON,刚好公司请来摄影师给高层管理照像放网站上的,于是我也凑了凑热闹(但是却还不够资格被放在公司网站上),不过没关系,放这里也差不多. 人到中年, 沧桑感强了些. 更新更新: 同事用他NB的单反给谢菲尔得办公室的人也拍了一组这样的照片.看起来很不错, 很专业,灯光,道具应有尽有.我已经用在了LINKEDIN页面上,立马高大上. 本文一共 230 个汉字, 你数一下对不对. 公司请的专业摄影师. (AMP...
- 面向猫猫编程 Cat Oriented Programming (Chessly/Pyro这一生持续更新) 家里有两只猫 Chessly/Pyro,想着找个地方记录它们的生活,最后决定还是写在这里的博客。猫的一生很短,差不多也就二十年。 Chessly(黑白猫)是我加入微软剑桥研究院MSRC第一个月带回家的,过了两三个月,又把Pyro(橘猫)也接回了家。两只猫的名字是孩子们取的:Chessly因为黑白的像棋盘,加上“ly”听起来像个女孩的名字;而Pyro的意思是一团火(烟火),充满活力。 刚开始的时候,Chessly特别喜欢待在我的工作区域。她有时候趴在键盘上或旁边,有时候藏在显示器后面。偶尔还会绕到我身边“咕咕”地撒娇,等着我去摸她。有时更干脆跑到我腿上,舒舒服服地躺着。 不过,现在它们俩的体型都大了很多,躺在桌上就会挡住屏幕,真是“面向猫猫编程”(Cat Oriented Programming)的极致体验。 记录生活的点滴,也是一种珍惜,毕竟这二十年,我们会一起走过。 2024年 2025年 Ring视频:两猫日常就是打闹,Chessly追上Pyro想舔他,在猫的世界里,地位高的才能舔地位低的。 我家猫现在越来越胖,很喜欢在我工作的时候躺在显示器钱,很影响我的工作,不过这时候我就是会休息一下摸摸她,就当放松一下了。 Pyro在窗边喝水,这是个小的煮饭锅,现在不用了,就给猫当喝水的碗。Pyro很胆小,经常看到我就跑。没法跑就咕咕叫。 Chessly很喜欢陪我工作,然后她很好厅的盯着屏幕上的鼠标光标,真怕她把屏幕抓坏了。 哥哥弹琴,弟弟唱歌,Chessly午睡,真是幸福啊,下辈子做只猫吧。...
Linux crosses magic market share threshold in US
Windows is still dominant at 63%, and Apple sit at 26%. But for the latter, it's quite a drop from their peak of 33% in June 2023.
As a Dane, though, I find it sad that Denmark is once again a laggard when it comes to adoption. Windows is even more dominant there at almost 70% (with Apple at 15%). Linux is just under 2%. Interestingly, though, ChromeOS, which is basically a locked-down Linux distribution, is at almost 5%.
There are early indications that a willingness to change this laggard mentality might be sprouting, but we've yet to see any evidence that a shift has actually taken hold yet. It's hard to change culture!
日主题安装扩展
主题授权扩展安装向导
RiPRo-V5需要Swoole Compiler加密扩展支持)
如果您环境是虚拟主机不支持自定义安装php扩展。
请去FTP或者文件管理删除 \wp-content\themes\ripro-v5\ 主题目录即可恢复网站。
环境信息
操作系统 : Linux ser459509827576 6.1.0-10-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.37-1 (2023-07-03) x86_64
PHP版本 : 8.0.26
PHP运行环境 : fpm-fcgi
PHP配置文件 : /www/server/php/80/etc/php.ini
PHP扩展安装目录 : /www/server/php/80/lib/php/extensions/no-debug-non-zts-20200930
PHP是否线程安全 : 非线程安全
是否安装swoole_loader : 未安装
安装和配置Swoole Loader 扩展
1 - 点击下载 unix PHP8.0 Swoole Loader扩展文件
2 - 安装Swoole Loader
将刚才下载的Swoole Loader扩展文件(swoole_loader_80_nts.so)上传到当前PHP的扩展安装目录中:/www/server/php/80/lib/php/extensions/no-debug-non-zts-20200930
3 - 修改php.ini配置(如已修改配置,请忽略此步骤,不必重复添加)
编辑此PHP配置文件:/www/server/php/80/etc/php.ini
在此文件底部结尾处加入如下配置并且保存 :extension=swoole_loader_80_nts.so
注意:需要名称和刚才上传到当前PHP的扩展安装目录中的文件名一致
最后 - 重启PHP或者重启服务器,刷新当前页面即可
智云宝塔安装要求
debian系统