前面已經討論了起步的心態跟起步的方法兩個問題,好不容易開始寫程式了,卻發現⋯⋯
照著教學做,但是沒有教學就完全不會
不管是去上更多的課,還是看更多的教學,怎麼樣都無法擺脫這個問題。這到底是什麼原因呢?
最近因為手邊有一個工作以外的專案需要搭配硬體做一些 IoT 類型的應用,雖然之前在五倍紅寶石開發的 Tamashii 系列應用已經足以應對在這個專案上開發所需的解決方案,但是依舊缺少了一些功能。
也就是我們過去並沒有考慮到的,如果裝置是交給一般使用者的狀況下,如何在透過網路的前提將裝置更新。
這是很多硬體都會有的功能,但是就目前而言 Tamashii 並不支援。
上一篇文章輸在起跑點已經稍微討論過心態上的問題,所以馬上就是要怎麼開始的問題。
大部分的人不論之前有沒有經驗,一定會冒出「要學什麼語言?」「某某語言很熱門是不是應該去學?」之類的問題。
很多時候,我認為這不是真正的問題。
工作到現在差不多兩年多,因為公司業務的關係偶爾也會跟同事討論在學習當工程師或者寫程式上的經驗。所以打算寫一個系列的文章,跟大家分享一下我從學程式到成為一個工程師的過程,是怎麼樣的。
這是第一篇,我想用「輸在起跑點」來當開始。
從退伍到工作差不多過了兩年,這段時間有不少經驗我想已經足夠跟大家分享。這篇算是一個前導的文章,想來跟大家分享「第一份工作」的重要性。
重點是技能成長那段,討論薪水的地方太長可以跳過喔 XD
這篇文章我們會把 Broadcast (廣播)功能實作出來,如此一來我們就擁有了可以將訊息透過 Fiber 實作的伺服器廣播給其他使用者的功能。
而這系列文章也就到此告一段落。
關於 Fiber 的系列文寫到現在也已經一個半月了,除了分享自己在使用 Fiber 的經驗之外,我也更加的熟悉 Fiber 的使用。
不過,這真的是有益於現有的專案嗎?
到這篇為止,我們已經完成了將 Fiber 應用在程式中的基本雛型,現在只需要將上週未完成的錯誤處理,我們就能獲得一個可以正常發送訊息到伺服器的伺服器。
上週我們開始重構 Fiber 的結構,透過一個統一的 Selector
物件來選取這個「當下」可以進行 I/O 操作的物件。
不過,我們原本預期是因為使用 rescue
來捕捉錯誤控制流程才讓他運行不正常,經過一週的思考後,卻發現事情跟預想的不太一樣。