Refactoring English: Month 7

Michael Lynch

Refactoring English(《重構英文》):第 7 個月

一句話總結

同時處理太多未完成的工作,分身乏術。

重點回顧

  • 我試著找出方法,減少同時處理的未完成工作數量。
  • 我集思廣益,思考如何與更多搶先體驗的讀者交流。
  • 我對於 Gleam 語言中的一項設計決策難以接受。

目標評分

每個月月初,我都會訂下想達成的目標。以下是本月目標的達成情況:

為使用者提供更低摩擦的書籍預購方式

  • 結果:從 Kickstarter 預購改為使用 Stripe 付款連結。
  • 成績:A

最初的預售我是透過 Kickstarter 進行的,因此我決定後續的預購也繼續沿用。過了幾個月後,我才發現 Kickstarter 要求顧客必須建立帳號才能購買,這增加了許多摩擦,也讓人打退堂鼓。

改用 Stripe 似乎對銷售產生了影響,30 天內在 Stripe 上有 22 筆預購,相較之下僅使用 Kickstarter 時只有 7 筆。這並非完全相同的比較基準,因為我在改用 Stripe 後也發布了新的試讀章節。

在書籍網站上發布新的試讀章節

這篇文章在Lobsters 上獲得正面迴響,在Hacker News 上表現也不錯,但後來被管理員從首頁移除。我猜測是 Hacker News 上的使用者不喜歡其中對行銷的著墨,因而檢舉了它。

相較於以往任何章節,我在這一章獲得了更多有用的回饋。其中不少是負面意見,但確實很有幫助,因為我認為那些批評都很中肯。我根據回饋修改了文章,而這些討論也讓我產生了兩個新小節的靈感(“Briefly introduce your product”“Turn your numbers into graphs”)。

與至少 10 位讀者進行視訊通話

  • 結果:與三位讀者進行了視訊通話。
  • 成績:D

我在這項目標上遠遠未達標。部分原因是整個月份我只安排了兩場通話,但另一個問題是我無法吸引搶先體驗的讀者來參加我已安排的通話。

《重構英文》數據

數據回來了!

我以前每個月都會公布財務狀況,但在賣掉 TinyPilot 之後就停止了,因為沒有什麼值得報告的數字。現在隨著預售開跑,我又有相關的數據可以分享了。

指標2025 年 5 月2025 年 6 月變化
不重複訪客2,9866,574+3,588 (+120%)
預購收入$193.20$597.24+$404.04 (+209%)
顧問服務收入$0.00$242.45+$242.45 (+inf%)
贊助收入$48.25$48.25$0.00 (0%)
總收入$241.45$887.94+$646.49 (+268%)

我很高興看到訪客增加帶動了銷售成長,尤其高興的是銷售的成長幅度超過了訪客的增幅。我不確定能否維持這個趨勢,但這將會是人們喜歡這本書、並願意推薦給他人的好指標。

如何同時處理更少的草稿?

在撰寫這本書的過程中,一項奏效的策略是每天至少投入一小時進行「困難的」寫作。這意味著我不能把這段時間用來做排版、文法檢查或校對。

我的策略效果很好。6 月份我發表的內容,可能比職涯中任何一個月份都多。我為《重構英文》電子書新增了三個章節,發布了一個新的試讀章節,並在這個部落格上寫了新文章

這個策略的問題在於,刻意避開較簡單的寫作任務,會累積許多接近完成、但仍需文法檢查與校對的文章。尤其是上個月,我手上有大量未完成的寫作,感覺一直在浪費心力去追蹤哪些已經發布、哪些還需要最後編修。

我想根本的問題在於我一直開始寫新的部落格文章。或許簡單的答案就是,當還有未完成的待處理文章時,就應該避免再開新坑。

如何與更多搶先體驗的讀者交流?

邊寫邊銷售《重構英文》的好處之一是,願意預購一本尚未完成書籍的人,相較於一般讀者可能格外熱衷。我原本的計畫是經常與搶先體驗的讀者交流,以確保書籍能回應他們的疑問,並讓內容平易近人。

實際上,我很難與讀者建立聯繫。我曾針對試讀章節發送簡短問卷,或邀請大家回覆提供回饋,但在約 1,400 位電子報訂閱者與約 250 位預購顧客中,只收到了寥寥幾則回覆。

