ABC 分析小註解

同樣出自 <這是你的團隊, 你會怎麼帶?> 這本書, 此處的 ABC 是指 A (Antecedents = 先行現象)、B (Behavior = 行為)、C (Consequences = 後續現象) 三部曲, 透過分析一個行為的先行、行為、後續, 我們可以得ˊ知後續的伴隨性 (Contingency), 關於伴隨性最後再談.

比方說, 田中先生不喜歡或者不敢跟部屬說話, 透過死人測試, 這不是行為. 具體的標的行為 (Target Behavior) 有兩種, 把部屬叫到辦公室說話, 或者走到部屬的旁邊直接對話. 前者的先行現象是田中想要在辦公室得到部屬手中的資訊, 後者的先行現象是田中先生走到部屬的座位旁. 

後續現象是什麼呢? 如果把部屬叫到辦公室, 不會打斷部屬的工作, 周邊的部屬不會被干擾, 最後會得到想要的資訊. 長期下來, 部屬認為主管高高在上. 如果走到部屬的旁邊去問他事情, 不得不立即打斷部屬的工作, 旁邊的人會好奇發生什麼事? 談話會干擾其他人工作, 當然最後也得到了資訊.

如此一來, 我們知道了兩種行為的 ABC 有什麼差異. 田中先生過去都是把部屬叫到辦公室問話, 因此部屬對他沒有什麼認同感. 田中先生雖然想要改變自己, 但是透過 ABC 分析, 發現走到部屬身旁問事情的代價還滿高的. 因此後續的行為, 可能慢慢又弱掉了. 原因是懲罰增加, 負向地減弱了他走到部屬身邊的力量.

能夠增加獎勵的行為、或是減少懲罰的行為都是大家想要的; 反之, 就是大家不要的. 所謂伴隨性就是增強或是減弱的關係. 初期嚐試走到部屬身旁的田中先生, 很可能過了一段時間又恢復成把部屬叫到辦公室問事情. 從行為分析來說, 這是懲罰因素削弱了行動.  

部屬可能會認為, “啊, 田中先生有一段時間改變了, 不過他的個性改不了, 還是回到老樣子." 於是這落入了個人攻擊的陷阱 – 我們認為田中先生無法改變. 但是書上認為, 如果我們能根據 “伴隨性" 分析減少懲罰、增加獎勵, 將伴隨物 “視覺化", 那麼就可以破解為何田中先生又回到老樣子.

“改變伴隨性, 行為才會改變" 的法則, 才是領導力中真正的核心競爭力. 這本書的 p.74 這樣結論.

我讀 «Google 必修的圖表簡報術»

我讀這本書, 多少是希望搶救我們團隊做文件的能力. 包括要和客戶報告的資料, 總是要東拼西湊才能做足夠交差的分量, 至於故事說得好不好? 並沒有人來指導過我們同仁 – 包括我自己. 更別說時間是我們的大敵, 工作認真的同仁幾乎都沒時間練這種附加價值, 而工作不認真的, 就更別想期待了…哈!

書本看起挺厚的, 但是主要就兩個核心觀念, 其他就是以小循環、大循環的方式重複論述而已. 這兩個核心是什麼呢? 第一個就是做出簡潔的投影片, 第二個就是以說故事的觀點介紹前者.

什麼樣的投影片才是簡潔的? 我想讀完第二課 “選對有效的視覺元素" 就有 60 分了, 再讀完第三課 “拔掉干擾閱讀的雜草" ,  或許就能掌握本書所謂 “簡潔投影片" 的要旨了. 它的重點基本上要看圖才能了解. 所以我也必須把重要的圖形擷取下來.

首先何謂有效的視覺元素? 人類讀圖表比讀文字快, 所以能用圖表就用圖表, 在重要數據很少時, 直接放大文字呈現, 這也是一種 “圖表"! 如果用表格或是圖形的話, 作者認為現場簡報儘量少用表格, 靜態報告比較適合用它. 主要原因就是觀眾會因為讀表格而分心. 在整個 present 的過程當中, 維持觀眾的注意力是非常重要的.

同理, 比較不重要圖形都會灰色淡化、甚至移除. 像是表格的外框, 多於的圖示、圖例. 能寫在圖裡面的, 就不需要單獨寫出來.  希望聽眾注意的, 就用單色 (作者喜歡藍色) 強調, 甚至於可以把較大的數字給深藍色、較小的數字給淺藍色, 製造出一望即知的熱區. 這樣讀者在使用本能的 “之" 字搜尋整個螢幕之餘, 注意力也會停留在講師想要強調的區域.

