<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Chaos Tong</title><description>把复杂的事，写清楚。</description><link>https://chaostong.com/</link><language>zh_CN</language><item><title>从一个空文件夹开始</title><link>https://chaostong.com/posts/first-note/</link><guid isPermaLink="true">https://chaostong.com/posts/first-note/</guid><description>这个博客的第一篇记录：为什么要写，以及接下来想在这里留下什么。</description><pubDate>Mon, 07 Sep 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;博客从一个空文件夹开始，也从一个足够具体的问题开始。&lt;/p&gt;
&lt;p&gt;这里会记录我在产品、技术和日常生活里的观察。希望每一篇都能留下某个清晰的判断，而不只是把信息搬到另一个地方。&lt;/p&gt;
&lt;h2&gt;先把第一步走出去&lt;/h2&gt;
&lt;p&gt;写作不必等到准备完美。先把问题写下来，再在一次次修改里靠近答案，这就是这个空间存在的理由。&lt;/p&gt;
</content:encoded></item><item><title>Guitar Practice</title><link>https://chaostong.com/posts/guitar-practice/</link><guid isPermaLink="true">https://chaostong.com/posts/guitar-practice/</guid><description>JustinGuitar Module 2 练习清单与每日例程。</description><pubDate>Mon, 07 Sep 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;来源：&lt;a href=&quot;https://www.justinguitar.com/modules/module-2-the-e-gunn&quot;&gt;Module 2 — Rhythm &amp;amp; Chord Changes + Your First Riff!&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;本周重点：Module 2&lt;/h2&gt;
&lt;p&gt;学会 E 和弦、更快换和弦、基础扫弦节奏，以及第一个 riff（Peter Gunn）。&lt;/p&gt;
&lt;h3&gt;和弦图（A / D / E）&lt;/h3&gt;
&lt;p&gt;图来自 &lt;a href=&quot;https://www.justinguitar.com/classes/beginner-guitar-course-grade-one&quot;&gt;JustinGuitar Grade 1&lt;/a&gt; / Chord Library（数字 = 手指；O = 空弦；X = 不扫）。&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;A&lt;/th&gt;
&lt;th&gt;D&lt;/th&gt;
&lt;th&gt;E&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img src=&quot;./a-chord-box.gif&quot; alt=&quot;A chord&quot; /&gt;&lt;/td&gt;
&lt;td&gt;&lt;img src=&quot;./d-chord-box.gif&quot; alt=&quot;D chord&quot; /&gt;&lt;/td&gt;
&lt;td&gt;&lt;img src=&quot;./e-chord-box.gif&quot; alt=&quot;E chord&quot; /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;A&lt;/strong&gt;：Justin 教的 2–1–3（不是传统 1–2–3 一排）；不扫最粗弦&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;D&lt;/strong&gt;：只扫最细四弦&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;E&lt;/strong&gt;：六弦全扫&lt;/li&gt;
&lt;li&gt;锚指：A↔D 常共用 &lt;strong&gt;1 指（G 弦 2 品）&lt;/strong&gt;，换和弦尽量别抬&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;需要练的内容&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;E 和弦&lt;/strong&gt; — Chord Perfect：按准、每个音都干净&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;锚指（Anchor Finger）&lt;/strong&gt; — A / D / E 之间用共用手指加速换和弦&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;踩拍（Tapping Your Foot）&lt;/strong&gt; — 练琴时跟着拍子踩脚，稳住节奏感&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;扫弦基础&lt;/strong&gt; — 手腕动作、只打在拍上的简单 pattern&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Chord Changes For One&lt;/strong&gt; — 换和弦时提前到位，下一拍能准时扫下去&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Peter Gunn Theme&lt;/strong&gt; — 只向下拨的 riff；均匀八分音符；尽量别蹭到别的弦&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;歌曲&lt;/strong&gt; — 只用 A、D、E 的曲子（Song work）&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;每日例程（约 20 分钟，建议每周 4 次）&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;时间&lt;/th&gt;
&lt;th&gt;练习&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;先&lt;/td&gt;
&lt;td&gt;调音&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2′&lt;/td&gt;
&lt;td&gt;Chord Perfect — E&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1′&lt;/td&gt;
&lt;td&gt;Chord Perfect — D&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1′&lt;/td&gt;
&lt;td&gt;Chord Perfect — A&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2′&lt;/td&gt;
&lt;td&gt;Anchor Finger（E / A / D）&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1′&lt;/td&gt;
&lt;td&gt;One Minute Changes — A ↔ D&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1′&lt;/td&gt;
&lt;td&gt;One Minute Changes — A ↔ E&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1′&lt;/td&gt;
&lt;td&gt;One Minute Changes — D ↔ E&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1′&lt;/td&gt;
&lt;td&gt;Peter Gunn Theme&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;10′&lt;/td&gt;
&lt;td&gt;歌曲（A / D / E）&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3&gt;可以进入下一 Module 的标准&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;记住 E，以及 A、D&lt;/li&gt;
&lt;li&gt;换这三组和弦时能自然用到锚指&lt;/li&gt;
&lt;li&gt;One Minute Changes 大约能到 &lt;strong&gt;30 次/分钟&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;玩过 Peter Gunn Theme&lt;/li&gt;
&lt;li&gt;至少完整试过一两首只用 A/D/E 的歌&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;练习记录&lt;/h2&gt;
&lt;p&gt;下次练习时，先回顾上一条，再写下一个足够具体的小目标。&lt;/p&gt;
</content:encoded></item><item><title>Astro 内容集合：让 Markdown 变成页面</title><link>https://chaostong.com/posts/astro-content-guide/</link><guid isPermaLink="true">https://chaostong.com/posts/astro-content-guide/</guid><description>用一个小例子理解 Astro 如何读取 Markdown、校验 Front Matter，并生成文章路由。</description><pubDate>Sun, 06 Sep 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;这篇文章本身就是一个示例：它位于 &lt;code&gt;src/content/posts/astro-content-guide.md&lt;/code&gt;，最终会生成到 &lt;code&gt;/posts/astro-content-guide/&lt;/code&gt;。&lt;/p&gt;
&lt;h2&gt;一篇文章的三个部分&lt;/h2&gt;
&lt;p&gt;每篇 Markdown 文件通常包含三部分：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;文件名：决定文章的 slug，例如 &lt;code&gt;astro-content-guide.md&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;Front Matter：开头两个 &lt;code&gt;---&lt;/code&gt; 之间的 YAML 数据，例如标题、日期和标签。&lt;/li&gt;
&lt;li&gt;正文：使用 Markdown 写标题、列表、链接和代码。&lt;/li&gt;
&lt;/ol&gt;
&lt;pre&gt;&lt;code&gt;title: &quot;文章标题&quot;
description: &quot;首页摘要&quot;
published: 2026-09-07
category: &quot;技术&quot;
tags: [&quot;Astro&quot;]
draft: false
&lt;/code&gt;&lt;/pre&gt;
&lt;h2&gt;Astro 在背后做了什么&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;src/content/config.ts&lt;/code&gt; 用 Zod 定义字段规则。首页读取 &lt;code&gt;posts&lt;/code&gt; 集合，文章路由为每篇文章生成静态页面。&lt;/p&gt;
&lt;p&gt;如果 Front Matter 缺少必填字段，构建时会直接报错。这是好事：文章不会悄悄带着错误上线。&lt;/p&gt;
&lt;h2&gt;你可以马上试试&lt;/h2&gt;
&lt;p&gt;复制这篇文章，改文件名和 Front Matter，然后运行 &lt;code&gt;pnpm dev&lt;/code&gt;。保存后刷新首页，就能看到新文章。&lt;/p&gt;
</content:encoded></item><item><title>从 GitHub 推送到 Cloudflare Pages</title><link>https://chaostong.com/posts/cloudflare-pages-guide/</link><guid isPermaLink="true">https://chaostong.com/posts/cloudflare-pages-guide/</guid><description>记录这个博客的发布链路：一次推送，自动完成构建和部署。</description><pubDate>Sat, 05 Sep 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;这个博客使用 Cloudflare Pages 托管，代码放在 GitHub 私有仓库 &lt;code&gt;ChaosTong/MyBlog&lt;/code&gt;。&lt;/p&gt;
&lt;h2&gt;发布链路&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;修改 Markdown
    ↓
