2016 COSCUP Day - 1

本篇是筆者今年參加 COSCUP 不負責任、不引戰的個人摘要筆記與心得文。

Day 1

LLVM框架由淺入淺

全體共同議程, 介紹一些由高階語言轉成 machine code 的幾個環節如何拆分, 引入介紹透過 LLVM 的框架標準化這幾個環節, 讓對編譯器有興趣的使用者可以自行串接 LLVM IR 做各種調配。

MCU 與 lightweight javascript engine 的邂逅

介紹在 MCU 終端的嵌入式硬體上執行 JS (相較於 MPU 的 device 會帶起較完整的系統並具備較高規格的硬體, MCU 的硬體規格限制更多), 最早期的啟發來自於基於 Tiny.js 開發的 Espruino, 原理是邊 parse 編解析 (但不構成 AST), 陸陸續續也出現一些針對物聯網嚴苛 device 條件所產生的 engine 設計, 最後講者是透過去封裝一層名為 Microlattice.JS 的 interface 去使用 jerryscript (lightweight JS engine), 建構在freeRTOS 上。

因為設備問題, 所以 talk 只進行到一半, 剩下部分需參考講者之前演講資訊。

物聯網不滿足 - 自由管理物聯網裝置和溝通的 freebird.js

從物聯網的一些基礎介紹起, 帶起要解決的問題, 主要是破碎的溝通方式 (同質、異質網路的相容性), 雖有 IFTTT 的解決方案(?), 但可能會導致 device 之間溝通的 latency 過長, 再來是想建立有系統的方式解決溝通問題 (因為從上層到底層都有問題要解決), 而開源計畫的 freebird.js 就是要解決 相容 以及 快速開發 IoT 應用的法門之一。

精神就是幫開發者做掉一些 dirty job, 讓開發者可以更容易地進入物聯網的, 但目前 protocol、晶片 driver 推陳出新, 仍須仰賴推廣讓開發者共同參與。 (另外 freebird.js 尚未 release 約 10~11 月)

萬事萬物皆是 Log

作者提供的逐字稿

Determinism 相同的過程 = 相同的結果 (讓系統可以如此般趨於穩定的境界), 所以在設計系統架構時試著先用 log 去表示。

讓會眾可以安心抓神奇寶貝的講者 (?)

Open Source 的 DevOps 工具箱

講者投影片

精神在於建立一種文化, 介紹常見的軟體工程在開發時應有的配置 (列舉可用的 open source 工具, 詳細參閱投影片)。

寫出高性能的服務與應用。那些你沒想過的事!

全體共同議程, 比較偏向大學的 計算機組織 與 作業系統該有知識 (?), 算是溫故為主的內容。

總結

COSCUP 的伙食不錯, 中研院 電擊獸 很多, 跟其他主題更明確的聚會相比, 感覺準備的內容有比較多一點的學生感, 但引用朋友的見解, 來參加聚會聽 talk 只是配菜, 重點在於 要多認識人 或是 上台當講者, 筆者只能默默期許自己。

Captain Vincent

Read more posts by this author.