MCP 还是 CLI:AI Agent 到底怎么跟已有服务打通

Posted on 五 17 7月 2026 in AI • Tagged with journal, AI, MCP, agent, python

想让 AI Agent 调用你已有的服务,眼下有两条主流路子:包成 MCP Server,或者包成一个 CLI 让 Agent 去 shell 里跑。这篇用 Python 和 MySQL 官方示例库 Sakila(查客户租片记录)做例子,把两者的技术细节、协议差异、部署形态、鉴权与安全边界摊开对比,最后给一张选型对照表和一份落地清单。


Continue reading

调光旋钮为什么输给了单向门:Sigmoid 是怎样被 ReLU 取代的

Posted on 四 16 7月 2026 in Tech • Tagged with AI, sigmoid, relu, activation-function, neural-network, gradient-vanishing

Sigmoid 曾是神经网络最经典的激活函数,如今深层网络的隐藏层却几乎都换成了 ReLU。本文用调光旋钮和单向门的类比,从“为什么需要激活函数”一路讲到导数、梯度消失,最后说清 ReLU 凭什么把它挤下主力位置——数学基础一般也能跟到底。


Continue reading

怎么给自己搭一个第二大脑

Posted on 三 15 7月 2026 in Tech • Tagged with AI, second-brain, RAG, research, knowledge-management, productivity, methodology

第二大脑不是网盘,也不是某个 App,而是一套"采集、提炼、连接、核对、内化、复用"的能力回路。本文讲怎么用你已有的工具——ChatGPT/Claude、本地 RAG、命令行脚本、Jupyter、笔记软件和自建 Wiki——把这套回路亲手搭起来,并接上"问、猜、跑、看、讲、测"六字诀。NotebookLM 只是众多参照物之一。


Continue reading

别只让 AI 替你写代码:用Vibe Learning来激活你的大脑

Posted on 二 14 7月 2026 in Tech • Tagged with AI, learning, Jupyter, LLM, cognitive-science, algorithm

AI 最有意义的用途,不是替人更快地交作业,而是缩短“提问、猜想、实验、观察、解释、测试”的学习闭环。本文从认知心理学出发,用 Jupyter Notebook + LLM 演示如何把公式、算法和数据结构从纸面符号变成可以操纵、观察和验证的对象。


Continue reading

风起于青萍之末(下):从 XOR 到神经网络与 LLM

Posted on 二 14 7月 2026 in Tech • Tagged with AI, perceptron, neural-network, deep-learning, backpropagation, transformer, LLM

单个感知机只能画一条直线,连四条数据构成的 XOR 都解决不了。可正是这次失败,把人们引向隐藏层、非线性激活和反向传播。本文从 XOR 出发,讲清多层网络为什么能够学习新表示,再沿着这条思想谱系走到 Transformer 与 LLM。


Continue reading

风起于青萍之末(上):感知机如何学会画一条线

Posted on 二 14 7月 2026 in Tech • Tagged with AI, perceptron, machine-learning, activation-function, linear-classifier

今天的 LLM 动辄数十亿参数,其思想源头之一却是十几行代码就能实现的感知机。本文用垃圾邮件打分、门卫和画线的类比,讲清输入、权重、偏置、激活函数、学习规则与收敛边界,并给出一个可运行的 NumPy 最简实现。


Continue reading

详解 AEAD 与 AES-GCM:不只加密,还要防篡改

Posted on 一 13 7月 2026 in Tech • Tagged with security, cryptography, aead, aes-gcm

加密只能隐藏内容,不能证明数据与业务上下文没有被调包。本文用加密信封的类比讲清 AEAD、AAD、nonce、CTR 与 GHASH,并给出可运行的 Python 示例和上线检查清单。


Continue reading

服务治理是工程问题,不是纪律问题

Posted on 五 10 7月 2026 in Tech • Tagged with journal, SRE, reliability, service-governance

2017 年 AWS 一个工程师敲错一条命令,让小半个互联网黑屏四小时;Knight Capital 一次没同步好的部署,45 分钟烧掉 4.4 亿美元。服务治理的本质是工程问题:能自动化的规则、约束、检查、测试,就别指望人半夜手动去跑。清单革命固然好,但清单要人看、人执行,而人从来不是百分百可靠的。这篇聊聊业界的标准、最佳实践、成功案例和典型事故。


Continue reading

人不可有傲气,但不可无傲骨

Posted on 五 10 7月 2026 in Journal • Tagged with journal, career, life

傲气是看不起人,傲骨是看得起自己。顺势而为没错,但守住的原则和气节不能拿去换。这篇聊聊:为什么当你觉得"非我莫属"、别人偏不给你时,那多半不是你的问题,以及一个普通人怎么把傲骨落到实处。


Continue reading

struct 到底实现了哪些接口?让 Go 的隐式接口更友好一点

Posted on 五 10 7月 2026 in Tech • Tagged with Go, interface, gopls, golangci-lint, uml, plantuml, mermaid, best-practice, backend

Go 的隐式接口(duck typing)写起来很爽,但代价是"看不见"——一个 struct 到底实现了哪些接口,光看代码根本一眼看不出来。这篇不改语言、不等官方,从编译期断言、gopls 双向跳转、golangci-lint、go generate 到自己写工具生成 UML 类图(附开源项目 gouml),一层层把可发现性补回来,附可跑的例子和一份可落地清单。


