今天不聊科技,來聊聊日常工作中的優先度選擇。
作者認為每當你對一件事情說 Yes,其實你就是對其他的事情說 No,因為我們時間有限,不可能每件事情都想要盡善盡美,而那些被你自動說 NO 的事情,其實有些可能反而能夠為你帶來更大的效益。
整篇文章都圍繞於機會成本的概念,探討到底什麼是機會成本,其中顯性機會成本以及隱性機會成本的差異是什麼。
就我個人來看,其實日常工作中也是充滿各種選擇,舉例來說,今天要有一個新的專案要開發,你要負責對其處理 CI/CD 等相關工作,你會怎麼安排自己的 Task ? 這些彼此間的優先順序會怎麼選擇?
也許你腦中會想到有下列的事情要完成
1. 打通 CI/CD 流水線
2. 完善 CI 系統,增加各種檢查,譬如 unit test, linter 或是其他種類
3. 完善 CD 系統,自動上版本,自動更新
但是仔細看會發現,其實(3)這點真的一開始就可以辦到嗎? 需不需要一個手動部署的版本先撐住? 然後根據這些結果再跟(2)去比較,到底開發團隊一開始需要什麼?
其實時間有限的情況下,我們往往都需要進行選擇,困難的是這些選擇永遠都沒有一個標準答案,不同團隊不同環境下,相同選項都會有不同答案。
我個人也滿認同作者提到的概念,時間有限,將精力與時間放到更具有價值的開發與工作上,那些可以展現你個人價值與光芒的工作,未來可能都會是你職涯的推手。
更多的工作團隊中,你的價值是自己帶出來的,而不是別人指派給你的,因此我認為如果你有機會獨當一面去處理一系列的工作,如何展現出你的價值就是一個值得訓練也值得培養的能力與議題
原文:
https://dariusforoux.medium.com/say-no-anything-thats-not-a-priority-9ed70064d0b6
「unit test概念」的推薦目錄:
unit test概念 在 91 敏捷開發之路 Facebook 的最佳貼文
投資不到一個月的薪水,不只是獲得了受用一輩子的技能與知識,還包含了跟我建立了連結。
而我的人脈、認識的好老闆、強者、機會,都有可能為你所用,你也很容易在課堂上碰到跟你一樣熱血,讓你在職涯學習的路上不再孤單的好夥伴。
是投資,還是負債,端看你怎麼把學會的東西用在實務上。(這些工程實踐的基本、進階技能,通常也是在公司內技術領導者必備的條件,通常也是換公司時大加分的條件。)
只要你人是對的,我就樂意幫你背書,而有我的背書,通常會讓事情變得容易許多,要談薪資上限也會比較有所依據。(因為我不輕易幫別人背書的)
多說無益,看看過來人的心得比較實際。
附上 91 的系列課程介紹:https://dotblogs.com.tw/hatelove/series/1…
看過的動畫不算多,如果要從這些為數不多的動畫中挑一部來推薦,我想我會選擇《宇宙兄弟》。
劇中幾乎每一集都有乘載著深刻意義的對白,如果用心感受邊看邊反思,看完整部應該多少會對人生價值觀產生影響,可謂十分寓教於樂。
-「認真後的失敗,是有價值的。」
這句是我覺得最受用的觀念之一,在劇情中更完整的脈絡是-不斷地認識並跨越失敗,就能做出好東西。
來到目前這間在業界以「敏捷」環境聞名的新公司就職也過了三個月,幸運地在不久前通過了試用期。
團隊狀況在剛開始讓人覺得每天都像在戰鬥一樣,伴隨著脫離舒適圈以後的身心俱疲,自己也成長了許多,
人生就是這樣,不是得到就是學到,在這段期間著實感謝很多人幫忙,只靠自己一個人可能在試用期的路上就陣亡了。
前面提到的那句台詞,其實恰好正對應了敏捷中「持續改善」的核心精神,
不斷地刻意去檢討,然後改進,就能讓自己/團隊/產品愈來愈好。
實際身處這個時刻強調敏捷的環境以後才發現這個模式非常萬用,幾乎任何地方都能套用敏捷思維,
回想起先前上過 91 的兩堂課 TDD 和 Unit Test,以及上個月剛上完的極速開發,
課程內容也都是以敏捷精神來驅動開發,小步快跑、快速迭代、即時回饋、刻意改善。
之前上過的 91 課對我在工作上的觀念影響都很深,通常上完課不久後就會想要分享心得以及推薦課程,
但這次的極速開發我在結束一個月左右才打算做個分享,原因是這次我覺得應該要拿出一些具體的東西來作為分享的依據,
而為了這具體的佐證,我需要花些時間練習。
這堂課說難不難,說穿了從頭到尾我們要做的就是以 TDD 的方式去實作一個極微小的專案稱之為 Tennis Kata,我相信程式碼總行數沒超過 300 行;
說簡單也不簡單,問題只有一個-要怎麼用最短的速度完成這件事?在對需求有同樣理解程度的前提下,為什麼別人可以 15 分鐘內完成,而自己可能需要花到 30 分鐘甚至更久?關鍵的原因是什麼?
起初對這門課真沒啥興趣,當時覺得這不過就是教你熟悉 IDE 的熱鍵還有極度熟悉 Tennis Kata 需求的課程而已,竟然要花這麼多學費?!
但在其它課堂上看過幾次 91 開發的 flow 以後發現,對工具的嫻熟間接影響的是開發思維,
不熟悉 IDE 功能造成的結果就是多做了許多 IDE 能夠自動完成的事情,或繞路寫程式碼,簡直是在浪費時間;善用 IDE 不但省時,還更容易寫出語意化的程式碼。
因此,為了妥善發揮地表最強 IDE 的功能以及學習這種自己完全不知道的開發 flow,我最後還是報名了這門課,感謝張仁瀚 & 邢源源一起參加。
Kata 的意義就是套路,練 Kata 講白了點就像是一直打木人樁的概念,你已經知道怎麼做了,但要怎麼用最有效率的方式完成它?這是《Clean Coder》一書中很推崇的程式設計師練功方法之一。
因為 Tennis 是個具體而微的小專案,在實踐「以最短時間完成 Tennis Kata」這個目標的過程中,會反覆練習到 TDD 與重構思維,以及為了提升速度不斷使用的 IDE 熱鍵。
「熱鍵」聽起來可能沒什麼,但其實上了課之後才發現其實熱鍵和指令組合起來能做的事情遠遠超過我一開始的想像。
這部份也許直接看我練 Kata 的影片來感受比較快,
影片不長,13 分半以內就結束了,加速看也無妨,
重點是從中應該可以看到許多從來未曾想過能在 Visual Studio 上發生的操作,這是這門課的價值之一。
https://youtu.be/8erQ3Pc-Kik
另一個價值,則是讓自己熟悉刻意改善的模式。
最剛開始我是無法在 30 分鐘內完成這個專案的,一方面對需求還不夠滾瓜爛熟,另一方面對熱鍵陌生。
為了有一套標準的練習準則,我先嘗試拆解 91 僅 13 多分鐘的 Demo 影片,
影片中的手速太快,所以光這件事就用掉了好幾個下班後的晚上,花了好幾個小時才把 91 在這個專案中的開發順序拷貝到自己身上。
之後不斷練習,練習到覺得差不多夠熟了就錄影,影片作為自己檢討用途,也同時丟到上課群組請 91 哥給建議,
從資源回收桶裡的檔案數量得知自己大概練習了兩百多次,於是終於能有以上 13 分的影片。
當然還能更快,有很多上過課的同學和前輩都不止這個速度,
但我想表達的是,這是一個很好的機會讓自己看著自己因為刻意改善而朝期望的方向不斷進步,並且這過程中一開始是有教練能提供協助的。
在最近半年上過 91 三堂課,總共花費其實還不到一個月的薪水,但學習到的、被影響到的都是非常長遠的東西。
目前還在慢慢將極速開發的學習成果運用到工作上,當然在實際專案上不可能像練了超過百遍的 Tennis 那麼順暢,
但以現在轉換初期而言,光是運用那幾個熟悉的指令來減少鍵盤來來回回刪改或滑鼠移動的時間,
就已經開始感受到學習和練習的成效了。
最後說說這堂課有個缺點,
就是突破極限這件事會一直掛在心上,三不五時就想要練一下來超過速度更快的同學,
然而在極限邊緣必須又快又零失誤才有可能突破,所以這件事很容易失敗,然後很可能一兩個小時又這樣過去了 XD
話說這個追求更快速通關的過程和因為失誤帶來的懊惱感和挫敗感一直感覺很熟悉,仔細想想原來是小時候在玩洛克人的既視感R
unit test概念 在 91 敏捷開發之路 Facebook 的最佳貼文
【單元測試】如何測試 AOP 中的 interceptor
當設計能力提昇到能靈活應用 DI 與 AOP 時,該怎麼對 AOP 的攔截器進行單元測試,就成了一道必須突破的門檻。
詳情請見傳送門:https://dotblogs.com.tw/…/11/05/unit-test-your-aop-intercep…
※ 預計在 2019 年上半年,四月~六月之間會開一門 DI/AOP 的培訓課,從解決問題本身出發,介紹使用到的 design pattern 概念,從無框架到使用框架,到各種實務應用場景的實戰演練。
如您對這門培訓有興趣,請填寫這份 google 表單:https://goo.gl/forms/dmIdBTiyEPaDhjT93,我們將在開課時第一時間送開課通知給您,讓您享有搶早鳥票優惠的權利。
--
突然發現,我好久沒寫上面有嵌入代碼的文章...
※ 如果文章對你有幫助,讓你學到了原本不知道的東西,歡迎試著使用一下街口的 donate 啊 :D
unit test概念 在 Hello 大家好這次要來分享的是網頁前端的學習路線以及資源是 ... 的推薦與評價
單元測試Unit Testing 與Jest 5. 網路基礎概念6. HTML 與CSS 7. JavaScript 與DOM 以及事件機制8. 非同步與AJAX 9. 基礎後端PHP 與MySQL 10. 資訊安全概念11. ... <看更多>
unit test概念 在 【 .NET 測試入門】#1 什麼是單元測試& 整合測試& 端對端測試? 的推薦與評價
What is Unit Testing, Why We Use It, and Sample Test Cases ... How to Implement TDD ( Test Driven ... ... <看更多>
unit test概念 在 Unit Test 定義是什麼, 涵蓋的範圍又是哪些? 的推薦與評價
第二篇會討論到如何從什麼層面去思考一個好的Unit Test? ... 不過這邊範例是我用Node.js 加上新的範例寫出來的概念都是相同的不必太過擔心語言不同 ... ... <看更多>
相關內容