跳至主要内容

跑錶

· 閱讀時間約 4 分鐘

從去年(2024)四月開始每天跑步之後,我買了一支跑錶,這支跑錶可能是我近年來覺得最值得、最改變生活方式的購買,不誇張。

You Are What You Measure(你就是你測量的東西)

有一句常被歸功於管理大師彼得杜拉克(Peter Drucker)的名言:

You can't improve what you don't measure.

(你無法改善你沒測量的東西。)

就像想要減肥時需要體重╱體脂機一樣,如果想要改善身體,對各種數據量化管理也是很重要的。沒有數據的話,主觀感受往往會欺騙你:你可能覺得今天跑得很快,但實際上比昨天慢了一分鐘;或是覺得自己睡得不錯,但其實深度睡眠時間嚴重不足。

有用的跑錶功能

這真的不是業配文(Wiwi.blog 這裡永遠不會有業配文,除了我自己的產品以外),但如果你想知道的話,我跟檸檬卷目前都是戴 Garmin 的 Forerunner 255,我用的是一般版,她的是縮小版。

以下是一些我覺得真的對生活很有幫助的跑錶功能:

  • 🏃‍♂️ 跑步時的定位、自動每公里計時、心率、消耗熱量計算:跑步時,即時知道自己的配速和心率是超級重要的(所以我覺得我朋友 JR 能不靠跑錶跑半馬超強);雖然用手機也能做到,但拿著或綁著手機跑我覺得很不舒服耶,而且長時間握著手機跑步的話,跑完手可能會張不開。
  • 🏀 其他戶外運動監測:在公園打籃球時,跑錶會用 GPS 定位記錄你在場上跑動的距離,監測心率,估計消耗熱量,讓你知道自己到底是在打籃球還是只是在場上散步。
  • 🔋 身體負荷狀態:它會監測每天的活動,告訴你現在身體的負載有多大,避免過度訓練或訓練不足。
  • 💤 睡眠分數、睡眠教練:每晚它會給你一個睡眠分數,讓你知道自己究竟睡得如何。你可以把它當作一個遊戲,每天想辦法提升分數。跑錶也會根據當天的身體狀況,精確地建議你應該要睡多久。
  • 🔥 動態卡路里:跑錶的熱量計會把「因為運動而多消耗」的熱量額外顯示出來,也可以像是玩遊戲一樣地想辦法提升這個數字。
  • 🎮 最大攝氧量(VO2Max)估計:你可以把最大攝氧量數值當作是體能的等級,想辦法努力提升就對了。每天看這個數字就好像是玩 JRPG 練等級一樣,但跟遊戲不同的是,提升這個等級對人生是真的有實質幫助的。我已經從去年的 46 練到 55 了,每升一等都是不簡單的喔!

健康的「被數據綁架」

總之,對於想要改善身體的人,特別是有跑步習慣的人來說,我覺得跑錶非常值得投資!不一定要買 Garmin,但有了數據,就會讓你有進步的動力和方向。

與其被社群媒體上的愛心數和觀看數字綁架,不如來追求真實世界的身體數據;當所有 App 都在爭相讓你多滑五分鐘的時代,只有跑錶是真心希望讓你多活五年。這可能是現代人唯一能「被數據綁架」卻反而更健康的情況吧。

自走式拉鍊

· 閱讀時間約 2 分鐘

全球最大的拉鍊製造商 YKK(你身上衣服的拉鍊八成就是他們做的),最近開發出了「會自己拉」的拉鍊!他們是把齒輪和馬達內建在拉鍊中,透過有線控制器就能實現遠端操作,讓拉鍊自己動起來。1

YKK 釋出了兩個 YouTube 影片:

  • 第一個示範了在室外環境下,兩片五公尺高的布被「自走式拉鍊」自動拉合;
  • 另一個是在室內,把兩座氣柱式帳篷用拉鍊連接。

這兩種場景都是以前用人去拉拉鏈會很麻煩的情況。

我已經預想到這個科技在幾年後會怎麼樣被濫用了。不久的將來,我們恐怕會看到「智慧牛仔褲」的廣告:

「只要下載專屬 App,你就可以用手機控制拉鍊!支援語音指令『嘿,拉鍊,開開!』,還能遠端操控所有已配對的智慧服裝。一切只需要每個月五美金的訂閱費!」