Continue reading

选择困难症怎么解

Posted on 四 09 7月 2026 in Journal • Tagged with journal, decision, methodology

人生一个个十字路口,我常常徘徊彷徨、踟蹰不前,想不清楚也做不了决定。后来慢慢琢磨出两条:先弄明白自己到底想要什么,再审时度势、顺势而为。上赶着不是买卖,勉强来的东西留不住。


Continue reading

Channel 还是锁?聊聊 Go 里那些好用的并发模式

Posted on 二 07 7月 2026 in Tech • Tagged with Go, concurrency, channel, mutex, goroutine, pattern, backend

做后端的,跟高并发、大流量打交道是家常便饭。分而治之是基本思想,多进程、多线程、多路复用、异步是基本手段。到了 Go 这里,最常被问的一个问题是:面对资源竞争,到底该用 Channel 还是互斥锁?这篇给一个能记住的判断口诀,再把 Go 里几种真正好用的并发模式一个个拆开讲——附可跑的代码和一张选型清单。


Continue reading

关于密码学,我们到底该知道些什么

Posted on 二 07 7月 2026 in Journal • Tagged with journal, cryptography, security, learning note

做了这么多年后端和 WebRTC,绕不开密码学,可真要系统学起来又觉得无从下手。这篇按"该知道什么、从哪入手、哪些值得深挖、哪些书值得反复读"四条线,给一个不吓人也不糊弄的密码学学习地图。


Continue reading

脑裂:脑子裂成两半,谁也不认谁

Posted on 一 06 7月 2026 in Tech • Tagged with distributed systems, split-brain, network partition, consensus, quorum, raft, high availability

分区(partition)是网络把集群切成了几块,谁也看不见谁;脑裂(split-brain)是切开之后,每一块都以为"就剩我了,我来当家"。于是两个主节点同时写数据,等网络恢复,数据对不上,谁都不认谁。这篇讲清楚脑裂的根因(网络分区 + 各自选主),以及业界公认的解法:多数派仲裁(quorum)、fencing、见证节点,配一份可抄的排查与设计清单。


Continue reading

一个字符串引发的血案:从 C 到 Go 的 rune,字符串是怎么一步步进化的

Posted on 一 06 7月 2026 in Tech • Tagged with string, unicode, c, cpp, java, python, go, rune, encoding

字符串看着最简单,坑却最深。从 C 的一根 char 指针,到 C++ 的 std::string,到 Java/Python 的对象化,再到 Go 的 rune,这一路演进本质上就在解决三个问题:谁管内存、长度怎么算、一个"字"到底是什么。这篇按时间线把它们串起来,讲清楚每一步为什么这么设计、又留下了什么坑。


Continue reading

限流这件事,从来不是"每秒放几个"这么简单

Posted on 一 06 7月 2026 in Tech • Tagged with microservices, rate limiting, backend, stability, architecture

很多人以为限流就是"每秒放 100 个请求",配个数字完事。真上了规模才发现,限流是分层的、分策略的、还得跟业务谈判的。这篇把限流拆成"在哪一层限、按什么维度限、用什么算法、放行还是拒绝、拒了怎么告诉客户端"几件事,配上可抄的配置和一张决策清单。


Continue reading

Streamlit 深入浅出:用写脚本的方式做数据应用

Posted on 日 05 7月 2026 in Tech • Tagged with journal, python, streamlit, data-app

Streamlit 让你用写 Python 脚本的方式,几十行就做出一个能交互的数据应用——不碰 HTML/CSS/JS,不起前端工程。这篇讲清楚它背后"脚本从上到下重跑一遍"的设计理念,常用控件与状态管理,一个能跑的完整实例,以及我踩过坑之后总结的最佳实践。


Continue reading

给你的服务养一个"数字替身":AI 时代为什么要写 Sample App

Posted on 日 05 7月 2026 in Tech • Tagged with journal, testing, architecture, WebRTC

做后端和 SDK 这些年,我越来越依赖一个东西:给每个服务配一个能把主流程完整跑一遍的 Sample App——Web Service 就配个 Test Web App,音视频应用就配个 Native App。它既是 E2E 测试工具,又是一个"永远在线的模拟用户",还是最诚实的一份活文档。AI 能帮你把它写得飞快,但要不要养、往哪个方向养,得你自己拿主意。


Continue reading

用穷举法吃透问题:把碎片经验炼成体系能力

Posted on 六 04 7月 2026 in Journal • Tagged with journal, methodology, learning, problem-solving, career

有的人解决问题像打地鼠,这个坑填上,下个坑又冒出来。真正拉开差距的,不是记住多少答案,而是能不能把一类问题的成因、解法和取舍一次性想透。这篇聊聊我这些年反复用的一套笨办法:分类、穷尽、对比、取舍。


Continue reading

拖延症又犯了,怎么办

Posted on 六 04 7月 2026 in Journal • Tagged with journal, procrastination, methodology

明知该做,就是不想动,眼看 deadline 变成头上的达摩克利斯之剑,心理负担越来越重,却越拖越凶。研究过无数克服拖延的方法,也天天告诫自己知行合一,可"臣妾就是做不到"。这篇不劝你自律,而是想聊聊:为什么方法没用,以及怎么把"启动成本"降到你抬手就能做的地步。


Continue reading