banner
lencx

lencx

https://github.com/lencx

流量密碼:ChatGPT 開源的一些思考

這篇文章我不想牽扯過多的技術描述,後面會專門寫技術文章來講 ChatGPT 這個項目。

背景#

我最近大半年一直在研究 Tauri 相關技術,寫了一些零散的文章。知道一些功能 API,也讀了一些源碼(被迫的,因為單純的文檔和 issues 已經不夠用),但是並沒有做出過一個真實可用的項目。

簡單來說 Tauri 就是一個桌面應用跨端打包解決方案(macOS,Window 和 Linux 等)。它的移動端(Android 和 iOS 等)打包也已經發布了 alpha 版本(Announcing the Tauri Mobile Alpha Release),很快就會迎來它的生產版本。

Tauri 是為安全而生的,它的一切架構設計都在圍繞著安全這個主題。打包外鏈在 Tauri 看來是一件不安全的事情,功能會受到諸多限制。所以我最近一直都在研究如何優雅,或者以一種比較好的方式來對遠程 URL 鏈接進行套殼。因為這對於想快速將鏈接進行桌面化還是有很大意義的。

就是在這種背景下,ChatGPT 突然就在朋友圈刷屏了,我當時並不在意,以為又是出來一個什麼聊天工具(畢竟是以 chat 打頭的嘛)。後來過了幾天,朋友圈發的人越多了,我感覺事情可能沒那麼簡單了。我就去了解了一下,才發現這東西不簡單,竟然可以解決一些專業性的问题,比如:寫代碼,改 BUG,寫小說,充當女友聊天,當作第二個搜索引擎等等(準確率還有待加強...)。

這時我就萌生了一個想法,這玩意功能這麼強大,卻只有网页版,如果和 Tauri 結合起來,會發生什麼?正好和我最近研究的方向很吻合,可以讓我大展身手,驗證我最近的很多研究和想法(這時候的心態還是單純的,沒想着蹭熱度)。

幹就對了#

空想並不能給你帶來任何東西。

於是在 2022.12.07 下午五點多創建了倉庫,因為各種 Demo,Hello World 寫的實在是太多了,所以我這是輕車熟路。大概花了四五個小時就完成了初版功能,將 ChatGPT 的 URL 打包進 Tauri 桌面應用,並且添加了一些菜單項,以及自動更新。然後在畫 LOGO 的環節,我差不多又折騰了兩三個小時(快趕上寫代碼的時間了),雖然小,但是卻很重要,它是你產品的靈魂所在。

我認為做項目也是需要具有產品化思維的,在這裡我想談談對產品的理解:

  • 產品閉環:它可以很小,功能可以很簡陋,但是必須要形成最小閉環,保證其可用性(產品核心功能可以正常使用)。
  • 速度要快:開發速度,更新速度,問題相應速度都要快,因為它可以幫助你搶佔第一波用戶(種子用戶積累很重要,可以形成口碑,幫助產品二次傳播)。
  • 用戶體驗:這是需要花心思的,雖然你是一名開發者,但是你更是一名使用者。所以沒有產品,你就是產品;沒有設計,你就是設計(你就是用戶,甚至你要比用戶更懂用戶,學會取捨)。
  • 產品計劃:你對產品未來方向的規劃,計劃加入什麼牛逼的功能,需要在文檔裡寫清楚。它就相當於是在給用戶畫餅,可以打動一些想要長期追隨它的用戶(注意:畫餅不代表天馬行空的想法,而是根據實際情況,可實現但因時間原因暫時無法實現的計劃)。
  • 差異化:因為當你發現機會的時候,別人可能早已經在裡面開始收割了,所以產品功能的差異化,將是你的突破口(人無我有,人有我有優)。
  • 穩定性:產品的初期的架構很重要,它可能會伴隨其一生。重構有時候並不現實,因為它需要牽扯到很多的歷史包袱,數據兼容,人力成本等等(可擴展性很重要)。

什麼是核心功能?#

一直在說核心核心,到底什麼才是核心呢?其實就是你這個產品的初衷是為了解決什麼問題。如果沒搞清楚想要解決的問題,很可能會眉毛胡子一把抓,認為什麼都重要。拿我的項目來舉例,它的核心功能就一點,網站 URL 桌面化。所以我將 URL 打包成跨平台的桌面應用就已經完成了核心功能。把握住了核心,你就可以對功能進行取捨,取捨而來的時間就是速度

為什麼要注重用戶體驗?#

