2013年9月28日星期六

大工地上中國農民工之歌



很小的一本書, 然而卻沉重的讓我拿不起來. 讀不下去, 真的不忍讀下去.

陳李張黃何
書中訴說著一個又一個的 "老何", "周某", "小郭", "小陳" 等尋常百家姓的辛酸故事, 自改革開放以來, 從第一波農民工的出現依始, 這些讓人嘆息的故事便未有停止過, 更讓人傷感的是這些故事, 到今時今日國家已經躋身世界第二大經濟體時, 還是可以隨隨便便地從沿海, 沿江, 到西部, 到東北的大大小小城市中一大把一大把的找出來!

無產階段專政
作者嘗試以現代的社會科學來解釋事件, 甚至出動了馬克斯列寧兩位共產主義的老祖宗來質疑中華人民共和國的人民政府, 這個全世界最大最富有最有政治實權的社會主義公權力, 及中國共產黨, 這個全世界最大的共產主義政黨, 為何會容忍這些只會在早期西方資本主義時期才出現的赤裸裸地壓迫工人的行為? 為何要把人民以戶籍劃分等級? 為何要為資本家歌功頌德的同時又拋棄了對工農階級的尊重? 當日的掏糞員可以登上人民大會堂這國家的聖殿接受榮譽與掌聲, 今日的農民工卻被小小的街道辦拒之門外! 這是歷史對我們的諷刺嗎?

作者也對 "海歸派" 發出指責, 這些海龜(歸)在美好新國度中習染了芝加哥經濟學派的自由經濟主義, 於回歸時也把這些放任的, 不負責任的經濟思想一併帶回這片黃土地上. 這些思想是今日橫行於地面的消費主義的中流砥柱, 而由消費所撐起的城市先進生活也就催生了一個一個未見世面的農民工的夢想, 而這卑微的夢想也就把他們引向這苦難的牢房. 照此道理, 我們豈不應將這些不仁不義的海龜拿去製成龜苓膏才可止息千萬農民工的苦難?

失焦
在閱讀本書時, 我不禁在想, 農民工已經出現了三十年, 少說也都是兩代人的經歷. 要是他們的作為農民工的生活真是只有絕望, 那麼新一代為什麼還要出去城市打工? 根據我本人觀察, 農村生活已經早脫離了兩餐不繼的情況, 白色電器也再不是新鮮事物. 就業機會當然是一個原因, 但是這也說明不了一件事, 農民工這個現象是一個百萬人層級的經濟活動, 要推動這種規模, 背後一定有更強大而緊緻的作用力在操作才成. 而我唯一想到的是: 國家.

不知道作者們是受到他們自己所學的限制, 還是被眼前悲慘農民工的血淚與汗水遮蔽了雙眼. 作者們好像失去了焦點的蒼蠅, 漫無目的四處亂竄, 希望幸運找到一點點解釋. 但他們就是沒有指向中國共產黨一個說得清清楚楚明明白白的基本思想:

"一齊都是為了政治服務, 而最大的政治任務就是維持中國共產黨專政."

固中的邏輯推論已非一篇書摘所應有, 以後有機會再另文細述.


ISBN: 9789620764547
作者: 潘毅, 盧暉臨及張慧鵬
出版: 商務印書館(香港)




2013年9月27日星期五

自製記帳軟件 - Voucher 實體到虛疑


說了Schema, 說了Datatype, 是應該開始便用 MySQL Workbench 來實作的了. 但在這之前, 還是讓我說說一些邏輯上的東西吧. 為什麼還要說個不停? 因為這是關係到 Database Normalization 啊, 說的是系統的成與敗啊, 所以還是讓我說吧.


