技術寫作基礎概念:Docs as a product 與 content first

閱讀時間約 5 分鐘

目標讀者:軟體開發人員、DevOps 工程師、產品經理

概要

上一篇筆記提到 Docs as Code,指的是以跟寫程式一樣或相似的工具與流程來製作文件。這篇筆記要再介紹兩個有關技術文件寫作的基礎觀念:

  • Docs as a product,指的是把「技術文件」當成一個產品來發展和維護。
  • Content first,即內容優先。既不是工具優先、平台優先,也不是美觀樣式優先。

Docs as a product

Documentation as a product 簡稱 Docs as a product,指的是把「技術文件」當成一個產品來發展和維護。

乍聽之下似乎很直觀,沒必要特別強調。但實際上,每個人寫出來的技術文件不會完全一樣,而文件對於目標讀者是否「有用」才是最要緊的。並不是說,每個人今天搞懂了一項技術或 know-how,鍵盤抄起來劈哩啪啦開始打字,便都可以立刻成就一篇易讀易懂、對讀者有用的文章。而且,如果本身肩負 DevOps 相關工作,日常的程式開發、問題排查、技術支援等工作可能已占滿大部分的時間(還有一堆會議?),恐怕也沒有太多時間去思考一篇文章要怎樣寫才好。

能不能寫出對讀者有用的文章,除了需要掌握文章內容涉及的技術與 know-how,更重要的是有沒有去思考一篇文章該怎麼寫,才能讓人讀起來舒服、易懂、有學到東西或者解決他們手邊碰到的問題。當然我們不能排除有的人已經是寫手等級,或者對於想要寫的內容早已在心中醞釀多時、胸有成竹,故可下筆如有神,一蹴而就。

簡單來說,關鍵在於:身為作者的你,是否知道怎樣的技術文件才是對多數的目標讀者有幫助?如果寫文件的過程能夠經常考慮這點,並持續改善文件內容,我想已經走在對的道路上。能夠做到這點,自然也就懂得 docs as a product 是一個怎樣的理念。

有關成為 technical writer 的一些個人特質與要件,之後可能再另開一篇筆記來分享個人淺見。

總之,docs as a product 不是把技術文件當成零散筆記、隨意為之,而是經過作者構思與細心整理的文件。作者知道知識傳遞與知識分享的重要性,他/她希望有更多人願意讀這些文件,且信任這些文件,故願意投注長期的心力來持續改善文件的品質,就像持續改善一項產品那樣。

Content first

內容優先,這也相當直觀,文件首重其內容是否有用,自然是內容優先了。強調這點的原因是相對於其他考量來說的,例如:優先考慮文件撰寫工具或文件管理平台是否容易取得、工具是否好用、產生出來的文件是否美觀 fancy 等等。

Content first 的前提是上一節介紹的 docs as a product。因為有些文件並不需要那麼嚴肅認真地對待,例如一些不穩定的知識、臨時筆記、零碎知識等等,我們可能不會大費周章去把它們當成一個產品來發展與維護,於是內容結構如何、是否易讀易懂,也就不需要那麼講究。

那麼,如果要認真去寫正規文件,該如何構思文件的架構呢?

構思文件架構

一旦確定要撰寫正規文件,把文件當成一項產品來認真看待,便需要規劃和構思文件結構與內容。此時,有一個名為 Diátaxis 的文件構思框架可以派上用場。如下圖(取自 diataxis.fr):

raw-image

此框架把文件分成四大類:

  • 教學文件:協助讀者學習某一個主題。
  • How-to 文件:包含完成特定工作或目標的指引。例如「如何建立虛擬機器」、「手把手教你 XYZ」通常屬於此類。
  • 解釋型文件:說明某個概念、名詞、架構等等都是。
  • 參考文件:提供參考資訊,例如 error codes、API reference manual 等等。

構思技術文件該包含哪些內容時,不妨以此框架來規劃文件的架構。

有了大分類之後,可以再進一步思考更細、更具體的文件類型,例如:

  • Introduction、overview
  • Tutorials
  • Use cases and best practices
  • FAQs
  • API reference manual
  • 專有名詞(terminology)
  • 產品的 road map
  • 產品的 release notes
  • 聯繫技術支援的管道
  • 提供有關文件內容 feedback 的管道
  • 相關法規與政策

規劃文件內容架構時,若想不到該放哪些東西到文件中,不妨利用上述清單來刺激靈感。

結語

本文提及的概念和方法,都是我贊同且正在使用的,而且我覺得對於從事軟體開發或系統工程方面的 DevOps 與工程師特別合適,因為相對容易上手。比如說,讓 DevOps team 成員學習使用 markdown 來寫文件,碰到的抗拒通常會比一般習慣用 Word 和 Powerpoint 寫文件的人來得低。