git push origin main
    ↓
Cloudflare Pages 执行 pnpm build
    ↓
dist/ 发布到 chaostong.com
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Astro 的构建结果是静态 HTML、CSS 和 JavaScript，输出目录是 &lt;code&gt;dist&lt;/code&gt;。因此博客不需要数据库，也不需要常驻服务器。&lt;/p&gt;
&lt;h2&gt;发布前检查&lt;/h2&gt;
&lt;p&gt;本地可以先运行：&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;pnpm build
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;如果构建成功，再提交并推送：&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;git add .
git commit -m &quot;Add a new post&quot;
git push
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Cloudflare Pages 会自动使用最新的 &lt;code&gt;main&lt;/code&gt; 分支重新部署。&lt;/p&gt;
</content:encoded></item><item><title>给个人博客建立一个轻量写作系统</title><link>https://chaostong.com/posts/writing-system/</link><guid isPermaLink="true">https://chaostong.com/posts/writing-system/</guid><description>不追求一次写完，用固定结构降低开始写作的阻力。</description><pubDate>Thu, 03 Sep 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;个人博客最容易遇到的问题不是没有想法，而是每次开始写都要重新决定从哪里开始。&lt;/p&gt;
&lt;h2&gt;一个简单模板&lt;/h2&gt;
&lt;p&gt;我会先写下三个问题：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;我遇到了什么具体问题？&lt;/li&gt;
&lt;li&gt;我尝试了什么，结果怎样？&lt;/li&gt;
&lt;li&gt;下次遇到类似情况，什么内容值得复用？&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这三个问题足够支撑一篇短文，也能让文章不止停留在情绪或链接收藏。&lt;/p&gt;
&lt;h2&gt;先发布，再迭代&lt;/h2&gt;
&lt;p&gt;文章不需要一开始就完整。Front Matter 里的 &lt;code&gt;draft: true&lt;/code&gt; 可以暂时隐藏文章，准备好后改成 &lt;code&gt;false&lt;/code&gt;，下一次构建就会出现在首页。&lt;/p&gt;
</content:encoded></item></channel></rss>