資訊
上圖是一張很平凡的 Payment Voucher (這個字太多不同的中文譯名, 所以我乾脆用回英文算了), 其中包含了很多資訊, 每一項資訊都有特定的功能, 有些是可以再用的, 有些則否. 在設計 Schema 時, 我們必須想清楚什麼是最核心的最不可或缺的資訊. 而在複式簿記 (Double Entry Bookkeeping) 之中, "日期 (Date)", "詳細 (Description)", "賬目 (Account)", "借方金額 (Debit Amount)" 及 "貸方金額 (Credit Amount)" 就是最不可或缺的五項資訊. 只要有了這五項資訊, 就是用 Microsoft Excel 來作記錄, 再加上善用 Sort 及 Filter 功能, 大家都可以輕鬆完成一盤會計賬目. 當然用 Microsoft Excel 來造賬, 出現錯誤的機會是很高的. 這並不是因為它本身有什麼程式缺憾, 而是因為人手參與的頻率與程度太高. 而記帳軟件其中的一個面向就是要盡量減少人手參與, 這是在設計 Schema 及 User Interface 時要多加留心的.

複式簿記流程
在繼續之前, 還是要略略說說複式簿記的流程. 首先會計人員在取得原始憑據後或某些特定事件發生或達到某個日期後, 會根據不同性質而開立不同的傳票, 並在傳票上列明事項日期, 詳細, 借方及(或)貸方賬目與金額, 涉事人員或公司. 在一天結束後將該所有當天的傳票, 匯整成日誌並結算借貸雙方的金額. 日誌上的借貸雙方的金額必須相等方何再轉錄到分賬內.

手民之誤
或許你會說所有資料不都是人手輸入的, 所以免除手民之誤是個不可能的任務. 可我們不是要免除, 而是要減少, 而且是盡量減少! 那如何作才可以減少 Human Error 呢? 答案就是限制同樣的資料以人手輸入的次數. 換句話說, 就是有效地善用已經輸入的資料. 在複式簿記的實作中, 有很多的資料都是重複, 像是"傳票類型", "賬目", "客戶", "供應商", "員工", "產品", "物品"等的名稱與編號. 這些重複性的資訊, 我們應該獨立建造屬於它們的資料表 (Table), 以待日後可以容易選取使用及設計查詢 (Query). 這部份我們日後會慢慢的涉獵到, 現在先按下不表.

資料類型
之前說過的五項主要資料是 "日期", "詳細", "賬目", "借方金額" 及 "貸方金額", 但是為了有效地解讀賬冊, 光有他們是不夠的. 於是我們還要加上如上一段所列的資訊. 資訊有了一大堆, 但是我們還要把它們分類. 基本我們可以把它們分成三類:

Basic Data (基本資料類型): 包括 "日期", "詳細", "傳票類型", "客戶/供應商" 及 "員工"

Transaction Data (交易資料類型): 包括 "賬目", "借方金額" 及 "貸方金額"

Additional Transaction Data (輔助交易資料類型): 包括 "產品" 或 "物品", 及其單價和數量

上述三類資料類型, 即代表著三個獨立的資料表. 下圖顯示了這三種類型在 OrangeAcc 中的傳單介面中的分佈.


很累, 下回繼續...





2013年9月24日星期二

反對完美


某程度上我們都是在追求完美, 而且我們也在追求下一代能夠比我們更加完美.

父母的野心
相信沒有幾多父母能夠不認同上述句子. 然而我們可以接受得了以基困科技去製造完美的下一代嗎? 如果我們接受不了, 那我們為何又可以接受"虎媽" (在香港就是 "港爸港媽") 以如此高壓的手段去逼迫她的女兒? 為何我們又可以接受"網球雙妹"的父母親在她們未出生前就已經規劃好了這對黑人姊妹的網球生涯? 如果基因科技有扭曲什麼我們珍重的價值觀, 那這些後天的強逼性的訓練距那條小小的紅線又有多遠?

