程式設計師這個職業究竟可以幹多少年?大多數程式設計師都認為程式設計師是個吃青春飯的職業,編程這個事只能幹到30歲,最多35歲吧。每每聽到這樣的言論,都讓人感到相當的無語…… 今天,我們又來談這個老話題…… 首先,我們先來看一篇論文《Is Programming Knowledge Related to Age?》(英文版),這篇論文是兩個北卡羅納州立大學計算機科學系的兩個人對StackOverflow.com上的用戶做了相關的數據挖掘得出來的一些數據。 (StackOverflow.com上的數據是公開的,任何人都可以用來分析和統計,所以這篇論文的真實性是沒問題的) 數據採樣和清洗條件如下:(數據全量是1694981用戶,平均年齡30.3歲)
年齡分布圖
我們來看一下他們的年齡分布圖:我們可以看到程式設計師年紀的正態分布(高點在25歲左右,但是中點在29歲左右)
能力和年齡分布圖
然後,計算每個人每個月的Reputation,這樣可以找到這個用戶的真正的活躍時間,這樣便於計算這個程式設計師的真實能力。(總聲望 / 活躍時間),可以得到他平均每個月得來的Reputation。 我們來看看程式設計師的能力和年齡段的分布圖:
上圖中我們可以看到,程式設計師的能力在從25歲左右開始上升,一直到50歲後才會開始下降。所以說,程式設計師吃的不是青春飯。 只有碼農,靠蠻力,用體力而不是用腦力的程式設計師才是吃青春飯的人。
年紀大的人是否跟不上新技術
論文的作者用了最近5年內比較流行的技術Tag,然後用了一套比較嚴謹的算法來查看那些所謂的「老程式設計師」是否在新技術上跟上不了,所謂跟不上,也就是這些老的程式設計師在回答這些新技術上並不活躍。所謂老,就是37歲以上的程式設計師。 得到了下表:可以看到,老程式設計師和年輕的程式設計師對於一些新技術的學習來說也是差不多的,甚至有些項還超過了年輕的程式設計師。
得到了下表:可以看到,老程式設計師和年輕的程式設計師對於一些新技術的學習來說也是差不多的,甚至有些項還超過了年輕的程式設計師。
結論:
1、程式設計師技術能力上升是可以到50歲或60歲的。
2、老程式設計師在獲取新技術上的能力並不比年輕的程式設計師差。
最後,小編還想說:由上面的數據可以看出,由於如今許多的年輕程式設計師太浮燥了,才會說30歲是程式設計師的頂峰。其實,對於大多數人來說,如果還沒有編程到30歲,還不能成為一個「合格」的程式設計師。所以,並不是編程編到30歲就玩完了,而是編程編到30歲才剛剛入門。 有一些年齡在40以上,並且還對技術保持熱衷的「老程式設計師們」,他們無一不是身懷絕技,在公司身居要職或高管,成為公司最寶貴的技術保障。