我開始舉辦線上直播視訊場次,並嘗試了不同的形式,包括講座、寫作工作坊、Office Hours,以及像讀書會般討論熱門的軟體部落格文章。直播場次很有趣,參與者也提供了非常棒的回饋,但每場只有少數幾位讀者參加,感覺我仍然只接觸到極小一部分的讀者。

另一個成功的回饋來源是購買一對一編輯回饋的客戶。雖然只有三位付費客戶,但與他們合作讓我得以了解目標族群希望在哪些寫作問題上獲得協助。

基於以上情況,以下是我與更多讀者交流的想法:

  • 在讀者購買後個別聯繫,詢問他們希望從書中學到什麼,以及目前內容是否符合期待。
  • 稍微潤飾我的寫作顧問服務頁面,使其更具吸引力。
  • 為有學習動機但無力負擔原價的人提供折扣顧問方案。
  • 主動聯繫在 Hacker News 上持續投稿卻未能獲得關注的使用者,看看他們是否有興趣聘請我提供回饋。
  • 提供「為你的團隊預約」選項,讓我能為對方的工作團隊講解寫作主題並回答問題。

如何改善本書的行銷?

除了未完成的部落格文章外,還有許多想為本書行銷而做的簡單事項,但我一直沒有為它們安排時間,所以它們一直在腦中佔據空間。

以下是我想完成的、唾手可得的待辦事項腦力激盪清單:

  • 改善網站。
    • 新增 favicon。
    • 調整 UI,讓行動呼籲從訂閱電子報改為購買搶先體驗版。
    • 改善搶先體驗頁面
      • 我已經將它從「pre-order」重新命名為「early access」。
    • 在網站上顯示已開放哪些章節,而不只是章節總數。
  • 發布一年前錄製的部落客訪談。
    • 我當初是為了計畫重啟 Hit the Front Page of Hacker News(《登上 Hacker News 首頁》)而錄製這個訪談,但後來擱置了該產品,而我邀請對方受訪後卻一直閒置著,這件事一直讓我耿耿於懷。
  • 將網頁版的節錄內容移植到電子書中,並在網站上將這些章節標示為已完成。
    • 這些我大多已經完成了,但因為實在太枯燥而一直拖延,仍有三個章節的網頁節錄版本尚未整合到電子書中。

用 Gleam 寫程式與懷念樸實的 for 迴圈

為了今年學習一種新的程式語言,我一直在嘗試Gleam。我用它來解析以前的 AOL Instant Messenger 聊天記錄,其格式如下:

Session Start (DumbAIMScreenName:Jane): Mon Sep 12 18:44:17 2005
[18:44] Jane: hi
[18:55] Me: hey whats up
Session Close (Jane): Mon Sep 12 18:56:02 2005

我曾寫過一篇較長的文章分享我對 Gleam 的初步印象,此後又花了好幾個小時用它來寫程式。

在 Gleam 中最難適應的一點,就是在沒有迴圈的情況下工作。Gleam 刻意不提供迴圈,而是要求使用遞迴函式,或對清單中的每個元素呼叫映射函式。

當我試圖將聊天記錄拆成詞彙以便解析時,缺乏迴圈讓我最為困擾。我在意的分隔符號是[' ', '\n', '[', ']']。我也在意冒號,但只在冒號後面緊跟一個空格的情況下,像這樣:': '

在 Go 這類語言中,我會用 for 迴圈遍歷字串。當遇到空格字元時,我會檢查前一個字元是否為:,以便處理: 的情況。

在沒有迴圈的 Gleam 中,我最後建立了一個奇怪的決策樹,其中許多葉節點都重複了同樣複雜的函式程式碼

我覺得 Gleam 的許多設計選擇都很有趣,當我用「Gleam 的方式」做事時,感覺很優雅,但就迴圈而言,卻只覺得像是缺少合適的工具在工作。

我會繼續嘗試 Gleam,但也打算試試 Elixir 或 OCaml,因為它們擁有許多我在 Gleam 中喜歡的功能,同時也能解決我的一些痛點。

總結

完成了哪些?

經驗教訓

  • 當已有部分完成的文章時,要抗拒再開新部落格文章的誘惑。
  • 我應該加倍投入目前有效的方法,以尋求與讀者有更多對話。

下個月的目標

  • 與至少 10 位尚未交流過的讀者對談。
  • 清除行銷點子的待辦清單。
  • 發布《重構英文》的一個新章節。

原文由 Michael Lynch 發布

本文章由 muse-spark-1.2-contributor 進行翻譯