藍圖子女
我們都希望仔女比我們高, 漂亮, 強壯, 很輕鬆平常的事嘛, 是不是? 但是如果有父母想要一個失聰的孩子, 我們又會否接受? 書中描述了一對失聰的同性戀伴侶, 他們幾經努力終於找到一名家族五代都是失聰的捐精者, 並成功地生出了一個天生就是失聰的孩子. 當消息傳出後, 蓋天鋪地的責難使她們極為驚訝, 因為在她們失聰的世界觀中, 她們自覺本身是一個完整的個體, 而失聰是一種恩賜, 賜與她們一種與別不同的生活態度! 如果你接受不了, 那想像一下同樣有對同性戀伴侶, 她們希望未來她們的孩子要高大帥, 於是她們去尋找一個五代都是高大帥的捐精者. 這樣, 你感覺會否良好一點? 有人認為高是優點, 有人認為失聰是優點, 在本質上其實沒什麼不同. 但是這種精心營造下一代的作法, 在作者眼中有一個問題, 就是 "責任". 而這個問題又會連帶影響各個社會中各個層面, 並破壞人與人之間的扭帶.

胚胎=人?
那是否所有基因科技都應該取締? 在作者眼中並不是的. 在以 "回復身體健康狀態" 的前提下, 作者是支持在美國備受爭議的幹細胞研究. 在書中, 作者提出了 "胚胎等不等於人?" 這個讓大家爭論不休的大哉問. 其中, 作者引述了另一位學者, 喬治.安納斯, 最早提出的一個有趣的假設:

 "假如生肓診所發生火災, 你有時間救出一個五歲女孩, 或是一盤二十個的冷凍胚胎, 救出女孩有錯嗎?" - P.176

無論本身你對胚胎的觀點如何, 這個假設都會令人深思的.

民主=平等?
本書除了有種種關於基因科技的道德爭議外, 其實背後更有優生學這個幽靈在我們中間作祟. 書中簡明扼要地指出優生學在美國這個民主社會也曾經盛極一時, 美國人曾讚美納粹德國下的優生學政策, 甚至有美國總統認為不讓較差的一群人生育是一種道德上應有之舉. 在這些背景下, 要求社會中某類人絕育的政策應運而出. 優生學在美國的退潮並不是出於民主中道德的覺醒, 而是被戰後所揭發的種種種族滅絕暴行所嚇退.

在美國這民主國家中也會在一百年前出現擁護優生學的思潮, 而部份州的相關政策更一直維持到上世紀七十年代. 期間幾萬名被公權力判定為不合格的人被施行了絕育手術. 我不禁質疑現在在香港不停為民主吶喊貼金的人, 他們究竟有沒有讀一讀美國歷史? 民主不一定給每一名人民帶來想像中的尊嚴, 高叫公平也不一定會帶來公平. 如果我們沒有強烈的邏輯思辯傳統, 民主將是一粒包著糖衣的民粹毒藥.




ISBN: 9789866098765
作者: 邁可.桑德爾 Michael J. Sandel
譯者: 黃慧慧
出版: 五南文化事業

2013年9月23日星期一

自製記帳軟件 - DataType


我很佩服那些操作手冊的作者, 可以那麼條理分明的寫出每一個步驟, 每一個動作; 而我每次寫到實作層面的時候總是會退縮不前, 要處理要表達的資訊實在是太多, 而每一項資訊本身就已經充滿了不同的意函, 如果要充分去說明其中的道理和原委, 可能到我力歇那一天都未完成. 傳聞那些操作手冊的作者的稿費相當之高, 能人所不能之價也.

這一篇文章的用意是使大家在繼續我的唐吉訶德之路前, 先對手上的長矛- MySQL - 有一個初步認識. 否則大家只會像是瞎子摸象. MySQL 是一個 Database Management System (DBMS) 軟件, 顧名思義, 她的作用是管理不同的資料庫, 包括保全, 備份及輸入輸出都是她的職責. 而資料的儲存則是 Storage Engine 所負責.  在 MySQL 5.5之前, 預設的 Storage Engine 是 MyISAM, 而在5.5版或之後則是 InnoDB. InnoDB 取代 MyISAM 的原因最主要是穩定與效率. 雖然 InnoDB 會比MyISAM 佔據更多的儲存空間, 但在今天每MB的硬體成本只是港幣十分之一仙, 這個缺點已經變得無足輕重了.


上圖是一位熱心網友所製作的 MySQL Datatype 表的截圖, 完整的表可以在 KIM BRIGGS WEBSITE 中觀看及下載. 你或許會發現這表是根據 MySQL 5.0 版本所製成, 但是到現在仍然是適用的, 畢竟如果把 Schema 看成是根據幾何學繪成的藍圖, 你就不能夠隨便改動其中點線面的定義. 

