陳志翰(@Sir阿怪):二進位制?十二進位制?
陳志翰(@Sir阿怪),來自臺灣,他是唱片製作人,為張惠妹、范逸臣寫過主打歌;他還是碼農,每週都要去參加“嘿嘿星期四”的coding聚會。關於他,我們有無數的問號,但是在訪談結束後,他的跨界生活似乎又變得順理成章,不緊不慢。“寫歌和寫程式對於我來說就是一件事。”“寫程式寫得好好的幹嘛創業呢?”本期跨界碼農陳志翰,將向你展示一種不一樣的生活態度。他的不同來自於何處,可能看完之後,你就會有自己的答案。(注:在音樂中,一個八度含有12個音符,固有12進位制之稱。)
會寫歌的數學系學生
我從來都沒有討厭過數學老師,就算老師討厭我也沒關係,你能把我怎麼樣呢,你能咬我啊?
圖靈社群:你大學是學什麼的?
因為我喜歡數學,大學讀的是數學系,我們系就沒有幾個女生,僅有的幾位也很難算得上女人。臺大數學系讀一年,被退學。當時沒有想到他們(校方)那麼強勢,不去上學就會被退學(笑)。後來換了一家大學,文化大學,又被退學。最後我終於在東吳大學數學系畢業了。這種事習慣就好。我們只有前十名可以繼續讀碩士,讀博士。那其他人只能當中小學老師、補習老師,而我又不喜歡當老師。
但是後來我在英國讀碩士時,也會接家教的工作。那邊的小孩如果數學不好也不會討厭數學,因為他們的老師都很喜歡數學。他們可能會說:“你不會沒有關係,可能你還沒有開竅,但是拜託你不要討厭數學哦。”這是一種感情問題,很多人是因為討厭數學老師,才導致後來數學不好。像我,就是比較幸運的了。我從來都沒有討厭過數學老師,就算老師討厭我也沒關係,你能把我怎麼樣呢,你能咬我啊?(笑)
圖靈社群:你的演藝圈生涯是怎麼開始的?
我從高中的時候就開始自己玩些音樂器材,我國中(初中)開始學吉他。其實主要是在鬼混。我大三開始就做楊德成的BOM boy(扛麥克風的)。數學系讀不好,自己心裡也知道,但是還能寫點東西,而且還愛慕虛榮,想認識明星,我就琢磨怎麼能混進演藝圈。當時剛好有人在做電影《麻將》的原聲帶,我就去問楊導(楊德昌):“我在寫歌,能不能聽一下?”他聽完了之後,覺得還不錯,於是我就為張震寫了一首《無能為力》,那是我第一首拿出來發表的歌曲。那個時候數字音樂還不發達,當時最實在的事是硬碟剪輯、硬碟錄音。我做音樂的初期,依賴人手動的成分還是很大,跳進跳出都要人手動調整。要搞線性剪接像鬼一樣的困難。我媽是一位舞蹈學院教授,我從小就拿16釐米或者超8的膠片在剪輯。我總是在問:“我真的可以剪嗎?”
這就是真正的剪輯,因為用到了剪刀嘛。
圖靈社群:你現在的工作需要和數學或者程式設計相關的知識嗎?
我現在的工作只需要紙跟筆就可以完成了。
但是現在哪有行業會完全不涉及計算機呢?比如小燕姐的女兒在美國學的就是調色專業。做這種工作的機器(作業系統)都是Linux,硬體就要焊上去。如果需要自定義就一定需要Linux。如果需要做別的事可能用別的作業系統會好一點,但是如果這臺機器只是用來調色的話,那Linux就是能夠讓硬體和軟體最好地粘合在一起的系統。如果有更進一步的要求,你只能自己寫一個OS了。所以簡單的辦法就是,只需要把driver搞定就可以了。
圖靈社群:很喜歡你為阿妹寫的《三天三夜》。
中國好聲音還沒有給我《三天三夜》的版稅,這件事是和經紀公司在談,他們應該是需要付很多錢的。每次張惠妹開演唱會,就會有朋友給我打電話,喊:“阿怪你聽一下!”然後就只聽見全場吼叫(“三天三夜……”)而且他們還一定會讓我把這首歌聽完,才說:“阿怪,你有沒有聽到啊?”
無論如何,還是要謝謝大家捧場。
- 圖靈社群:“你看起來還挺像碼農的。” |
碼農基因
“那你現在怎麼不混演藝圈啦?”
“演藝圈的人好無聊啊。”
圖靈社群:你是怎麼開始學程式設計的?
我小學三年級的時候就開始在Apple 2上寫程式,其實不是真正的Apple2啦,只是一臺相容機。“買房子,送電腦”,因為當時房子冗餘,所以經常搞一些雜七雜八的活動,不知道他們(房地產商)在哪裡搭上了一家山寨Apple2的廠商。這臺Apple2長得跟真的一模一樣,128K,這個數字當時說起來好驕傲哦。最開始的愛好就是打遊戲,然後就是改遊戲,改無敵不死之類的。
圖靈社群:現在在寫什麼程式嗎?還在不斷學習嗎?
我現在在做的主要是自己在改一些框架。如果要寫什麼東西一定不是用學的,而是先把需要做的事想清楚。比如如果要寫框架,就先搞清楚http,但也不用搞得太清楚。只要把人家丟過來什麼,然後應該吐出去什麼弄明白就行了。然後就可以開始寫了,其實說穿了,你只需要知道socket程式設計就可以了,這個誰不會啊?但是這個過程中就會發生一些雜七雜八的事。關鍵是沒有人會逼著我交稿,所以我就有足夠的精力去把這些都搞明白。這不是在學。這就像是聽音樂,一開始你可能聽布魯斯,後來你就會彈布魯斯,會唱布魯斯。這時候你可能忽然覺得爵士也不錯啊。這能算是在學嗎?或者只是在找新的玩意兒。因為我已經不以程式設計為生了,所以我一邊寫,一邊看還有什麼新玩具。
我有什麼問題就去IRC解決(一種即時聊天的聊天室,按照不同話題分類)。去StackOverflow上問問題就要很認真,而我這個人又超不認真,這不太符合我的個性(笑)。在IRC上只要纏上什麼人,然後給他發資訊就可以了。只要他不幸看到了,一般都會忍不住回你的。
圖靈社群:那你在未來有沒有什麼特別想做的專案?
我想寫一個midi 轉簡譜軟體,因為現在沒有什麼簡譜排版軟體。這個用LaTex就不行了,雖然它可以應付很多場合,而且很多人都很崇拜Knuth,聽到Knuth的名字好像就要舉起右手敬禮似的。但是很多人都只用簡譜,而且用簡譜的話不用管do在哪裡,大多數人都沒有絕對音感。簡譜可以用來應付大多數人。
圖靈社群:寫程式和寫音樂對你來說有什麼相通之處?
學習的部分其實是整件事裡面最無聊的,但是一旦你熬過去了,最終就可以說點什麼了。搞這些東西最快樂的時候其實是,你弄出一些東西,而這些東西是你以前想都沒想過的,這才是最爽的!但是做音樂的時候總需要開會,我很不喜歡這個部分。
寫程式是一個你重新瞭解已經知道的東西的過程。我維護過很多語言的程式碼,也都是在什麼都不會的情況下。寫程式就是你誠實的交代,你心目中的事是一件什麼樣的事的過程。
對我來說,(寫程式和寫音樂)其實都是一件事,就是對一件我已經知道的事,找到一個新的說法。要找到一種方式來表達,(對於寫程式來說就是)說得更加乾淨利落。這個時候要是找到這種方法,就是最快樂的事。也就是“找到一個新的搞法。”
圖靈社群:說實話,你這樣的跨界跨得還是挺大的,有沒有想過自己為什麼這麼特別?
我小的時候就隱隱約約地感覺我能夠做點什麼,我真的不知道自己在自信什麼,我的功課也不好。都是第二天考試,完全不知道要考什麼,然後課本整本拿過來開始看。但是有一點我可以說的就是,我的閱讀量真的很大。
我覺得自己主要是運氣好,一直堅持做自己喜歡的事。在我還不知道自己能搞出什麼名堂的時候,這叫做任性。“居然被我猜中了,我居然可以混出一點名堂!”你不覺得回想過去,會捏一把冷汗嗎?如果我沒有遇到楊導(楊德昌),如果我沒有遇到當年提攜我的張雨生老師,我其實就是一個自以為會寫歌的數學補習班老師。我覺得近20年來都很少有比我更幸運的人。如果再給我一次機會,我真的不知道自己有沒有那個種,再幹一次。我當時入行的時候其實不過是愛慕虛榮而已。
對我來說什麼都是娛樂。其實寫什麼都一樣,能不能賺錢就看上帝了。
- “你這種表達方式和苦逼碼農很不一樣啊。他們一般就是學習、奮鬥,練武功祕笈,最後就是:‘我終於煉成了!’” |
不同
“臺灣資訊管制?他敢管!他敢管我就敢把總統府黑掉,你以為我不會啊。”
圖靈社群:臺灣的老一輩會不會覺得搞IT的就是修電腦的?
其實這種事都賴自己啦,你可能是從國中開始就自告奮勇幫很多親戚朋友修電腦了,活該啊!
圖靈社群:內地的程式設計師和臺灣的程式設計師在你看來,最大的區別是什麼?
我從2010年開始在北京租房,因為租了房子,所以就要來住,否則多浪費。
我覺得大陸程式設計師可能還是要窮一點,生活壓力也大一些。我感覺他們好像不太出來玩。在臺灣,我自己會固定參加一個叫hacking Thursday的活動。我們管它叫的“嘿嘿,星期四”。在一個類似的活動中,你沒事的話就可以來分享一些東西,有問題也可以來問一下。我有問題也會跑去問,比如說我剛裝上Debian的時候就有很多問題要問,然後就會急著找人幫我解決實際問題。在那裡也會了解到別人都在玩什麼有意思的東西,比如說我也是在活動中聽說了Ubuntu,然後連夜搞來玩,跳槽過去,然後再跳回來。等自己知識累積得夠多了,也可以去幫助別人。具體到“嘿嘿星期四”這個活動可能要更專業一些,地點都在咖啡店,一個月會有一次主題活動。但是本質是大家聚在一起亂哈哈。大家規定,不許寫公司的程式。我們雖然經常跑題,但是這也是樂趣所在。經常會有一些藝術家來找我們,08、09年的時候,有一些藝術學院開始搞Aduino,其實就是裝置藝術,需要響應的裝置。他們說:“聽說需要一種叫做C++的語言。”我就說:“哦,這個我會一點,我查一下哦。”
我在北京發現的這種型別的聚會都是洋人,他們都在工體對面一家叫做tram的地方。這樣的聚會就是聚在一起,然後放出風聲,然後雜七雜八的人就都會來了。來了之後就會發生一些還蠻無聊的事(笑)。重點就是聚在一起玩啊。
圖靈社群:臺灣的創業氣氛是怎樣的呢?
大陸的碼農都很喜歡創業,不知道為什麼。我們那創業的都是忽悠的人,寫程式寫得好好的幹嘛創業呢?除非是我想要一個什麼東西,實在是沒有人做,而我又實在很想要它出現,我才會考慮創業。創業這種東西我覺得就是你看一樣東西不順眼到受不了了,就想:媽的,我來吧!剩下的那種創業就無聊死了。我感覺大陸程式設計師都還挺著急的,可能是看到身邊有人一夜暴富。但是我不喜歡這樣做事情。在臺灣可能工作5、6年的程式設計師月薪會有兩萬人民幣左右,更高的也會有。但是話說回來,錢哪會有夠的時候呢?
圖靈社群:大陸和臺灣的開源專案在你看來有什麼不同?
大陸其實有很多不錯的開源專案,但是大家交流都用中文。要知道,臺灣人、韓國人、日本人大家都很認命地摸摸鼻子,然後就寫英文了,雖然大家的英文也都很破,但是這樣至少意味著,法國人也可以幫忙給我們送patch啊。要是洋人實在看不懂,人家就不來幫忙了,多可惜。比如說我那時候幫忙人家寫LXDE(這是一個純臺灣的專案,輕量級的桌面系統),我也不能說自己的英文寫出來多漂亮,但是我寫的那種破英文,也會有法國人來幫忙。我覺得大家是不知道這個世界上,除了自己,也有其他好人。首先要做到的是信任,讓自己可以被別人相信,然後要相信別人。
圖靈社群:對現在的生活滿意嗎?
我覺得自己的命已經很好了,我可以看到怎麼用算盤計算,也親眼看到數字時代從無到有,就在我身邊發生。我參與過進過坎城(戛納)電影節的電影,那沒有什麼,只不過是拍一部電影而已。我參與過全亞洲賣500萬張的唱片,那也沒有什麼,只不過是好好做唱片。重點是,它不是我的重點。這些都沒有什麼大不了的。就像拉斯維加斯的總統套房,我也睡過,沒什麼大不了的。我覺得最重要的是要做自己喜歡的事,而且要做得實在。
更多精彩,加入圖靈訪談微信!
相關文章
- 進位制詳解:二進位制、八進位制和十六進位制
- JavaScript 二進位制、八進位制與十六進位制JavaScript
- 【進位制轉換】二進位制、十六進位制、十進位制、八進位制對應關係
- 二進位制,八進位制,十進位制,十六進位制的相互轉換
- 計算機基礎進位制轉換(二進位制、八進位制、十進位制、十六進位制)計算機
- java中二進位制、八進位制、十進位制、十六進位制的轉換Java
- 二進位制,八進位制,十進位制,十六進位制之間的轉換
- Python 進位制互相轉換(二進位制、十進位制和十六進位制)Python
- 二進位制與二進位制運算
- JAVA 二進位制,八進位制,十六進位制,十進位制間進行相互轉換Java
- 二進位制、十進位制與十六進位制相互轉化
- 十進位制——二 (八、十六 )進位制
- 大話二進位制,八進位制,十進位制,十六進位制之間的轉換
- [計算機基礎] 計算機進位制轉換:二進位制、八進位制、十進位制、十六進位制計算機
- (二進位制)
- 二進位制
- 二進位制轉十進位制快速方法
- 一看就懂二進位制、八進位制、十六進位制數轉換十進位制
- python進位制轉換(二進位制、十進位制和十六進位制)及注意事項Python
- Oracle中的二進位制、八進位制、十進位制、十六進位制相互轉換函式Oracle函式
- 進位制之間的轉換之“十六進位制 轉 十進位制 轉 二進位制 方案”
- JavaScript十進位制轉換為二進位制JavaScript
- Oracle二進位制與十進位制轉換Oracle
- 十進位制轉二進位制推導(草稿)
- 整數轉化成八進位制、十六進位制、二進位制,以及轉回
- 【轉帖】Oracle中的二進位制、八進位制、十進位制、十六進位制相互轉換函式Oracle函式
- 什麼是二進位制?二進位制如何轉換?
- JavaScript 進位制轉換(2進位制、8進位制、10進位制、16進位制之間的轉換)JavaScript
- 04 二進位制
- 位,位元組,二進位制,十六進位制間的關係
- 十進位制與二進位制互相轉換指南
- 二進位制轉十進位制快速轉換方法
- 進位制與二進位制及相關轉換
- Qt進位制轉換(十進位制轉十六進位制)QT
- 遞迴函式實現十進位制正整數轉換為二進位制,八進位制,十六進位制遞迴函式
- 1474 十進位制轉m進位制+1475 m進位制轉十進位制
- (轉)【iOS 開發】二進位制、十進位制、十六進位制相互轉換的方法iOS
- ORACLE使用函式對二進位制、十進位制、十六進位制數互相轉換Oracle函式