用戶體驗很重要,在我看來它僅次於核心。它會直接影響到用戶使用的感覺,一旦錯失第一印象,那麼這個用戶可能就無法再次挽回了。當我們有了核心目標後,需要考慮的就是如何圍繞這個核心去構建符合用戶行為的功能。子非魚的問題無法避免,可先不做的就不要用錯誤來將就,有時候試錯的成本可能會很高。我們自己就是使用者,你可以站在開發者和使用者的雙重角度去思考問題。身為程序員,邏輯思維很重要,產品思維也同樣重要

為什麼要快速迭代?#

快速迭代是為了讓用戶看到你產品不斷演化的方向,也是為了增加與用戶的黏性。小步快跑其實也是為了解決核心功能取舍掉的那一部分東西,它們在開荒階段,不是那麼重要(生死面前,錢財都是身外之物)。但是一旦有了核心功能這個載體,它們就是血肉,可以讓產品一步步豐滿起來。

為什麼要快速響應?#

產品開發過程中,各種 BUG 很難避免。你對用戶的響應速度,直接決定了用戶的去留。能解決的問題最好可以短時間內解決,解決不了的也要說明原因。

為什麼要穩定性?#

這個問題也是老生常談的問題,說的時候都信手拈來。但是真正做的時候,在速度面前,就會舍棄很多東西(我就是暫時那樣處理,回頭就改,結果代碼越寫越多,改不了了...)。我這次就犯了這個致命的錯誤,因為前期並不需要很複雜的功能,就未過多考慮數據的結構問題,結果在最近一次版本升級中,修改了一些字段未做數據兼容的異常處理。導致很多用戶在升級後,程序直接崩潰,無法啟動。我花費了很多時間在 issues 裡解釋這個問題,後來我在項目的 README.md 裡給出了解決問題的辦法,但不一定所有的用戶都會看到。如果他們因我的失誤而離開,確實有點小遺憾。

小結#

以上這些都是環環相扣,層層遞進的。步子邁得大,不見得就是快,所以穩扎穩打,走好每一步才是最重要的。

蹭流不可恥#

在風口浪尖,會有無形之手推著你前行。機會是需要把握的,它會讓你事半功倍。

ChatGPT 是一個熱點,可以說是引爆全球程序員圈子的熱點。當然它也延伸到了各個領域,導致 OpenAI 的伺服器經常崩潰。作為一個網紅項目,如果可以基於它而衍生出來的一些項目,關注度也自然會高很多。所以這就是勢。當這個勢和開源結合之後,就可以收穫一波滿滿的 ⭐️ Star。Star 對於開源程序員還是很有吸引力的,因為它很難也很容易獲得(因為項目並不一定有技術含量就會被人所熟知)。

我是從 2015 年開始入行前端,學習編程。當時就註冊了 GitHub 帳號。然後斷斷續續開始了自己的開源生涯。從 0 - 18 個 followers 我花費了五年時間。以及 2021.6.29 第一个 100 star 項目,我花費了將近 6 年時間。但是這次這個項目 5 天時間,我獲得了 300 多 star。我前五年的所有項目總和還不及它一個零頭。我想說的的是蹭流不可恥,但堅持更珍貴。因為 量變到質變需要的時間是巨大的,黎明前的黑暗沒有人知道會持續多久

蹭流小技巧#

所有的社交類內容傳播都類似,包括做開源項目。前期的種子用戶很重要,他們可以把默默無聞的你推到聚光燈下。一旦成為焦點,自然流量就會像你傾斜。對應到開源項目,就是 GitHub Trending,這個趨勢榜單會成為你的一个重要支點,它會撬動自然流量(自帶流量的請忽略,粉絲的力量過於強大)。根據我的經驗來看,項目的新鮮度,以及短時間內吸引到的關注度(star)是上榜的指標。所以很多人會去刷 star,但是我覺得開源需要的是被認可的感覺,刷來的 star 並不能帶來發自內心的快樂。所以風暴的產生可能就只是一次蝴蝶的振翅。這也是撬動地球的支點。雖然新鮮度,關注度等等都很重要,但是打鐵還得自身硬,用實力說話。

總結#

身為一名程序員我很自豪,雖然足不出戶,但是你有著可以用雙手去改變世界的力量。即使不能實現,也可以將其定為一個努力奮鬥的目標。

結尾#

在最後的收尾,我想放幾張截圖,作為我寫這篇文章的一個佐證。堅持的力量不可想象。所以永遠不要嘗試去定義自己,你就是無限的可能。

  • 開源 5 年收穫了 18 個 followers,和幾乎沒有的 star
    chatgpt-1
  • 開源 6 年收穫的第一个百星項目
    chatgpt-2
  • ChatGPT 項目開源 5 天破 300 star
    chatgpt-3
  • 最後兩張是我當前的 github 首頁截圖,這將是我下一次起航的起點
    chatgpt-4
    chatgpt-5
載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。