對一邊旅行一邊程式設計的生活方式的體驗和思考
大概三個月前,我工作的公司突然倒閉了。
倒閉的原因跟這篇文章的內容毫不相干,但簡言之,投資者毀約,一個開發中的產品,也就是我主要工作那個,被迫終止了。
我從沒有想過會發生這種事情。一下子變成了待業,我是剛休完假回來,而且還就當前穩定的工作做了一箇中長期計劃。
但事情就這樣發生了,而且是一夜之間,我不得不思考下一步的出路。
遠端工作的想法一直吸引著我。我知道,在某種程度上我是想逃離這種朝九晚五的桎梏,帶著我的筆記本,去寰球旅行,以自由程式設計職業者的身份做一些小專案,全面體驗生活的同時還鍛鍊我的技術能力,不至於讓自己變得生疏。
於是,突然間,我就變成了一個數字遊民,沒有包袱,沒有貸款,沒有孩子,有一點積蓄,沒有近期必須要做的事情。
需要說一下,我的決定下的非常簡單——這是一次絕好的做一次旅行的機會,我一直盼望著的。
我的旅遊線路的選擇非常的好理解,數個原因最終導致了我買了一張去往曼谷的機票。
東南亞自由港!
我到歐洲一些城市旅遊過,所以我去世界裡另外一部分。
我曾在美國待過一年,我很想回去看看,但我迫不及待的想開始我的旅程,而對一個波蘭人說,美國簽證既昂貴又難拿到。
澳大利亞對於做長期旅遊來說花費實在太高,尤其是像我這種情況,我喜歡潛水、衝浪和其它一些戶外運動,這些運動即使在一些“便宜”的國家裡也是價格不菲,更別提在澳大利亞了。
所以,東南亞成了很明顯的選擇。那裡是有預算限制的旅遊人的聖地。網上有很多到過那裡的人寫的無數的部落格,我想,這應該是一個人的一生中至少要經歷過一次的一件事。
幸運的是,我有一些小客戶,當我還在公司上班時,下班後會給他們幹幾個小時,雖然收入不多,但在旅途中,這也是一種相當大的經濟保障。
經過了一個月的準備(打疫苗,裝備,景點計劃),我和女友背起揹包(42升的Northface Duffels包——高度推薦,雖然不是做長途旅行的最佳選擇),啟程飛向曼谷,開始了我們泰國,越南,寮國,柬埔寨的旅遊計劃(順便說一下,我們後來把線路改成了泰國,越南,柬埔寨和印度尼西亞,這是另外一個話題)。
現在,我已經旅行兩個月了,為我在波蘭的客戶遠端工作。這些簡單的工作大多數是維護修改一些現有的網站,但我後來想辦法接了一個大一點的Rails專案,這個需要我從頭開發。
目前為止,這是一次非常值得的、有啟發的(儘管不是在技術方面)的體驗,但也顯露出一些小的問題,我想在這裡分享給大家。
主要的,我發現我需要反覆面對兩個非常重要的問題:
1) 專案型別限制,在旅途中你可以做的專案;
2) 對不依賴辦公地點的錯誤認識;
只能做一些小的簡單的專案
這對於我來說是巨大的不利。起初我覺得做一些小專案能讓我保持漂泊狀態就行了,但現在的現實情況是,我越來越有一種沒有成就和浪費時間的感覺。
沒錯,在泰國帕岸島的小屋裡開啟你的膝上型電腦,一邊跟客戶網上交流一邊開發專案,旁邊就是海濱,這很有趣。你做完工作,跳進30度左右的海水裡,更美妙的,你可以自由的潛水到數個珊瑚礁裡,但這需要另付費。
我並不是真正的認為長時間的旅遊是一種浪費時間。旅途中你能獲得很多的見識和機會,但事情往往是不能兼得。
如果你喜歡挑戰,需要不斷的在你的技術領域中取得自身發展,可在旅途中你很難達到這方面的平衡。
當然,這取決於你開發的專案的型別和實現中面對的技術問題,但說老實話,當你在不斷的變換地方,經常遇到不可預知的網路狀況,渴望最大限度的享受旅遊中的快樂,你根本無法去做那些有難度的挑戰性的工作,這些工作需要數小時的分析,討論和複雜的程式設計。
旅途中有太多讓你分心的事,工作後(有時是工作中)有太多的東西吸引你去觀看。
我非常理解,有些人會把這當作一種自制力問題,一種如何計劃,如何準備的問題,但對於我來說,絕不是這樣的。
我認為自己是一個非常能自控的人。我的客戶滿意我做的工作,我總是能按期完成任務,而且是高質量的。這是我自己定的目標。
問題不在這裡。問題是,當涉及到中等複雜專案,涉及到不那麼簡單的程式設計任務時,我發現,很多在辦公室裡能完成的工作,在旅途中卻變成了很有挑戰或完全不可能的事情。
這種情況限制了我只能挑選一些容易處理,以及有富足的時間期限和只需要少量的研究的專案。
毫不隱瞞的說,還不止這些。我認為在一個由比你有經驗、比你聰明的人組成的團隊裡工作,這對你的開發是至關重要的,作為自由職業者,只做一些小的專案、一些簡單的MVC/CRUD程式設計工作,這就是相當於錯失了很多成長和學習的機會。
但不要誤會,我在忙碌的工作,每天都在努力學一些新知識,一直都在增長我作為程式設計師的各種技術能力。然而,在過去的兩個月裡,我感覺缺少把自己暴露在現實程式設計問題中的機會,那是我在公司工作時每天都會遇到的,那些問題是你一個人無法解決的。那些問題跟公司的大小無關。
不依賴辦公地點的錯覺
現在,我完全的相信遠端工作是可行的,它對(a)程式設計師擺脫辦公地點依賴和(b)減少公司開支是十分有效的途徑。
但實際情況卻完全不同。旅途中工作給了你一種工作地點不固定的感覺。當然,有的公司的辦公地點會分佈世界各地,但為了完成一個不那麼簡單的任務,你非常需要一個舒適的場所,好的網路連線,安靜的環境,更好的一些設施,例如健身房,瑜伽室,酒吧。
還有一點很明顯,在旅途中我發現,創造性較大的工作需要有一些作息規律。一週變換一個地方,工作在海濱,吊床裡,咖啡館裡,酒吧裡,旅館地板上,對於度假來說這很酷,但很顯然並不有助於解決困難的程式設計問題。
對於這些問題涉及到各種可能性和各種層面,我現在想了一些解決方案,下面就是。
1) 遠端工作的內容要適合你的技術和你的能力。每三個月換一種技術方向。在每一個地方要多待一段時間。要讓自己沉浸在當地的文化和生活節奏中,租一個好一點的屋子,要有一個正式的工作桌和椅子,要能確保你坐在上面能保持3個小時以上(如果你有站著工作的習慣,那就忽略這一點),要形成規律習慣。去你喜歡的地方,當你想換個地方時,先研究一下,然後再去。
2) 找一個真正的工作,在辦公室裡的工作,做你喜歡的和有挑戰性的工作(事實上,一種應該這樣),爭取能長期假期,去旅行,每年大概2個月。
3) 積極做一些能夠獲得臨時收入的wordpress網站和旅遊網站相關的活,這能給你帶來很多的收入,能讓你旅遊個夠。
邊注:
- 我不喜歡“數字遊民(digital nomad)”這個詞來形容自己。我認為用douchy這個詞更合適。
- 如果你有興趣,請到airseasummit.com上關注我的探險之旅。
相關文章
- 對Serverless架構的一點體驗和思考Server架構
- 1024 程式設計師節 | 請對身邊的程式猿好一點程式設計師
- 聽技術播客:一邊學Python程式設計一邊學英語Python程式設計
- HOVR工作健身器材 邊上班邊鍛鍊身體是一種怎樣的體驗VR
- 一維卡尺邊緣對
- 一邊聽歌一邊檢查身體的智慧耳機!你值得擁有
- 一個30歲程式設計師的對於中年危機的思考和應對程式設計師
- 哪個中年IT男不是一邊面對危機,一邊咬牙硬抗
- 邊緣計算場景下雲邊端一體化的挑戰與實踐
- css爸爸!一邊固定,另一邊自適應的方法CSS
- 哪個中年IT男不是一邊面對危機,一邊咬牙硬抗【轉】
- 邊緣計算正在改變IT專業人員對基礎設施的思考方式
- 邊學邊做的第一個Unity小遊戲Unity遊戲
- 對程式碼命名的一點思考和理解
- 深耕邊緣計算 揭秘阿里雲邊緣雲網一體化的技術實踐阿里
- 一個“老”程式設計師的思考程式設計師
- 表格的邊距 邊框設定
- 身邊的一個可愛女程式媛
- Android 架構設計 --- 關於 View 邊界劃分的思考Android架構View
- 北漂程式設計師邊城的幸福生活程式設計師
- 廣告場景下雙邊市場的實驗設計
- 聚焦邊緣計算場景,打造雲邊端一體化容器雲平臺
- Flutter實現一個邊讀邊處理邊傳送檔案的功能Flutter
- 對設計與設計師“價值”的一些思考
- 關於運營邊界的思考
- 和真正的程式設計師在一起是怎樣的體驗程式設計師
- 【邊緣計算】劉陽:邊緣計算髮展中的若干熱點問題及思考
- 《程式設計師的數學》思考題(一)程式設計師
- 經驗:一個秒殺系統的設計思考
- 在風變程式設計學習Python,找到了邊玩邊學的樂趣程式設計Python
- Minecraft 從入門到入坑(邊玩遊戲邊學程式設計)Raft遊戲程式設計
- 趣圖:一邊做開發,一邊做測試
- Android stroke 邊框線 某一邊Android
- 內容型遊戲的體驗設計思考遊戲
- 【設計模式總結】對常用設計模式的一些思考設計模式
- 對優秀程式設計師的思考程式設計師
- 邊緣計算|Hadoop——邊緣計算,有沒有對應的軟體?例如資料中心或雲端計算環境進行資料處理和儲存的Hadoop單一軟體框架?Hadoop框架
- 經驗篇:對商業分析的一些思考和感悟