當然,廣告絕對不會告訴你的是,你可能會在尿急時收到「您的拉鍊 App 需要更新(300 MB)才能繼續使用」的通知;更別提駭客也可能入侵你的智慧拉鍊,讓你在公眾場合突然露鳥,這可就變成真正意義上的「資安外洩」了。

Footnotes

  1. https://www.ykk.com/newsroom/g_news/2025/20250424.html

FFmpeg

· 閱讀時間約 4 分鐘

最近收到一封讀者來信。信裡提到他的一個困擾:

  • 他有一個資料夾,裡面堆滿了日常的螢幕截圖,久而久之很難以整理
  • 他希望電腦能在每天晚上 11:55 自動把這些截圖做成影片,以當天日期命名存檔
  • 他已經問過一些人,都沒有得到解答,認為這是個「難以實現」的困難需求

其實這個問題一點都不困難!這個聽起來需要高級程式設計技巧的任務,其實只要兩個簡單的終端機工具就可以搞定了:

  • ffmpeg - 有關影片、聲音的萬用工具(所有作業系統都有)
  • crontab - 自動排程工具(Linux 和 macOS 有內建)

FFmpeg:超好用(但一般人不知道)的影音工具

FFmpeg 是多媒體界的萬用工具,它可以處理幾乎所有跟影片、聲音檔案相關的任務——不管是轉檔、剪輯、縮放、合併、效果……只要你想得到的,它八成都能做到。更重要的是,它是完全免費且授權自由的軟體!

雖然 FFmpeg 是一個純文字工具,沒有花俏的圖形介面,但基本操作其實很簡單。例如,想把一個 .mp4 影片檔案轉成 .wav 聲音檔?只要簡單的一行指令就可以了:

ffmpeg -i 原始影片.mp4 輸出檔案.wav

說到 FFmpeg 的強大,好和弦頻道的內嵌字幕也是用它製作的。我甚至曾經做過一個「把 256 部影片同時播放」的影片,也是靠 FFmpeg 才能完成的。

(這不用 FFmpeg 真的做不到!你可以嘗試把 256 個影片拉進 Final Cut Pro 或 Premiere 的時間軸,然後享受電腦變成暖爐、原地當掉的過程。)

將圖片合併為影片

回到讀者的問題,要把當下資料夾裡面的所有 .jpg 圖片檔合成影片,並且用當天日期命名,也只需要一行指令:

ffmpeg -framerate 1 -pattern_type glob -i "*.jpg" -c:v libx264 -pix_fmt yuv420p -vf "scale=1920:1080:force_original_aspect_ratio=decrease,pad=1920:1080:(ow-iw)/2:(oh-ih)/2" "$(date +%Y-%m-%d)_screenshots.mp4"

以上指令的意思是:

  • framerate 1:一秒播一張圖片(你可以調整這個數字來控制播放速度)
  • -pattern_type glob -i "*.jpg":讀取當下資料夾中所有的 .jpg 檔案
  • -c:v libx264 -pix_fmt yuv420p:使用最常見的 H.264 和 YUV420P 編碼,確保大部分裝置都可以播放
  • -vf "scale=1920:1080:force_original_aspect_ratio=decrease,pad=1920:1080:(ow-iw)/2:(oh-ih)/2":把解析度調成 1080p、保持圖片長寬比、置中、並且在周圍填上黑色
  • "$(date +%Y-%m-%d)_screenshots.mp4":以「年-月-日_screenshots.mp4」格式命名輸出檔案(例如 2025-04-29_screenshots.mp4)

Cron:讓電腦在你睡覺時自動工作

有了把截圖變成影片的方法,接下來只要讓電腦自動在每天晚上 11:55 執行就可以了。這時候你可以用 Linux 和 macOS 都有內建的自動排程工具 crontab

只要在終端機裡輸入 crontab -e,它就會打開一個文字編輯器,在裡面加入以下內容並存檔即可:

55 23 * * * cd /截圖資料夾/路徑 && ffmpeg -framerate 1 -pattern_type glob -i "*.jpg" -c:v libx264 -pix_fmt yuv420p -vf "scale=1920:1080:force_original_aspect_ratio=decrease,pad=1920:1080:(ow-iw)/2:(oh-ih)/2" "$(date +%Y-%m-%d)_screenshots.mp4"

