笔记
博客
关于前端工程、SEO、AI、分析以及真实产品开发的记录。
42 篇文章
我为什么做 gitae.com:一个用于深度检查网站和基础设施的工具
我做 gitae.com,是为了更快回答一个关键问题:网站是真的挂了,还是问题只出在我这边?
为什么我认为在真正交付软件这件事上,TypeScript 是 Codex 最好的语言
如果目标不是演示代码,而是要交付真正可用于生产环境的软件,那么 TypeScript 会给 Codex 带来更清晰的结构、更强的约束和更快的反馈。
Jurfi.com:一个为清晰而做的浏览器法律文档工作室
Jurfi.com 是我新做的浏览器法律文档工作室,目标是把混乱的起草过程变成更清晰、更结构化的工作草稿,同时不假装 AI 可以替代律师。
我的第一笔 SaaS 收入:为什么这 10 美元意义这么大
我第一次因为自己亲手打造的产品收到在线付款,金额只有 10 美元,但它证明了真实用户真的看到了其中的价值。
Codex 如何帮助我同时审查 15 个项目
在 VS Code 里使用 Codex,让我能更快处理多个项目中那些重复性的漏洞、Bug、SEO、翻译、本地化和测试审查工作,但最终判断仍然必须由人来做。
为什么我会把 Codex Plus 最后 3–5% 的额度留给最大的工程任务
一个很小的使用习惯变化,彻底改变了我使用 Codex Plus 的方式:当额度快用完时,我不再拿它做小请求,而是用来启动最重的技术工作。
技术型 SEO 失误是如何让我的网站彻底从 Google 消失的
我的网站不是简单地下滑了排名,而是直接从 Google 中彻底消失,这次经历让我真正意识到技术型 SEO 错误能多快地摧毁搜索信任。
5年过去了,基础版 M1 MacBook 依然是我买过最值的科技产品之一
在高强度日常使用了5年之后,我的基础版 M1 MacBook 依然让我觉得,这是一笔回报极高的长期科技投资。
AI 和 Next.js 如何让我的项目四语言上线比预想中轻松得多
一次小小的内容结构调整,加上 AI 辅助翻译和 Next.js,让四语言上线变得比我想象中更简单,也更容易继续扩展。
我上线了 qrviz:为什么我做了一个没有盈利计划的免费二维码生成器
我上线 qrviz.com,并不是因为这是什么最聪明的商业决策,而是因为持续做出真正有用的产品,依然是最能让我获得动力的事情之一。
我独自做出一款 Character AI 风格聊天机器人后发现:最难的不是写代码,而是让角色真正有生命感
把一款 Character AI 风格聊天机器人上线到 13 种语言之后,我越来越确定,最难的部分不是工程实现,而是打造出真实、温暖且可信的角色。
为什么获取客户比做出一个SaaS更难
对很多开发者来说,写代码并不陌生,但产品上线之后,分发、定位和留存才是真正更难的部分。
我独自一人做出了自己的 Character AI,而上线让它真正变成了产品
独自打造 Character AI 已经很难了,但当支付功能上线后,它就不再只是一个副业项目,而是真正带着责任的产品。
AI 在生成动漫角色时的幻觉问题依然离谱
我在用 ChatGPT 为 rizae.com 生成动漫角色时,越来越明显地感受到:AI 有时非常惊艳,有时却会对肉眼可见的错误表现得异常自信。
Shorts Experiment: Vertical Video, Voiceover, and Subtitles
Early tests confirmed the obvious: vertical video with voice and captions gets meaningfully more reach than static or silent clips.
2026年俄罗斯 IT 就业市场:真实体感到底是什么样
竞争变得异常残酷:求职者更多,薪资停滞甚至下滑,真正值得追的岗位却明显变少了。
当 AI 多画出一只手,还一本正经地说没问题时
图像模型可以错得非常自信,而纠错提示也依然会以一种出人意料的顽固方式失效。
Web 开发、独立项目,以及一个简短的自我介绍
简单介绍一下自己:做了六年 Web 开发,仍然在持续做独立项目,也一直愿意和别人认真聊聊技术。
度假回来,又一头扎进代码里
连续四天专注地做东西,再次提醒了我:在短暂抽离之后,我依然那么喜欢深入的技术工作。
薄荷茶、3,500 次提交,以及一次真正的休息
一篇简短的回顾,写四个月的冲刺、在摩洛哥度过的生日,以及为什么在长时间持续输出之后,真正的休息同样重要。
我是如何用 DeepSeek 和 Node.js 更快做出一个 AI SaaS 的
DeepSeek 如何帮我跨过 MVP 这道坎,把一个空仓库推进成真正可用的平台。
我的 Threads 爆款帖子,竟然因为一条友好评论被删了
这再次提醒我:建立在别人平台上的一切都很脆弱。一个全新的开发者账号刚开始起势,转眼就被封了。
Posting My First TikTok at 28
I tested short-form video by reviving an old MMORPG project and turning it into a small traffic experiment.
A YouTube Comment Brought My Old MMORPG Back to Life
One unexpected comment pushed me to reopen a forgotten game, fix it up, and fold it into a newer AI product.
我是怎么在 15 分钟内被 Reddit 永久封禁的
我已经尽量用最慢、最谨慎的方式加入 Reddit 了,结果还是几乎立刻被永久封禁。
老域名自带历史包袱
一个有 25 年历史的域名,把旧机器人流量、浪费的抓取资源和一场只有靠定向 410 响应才清干净的 SEO 问题一起带了过来。
为什么我的网站几乎拿不到来自俄罗斯的流量
问题不在需求,而在于 Cloudflare、俄罗斯的封锁,以及最终恢复访问的那次迁移。
为什么静态站点特别能扛住机器人的噪音
我的日志里全是扫描器和漏洞探测请求,但整套技术栈几乎毫无感觉。这就是静态交付的优势。
新项目里的 Yandex 与 Google
Yandex 已经开始带来真实流量,而 Google 几乎没有反应。这种反差很能说明,两家搜索引擎对新网站的态度有多不一样。
Yandex 一夜之间收录了 4,000 多个页面
这是一个很有价值的程序化 SEO 里程碑:数千个静态页面一次性进入了索引。
一个月的 SEO 实验:632 位访客和一堆问题
一个月的实战 SEO 工作带来了真实流量、一些意外,也让我更清楚到底什么因素才真正有用。
从前端工作到实战 SEO
为了学习 SEO,我做了一个 Next.js side project,结果最后 Yandex 的表现竟然远远超过了 Google。
为什么我选择 Yandex Metrica,而不是 Google Analytics
经过一周的实际使用,Yandex Metrica 给了我更清晰的行为数据,也让我更容易看清用户是如何在网站中移动的。
308 重定向如何帮我控制住 sitemap 的混乱
Yandex 误读了成千上万个 URL,而我提前配好的 308 重定向,成功把爬虫从错误路径上引开了。
Google 上线初期的流量暴涨并不是真正的增长
网站刚上线时出现一波大涨,确实会让人兴奋,但这种势头往往很快就会消失。所以,新网站不应该太相信这段“蜜月期”。
Yandex 一夜之间掉了 2,000 个页面
这再次提醒我,SEO 的波动本来就是常态,即使一个项目看起来还在稳步增长。
我在 Moscow JS 66 赢得了两份奖品
一个关于 Telegram 机器人、TypeScript 和 AI 的技术之夜,以及那些让我带走两份奖品的问题。
PiterJS 现场笔记
在圣彼得堡的 PiterJS 上,最让我印象深刻的是 FrontOps、性能,以及带着充分准备去参会的价值。
My Multilingual Next.js Blog Reached 500 Impressions in One Week
After just one week, the early search data was already showing why multilingual SEO can compound faster than launching in a single language.
18 Months, 30 Players, and Why the Game Still Mattered
My browser MMORPG never found a big audience, but the small group of players who stayed made the whole project feel meaningful.
MoscowJS 65 参会笔记
简要回顾在 T Bank 举办的 MoscowJS 65、几场令人印象深刻的分享,以及为什么本地 JavaScript 线下聚会依然重要。
新网站,新方向
我上线了一个全新的作品集网站,把过去六年的经验,以及接下来一波以 AI 为核心的副项目方向,集中放在了这里。