工程师如何写好博客|Bolt荐阅

企业   2024-11-07 15:01   上海  

写作是一种极具影响力的沟通形式。通过持续输出专业的文字内容,许多工程师和创业者因此在某个领域建立了极大的影响力和信誉。

Robin Moffatt 是一位美国知名的数据工程和流处理领域的专家。他频繁活跃在技术社区,并通过博客、演讲和培训等多种形式分享他的知识和经验,以其对复杂技术概念的深入理解和清晰的解释而闻名。

近期他在自己的博客中分享了他的写作方法,并推荐了许多写作工具和学习资源。我们对作者的文章做了整理和翻译,希望可以给到大家一些思考和启发,原文内容可以通过点击「阅读原文」链接进行查阅。


01 为什么我们要写作

首先,我喜欢分享信息。这可能是我学到的新工具或技术,一些我发现的技巧,或者有时远离技术领域,进入生活思考和自省的领域。在这篇博客中,我是为了分享一些让我感兴趣的想法。我本可以写下笔记直接回复最初提问的人,但如果对他们有用,希望对其他人也有用,因此值得写出来并发布。

我写作的第二个原因是为了自己学习。做演示时可以随便说说,但要真正写下来,或者说是把字节存到磁盘上并解释清楚就不一样了。我经常会发现自己在知识上有空白或不足之处,需要先进行探索,然后才能真正写出东西,这也是我写作的原因。

除此之外,写作还有其他令人愉悦的“副作用”:任何公开的东西(比如你的博客,或者开源项目的文档等)都有助于建立你在某个领域的信誉,并让其他人意识到你的存在。


02 工程师如何写作

1. 讲座:《有效写作的艺术》

在进入正式话题前,我推荐去看看这场名为《有效写作的艺术》的讲座。由芝加哥大学写作项目的主任 Larry McEnerney 主讲,他对写作颇有见解。他关于学术交流的观察与开发者之间的交流有直接的相似之处。

我曾多次看到这个讲座被推荐,但一直因为时长没有完整看完,但我真希望当初没有选择犹豫不决,因为它真的很棒。

🎬 视频链接:https://www.youtube.com/watch?v=vtIzMaLkCaM


2. 我作为代码工程师是如何写作的?

每个作者都会有自己的写作方法,这也会根据读者和目的而有所不同。学术期刊上发表的报告与推特上的趣味性内容有不同的结构。面向开发者的博客与产品手册的深度文档有很大不同。每种媒介和受众都是有效的;关键是确保你的写作与之匹配。

当我写作的动机通常是因为我对某件事情产生了兴趣。可能是新技术、深入解释、对生活的随想,或者其他任何东西。通常我会问自己几个问题:我是否愿意阅读我写的东西?它是否避免了那些无聊乏味的内容?

在这里有三个关键维度值得考虑:

  • 清晰度
  • 个性化
  • 内容的一致性


这些维度可以大致覆盖我们可能写的各种材料:

事情并不总是那么简单,特别是对于某些平台来说,范围相当广泛:

这些不同维度在实践中意味着什么?让我们来探讨一下。

2.1 清晰是关键

这三个维度中,第一个是相当直接的,并且不应该真正变化。无论你写什么,写给谁,都必须清晰。写作清晰意味着从句子结构和段落分隔到文章结构的一切。这可能出乎意料地困难,但如果你想写出人们愿意阅读的材料,这是至关重要的。

关于清晰度的一个巧妙技巧是记住你省略的内容与留下的内容同样重要。这将非常具体地取决于上下文。文档按定义应该是全面的。而博客可能希望更快地切入主题,并仅为读者提供背景材料的链接,以便他们需要时查阅。常言道,少即是多。

某些类型的写作可能比其他类型更具个性,但所有写作至少都有可能是可访问和清晰的。例如,仅仅因为你在写文档并不意味着你可以复制和粘贴要求文档中的所有通用和复杂内容。写出你作为开发者愿意阅读的文档。它可以复杂而精确,但仍然可访问。

2.2 个人写作风格

写作风格是否应该在写作中显现出来?

如何定位你的写作风格将取决于你的偏好、受众以及学科。如果你花很多时间在 Twitter 上,你会注意到信息安全的帖子与开发运维的帖子不同,后者又与数据工程帖子不同。每个都有自己的小圈子和习惯,并且在发表的写作中作者的写作风格显现的范围也不同。

通常你会发现,给公司的项目报告或产品文档这样的一般写作媒介需要中立的声音。这并不是说无聊,而是说需要一定的一致性。在项目报告里,信息不应被口语化的表达所掩盖。你能想象如果一套文档是由多个作者撰写的,每个作者都想在页面上留下自己的个性印记会导致多么严重的认知失调。

当我们谈到博客和其他类型的写作时,我们故意想要包含一些个人写作的个性。多少个性由你来与受众和自己调节,这里有一个相对完美的状态:你表达了足够的个性和真实的声音,但又不会影响内容本身的阅读质量。

2.3 一致性和标准化

这与个性和观点有很强的关系,但更多地涉及到材料的结构和内容。

