除了有能力投入無限資源、時間窮盡測試的人膽敢號稱可以做出 bug-free 軟體系統,剩下就是就是天真無知的新手以及狂妄自大的天才。

“I believe that the final bug in TeX was discovered and removed on November 27, 1985. But if, somehow, an error still lurks in the code, I shall gladly pay a finder’s fee of $20.48 to the first person who discovers it. (This is twice the previous amount, and I plan to double it again in a year; you see, I really am confident! )” 《TeX: The Program》, Donald E. Knuth

《The Art of Computer Programming》 的作者 Donald Knuth 已經提供了典範[1],即便如此自信自己的軟體是無蟲的,他仍然送出了超過兩千張支票。

Donald 在幾年前的一個訪問中[3],提供了給年輕人的幾個建議,

1. 眾人追捧、人云亦云的方向更需要特別小心是錯誤的。
2. 盡可能接觸各種領域,那些是組成正確知識觀的基礎。

基於這兩個建議,我對於想要自許法律系統可以 bug-free 的理工人有幾個提問。身為一個軟體工程師就先別爭論那些何謂公平[7]的哲學問題[5]、法律系統[6]的差異、維持社會秩序的制度或是教化功能的監獄政策[8]。針對問題寫好一個 bug report 是基本技能
1. 針對了隨機殺人案例加進了特例,這個特例不會造成對於其他事件的 regression issue ?
2. 能夠定義問題才能寫出好的 test cases. 你是否可以定義出「公平正義」,又你知道公平正義隨著社會演化、地理區域、時間變化的動態概念嗎?
3. 最常發生失誤的不是 code (法律條款),而是人。這些 code 都是由人執行,你知道這期間有多少腦殘錯誤[4]?更別說透過政治手段扭曲法條解釋或是碰到惡意濫用漏洞的 Cracker 了。誰都經歷過研究 seurity vulnerability 寫 exploit 的小屁孩時代吧?有些小屁孩是永遠不長大的。

純粹是覺得理工人應該要寫好 bug report.

[1] BUG,規範,斷言和調試_缺陷管理_領測軟件測試網 http://www.ltesting.net/ceshi/ceshijishu/qxgl/2011/1104/203457.html
[2] Knuth reward check http://en.wikipedia.org/wiki/Knuth_reward_check
[3] My advice to young people http://www.youtube.com/watch?v=75Ju0eM5T2c
[4] 證據為何會說謊?改革鑑定制度、究責失職人員~刑事鑑定制度改革記者會 http://%E8%85%A6%E6%AE%98%E9%8C%AF%E8%AA%A4%EF%BC%9Fwww.jrf.org.tw/newjrf/index_new2014.asp?id=4248
[5] http://en.wikipedia.org/wiki/Philosophy_of_law
[6] http://en.wikipedia.org/wiki/List_of_national_legal_systems
[7] http://en.wikipedia.org/wiki/Justice
[8] http://en.wikipedia.org/wiki/Penology

原文發表於: http://www.weibo.com/p/1001603847877410613709

这问题从 2012年2月前开始, Canonical 聘顾 Jonathan Riddell 全职进行 Kubuntu 项目。2012 后由于无商业客户采用,于是停止官方支持,Jonathan 不愿做新项目,加入新公司 Blue Systems 后继续运营 Kubuntu 社区项目。Canonical 仍将他视为 Kubuntu 项目领导,相对于其他社区版本一视同仁提供相关资源,这包含运算资源等等软件基础建设、差旅补助、活动补助、社区纪念品等。

但是自从一 两年前,Jonathan 对于各种 Canonical 的各种不满加深了沟通上的歧见。像是明文规定的补助项目,他希望可以改善先吃 Pizza 后报帐(2)的程序,Ubuntu 社区联系人明确回应了处理方式与流程。即便这个问题应该到正确的社区列表上讨论,但是他却在无关但是更多开发者关注的 ubuntu-devel 提出,企图引起注意。更别说后来再次否认 Ubuntu 社区联系人提供了餐费补助(3)。

这些重要议题的歧见演化出拒绝合作的行为。各种情绪上不满,让他开始到处找 Canonical 的可疑问题,发布了数个不同的质疑,包含了法律(5)、财务(6)、社区治理办法等等。许多质疑都是相当重要且有建设性,问题是他拒绝接受合作。

