Lenovo Yoga Book 觸控筆與筆芯替代品

Lenovo Yoga Book 實在是令人驚艷的產品。那隻可替換筆芯的觸控筆可說是最大賣點。將觸控筆的筆芯換成原子筆筆芯後,可以放張紙在 Create Pad 上書寫並同步到 OneNote 記錄。不少消費者就是為了滿足手寫書寫感而買下它。

但是它給了我們兩種筆芯,卻只有一隻筆桿。說真的,應該很少有用戶會忍著不裝原子筆筆芯。然而帶著兩種筆芯換來換去實在很麻煩。Yoga Book 用戶絕對需要兩隻筆。還有,原子筆的筆芯是耗材,我們也想知道何處取得補充品。

Lenovo 網站上可以找到這些配件,但常常缺貨,更重要的是價格難以下手。替代品如下:

  • 觸控筆: Samsung Galaxy Note series Stylus
  • 原子筆筆芯: DT&CREATION Mini Star Refills

谷阿莫挨告事件看影評短片的合法性

谷阿莫是以製作「X分鐘帶你看完某某電影」系列短片聞名的網路紅人。近日被電影片商控告侵權,谷阿莫挨告。電影片商:於網路取得非法影片已侵權

一般對著作權有所了解的人,會想到以電影 90 分鐘以上的內容和短片不到 5 分鐘的內容比例來看,是否可以主張合理使用? 然而這類影評短片的製作者若要主張合理使用的話,片源的合法來源基本有兩種途徑。一是從片商公開的預告片,二是從自購的 DVD、BD 影像。而谷阿莫製作短片的片源並不合法,這正是電影片商之主張重點。

調整留言板(disqus)的使用內容

由於留言板的使用率非常低,且 disqus 系統會拖長網頁載入時間,所以我調整了我的留言板機制。

現在大部份文章都不會看到留言板了。具共同主題或同系列的文章,則會共用同一主題的留言板。

少量的意見回饋與交流,使用 twitter 和 facebook 足以。

台灣 119 求救簡訊 APP 使用說明與開發筆記

「台灣 119 求救簡訊」是整合了 GPS 定位與 SMS 文字簡訊功能的應用程式。當使用者遇難需要向 119 消防局報案求助時,這個應用程式可以利用 SMS 文字簡訊送出求救訊息和 GPS 位置,讓消防局更快掌握受困者的地點。

此類工具對經常從事戶外活動的人頗有用處,各地方政府亦有發行類似的 App 。例如新聞「定位神準!119APP救出摸黑的登山客」。但受限於我國政府單位的短淺目光,僅在 Android 和 iOS 的軟體市集上發布此類 App 。

我用 HTML5 和 JavaScript 設計了「台灣 119 求救簡訊」這個純網頁版本的 Webapp 。此外,受益於微軟在 Windows 10 時增加了 UWP (Universal Windows Platform, 通用 Windows 平台) 的應用程式模式,同樣的源碼可以直接包裝成 UWP App 供 Windows 安裝。

Touch IME HTML5 輸入法引擎使用手冊

Touch 輸入法 Copyright (C) 2013 遊手好閒的石頭成 <shirock.tw@gmail.com>

Touch IME is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License
along with this program.  If not, see
<http://www.gnu.org/licenses/lgpl-3.0-standalone.html>.

You should see https://rocksources.googlecode.com/ to get more information about Touch IME.

LGPLv3

List device path and product name of USB video devices

UVC (USB video class - wikipedia) 泛指使用 USB 連接介面的影像產品。一般使用者最熟悉的 UVC 設備就是 WebCam 。除了 WebCam ,還有數位攝影機、電視卡、或具有照相功能的設備。故一台電腦接了兩台以上的 UVC 設備並非罕見。