然而,也不能預設只有 DevOps 工程師才能使用這套方法來寫文件。理想情況下,撰寫文件的相關配套工具、平台、教學文件,也都應該盡量準備齊全而且容易上手,讓組織中的其他角色(例如 PM、SA)也能參與文件協作、貢獻知識。

最後,最重要的,無論採用何種工具,只要是正規文件,都應該以易讀易懂為目標,而且能讓讀者自行閱讀文件就學會特定知識、或解決特定問題(而不是看了文件感覺一頭霧水還得一直去找人問)。

喔對了,非正規文件當然也可以用上述理念和方法來撰寫,例如部落格就是練習寫文件的一個好方法(儘管有點老派,但還是很棒的方法)。

Keep writing!

延伸閱讀

avatar-img
14會員
23內容數
這裡有我寫作與自行(獨立)出版電子書的實戰心得與相關知識,包括:寫作與出版工具的使用、各出版平台的比較、電子書上架的逐步教學、行銷技巧、以及持續進行的出版實驗心得與發現。 如果您也想了解如何自行出版電子書,歡迎一起來學習、相互切磋。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
閱讀|寫作|出版 的其他內容
摘要:讓 Obsidian 預設以新頁籤來開啟檔案的幾個方法。
整理完 《卡片盒筆記》的讀書心得,接著整理我使用 Obsidian 筆記工具的一點心得。
些年,當我有個點子,開始想要寫技術文章的時候,常有一些顧慮,致使我打消寫作的念頭。後來,我把這些想法整理出來,寫成文字,那層憂慮和壓力似乎就削減了些。也許這篇文章談到的問題不只限於技術寫作,而是所有嘗試寫作的人都可能碰到的問題。
我在使用「方格子」和「Matters」這兩個文章平台一陣子之後,開始對這兩個平台的差異有了一些想法。我嘗試用這篇文章來捕捉這些想法,供有志寫作的朋友參考。當然,這些想法是很主觀的、而且是針對我個人需求所做出的評價。
「智者的常軌,乃雄心之明證。」W. H. Auden 所說的這句話,我認為幾乎可概括全書宏旨。其餘篇章有許多重複,可以跳著讀、選自己感興趣的作家/藝術家來讀。
摘要:讓 Obsidian 預設以新頁籤來開啟檔案的幾個方法。
整理完 《卡片盒筆記》的讀書心得,接著整理我使用 Obsidian 筆記工具的一點心得。
些年,當我有個點子,開始想要寫技術文章的時候,常有一些顧慮,致使我打消寫作的念頭。後來,我把這些想法整理出來,寫成文字,那層憂慮和壓力似乎就削減了些。也許這篇文章談到的問題不只限於技術寫作,而是所有嘗試寫作的人都可能碰到的問題。
我在使用「方格子」和「Matters」這兩個文章平台一陣子之後,開始對這兩個平台的差異有了一些想法。我嘗試用這篇文章來捕捉這些想法,供有志寫作的朋友參考。當然,這些想法是很主觀的、而且是針對我個人需求所做出的評價。
「智者的常軌,乃雄心之明證。」W. H. Auden 所說的這句話,我認為幾乎可概括全書宏旨。其餘篇章有許多重複,可以跳著讀、選自己感興趣的作家/藝術家來讀。
本篇參與的主題活動
  從開始經營方格子到現在已經十個月了。說實話,這是從我淡出巴哈姆特四年後,再次有意識的經營作品。   雖然從事小說創作,我卻是一個只要講述自己的情感就會有些嘴笨的人,心中有太多太多感受,很難一次表達出來,只能再次說,非常謝謝大家的支持,沒有你們,我走不到現在。   今年是很特別的一年,我的沙龍