在我自製的記帳軟件的 Schema 之中, 在考慮了一般記帳的需要, Micosoft Access 的限制和開發難度後, 我只集中地使用了幾種 Datatype, 它們包括了: TINYINT, INT, DECIMAL, VARCHAR, DATE, 及 TIMESTAMP. 或許我應該承認懶惰也是一大因素, 可是為了完成這個唐吉訶德式的壯舉, 我是看書看 Blog 都看到眼睛壊了. 為了讓大家進一步理解 Datatype 的選擇與設計考量, 以下我將會逐一簡單的說明一下:

TINYINT ( 1 byte ) - UNSIGNED 數值範圍從 0 到 255
這個 TINYINT 主要是用來作為 "選項數值", 例如 YES/NO, 表單種類及公司類別等. 記著一點, 由於此 Datatype 的數值範圍很小, 所以只適用一些你可以控制而不會自然增長的地方.

INT ( 4 bytes ) - UNSIGNED 數值範圍從 0 到 4,294,967,295
這個 INT 主要是用來作為 "編號數值", 例如表單編號, 客戶編號及產品編號等. 由於此 Datatype 的數值範圍比較大, 所以適用於一些會自然增長但不需要小數位的地方.

DECIMAL ( M+2 ) - 十進位範圍: 點數位前0到64, 點數位後0到30
這個 DECIMAL 主要是用來作為 "絕對數值", 例如金額及數量等. 由於此 Datatype 的數值範圍很大, 在設置適當的前提下你不會遇到任何限制, 就算你的公司是香港中央結算有限公司都沒有問題 (理論上). 有另一個 Datatype 跟 DECIMAL 很相似的就是 DOUBLE, 兩者的數值範圍都是一樣, 但是 DECIMAL 是一個固定數值 (Fixed), 而 DOUBLE 卻是一個浮點數值 (Float). 在記帳中少不免總會有加減乘除的動作, 而在追求精準平衡的時候, 你可不會想在報表中出現一些微少的差異, 重複當年 Microsoft Excel 2007 的 Bug 吧. 為了準確性, DECIMAL 基本是你唯一的選擇.

