【茶包射手小記】無法生效的 .gitignore
2025 開年第一天就踩雷,耗了快二十分鐘才找出問題,筆記留念。 問題出在我明明在 .gitignore 寫了 .venv,Git 怎麼就是無視我的設定,硬要把 Python .venv 虛擬環境目錄包進版控。 起初以為會不會是檔名打錯字之類的低級問題,睜大眼睛看到眼眶都痛了都沒看出端倪。而在 V... Read More
View Article開發雜記 - JPG MIME Type、JFIF 格式與 LEADTOOLS
2025 年第二天,來個低級錯誤連發。 寫了如下程式發送圖文信。(參考:使用 C# 寄送圖文並茂郵件) public static void TestEmbImgMail() { var mailBody = """ <div> ... Read More
View Article教書教到 88 歲,這才是完美的人生呀~
Gilbert Strang 是美國麻省理工學院(或該說是全世界)的傳奇教授,他在 2023 年五月 15 日上完最後一堂線性代數後,結束 61 年的教書生涯,年僅 88 歲便毅然決然退休(喂)。 系主任課後致詞提到一件趣事:每每有畢業多年的校友返校找他聊天,憶起當年數學系有一門很棒的代數課,老師好... Read More
View Article【古蹟維修日記】JSONP 呼叫無聲卡與 MIME Sniffing 資安漏洞
記錄最近維護古蹟遇到的問題一枚。 接到通報,老系統某個使用 JSONP 呼叫第三方網頁執行指定作業並接收回覆,不知何時開始失效了。 客戶端程式類似這樣: <!DOCTYPE html> <html lang="en"> <head> &... Read More
View ArticlePython 小技巧 - Polyglot/Jupyter Notebook 引用 .py 修改後不會自動更新
下這張圖說明我使用 Polyglot Notebook/Jupyter Notebook 時的一個小困擾。 在 Polyglot/Jupyter Notebook Cell 中我們可以使用 from util import XXX 引用寫在 util.py 裡的函式。例如,我在 util.py 寫... Read More
View ArticleOpenAI API 傳送圖檔給 GPT-4o 分析
OpenAI 去年 5 月推出的 GPT-4o 模型,最大亮點是支援多模態,能同時處理文字跟影像。 因此,我們可以在 ChatGPT 貼照片請它分析: 或是拍照數學考卷讓 AI 解題: 我已經試過呼叫 OpenAI API 彙總文章、翻譯印尼文、整合第三方服務... 等各式雜耍,但還不會傳圖檔給... Read More
View Article隨筆 - Nvidia Project DIGITS、Linux 與 Windows WSL2
照片為老黃在 CES 2025 展示 30 萬的新皮衣(咦?)及 3000 USD 的新一代掌上型超級電腦 - Project DIGITS. Project DIGITS 只有巴掌大小,裡面塞進一顆 GB10 Superchip 核心,GB10 包含 Grace CPU (20 個 Arm 核... Read More
View Articlebyte[] 之 36 進位表示法 - 使用 JavaScript 與 C#
講到用文字表示二進位資料,一般不外乎會用 16 進位數字串或 Base64 編碼。 以長度 60 的 byte[] [0xe5,0xa6,0x82,0xe6,0x9e,0x9c,0xe6,0x98,0xaf,0xe5,0x8b,0x87,0xe8,0x80,0x85,0xe6,0xac,0xa3,0... Read More
View Article資安小常識 - 為什麼不建議在網址用 QueryString (?a=...) 傳資料?
幫忙 Review 前端網頁程式,發現某網頁用了以下寫法: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <... Read More
View Article【茶包射手日記】某些 YouTube 影片無法在某些網頁內嵌播放
YouTube 支援在網頁內嵌 IFrame,讓你可在自家網頁直接播放 YouTube 影片,我的部落格文章有時也會用。 最近幫忙查了一起案例,某些 YouTube 影片無法在某些網頁內嵌播放,必須單獨在 YouTube 開啟才能看。只有某些影片不能播,而且相同的網頁可能放在 A 網站 OK,放在... Read More
View Article