這段文字的意思是叫電腦在每天 23:55 時,先進入截圖的資料夾(cd),然後執行剛才的 ffmpeg 指令。以後你就可以安心睡覺,醒來後就會發現昨天的截圖已經被自動整理成影片了!

你不需要記得這一切

最後要強調的是,你完全不需要記得以上這些複雜的語法!你只需要知道「有這些工具的存在」,以及會在終端機裡做簡單的操作即可。

詳細的語法只要問大型語言模型就可以了。例如,進到 Claude 或 ChatGPT 裡,問:「我想用 FFMpeg 在一個影片當中,每隔 10 秒截一張圖存檔,要怎麼做?」1,它就會自動產生語法,然後你只要貼進終端機裡,頂多改一下檔名、路徑就可以囉!

別害怕終端機和純文字介面工具,它們是隱藏在你電腦中的強大神器;有時候只要一行指令,就能完成你過去用滑鼠點來點去半小時才能做到的事,再也不需使用怪怪的網站上的怪怪的工具,真的用過之後就回不去了!歡迎看我的這篇貼文來入坑終端機。

Footnotes

  1. 解答:ffmpeg -i input.mp4 -vf "fps=1/10" output_%04d.jpg

平價牛排

· 閱讀時間約 2 分鐘

跟檸檬卷去板橋玩,在板橋後站附近找到一間平價牛排館。我超級久沒有享受到這種台式牛排了!我住的地方附近都沒有這種店,彷彿平價美食都已經被高租金驅離市中心似的。

我點了沙朗牛跟雞腿排雙拼。原本會有鐵板麵,但不想吃澱粉的話可以把鐵板麵換成蛋(所以總共會有兩顆蛋),肉上桌時的鐵板滋滋聲和黑胡椒醬的香氣好爽啊!

餐前有附一碗真的很不錯喝的酥皮濃湯,還有提供我最愛的 A1 牛排醬和好久不見的 BB 辣醬(小時候超愛在炒飯當中加這個),當然自助飲料吧(我不喝含糖飲料所以沒喝)和冰淇淋(用的是品質還不錯的餅乾筒)也是不能少的!

所有這些——雙拼主餐、濃湯、飲料、冰淇淋——只要 350 元!當然肉的品質不能跟 Smith & Wollensky 相提並論,但是以這個價位來說,已經沒有什麼好抱怨的了。

反觀我在台北市中山區,花同樣的 350 元可能只能吃到一碗沒什麼料的麵;天龍國的物價真的太可怕了,真的是每天都在當盤子

我們吃完之後又去附近的中和環球購物中心逛,裡面店家的價格也比台北市親民很多。

如果你住在台北市,偶爾去板橋晃晃、吃吃喝喝真的不錯,去了才會發現自己每天繳的「台北市民」有多高。

花花

· 閱讀時間約 2 分鐘

我突然意識到,在這個 blog 上我還沒有曬過狗,這真是一大疏忽,今天就讓我來彌補這個重大的缺失。

她是花花,女生,今年十歲。

嚴格來說,花花不是我的狗,而是檸檬卷家的狗;但因為我很常去檸檬卷家,我跟花花還是培養了一定的感情的。

去檸檬卷家的時候,我們常常都會帶花花到河堤去散步。她是那種不需要牽繩也不會亂跑的狗。在河堤的時候她會自由地到處玩耍——看看這裡、聞聞那裡,但同時總是時刻掌握主人目前的位置。當我跟檸檬卷故意分開一段距離時,花花會在我們兩個人之間往返奔跑,確認我們兩個都還在視線範圍內。

最近檸檬卷想帶花花去洗牙,我才發現原來狗狗洗牙算是一個「小手術」,不但需要全身麻醉、而且超級無敵貴!原來我們身為人類可以洗牙是這麼幸福的事啊,最近去洗一下好了。

其實我從小就是狗派的,我甚至有點討厭貓(因為小時候被鋼琴老師家的貓攻擊過);但命運總是充滿戲劇性——我後來反而先養了貓,然後變成了一個超級貓派!

