我利用 Flutter 開發了一款名為 OurCar 的應用程式,用來解決家人共享汽車時遇到的油費分攤與行程衝突等問題,並分享了我在技術選型、產品定義及使用者體驗設計上的心得。
這篇文章源於作者 Mendel Greenberg 為了改善家庭成員間共用汽車的體驗,開發了一款名為 OurCar 的應用程式。起因是家庭成員對於如何公平分攤油資感到困擾,傳統的「誰開到沒油誰去加」或單純記錄里程數的方式在執行上充滿摩擦,因此作者利用 Flutter 與 Pocketbase 打造了一個包含行程記錄、加油追蹤與預約功能的工具,試圖解決家庭內部的協作痛點。
Hacker News 的讀者對於這類「為了解決個人微小煩惱而開發」的專案展現了兩極化的看法。支持者認為,這正是現代開發工具與大型語言模型(LLM)發揮價值的最佳場景。有留言指出,作者善用 AI 來處理自己不感興趣的行政流程或命名工作,並選擇 Flutter 這種跨平台框架,是極具效率的決策。對於小規模、使用者僅限於親友的應用,軟體的「正確性」或「架構嚴謹度」並非首要考量,能解決實際問題才是關鍵。甚至有讀者分享,自己也曾透過 LLM 在短時間內生成僅供個人使用的工具,認為這種「微型軟體」的開發模式正逐漸成為主流。
然而,另一派觀點則對此開發過程中的「過度工程化」提出了強烈質疑。有評論直言,作者為了避免簡單的數學計算(里程差乘以平均油耗),竟然投入大量精力處理 App Store 上架、iOS 憑證與後端架構,這種行為被戲稱為「極致的懶惰導致了極大的勞動」。反對者認為,若只是為了記錄數據,開發一個簡單的網頁表單,甚至只是在伺服器上透過指令輸出一個 HTML 頁面就能達成目的,完全不需要處理繁瑣的行動裝置部署與審核流程。這種「為了刮鬍子而修整整座森林」的行為,在技術社群中引發了關於開發成本與實際效益的辯論。
此外,針對技術實作的細節,社群也提供了更具自動化思維的建議。部分讀者認為手動輸入數據終究難以持久且容易出錯,建議應該整合 OBD-II 藍牙適配器,直接從汽車電腦讀取油耗與里程數據,甚至結合感測器進行自動化的存在追蹤。這反映了技術愛好者對於「自動化」的不同層次追求:一派傾向於建立易用的輸入介面,另一派則主張應完全排除人為介入。儘管如此,這篇文章仍激發了其他讀者的靈感,例如有人正計畫為社區共乘制度建立類似的系統,認為這是一個極佳的參考案例。
在討論串中,讀者提到了幾項技術工具與概念,包括用於簡化開發流程的 Claude Code 代理開發工具,以及利用 OBD-II 藍牙硬體進行車輛數據自動化採集的技術方案。此外,也有人分享了透過簡單的 Shell 指令與 Web 伺服器快速發布微型工具的極簡主義開發思路。
相關文章
其他收藏 · 0