這個暑假終於不再是像以前一樣待在家耍廢 開始幹點正事了

從七月第一天開始到現在也滿一個月了 在上班的期間學習到很多也有很多感悟
和一些很有經驗的人做事與他們溝通或是交接工作 甚至只在旁邊看著他們真的都可以學習到很多
所以就決定來寫一篇 主要都是關於一些上班觀察到的小地方與一些小心得!

最主要且最有感的觀察當然就是先從程式開始說起了~

解析命令列參數 - argparse

每次在使用一些套件或是執行程式時它們都可以帶一些參數或是不帶也可以(例如:python test.py –source /home/user/Desktop)
那時候就很好奇是怎麼可以達到有時候帶參數有時候不用帶的
在上班的時候看了它們的code學到了有個套件叫 argparse 可以使用 而且超級方便

參數命名簡潔有力

除了傳遞參數以外 在命名變數時 並不是越短越好
而是會盡量讓使用者一眼就能看出這個變數是做什麼用的
盡量不要使用一些無用的命名 以最簡短能描述這個變數的功能為基準來命名 讓看程式碼的使用者更方便

路徑設定與主程式目錄

在觀察的時候 除了參數以外 也會將路徑設定好
主要的作法是加入主目錄的路徑 且要執行的主程式通常會放在主目錄下的那層
這樣當主程式要使用其他主目錄下的路徑時 就使用 os.path.join() 即可 方便且簡潔

縮排、留白、註解

你的程式碼不一定會只有你一個人看 因此盡量保持程式碼的簡潔 縮排、空白統一 並加上適當的註解是很重要的

撇開寫code這點的話
在其他工作方面…

基本小技巧

會一些基本小技巧(?好像也不算小技巧哈哈) 是會很有幫助的
像是shell scripts的撰寫、終端機指令的熟悉、額外工具(例如git、conda)、甚至是 python libraries
也並不需要很擅長 可能只需要稍微了解 甚至是知道有這個工具 在需要他的時候能想到它 都會是很有幫助的

版本控制工具

版本的控制是很重要的 在研究院上班更加可以感受到 很常會需要版本之間的比較 看看這一個版本與上一個版本之間的改進
這點也會牽扯到前面剛剛說的適當的註解也會幫助理解
shell scripts直接寫一些腳本也可以幫助版本之間的測試(主管說通常一支python程式會搭配一支屬於他的shell scripts)

理論知識

以前在上課的時候學的那些理論其實我不太清楚他的重要性 像是機器學習可能就是懂網路架構、評估指標啊等等 就是懂 但會不會運用到也不太清楚
來工讀後發現一些理論知識還是要懂的 像是這邊一些和機器學習相關的知識 例如:precision、recall、map、網路架構等等都是要有基礎認知的 不然可能會不懂主管在說什麼

以上就是我觀察到的一些小心得啦~
也不一定會對每個人都有用 畢竟個人習慣和工作環境都不盡相同

在公司工讀也一個月了 這一個月算是過的真的很充實

剛開始進公司的時候主管每個人看起來都不太容易親近 但是事實上認識後他們每個人都很親切很樂意教導
但還是要記得讓你會這件事並不是主管的工作 而是自己的本分

再來最大的感觸就是血統哈哈
雖然很常聽到學長姐說這件事 但我覺得這種事光聽別人說是真的沒辦法體會到的 還是要自己親身感受才深刻
其實我以為自己不會很在意 不過真的經歷過後才發現原來自己是會有一點在意的
例如說可能大家是一起作為正職的身份進入公司 當有人因為校名而工作內容跟你不一樣等等 應該是不可能會完全不在意的
不過早點了解自己會不會在意也是好事 至少可能還有機會做出些改變

在這工讀的一個月內有讓我對於未來方向更加堅定
雖然說原本就已經多少都知道自己是偏向哪個領域了 但經過這一個月後會讓我更肯定自己選擇的方向不會再像當初一樣那麼猶豫
在這一個月內的工作內容和研究多多少少有點相關 當然也會有一些資料整理 畢竟是做研究最基本的嘛~
雖然知道工作肯定不會是一百趴都是你喜歡的 因為你完全喜歡的話就不會是工作了顆顆
但我可以感覺到在這樣的環境下我的熱情正在慢慢(雖然真的很慢 但還是有感的)的消逝當中 因為我知道我的確不是研究的料
若是我要每天面對我不適合的工作 我可能沒辦法每天都提起100%的興致去上班
因此藉由這次工讀也讓我對自己的選擇更堅定一點了

這一個月不知不覺就過完了
原本想說在七月底就要發這篇文章 結果又拖了快兩個星期
再拖下去八月都要過完了QQ
不過還是很開心有這次的機會可以工讀 見見世面
接下來就是工讀結束要開始面臨一連串的推甄啦 大家加油!