从社区委员会通知信中指出

  • 拒绝接受社区理事会研究的结果,虽然他就是当初要求调查的人。
  • 只要不顺心就公开私下讨论邮件。
  • 刻意扭曲对人的说法与立场。
  • 指控其他社区成员不诚实公正。
  • 指控社区理事会冷漠处理。无视整个团队花了许多时间与精力处理他的问题。
  • 在公开或私下沟通中,恶意的对待的社区理事会与 Canonical
  • 以他的领导角色的身份造成社区分歧,而非促成社区合作。

许 多事项都可以在公开的邮件列表看到讨论与他的行为。此处不再列举,研究了这几个月的数个讨论串、长达几百封信的争论。从个人观点看来,这完全符合笔者七年 前写的文章「来乱者去死」(1) 的各种特质。在这种处境下,他已经有建设性无法领导社区。而这个处置是请 Kubuntu 提名另外一位更善于协调沟通的领导,并保留 Jonathan Riddell 其他社区开发者的权限,他仍可提交、评论、继续提出质疑。

这 些离题的纷争困扰社区发者,而非实际的推进项目。当然,最后的处理方式十分令人不快,移除社区抬头的作法也相当伤人。但是目的是 Jonathan 可以继续纠结,但是社区可以不用分心而继续走下去。至于关于 Kubuntu 的社区委员会中的政治与利益问题,可见 Ken Vermette 的分析(7)。

欢迎讨论 Jonathan 的各种指控,包含法律、财务问题等。但是恕我不回应未先爬文的一行仇恨文。授权等问题后续再逐一回应。

利益揭露: 本人任职于 Canonical 担任 Commercial Engineering 部门 Technical Architect.

参考资料

因為發展中國家,往往缺乏基礎建設,天災發生時往往缺乏可用的最新數位地理圖資。每次有災難發生的時候,開放街圖(Open Street Map)的 Humanitarian OpenStreetMap Team (HOT)[1] 會組織志工小組,分工補足當地圖資,提供需要現場數位圖資的外地救援團隊[16]。

有錢出錢、有力出力, 美國國務院 U.S. Department of State’s Humanitarian Information Unit[2] 也這樣鼓勵。

很可惜的台灣社群因為政治人物蔡英文[3]轉發林雨蒼[4]的文章,鼓勵新手加入,以至於引起一些政治立場不同的人[10][11][12][13][14][15]攻擊[5][6]與消費[7]。

像 是聯合新聞[7]中的專家在 2010 年的時候消費過開放街圖社群對於「海地大地震」[15]的急難地圖,今年卻站在反面立場不建議志工加入 HOT Project,不知道是不是記者報導的解讀錯誤。可以知道是這位「專家」這麼多年已來帳號還是只有一筆已經被刪除的編輯紀錄[8] (當然也很有可能用了分身帳號,以匿名繪製某些地方法規禁止的地圖,像是中國) 否則按照交了會費就是專家的邏輯,我每年繳稅,所以我應該是治國的專家。

而所謂的專業,就是資深圖客協助撰寫入門手冊、改進協同工作流程、開發自動稽核工具。無論是事故還是日常畫圖,新手加入總是難免會犯一點錯,像是無意重開已經被志工稽核過得工作圖區,倒不是刻意搗亂。郵件論壇協調人出來抗議之後,其他圖客也著手協調衝突與協助新手。

本次事件的相關紀錄會被整理在 OpenStreetMap Taiwan hackpad[9] 上。

