看板 Soft_Job 關於我們 聯絡資訊
medium好讀版: https://goo.gl/FBR9uE PressPlay好讀版: https://pressplay.cc/link/2A43FC7BD --- 這個話題我想很久了,我雖然是工程師出身,但我的興趣是研究身心靈、探索自己、挖掘自身議題,幫助自己的人生走向越來越自由,越來越有力量。 以往談論這個話題的人多半使用身心靈圈常用的詞彙,像是能量啦、臣服啦、內在小孩、療癒自我之類的。今天我會用程式開發的角度來聊聊為什麼探索自己那麼重要。 首先,你要知道我們出生就是一張白紙,除了原本自己的個性之外,其他都是來自於家庭、學校、社會。而父母的教導是最直接的。在成長的過程,我們的價值觀、和人相處的方法、和世界溝通的方式都是傳承至父母和我們成長的經驗。父母也是從他們的父母傳承而來,所以你的言行是集家族之大成。 若以一個有自身軟體產品的公司,他可能一開始是用外包,快速建立起一個專案,裡頭用到的功能、函式庫等等是來自於外包公司,然後外包公司絕對不是憑空建立起一套系統,而是你不知道從哪來的拼拼湊湊出來的。可能是工程師拿之前的code來改,或是沿用上一份產品的架構。 而在公司發展愈來愈大,也聘請了工程師來維護,有一天遇到了bug,工程師一看,發現裡頭混合了各式歷史的寫法,錯綜複雜,有的是PHP包ASP,有的是javascript存在DB,要執行要用eval(抖)。工程師不敢貌然改,改A會讓B爆炸,改B會讓C死掉,ABC都改了可能又會冒出DEF。 所以只能workaround處理,把這件事交給未來的人。幾年過後這個系統就充滿了workaround。後來的工程師寧願開104也不要開IDE來改Code. 那麼,我們的人生也是這個樣子的啊。在華人的教育中,我們一直被教育要以和為貴,以大局為重,不要太凸顯自己,棒打出頭鳥之類的。仔細想想在古時候是極權社會,我們祖先為了自保,能讓香火延續所以要隱性埋名低調行事。而在50–60年代白色恐怖時期更再低調,以免惹來殺身之禍。而這樣的價值觀就一代一代地傳承到我們身上。 而當我們聽著長輩說著以前誰誰誰為了改變什麼事而遭到迫害等,就好像聽著前輩說以前我們試圖改這個系統,結果造成死機兩天,整間公司雞飛狗跳,所以後來的人就默默地workaround下去。 你是工程師的話,你在這環境會作得開心嗎?會有成就感嗎?當然不會啊!系統改不動,要引入新東西的話發現PHP可能要昇版號,但裡頭還一堆是用舊版PHP寫的東西,一昇立馬爆炸。只好換一家公司重來了。 如果你是對別人的眼光十分在意的人,要如何不懼怕別人的看法,然後可以好好表達你所說的話?甚至是主管在要求你不合理的事時,如何自在的據以力爭呢? 人生能像換工作那麼容易重頭再來嗎? --- 程式的重構和人生的重構 先想想看,為什麼老闆總是不愛工程師提出重構的需求?不外乎這幾個原因 1. 要忍受一段時間沒產值 2. 需要大量的心力和高端的技術支持 3. 過程中會問題百出 那麼,我們對於自身的議題遲遲不處理也是差不多的理由。 1. 面對自己陰影和創傷是件不舒服的事 2. 要處理議題需要大量的心力時間,甚至是專業協助 3. 在過程中也會問題百出 舉個我常常看到一個普遍的情況,沒有自信和過度在意他人的看法。沒有自信源自於自己覺得自己不夠好。有可能是小時候沒有獲得足夠的肯定和支持,畢竟我們的教育老是在嫌你不夠好,處罰你不夠好,在這個環境下能保持健康心態的不太多。 我們也總是為了得到肯定,而迎合父母或老師希望我們作的事。所以對於事情的結果是好是壞,和別人有沒有認同,有一種不理性的態度。 像是: 1. 很難接受自己失敗 2. 狡辯,試圖說服他人自己是對的,尤其是別人不認同你說的話時 3. 與其盡全力而迎來挫折,倒不如一開始就不努力,就算是失敗也是有原因的 先說,我講的狀況我自己也親身經歷過。我不知道你有沒經歷過這樣的過程,有的話歡迎分享給我你的情況,我們可以聊聊。 回到正題,面對這種情況,我在一開始作了什麼workaround? 1. 很難接受失敗的話,那麼我就作簡單的事就好,太麻煩的我都不會作。 2. 當別人不認同我的時候,我會想要征服他,無視我的論點出現了錯誤。 3. 盡全力而迎來挫折我很難接受,所以我都作到60分就好,然後咒罵那些看不到我價值的人。 憑良心說,這樣的工作態度能有辦法飛黃騰達嗎?怎麼可能,但如果我一直習慣這樣子的作法到40歲、甚至50歲,我勢必會變成一個雞掰人,被社會淘汰。 一個沒有辦法跟上市場變化的系統,只能處理簡單且限制性高的程式,很容易被淘汰。而且隨著時間愈來愈長,系統會長得愈來愈歪,要去修正他的成本就愈來愈高。 同樣的,我們的議題拖延越久越難處理,由其是過了35歲,人的價值觀會逐漸定型,等超過40歲之後就算會好好面對自己的議題,好好處理,改變的幅度不會來得比20來歲30出頭的人大。 重構就是唯一一條路了。這邊先不提把code砍掉重練,原因是人生無法砍掉重練,再來是砍掉重練後隨著時間堆疊仍然會發生同樣的狀況。 那麼我們該怎麼作呢? --- 認識自己,擁抱自己的特點 先說明一下,或許你曾經看過「擁抱自己的缺點」的說法,但我的想法是不管優點還是缺點都是屬於自己的特點。優缺點只是人類以利益優先的價值觀而區分的。 不能賺錢的、沒有產能的、造成他人不便的、不易管理的,通通列為缺點。而我們一直試圖掩蓋它。但換個角度想,所謂的「缺點」只是你沒有找到合適的方式去使用。 像是三分鐘熱度,正因為興趣廣泛,想要多接觸不同的領域,所以會一直換來換去,但是這也是人的一種學習方法。這世界需要專精的人才,但也需要通才。把一個每天面對帳本數字的會計和一個每天面對程式的工程師放在一起合作,兩個人都在講自己的專業語言,溝通效率極差。 如果有一個兩個都摸過一點的人,能在中間協助他們溝通,那麼事情是不是會比較順一點?如果你是常被說三分鐘熱度的人,這樣子能更了解如何使用你的特性呢? 其他你認為的缺點,都有原因,而且都可以找到適合運用的方式。而這個尋找的過程就是人生智慧的累積。 我通常會使用人類圖這個工具來協助自己和他人看到自己的「原廠設定」,有助於暸解自己的特性和適合的使用情境和使用方式。我們部門的人大多都有和我聊過人類圖,而且我也用這一套工具來暸解我應該要用什麼方式和每一個人互動。 重建規則,用Legacy Code輔助 改舊的Code成本太大,倒不如新寫一個處理新的商業邏輯的程式,讓舊的Code只作舊的事,中間若要新舊互相支援,就用Legacy的判斷,可能Call API,或是新舊資料結構轉換的工具程式。 這中間會十分痛苦沒錯!就好像你要改變你一個習慣,需要很長時間,而且會需要隨時花心思在上面。 例如咖啡成癮好了,你需要喝咖啡是為了解決某個狀態,讓自己能夠承受夠大的壓力。那麼事實上你所背負的壓力太大了。你需要重建一個規則,假設叫作「我每天工作要從12hr減少到9hr,然後休息和工作切開」好了。 那麼要從現況走到這個目標就十分痛苦,因為每天的事就這麼多,別人可能會質疑說為什麼以前可以現在不行,甚至說你工作怠惰。 你可以選擇繼續扛起來,或是選擇老實坦承你的狀況,就算是別人不諒解,你還是得這麼作。在調整的過渡期,你需要過渡(Leagcy)的作法。把工作交給別人,或是請主管重新分配,麻煩到別人的地方就道歉、請吃飯之類的解決。 可能主管要補人來分擔工作,那麼過渡期你再撐一下是沒問題的。這痛苦的時間可長可短,但是只要方向確定不變,你身上的壓力在某個時間點前是加倍地痛苦,但到某個時間點之後會愈來愈輕鬆,最後身心的壓力都均衡後,咖啡自然就戒掉了。 如果單純使用「那我就減少喝咖啡的量」這種workaround方式,你會發現的確你咖啡少喝了,但是會用別種方式來平衡壓力,像是抽煙或是暴食之類的,你再處理抽煙問題可能又會引發其他的問題。 這種workaround方式是不是很像寫程師會出現的狀況 XD 尋求技術支援 如果自己要重構程式,但又不擅長作這件事,該怎麼辦呢?不外乎上網找找相關資源,有人開講座講重構,那就去參加。或是問問其他有重構經驗的前輩該怎麼作,對吧。又或是hardcore一點,直接邊作邊踩坑邊學。 對應到我們自身的議題,也是這樣處理的。你可能會問問有經驗的前輩,或是上論壇看看大家怎麼處理和你一樣的議題。甚至是去上心靈成長的課程或是心理諮商。 但是在台灣仍然有著去看心理諮商就好像自己有病一樣。雖然現在有越來越開放的趨勢,但在老一輩的觀念還需要一段路要走Orz 但說穿了去心理諮商就像參加講座一樣,你可以接受到這個領域專業的技術支援。然後慢慢修正自己的作法,長時間下來你可以看到自己的轉變。 就如同重構,一次重構一些,一點一點累積起來可以看到系統的轉變。 我自己的心得和結論 我是從身心靈課程下手,身心靈圈是個很有趣的地方,裡頭不外乎狀況很多的人,甚至有只取暖不想前進的人。我抱持的觀念是「我不是要取暖,而是要讓自己變得更好」,我一學到什麼技巧或是新思維我就快速地套用在生活中,然後觀察生活的轉變,確認是正確的方向就繼續,是錯的方向就rollback到上一個版本,然後再思考下一步怎麼作。 走過探索自己的路,有幾句話支持著我繼續走下去。 1. 過去的經驗就像腳被鏈球鍊住阻礙你前進,你足夠強大可以拖著它們向前走。 2. 不管是怎樣的經歷,你都可以從中找到人生的智慧,用它來幫助自己走下去。 3. 你不用管別人怎麼作,你走出你的道路後,自然有人會跟著你走上相同的道路 如果你看了我的文章,想要和我聊聊,隨時歡迎到我們PressPlay上的專案留言或是訊息,聊天順便幫我們Debug. 專案傳送門: https://pressplay.cc/rd -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.34.49.142 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1553347963.A.C98.html
aaadult: 測試可以這樣寫:expect(行為).toBe(目的) 03/23 21:49
peanut97: 我就是什麼都碰一點的人 覺得超專精只會講專業術語的人 03/23 21:58
peanut97: 很難溝通 03/23 21:58
shanelee789: 每次閱讀你的文章都獲益良多 03/23 22:29
iamyiz: 受益不少 謝謝 03/23 23:12
fish0112: 人類圖是什麼 03/24 00:38
星盤和易經的結合,可以看出一個人的原廠設定。認出自己卡關的點在哪裡和怎麼辦
eva19452002: 程式debug可以回溯,人生也可以嗎? 03/24 00:40
已發生的事還是會發生,當程式出現問題了,網站狂噴500,然後客服電話響不停時 程式也是沒辦法rollback後就當沒事。 人生也一樣,但我們可以常常回顧我們的初衷,或是為了解決現在的狀況再提交一個commit。修正現在的問題,使未來不再重覆發生。我自己就很常rollback去思考出發點是不是正確的,然後一路走來都是不斷的提交commit,看看生活有沒有什麼變化,有時候會推hotfix,不斷地迭代更新,一步一步走到今天。
AlbumXimals: 非常有趣的論點!! 03/24 00:47
loadingN: 人生不能重來,但 Git 可以 03/24 01:37
hass231470: 可以 但很難 XD 03/24 02:46
hass231470: 我有個小小的訓練是 把自己當成AI在養 03/24 02:47
這個不錯喔!!人生總是在try and error學習成長 ※ 編輯: UniFish (1.34.49.142), 03/24/2019 07:36:58
rollr: 這推文少到讓我吃驚…很水準很高的心得文呀 03/24 07:51
SKII588: 我同學也是心靈圈的人 03/24 09:16
game880218: 推 03/24 09:54
fig498: 推 很深入的文 03/24 11:07
twgamerave: 我是覺得花這些心思做心靈探索還不如享受當下的人生, 03/24 17:36
twgamerave: 用你程式的講法大概就是,你花了太多的時間探究結構 03/24 17:36
twgamerave: 或底層的東西,別人沒想這麼多,有啥框架工具就直接上 03/24 17:36
twgamerave: ,在你研究的時候,別人已經完成工作下班爽了,當然這 03/24 17:36
twgamerave: 只是我個人的想法沒有對錯 03/24 17:36
guest0710: 很有趣 很仔細的一篇文 待我思索看看... 03/24 18:35
nova06091: 看了一半眼睛超痛 盯螢幕太久了 03/24 19:23
finalshinji: 頗有趣的思考 03/25 00:09
taelia: 很有趣的譬喻! 把抽象的心靈探索變得很具體 03/25 10:29
liturtle: 好文 03/25 15:04
lostman: 推,釐清自我甚至比賺多少錢還重要 03/28 17:06
allenst5: 推 蠻有同感的! 很有趣的分享 03/29 00:33
moon2519: 看完很感慨 03/31 16:23