虛構故事,我們得以暫時忘記活著的殘酷。賣火柴的小女孩燃盡自己的生命,讓我們在死亡陰影中感受到溫暖。未來無非是死亡的延伸,現實並不比童話更仁慈,但在故事中,我們看見了比真實更真實的光芒。故事不是真相,卻教我們如何面對真相。或許,我們每個人都是寫著自己故事的小女孩,藉由夢境短暫取暖,直到生命的火光熄滅。
本篇文章介紹了麗薩·克龍的著作《你能寫出好故事》,她是一位知名的故事教練,透過腦科學與心理學的研究,揭示了成功故事的要素與寫作方法。文章詳述了吸引讀者的故事要素,包括情節、人物、挑戰和變化等,並強調了突出焦點及製造衝突的重要性,以及如何高效構建引人入勝的故事。它是每位寫作者不可或缺的創作指南。
回想起來,五年前剛剛使用方格子寫教學心得時,往往想到什麼點子寫什麼、遇到什麼教學狀況寫什麼……毫無組織架構可言。然而,隨著越寫越多,這些文章竟然漸漸在我眼前相連成幾條清晰的脈胳,每一條脈胳都是一個主題,每一、兩個主題似乎都有寫成一本書的價值。
同樣是表達「某件事的原因」,Because、As、Since 和 For 這四個詞看似相似,實際上各有不同的常用情境和細微差異! 許多學生常在練習英文寫作中問我:「這四個詞到底該怎麼選?」、「哪種情況適合用哪一個『因為』?」為了一次解開這個疑惑,我整理了一篇關於這些「因爲」的特性與常見用法!
  從開始經營方格子到現在已經十個月了。說實話,這是從我淡出巴哈姆特四年後,再次有意識的經營作品。   雖然從事小說創作,我卻是一個只要講述自己的情感就會有些嘴笨的人,心中有太多太多感受,很難一次表達出來,只能再次說,非常謝謝大家的支持,沒有你們,我走不到現在。   今年是很特別的一年,我的沙龍