某些不能讓正常人一眼看出相對關係的圖, 作者建議大家不要用. 像是 3D 立體圖、圓餅圖、任何和食物名稱的圖, 作者都不建議, 像是麵條圖 (spaghetti)、派圖 (圓餅圖)、甜甜圈圖 (環圈圖)…哈! 第76頁還特別重複三次: 千萬別用立體圖、千萬別用立體圖、千萬別用立體圖. 非食物的圖, 像是左右雙 Y 軸都有刻度的圖, 作者也不喜歡. 她說不如分成上下兩層、或是直接把數字標在數據點上.

同樣的資料, 左圖用了太多顏色和格線, 而且和主題 2010 年之後並未呼應. 如果講師不特別說明, 大家並不會知道要強調的點在哪裡? 反觀右圖用了一樣的資料, 不但可以清楚看到 C 產品推出之後, A與B兩個產品售價下滑, 也可以看到D與E兩個產品售價上升, 最後每個產品的價格都收斂到一個平均點附近. 因此可以建議老闆的新產品的價格定在 C 之下的灰色區間.

good-or-bad-graph-620x200

上圖右用了一些進階的技巧. 在此要先介紹第三課裡面的 “格式塔 " (Gestalttheorie) 觀念 [1]. 凡是有類似性質的圖形, 我們容易認為他們彼此之間有所關聯. 如果要強調某個東西, 也就是要跟別的物件長相有點不同. 這些元素叫做 pre-attentive (前注意特徵). 像是以下的這些元素.

20170131_163401-768x576因此當我們要強調 A/B 產品的售價下滑, 我們可以用藍色強調這兩條線; 或者可以單獨強調在 C 產品出現之前, 用不同顏色, 提示他們的售價甚至是上升的. 又或者可以用顏色或其他手法強調所有產品一推出的頭幾年售價都是上升的, 下降的部分仍然維持灰色…等等.

當我們能夠把靜態的圖表和我們想要表達的事物相結合, 那麼就是書中的第二個核心觀念 – 講故事. 我們公司內並沒有 “想要說服副總把產品售價訂在某個區間" 這類的報告需求. 與此相似的是, PM 需要做 feasibility 報告, 說服總經理與各主管同意事業處開一顆新的 IC. 然而, 即使我們把報告的表達內容做到位了; 書上講到一個重點: 簡報的目的是要帶來行動, 根據這樣的數據, 我們應該採取哪些行動才是最重要的.

“因為市場很大, 只要吃到 1% 就夠了, 所以需要開這顆 IC." 這樣即使有再好的投影片, 仍然算不上是一個好故事. 客戶的需要有那些被滿足了? 那些還沒有? 客戶對我們產品的功能當中, 那些很滿意? 那些不滿意? 那些從來沒用過? 書上有個直條堆疊圖可以用來解釋上面的每個問題, 想討論哪一段, 就用藍色 (作者喜歡) 強調那個部分, 帶著大家聽下去.

記住! 在本書討論的範疇當中, 講師已經充分明瞭自己要講什麼, 甚至也能技巧性地把聽眾想要問的問題引導到 “會後" 才討論, 因此本書所適用的簡報都是有清楚目的的. 像是講師上課時往往歡迎打斷他們問問題的、或是題目不拘的的那種簡報, 雖然也可以適用說故事技巧, 不過可能就有點難以每張投影片都簡潔有力了.

[REF]

  1. 格式塔學派: 包括距離相近、圖形相似、環繞 (框框或是反白的一個區域)、封閉、連續 (放在一起的東西有關連性)、連結 (直接用線、箭頭連結) 都會被視為一個群組.

[Note]

本書作者是 Google 總監 Cole Nussbaumer Knaflic 女士, 書很值得一讀, 翻譯也不錯. 譯者是徐昊先生. 書中有兩處我覺得是錯誤. Page 222 和 224, “用戶最不滿意功能 J 與 K,…",  應該是 J 與 N 吧.

IC 設計公司營收排名 2016

2016 年發生了幾件事, 像是: 遠翔科併入類比科, 立錡併入聯發科. 安茂微改名鑫龍騰. 

國內的公司都公布營收了, 在海外上市的兩家其實還沒有公布. 所以只是預估值. 兩家都估 Q4 最多比 Q3 衰退 9%, 所以大致抓這個數字. 基本上這個級距少有對手, 他們的排名不會因此變動.

由於群聯的 IC 營收佔全部營收 50% 以下, 所以今年不給它名次. 以免它跑到螃蟹的前面.  在其他版本的統計中, 群聯也只計算 IC 的部分, 但我沒有詳細的資料. 沒有上市的大陸公司, 海思和展訊都排名在聯詠之前 [1]. 把他們算進去, 聯詠和瑞昱的世界排名都要退後一名.

排名 公司 股號 2016 (K NTD) 註解 (世界排名)
1 聯發科 2454 275,511,714 WW 3, 手機
  海思   126,685,000 估 39.78 億 USD
  展訊   60,410,000 估 19.12 億 USD
