自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何教女朋友編程?

移動開發(fā)
回到我還是一個學生的日子,具體地說是大學時期,我曾經(jīng)跟朋友們說過這些。我期望每個人的想法都和我一樣,但是出乎我的意料,我是那個瘋狂極客小組里面唯一瘋狂的人。他們告訴我,他們不需要程序媛女朋友,那樣他們會發(fā)瘋的。但是我認為這是胡扯。

[[146883]]

自從我?guī)啄昵皠偝蔀橐粋€軟件開發(fā)者之后,我就一直夢想著有一個能和我一起討論工作的女朋友。我想和她討論我所從事的工作。不是像“對,我做計算機 的”那樣,而是以真正深入的方式討論。就像你和同事間對話一樣。無論什么時候,當我發(fā)現(xiàn)一些令我激動的新東西時,我希望她是我***想告訴的人,并且能夠理 解這個新東西。

回到我還是一個學生的日子,具體地說是大學時期,我曾經(jīng)跟朋友們說過這些。我期望每個人的想法都和我一樣,但是出乎我的意料,我是那個瘋狂極客小組里面唯一瘋狂的人。他們告訴我,他們不需要程序媛女朋友,那樣他們會發(fā)瘋的。但是我認為這是胡扯。

這只是他們不愿意說罷了。每個人真正想的是,是否有可能找到一個既漂亮聰明,又對編程感興趣的女孩,并且會對你這個不懂社交的極客有好感。這一切發(fā)生的概率能有多大?

但是老兄,讓我告訴你一個秘密:她不需要懂這些東西。生活中的任何事情都是可以學會的。一些人可能會傾向于某些特定的事 情,但是不代表其他人學不會、理解不了。我們對自己的職業(yè)非常自豪,因為我們花費了很多年來掌握它。但是說實話,如果你掌握了方法,很多需要你花費一年時 間來理解的東西,可以在5分鐘內(nèi)解釋清楚。

指針運算真的很難么?還是因為我們最終理解了它,就認為自己的水平提高了呢?理解多態(tài)很難嗎?是 Monad(譯者注,Monad是為了消除副作用的一種模式,如函數(shù)式編程中的鏈式結(jié)構(gòu),參見維基解釋)真的很難理解,還是我們站在一個錯誤的角度來理解它?

智商達到 80 就足夠了。

如果你選擇了合適的比喻,你可以在幾個小時內(nèi)解釋清楚指針、手動內(nèi)存管理、棧/堆分配、垃圾回收等等知識。

問題來了,請用白話向外行解釋“指針”、”手動內(nèi)存管理”、”棧/堆分配”、”垃圾回收”。

還是算法很難呢?我打賭你不會希望有人在午夜叫醒你,讓你寫一個快速排序。但是假使你有幾把刀,并想教你的女朋友如何對它們排序(當然是按尺寸)呢?你可能不得不為她示范兩三次,從而讓她相信這個算法真的管用,雖然算法本身簡單到爆。

如果你遇到一個問題,在幾個小時后還是不能理解,去找你的女朋友,并向她解釋。不要像跟墻說話那樣,在你說話過程中意識到該如何做之后就中斷談話。嘗試向她解釋,即使她一點兒都不懂技術(shù)。一旦你找到了合適的比喻,她就很容易理解了。

時刻記住,她需要有意愿來學習,你不能把你的知識強推給她。這里***的障礙是,打破“我永遠也理解不了”的恐懼。

 

這不難,只需要一些時間

 

大約 6 個月之前,我女朋友正在為她的碩士學位學習政治學。在此之前,她真的沒有任何技術(shù)經(jīng)歷。

有一天她決定要學習一些JavaScript中酷酷的東西,并在我為她做的個人網(wǎng)站上制作一些動畫。一周后我在教她Ruby on Rails。幾周后她已經(jīng)在做自己的Web應(yīng)用了。又幾周后她意識到需要更多底層的知識,因此我們開始學習一些基礎(chǔ)的技術(shù)。

我們開始學習諸如計算機如何工作,如何手動申請內(nèi)存,棧和堆的區(qū)別,如何在Objective-C中做引用計數(shù)管理,垃圾回收機制如何工作,函數(shù)式編程(我指的是Haskell),網(wǎng)絡(luò)協(xié)議等等。她甚至知道了我在一年前還不知道的東西。

基本上,我能夠從我的知識里面,選擇重要的東西,拋棄掉為了搞清楚什么東西最重要而浪費的99.5%的時間,從而只教給她那些需要知道的知識。

讓一個人成為一個程序員,這些足夠了嗎?不。她仍然不得不經(jīng)歷困難的部分,要理解許多東西,但是她僅僅在6個月后,就已經(jīng)比在大學里學習軟件工程專業(yè)的大多數(shù)學生掌握了更多的知識。

 

你是一個專業(yè)的老師

 

作為一個專業(yè)的開發(fā)者,在某種程度上意味著你也是一個專業(yè)的老師,因為我們的工作迫使我們不斷地向其他人解釋。我們不得不站在閱讀者的角度,使我們的代碼可讀。我們不得不在我們所做的事情看起來沒意義時,解釋我們做了什么。我們不得不教育實習生,讓他們成長得更優(yōu)秀。

在工作中,我們做了很多復(fù)雜的事情,讓它看起來簡單(希望有些人喜歡做相反的事情)。學習某個知識需要花費很長時間,其中的一個原因是,你一直在迷失。你可能有一個老師會偶爾向你解釋,但是每周只有一次聽講的機會。

另一方面,如果你在教和你生活在一起的人,她將能***次地接觸你,且能夠立即得到任何問題的答復(fù)。

開發(fā)者很擅長Google,因為我們一直在迷失。我們一直在尋找答案。但是如果你有一個在同一個房間、知道所有答案的人一起,你的生產(chǎn)力會怎么樣呢?

責任編輯:chenqingxiang 來源: oschina
相關(guān)推薦

2015-08-21 09:48:11

女朋友編程學習編程

2020-10-21 08:59:50

刪庫程序員虛擬機

2019-03-12 09:43:14

反向代理正向代理服務(wù)器

2019-04-09 09:40:23

2020-03-16 14:08:59

線程熔斷限流

2021-09-14 12:00:11

VR字節(jié)跳動

2019-10-09 10:45:16

云計算Web互聯(lián)網(wǎng)

2020-04-21 11:45:04

技巧單一責任鏈開閉原則

2020-10-15 09:35:27

亂碼UTF-8GBK

2019-12-23 10:26:02

3PC分布式2PC

2020-10-19 13:01:31

刪庫程序員思科

2019-04-19 09:48:53

樂觀鎖悲觀鎖數(shù)據(jù)庫

2018-08-21 22:31:04

數(shù)據(jù)分析單身女朋友

2019-04-26 14:46:18

GitGitHub局域網(wǎng)

2019-07-22 10:34:31

大案牘術(shù)大數(shù)據(jù)Big Data

2020-12-14 07:08:37

MSL網(wǎng)絡(luò)Linux

2020-12-14 10:25:08

DNS通信IP

2021-10-21 08:31:31

Spring循環(huán)依賴面試

2020-06-22 08:07:48

Spring依賴場景

2021-03-09 12:27:05

微服務(wù) 微服務(wù)架構(gòu)應(yīng)用程序
點贊
收藏

51CTO技術(shù)棧公眾號