虛構故事,我們得以暫時忘記活著的殘酷。賣火柴的小女孩燃盡自己的生命,讓我們在死亡陰影中感受到溫暖。未來無非是死亡的延伸,現實並不比童話更仁慈,但在故事中,我們看見了比真實更真實的光芒。故事不是真相,卻教我們如何面對真相。或許,我們每個人都是寫著自己故事的小女孩,藉由夢境短暫取暖,直到生命的火光熄滅。
本篇文章介紹了麗薩·克龍的著作《你能寫出好故事》,她是一位知名的故事教練,透過腦科學與心理學的研究,揭示了成功故事的要素與寫作方法。文章詳述了吸引讀者的故事要素,包括情節、人物、挑戰和變化等,並強調了突出焦點及製造衝突的重要性,以及如何高效構建引人入勝的故事。它是每位寫作者不可或缺的創作指南。
回想起來,五年前剛剛使用方格子寫教學心得時,往往想到什麼點子寫什麼、遇到什麼教學狀況寫什麼……毫無組織架構可言。然而,隨著越寫越多,這些文章竟然漸漸在我眼前相連成幾條清晰的脈胳,每一條脈胳都是一個主題,每一、兩個主題似乎都有寫成一本書的價值。
同樣是表達「某件事的原因」,Because、As、Since 和 For 這四個詞看似相似,實際上各有不同的常用情境和細微差異! 許多學生常在練習英文寫作中問我:「這四個詞到底該怎麼選?」、「哪種情況適合用哪一個『因為』?」為了一次解開這個疑惑,我整理了一篇關於這些「因爲」的特性與常見用法!
你可能也想看
Google News 追蹤
Thumbnail
JSDoc 全名是 JavaScript Documentation,顧名思義是為 JavaScript 所使用的 API 文件,在程式碼內透過註解的方式撰寫,運行後 JSDoc 會自動掃描註解內容,並生成一份網頁版的文件,對於沒有使用 Typescript 開發的專案,也
1. 大綱 先寫大綱, 目次結構先訂下來, 寫大綱才是最難的, 怎麼安排才有邏輯 起:誕生緣由, 開頭, 告訴大家要談什麼 承:發起年份, 延伸闡述, 舉例等 轉:web2 & web3差異, 回頭講細節 合:設計理念 (可以請GPT寫大綱, 再照著大綱把內容一一生成, 但沒有自己做,
Thumbnail
本書大多數的內容都以 OO 的概念出發,詳列了許多設計的臭味道,也有大量的例子。個人雖然不會這樣寫程式,但仍是覺得受益良多,至少在 code review 時能更清楚知道該怎麼描述問題。不過,即便不是用 OO 的概念,有些章節還是可以帶來一些想法,用 OO 概念寫程式的人更不該錯過這本好書。
Thumbnail
想要文章有人看,想想做產品時怎麼發想的。 以產品思維比喻,作者開了一家店(公眾號),店裡陳列各式產品(不同觀點的文章),而賣點是擊中讀者的痛點,引起情感共鳴。商業行銷上說「痛點是一切產品的基礎」,道理不約而同。
Thumbnail
軟體系統的發展歷程大多相似,首重解決基本需求、提供操作介面,進而提升安全性、擴充功能、優化操作。
Thumbnail
列出一套完整的程式 程式設計有許多種方法,不過通常會先列出清單的再逐一執行,這樣會加快程式設計的速度。設計通常會採取順推的辦法。所以順推的程式設計方式就是經歷觀念溝通、系統分析、資料統合、權限管理、頻率與時間、後台管理、畫面設計等等階段後,將框架設計完了以後,先列出一套完整的程式,將所有使用者都確
Thumbnail
程式設計中不可或缺的一部分 介面是使用者與程式互動的媒介,因此介面的設計會影響使用者的體驗和感受。一個清晰明白、易懂的介面,可以讓使用者輕鬆地使用程式,並獲得良好的使用體驗。 需要與程式設計師密切溝通 設計師需要了解程式的功能和需求,並根據使用者的習慣和需求進行設計。設計師和程式設計師之間的溝
Thumbnail
在當今這個以使用者為中心的設計領域,產品思維不僅是設計師的一項附加技能樹,而是成為塑造成功產品的核心因素。
Thumbnail
系統的分析與規劃 在談到程式設計時,首要的是進行系統的分析與規劃。程式設計的起點通常是系統分析與規劃,這涉及到如何分析和設計系統的大原則和方向。為了達到預期效果,重要的是擁有對產業的清晰邏輯認識和深入了解。 進行深入了解 若要進行系統分析,必須對企業的設計和程式設計的對象進行深入了解,以充分理
Thumbnail
替產業做設計 有人要我談程式設計,那我就稍微談一下。我從事的大都是產業的工作,所以我們也從如何替產業做設計來談起。基本上,每個產業都會有自己的作業流程,大同小異。但是基礎來做都是一樣的,都會有客戶、物料、產品、供應商、員工等資料。不同的是,由於企業型態的不同,他們每個人有不同的作業流程。這個作業流
Thumbnail
JSDoc 全名是 JavaScript Documentation,顧名思義是為 JavaScript 所使用的 API 文件,在程式碼內透過註解的方式撰寫,運行後 JSDoc 會自動掃描註解內容,並生成一份網頁版的文件,對於沒有使用 Typescript 開發的專案,也
1. 大綱 先寫大綱, 目次結構先訂下來, 寫大綱才是最難的, 怎麼安排才有邏輯 起:誕生緣由, 開頭, 告訴大家要談什麼 承:發起年份, 延伸闡述, 舉例等 轉:web2 & web3差異, 回頭講細節 合:設計理念 (可以請GPT寫大綱, 再照著大綱把內容一一生成, 但沒有自己做,
Thumbnail
本書大多數的內容都以 OO 的概念出發,詳列了許多設計的臭味道,也有大量的例子。個人雖然不會這樣寫程式,但仍是覺得受益良多,至少在 code review 時能更清楚知道該怎麼描述問題。不過,即便不是用 OO 的概念,有些章節還是可以帶來一些想法,用 OO 概念寫程式的人更不該錯過這本好書。
Thumbnail
想要文章有人看,想想做產品時怎麼發想的。 以產品思維比喻,作者開了一家店(公眾號),店裡陳列各式產品(不同觀點的文章),而賣點是擊中讀者的痛點,引起情感共鳴。商業行銷上說「痛點是一切產品的基礎」,道理不約而同。
Thumbnail
軟體系統的發展歷程大多相似,首重解決基本需求、提供操作介面,進而提升安全性、擴充功能、優化操作。
Thumbnail
列出一套完整的程式 程式設計有許多種方法,不過通常會先列出清單的再逐一執行,這樣會加快程式設計的速度。設計通常會採取順推的辦法。所以順推的程式設計方式就是經歷觀念溝通、系統分析、資料統合、權限管理、頻率與時間、後台管理、畫面設計等等階段後,將框架設計完了以後,先列出一套完整的程式,將所有使用者都確
Thumbnail
程式設計中不可或缺的一部分 介面是使用者與程式互動的媒介,因此介面的設計會影響使用者的體驗和感受。一個清晰明白、易懂的介面,可以讓使用者輕鬆地使用程式,並獲得良好的使用體驗。 需要與程式設計師密切溝通 設計師需要了解程式的功能和需求,並根據使用者的習慣和需求進行設計。設計師和程式設計師之間的溝
Thumbnail
在當今這個以使用者為中心的設計領域,產品思維不僅是設計師的一項附加技能樹,而是成為塑造成功產品的核心因素。
Thumbnail
系統的分析與規劃 在談到程式設計時,首要的是進行系統的分析與規劃。程式設計的起點通常是系統分析與規劃,這涉及到如何分析和設計系統的大原則和方向。為了達到預期效果,重要的是擁有對產業的清晰邏輯認識和深入了解。 進行深入了解 若要進行系統分析,必須對企業的設計和程式設計的對象進行深入了解,以充分理
Thumbnail
替產業做設計 有人要我談程式設計,那我就稍微談一下。我從事的大都是產業的工作,所以我們也從如何替產業做設計來談起。基本上,每個產業都會有自己的作業流程,大同小異。但是基礎來做都是一樣的,都會有客戶、物料、產品、供應商、員工等資料。不同的是,由於企業型態的不同,他們每個人有不同的作業流程。這個作業流