2 聯詠 3034 45,650,879 WW 8
  群聯 [*] 8299 43,782,512 IC 佔比<50%
3 瑞昱 2379 38,914,031 WW 9
  擎亞 [*] 8096 30,119,564 電子通路
4 奇景光電 HIMX 25,276,800 估 8 億 USD
5 慧榮 SIMO 17,377,250 估 5.5 億 USD
6 敦泰 3545 11,018,225  
  敦南 5305 10,487,093 IC 佔 38.31%
7 矽創 8016 10,189,747  
8 晶豪科 3006 9,300,534  
9 創意 3443 9,290,421  
10 譜瑞-KY 4966 9,099,675 高速傳輸介面
11 瑞鼎 3592 8,624,099  
  新唐 [*] 4919 8,329,286 有晶圓廠
12 凌陽 2401 7,556,045  
13 矽力-KY 6415 7,131,739 電源管理晶片
14 天鈺 4961 6,902.087  
15 義隆 2458 6,558,933  
16 鈺創 5351 6,475,051  
17 智原 3035 6,422,145  
18 威盛 2388 4,921,975  
19 絡達 6526 4,674,553 無線通信
20 原相 3227  4,338,039  
21 盛群 6202 4,157,788  
22 茂達 6138 3,737,854  
23 世芯-KY 3661 3,691,982 ASIC
24 致新 8081 3,675,944  
25 昂寶-KY 4947 3,658,453  
26 揚智 3041 3,406,425  
27 凌通 4952 3,268,664  
28 松翰 5471  3,216,843  
29 愛普 6531 3,161,275 行動記憶體
30 聯陽 3014 3,127,191  
31 聚積 3527 2,491,388  
32 晶焱 6411   2,439,083 靜電防護
33 尼克森 3317 2,363,701  
34 宜特 [*] 3289 2,342,042 FIB IC
35 立積 4968 2,161,784  
36 安國 8054 2,106,035  
37 偉詮電 2436 2,047,723  
38 力積 3553 1,879,487  
39 祥碩 5269 1,789,239  
40 創惟 6104 1,758,358  
41 富鼎 8261 1,715,446  
42 神盾 6462 1,673,268 生物辨識
43 類比科 3438 1,662,746  
44 大中 6435 1,531,185 功率半導體
45 合邦 6103 1,358,903  
46 信驊 5274 1,345,678  
47 普誠 6129  1,295,684  
48 晶宏 3141 1,251,891 元太轉投資
49 研通 6229 1,242,129  
50 禾瑞亞 3556 1,234,725  
51 通嘉 3588 1,223,765  
52 力旺 3529 1,215,459  
53 宏觀 6568 1,123,007 RF
54 點序 6485 1,055,140  
55 九齊 6494 893,536  
56 九暘電 8040 848,350  
57 虹冠電 3257 843,361  
58 海德威 3268 781,988  
59 凌陽創新 5236 717,020  
60 笙科 5272  673,534  
61 亞信 3169 645,897  
62 鑫創 3259 643,069  
63 系微 6231 642,153  
64 佑華微 8024 608,103  
65 笙泉科技 3122 602,098  
66 紘康 6457 565,299  
67 迅杰 6243 516,275  
68 旺玖 6233 473,471  
69 驊訊 6237 399,856  
70 通泰 5487 385,818  
71 聯傑 3094 312,545  
72 金麗科 3228 250,364  
73 沛亨 6291 232,610  
74 普格 3073 209,728  
75 點晶 3288 205,376  
76 太欣 5302 187,093  
77 矽統 2363  182,873  
78 凱鈺 5468 173,251  
79 世紀民生 5314 169,822  
80 鑫龍騰 3188 154,331 原名安茂微
81 倚強 3219 124,083  
82 凌泰 6198 48,940  

[Note]

  1. 美金匯率用 31.595:1, 以公司正式公布為準.
  2. 2017/3/19  新增矽力與譜瑞 
  3. 根據 [2] 新增一些公司

[REF] 

  1. 2016 年全球 IC 設計大廠營收排名出爐,高通穩居龍頭寶座
  2. 74家晶片公司簡單整理

foreign-architecture 小註解

今天想要用 apt-get, 結果冒出 Unable to locate package git-fame

cashchou@server: ~ $ sudo apt-get install git-fame
Reading package lists… Done
Building dependency tree
Reading state information… Done
E: Unable to locate package git-fame

為了消除  Unable to locate package, 據說要清理 source list, 很多人是因為網路的關係連不上 ubuntu, 但我確定都連得上, 所以不用改 source list. 而是可以試著 update. 結果在 apt-get update 的時候, 看到一堆類似的 warning. 像是:

W: Failed to fetch http://tw.archive.ubuntu.com/ubuntu/dists/precise-updates/InRelease Unable to find expected entry ‘ main/binary-foreign-architecture/Packages’ in Release file (Wrong sources.list entry or malformed file)

