之前寫了一篇2013總結-2014計划 http://www.cnblogs.com/Bond/p/3498264.html 草草地談了一下2013做的一些項目,以及自己的一些感想,還列出了2014的一下計划。可以計划完全沒趕上變化,最大的變化就是我轉了前端,脫離了微軟陣營。電腦手機也都准備全部使用Apple的,因為我是一名前端還是做移動端的(很多前端都是mac黨,移動端必須iphone才給力)。
匆匆的那年-2013
那年我剛畢業、那年我還在成都、那年我還在做NET、那年女朋友還沒畢業、那年就是去年2013年,現在我已經畢業一年多、北漂到了帝都、轉做了前端、女朋友也畢業了,一切都發生了很大的變化,2014即將過去,閑來寫寫總結,再次計划一下2015。
匆匆的那年-2014
2014年年初女朋友只身一人到帝都實習,我非常不放心,本想一起前往,但是擔心她去北京不適應就想回成都,所以就等她去北京適應后確定不回成都,我再從成都辭職然后去帝都和她會合。之前也想勸她不去北漂,北漂不易,北漂我們要放棄成都的所有朋友,可否選擇留在成都,不去北漂,可是沒能阻止她,畢竟她要去的那個公司還是不錯滴,我也就支持她的選擇。事情的發展還算順利,她一人到北京去公司實習,自己坐飛機去,打的到住的地方,公司免費提供住宿,去公司也遇到一些好心人的幫助,在北京一切都順利。她去北京一個月之后基本穩定了,於是我就准備辭職,在成都和同事關系處得很不錯,公司也有技術大牛大家一起共事一起交流,自己成長特別大。為了女朋友,必須要離職,領導極力挽留,甚至提出說給我女朋友在成都找個好工作,叫她回來,叫我不要走!!!也許她只是說說而已,再說我肯定不能領這個情!!!我的理由他們拒絕不了。提了離職申請,就幫着招人接受手里的項目,主管和我一起去面試選人,面試了N個人,勉強找到了一個合適的人來接手我的工作,讓我感覺到找人好難,找一個技術好點的更難。公司事情處理完了,就處理成都的東西,在成都大學四年,工作一年多,五年多還是有很多東西。把以畢業時舍不得賣的書全都賣了,把一些帶不走的用品都送給以前的基友,把愛車掛網上賣了,把很多舍不得丟的東西全都丟了,然后把棉被衣服全部郵寄到北京(PS:我選了郵政,選德邦物流好點),一些東西寄回老家,自己帶了兩大行李箱做火車到了北京,女朋友來北京西站接的我。一起坐地鐵回家,那是我第一次來北京,第一次做地鐵,倒了好幾次地鐵,最后坐13號線,感覺好奇,是在路上的,還能看到外面(PS:成都的地鐵都在地下)。下了地鐵,女朋友幫忙推着行李箱回她住的地方。她公司提供的宿舍環境很一般,她自己就出來租房子住。剛開始也沒什么錢,就租了個很一般的房子,是和別人合租的。房東把套二隔斷成了套三,我們住的那間剛好是客廳,另外兩個是一男一女,還好他們人都不錯,除了不愛干凈其他都好。
回到女朋友住的地方,她一打開房門,我都看呆了、里面一個過道,右邊是進門是廁所,緊接着是廚房,左邊就是我們住的卧室見圖,整個房間只有六七十平米。結構如下圖:
廁所的燈必須一直開着,不然里面過道就是完全看不到,所以廁所的燈都是24小時着的。女朋友進去打開房門,我在一看,更是有點受不了。之前開過視頻看過房間,但是真正看到的時候我還是驚訝了,太小了,房子還是和別人合租的,1400一月,還那么小!想想我在成都那個時候1500租個120平米的套三,三個人住,我一人住一個帶獨立衛生間的主卧,幾十平米,感覺是多么的幸福。來帝都后……房建除了衣櫃、床、一個小櫃子,剩下的空間中間放一張小桌子,我們兩個坐下吃飯都很擠,可想空間有好小!帝都就是帝都!!房價就是不一般貴,住的地方不是一般的小。1400在成都都可以租個不錯的套二了,現在漲了點價,但是1500租個八九十平不錯的套二是沒問題的。房間很小,住兩個人很擠,飄窗只能容下一個人在那里上網,另外一個人必須在床上,我們兩個人蝸居在一個小房間里。放好行李,整理好房建,我們住在一起為了節約房租,我也正式開啟了我的北漂之旅。
從成都辭職后就立馬來到了帝都,來帝都后沒急於找工作,而是先負責在家里收快遞。之前女朋友一個人來北京基本都在外面吃飯,廚房用品,很多電器都沒買,廚房沒有天然氣只能自己買電磁爐。開始一周我就負責買東西收快遞,並且在家里學習。看2013年的總結就清楚,我已經把一半的精力放到了前端,一半的精力放在net,因為那個時候我們已經意識到了做net不是長久之路,看不到希望,所以自己就逐漸往前端走,自己也很喜歡做前端。在帝都開始還是准備找net的工作,准備工作很多也放在net上,家里待了一周,第二周就開始改簡歷,投遞簡歷,並且篩選公司去面試。面試了好幾家公司之后,讓我深深地意思到net確實不行,決心轉做前端,修改簡歷,再也不找net相關的工作。
為什么放棄NET轉做前端
第一net讓我看不到未來,第二我喜歡前端,前端有基礎還行。我的園齡雖然只有2年7個月,但是我在大學很早的時候都已經上博客園了,博客和微博都關注很多net界的大神。也經常看到博客園上很多發:"net何去何從","為什么做net沒有java值錢"、"為什么net都不受大公司愛戴"之類的文章。我深有感觸!最主要是發現很多人都放棄net最后做了java,很多大公司也都轉用java,最直接就是各大招聘網站上15K+的職位NET少得可憐,可是java、php、前端、C、C++一大堆,不管怎么說各種招聘網站的數據就是最具有說服力的。當你做了很多年net之后,你要換個工作,你發現,可供你選擇的職位好少,可供你選擇的大公司好少。說多了都是淚啊,很多人還一直死咬着net不放,極力的去抨擊別人,說net怎么怎么地好,哎!net是好,c#語法很先進,java語言很戳,可是你做net就是很難拿高薪,這是鐵的事實,因為不是人人都是老趙!博文不發到首頁,看到的人不要噴我,這只是我個人感想。在帝都面試了好幾家net的公司,發現只有幾家能夠開得起價的(這個價不高就是10K+),可能我面的公司的原因吧,帝都應該還是有很多土豪公司用net,只是我沒遇到,反正各大招聘網站上的數據很少,而且要求很高,作為才畢業不到一年的人家直接簡歷都不收我的,我面的公司都不是業界出名的公司。我再搜索前端,薪資不斷高出一截,而且要求反倒低很多,基本上國內知名公司都招前端。在成都的工作時候我基本上承擔了全部前端的工作,自己也喜歡前端,對前端還是有一定的認識,基礎還是不錯。所以決定一心做前端,找前端的工作。其實我也做過java,熟悉的就是struts2框架,用java做過一個比較大的網站(五人開發四個月),當時還是我帶隊,2013總結有說到。不過java其他的都不熟悉,不敢直接轉向java。其實還是沒信心找java的工作,我對自己前端還是有信心的。
決心做前端,就找前端的工作了。有朋友推薦騰訊,新浪之類,簡歷給了可是沒回應。不過這里還是感謝極力給我內推的朋友,感謝你,我的好基友。沒回應是我預料之中事情,因為之前自己不是專業做前端的,而且簡歷上也沒有太多和前端相關的作品,前一家公司也是不知名的公司,想要讓人家認可我是很難的,其實基本上就不可能。但是基友認可我相信我,是因為我們很熟,平時經常交流技術,不用看我的簡歷,也知道我幾斤幾兩。因為之前的公司完全無亮點,簡歷作品也無亮點,看我2013的總結就知道我們的經驗了,內推這條路我基本不考慮。 自己只能踏踏實實走簡歷投遞這條路,希望能夠找到認可我的公司。我雖然不會切圖,但是我學過ps、flash、maya、3dmax(不要問我什么專業,我不告訴你,^_^)。雖沒專業做過前端,但是對js這門語言的了解,還是不錯的,看了幾遍《高級程序設計第三版》,《dom編程藝術》從成都到北京的時候,基友還送我一本《Javascript設計模式》,還看了很多很多前端相關的博客文章,自己也收藏了一大堆,也關注了一大堆業界牛人。曾經一直畫大量精力去研究前端相關的東西,感覺自己基礎還行。CSS在大學的時候寫過一兩個項目,看過兩本書,有點基礎,不過CSS代碼還是寫的不咋地。很多公司一看我沒做過前端,對我就完全不認可。不過最后還是找到了認可我的公司,他不擔心我不會切圖,不擔心我沒用過神馬框架之類的。
前端現在又有很多方向,當前很多公司都有移動端經驗的要求,而且將來移動端又是一個趨勢,PC端基本做爛了。我比較喜歡新的東西,喜歡沒做過的,自己沒用過的,這才有挑戰,才有新鮮感。所以后來我選擇了去做移動端,選擇了一個移動端的職位,去公司也是屬於無線組,專做無線先關的業務,自己就踏上了移動前端這條路。關於移動端坑實在太多,我就不扯了,一時半會扯不完,一切都是經驗的積累做多了就知道了,坑踩多了就好了,輪子多造點。還有幾點很重要:一定要對自己高要求,爭取把程序做到最好,能夠優化的一定要做優化,能有更好的實現方式一定用更好的,不管代價再大都要去做,這樣你才會有提升,如果僅僅滿足於需求的實現你將沒啥長進,或者說長進很慢,一定要對自己高要求。
關於面試:技術細節很重要,大公司面試扣的就是細節,聊的就是細節,不太關心你用過什么框架之類的,所以語言基本功很重要,JS功底一定要扎實。我沒啥CSS工地,人家也就問了我基本的,感覺應該還過得去,CSS多看CSS權威指南,好好去領悟。
2014的事情也說了一大堆了,該扯的也扯了一堆。說說自己做移動端的感想吧,也算是做個總結
剛開始做前端,移動端,我連切圖都不怎么會!自己就在網上找了一些教程學習。然后再熟悉下ps的快捷鍵,不想把時間浪費到切圖上,能夠用快捷鍵操作的一定用快捷鍵,把切圖的相關操作做都熟悉一下。我想說:切圖其實還是有技術含量的,很多前端切圖效率很低。
到公司第一個任務就是做一個推廣頁,頁面要求適配PC和移動端。移動端在安卓和ios各有要求,公司有相關app,分別有安卓和ios版本。我們的要求是在公司安卓app(我司的)、安卓瀏覽器、安卓微信、ios瀏覽器、ios微信、ios app(我司的)都應該有不同的展現形式。頁面就是一個頁面,只是一個頁面要做上面說的所有設配的適配,總共7組組合分別做不同的控制。我剛開是做就有這么多要求,挑戰可想而知!過程比較傲曲折,不過最終在老大的指導下最終順利完成開發測試上線。
說一下公司的團隊:無線組加上小組老大總共四個人,其他前端屬於pc組,pc組有自己的leader,我們小組老大有着多年的移動端經驗,所以不會直接向他請教。代碼版本管理我們使用git,前端有專門的發布系統。git開始我用命令行,pc組也是用命令,結果我們老大喜歡source tree,我也就用了source tree。不過現在決定換用命令行,因為老大已經離職了%>_<%!!!(原因稍后再說)! 我們后端是沒有前端的權限的,每次開發我們只需要給他們分支名和demo地址即可,我們也沒權限改后端的代碼。每次做完demo直接給后端我們本機的demo地址,我們自己本機模擬數據,自己本機搭建一個環境,可以選擇php+Apache,也可以php+nginx。其實前后的怎么配合各個公司都不大一樣,不過對於我們做過后端的人來說這些都不是問題。我本機環境先用php+nginx后來換成php+Apache,以前做過java和net對服務端還是比較熟悉,不過搭建環境的時候還是折騰了下,各種配置,稍有不慎就不對。 后端看到的都是我們的demo地址,然后根據demo套頁面,轉換成JSP頁面,這樣往往后端后把頁面套錯,經常出現莫名其妙的情況,所以我們就申請了后端的權限,必要時自己去改jsp頁面。對於前端發布系統我就不多說了,這個也難得扯。以前在成都一家小公司,來這個公司。感覺公司這些東西都挺高級的,用上git,再也不是svn、tfs了。前端也有專門的發布系統,項目上線后代碼的壓縮合並系統直接幫我們做,而且把前后端的職責徹底分開。公司的產品、測試、研發、設計、前端、安卓、IOS這些都是專門部門或者小組 。公司在業內還是算個半知名的互聯網公司,開始我還是非常喜歡公司滴,不過現在貌似公司要誇了,形勢很不樂觀。所以我們老大都走了,我們被划到PC組,結果PC組的老大也要走了!!公司還裁了很多人,讓我們不滿一年的新人情何以堪!!
最開始做了幾個活動頁,都是要求多設備適配的,自己看他們以前做的頁面,並且經常翻看各個大神發的博文,自己摸索着盡量把頁面做到最好,老大也偶爾指導下我們,不懂也可以主動問他(他個人性格吧,一般不主動和我們交流),自己經常查看和學習淘寶、小米京東、等大公司的H5頁面,看他們如何做適配的。不斷地摸索、學習、積累移動端的相關經驗。后來我跟了一個項目組,直到現在也一再在做這個項目相關的業務,該項目是做微信公眾賬號開發的,也就是我們做的頁面基本上只在微信里跑。
經過了半年的摸爬滾打,熟悉了GIT、熟悉了Grunt、熟悉了LESS、熟悉了移動端頁面各種適配(每次對iphone4s這種小手機做特殊處理,真是淚啊,還要針對不同分辨率做適配,都用rem或em)、各種CSS3的兼容性問題(一般上caniuse.com 這個網站上查詢相關兼容性問題),各種js的在手機端的坑,特別討厭小米低端機和三星低端機以及s4這個高端貨,最喜歡IPhone,不過IPhone還是有各種坑滴。基本上能用CSS3 實現的效果都用CSS3,盡量不用圖片。CSS3的動畫,特效、選擇器用起來就是爽;工作中還用到了canvas繪圖做一些圖表展現,對canvas有了一定解。工作的時候自己也造了很多輪子,很多東西都自己去實現經量不用任何框架或者庫。有時為了最求更好的實現方式,花幾倍的正常的時間去做,每次這樣都覺得很值,因為那種感覺就是好。移動端高分屏適配裁切幾種分辨率的圖片1X 2X 3X,用CSS3 media 來控制加載,圖片壓縮(https://tinypng.com/),有工具,不過那個網站壓縮率更高。對於移動端的優化和設備適配基本上可以發好幾篇博客來說,我就不想扯了,在google上一搜一大堆。
針對用戶體驗上的優化總是要付出一定的代價,我所在項目的產品基本上沒有什么交互意識,給我的都是原型圖和設計稿,具體怎么交互還得我自己定,這個給了我很大的發揮空間。每次我想用最好(個人感覺用戶體驗最好的)的方式去實現,如果產品說怎么更好,這個方式是更優的用戶體驗,我一定會經最大努力去實現。很多都具有挑戰性,做出來還是有成就感的。我們不能僅僅滿足於簡單地把功能實現就OK了,這個太沒意思,太沒追求了,對於自己技術長進不利,還是那句話對自己高要求。
大半年的積累
多設備適配的頁面,PC、平板、移動(推廣頁、活動頁)
微信公眾賬號相關的開發
熟練使用CSS3動畫、特效、選擇器、盒子模型、布局、media query,了解各種設備的兼容性
用上了less,看了bootstrap的less,參建了很多,現在基本上算是用熟了。
js用上了zepto放棄了jquery,不過大多時候自己查看zepto的實現,套用它的實現,自己用原生的寫,能不用它就不會用它,自己寫的插件全部都是原生js,不依賴任何庫
用上了高大上的canvas,業務有需求,自己就學習canvas api,api簡單,難的是各種數學公式和算法以及繪圖的很多技巧
用上了grunt,grunt沒什么高級的,研究研究就能用,其他的FIS,gulp也都是看了看沒用
也做了Hybird應用,其實就是在我司app嵌套了我們的h5頁面,有客戶端開發人員打包進去,開頁面就是開webview、一些接口調用原生app,沒啥高級的,最好需要話心思。
抽空看看了JQuery的源碼,曾經一直在看,只是沒找到感覺,現在基本上找到感覺了,對jqeury的data callback Deferred ajax 事件都大致清楚了,其他的以及最復雜的sizzle沒有看
zepto和backbone的源碼就簡單多了,只要你基礎好,再加上你就願意就研究,一定能看懂大部分。看源碼是吸取它們的精髓,設計思路和相關實現技巧。接下來繼續研究jqeury或者MVVM的實現
SPA工作中也有遇到,為了更好的體驗我自己把頁面設計成spa了,整個應用比較簡單,不過還是體驗了一把SPA。過度動畫,視圖切換、路由自己都弄了一下,感覺不錯。
關於性能優化,這個可以扯的就太多了,基本上做到做心中無招勝有招就好(很多優化形成一種意識,而不是每次都要刻意去尋找可優化的點)。
大公司喜歡提前后端分離,前端工程化、工業化、自動化等相關的東西,由於我司原因沒能用上比較遺憾,希望以后有機會能夠接觸。
今年自己買了一些書,公司也有很多書,自己買了《圖解CSS3》《Javascript框架設計》《CSS權威指南》《響應式web設計》《DOM編程藝術》以前還買了幾本書,這些書都看了幾遍,最值得細細品味的書就是《Javascript高級程序設計第三版》《CSS權威指南》。公司有很多書籍,都是各種指南,參考書一類的,還有關於angular backbone相關的書記沒多看,畢竟都是講框架使用的,干貨不多。自己也下載了一大堆的js相關的書籍。什么js語言精髓,悟透Javascript,Javascript權威指南,Javascript王者歸來、編寫高性能的Javascript、大話設計模式、大話數據結構、…………,有空的時候看看,在地鐵上的時候就看在慕課網 上下載的視頻 關於canvas svg html5 hybird的。推薦D2值得看看。github隨時保持活躍,把自己業務中能夠分離出來的組件都放上去。現在也放了,不過目錄較深,都是給自己看的。
nodejs以前還用了下,今年沒花精力去研究,但各大公司貌似都對nodejs都很有興趣,用到的時候再研究下。
最后總結2014年發的幾件大事:女朋友來帝都工作,我也辭職來帝都、轉做前端、做移動端、女朋友畢業了、公司發展不行了大量裁員、老大也走了、年終發不發還是個事(這是個大事)。
展望2015
學好技術、原生JS,DOM
擴大交友圈子
准備換個好的公司踏踏實實工作和學習(現在的公司已經徹底不行了)
研究MVVM很早都用過了,一直沒去研究內部實現細節,來年好好研讀一番;繼續研究JQuery看那神一樣的代碼和設計思想。
把握更多的js技術細節
CSS技術更上一層樓
研讀zepto、fastclick、underscore、backbone等等……基本上看過大概,沒有很仔細地去研讀,自己積累也不夠,看着累啊!
SVG這個東西來明年一定好好研究研究
Canvas也是,好好研究研究
前后端分離,前端工程化
買好書,多看書,技術無關的書也多看看,漲點情商。
經常鍛煉,騎車是丟了,有機會買輛山地或者公路自行車騎車上班。不過盡量每周去打羽毛球,把羽毛球技術練好,除了體力其他都有待練習;有空去滑滑雪,爬山之類的。
周末和女朋友到處去吃去玩
學好我的攝影技術,買了單反,可是技術還沒練好;
和女朋友出國旅游。
攢錢,為以后買房結婚做准備。
多參加各種程序員的會議,去漲漲見識,多接觸圈內的大牛們;繼續關注着前端的最新動向(其實一直關注着那些大牛們就知道了)。
在github上發布自己的一些東西
有空多寫寫隨筆,記錄學習過程
本文地址http://www.cnblogs.com/Bond/p/4183170.html
感概頗多,先扯到這里,以后再慢慢補上……