[1] Humanitarian OpenStreetMap Team http://hot.openstreetmap.org/
[2] MapGive http://mapgive.state.gov/
[3] 蔡英文 Tsai Ing-wen https://www.facebook.com/tsaiingwen/photos/a.10151242056081065.442660.46251501064/10152651639131065/?type=1&theater
[4] 林雨蒼 – 動態時報相片 https://www.facebook.com/photo.php?fbid=10206334564859959&set=a.4811161873909.2192213.1142107210&type=1
[5] 張中一 – 把這兩則放在一起 你就會希望 林雨蒼去吃屎 害了多少無辜的人 https://www.facebook.com/chongyie/posts/10153273865887162
[6] 變態箱民與不笑熊 – 動態時報相片 https://www.facebook.com/1472939446282503/photos/a.1472954112947703.1073741828.1472939446282503/1588347498075030/?type=1
[7] 鍵盤救災? 專家籲開放街圖讓專業的來 https://video.udn.com/news/309347
[8] OpenStreetMap | schee 的修改集合 http://www.openstreetmap.org/user/schee/history
[9] 2015-Nepal-HOT-Activation-FAQ-in-Tawain/2015尼泊爾地震救難行動FAQ – osmtw.hackpad.com https://osmtw.hackpad.com/2015-Nepal-HOT-Activation-FAQ-in-Tawain2015%E5%B0%BC%E6%B3%8A%E7%88%BE%E5%9C%B0%E9%9C%87%E6%95%91%E9%9B%A3%E8%A1%8C%E5%8B%95FAQ-T23YYSb39zE
[10] 你這麼好騙,你家裡人知道嗎? http://goo.gl/prlPJF
[11] 變態箱民與不笑熊 http://goo.gl/54TAEx
[12] 台灣藍蛆 http://goo.gl/8qn4sq
[13] 藍白拖的逆襲 http://goo.gl/reIGPR
[14] 藍色小精靈 http://goo.gl/Iycm7V
[15] Haiti Qake2010 Bar Camp Canberra2010 http://www.slideshare.net/sabman/haiti-qake2010-bar-camp-canberra2010
[16] 伊波拉爆發時 BBC 對 HOT 幾位參與者的訪談,英國紅十字會也表示,這些地圖讓援助團隊更容易安排資源配置,拯救了生命: https://www.youtube.com/watch?v=d50Rgt5ej0w

過年的時候常常想趁著好彩頭試試手氣,除了加碼的樂透彩之外,台灣彩卷也加碼推出幾款新的刮刮樂。新的產品勝率比平時還高一點,機率都可以透過獎金結構計算得出 。

以下依照彩卷價格提供 2015 的購買攻略

  • 一百元 – 純粹想買,小試身手,請買「旺旺來」,31.09% 會贏回賭資。
  • 兩百元 – 五成機會不花錢試試手氣!請買「開春大吉」有 50.285% 贏回賭資,還有 15.285% 機率賺錢。
  • 五百元 – 保證中獎!「新年快樂」是 100% 中獎率,保證不貢龜,38.17% 贏回賭資、14.17% 賺錢。(「金羊獎」也 100% 中獎率,中大獎機會稍高)
  • 一千元 – 最有機會獲利!「$1,200萬大吉利」70.1% 高中獎率、37.3% 贏回賭資、18.9% 賺錢,還有 0.0021% 機率贏得十萬以上彩金。(「大麻將」的機率差不多)
  • 兩千元 – 最有機會贏大獎!「$2,600萬超級紅包」超過十萬中獎率高達 0.10005%。有 20.83% 贏回賭資。

最基本的概念是千萬不要相信「發正念」、「秘密」、「吸引力法則」 之類狗屁倒灶的購買秘訣。

你贏不了機率。

下注越多次,越接近台灣樂透所設定之期望值,以兩千元的「$2,600萬超級紅包」為例子,買了越多彩卷,越接近每注損失 25.5% 也就是 510 台幣。這還不加上中獎時的稅金,也就是百分之二十所得稅稅款,外加千分之四印花稅。

記得,購買彩卷不是一項投資,而是購買一個短暫的喜悅。小賭怡情,買的更多只會抵銷喜悅的快感唷!

祝您中獎。