在 Linux 核心中,會為可用的 UVC 設備各自分配一個 dev 路徑,檔名為 video 編號。例如 /dev/video0, /dev/video1 。但是當你的電腦接了兩台以上不同的 UVC 設備時,你將發現系統缺乏清楚的訊息告訴你這些 dev 路徑與 UVC 設備的關係。你不知道這些 dev 路徑各自代表哪一台 UVC 設備。當你的應用軟體需要用 dev 路徑開啟特定設備時,這會帶給你一些小麻煩。

本文以 shell script 和 python 分別實作了一個列出 dev 路徑與其代表的 UVC 設備名稱的小工具。

學習 ECMAScript 6 - 語法補遺

本補遺所列者通常是簡化語法。功能性不強,我個人不常用。但為免閱讀他人程式時看不懂,還是需要整理列出。

使用命令列程式指定播放音效的音效裝置

同事在 linux 上設計一套基於影片的 Kiosk 導覽系統時,想在使用者操作時加入一些音效或語音提示。然而這個導覽系統本身會持續播放影片與聲音,故他必須在保持影片播放動作的狀態下,同時混入操作音效。

此外,在目標系統上,預期會有兩個音效裝置,即主機板內建音效裝置,和螢幕 HDMI 音效裝置。目標系統用螢幕喇叭,故也必須確保音效從 HDMI 音效裝置輸出。他希望用導覽系統內部呼叫命令列程式的方式簡單地實現這些需求。

Debian 套件版本新舊比較工具

我任職的公司使用 Debian 套件格式管理自行開發的各類軟體,也會將一些第三方的軟體打包為 debian 套件。套件維護者有時候會需要調整版本的描述方式,夾綴一些如 rev, update, fix 之類的字眼,以便使用者更容易理解套件的版本意義。但套件維護者在調整版本文字時,有時會搞錯版本文字所代表的新舊順序。例如 “1.0.0rev1” 和 “1.0.0-1” 何者代表的版本較新?

套件維護者需要一些工具幫助他決定如何調整版本文字的內容。本文介紹兩種比較版本文字新舊意義的方式。分別使用 dpkg 命令列工具與 python 的 apt_pkg 庫。

讓網頁在 Twitter 推文時顯示圖片 - 在 github pages 中加上 Twitter Cards 與 Open Graph 標籤

我最近轉推網頁文章時,注意到同樣只放上文字和連結的推文,有些來源的網頁在我沒有附上圖片的情況下,依然會在推文中顯示網頁中的圖片。而且這類型的推文愈來愈多。這種推文的效果很好,我也想在我的部落格 (使用 github pages) 中加上這種效果。

概觀

首先看下圖。圖中是兩篇同樣只放上文字和網頁連結的推文,但呈現效果卻不相同。

有無圖片效果的兩則推文

下方的推文只有文字內容。但上方的推文主動地顯示了該網頁中的圖片縮圖與摘要文字。看起來,上方推文的閱讀效果較佳。

虹膜辨識應搭配紅外線 LED 與紅外線濾鏡相機

大約一年前,我在「臉部辨識系統經驗談」提到虹膜辨識系統的可用性與照相鏡頭有很大的關係。當時,我認為日本 NTT 尚未徹底解決虹膜辨識系統的手機照相需求。

規劃將虹膜辨識應用於行動設備或家用消費級產品時,我們首先會想到一般的相機是否可用?遺憾的是,一般相機並不適合用於虹膜辨識。各位可以用自己的手機相機自拍眼睛周圍。從照片可以看出,由於反光等因素,甚至會在虹膜區域出現相機的倒影。故取出的虹膜特徵品質極差。

MQTT qos 機制,發佈者如何確認訂閱者收到訊息?

在 COSCUP 2016 無人機空汙監控物聯網 這場關於 IoT 實作經驗的議程中,與會者向講者提問了一個問題。大意是說透過 MQTT 發出控制命令後,有沒有辦法確認感應器收到命令了?

MQTT 的 qos 機制可以確保訂閱者收到訊息。但發佈方法是非同步動作,當方法返回時,並不等於訂閱者都收到訊息了。若發佈者想知道訂閱者是否收到或何時收到訊息時,確實需要多一道工作。

