摘要:Modern Web 2015 心得
之前參加Modern Web 2015的研討會,內容相當富豐精采
一、大會內容介紹
Modern Web 2015於2015年5月15、16舉辦。大會內容探討新世代網站的多個面向,包括:
- 前端開發:ES6、frameworks(angular JS、React...)、tools(bower、gulp、grunt...)
- 後端開發:Language(PHP、Python、Go、Ruby、NodeJS...)、Performance
- 網頁設計:Responsive Web Design、Material Design、HTML 5、CSS
- DevOps 維運:Docker、Chef、Puppet、Ansible、Vagrant
- 協同開發實務:workflow、testing、continuous integration、Agile、Scrum
- Modern Cloud Architecture:AWS、Azure、Soft layer
- 數位行銷:數位策略、SEO、社群行銷、Mobile 行銷
- 特色產品:web site、web app 打造者現身說法
其中特別請來四位重量級的大師來演講,分別是
- Javascript之父:Brendan Eich
- PHP之父:Rasmus Lerdorf
- Ruby和Rails核心開發者
- Haskell與Perl6 核心貢獻者
大會的議程跟內容可以連到此連結觀看「連結」
二、心得感想
由於個人想往系統架構師發展,所以主力放在系統架構、系統管理,以及後端為主,前端為輔,但是其實在聽演講的過程,其實大部份的東西被演講者濃縮,所以只能從他的簡報中,以及後續的研究才能略知一二
1.前端的部份
(1)D3.JS
一個用來做視覺化的前端語法
(2)TypeScript以及SoundScript
Javascript之父Brendan Eich以及其中一位演講者高偉格(OThree)
不約而同的都有說到TypeScript以及SoundScript,其中TypeScript,在未來ES7、ES8都有可能會納入
而目前有把TypeScript納到的專案內容,比較著名的,有以下幾個
.AngularJs2
.Asana
.Immutable.js
.Shumway by Mozilla
.Facebook的flowtype
至於type為什麼會受到重視,我想可能是第一個,它能提高javascript的執行效率,第二個可以在建置時期,就告訴開發人員說,你哪邊的語法有誤,相信在寫javascript語法的人都常常碰到,在網頁上跑時候,才發現大小寫錯誤導致該變數為null或是型別轉換的時候出錯。
2.雲端平台
目前在做雲端平台的很多家,我自已本身聽過的,就是微軟以及這次Amazon
3.系統架構
蔡學鏞-三維架構方法(以下內容出自作者簡報內容,加上部分自已心得)
(1)架構≠設計模式、框架
在簡報中,有三個角色,主要是架構師、系統設計師、算法工程師
.架構師:主要任務在下圖中的架構設計,「關注大格局的需求」
.系統設計師:任務為詳細設計,關注小的局部設計需求
.算法工程師:關注具體問題的代碼解決方式,效率為主
(2)大格局的需求
以下圖為例,分四階段,開發測試階段、運營階段、未來變化、長期運營來做分析
(3)三維度架構法
在modern web 2015提到的方法是叫三維度架構法,但是查到以前的版本為四維,這部份比較聽不懂,只能放個圖讓大家領會
圖1
圖2
4.開源之道
唐鳳-開源之道
http://www.slideshare.net/autang/open-source-enlightenment
我們參與開源社群,就像是在一條道路上並肩而行:這不僅讓我們成為更好的創作者,也讓我們通過與人合作,而成為更好的人。這是一條修行之道,讓身而為人的我們能夠不斷成長。我想談談我對開源世界的個人觀點,希望能與大家分享。
現場聽唐鳳的演講實在很激勵人心,很像佈道大會XD,整個演講的主軸應該就是在於「人」
這個人指的當然就是自已與別人,延伸出人與人如何互相溝通、理解、合作
(1)對自已
.不要吝於分享、劣即是夯
大部份的人在分享知識時,都會擔心自已犯錯,比如程式寫得很糟、理解不對,但是不用害羞也不用害怕,大家都很樂於協助修正而不是指責或嘲笑
.接受各種可能
對於自已的解法應該努力,但別的做法或是別人的做法,要保持開放的態度
.主動發問
裡面有提到發問,可以採用另一種方式,提出自已的答案(即使它是錯的)
「獲得正確答案的方式,不是問問題。而是講一個錯的答案。」
(2)對別人
.持續溝通
.當別人發問時
認真回應,而不是冷冷拋下一句:RTFM(去看該死的說明書),"RTFM"就是在告訴別人,你打從一開始就不該發問
.欣賞別人的作品、讚美與鼓勵
透過感謝函、讚賞別人,能讓維繫創造的動力、建立社群認同感。
三、結論
資訊科技日新月異,對一個工程師而言持續精進學習是必要的,然而無窮無盡的知識總讓人疲倦,莊子曰:「吾生也有涯,而知也無涯,以有涯隨無涯,殆已。」所以多去了解業界的前輩、伙伴、後進們各有什麼課題,未來的技術發展重點為何,對自已學習規劃上是有幫助的。
個人致力於往架構發展,所以專注在於架構的學習上,以及前後台的技術輔之(目前是後台技術C#為主)
以這次觀摩先進們的發表,未來會持續在以下幾點:
(1)前端語法的趨勢
TypeScript、SoundScript、D3.js
(2)系統設計的方法或原則
(3)團隊合作的溝通方式