漫畫:程式設計師每天的6場戰鬥

技術聯盟總壇 發佈 2020-05-15T16:36:51+00:00

作者:Mart Virkus 中生代技術 程式設計師的生活很難!我並不是說其他工作很容易。但程式設計師以寫代碼謀生需要紮實的努力和持續的專注力。程式設計師與市場,設計,經理,內容創建者以及許多其他人員一起工作。但是,我們古怪的(有益的)生活方式常常被誤解。

作者:Mart Virkus 中生代技術


程式設計師的生活很難!

我並不是說其他工作很容易。但程式設計師以寫代碼謀生需要紮實的努力和持續的專注力。程式設計師與市場,設計,經理,內容創建者以及許多其他人員一起工作。但是,我們古怪的(有益的)生活方式常常被誤解。

下面是程式設計師希望同事們了解我們的工作:

儘管其他人可能無法「了解」我們的工作,但我們喜歡它!

我們深入參與我們的工作 – 正常的工作流程並不總是適用。

有時,我們會嘗試用一些新技術修復,這些修復可能效果很好或效果很差。

某些令人沮喪的 Bug 修改可能需要花費數天的時間進行研究,而解決起來可能只需要數秒鐘。

為了最終取得勝利,所有的努力是值得!

我們一直致力於支持同事和客戶的工作生活 - 讓我們知道我們將如何提供幫助!

在這篇博客文章中,我描述了程式設計師在工作流中各個點所經歷的許多心情。如果您是程式設計師,那麼您可能對這些方面很熟悉。如果您與程式設計師一起工作,請花點時間微笑並更好地了解我們的世界。

我們是一個不同的物種,但我們有一個共同的目標 – 為我們的客戶和同事提供應有的支持和創新!

1


興奮

就像西部的牛仔一樣,您的「觸發」手指開始發癢。等待著無窮無盡的可能性會給您帶來健康的嗡嗡聲 – 您會受到一個神奇想法的啟發。

面對現實吧 – 您知道您將放棄所有計劃,並投入每一點滴精力在該項目。您將整日整夜不眠。

遲早,您都會抓緊一切,放下所有東西,然後開始將這個令人興奮的新想法變成現實,一次一行代碼。

在大多數情況下,這種動力是一件好事。它像油箱內的一滴硝基一樣起著催化作用。您會專注並以閃電般的速度完成任務。

但有時您會對低優先級事項感到興奮和激動,您很難滿足於解決這個問題的好奇心。

2


場域

在《社交網絡》中,賈斯汀·汀布萊克(Justin Timberlake)飾演的的角色試圖跟一群黑客招呼。飾演扎克伯格的角色說:「不要打擾他們,他們正在場域裡。」

有時,您的球滾動得如此之快,以至於其他所有事物都成為地平線。您推遲了數小時的午休時間。您的眼球開始變累,因為您無法停下來,甚至無法留出一分鐘去洗手間。

您不斷的編碼編碼再編碼,每次執行代碼和解決每個 Bug 時,您都將感受到解決方案在等待您 - 指日可待。

「如果我能解決此 Bug,我可以提交代碼並休息一下。」

聽起來有點熟?您腦海中的聲音會讓您繼續嗎?要修復……又一個Bug……Bug?

此階段可以持續一整天。下班後,您感到飢餓和疲倦,但您很開心。因為您殺死了又一個「bug 巨獸」或到達了又一座「功能山」的頂峰。

3


重構

您隨時會有頓悟。

當您發現一種新技術或做某事的更好方法時會感到渴望和興奮。您知道這正是使代碼更快,更清潔和更優化所需要的。您會感到抽筋,難以進行挖掘。

但是,此階段通常不會順利結束。

您偉大的想法不一定是錯的。但是,認為這只是一個很小的調整的想法就沒有了。經過一周的重構,您將意識到以下兩件事之一:

一口吃不成胖子。

要麼

這個想法只是無法在當前的代碼庫中解決。

但是,這些解決方案有時會奏效。您的奇蹟確實可以實現您想像的一切。這是個賭博遊戲,即使重構失敗,但在您夢想成真時的那種感覺是值得的。

4


定製

構建定製的軟體通常不是一個好主意。因為對主庫的更新幾乎肯定會破壞它。

但是,誘惑總是存在的。即使您決定不在軟體中包含自定義元素,您最終也會違反該規則

只是因為沒在主庫里構建很酷的部分。我的錯是您的產品沒有彈出火球的彈出窗口嗎?如果您的設計師將此功能賣給了產品負責人,那麼您就必須把功能實現 - 故事結束!

5


駝峰

卡在某個開發環節上的時間(和天數)太多讓人很不愉快。。不停地拖拉……直到你找到那枚魔術子彈。

您可能正在開發新的組件,或準備消除一個特別討厭的 Bug。

不管是什麼,您現在沒法法直接上手。您只能搜索 Internet,閱讀相關文檔,並查找有關如何進行下一步開發的任何提示。

一天工作結束後,只有苦勞沒有功勞。您可能花了整天的時間破解代碼並嘗試了幾種不同的版本,但都無濟於事。最後,您的提交代碼次數約為零。您沒有比早上上班時有更多可用代碼行。

但當您最終頓悟時,會感到難以置信。您找到一個簡單直接的解決方案。

為什麼最開始沒有想到這種方案 - 而不是浪費大量時間破解代碼來查找它。

經過兩個工作日才發現,其實一小段代碼即可解決所有問題。

6


編程不易-客戶第一

在 Toggl,我們的程式設計師有個口號:

「它能有多難?!」

當某些事情看起來很簡單時,可能很難執行。例如,我們最近處理了 Cocoa 中的限制。我們需要做的就是在運行時更改某些元素的限制。這似乎很容易:如果單擊此處,則可以更改限制。

但是,我們不知道 Cocoa 文檔對於限制這塊兒很模糊。我們在網際網路上發現了一段寶貴的例子。經過反覆試驗,我們最終使它運行起來。但這個看似「簡單」的任務比乍看起來要困難得多。

7


軟體開發的超現實世界

每天,我們的程式設計師都要與這些(以及其他)場景進行戰鬥。其中一些功能比其他的更難,但是每一個功能都是創建客戶喜歡的產品的必要組成部分!

參考信息:https://toggl.com/blog/life-of-a-programmer

關鍵字: