乙個簡單實用的程式設計師雞湯

2021-07-25 17:09:04 字數 3563 閱讀 2636

對於程式設計師來講,挑戰自我很重要。有創造力的以及技術性的休整是可行的。在新年來臨之際,我總結了 12 個心願。

每個月都是乙個每年可更新的技術性的或個人的挑戰:

1.進入真實生活。

2.保持健康。

3.欣然接受不舒適。

4.學習一門新的程式語言。

5.自動化。

6.多學點數學。

7.專注於安全。

8.備份資料。

9.多學點理論。

10.對藝術和人文學科有所涉獵。

11.學習新軟體。

12.完成乙個個人專案。

繼續讀下去,看看我的建議。

程式設計師們過分沉迷於數碼裝置,在數碼裝置之外也別有一番天地。

因此,在真實生活中的投資會帶來相對多的回報。

這裡有乙個起步表,表中是真實生活中可供嘗試的活動。對於每一項活動,如果你真心付出乙個月,你就不再是乙個新手(而是乙個富有經驗的初學者):

程式設計師往往過著久坐不動的生活,因此我們面臨著我們職業帶來的特有健康挑戰。

我們往往會忽視這些挑戰。

每年,花一整月的時間,調整你的鍛鍊、飲食以及環境,來培養持久的健康習慣。

每年去一次診所,測量血壓、膽固醇以及血糖。觀察這些數值是怎樣隨時間而變化的。

如果你的手腕開始疼痛或者已經疼了一段時間了,現在就停下來,採取措施,預防重複性勞損(rsi)。

把目標放在改進姿勢上,重點關注肩膀和脖子。我使用姿勢糾正帶:

(對,它對男人也適用)

跟蹤體重、卡路里攝入以及卡路里消耗。如果必要的話,改變生活方式,來培養更健康的飲食和**方法。

如果你本來就很健康,就考慮一年的結合力量和肌肉的實驗吧。

2016 年更新:在過去的幾個月,我一直在試著使用可以將桌子改造為站立式辦公桌的附件,我不僅在心靈上,而且在身體上都有新鮮感。

我估計我站一天能多消耗360卡路里,然而我覺得它的作用還不止這些。因為站立讓我總體上活動得更多了。我發現,相比於坐著,我的注意力在站著時更加集中。

從我 20 歲出頭起,我觀察比我年長的同伴,嘗試發現為什麼有些人停滯不前,而另外一部分人一直精力充沛。

答案是舒適。

舒適導致技術僵化。

乙個系統,它能正常為我們服務,而且我們一直在堅持使用它。

但是,技術在進步,那些侷限於舒適的人絕對認識不到這些進步的益處。

慣例之所以變為舒適的,是因為它原來就是不舒適的。

清單中的事情,可能讓你在剛開始感到不舒服:

做一些不一樣的事情,乙個月之後,決定是否想繼續這樣做,或者看看能不能找到這樣的方法,能把新事物和舊事物最好的東西融合起來。

舉個例子,當用了 10 年的 emacs 轉用 vim 時,在插入模式下,我設定了 emacs 風格的快捷鍵,但是我用的編輯器是 vim 。

更新:讀者 shae erisson 為欣然接受不舒適續寫了『3 的規則』:當已經有3個人推薦你嘗試一樣東西的話,你必須嘗試一下。

他還給出了乙個『 15 分鐘規則』:給某個東西(比如一部電影或電視節目) 15 分鐘的評判時間。如果你在 15 分鐘之後不想繼續下去了,就放棄它。

這兩條規則我都喜歡。

程式語言起起落落。

只懂一門語言的程式設計師,他們解決問題的能力和事業前景會受侷限。

用它寫乙個不大的程式。

這裡有一些非主流的可供學習的語言:

如果你沒有程式語言可以去學了,自己發明乙個。

程式設計師具備的最有力而未被利用的技能就是,使虛擬和現實自動化的能力。

如果你從來沒做過機械人的話,做乙個吧。

至少玩玩樂高頭腦風暴機械人吧:

或者玩玩 arduino 板或樹莓派:

觀察你做的日常活動,然後決定哪些能全部或者部分自動化。

家庭自動化技術非常發達,借助 diy 系統,例如 insteon,很多東西都成為可能。

花乙個月的時間來做乙個自動化的專案:

電腦科學是一門與數學相關的學科。

成為好的程式設計師的前提是成為好的數學家。

不要讓你的數學才能消失。

考慮每年花乙個月時間溫習這些主題中的乙個:

極少數的程式設計師有好的安全習慣。

如果你在意自己的電子資訊保安,你將會更在意自己**的安全性。

檢查一下,在每個**上,你是否在用獨特、複雜的密碼?

用加密的密碼管理器管理你的密碼,例如 passwordsafe 或者 keepassx。

如果你還沒習慣全盤加密,那麼抽出時間做一下。(在 mac 機上,設定它不難。)

每年,研究一下過去12個月的高危漏洞。他們是怎樣發生的?什麼樣的程式設計習慣能夠防止這些問題在你的**中出現?

這裡是你可以嘗試的其他安全任務:

每年,花時間來反思你的備份策略。

用乙個月的時間,最小化做備份的成本。

(我最近把我的很多任務作檔案放到了 copy 裡,它是乙個靈巧的類 dropbox 應用,有比 dropbox 更多的免費儲存空間。通過這個推薦鏈結來得到多餘的 5 gb。)

選擇容災方案:為每台電腦指派單獨硬碟,借助像 time machine 的工具,開啟自動備份。

用版本控制來管理關鍵檔案,將他們儲存在異地伺服器中。

電腦科學有著豐富的理論結構。

跟上新進展,複習你已經掌握的經典理論。

每年花乙個月,學習類似下面的理論:

對於初學者,你可能想看看這些帖子:

工程師往往輕視藝術。

工程師沒有意識到的是,藝術和人文成就了卓越的技術。

史蒂文 · 賈伯斯喜歡指出聯絡技術和人文的重要性,而且真的是這樣。

不要對這些理論一無所知。

藝術和人文訓練直覺,並且使其變得敏銳。這個過程是以一種很難量化的方式進行的。然而這種直覺對於在量化領域中工作的我們來說,是必要的。

工程師需要學習怎樣度量他們不能計算的東西,而不是只計算他們能度量的東西。

每年至少花乙個月,多學學類似下面的理論:

社會科學也對電腦科學有很多貢獻。具體來說的話,試試經濟學和心理學。

要為你自己的軟體獲得靈感,乙個好的方法就是,學習乙個或一類新應用。

舉個例子,如果你從來沒有用過 3d 建模工具,試試 blender。

或者,如果你從來沒學過 latex,真心地付諸一試。

在你學習的過程中,把你喜歡的和不喜歡的東西都記錄下來。

捫心自問,這些觀察是否反映到了你創造的軟體中?

在你自己的作品中指出壞毛病很難,但給別人的作品挑毛病就很容易。

每一對父母的孩子都是漂亮的。

學會認識自己醜陋的小孩。

如果你整天總是為別人寫**,就要記住,程式設計師之所以成為程式設計師,是因為他為自己寫程式。

每年把乙個月的時間花在你自己選擇的專案上。

實現那個專案的核心部分。

使其開源,將它發布到世界

招聘乙個程式設計師

招聘乙個程式設計師,唯一對你有意義的是他能寫出好程式的能力。很少人像這樣去招人,他們更喜歡去挑剔程式設計師的個人癖好和性格缺點。你不如這樣說更合適 找不到那種技術上又好 又能適應企業文化的人,我就等著,一直找到為止。我們很少有敢這樣奢侈的公司,也許google可以這樣,就是google這樣的公司也一...

乙個程式設計師的忠告

諸位,咱當網路工程師也是幾年了,不算有出息,環顧四周,也沒有看見幾個有出息的!回顧工程師生涯,感慨萬千,願意講幾句掏心窩子的話,也算給咱們師弟師妹們提個醒,希望他們比咱們強!1 好好規劃自己的路,不要跟著感覺走!根據個人的理想決策安排,絕大部分人並不指望成為什麼院士或教授,而是希望活得滋潤一些,爽一...

乙個程式設計師的母親

在此之前,我寫過幾篇有關母親的文章,很多朋友閱後都很感動,是的,這一輩子給我最大最深影響的人是母親,儘管母親只是個普普通通的農村婦女,日出而作日落而息,日復一日年復一年,母親幾乎沒什麼文化,只認識一些簡單的文字,讀大學時經常寫信回家,每次收到信,母親總要求父親用土話來翻譯一下,自從懂事起,我從沒有感...