作者qrtt1 (有些事,有時候。。。)
看板Soft_Job
標題Re: [請益] (寫程式的)熱忱?!
時間Wed Dec 4 23:59:45 2013
※ 引述《ppHomer (三腳貓)》之銘言:
: 請教諸位寫程式的前輩們...
: 請問
: 您們都是因為有寫程式的熱忱而寫程式嗎?!
: "寫程式的熱忱" 的具體表現是??
: 寫程式帶給您們的快樂是??
: 如何培養"寫程式的熱忱" ??
: 有寫程式的熱忱, 願意一輩子寫程式嗎?!
: 不好意思, 問得很凌亂....
想起了先前的討論
Re: [討論] 程式不能寫一輩子?
http://www.ptt.cc/bbs/Soft_Job/M.1270487051.A.563.html
熱忱或是熱情,這些形容用的詞語總是讓我覺得很困惑。
缺少了這樣的特質就無法做這個工作了嗎?
即使曾有人用這些形容詞描述我對於寫程式的態度,
依然覺得相當無感。
到現在為止,還做著這份工作有幾個原因。
[A] 做有脈落可循的事務讓我覺得很安心
[B] 多數的情況都不太需要高深的技術,
對我這類半路出家的人來說,它是蠻簡單的
[C] 我想當炮灰(另一種正向的說法,是養份)
====================================================
關於 [A]
最初以程式相關的工作獲得收入是系辦打工,
寫網頁(asp 2.x)、連資料庫(access)、用 photoimpact 做一下美工。
接連幾個這樣的 case,覺得很累。
原因很明顯,當時技術差,code 寫得很糟。
不過,更覺得迷惘的是這樣的工太依賴『感覺』來評判。
做出來的 style 別人看不喜歡,背後的努力似乎就減半了。
思考這個問題,當然的結論是要從網頁逃開。
深入其他的技術,做一些更易懂的工作。
至少工作整體回饋的路徑依賴感覺的成份不能超過 50%
後來就鑽進 server side 為主的工作,
雖然仍有網頁,但我大多不會需要做設計相關的內容
頂多套圖跟寫前端的 scripting 與簡單的 css。
另一種脈落可循是,只要概念了、實作有按設計走
那麼程式就應該要如預期的行為表現。
只要找得到原因,就能知道為什麼程式跑得跟我想的不同。
去掉新手時常弄錯語法、語意的情況,
較少遇到到懸而不解的問題
(所以,能看出我寫的東西並不太需要高深的技術)
關於 [B]
對於即是半路出家、文組生的我,還是有許多工作在等著我們。
那些需要深厚基礎科學的領域是我做不來的,
但不代表我無法從事 coding 的工作,
因為執行專案、做一個產品並不是從頭到尾都需要那麼厚實的科學底子
以一般常人擁有的邏輯思考能力就可以完成許多工作。
更何況工作不是只有產出程式,也不只是能依賴本科系那些必修的學科。
寫程式不是一個不用與人互動的工作,
至少要跟你的同事好好相處,
並且你寫出來的 code 也需要跟你的同事好好相處。
相對的,你也會期待有這樣的同事。
這份工作要做的長久,依賴的是好習慣與公德心。
好習慣即為各種已知的 best practical,
公德心即為在適當的時候選擇依循某些 best practical。
也許有些人在看這一段時,腦中已經開始列出各項書目清單,
它可能會是 design pattern、refactoring、clean code 之類的
他們都是好書,不過看過的是一個比例,
看過後且用在工作上的又是一個比例。
關於 [C]
所謂的炮灰,就是在這種蠻荒時代的開拓者。
一般的認知是『台灣沒有軟體業』所以不重識軟體開發人員。
不過,軟體開發人員得先尊重自己的工作,
這是個良心事業,理想上 coder 要有隨著年資越長
捨棄更多的壞習慣,養成更多的好習慣。
不過工作了幾年,往往看到壞掉的 coder 是相反的流向。
每個人抱持工作的理由不見得相同,
若不是管理者,也無權要求別人做出改善。
那麼這種時候能做的是什麼呢?
養成一身好習慣,讓他們見識到原來軟體開發這麼爽。
對實際產出的 code 來說,要有一定的品質要求,
至少不會有太濃密的 bad smell,
如果是從根本就爛了,估算起來還要維護好長的一段時間,
那也不用 refactoring 了,要有膽量逐步砍掉重練
(這招要視使用者在公司的 credit 而定,做完是正的、負的也要承擔)
code 本身是健康的,那麼維護起來才輕鬆。
有新需求時,你可以更準確預估時程;
有問題時,你能更快切題、解題。
善用已知方法論或客製化工具,
能增加工作效率,或減少讓自己陷入險境的工具太多了。
不過視野要多元一些
1. 個人的效率,例如:是否善用 IDE 與版本控制系統
2. 整個 team 的效率,例如:還在用不文明的部署方法嗎?
像最近比較被討論的 DevOps,從開發、驗證、部署一貫自動的流程。
有許多工具能應用,這年代還在手動 copy 檔案部署嗎?
(還可能因為危急或深夜恍神而弄錯檔,又要重來幾回)
這樣修完 bug 後,還要心煩部署的事,
漸漸養成不拖到最後,決不部署的奇怪心態
有許多人工作沒有效率,只是『啊!原來可以這麼做』。
是的,他們並不知道有工具可以幫上他們的忙罷了。
身為這時代的炮灰,就是當作一種示範,一種工作很 EZ 的對照組。
====================================================
說到底,我還是不明白為什麼寫程式需要熱忱。
我只是自在目前有這樣的工作,
而工作的環境有著許多改善的可能。
若要找個因素來描述我的動力來源,
那麼我想是需求與被需要,
有人需要我寫點東西,我也能符合期待。
這樣對彼此來說都是一種舒適的關係。
也許這就是我繼續前進的動力吧!?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 36.231.130.58
推 peanut97:前輩推 12/05 00:07
推 dream1124:推 12/05 00:07
推 kofi0916:推 12/05 08:54
推 phstudy:有些公司需要加班的熱忱(誤) 12/05 12:18
推 easysun:基本上要讓自己保持在正確的成長路上...就需要熱忱了 :) 12/05 12:40
推 ppHomer:前輩推 12/05 12:41
→ easysun:或是說保持在成長的正循環上,都需要某種力量引導 12/05 12:42
※ 編輯: qrtt1 來自: 220.130.128.164 (12/05 12:52)
※ 編輯: qrtt1 來自: 220.130.128.164 (12/05 12:52)
推 popcorny:推!! 12/06 08:15
→ viper9709:推~不錯的心得 12/07 10:08
推 chatnoir:原來板上有高手是文組的!! 好開心 XD 12/09 16:35
→ zomaaa:書寫風格頗有文學感,一手Code一手詞文,欽佩 12/13 12:44