但我還是很喜歡狗啦,我夢想以後有一天我可以在家裡同時擁有一狗一貓。老實說,同時擁有一狗一貓比養育兩個人類小孩吸引我太多——牠們不會要求你買最新的 iPhone 給牠、不用接送牠們上才藝班,也不用擔心校園霸凌或青春期叛逆問題。可惜目前住的地方不方便養狗,希望以後有那個機會實現我的「毛孩家庭」夢想了。

雷雨天玩手機

· 閱讀時間約 3 分鐘

你家有電子設備被大雷雨時被閃電打壞的經驗嗎?我在這輩子好像才發生過一兩次,都是很久以前了。住在台北的好處之一,就是一整年好像也不會有幾天是大雷雨,所以不太需要擔心雷擊的問題。

不過關於雷擊的危險,還是知道一下比較好。巴西聖保羅大學能源與環境研究所的研究指出,雷雨天不只可能會弄壞電子設備,甚至可能會要人命!特別是當你正在做一件很日常的事:一邊充電一邊用手機。

⚠️ 研究原文 PDF 連結

兩個真實案例:

  • 2022 年 1 月 4 日在巴西伊塔帕熱(Itapajé),兩位兄弟在家中因電擊意外喪生。事發經過是,在雷雨天時,其中一位兄弟在將手機充電器插入插座時,發生了強烈的電擊,影響到了另一位兄弟,兩人當場倒地失去意識。兩兄弟被送往市立醫院急診室時,已經沒有生命跡象。(新聞連結
  • 同年 5 月 8 號,一位 43 歲公務員,在使用連接電源的手機時遭到電擊身亡。(新聞連結

研究人員收集了實際發生的事故資料,測量了手機充電器的特性,以及用鋁板模擬人握住手機的情況;最後用一種叫 EMTP 的軟體來模擬整個「雷電→室外輸電線→變壓器→家中電線→充電器→手機→人體」的電流路徑系統。

結論是,當閃電擊中家附近的電線時,一部分的強大電流會通過這條路徑,最終到達手中的手機:

"Figure 14 shows the magnitude and waveform of the current circulating in the victim's heart. It can be seen that the current reaches a peak value of 23 Amperes... The current values can cause severe damage to the victim and cardiac arrest, indicating that using a smartphone charging from the socket in a rainy situation with lightning is hazardous for users."

(圖 14 顯示了通過受害者心臟的電流大小和波形。可以看到電流峰值達到 23 安培……這些電流可能造成嚴重傷害和心臟驟停,表示在雷雨天時使用正在插座充電的手機,是非常危險的。)

要知道在一般情況下,只要 0.1 安培就可能致命了,可見 23 安培是多可怕的數字。

至於要怎麼防範?研究報告的最後一段給了四個建議

  1. 👋 雷雨期間避免摸到插著電的電子裝置
  2. ⚡️ 安裝突波保護器,並且定期檢查
  3. 🔌 一發現開始打雷,立刻把手機充電器從插座上拔下
  4. 🏠 確保家中的電氣接地系統正常

我幾乎從不一邊插電一邊用手機,不是因為我特別謹慎,而是因為我用的是去 Google 化的自由軟體系統手機。沒有 Google 的跟蹤間諜程式碼,手機電量超持久!看來自由軟體不只可以讓人逃離科技巨頭的監控,還有防止被雷劈的額外好處。

網路已死

· 閱讀時間約 3 分鐘

各位人類們,恭喜大家,我們正式成為網路上的少數族群了!

根據 2025 年最新出爐的 Imperva 不良機器人報告(Bad Bot Report),網路上的機器人流量首次超過了人類,佔所有網路流量的 51%!

網際網路死亡論」(Dead Internet theory)已經不再是一個陰謀論,而是正在發生的日常現實:

  • 當你在社群媒體裡滑來滑去時,看到的許多內容很可能是 AI 生成的
  • 這些內容背後的帳號購買機器人假流量,幫這些內容按讚、留言
  • 平台的演算法偵測到這些內容互動很多,就更加推薦它們
  • 各種 AI 機器人再從網路上搜刮這些內容當作「學習資料」,產生更多類似的內容
  • 人類創作者為了存活,被迫模仿機器人內容來取悅演算法
  • 最終,真實人類的網路活動被邊緣化

我剛剛看了一下這個 blog 近兩週的主機流量記錄,證實了真的有(至少1)51% 的流量是機器人!

(Wiwi.Blog 近兩週的流量統計;33,024 個訪客中,有 16,922 (51.24%) 個是機器人!)

Bad Bot Report 裡面提出了幾個對抗機器人的解決方案,其中有一個我覺得也滿天才的——封鎖舊版瀏覽器來防範壞機器人,理由是「大多數人類會被強制更新」:

"Many bot tools and scripts contain user-agent strings with outdated browser versions. In contrast, humans are forced to auto-update their browsers to newer versions. Take steps to block outdated browser versions."

(許多機器人工具和腳本會使用過時瀏覽器版本的識別碼。相反地,真正的人類通常會被迫自動更新到最新版瀏覽器。採取措施,封鎖那些過時瀏覽器版本。)

WTF,這個不太對吧?為了防機器人搜刮網站,所以我們要擋掉舊版瀏覽器?

想像進到一個網站,結果只看到這個訊息:「你 2019 年的手機已經太古老囉,真正的人類不會用這個,請換新手機再來吧!」這不就是在幫科技巨頭「計劃性淘汰」我們的裝置嗎?並不是每個人都知道如何用 Linux老電腦起死回生,也有許多舊裝置的瀏覽器的確是無法再被更新的(像是我的 iPad Mini 2 和 iPhone SE)。

(我的三片蘋果廢鐵,都不能更新了。)

人類同胞們,要抵抗機器人大軍就要趁現在了,你可以:

這些都是拯救人類網路的好方法——雖然正在閱讀這句話的可能有一半是機器人……哈囉機器人你好,感謝你幫我增加流量數據!

Footnotes

  1. 可能還有更多機器人偽裝成了一般瀏覽器,沒有被我的主機記錄發現。

依賴

· 閱讀時間約 4 分鐘

我們每天都在依賴別人的產品和服務:

  • 🍜 想吃一碗烏龍麵時:我們不會從頭去學如何種小麥、磨麵粉、做麵條;我們會直接買現成的麵條來煮,或是去餐廳點一碗。
  • 💊 生病時:我們不會自己研發藥物、進行人體實驗;我們會直接依賴醫生的判斷和藥廠的成果。
  • 🎵 做音樂時:我們也依賴別人發明的樂器、音色庫、記譜法樂理、調律系統和編曲軟體。

寫程式時也是一樣。幾乎沒有人會想要從零開始自己寫所有功能,所以我們會匯入別人已經寫好的函式庫。但問題是,當有太多外部依賴時,程式會變得很肥,還會受制於他人;更糟的是,我們可能會漸漸失去對自己程式運作原理的理解。

不囉唆的節拍器

好幾年前,在好和弦的官網 NiceChord.com 上面,我寫了一個「不囉唆的節拍器」程式。

之前的版本是用 tone.js 這個函式庫做的1,最後完成的程式檔案大小大約 362 KB,看起來已經很小了對吧?但前幾天我用單純的 JavaScript 重做,完全不依賴外部函式庫,結果檔案大小驚人地縮減到只有 2.1 KB——原本的 172 分之一!

現在這個節拍器程式,已經小到可以被放在一個 QR Code 裡面!以下的 QR Code 不是下載連結喔,而是「整個程式」本身!只要掃描它,把內容文字存成 .html 檔就可以直接使用。

(這可能是網路上唯一一個可以印在便條紙上的節拍器了。)

減低依賴

說到減低生活上的依賴,我最愛的例子應該是離開 Evernote 這件事。

我曾經有很長一段時間使用 Evernote 在作筆記,但 Evernote 的依賴超多:

  • 需要使用特定的專有 App 才能編輯筆記
  • 筆記的儲存空間需要每個月持續付費
  • 要同步筆記,需要依賴單一廠商的雲端服務
  • 雲端服務需要依賴持續的網路連線
  • App 本身也需要依賴新版的 macOS 和 Windows 系統運作
  • 而要更新到新版的 macOS 和 Windows,都依賴你擁有特定的硬體或網路帳號

要使用 Evernote 作筆記,我就得要滿足這些依賴性。再加上,如果 Evernote 突然改變介面、大幅漲價,或者最糟的情況——倒閉,我的筆記就像被綁架的人質一樣,付了贖金都不見得拿得回來。

我現在已經改用 Markdown 檔案來做筆記,Markdown 可以被幾乎任何文字編輯器開啟,不依賴任何特定 App 或作業系統,也可以很輕易地配合任何形式的雲端同步服務。

更低依賴性的作法是使用鉛筆和筆記本,這樣的話連電腦和電力都不依賴,永遠都不會遇到系統更新或格式不相容的問題。當然,你得要小心別把咖啡打翻在上面(紙張對液體的相容性仍然有待改進)。

這個網站的依賴性很低

你現在所在的 Wiwi.Blog 網站也不依賴複雜的科技。它只是很單純的靜態網頁,不需要高速的電腦也能流暢瀏覽,甚至連「現代」的瀏覽器都不是必要條件。就算是用超極簡的 Dillo,或者終端機裡的純文字瀏覽器如 w3m,都還是可以順利閱讀內容。

(Wiwi.Blog 在超低科技極簡瀏覽器 Dillo 也可以正常運作)

健康的依賴關係

檢查自己生活和工作中的「依賴鏈」,看看其中是否有環節是被單一公司壟斷的。如果有的話,考慮調整工作方式,或至少準備一套備用方案。這樣當這個脆弱的環節出問題時(它一定會出問題的),我們才不會手忙腳亂。

我們雖然無法避免所有的依賴,但至少可以避免那些「今天不更新就無法使用」的 Apps。謹慎地挑選依賴對象吧!

Footnotes

  1. 它就是一些別人寫好的,讓你在網頁中可以發出聲音的程式碼。
    https://tonejs.github.io/

😀💬

· 閱讀時間約 1 分鐘

📊😀😁😂🔢3️⃣7️⃣9️⃣0️⃣,🔜🇹🇼📚4️⃣8️⃣0️⃣8️⃣。

Unicode v16.0 標準定義了 3,790 個表情符號,已經快要跟教育部頒布的《常用國字標準字體表》的 4,808 個字一樣多。)

😀🟰🈶,🔢🇹🇼✏️🔄。

(如果每個表情符號能剛好對應到一個中文字的話,數量已經足以當作一套中文的替代書寫系統了。)

📄🚫🎨🖌️🖼️,👉😀✨👌:

(現在在文章裡也不太需要插入美工圖案了,用表情符號就好:)

  • 🚫📎📁,➕💾。(不需要額外夾檔,又省空間。)
  • 📄📝,😀🎀✨👍。(排版時當作裝飾也很好用。)
  • 🌍🌐,🔍😀💯。(幾乎任何場合都可以找到搭配的表情符號。)

🗿🇪🇬📜➡️📱😂🤣,👥📞💬🔙⏳。

(從埃及的象形文字到現代的表情符號,人類的溝通方式完成了一次偉大的復古。)

咔~呸~

· 閱讀時間約 2 分鐘

每天早上在公園跑步時,繞不到一兩圈,就可以聽到周遭有人在「咔~呸~」;這些在公園周遭草地上吐痰的,幾乎清一色是老男人。

其實我喉嚨也常常會卡痰,但我從來沒有想過要在公共場所把痰吐出來;卡痰的話,不是清一清喉嚨之後吞下去就好了嗎?吐出來真的會比較舒服嗎?而且,當你旁若無人大聲「咔~呸~」的時候,沒想過周圍的人正在努力壓抑他們的反胃感嗎?

或者是我還太年輕(今年就要 40 了,我的天),還沒體會到吐痰的真諦?也許到我六、七十歲時,我也會成為公園中那個豪邁「咔~呸~」的老男人,誰知道呢?

說到「咔~呸~」,之前檸檬卷很愛吃的一個巧克力捲「Caprice」,也被我們戲稱為「咔~呸~」。(沒錯,我剛剛把我們的私密暗號分享給你了)

(圖片來自 papadopoulou.gr 官網)

這款「Caprice」在全聯就買得到;我跟檸檬卷一致同意它是世界上最好吃、餡料最濃郁的巧克力捲!真心不騙!它有一種神奇的魔力,一不小心就會一次把整罐(115 公克∕550 大卡)吃掉,讓你體重數字急速飆升。因為它太危險了,所以我們現在都不敢輕易購買。