howler.js 現代 Web 音訊/音源播放函式庫
要在網頁上放一段音樂可以透過 <audio> 標籤做到,不過要更進階的功能時, <audio> 標籤就顯得不足,例如 <audio> 不支援透過 XHR 的方式取得音訊,你得自己實作這項功能才行,
Posted on Sep 20, 2023 by Amo Chen ‐ 1 min read
要在網頁上放一段音樂可以透過 <audio> 標籤做到,不過要更進階的功能時, <audio> 標籤就顯得不足,例如 <audio> 不支援透過 XHR 的方式取得音訊,你得自己實作這項功能才行,
Posted on Sep 20, 2023 by Amo Chen ‐ 1 min read
2023 年 6 月,微軟發生 1 起資安事故,造成 38TB 的資料暴露在網路上,這 38TB 的資料中還包含 2 位前員工的硬碟備份,其中含有密鑰、密碼、3 萬則通訊軟體(Tea
Posted on Sep 19, 2023 by Amo Chen ‐ 2 min read
不可否認 Python 以其優異的生態系與社群資源為開發帶來速度優勢。
不過每個應用都有效率極限, Python 當然也不例外,而且 Python 天生比起 JavaScript, Java 等語言更容易遇到效能瓶頸,這時候通常有 3 種選擇:
選項 1 是最簡單的,只要能夠找到更快的寫法或者更好的套件,就能夠緩解問題,再撐一陣子;選項 3 則是最困難的,要有足夠的時間以及負責人的支持之下,才有可能進行,畢竟所有的功能都必須改寫之外,測試也是需要全部重新來過,更何況通常公司專案都有時程壓力,選項 3 通常都是難以說服高層的選項;至於選項 2 則是折衷選項,建議選項 1 已經無法解決問題時採用,目前很多 Python 套件為了效率也都會採用選項 2 的做法,例如 orjson 就是以 Rust 語言實作的 JSON parser 。
目前 Python 與 Rust 的介接主要靠 PyO3 , 不過步驟稍微複雜一些,本文將介紹如何透過 rustimport 套件,極度簡化介接 Python 與 Rust 的方法,讓開發 Python 擴充套件可以更快樂、簡便!
Posted on Sep 18, 2023 in Python 模組/套件推薦 , Python 程式設計 - 高階 by Amo Chen ‐ 4 min read
不知道你有沒有這種困擾,經常要找 1 份資料時,只記得關鍵字,卻不知道它存在哪個地方,到底是 Slack? 還是 Google Workspace? 還是在 Gmail ? 這個痛點被 curiosity 給發現,並且提出解決
Posted on Sep 16, 2023 by Amo Chen ‐ 1 min read
pgJQ 是 1 個很有趣的開源專案,它實作了 1 個 PostgreSQL 的外掛(plugin),可以用 SQL 操作 jq 指令,例如: SELECT jq('[{"bar": "baz", "balance": 7.77, "active":false}]'::jsonb, '.[0].bar'); 會產生以下結果: jq ------- "baz" pgJQ 蠻適合應用在
Posted on Sep 15, 2023 by Amo Chen ‐ 1 min read
近年來很多電腦視覺處理的技術落地開枝散葉,例如手機的人臉辨識、自動駕駛都是電腦視覺處理領域的應用,但我想絕大多數的人應該工作都跟電腦視覺處理
Posted on Sep 14, 2023 by Amo Chen ‐ 1 min read
正當我以為 Poetry 會稱霸 Python Package Manager 的時候,才發現有 1 個 Package Manager 殺出重圍,那就是 Hatch ! 而且 Hatch 還不少專案、公司使用,這之中包含 FastAPI, Pydantic, Spark, tox, Uvicorn 等開源專案,以及 Anaconda, Databricks, Elastic, Google,
Posted on Sep 13, 2023 by Amo Chen ‐ 1 min read
「巨型網站成長從無到無限大,技術架構大揭秘」 一書是由曾擔任阿里巴巴架構師的李智慧所撰寫,李智慧擁有許多巨型架構的經驗,也對分散式運算相當熟稔
Posted on Sep 12, 2023 by Amo Chen ‐ 1 min read