一篇技术笔记不需要很长,但应该让之后的自己能够看懂:研究什么、做了什么、怎样复现,以及哪些结论还没有得到验证。
这篇文章同时是本博客的 Markdown 写作示例。下面的物理模型是教学示例,不是实验数据或个人科研成果。
先写清楚问题
以一维谐振子为例,我们想观察位置随时间的变化。先写下假设:忽略阻尼,质量和弹簧系数固定,初始速度为零。
$$ m\frac{d^2x}{dt^2}+kx=0,\qquad x(t)=A\cos(\omega t),\quad \omega=\sqrt{\frac{k}{m}}. $$公式提供模型,代码提供一条可检查的计算路径。
留下最小代码
from math import cos, sqrt
mass = 1.0
spring = 4.0
amplitude = 0.1
omega = sqrt(spring / mass)
for t in (0.0, 0.5, 1.0):
position = amplitude * cos(omega * t)
print(f"t={t:.1f} s, x={position:.6f} m")
记录单位比堆积代码更有价值。若以后增加阻尼,应明确改变了哪个假设,并保留原来的测试条件。
| 符号 | 含义 | 示例值 |
|---|---|---|
| m | 质量 | 1 kg |
| k | 弹簧系数 | 4 N/m |
| A | 初始振幅 | 0.1 m |
插入图片与引用
好的笔记应让读者能够追溯结论,而不只是看到结论。
这句是本文的写作建议,不引用特定作者。引用外部资料时,应附原始链接和访问日期。1
在这个博客写作
- 使用项目根目录的
new-post.ps1创建一篇草稿。 - 用 Typora 或 VS Code 编辑 Markdown。
- 使用
preview.ps1在本机检查排版、图片和公式。 - 将文章的
draft改为false,然后执行publish.ps1。
每篇文章的 slug 决定稳定地址。标题可以修改,已经公开的 slug 尽量保持不变。图片可以放在文章同目录,并用  引用;共享图片放在 static/images/。
发布前的最后检查
检查文字是否准确、示例是否标明边界,并确认没有密码、密钥、私人聊天或服务器配置。没有验证的事情,应直接写明“尚未验证”。
示例代码仅使用 Python 标准库。Markdown 写作语法可参阅 Hugo 官方内容文档。 ↩︎