VARCHAR ( M char's ) - 字數限制從 0 到 65,535 個單位元字母或符號 (中文字是雙位元)
這個 VARCHAR 主要是用來作為 "文字欄", 例如表單明細, 名稱及其他混合資料等.

DATE ( 3 bytes ) - 日期範圍從 "1000-01-01" 到 "9999-12-31"
這個 DATE 主要是用來作為 "日期欄", 例如表單日期及結算日期等.

TIMESTAMP ( 4 bytes ) - 範圍從 '1970-01-01 00:00:01' UTC to '2038-01-19 03:14:07' UTC
這個 TIMESTAMP 是一個系統自動生成的時間戳, 其一可以用來作為修復數據錯誤的依據, 另外還可以用作追蹤員工工作進度之用. (我是魔鬼...哈哈哈!)

以上六種 Datatype 基本上就是我那個自製記帳軟件的 Schema 的所用到的點線面定義, 如何組合它們就留待下一篇再說了.

PS. 寫這篇文章比寫書摘要累十倍也不止! 

2013年9月21日星期六

不公平的代價


這本書一如作者的其他著作, 不遺餘力地聲討經濟學的芝加哥學派及全球化. 從公平分配角度來揭示美國社會的種種扭曲制度與階級鬥爭. 作者在書中宣揚政府應該採取措施來抑壓全球自由貿易, 加強工會力量, 及強力規範金融業來達致作者眼中的公平”.

交易費用
新古典經濟學的市場理論一直都是以完全競爭市場, 即交易費用為零, 作為種種假說的基礎. 由於交易費用為零是一種虛構的設定, 因此在將經濟學理論套用在真實世界裡必定出現格格不入的情況. 就此, 經濟學家為這些不協調導入種種條件來使他們的理論更合乎現實(或想像)中的觀察, 例如風險, 界外效應, 訊息不對稱等.

先回頭說說什麼是 零交易費用”. “零交易費用不等於交易費用不存在, 而是假設其值為零. 以物理學的術語來表達就是, 交易費用所造成的功在經濟學理論中的影響是無或是微小到可以忽略不計. 為什麼要這樣假設呢? 這是因為交易費用是一個不能界定的卻又永遠存在的變數! 如果在經濟學理論中導入交易費用不為零, 則所有經濟學理論都將會無從推斷出任何結論.

如果我們從人類的社會結構的發展史來看, 政府的出現其實就是為了減低社會整體的交易費用; 循同樣道理, 我們應該可以看出政府本身其實就是交易費用的具體表現. 簡單來說, 政府就是交易費用的一部份. 這是芝加哥學派一直提倡 大市場, 小政府的原因. 在這些學者眼中壓縮政府的規模即等同減少社會整體的交易費用, 而使到市場的效率提高從而減少資源的浪費 (政府或市場誰運用資源的效率比較高是另一個大題目). 畢竟, 經濟學的基本宗旨是: 有效地利用有限的資源.

公平
回本書作者在書中不斷強調 公平的重要性, 認為這是社會穩定的一大因素, 甚至指出適當的公平更可以提昇社會的整體生產效率. 但因為市場天生的分配機制是不公平的, 要在經濟分配上達至某程度的 公平”, 所以需要政府的主動介入來矯正這缺陷. 可是美國政府卻受到芝加哥學派的荼毒, 所以反其道而行不斷地減少種種法令規管和稅務負擔, 及放任產品貿易全球化的發展, 從而使社會的財富更集中在1% 的人手中. 而這 1% 的人又反過來運用他們手中的資源來影響政府的政策及民眾的思想, 來使到整個社會的財富分配機制更向他們傾斜. 終於, 市場在這個迴圈中失去平衡倒了下來.

作者於書中並非提倡絕對的公平, 而是認為美國政府及人民必須認清 美式貪瀆和各利益團體的尋租行為所帶來的不公平. 因為這種不公正一步步侵蝕美國的國力, 而一般平民百姓將是受苦最深的一群.

何價
公平是一個引人入勝的字眼, 幾個世紀以來, 人類多少革命都是因為這兩個字背後所傳達的意義. 可惜的是, 到今天仍然未有人可以定義何謂 公平”. 




ISBN: 9789862416334
作者: 史迪格里茲 Joseph E. Stiglitz
譯者: 羅耀宗
出版: 天下雜誌


2013年9月19日星期四

當中國買下全世界


在讀這書前, 你要有充足的心理準備, 因為這本書說的不是一般西方觀點.

走出去
作者一開始即點出了, 中國企業及商人在走出去這個國策中所展現的力量與野心, 及碰上的阻礙. 在開卷的世界地圖中, 說明了這種野心的旺盛大及企圖的宏大; 除了南極洲外, 中國商人及他們滿滿的錢箱已經跑遍其他大洲. 這種情況, 讓西方各國陣腳大亂. 因為中國商人不只為本來依靠西方列強的小國帶來金錢, 也向他們展現平等互利, 在商言商的新模式. 這種新模式更改了國際政治版圖, 侵害了傳統強國的利益.

消費者期貨市場
作者詳細描述了實物期貨市場的運作, 及批判了金融業者為了套利而使市場波動幅度擴大. 而且更進一步的說明了大眾把資金投資於期貨市場其實等同減少了資金流向股票市場, 換句話說就是把資金花在消費品而非可以增加社會經濟效益的耐用品上. 於是本來讓業者估算未來趨勢用以規避風險的機制變成了一個大賭場. 這種行為, 壓抑了實體經濟的發展, 到最後又會壓抑了對消費品的需求. 這是一個沒有贏家的遊戲. 先不論其背後的經濟理論有沒有爭議, 但是在一個短時期內, 這種資金偏向而造成的短缺的確是出現了的, 就在金融風暴發生之後.

非洲
中國的出現對非洲的人民來說是一件利大於弊的事情, 儘管西方國家稱之為"新殖民主義", 也有印度學者說中國政府派遣了成千上萬的罪犯到其他地方工作, 但是作者都一一以證據反駁了這種種說法. 作者甚至稱中國政府及中國人民這種在商言商, 不介入當地政治的作法為"反殖民主義". 對於西方媒體指責中國政府偏愛"邪惡"的國家, 作者也指出他們在同時掩飾自己的國家為了經濟及政治利益而支持了不少同樣"邪惡"的國家. 這種雙重標準, 對我來說並不新鮮, 反而是出現在一個西方作者的著作中才叫我驚訝不已.

越往後讀, 本書越益像是一本為中國人而喝采的書. 如果你是想找渣看看中國如何欺壓全世界, 這本書一定叫你倒盡胃口. 但是如果你是想看看, 中國這一股力量是如何以非西方文明的船堅炮利式的手段去擴展資源版圖, 在為自國人民謀福祉的同時也帶領了他國人民一同進步的故事, 這書將會帶給你一定驚喜.

在"中國威脅"為大主調的書海中, 這書可算的上是一股清泉.



ISBN: 9789865947569
作者: 丹碧莎.莫尤 Dambisa Moyo
譯者: 黃中憲
出版: 野人文化



2013年9月17日星期二

記帳遊戲


買這本書的原因很簡單, 就是因為它的名字.  畢竟這門技術帶給了我在職埸上的立足點, 也供養著我的家庭. 濃濃的情意結讓我不假思索的將它從書店帶了回家.

文藝復興
作者一開始就大篇幅的描述會計祖師 Luca Pacioli (1445-1517) 的出生, 遇上導師與貴人的經過, 到最後出版了他的數學大全<<算術、幾何、比例總論>>* (簡稱<<總論>>). 祖師在<<總論>>中有一章是向讀者介紹複式簿記的好處與規則, 之後這一章被獨立成書, 並且把影響擴展到整個歐洲. 在這個主線之外, <<總論>>是第一本全面使用阿拉伯數字的歐洲數學書籍, 隨著複式簿記的流行, 阿拉伯數字亦把羅馬數字的主流地位排擠掉, 從而使到計算變成每個人能力所及的事. 我不禁在想, 啟蒙時代是不是得益於祖師劃時代的舉動的呢?

泡沫, 泡沫, 還是泡沫
在往後, 歐洲人逐漸掌握了複式簿記, 使得商業往來變得普遍, 而且日益複雜. 而同時期在大航海時代的貿易壓力下, 人類第一檔公開交易的股票在荷蘭誕生了. 作者指出, 複式簿記的出現與傳播可以說是催生了股票, 因為沒有清楚準確的交易記錄, 及易於明白的損益數據, 就沒有大規模的合資營運.  有了複式簿記及股票市場, 我們吹出了一個又一個的泡沫, 就算破了一個, 我們還是不亦樂乎的投入下一個泡沫. 資本主義 (Capitalism) 一詞中的資本 (Capital) 亦源於簿記的損益表 (Profit & Loss Account).

缺失
作者認為複式簿記有一個很大的缺失, 就是這個系統只是狹義地記錄了可以金錢量化的事物, 而忽略了在營運中所消費了而又不可以量化的事物, 例如環境 (在近期一次網上討論中, 有前輩提出了員工的才能也是複式簿記所忽略的. 而在大數據一書的作者也指出了複式簿記沒有反映出資訊公司- 如Google, Facebook等 - 手中握有的數據的價值). 在一個個別經營的商戶的帳本有這樣的缺失其影響是微不足道, 但是如果是社會整體呢? 甚至於一個國家的經濟帳本都有這種缺失呢? 作者指出了現在廣為各國採用的本地生產總值 (Gross Domestic Product) 在計算中就有如斯缺失. 而這種缺失或是人類步向文明終點的遠因.




ISBN: 9789868905566
作者: 珍.格里森-懷特 Jane Gleeson-White
譯者: 楊雅婷
出版: 行人文化


* 原名: Summa de Arithmetica, Geometria, Proportioni et Proportionalità