之類的東西. 話說 main 和 Packages 中間應該是出現 architecture 沒錯, 但應該是 amd64, i386 這種 architecture, 而不是直接來個 foreign architecture 吧! 

cashchou@server: /etc/apt $ dpkg –print-architecture
amd64
cashchou@server: /etc/apt $ dpkg –print-foreign-architectures
foreign-architecture

這表示我們 server 的架構是 amd64, 如果曾不小心打成 and64, 或是 i586 打成 1586…這些都會被認為是不相容的外國建築 (foreign-architectures) . 但…這 server 上的外國建築竟然就叫做外國建築吶! 我試著把它刪除, 結果…得到一句繞口令…不能移除不是外國建築的外國建築.

cashchou@server: /etc/apt $ dpkg –remove-architecture foreign-architectures
dpkg: warning: cannot remove non-foreign architecture ‘foreign-architectures’

原來是我忘了 sudo, 加 sudo 硬是把它幹掉之後, apt-get update 就正常了.

sudo dpkg –remove-architecture foreign-architecture

但還是不能 upgrade.

cashchou@server: /etc/apt $ sudo apt-get upgrade
Reading package lists… Done
Building dependency tree
Reading state information… Done
You might want to run ‘apt-get -f install’ to correct these.
The following packages have unmet dependencies: …一大堆錯誤

據說, 此時可以試著 apt-get -f install, 但我試過這招沒用. 因為 unmet 太多了.

…一大堆錯誤
E: Unmet dependencies. Try using -f.

啊 force 也沒用啊!! 根據網路資訊 [1], 接下來的 SOP 就是先自動修復, 依序執行下面幾步. 當然 // 後面不是指令, 只是註解.

sudo apt-get update      // update your package list
sudo apt-get autoclean   // clean up any partial packages
sudo apt-get clean       // clean up the apt cache
sudo apt-get autoremove  // will clean up any unneeded dependencies.

還不行的話, 只好逐個修復. 

sudo dpkg --remove -force --force-remove-reinstreq package name

弟兄們裝了太多 package, 彼此互相影響, 我沒時間一個一個重裝, 只好留待比較急的人有緣人來處理了~~~

[REF]

  1. http://www.linuxquestions.org/questions/linux-general-1/resolve-generated-breaks-held-packages-896449/

POSIX signal 小整理

做 SOC 軟體的人常常會收到 bug 的 log, 其中一個常見的類型就是 signal XXX, code YYY, fault address ZZZ. 例如:

Fatal signal 11 (SIGSEGV), code 2, fault addr 0x12345678 in tid 12345 (MyTask)

這個 log 是標準 C library 裡面的 signal.h 所定義的 [1].  參考 ref [2], 裡面有較完整的 code No. 說明, 而 ref [3] 有完整的 POSIX signal 定義和歷史沿革; Ref [4] 是把 Unix signal 做成一張表.

取常用的部分, 重新整理如下. 這些都是 core error, 所以會終止程序, 並且產生 core dump.

Signal

No.

Code

No.

Reason

SIGILL

4

ILL_ILLOPC

1

Illegal opcode.

ILL_ILLOPN

2

Illegal operand.

ILL_ILLADR

3

Illegal addressing mode.

ILL_ILLTRP

4

Illegal trap.

ILL_PRVOPC

5

Privileged opcode.

ILL_PRVREG

6

Privileged register.

ILL_COPROC

7

Coprocessor error.

ILL_BADSTK

8

Internal stack error.

SIGFPE

8

FPE_INTDIV

1

Integer divide by zero.

FPE_INTOVF

2

Integer overflow.

FPE_FLTDIV

3

Floating-point divide by zero.

FPE_FLTOVF

4

Floating-point overflow.

FPE_FLTUND

5

Floating-point underflow.

FPE_FLTRES

6

Floating-point inexact result.

FPE_FLTINV

7

Invalid floating-point operation.

FPE_FLTSUB

8

Subscript out of range.

SIGSEGV

11

SEGV_MAPERR

1

Address not mapped to object.

SEGV_ACCERR

2

Invalid permissions for mapped object.

SIGBUS

10

BUS_ADRALN

1

Invalid address alignment.

BUS_ADRERR

2

Nonexistent physical address.

BUS_OBJERR

3

Object-specific hardware error.

SIGTRAP

5

TRAP_BRKPT

1

Process breakpoint.

TRAP_TRACE

2

Process trace trap.

[REF]

  1. https://zh.wikipedia.org/wiki/Signal.h
  2. http://pubs.opengroup.org/onlinepubs/009695399/basedefs/signal.h.html
  3. http://man7.org/linux/man-pages/man7/signal.7.html
  4. http://people.cs.pitt.edu/~alanjawi/cs449/code/shell/UnixSignals.htm