很快的更新一下我的現況。最近太忙,連寫 blog 的閒情都沒。
從上週開始回到職場,在 openmoko.com 工作。公司到目前尚未跑完登記程序,也就是還沒成立。core team 包括 Sean Moss-Pultz, Harald 'LaForge' Welte and Michael ‘Mickey’ Lauer. 台灣這邊則包括 jserv, OLV (freetype developer)等人。
略查一下的話可以發現這是非常恐怖的團隊,例如 LaForge 是 netfilter/iptables 的主要作者,Mickey 則是 OpenEmbedded 創始者。最驚人也最令人慚愧的是,以上提到的這些開發者,除了 Mickey 以外,全部比我年輕。所謂歲月不饒人,我在吃喝玩樂的時候,很多人可是認真的在研究呢。總之是間非常有趣的公司,靜觀其變。
另一件事情,之前拿來當作工作室的安東街公寓,原是鐵路局員工宿舍,現在確定遲早要收回了。另找了間套房租下來,現在得處理搬家事務,講起來真是多如牛毛。總之變動可以視為常態,塵埃落定之後,且看這一波人生轉折會有甚麼結果吧。
2007年7月25日
2007年7月11日
幡然有悟
不知為何,這陣子以來,心情持續感到一種平靜。莫名的就出了這標題。
其實是不應該平靜的。出租的房子最近問題一直很多,當年貿然無知的找人裝潢,又沒有監工,現在問題就一一冒出,還得面對敷衍欺騙客戶的水電工人。財務麻煩不小,畢竟現在的生活方式也不過是把債務延後用以維持生活罷了。
我想原因應該是最近做的一個案子。說真的並不是很難的工作,雖說有部分不熟悉,但有原先的程式碼可參考,評估一下也就接了。似乎案主挺高興的,應該是燙手山芋,時間又趕。真的做下去,果然發現問題很多,規格不明、變數多、文件與資料都欠奉,但總之最後都找到方法繞過問題。需要對方提供資料所以卡住的時候,就先切換到不會卡住的地方繼續做。
我發現,我似乎自動地在做著一些以前會讓我不滿的事情。工作態度以及心態上似乎都微妙地改變了。這一年多來的經歷,大概是我人生最缺錢最困苦的時期,但從那中間,我好像領悟了些甚麼,思考的方式不自覺地延著與一年前不同的迴路在運作著。
自己最大的問題,是我總是從錯誤中學習,而非直接由別人經驗學到。世上可犯的錯誤很多,有些錯誤的後果是擔負不起的。至今為此我已經付出很大代價。
但好處是,一旦我學到甚麼,最終修正到了正途,便總有莫名的篤定,似乎知道繼續走就對了。對人生,我從來不是很講邏輯,總是憑著感覺任性的前進。也許這次的經驗讓我感到,還是有些能力可以運用,只是要找出適合的場域。很奇怪的我並不擔心,時機總會來到,若永遠沒有,也是命定,但求無愧於心。
其實是不應該平靜的。出租的房子最近問題一直很多,當年貿然無知的找人裝潢,又沒有監工,現在問題就一一冒出,還得面對敷衍欺騙客戶的水電工人。財務麻煩不小,畢竟現在的生活方式也不過是把債務延後用以維持生活罷了。
我想原因應該是最近做的一個案子。說真的並不是很難的工作,雖說有部分不熟悉,但有原先的程式碼可參考,評估一下也就接了。似乎案主挺高興的,應該是燙手山芋,時間又趕。真的做下去,果然發現問題很多,規格不明、變數多、文件與資料都欠奉,但總之最後都找到方法繞過問題。需要對方提供資料所以卡住的時候,就先切換到不會卡住的地方繼續做。
我發現,我似乎自動地在做著一些以前會讓我不滿的事情。工作態度以及心態上似乎都微妙地改變了。這一年多來的經歷,大概是我人生最缺錢最困苦的時期,但從那中間,我好像領悟了些甚麼,思考的方式不自覺地延著與一年前不同的迴路在運作著。
自己最大的問題,是我總是從錯誤中學習,而非直接由別人經驗學到。世上可犯的錯誤很多,有些錯誤的後果是擔負不起的。至今為此我已經付出很大代價。
但好處是,一旦我學到甚麼,最終修正到了正途,便總有莫名的篤定,似乎知道繼續走就對了。對人生,我從來不是很講邏輯,總是憑著感覺任性的前進。也許這次的經驗讓我感到,還是有些能力可以運用,只是要找出適合的場域。很奇怪的我並不擔心,時機總會來到,若永遠沒有,也是命定,但求無愧於心。
2007年7月4日
acpid 與 notebook 的特殊按鍵
經常會大家很講究某 Linux distribution 有沒有 out-of-box 就支援某某 notebook,其實這很不容易的。要想想廠商都已經特別裝好、設定好了 Windows 才拿出來賣,但 Linux 經常可沒先裝好。如果從一台沒裝好的 Notebook 自己拿原版 Windows 光碟開始裝,也是要下載很多東西,一點也不容易啊。
目前的 distribution 設計都進步很多了,各層分工合作,就算有特殊鍵沒支援的,要改成支援也是很簡單。這裡大致介紹一下怎樣讓特殊按鍵們產生作用。先說明原理:特殊鍵一般都是會產生 acpi event,但這個 event 往往系統認不得。這裡 acpid 扮演的角色就是把這個認不得的 event 利用呼叫 acpi_fakekey 的方式變成假裝按了一個鍵,而這個鍵系統認得,就可以產生相對應功能啦。
實例說明:我的 volume-down 降低音量鍵沒用,那先跑 acpi_listen,然後按 volume-down 一下,看看出來的結果。以下是我的 notebook 上出現的:
目前的 distribution 設計都進步很多了,各層分工合作,就算有特殊鍵沒支援的,要改成支援也是很簡單。這裡大致介紹一下怎樣讓特殊按鍵們產生作用。先說明原理:特殊鍵一般都是會產生 acpi event,但這個 event 往往系統認不得。這裡 acpid 扮演的角色就是把這個認不得的 event 利用呼叫 acpi_fakekey 的方式變成假裝按了一個鍵,而這個鍵系統認得,就可以產生相對應功能啦。
實例說明:我的 volume-down 降低音量鍵沒用,那先跑 acpi_listen,然後按 volume-down 一下,看看出來的結果。以下是我的 notebook 上出現的:
john@Portege-2000:~$ acpi_listen嗯嗯,可見按下跟放開都會產生事件,我們這裡抓那個放開的事件就好。畢竟按下了才有可能發生放開嘛。然後把這個事件加到 /etc/acpi/events 底下,新增一個檔案 tosh-volume-down
hkey VALD 00000000 00000102
hkey VALD 00000001 00000102
# /etc/acpi/events/tosh-volume-down這裡頭的意思是說,如果抓到了這個事件,就呼叫 /etc/acpi/voldownbtn.sh。這個 script 其實就是統一拿來降低音量的,內容為:
event=hkey VALD 00000001 00000102
action=/etc/acpi/voldownbtn.sh
#!/bin/bash其中 /usr/share/acpi-support/key-constants 就是 kernel 認得的按鍵代碼,$KEY_VOLUMEDOWN 的值是 114。所以日後每當我按了 Toshiba 自己特別的 volume-down,就會對應到 acpi_fakekey 114,等於是按下了系統認得的降低音量鍵。在新版的 gnome 中,這鍵系統會認得(也可以自訂,把他的作用換成其他的,例如升高音量? = =),所以會有漂亮的 UI 一起搭配起來,讓我看到目前的音量大小。一般說來特殊鍵也不過就那幾個,所以就算完全沒支援,也一下子就設起來啦。
. /usr/share/acpi-support/key-constants
acpi_fakekey $KEY_VOLUMEDOWN
2007年7月3日
"Agile" Development?
If you're reading this and you're unfortunately a software developer, I do suggest you read Good Agile, Bad Agile. It has been in my bookmarks for almost an year and now I finally managed to read it. That gives me a whole different view towards the agile method.
2007年6月28日
「競爭力」的迷思
今天看到的一段話引起我很深的感觸。
Quote from a slashdot comment under the topic "Internal Microsoft Email about Life at Google"
by Techguy666 (759128) on Wednesday June 27, @12:21PM (#19664409)
Allowing someone to behave detrimentally in a work environment sets a dangerous precedent because nobody works in a bubble; it changes the work culture to one that benefits the organization unequally over the individual, it creates health risks, and combined, potentially skews a society's economy. That's why I care if *you* work yourself to the bone. You're not only my colleague but you're a barometer of the world around me.
這是個很常見的問題,以公司的角度,只要他們可以將員工設計成可替換的零件,那麼零件的損壞對於公司就沒有重大的影響。如此一來,公司的最佳選擇就是極度壓榨,把健康搞壞也沒問題,再替換就成了。對大公司而言,替換的人選可是排成長列。(我之前的主管就是明證)
但以員工來說,這樣的文化會造成兩難。如上文所述,假定你每週工作七天,一天24小時隨時待命,而共同的老闆質問為何我無法每天完成二十項工作,這就很討厭,你的工作習慣就會影響我。而如果上司決定將同事的態度視為「正常」而要求其他人效法,那麼你就創造了一個讓大家燒乾的環境,那麼你就會影響到我。而如果你因為過度工作而感冒,還堅持來上班而傳染了我,我以及其他被傳染的正常人就得待在家,而這也影響到我。
這種有害的工作習慣先例一開,所有人都會被影響。這把工作文化轉變為對公司有利,但對個人不利。除了健康風險,事實上這也潛在地搞壞了上班族行情。只要有一人這樣做了,那麼他就成為整個環境中評估大家好壞的準繩。
這是個典型的 Prisoner's dilemma(囚徒困境)。如果大家合作,那麼成果對於團體(員工)是最佳的,然而由於總會有人思考自身的最佳利益而非群體的,最終結果反而對團體不利。在目前的台灣,這問題無解,因為我們鼓勵 work harder 而非 work smarter. 這也是為何我們工作時間長而薪水低。這也是為何我們的「競爭力」總是那麼高。廉價勞工誰不要呢?
Quote from a slashdot comment under the topic "Internal Microsoft Email about Life at Google"
Re:Who died and made you boss?
(Score:5, Insightful)by Techguy666 (759128) on Wednesday June 27, @12:21PM (#19664409)
If someone likes working all the time, why not respect that and move on with your life?As long as it doesn't intrude on my life, I'm all for that. However, if you work 24/7 and our mutual boss wants to know why I'm not accomplishing 20 tasks a day, that gets annoying and your work habit is affecting me. If our mutual boss decides to make you the "norm" and expects everyone to follow suit, then you've created an environment for burnout and your work habit is affecting me. If you get in the habit of working 24/7 and you catch a cold and come in to work anyway, and I catch your cold, your work habit is affecting me. You infect me with a cold and I'm staying home, dammit. You infect other, saner, people and they'll stay home too.
Allowing someone to behave detrimentally in a work environment sets a dangerous precedent because nobody works in a bubble; it changes the work culture to one that benefits the organization unequally over the individual, it creates health risks, and combined, potentially skews a society's economy. That's why I care if *you* work yourself to the bone. You're not only my colleague but you're a barometer of the world around me.
這是個很常見的問題,以公司的角度,只要他們可以將員工設計成可替換的零件,那麼零件的損壞對於公司就沒有重大的影響。如此一來,公司的最佳選擇就是極度壓榨,把健康搞壞也沒問題,再替換就成了。對大公司而言,替換的人選可是排成長列。(我之前的主管就是明證)
但以員工來說,這樣的文化會造成兩難。如上文所述,假定你每週工作七天,一天24小時隨時待命,而共同的老闆質問為何我無法每天完成二十項工作,這就很討厭,你的工作習慣就會影響我。而如果上司決定將同事的態度視為「正常」而要求其他人效法,那麼你就創造了一個讓大家燒乾的環境,那麼你就會影響到我。而如果你因為過度工作而感冒,還堅持來上班而傳染了我,我以及其他被傳染的正常人就得待在家,而這也影響到我。
這種有害的工作習慣先例一開,所有人都會被影響。這把工作文化轉變為對公司有利,但對個人不利。除了健康風險,事實上這也潛在地搞壞了上班族行情。只要有一人這樣做了,那麼他就成為整個環境中評估大家好壞的準繩。
這是個典型的 Prisoner's dilemma(囚徒困境)。如果大家合作,那麼成果對於團體(員工)是最佳的,然而由於總會有人思考自身的最佳利益而非群體的,最終結果反而對團體不利。在目前的台灣,這問題無解,因為我們鼓勵 work harder 而非 work smarter. 這也是為何我們工作時間長而薪水低。這也是為何我們的「競爭力」總是那麼高。廉價勞工誰不要呢?
訂閱:
文章
(
Atom
)