2023年的一項調研顯示,獨立SaaS項目從啟動到獲得第一個付費用戶的平均周期是14個月。但Pamilerin Idowu——一位連續創業者、Surface-First Engineering(表面優先工程)概念的提出者——在2026年4月的Medium文章中拋出了一個更扎心的數據:超過80%的Solo Founder(獨立創始人)項目從未活到用戶可見的那一天。死因不是技術選型錯誤,不是資金斷裂,而是一種近乎本能的開發順序:先建數據庫,再寫界面。
Idowu把這叫做"inside-out default(由內而外的默認模式)"。工程師打開IDE的第一件事是建模數據表、設計遷移腳本、配置CI/CD流水線、爭論文件夾結構。三個月后,系統架構無可挑剔,測試覆蓋率漂亮,但沒有一個真實人類見過這個產品的樣子。
數據庫是舒適區,界面是暴露區
Idowu的觀察很毒:工程師逃避界面不是懶惰,是心理防御。數據層是可控的——字段類型不會抱怨,索引優化沒有情緒,重構十次也沒人知道。但界面不一樣。用戶三秒就會形成判斷,按鈕點下去沒反應,人家直接關閉標簽頁,永不再來。
他在文中用了個精準的類比:界面是脆弱性的聚集地。這種脆弱讓工程師無意識地把"打地基"無限前置,用"等技術債還清"無限推遲那個必須面對用戶的時刻。
結果是一種詭異的自我欺騙循環。開發者告訴自己"等ORM選好再寫前端",然后花兩周比較Prisma和Drizzle;告訴自己"等權限系統完善再設計儀表盤",然后陷入RBAC(基于角色的訪問控制)和ABAC(基于屬性的訪問控制)的學術辯論。六個月過去,GitHub提交歷史綠得像草原,產品卻像薛定諤的貓——理論上存在,觀測時坍縮為無。
Surface-First:把用戶可見的東西放到第一天
Idowu提出的替代方案叫Surface-First Engineering。核心規則簡單粗暴:用戶第一天能看到什么,你就第一天寫什么。不是原型,不是線框圖,是能點擊、能反饋、能傳遞價值的最小表面。
他舉了個具體案例。假設要做一款給自由職業者用的發票工具,傳統路徑是先設計Invoice表、Client表、Payment表的關系,再寫REST API,最后才考慮"新建發票"按鈕長什么樣。Surface-First路徑是:Day 1就做一個單HTML文件,里面只有一個表單——客戶郵箱、金額、描述——提交后把數據存進Google Sheets,同時觸發一封手動寫的郵件。
這個"表面"丑陋、脆弱、無法擴展,但它完成了價值閉環:用戶輸入信息,系統產生結果。Idowu強調,這個閉環的存在本身比閉環的技術實現重要100倍。因為只有在閉環里,你才能觀察到用戶是在哪一步猶豫、哪一步困惑、哪一步直接放棄。
數據層的優化可以等。索引慢?用戶不到100人時感覺不到。權限復雜?先用硬編碼的郵箱白名單。Idowu的原話是:「你的數據庫設計能優雅地處理100萬并發,但你的界面設計連1個用戶都留不住,這就是歸零風險。」
從"能運行"到"有人用"的死亡鴻溝
Medium文章里有個細節特別狠。Idowu問讀者:你GitHub上的私有倉庫數量,除以實際獲得付費用戶的項目數量,商是多少?他自曝的數字是7:1。七個"架構完美"的項目,一個有人付錢的東西。
這7:1的背后是一個被忽視的真相:SaaS產品的死亡 rarely 發生在技術層面,幾乎總是發生在認知層面。開發者把"我能建"等同于"有人要",把"系統能跑"等同于"產品成立"。數據庫優先的開發模式,本質上是在用技術確定性替代市場不確定性——既然我不知道用戶要什么,至少我能確定第三范式有沒有遵守。
Idowu提到一個反直覺的現象。那些最終跑出來的Solo Founder,早期代碼往往"很臟"——硬編碼、沒測試、技術債堆成山。但他們的共同點是:第一周就有用戶看到了界面,第一個月就有真實反饋進來。臟代碼+真實用戶,干凈架構+零用戶,市場選擇了前者。
他引用了一位匿名創始人的話:「我花了三個月把數據庫從PostgreSQL遷到CockroachDB,因為'未來可能需要全球分布式'。三個月后我有了零用戶和一份完美的分片策略文檔。我的競爭對手用Airtable當后端,已經有了200個付費客戶。」
Surface-First的操作手冊
Idowu在文章后半部分給出了可執行的檢查清單,針對Solo和小團隊場景:
第一,定義"表面單元"。不是MVP(最小可行產品),而是MVS(Minimum Viable Surface,最小可行表面)——用戶完成一次價值交換所需的最少界面元素。通常是一個表單+一個結果頁,或一個儀表盤+一個操作按鈕。
第二,禁止"基礎設施周"。第一周不準碰數據庫選型、不準搭CI/CD、不準比較云服務。工具限制為:前端用你最熟的框架,后端用Serverless或現成的BaaS(Backend-as-a-Service,后端即服務),數據庫用SQLite或Airtable。目標不是"能擴展",是"明天能給用戶演示"。
第三,建立"表面-反饋"循環。每48小時必須有一個真實用戶(哪怕是朋友)操作你的界面,觀察哪里停頓、哪里皺眉、哪里說"等等,這是什么意思"。Idowu強調:用戶不會讀你的代碼,他們只讀界面。界面上的困惑就是產品的死刑判決。
第四,延遲優化。性能問題?等真有100個并發再說。安全合規?等真有企業客戶提出SOC 2要求再說。Idowu的原話很直接:「 premature optimization(過早優化)是萬惡之源,但 premature infrastructure(過早基礎設施)是獨立開發者的頭號殺手。」
他特別警告了一種偽裝成勤奮的拖延:研究。讀遍所有React狀態管理方案的對比文章,比較完Supabase和Firebase的定價模型,畫出完美的ER圖——這些活動消耗的認知資源和寫代碼一樣多,但產出是零風險的幻覺。Idowu的建議是:用Google Sheets當數據庫的決定,應該在做完第一個界面后的10分鐘內做出。
當表面倒逼內部
文章最有爭議的部分是Idowu對"技術債務"的重新定義。他認為,Solo Founder的債務分兩種:用戶看不見的債務(數據庫Schema混亂)和用戶看得見的債務(界面流程斷裂)。前者可以欠,后者不能。
他的邏輯是:Schema混亂最多讓你未來重構痛苦,但界面斷裂讓你沒有未來。一個極端例子是,他建議早期用localStorage存用戶數據,直到有人真的抱怨"我換電腦了數據沒了"——這時候你才證明了兩件事:一,有人在乎你的數據;二,有人用了足夠久到換電腦。這是幸福的煩惱。
Idowu描述了一種"表面倒逼架構"的動態。當你被迫先寫界面,你會很快發現哪些數據真的需要持久化、哪些只是臨時狀態、哪些關系是核心約束。一個給200人用的發票工具,和給2萬人用的,Schema完全不同——但你在有200人之前,不可能知道"不同"在哪里。
他引用了一位Y Combinator校友的反饋:「我們Batch里活下來的公司,第一周都在用假數據演示。不是因為他們懶,是因為他們懂:在知道用戶要什么之前,任何'真實'的數據庫設計都是過度設計。」
文章結尾,Idowu回到那個7:1的比例。他說這個數字正在改善——不是因為技術變簡單了,是因為越來越多Solo Founder開始接受一種不舒服的工作方式:在準備好之前暴露,在完善之前發布,在自信之前驗證。
他最后一句話是:「你的數據庫不會因為你晚兩周設計而背叛你。但你的潛在用戶會因為你晚兩個月見面而永遠消失。」
所以問題變成:你現在的項目,用戶最早能在哪一天看到它的樣子?
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.