Bear Su's Blog

Modern Web 2016

這次收到朋友邀約就趕快報名早鳥票(越晚越貴啊)

場地在松菸的文創大樓,交通很方便

這次只記錄一下有興趣的議程

議程與簡報

共筆

Typing


增加科普知識的一個議程

講到了英文字母的由來

現在鍵盤的配置,以及 shift, ctrl 等按鍵的由來

某個神秘的鍵盤配置 crockford keyboard

寫出所有人都能輕鬆讀懂的測試程式 (Cucumber.js)


Cucumber.js 來進行 BDD 開發的優點:

  • 會說話的程式碼
  • 用口語的方式寫測試
  • 讓溝通更順暢
  • 測試即文件

Gherkin 是 Cucumber 所使用的描述方式

  • Feature (功能)
  • Scenario (場景)
  • Step
    • Given (假設)
    • When (當)
    • Then (那麼)

在 feature 檔的開頭加上 #language=zh-tw 就可以用中文做關鍵字

從圖資學出發,探索網頁與搜尋引擎的本質,一起好好寫好 HTML 吧!


過往的 HTML 設計常看到的問題:

  • table layout
  • meta data garbage
  • all div

應該要以內容架構為核心撰寫 HTML,外觀交給 CSS 決定

最好拔掉了 CSS 也要能夠閱讀 HTML 的內容

StreetVoice 自動化部署演進


繁瑣的事情讓它自己動

自動化的前提是:

  • 足夠的自動化測試
  • 工作流程
  • 時間

使用了 Ansible 將應用部署到機器上

[code] -> [git] -> [ci] - ansible -> [AWS]

Dance with i13n (與 instrumentation 共舞)


i13n == instrumentation

A good i13n framework might have the following characteristic:

  • stable
  • clear and effective report
  • life cycle

可以使用 Google Analytics Debugger 外掛來除錯

Good framework 的特色:

  • easy & remove
  • make data set semantic & readable

其他詳見:我與 Google Analytics 的補強計畫

恰如其分的 MySQL 設計技巧


MVP 若沒有控制好,技術債將迅速增長

沒有完美的架構,只有最適的架構

License GPL 感染的問題

Tuning NGINX for High Performance


投影片

這一場說了很多如何提升 Nginx 效能的技巧

Web Scale, Microservice and caching

[client] - http/2 -> [nginx] - http/1.x other... -> [servers]

OS LEVEL

net.core.somaxconn
net.core.netdev_max_backlog
net.ipv4.ip_local_port_range
sys.fs.file_max
/etc/security/limits.conf, nofile setting

NGINX configure

worker_procrsses -> auto
worker_connections
worker_rlimit_nofile

accept_mutex off;
sendfile on;
aio threads;

Amplify

遠端團隊專案建立與管理


制定好規範,相信成員

主要利用 SLACK 溝通,視訊則用 ZOOM

每天都要 sync 彼此的狀況

在視訊開會時要確保網路與收音環境的品質,以尊重開會的成員

將文件與技術分享影片整理到 SLACK 上,當新成員加入時就能 review

利用 Golang 架設 Line 機器人,作為網站的推廣大使


介紹了 Golang 這個程式語言特性

機器人應該聰明點,可以用一些線上服務像是 LUIS 來解析語意


如果覺得這篇文章對您有所幫助,歡迎贊助我一杯咖啡 ☕️

祝您有美好的一天 ❤️