2020年4月8日 星期三

尊重你的隱私與自主權的免安裝免註冊雲端視訊會議自由軟體 jitsi

Zoom 的資安疑慮引發爭議, 資訊人權議題我另文再談。 這篇的重點是要推薦 jitsi。 我不要廢話、 你不要猶豫, 現在馬上用滑鼠中間鍵點進去開一個新分頁。 按下橘色的 「Start a Call」、 隨意命名一個不會跟別人撞山的會議室 (例如 Greg607f638e)、 允許它使用你的麥克風 (還有攝影機,如果有的話) 但不要勾選 「remember this decision」, 你就開始遠距會議了。 什麼? 不必註冊帳號? 沒錯。 你去公園找一張桌子坐下來, 需要註冊帳號嗎? 使用 jitsi 當然也不必向哪一家公司註冊帳號。

2020年3月14日 星期六

被 genfromtxt 打敗

先前寫 python 程式時, 一直都用 自己手工打造的 csv 讀檔副程式; 但基於 「站在巨人肩膀上」 的理念, 仍舊希望改用別人寫好的現成函式庫。 剔除 速度超慢且有點難用的 pandas 之後, 發現 numpy 的 genfromtxt 貌似很好用。 (比 loadtxt 有更多彈性。) 結果在一個奇怪的 bug 卡好久 :-(

2020年3月6日 星期五

給微軟視窗俘虜們的逃脫地道入口: virtualbox 版的貴哥實驗室

綠色虛線是 guest OS 的勢力範圍 這學期我的課程環境被關在 virtualbox 虛擬機環境裡面, 於是我製作了 虛擬機映像檔。 請把 bionic-g20C.vdi.gz (或者更新的版本, 看檔名就知道) 下載回你的 MS Windows、 將它解壓縮 (原始的 .gz 檔可作為備份,不要刪除!) 並且 安裝 virtualbox for windows

2020年2月21日 星期五

輕量級虛擬化 lxd 容器取代 kvm 虛擬機

好啦, 如果需要完整的虛擬化, lxd 當然無法取代 kvm, 畢竟 lxd 只是容器 (container) 技術。 但如果只是想要玩玩不同的 distribution 的命令列, 那麼 lxd 就超合適的。 如 lxc 筆記 所說 (但換個比喻) 如果把 lxc 想成是車子的主體, 那麼 lxd 就是方向盤/排檔桿/剎車/儀表板等等 「使用者介面」。 凡是 「lxc-xxx」 長像的指令 (例如 lxc-ls、 lxc-create) 都屬於底層 lxc 套件, 是修車師傅專用的, 我們駕駛人一般不太去用它。 這篇介紹適用於駕駛人、 長得像 「lxc xxx」 的指令 (例如 lxc ls、 lxc launch)。

2020年2月13日 星期四

ubuntu 18.04 上的陽春 lxc 3.0 筆記

Linux 上的虛擬技術 技術一直在演變。 以 container 類的技術來說, 最早的主流是 OpenVZ; 後來是 lxc。 Docker 原先也是架構在 lxc 之上, 後來才改用他們自己的底層。 lxc 從 1.0 到 2.0 到 3.0, 每一次大改版都改了很多東西, 以致許多舊版教學文失效。 後來出現了 lxd, 可以想成是 lxc 的新介面, 或是套餐加值選項 -- 所以 lxd 無法單獨存在, 底下一定要有陽春單點主餐 lxc。 (大推 觀念文 ) 於是大家都轉而使用 lxd 口味的 lxc。 這兩天想學陽春版 lxc, 發現 lxc 3.0 相關的中英文文件還真的有點難找。 趕快簡單筆記一下。 [2/21 lxd 教學文 也寫好囉!]

2020年2月1日 星期六

scatplot: 一張試算表, 散點圖畫到飽

scatplot web app 範例: 兩政黨各縣市得票比例對照圖 大選過後, 一直想畫 「X黨 vs Y黨在各縣市得票比例對照圖」。 過年時節在家躲疫情, 終於有時間完成了 scatplot 。 這原本是舊文 「三種方式產生 scatter plot / bubble chart」 的範例。 其中的 gnuplot 版跟 python 版都很短。 這次大改版 javascript (web app) 版, 變得很實用, 完全搶了 (未更動的) 其他兩版的鏡頭。 不只是程式宅, 我相信政黨智囊團、 財報型股民、 社會科學家、 自然科學家.. 任何需要以視覺化方式理解數值資料的朋友們也會喜歡這三個 demo 網頁: 太陽系天然衛星軌道常數 兩政黨各縣市得票比例對照圖 股票財報指標圖

2020年1月20日 星期一

xls 或 xlsx 批次轉成 csv

看到 非典型大選分析 的漂亮地圖版大選資料視覺化, 我也手癢了。 到 中選會資料庫 的歷屆公職選舉資料, 找到 2020-第 10 屆 立法委員選舉, 下載了 「各投票所得票明細及概況」, 用 unzip -O cp950 檔名.zip 解壓縮。 下一個問題是: 要怎麼把一堆 xls 檔轉成 csv 檔? 對, 可以用 libreoffice 一個一個打開、 另存新檔。 可是我希望可以用指令批次處理啊~

2020年1月16日 星期四

pip 套件繪製相依圖

我的 python 程式都是小程式, 但經常用到很多相依套件。 (因為我既懶惰又很會搜尋 ^_^) 偶爾會想知道: 到底這些套件彼此之間有什麼樣的相依性? 例如有一天想畫股票 K 線圖, 爬文得知至少有 mplfinance 跟 dash 兩個現成函式庫可用。 那到底它們各自又會引進哪些函式庫呢? 交集多嗎? 這時就可以用 pipdeptree 來畫圖。 以 python3 為例, 用 pip3 install --user pipdeptree 安裝 pipdeptree, 並且也必須安裝 「想要研究相依性的那些套件」, 然後: pipdeptree --graph-output svg -p dash,mplfinance > dash-mplfinance.svg 就產生一張壯觀的 svg 圖, 可以用瀏覽器打開來欣賞。

dash 跟 mplfinance 這兩套件各自引進哪些函式庫呢? 交集多嗎?

2019年12月5日 星期四

哼旋律搜尋歌曲

很久以前曾把玉山銀行送的音樂 CD 轉成 mp3, 前一陣子才拿到車上聽。 前幾天聽到其中一首好療癒而旋律卻又好簡單的歌, 不斷重播, 感覺靈魂都要飛起來了... 可是找不到原來的 CD 了啊~ 今天用 「search song by melody online」 找到 midomi。 哦, 需要我哼歌啊~ 我害羞~ 於是安裝 poc-streamer 套件, 把主旋律截出來: mp3cut -o ~/main.mp3 -t 00:14-00:40 05-audiotrack.mp3 再開一個終端機用 mpg123 ~/main.mp3 播音樂, 同時把麥克風堵到喇叭前面, 在 midomi 上按下麥克風按鈕, 真的找到一首 「春の日の花と輝く」, 原來這是愛爾蘭民謠。

接著用 「irish folk song spring」 找不到我要的歌, 回頭用 「春の日の花と輝く」 終於找到英文歌名: 「Believe Me, If All Those Endearing Young Charms」。 我喜歡聽樂器版, 於是搜尋時加上 「intrumental」。 點來給相同頻率的朋友們聽:

2019年10月12日 星期六

Keras MobileNet 版的圖片辨識遷移學習

這學期的 AI 課程改用 google colab。 因為它對 caffe 的支援不佳, 所以先前 用 caffe 做遷移學習的範例 不能拿來上課了。 還好搜尋到很棒的一篇教學文 Transfer Learning using Mobilenet and Keras 以及伴隨的 github 專案 ferhat00/Deep-Learning, 於是改寫一下重新上架成為: ckhung/keras-mobilenet。 圖像辨識的整個流程變得超級簡單!

先下載 ckhung/keras-mobilenet 及訓練資料集 dog_behaviors.zip, 再上傳到你的 google drive。 假設你已玩過 google colab, 那麼從 google drive 裡面打開 km-transfer.ipynb 應該就會自動進入 colab。 接下來就照著 km-transfer.ipynb 做囉!

google 圖片搜尋批次下載

google 圖片搜尋 「dog drinking」 玩機器學習時, 需要有大量的訓練資料。 以圖片辨識來說, google 圖片搜尋是最佳幫手。 但是要手動把搜尋結果一張一張存檔, 很累呀! 這時可以用 github 上 (有五、六千顆星) 的 google-images-download 來批次下載。

2019年9月7日 星期六

commento 幫任何靜態網頁加上留言/投票功能

想幫你的網站加上留言功能嗎? 熱門的 disqus 有一些隱私疑慮; 於是我搜尋到 commento。 比較簡單的方法是 到官網註冊付費使用。 點 「Try the Demo」、 在文字輸入框打幾個字、 (不必登入) 勾選 「comment anonymously」、 點 「add comment」, 你的留言就出現了。 管理員也可以設定禁止 (或審查過才准發表) 匿名留言。 至於投票, 當然一定要登入, 算是簡單版的防止灌票。 畢竟我是因為官網強調尊重隱私而被吸引過來的, 當然就選擇自己架囉。 以下安裝設定筆記分別在 Debian 9 及 lubuntu 18.04 執行。 自己架的版本只成功了 http 而沒有 https。