1. 程式人生 > >匆匆那年,紀念我的2014

匆匆那年,紀念我的2014

別了2014,別的是惋惜,是逝而不返的光陰。

回想2014,確實經歷了很多,辭職去西藏,找工作,面試,適應新的公司。人,經歷的多了,也就慢慢成長起來了。

一場說走就走的旅行

有人說,人的一生中至少要有兩次衝動,一次為奮不顧身的愛情,一次為說走就走的旅行。不管這是一種蠱惑,還是 箴言,我都依然享受這份青春般張狂而又有點浪漫的生存表達。

有些事是需要兩個人完成的,比如愛情,生猴子。而有些事情是自己一個人就夠了的,比如旅行。其實,對於我來說旅行也不是一個人能完成的,因為我具備動漫主角的附加屬性,路痴,方向感差(簡直不能說有方向感),於是這場說走就走的旅行就拉上了好友,作為路上的嚮導加指南針。

去西藏的想法是2013年就有的,在我的

別了2013,來吧2014中可以看到。從某種角度來說,這種說走就走的旅行多少是不負責任的,家裡父母不知道,如果真的有什麼意外發生,那有可能毀掉一個家庭。不過,誰沒有任性的時候,偶爾任性一會,在青春的最後一刻發下光和熱,多少也是有些意義的。

4月份的時候,出去走走的想法愈來愈熱烈,於是跟好友商量,瘋狂一把吧,咱們騎車去西藏。於是,辭職,購買裝備,拉練。先說下川藏線情況,沿318國道從成都至拉薩全程2154公里,共需翻越海拔5000米以上的高山2座,4000米以上的高山9座,全程騎行要25天左右,平均每2天就要翻一座高山,因而,無論對於自身體力還是意志都是一次不小的挑戰。為了適應這份挑戰,我們在出發前挑選了北京郊區的妙峰山作為拉練目標。綿延15公里的上坡路,急劇的體力消耗,看不到山頂的坡道,時時不在考驗我們的毅力。直到爬上山頂,俯瞰大千世界,感覺身上所有的累和疲憊都是值得的。

5月初,我們從成都出發開始了川藏之旅。臨行前按耐不住的興奮,路上秀麗的風景,目標相同的夥伴,變幻的天氣,陡峭的懸崖,意料之外的險情,到達目的地的喜悅,我們經歷了太多太多。單拐的騎行者,環遊中國的徒步者,拄拐的推車者,三步一磕頭的朝聖者,六七十歲不服老的"頑童",我們感動的太多太多。蔚藍的天空,清新的空氣,鬱鬱蔥蔥的森林,緩緩流淌的河流,巍峨的雪山,茂密的灌木叢和高原草甸,悠閒自得的犛牛,活蹦亂跳的藏香豬,偶爾幾縷炊煙,彷彿置身於夢境一般。身上的疼痛和疲倦提醒著自己,這一切都是真實的,此時此刻的我正行走在如此美麗的地方,如此接近自然的地方。藏族人民的淳樸熱情,一句“扎西德勒”加上一碗暖暖的酥油茶,給人一種賓至如歸的感覺,忘不了“三姐妹”,忘不了所波大叔。來到布達拉宮的面前,我即興奮又不捨,興奮的是目睹了布達拉宮的芳容,不捨的是我們的旅程也要告一段落。正如天下沒有不散的宴席,世上也沒有永無止境的旅程,終究要停下來,歇歇腳,為下次的旅行做些準備。

一場說走就走的旅行,這是今年最大的收穫。

噢,我也在網際網路公司

西藏之行回來後,由於醉氧的原因,修整了將近1個月,中間夾雜著找工作,面試。由於兩個月的迴歸自然,我的程式設計方面的知識也基本忘的差不多了,面試過程中屢次被虐。人啊,不在被虐中爆發,就在被虐中滅亡。隨著被虐的次數多了,以前落下的知識也都補回來了,順利的收到現在這家公司的Offer。

這是一家創業型的網際網路公司,不大,但氛圍我很喜歡。面試時boss說的一句話記憶猶新,“老闆喜歡做的是選擇題,而不是思考題”。思考題是老闆留給我們做的,大到公司如何更好的運作,小到系統如何擴充套件,某個模組如何實現,怎麼做更合適。我們確定好要解決的問題後,查資料,思考,整理,列出問題可供選擇的答案,然後讓老闆或boss作出選擇。這樣,你的決策或想法被公司採納,然後公司或專案往好的方向發展,老闆高興,自己也挺有成就感。更重要的是,在不斷的思考中你才能進步。

不管是在大公司還是小公司,一定要做思考者,而不是執行者,這是你價值的體現。最近公司招聘,有很多幾年工作經驗的應聘者,自己能力一般要價卻高的離譜,總以為自己在老東家值那麼多錢,現在就值這麼多。殊不知,你的價值不是上家定的,而是在整個市場中你被取代的機率決定的。一個工作幾年的Java程式設計師,只知道SSH框架,沒有讀過JDK原始碼,不瞭解Java核心類的底層機制,還好意思說上家給我xxx,不看看那是因為你資歷老而已,跟能力沒什麼關係。所以,堅持學習是必須的,多思考,多總結,多積累。

看,我也為開源奉獻了力量

2013年註冊了GitHub賬戶,也沒登陸過幾次,以至於連GitHub上常用的watch,star,fork都不會用,一直以為只能通過fork來收藏其他專案。西藏回來之後,心收了很多,也慢慢淡定下來,決定好好積累下技術,於是重新拾起GitHub。到目前,雖然沒有為其他專案貢獻過程式碼,不過在自己的一畝三分地上也是自得其樂。關注了大量好的開源專案,今年好好研究下這些專案的實現。以前在CSDN上寫過2014年的部落格計劃,不過出去跑了一圈回來,也沒繼續寫下去,總感覺自己東西學的太淺,動筆沒什麼可寫的。看來需要積累吧,只有厚積才能薄發。

啊,軟體還能這樣設計

前段時間偶然接觸到領域驅動設計的思想,眼前一亮,軟體還能這樣設計?!以前使用SSH,關於為什麼要分那麼多層,每層的作用,為什麼要用實體Bean,都是簡單的想想而已,並沒有深究裡面的設計思想,而領域驅動設計,不僅告訴我這樣設計的原因,也讓我看到領域驅動的產品設計和開發的好處。不過,雖然領域驅動設計誕生10多年了,在國內SSH橫行的世界並不多見。個人認為主要是領域驅動設計實施很難,要想實施領域驅動設計,首先要有領域專家,然後有豐富經驗的領域開發人員。一個系統可能會涉及到多個領域模型,模型的精化,提煉是個漫長的過程。並且實施領域驅動設計的專案本身規模也不小,開發週期很大,如果前期領域模型沒有提煉好,後期很有可能開發程序受阻,甚至需要推毀重做。一箇中小型的系統採用普通的架構足矣,況且掌握SSH的程式設計師一抓一大把,一般企業也沒有那種遠見,讓你使用什麼勞神費力的領域驅動設計。

不過,我還是挺看好DDD的,學習DDD也是今年我的重要目標。除了DDD,最近流行RESTful+微服務,還有火爆天的Docker,這些技術或概念還是要關注的,與時俱進是程式設計師的基本要求之一。

目標

2015,我在期待著什麼?

2015,DDD學習。

2015,嘗試錄製一份教程。

2015,維持一個開源專案。

2015,研究好的開源專案。

2015,向優秀的人學習。

2015,做個有深度,廣度的人。

2015,Study step by step!

別了2014,Come on 2015!