廢止紅十字會法是矯枉過正

首先說明中華民國紅十字會在國際上的關係。提到紅十字會的國際關係,就要提到三件事物。一個是概念性的「國際紅十字與紅新月運動」團體,另兩個則是具有正式組織架構的「紅十字國際委員會(ICRC)」和「紅十字會與紅新月會國際聯合會(IFRC)」。且 ICRC 和 IFRC 是兩個獨立組織,彼此沒有從屬關係。 ICRC、IFRC 以及各地紅十字會三者共同合作推動「國際紅十字與紅新月運動」。 ICRC 承認中華民國紅十字會,屬於「國際紅十字與紅新月運動」團體。但受限於 IFRC 的組織章程,中華民國紅十字會不是 IFRC 的會員。民進黨立委李俊俋說「中華民國紅十字會根本不被國際紅十字會承認」,顯然他沒有搞懂紅十字會組織間的關係。我也不知道他口中的「國際紅十字會」是哪個。

我的 USB DAC 連接方案

自從看了 xtreme 的 iFi Purifier2 開箱文後,我就在想能不能弄一個窮人版的。儘量拿一般人手上現有的零件,搭出一個便宜又有顯著效果的 USB DAC 連接器。

Part 1. FE1.1s

首先,第一個主角, axpro USB 2.0 Hub。

axpro USB 2.0 Hub

構造非常簡單,一個不到 150 元。原本是我帶筆電出差旅遊時用的,今天就請他為了數位音響界獻身。

Python Tools for Visual Studio 初步入門

Python Tools for Visual Studio (PTVS) 是一個銜接 Visual Studio 和 Python 解譯器的工具。現在是 Visual Studio 2015 安裝時的可選用內容。

注意,當你安裝 Visual Studio Community 和 PTVS 時, Visual Studio Community 安裝工具並不會一併幫你安裝 Python 解譯器,你得要自己下載 Windows 版的 Python 解譯器。推薦使用 CPython for Windows 。你可以選擇 Python2 或 Python3 。如果你打算用 Python 撰寫檔案處理小工具的話,我建議選擇安裝 Python3 ,它解決了 Unicode 檔名的處理問題。

Python 解譯器與 Visual Studio Community 的安裝順序並不重要。誰先裝都行。

2016年3月推薦主題文章

推薦主題文章 MQTT用戶端入門 :

另外,我在配合 Apache MQ 的 MQTT 模組時,遇到 qos 為 2 還是漏訊的情形。但配合 mosquitto 時就沒遇過。

最近規劃把 disqus 的最近留言 放到首頁側欄上。

上月底有點忙,配合「非本國國民自動通關系統」驗收,得到機場加班微調程式。硬體閘門廠商先後提供的控制規格文件和設備實際回報的內容不一樣。結果我得要自己一一觀察每個 sensor 的實際回報資料調整程式內的狀態表。這些人是在破壞軟體協作的信賴關係。

Debian 8 (jessie) WiFi 啟用後斷線

我的筆記型電腦 Thinkpad X200s 有好一陣子沒有使用 WiFi 網路。前兩天帶著出外勤時,才發現 WiFi 啟用後一下就斷線,之後再也連不上網路。不論是連接手機分享網路,或是無線 WiFi 基地台都相同。查看 dmesg 後發現下列錯誤訊息:

wlan0: authentication with xxxxx (try 1)
wlan0: authentication with xxxxx (try 2)
wlan0: authentication with xxxxx (try 3)
wlan0: authentication with xxxxx time out

MQTT用戶端入門 - 三、Python 用戶端程式設計

Debian 8 套件庫中提供了 python-mosquitto 作為 Mosquitto 的用戶端程式庫。但現在不用這個,改用 Paho 專案 提供的 Python 用戶端程式庫: Paho Python Client。此程式庫具有泛用性,連接對象不限於 mosquitto ,亦可連接支援 MQTT 協定的其他 MQ 服務。

系列文章