品名 金額 中獎率 回本機率 賺錢機率 十萬以上機率 期望值 House Edge
$2,600萬超級紅包 2000 80.83% 20.8300% 5.0300% 0.100050000% 1,489.97 25.50%
$1,200萬大吉利 1000 70.10% 37.3000% 18.9000% 0.002100000% 720.02 28.00%
大麻將 1000 70.33% 36.3300% 22.3700% 0.002000000% 735.13 26.49%
五福臨門 500 42.21% 42.2100% 16.1200% 0.000700000% 340.00 32.00%
新年快樂 500 100.00% 38.1700% 14.1700% 0.000085714% 335.02 33.00%
棋王 500 45.10% 45.1000% 15.1000% 0.000600000% 335.05 32.99%
金羊獎 500 100.00% 37.9800% 13.9800% 0.000100000% 330.02 34.00%
三羊開泰 300 35.54% 35.5384% 12.5342% 0.000690000% 194.88 35.04%
紅包一把抓 300 35.41% 35.4142% 13.0169% 0.000590000% 195.03 34.99%
金幣大作戰 300 35.72% 35.7200% 12.9212% 0.000098039% 194.85 35.05%
羊羊得意 200 32.25% 32.2465% 16.3620% 0.000980392% 125.96 37.02%
花開富貴 200 33.25% 33.2533% 11.6521% 0.000098039% 125.94 37.03%
超級年終獎金 200 50.16% 50.1600% 13.8800% 0.000300000% 125.98 37.01%
金玉滿堂 200 30.96% 30.9606% 12.2443% 0.000085714% 123.96 38.02%
開春大吉 200 50.29% 50.2850% 15.2850% 0.000450000% 127.96 36.02%
黃金連線 200 31.11% 31.1100% 12.9100% 0.000267380% 125.96 37.02%
天生一對 100 30.26% 30.2606% 11.4863% 0.000147959% 59.99 40.01%
好彩頭 100 30.04% 30.0351% 11.7170% 0.000144175% 59.99 40.01%
年年有魚 100 30.13% 30.1280% 10.6650% 0.000098039% 60.99 39.02%
幸福滿天 100 30.04% 30.0407% 12.8866% 0.000147059% 59.99 40.01%
旺旺來 100 31.09% 31.0862% 12.5980% 0.000161480% 59.99 40.01%
聚寶盆 100 30.00% 29.9984% 14.1581% 0.000163399% 60.00 40.00%
迎財神 100 30.10% 30.1028% 8.1714% 0.000065359% 60.99 39.01%

詳細的原始資料列於 Google Drive.

最近需要翻牆到中國幹一些壞事,查了一下台灣網路公司對中國頻寬[1],貌似一般用戶除了中華電信/TWGate[2] 之外,就是台灣固網水管較大。但台灣大寬頻目前只提供 20M/5M 的光纖電路,若要高速網路,必須走 Cable Network,得凱擘[3]的服務區域才行。所以窮人最快的辦法還是租一台日本或美國的主機,用 Tunneling protocol 改走國際路由不從台灣直連過去反而較快。

但公司有一條 TWGate 100M 專線[4],似乎是路由 QoS 優先值設定,明明流量不足 50% 到中國或是公司英國資料中心[5] 速度卻非常慢,比窮人家裡的 100M/40M 速度還慢,但是費用卻差了三百倍。改租 IP Transit 太複雜,但一條企業固網加上 MPLS IPVPN 應該比較經濟又快速。

[1] http://map.twnic.net.tw/
[2] https://docs.google.com/spreadsheets/d/1GaxYzN-we__vBzLFuF8VGSLTtg9U7bh8Jvf1hj7chVk/edit?usp=sharing
[3] 凱擘大寬頻 http://www.kbro.com.tw/Product/prod_cm_01.aspx?B=1&T=4
[4] http://bgp.he.net/AS9505
[5] http://bgp.he.net/AS41231

由於出差的關係,已經好一段時間沒有認真運動,體脂上升頗快,相較稍早之前認真做 Insanity Workout,代謝明顯變慢。但是 Insanity Workout 運動需要很大的空間,很不適合在旅館房間內進行,更別說需要額外工具的 P90X Workout[2]

於是需要找一套簡單、不需要工具只使用自我體重的訓練方法。查到了 2013 年美國運動協會的一篇利用高強度循環訓練(High-Intensity-Circuit-Training, HICT) 的研究論文 HIGH-INTENSITY CIRCUIT TRAINING USING BODY WEIGHT: Maximum Results With Minimal Investment,這篇研究設定了在七分鐘內做完的十二個簡單動作,只需要一把椅子與一面牆,也沒有太多的跳躍或跨步動作,不會再狹小的房間中施展不開。

注意事項

  • 開始前記得暖身三分鐘,不要隨意敷衍運動,動作必須確實以免受傷。
  • 重點是降低運動的間隔時間,這篇論文建議是每三十秒運動,間隔十秒。大約一回合花去七分鐘。
  • 應該要盡可能加快運動速度,但是也不用過於勉強,剛開始可以依照體能慢慢調適。
  • 心跳率應該要衝到極限 (Maximum Heart Rate, MHR) 的 65% 以上 ,以我而言是一定是超過 80%, 也就是每分鐘超過 150.
  • 雖然一回合是七分鐘,但是建議的運動量是二十分鐘以上,也就是應該要做兩個回合到三個回合。

以下是一個回合的示範影片

為了設定訓練目標,我用 Andriod App 7 分鐘鍛煉來提醒並紀錄訓練次數。