QCon全球軟體開發大會隨筆(二)
Qcon過去兩週了,部門老大要求需要在部門內部分享下,畢竟錢不能白花,趁整理分享ppt的機會再次回顧了下,記錄下來,分享給大家。
對於大會的介紹這裡就省略了,上一篇隨筆基本都提到了,這裡主要記錄下我聽的幾場專題的一些收穫和自己的一些想法。
微服務與高可用
大會中聽的比較多的還是 微服務與高可用
了,畢竟這塊內容和自己的本職工作息息相關的。
如今微服務的架構基本已經是主流,不像前幾年,可能理論比較多,但實際投入使用的案例不多。會上分享的基本都是已經落地的專案,雖然可能實際專案沒有講師說的那麼完美「我猜的,畢竟我們公司也是,宣傳的永遠比實際使用要高大上很多」。
比較完整的微服務解決方案,其實騰訊的那位技術經理ppt中的流程圖還是比較全面的,這裡引用下:
具體什麼是微服務簡單幾句話也說不清,簡單來說就是把一個很大的專案進行拆分了「一個專案已經承載不了所有的需求了」。
而完整的微服務的解決方案就是解決拆分之後的所有問題:多語言,高可用,資料傳遞,應用的管理,監控與運維等等。
每家公司針對這些問題有一些差異化的解決方案,但大體完成的解決方案也就是上面的那張截圖了。
當然這裡面的坑真的很多,是需要時間去打磨的。
API設計
這是我聽的唯一一場老外演講的,英文演講,聽的比較吃力,但還是收穫滿滿。
老外主要將瞭如何設計API,提出了六點,個人覺得非常實用: understandable
, well documented
, consistent
, fit for purpose
, restrained
, evolvable
。
具體怎麼理解它,留給自己和你們想象的空間。
另外分享下整個演講中比較喜歡的兩句話:
eating your own dog food
不管我們編寫程式碼,還是定義契約,自己先使用看看,看看好不好用。
API design is an art,and like art,becomes easier with practice
API設計是一門藝術,和藝術一樣,在實踐中變得更容易。
深度學習技術與應用
聽此專題完全是因為這兩年太火了,可聽了之後發現,完全聽不懂,各種演算法和公式,我只能傻傻的望著,但至少讓我明白了 人工智慧
, 機器學習
, 深度學習
這三者的關係。
人工智慧:讓機器展現出人類智力
機器學習:抵達AI目標的一條路徑
深度學習:實現機器學習的技術
總的來說機器學習是一種實現人工智慧的方法,深度學習是一種實現機器學習的技術。
深度學習現在真的很火,但一般人真的玩不起,還是很燒硬體的,曾經用python和tensorflow深度學習梵高的畫並模仿,運行了兩個多小時,電腦風扇呼呼轉。
也難怪google的人工智慧這麼厲害,人家的伺服器數量肯定是你想不到的量級。
工程師個人成長
最後聽的專題應該對每個程式員都有一定的價值,不懂大家對自己的職業規劃有什麼想法。
外界對於程式設計師危機也有很多說法,很多觀點都說程式設計師是吃青春飯的,年齡大了競爭力會越來越低,畢竟技術的迭代很快,而自身學習的能力隨著年齡是在走下坡路的。
確實,其實每個行業都是一樣的,保持一顆向上的心就好。有一位老實的觀點個人很喜歡:技術不是全部,複合型人才越來越重要。
其實工作了這麼多年發現,最難的不是技術,而是溝通與協調,所以為什麼很多情商高的人辦起事情來效率那麼高,而達到的世俗高度,往往也比耿直的純技術工作者要高。
個人體會
三天聽了這麼多專題,其實轉瞬即逝的想法有很多,但基本很難再記起,但有三點一直印象很深,分享給大家。
第一個是英文,英文真的挺重要,聽那場英文專題記憶猶新,雖然有同聲傳譯,但翻譯出來的體驗真的不敢恭維「畢竟專業性的詞彙太多」。還是要努力學英文呀。
第二個是業務,很多講師都有提到,只有深入業務,充分理解之後,才有可能開發出更好的系統。
最後一個是讀書,同樣的,很多講師最後都會推薦一些書籍,雖然書上的都是理論,但對於你實戰中的指導價值和影響是不可估量的。
多讀書,多看報,少吃零食多睡覺還是很有道理的。
洋洋灑灑說了一堆,算是自己的一些體會,希望對看到的人有一些幫助。