以博客为例,你会发现公司或项目的博客会非常注重信息和结构的一致性,通常会有一个完整介绍和背景,并且是全面的。与此相比,个人博客有时可能只不过是一个开发者想要记录 bug 信息和解决方案以供未来搜索的人使用的地方。他们可能会把它扩展成一篇更长的文章,这并不是必要的,但它仍然有价值。


03 博客写作模板

我有一个常用的写作结构,我也在很多会议演讲中使用它。它看起来像这样:

  • 告诉他们你要告诉他们什么
  • 告诉他们
  • 告诉他们你告诉了他们什么


这个结构在实践中看起来像下面这样:

1. 文章开头介绍

文章开头核心要告诉读者你写的内容是什么,为什么读者要关心?文章开头可能是读者为什么对它感兴趣的简要解释,或者你为什么要阅读我对它的看法。关键是你在这里与观众建立联系,并不是所有人都想阅读你写的所有东西,这没关系。

在这个阶段,你需要让人们拥有自行选择阅读的权利。例如,如果你在写关于数据工程的内容,你可以明确告诉做应用的开发者他们应该离开,因为这里没有什么可看的。

2. 文章内容本身

3. 文章总结和回顾

文章的结尾确保你不仅仅以一个“End”结束你的文章。文章的结尾可以选择总结你刚刚讨论的内容,并给人们一些可以继续探索的方向。。他们可以运行或检查的代码示例、要注册的新服务、要观看的视频、或者只是一个可以反思的人生思考。


04 开始写作

如果提升写作能力只有一条建议,那就是开始写。我不是说去写一篇文章。我是说开始写点什么,任何东西。一些笔记,一些片段,一些完整的段落。它甚至可能看起来像这样:

随着你写得更多,故事和线索就会开始显现。起初是一个部分,后来可能变成两个部分,因为你意识到有不同的元素需要剖析。

迭代,迭代,然后再迭代。

我最近发现使用番茄钟计时器是一种有效的方式,可以让我集中注意力,并且休息一下。与其盯着屏幕,陷入文章停滞的绝望境地,不如花一段时间然后暂时离开。也许你在休息后回来,也许等得更久。像生活中的许多问题一样,随着时间的推移,事情会自行解决。


05 找一位优秀的文字编辑

优秀的文字编辑会理解你在说什么,并帮助你将其提炼和塑造成更好的形状,他会尊重你写作中呈现的表达,还会在内容的清晰度和语法准确性方面做的更好。


06 写什么和不写什么

7.1 写什么

我们已经讨论了“为什么”和“如何做”,现在我们聊聊要写些什么。写什么通常来自于你提出的问题,如果对我来说有趣,那么我会写下它。但假设你的创作灵感并没有涌现,但你仍然非常想写一篇博客。一个非常好的写作灵感来源是去看社交媒体的内容,例如:StackOverflow、Twitter、Slack、Discord 。过程中你可以观察以下问题:

  • 人们反复问的问题是什么?

  • 你看到的反套路和误解是什么?

  • 新趋势是什么?

  • 你可以用 xxx 做什么酷炫的事情?


7.2 不写什么

不写什么非常取决于个人偏好。我对增长驱动的博客风格一点也不感兴趣。你知道那种:列表文章、SEO 诱饵等。这是低级的,开发者能看穿它,并且它会损害博主的形象。话虽如此,如果你写了一篇好博客,那就值得被分享。写作的内容要有价值,不仅对你自己,对读者也要有意义。写作不仅仅是为了填充页面,而是要传达有趣且有用的信息。


07 总结一下

总结全文,请记住这两种说法并不相互排斥:

1. 为自己而写,找出你感兴趣的东西,然后写出来。

2. 想想读者,想想你在写作中为他们提供了什么价值。


08 工具堆栈

每一个人写博客文章的工具各有所好,但这是我使用的工具堆栈:

  • Obsidian 用于撰写文章
  • CleanShot X 用于屏幕截图和标记
  • Grammarly 用于文字校对(为了读者阅读,请认真校对。没有人想读一篇写得很糟糕的博客)
  • Hugo 和 GitHub Pages 用于发布和托管内容


09 学习资源

Gareth Dwyer(软件工程师、作家和技术顾问)提供了一些有价值的学习资源列表:

1. Blogging for Devs 博客写作课程:https://bloggingfordevs.com/
2. Antonio Cangiano 的博客文章:https://pragprog.com/titles/actb2/technical-blogging-second-edition/
3. Sophie Watson 的精彩演讲:https://www.youtube.com/watch?v=kOnZovTFTHc
4. Dmitry Kudryavtsev 的博客文章:https://yieldcode.blog/post/why-engineers-should-write/
5. Google 技术写作课程:https://developers.google.com/tech-writing

📮 更多阅读

Linear Bolt 
Bolt 是线性资本为早期阶段、面向全球市场 AI 应用专门设立的投资项目。它秉持线性投资的理念和哲学,专注在技术驱动带来变革的项目,希望帮助创始人找到实现目标的最短路径,不管是行动速度,还是投资方式,Bolt 的承诺是更轻,更快,更灵活。Bolt 已经在 2024 年上半年投资了 Final Round、心光、Cathoven、Xbuddy、Midreal 等 7 个 AI 应用项目。

线性资本
我们聚焦数据智能及其他前沿科技应用领域,相信Frontier Tech, Frontier Productivity, Frontier Life。
 最新文章