三十天過去了,沒想到我竟然成功完成鐵人賽了!
上次鐵人賽完賽心得的第一句話是 "轉眼間就過了三十天",但在這次的挑戰中,想說的只有一句話:三十天怎麼這麼久呢。謝謝一路幫助與陪伴著我的人,有你們我才能完成這次的鐵人賽。
首先在這邊,還是想要先紀錄一下這三十天中遇到的種種問題。
自認為最大的問題就是太想要把自已知道的所有知識都塞到文章中了。雖說是為了想跟官方文件做出區隔,但在讀者的注意力有限下的狀況下,把過多的知識,甚至是自己的思路全部都塞進文章中是一個好選擇?願意完整讀完一篇過長的讀者會有幾個呢?而且讀者真的看得懂這些非常客製化的思考流程嗎?未來撰寫文章時,應該要更懂的取捨,避免這種 "我全都要" 的心態。一些不必要的文字與非目標客群的知識就應該拿掉以避免分散注意力。
在目錄結構上,也因為寫太多的關係,常常需要把官網一篇的內容拆成三篇來講,導致原本規劃的 roadmap 完全大亂,這也是需要檢討的。
在編排上,為了希望讀者可以在使用語法時了解背後的原因與原理,所以常常會把這些更 mindset 的內容放到了最前面。但這絕對會造成入門與閱讀的不易。未來還要思考要怎麼樣才是更好的排版。
另外,因為很執著於要了解底層的原理,在沒有很了解的狀況下實在會覺得繼續寫下去很痛苦,但這種 "完美主義" 在有時間緊迫的狀況下會是一種毒藥。
說完壞的來說好的吧!
雖然撰寫過多的內容可能不好,但透過完全輸出自己的思路、並追根究底的這種學習方式,我可以更清楚的知道自己每個技術的存在意義與原理,而不是知其然而不知其所以然的亂寫亂用一通。在這種寫法之下,最大的受益者還是我自己。也許更需要思考的問題是,寫文章是要為了自己,還是為了讀者呢?
還有一點不錯的事,自己有意識的把重點提成大標。在讀者注意力的狀況下,用大標作為懶人包讓讀者快速吸收肯定是個正確的選擇。在某種程度上,這能有效減緩文章篇幅過多的問題。
當然,最大的優點就是自己在這種壓力下依然撐完鐵人賽了,意志力值得嘉獎!正因為度過了這些困難,我才能在這次的鐵人賽中學到了好多好多原本不知道的知識!
還有一些與這次參賽無關的感觸,也想在這邊紀錄一下。
科技始於人性,程式誕生的意義就是為了解決問題。理解技術根本的原理固然重要,然而程式只是一種工具,最終還是要回到 "如何達成需求" 這件事。如果不用深入了解技術還是能解決 80% 問題的話,深入了解技術這件事依然這麼重要嗎?這個問題值得思考。
另外同樣的,工程師的意義也是為了解決各式各樣,亂七八糟的問題而被聘僱的。技術能力固然重要,但同等重要的是要有願意承擔責任與能夠忍受做自己不喜歡做的事情的能力。而對於任務的完成度來說,先求有再求好,"完成任務這件事" 總是要大於 "把任務做到完美" 的。畢竟很多商業的考量是要基於速度的,在這些狀況下仍然講究完美就不是件好事了。
期許自己在未來能夠成為一個更 "好" 的工程師。
在這個艱難的三十天中,真的受到太多人的幫助了。雖然想要說 "要感謝的人太多了,所以就謝天吧" 這種話,但對於幫助我的人的付出,我認為自己還是有義務一一感謝幫助我的人:
首先要感謝讀者們,謝謝肯看這種像是老奶奶裹腳布一樣的文章XD。你們的閱讀與支持就是我寫文章的動力。
也感謝同事們,在公司的各種技術指導下讓我有很大的進步。只有理論學習是不行的,實際練習也是加速成長的重要關鍵!
感讀書會的朋友們,一起研究 React 讓我搞懂了很多原本不懂的原理!
感謝朋友們,一直被我散播負能量的同時還是可以幫我打氣!
感謝隊友 Peter
、Flynn
、Scott
。大家一路互相幫助,堅持過來真的不容易!
最後感謝家人還有 Doris
在我參賽的時候對我的包容,沒有你們我一定無法完賽的。只能說你們是幫助我完賽的 MVP!
然而,鐵人煉成只是中場休息而已。
原本是打算通過這三十天了解 React 大部分的內容的,但只能說人算不如天算,要寫得好多內容(Ref、Hooks、HOC、Render Props ...etc)都還沒開始碰。
休息是為了走更長遠的路,在這次鐵人賽完成後會稍作休息並思考如何改進提到的缺點,接著將以輕鬆一些的腳步完成剩下的內容。
那,我們下一篇文章見!