Posted on 2011-08-09 14:09
dennis 閱讀(7570)
評論(3) 編輯 收藏 所屬分類:
涂鴉 、
Clojure
沒有耐心看經(jīng)過的請直接拉到末尾看slide列表。
這個聚會是由江宏首先提議的,我參與協(xié)助。目的是讓長三角地區(qū)對
clojure語言感興趣,或者正在使用的朋友當面認識和交流一下。會議的組織過程一波三折,首先是會議地點本來定在了上海google辦公室,但是后來google那邊又說不讓過去,我再聯(lián)系了原來淘寶網(wǎng)的同事火狐,經(jīng)過他的努力和幫助,最終將地點確定在了上海大眾點評。要感謝大眾點評網(wǎng)和火狐的幫助,不然這次活動估計就黃了。會議的日期選定也比較偶然,跟七夕撞在了一天,并且8月6號這天說臺風“梅花”要在江浙一帶登陸,上海要刮多少級多少級的大風,加上我和杭州的幾個朋友過去要坐高鐵,那心里就七上八下了,搞不好就要被“掩埋”了。我們還開玩笑說最好買火車中段車廂的票為妙。
8月6日一早,和同在淘寶的楊冬,加上兩位做ROR的朋友一起出發(fā),天氣沒有想象的糟糕,高鐵一個小時就到了,轉地鐵到大眾點評網(wǎng)大概也才中午12點左右。打了電話給火狐,一起吃了飯然后就直奔大眾點評網(wǎng)。大眾點評網(wǎng)的前臺大廳裝修也是非常熟悉的橙色,很意外周6有很多人,后來才知道是在搞招聘會和培訓。這時候,江宏他們也從昆山趕到了,火狐幫我們定的會議室很大,足夠容納20號人左右。陸續(xù)有人達到,到約定的1點的時候,我記的是來了大概11還是12個人,還有幾個朋友在路上,因此我們決定推遲到1點半再開始。最終來的人估計有15個以上,估計報名的都來了。
1點半正式開始,首先是我來講《clojure概覽》這個topic,主要是一個clojure語言的介紹。這個是我上周開始準備的,在去年《clojure的魅力》的基礎上做了刪減和增加,聽取江宏的意見增加了示例和引子。上周也在我們的團隊講過一次。輕車熟路,也為了給后面的topic留出時間,我講的比較快,大概40分鐘就結束了。
接下來是孫寧(sunng87)講《clojure開發(fā)的生命周期管理》,我對clojure的周邊工具并不熟悉,趁機更好地了解了很多 clojure開發(fā)過程中用到的工具和資料,推薦對clojure開發(fā)感興趣的朋友看下。嘗試了下
clooj,比我預期的要好,遺憾的是還沒有語法高亮,推薦初學clojure的朋友可以嘗試下這個輕量級的IDE。目前最好的clojure IDE還是idea里的La Clojure插件。最后孫寧順便廣告了下
lein-control插件,這是孫寧構建的一個
clojure-control的lein插件,他還貢獻了一個類似python里
fabric的clojure DSL實現(xiàn),讓clojure-control更易用。
接下來是江宏介紹他們開發(fā)
trakrapp.com這個純clojure實現(xiàn)的網(wǎng)站中使用的技術,以及遇到的問題和經(jīng)驗。這個網(wǎng)站基于
compojure這個框架實現(xiàn)的,前端采用backbone.js,后端是MongoDB和postgresql,可以說都是非常“新潮”的技術。他在談遇到問題的時候,提到clojure的stack trace又長又丑,這一點深有體會,clojure的異常堆棧包含了java和clojure的,整個調用鏈相對較長,非常不利于問題的排查,不知道后續(xù)clojure會不會對這一點做出改進。
接下來是林晴介紹他們一個用scala實現(xiàn)的類似domino的企業(yè)OA系統(tǒng),不過他這個例子給我的感覺更多是發(fā)揮了mongodb的schema free的特點,沒有體現(xiàn)出使用scala的好處來。我對scala的觀點一直很明確,scala想做JVM上的c++,從個人角度不喜歡這種多范式的語言,并且語法不符合我的胃口,特別是類型系統(tǒng)這塊特別復雜,我怕我在寫scala的時候還要參考一本厚厚的reference,這不是我想要的。而clojure的核心就非常小,相對符合我的期望。
作為東道主的火狐介紹了
大眾點評網(wǎng)的新架構以及他們從.net往java遷移的經(jīng)驗,他們的新架構也是做服務化和中心化,對于.net和java平臺來說,遷移更多是從人力成本和一些其他因素決定的,當然,遷移最重要的還是要有公司高層的全力支持,特別重要的一點是如何讓老員工也參與這個過程。因為老員工對現(xiàn)有系統(tǒng)和業(yè)務最熟悉,將他們排除在外閉門造車是注定要失敗的。
最后是同樣來自昆山文石的吳哲介紹如何在半天內實現(xiàn)一個HTML 5的游戲,他介紹的
processing.js非常有趣,processing本身是一門編程語言,有人將它移植到了js上,可以直接在支持html5上瀏覽器展現(xiàn),效果相當cool。巧合的是我在回去后的第二天去書店的時候,竟然在某個角落看到《
processing互動編程藝術》這本書,買了下來準備了解下。做數(shù)據(jù)圖形化的同學可以關注下。
總體來講,這次聚會的效果超過我的預期,在超強臺風的陰影下和七夕愛情的感召下還有這么多人趕過來,作為組織者之一非常感動。并且topic講座也讓我學習了一些東西,最重要的是當面認識了一些網(wǎng)上交流過的朋友,給我印象深刻的是看起來非常老成的孫寧,完全不像個85后。還有個印象深刻的細節(jié)是現(xiàn)場的5,6臺mbp,這里面還是因為有同學是在搞ROR的因素。
最后,給下slide的鏈接如下:
1,我的《
clojure概覽》,源碼在
github上。
2,孫寧的《
Clojure開發(fā)的生命周期管理》,
lein-control和
clojure-control。
3,江宏的《
Clojure web development》,他們開發(fā)的網(wǎng)站
4,吳哲的《
How to build a html5 game in half a day》
5,火狐的《
大眾點評網(wǎng)新架構》
6,
cn-clojure主頁