好用的 Heroku 平台即將取消免費方案,今年 11/28 後會關閉免費 Heroku Dyno,逐水草而居的免費仔們得尋覓新家囉。我在 Heroku 有個 LINE 機器人,雖屬好玩性質可有可無,想想還是為它找個落腳處,順便見識其他平台。上週看到 Cash 大分享一個可取代 Heroku 的好選...

遇上一個偶發錯誤,問題雖小(而且要很雖小才會遇到吧)也很快被修正,但細思極恐,令人發毛。 Windows 遠端桌面連線(Remote Desktop)的跨機複製貼上功能相信大家都有用過,你可以在本機複製文字、圖片,甚至檔案,在遠端主機按 Ctrl-V 或透過滑鼠右鍵選單貼上,達到跨主機傳遞資料的目標...

在 Windows 要完整備份跟還原資料夾很簡單,整個資料夾壓縮成 .zip 或 .7z 就好了。當資料毁損或遺失,解壓覆寫檔案即可還原。但解壓縮只能還原資料夾結構與檔案,不包含原本的 NTFS 權限設定,那權限有沒有辦法備份還原呢? 前幾天查資料時意外學到一招 - Windows 內建工具 - i...

昨天介紹的 ASP.NET Core Docker 做法有個小問題 - 若程式有用到本地時間,在本機執行與在 Docker 容器的結果會不同。原因是 Docker Image 的預設時區為 UTC,與本機不同。 用一小段範例重現問題。在 Program.cs 加入一個 timezone-check ...

ASP.NET Core 配合 Docker 是我目前自己架網站的主要做法,主流開發工具已有支援,像是 VSCode 有 Remote - Containers 延伸模組,Visual Studio 也內建 Docker 支援,但我學新東西習慣先嘗試不用工具徒手完成,藉此了解運作原理,之後再用工具省...

IE 從 IE9 開始支援 DOMParser,是解析 XML、HTML、SVG 的首選。 同事在 IE 用 DOMParser 處理 XML,硬生生踩到地雷。 用以下兩行程式即可重現問題: var xml="<rows><row><id>TEST1&l...

人生最常後悔的事之一 - SSD 買太小。 256G SSD C 槽剩不到 10GB 亮起了紅燈,看到系統碟空間不足我就會焦慮,開始動手清廢棄檔。上回學到比 WinDirStat 快 N 倍又能反映真實佔用空間的 WizTree,個人使用免費,是分析磁碟空間不足的首選。 查詢沒發現不合理大檔,就這裡...

前幾天提到 yield return 具有即時性高、省 RAM 省 CPU 的優點,更是串接出生產線模式的重要技術。我想起在 .NET 6 亮點快速巡覽提到 System.Text.Json 新增搭配 IAsyncEnumerable 應用的非同步串流解析功能。IAsyncEnumerable 不是...

我有個迷思 - USB/SSD 這類快閃記憶體儲存媒體,體積小資料密度高,不像硬碟有機械結構故障的風險,也不像光碟有塗料變質問題,是長期儲存資料的絕佳選擇。 但這兩天我才知道,SSD/USB 行動碟沒插電一直放著,時間太久資料是會消失的! 並不適用以年為單位長期保存資料。換言之,SSD 速度快、效能...

雖然有學過 IEnumerable 跟 yield return,遇到需要傳回集合或陣列的場合,我慣用的寫法還是一次將資料整理好,傳回 IList<T> 或 T[],很少想到用 IEnumerable 跟 yield return。大部分情況,兩種做法差異不大,但前陣子研究數百萬個檔案之...

書到用時方恨少,臨時有個需求要從 XML 查詢特定一筆資料,打算用 PowerShell 快速秒殺,卻卡住不知該怎麼寫,只能開了 Visual Studio 用 C# 搞定。 事後檢討,武功招式要能活用,得捲起袖子實際操演熟練,沒有看完教學上場就能出招制敵的好事兒,至少,我不是那種武學奇才,所以有了...

對,我又踩到隱形字元的坑! 同樣是 D:\,一個說目錄不存在,一個說存在是什麼鬼。 將有問題的 "D:" 貼到中文編碼解析工具,茶包立刻現形,是常見的地雷隱形字元 - Zero Width Space 0x200b。 踩到隱形字元不是新鮮事,怎麼冒出來的比較值得追究。經驗中這...

前陣子研究某個開源專案的密碼保存做法,想確認加密方法是否安全,學到一招很方便的 .NET 無腦加解密寫法,筆記備忘。 之前介紹過 PowerShell 有個 SecureString,可呼叫 Windows DPAPI (Data Protection API) 用不同機器不同登入身分專屬的金鑰加解...

上回介紹 IP 界的 Whoscall - AbuseIPDB 時有提到,網站只要掛上 Internet 就一定會被機器人騷擾,跑來網站東看西看,找漏洞鑽。這堆機器人有些屬亂槍打鳥,走海巡路線,先試探網站是否有回應,若有就用常見攻擊手法掃一輪,找到漏洞就算賺到,沒掃到就浪費幾個封包。如果網站本身沒有...