經驗分享-彰化一整天的blog
彰化一整天的由來 早期的blogger要寫簡介,想說取一個比較特別沒人用過的名稱,有人說過名字要讓人好奇,說明後又不會忘記,還要跟自己有關,在布袋戲中有看到一頁書的角色,想說自己的名字是明和,明和的明是日月合在一起來,日跟月就是一整天,因為這個名字太普遍,我又是彰化人,所以就在前面加上彰化變成【彰化一整天】。
2026年2月25日 星期三
2026年2月5日 星期四
請比較Netlify 與Vercel的差異(免費方案)
在 2026 年的開發環境中,Netlify 和 Vercel 依然是前端部署的兩大龍頭。雖然兩者的核心功能相似(如 Git 自動部署、自定義網域、SSL 憑證),但在**免費方案(Free Tier)**的細節與定位上有顯著差異。
以下是針對免費方案的詳細比較:
1. 核心規格與限制比較
| 功能特性 | Netlify (Starter) | Vercel (Hobby) |
| 商業用途 | 允許商業/盈利專案 | 禁止,僅限個人/非商業專案 |
| 流量帶寬 (Bandwidth) | 100 GB / 月 | 100 GB / 月 |
| 構建時間 (Build Time) | 300 分鐘 / 月 | 無明確時間限制(但有併發限制) |
| Serverless Functions | 125,000 次請求 / 月 | 1M (100萬) 次請求 / 月 |
| 函式執行時間限制 | 10 秒 (後台函式可達 15 分) | 60 秒 (Hobby 版固定限制) |
| 邊緣運算 (Edge) | Netlify Edge Functions | Vercel Middleware & Edge |
| 併發編譯數 | 1 個 | 1 個 |
2. 關鍵差異分析
Netlify:靜態網站與「懶人包」功能
Netlify 的強項在於它提供了一套完整的網站解決方案,許多在 Vercel 需要串接第三方服務的功能,在 Netlify 都是內建的:
Netlify Forms: 只要在 HTML 加入一個標籤,就能直接收集表單資料(免費版每月 100 筆)。
Netlify Identity: 內建的使用者認證系統,適合需要簡單登入功能的網站。
商業友善: 這是 Netlify 免費方案最大的亮點——你可以用免費版架設個人接案的官網或小型電商,這在 Vercel 是違反條款的。
Vercel:Next.js 的「親生父母」與極致效能
Vercel 是為了高效能 Web 應用(尤其是 SSR 伺服器端渲染)而生的:
Next.js 完美整合: 如果你使用 Next.js,Vercel 的部署體驗與功能支援(如 ISR, Image Optimization)永遠是最領先的。
API 效能更佳: Vercel 的 Serverless Functions 啟動速度與邊緣網路分發通常優於 Netlify,適合對延遲敏感的 App。
開發者體驗 (DX): 它的部署預覽(Preview Deployments)和工具列(Vercel Toolbar)非常強大,方便開發者進行排版與效能測試。
3. 如何選擇?
您可以根據專案性質進行選擇:
選擇 Netlify,如果:
你正在架設商業性質的小型網站(如公司官網、個人品牌、作品集接案)。
你需要內建表單 (Forms) 或簡單的帳號系統,不想自己寫後端。
你使用的是 Hugo, Jekyll, Eleventy 等靜態網站產生器。
選擇 Vercel,如果:
你的技術棧是 Next.js 或 React。
你需要頻繁使用 SSR (Server-Side Rendering) 或邊緣運算。
你的專案是純個人學習或非營利用途。
你對網站的載入速度與全域 CDN 效能有極高要求。
💡 小提醒:2026 年的計費趨勢
目前兩家平台都逐漸轉向「信用點數(Credits)」或更細緻的用量計費(Usage-based)。在免費方案下,請特別注意 Netlify 的 Build Minutes(如果專案很大,編譯次數頻繁容易耗盡)以及 Vercel 的非商業限制(若被偵測到有營收行為,可能會被要求強制升級 Pro 版,每月 $20 起)。
AI回答:
https://gemini.google.com/share/ae52788975d9
使用supabase的優缺點(免費方案)
Supabase 是一款基於 PostgreSQL 的開源後端服務(BaaS),被譽為「開源版的 Firebase」。對於預算有限的開發者或初創專案,它的**免費方案(Free Plan)**非常慷慨,但也存在一些限制。
以下為你整理 2026 年最新版本的 Supabase 免費方案優缺點分析:
🚀 優點:為什麼選擇 Supabase?
標準 SQL 與 PostgreSQL 威力:
與 Firebase 的 NoSQL 不同,Supabase 提供完整的 PostgreSQL 資料庫。這意味著你可以使用複雜的 Join 查詢、外鍵約束,以及豐富的擴展外掛(如
PostGIS處理地理資訊)。強大的 RLS 安全機制:
利用 PostgreSQL 的 Row Level Security (RLS),你可以直接在資料庫層級定義誰可以讀寫哪些資料,安全性極高且邏輯清晰。
內建身份驗證(Auth):
免費版即支援 Email/密碼登入,以及多種第三方 OAuth 登入(如 Google, GitHub, Apple 等),並內建 50,000 個每月活躍用戶 (MAU) 額度。
即時資料同步(Realtime):
透過訂閱資料庫變更,你可以輕鬆開發聊天室、即時數據看板等功能。
開發體驗極佳:
提供自動生成的 API 文件,並支援 TypeScript 自動類型生成,開發速度非常快。
⚠️ 缺點與限制:免費方案的「坑」
閒置暫停機制(Pausing):
這是最顯著的缺點。 如果你的專案連續 7 天沒有活動,Supabase 會自動暫停該專案。雖然可以手動恢復,但恢復過程需要幾分鐘,這對於低頻率使用的個人小工具來說較為麻煩。
資料庫大小限制:
免費版僅提供 500MB 的磁碟空間。雖然這對純文字資料通常足夠,但如果你有大量複雜索引或儲存二進位資料,很容易達到上限。
無自動備份:
免費方案不包含每日自動備份。如果資料誤刪或發生意外,你無法透過官方後台一鍵還原。建議定期透過 CLI 手動匯出資料。
連線池限制:
免費版的 CPU 是共享的,且資料庫連線數(Direct Connections)相對較少。在高併發場景下可能需要透過內建的
PgBouncer進行連線池管理,否則容易發生逾時。邊緣函數(Edge Functions)數量:
雖然免費版可使用,但通常有總量與啟動次數的限制(約 50 萬次調用/月),且不支援自訂網域。
📊 免費方案核心規格 (2026 參考值)
| 項目 | 免費額度 | 備註 |
| 資料庫大小 | 500 MB | 包含資料與索引 |
| 每月活躍用戶 (MAU) | 50,000 | 對於多數專案非常足夠 |
| 檔案儲存 (Storage) | 1 GB | 適合存放頭像、小文件 |
| 出口流量 (Egress) | 5 GB / 月 | 圖片多的話需注意 |
| 活動專案數 | 2 個 | 每個帳號限兩個啟動專案 |
| 備份 | ❌ 無 | 需手動手動維護 |
💡 總結建議
適合使用 Supabase 免費方案的情境:
MVP 原型開發:驗證點子、快速產出 Demo。
個人 side project:只要定期有在使用(避免被暫停),是極優的選擇。
學習 SQL 與後端邏輯:它是學習 PostgreSQL 最好的實踐平台。
如果不適合,可以考慮:
若你的資料結構極度不固定,Firebase (NoSQL) 可能更靈活。
若不希望專案被暫停,可以考慮 Cloudflare D1 或 Turso(雖然它們的功能完整度不如 Supabase)。
2026年2月4日 星期三
連結試算表跟firebase的優缺點
這是一個非常經典的技術選型問題。簡單來說,Google Sheets(試算表)是「給人看的」,雖然可以用來當作簡易資料庫;而 Firebase 是專門設計「給程式用的」 專業後端服務。
選擇哪一個,取決於你的專案規模、預算以及對「即時性」和「安全性」的需求。
以下為您詳細分析兩者的優缺點:
1. Google Sheets (作為資料庫使用)
這通常是透過 Google Apps Script 或第三方 API (如 SheetDB) 將試算表當作後端。
✅ 優點 (Pros)
極低門檻、可視化管理: 這是最大的優勢。你 (或你的非技術背景客戶) 可以直接打開試算表新增、修改、刪除資料,完全不需要寫 SQL 語法或進入複雜的後台。
完全免費: 對於小型專案,Google Sheets 本身沒有儲存成本。
開發速度快: 適合製作 MVP (最小可行性產品) 或原型,不需要架設伺服器。
內建協作: 團隊成員可以同時在試算表上工作。
❌ 缺點 (Cons)
效能極差: 當資料量超過幾千筆,讀寫速度會顯著變慢。它不是為了高併發 (High Concurrency) 設計的。
API 限制 (Quota): Google 對 API 呼叫次數有嚴格限制 (例如每 100 秒只能請求 100 次),一旦超過,服務就會中斷。
資料關聯性弱: 它沒有真正的關聯式資料庫功能 (Relational constraints),很容易因為人為操作導致資料格式錯誤。
安全性低: 很難做到細顆粒的權限控管 (例如:A 用戶只能看 A 欄位)。通常是「全有或全無」的讀寫權限。
2. Firebase (以 Firestore 或 Realtime Database 為主)
Firebase 是 Google 收購並整合的一套完整後端即服務 (BaaS),專為 App 和 Web 開發設計。
✅ 優點 (Pros)
即時同步 (Real-time): 這是 Firebase 的殺手級功能。資料庫一更新,所有連接的客戶端 (手機、網頁) 會在毫秒級內自動更新,非常適合聊天室或即時看板。
極佳的擴充性 (Scalability): 即使有百萬用戶,Firebase 也能自動處理流量擴展。
強大的安全性: 透過
Security Rules,你可以精確設定誰可以讀寫哪一筆資料 (例如:只能修改自己建立的文章)。生態系整合: 直接整合了 Google 登入 (Auth)、雲端函式 (Cloud Functions) 和推播通知。
離線支援: 原生支援離線模式,網路斷線時 App 仍可操作,連線後會自動同步。
❌ 缺點 (Cons)
學習曲線: 開發者需要了解 NoSQL 的資料結構 (JSON 格式),與傳統的 Excel 表格思維不同。
查詢限制: NoSQL 資料庫在進行複雜查詢 (如多重條件篩選、模糊搜尋) 時,比 SQL 資料庫困難且受限。
費用風險: 雖然有免費額度,但若程式寫法不佳導致大量的讀寫操作,費用可能會暴增 (Firebase 是按讀寫次數計費)。
資料管理較麻煩: 雖然有後台,但不如 Excel 那樣可以直觀地「大量複製貼上」或「拉公式」。
🚀 綜合比較表
| 特性 | Google Sheets (連結試算表) | Firebase (Firestore) |
| 適用對象 | 行銷人員、行政、小型內部工具 | 專業開發者、商業 App |
| 資料量級 | 小 (數千筆以內) | 超大 (百萬、億級) |
| 讀寫速度 | 慢 (秒級延遲) | 極快 (毫秒級) |
| 並發處理 | 差 (容易撞到 API 上限) | 極佳 (自動擴展) |
| 後台管理 | 由 Excel 介面直接管理 (最強項) | 需透過 Firebase Console 或自製後台 |
| 安全性 | 低 (連結外洩即全公開) | 高 (細緻的規則設定) |
| 成本 | 免費 | 免費額度大,超過後付費 |
💡 結論:你該選哪一個?
選擇 Google Sheets,如果:
這是一個內部工具 (如:公司訂便當系統、請假表)。
這是一個靜態網站的 CMS,而且內容不常變動。
你需要讓不懂程式的人可以直接進去改資料。
你的預算是 0,且使用者非常少 (例如 < 50 人)。
選擇 Firebase,如果:
你要做一個正式對外的 App 或網站。
你需要即時功能 (如:即時庫存顯示、聊天功能)。
資料量會持續增長,且你需要確保資料不會遺失或錯亂。
你需要使用者登入系統 (會員機制)。
AI產生連結
https://gemini.google.com/share/592b1a5c2651
2026年1月28日 星期三
【教學】如何取得 LINE User ID 並透過 Google 試算表自動發送訊息
在開發 LINE 機器人(LINE Bot)時,許多開發者會遇到一個問題:「為什麼我的 LINE ID 跟機器人看到的 User ID 不一樣?」
一、 建立 LINE 官方帳號與啟用 API
登入管理頁面:前往 LINE Official Account Manager。 建立帳號:點擊「建立」,填寫基本資料(帳號名稱、電子郵件等)完成建立。 啟用 Messaging API: 進入後台,點擊右上角的「設定」。 在左側選單選擇「Messaging API」。 點擊「啟用 Messaging API」,並選擇或建立一個「提供者(Provider)」。
二、 進入 LINE Developers 取得關鍵資訊
進入控制台:點擊「LINE Developers Console」。 取得 User ID: 在「Basic settings」分頁最下方,找到 Your user ID。這是一串以 U 開頭的亂碼,請將它複製備用。
取得 Access Token: 切換到「Messaging API」分頁。 捲動到最下方找到 Channel access token。 點擊「Issue」按鈕產生權杖並複製。
加入機器人為好友:在同頁面可以看到機器人的 QR Code,請務必先用手機掃描並加入好友,否則測試時會收不到訊息。
三、 設定 Google 試算表與 Apps Script
準備試算表:建立一個新的 Google 試算表。 開啟腳本編輯器:點擊選單「擴充功能」 > 「Apps Script」。 撰寫程式碼:將以下結構的程式碼貼入編輯器中:
function sendLineMessage() {
var token = "你的Channel_Access_Token";
var userId = "你的User_ID";
var url = "https://api.line.me/v2/bot/message/push";
var payload = {
"to": userId,
"messages": [{
"type": "text",
"text": "這是一則來自 Google 試算表的自動推播訊息!"
}]
};
var options = {
"method" : "post",
"payload" : JSON.stringify(payload),
"headers" : {
"Content-Type" : "application/json",
"Authorization" : "Bearer " + token
}
};
UrlFetchApp.fetch(url, options);
}四、 執行測試與權限授權
存檔並執行:點擊上方的「儲存」圖示,並點擊「執行」。 授權驗證:第一次執行時,Google 會要求授權。 點擊「審查權限」。 選擇你的 Google 帳號。 看到「Google 尚未驗證此應用程式」時,點擊左下角「進階」 > 「前往『專案名稱』(不安全)」。 點擊「允許」。
確認結果:執行完畢後,檢查你的手機 LINE,應該就會收到機器人發出的訊息了!
五、 注意事項與限制
每日發送上限:LINE 官方帳號的輕量方案(免費版)目前提供每月一定的免費訊息額度(詳細則數請參考 LINE 官方最新公告,通常 API 推播每則都會計入額度)。 User ID 的唯一性:記得!同一個人在不同機器人下的 User ID 是不同的,更換機器人時需重新取得 ID。 自動化應用:你可以結合 Apps Script 的「觸發條件」功能,設定定時發送(例如每天早上 8 點發送提醒)或是在試算表內容更動時自動發信。
-
存股是許多投資人的長期策略,但如何有效率地追蹤每一筆投入的成本、配息以及目前的即時損益呢?今天我們要分享如何利用 Google 試算表的 GOOGLEFINANCE 函數,建立一個能自動抓取台股行情、並透過顏色視覺化損益的「存股投資格」。 核心功能介紹 這套系統不僅能幫你省去...
-
今天跟大家分享一個實用的Google教學:如何使用Google Apps Script來自動化複製您自訂的股票清單每日股價。 之前我分享的腳本大多是查詢「當天」的股價,但如果您想追蹤長期的股價變化,建立自己的歷史資料庫,那麼這個新腳本將會非常有用。它會自動將您設定的股票每日收盤價...
-
Google Sheets (試算表) 可以很方便地分享「僅供檢視」的連結給他人,讓對方可以查看內容但不能修改原始檔案。但如果你想分享 Google Forms (表單) 讓別人參考或作為範本使用,可能會發現直接分享的選項比較像是「允許編輯」,這就可能導致你的原始表單被別人修改,...


