㈠ 普通程序員和大神程序員,到底有啥區別「渡一教育」
眾所周知,雷軍本就是一位超級厲害的程序員。他曾經這樣評價自己的編碼水平:「我沒寫過詩,但是有人評價我寫的代碼像詩一樣優雅。」
好吧,有被凡到。
盡管很多人曾因為雷總過於濃密的發量而懷疑他作為程序員時的水平。但是從雷總的語氣中我們可以感覺到他對於自己編碼能力的自信。
不得不承認,同樣是程序員,普通程序員和大神的差別是巨大的。
當普通程序員嘗試重構一個簡單的模塊
當大神級程序員重構代碼
普通程序員做的多線程
大神級程序員做的多線程
是否過於真實?剛入門的小白程序員流下了羨慕的淚水。。。
另外,據不權威調查顯示,大神程序員的生活作息遠不同於普通人類,基本上是晝伏夜出。果然,大神早已非正常人類,不食人間煙火。有圖為證(第一列是時間,第二列是代碼行數。)
這是FFmpeg的作者FabriceBellard的編碼時間表,能看出來,越到晚上靈感越強啊。額,不過,這位大佬是會睡著睡著覺靈感突發蹦起來提交代碼的嗎……
而這是LiveJournal的作者BradFitzpatrick在memcached項目上的時間表。
典型的夜貓子,晝伏夜出,每天只睡四個小時。
仁慈的獨裁者,Python之父Guidovan Rossum同樣是一位暗夜使者。
美好的一天從下午開始,夜晚才是靈感的源泉。不過大佬好像真的不用睡覺的。。。。
而在夜行者之上,更有一種恐怖存在,他們宣告了永動機是可以實現的,因為他們自己,就是永動機。。。
「世界上最好的語言」php的創始人RasmusLerdorf,便是其中翹楚,這是他在php-src項目上的提交時間:
果然是大佬,白天正常工作,晚上更加興奮。果然,真正的大神都是突破人類身體極限,完全不用睡覺的。
當然了,以上這些呢不過是一些極端案例,他們雖然是真正的大神,小渡也絕不建議小夥伴們學習這種作息習慣。不然很有可能,技術沒學到,發量卻比大神還少。。。
而在日常的工作中,大神對於小白的碾壓更是全方位無死角。
註:reinventing the wheel 重新發明輪子
果然,大神的工作都是獨出心裁的。
額,不過這么一看嘛,菜鳥和大神好像差不多。。。。
大神的反應總是波瀾不驚的,好像沒什麼成就感。。。
離譜。。。。
笑出自信,笑出強大!
看到大神們種種不同凡響的表現,小夥伴們有沒有心生嚮往?不要灰心,只要努力,假以時日你一定也能像雷總那樣,寫出詩一樣優雅的代碼。
要想真正的成為大神,要腳踏實地,有的放矢,為自己設立目標,不斷向目標逼近。
至少要做到以下幾點:
程序員之所以被稱為「大神」,顧名思義便是在專業領域他們無所不能。所以,大神之路第一步就是補全自己技術上的短板,項目出現任何技術難題時,只要自己出馬便能發現問題所在,從而找到解決方法。
多隆就是這樣一位全能的大神,「只要有技術上的困難,找多隆,沒有解決不了的」這是在阿里技術人員內部流傳的一句話。
對於編碼技術,多隆便是武俠小說中已臻化境的絕頂高手,從2003年到2007年,搜索引擎工作一直都是多隆一個人負責,但這不是他所有的工作,因為他解決問題的能力是驚人的。
多隆一個人能頂一個團隊,別人做事可能要成立一個項目組,而他從頭到尾都是自己一個人,即使他負責的事情以前從沒有接觸過。
阿里研究員畢玄曾舉例說:「五彩石項目多隆完成了商城搜索的mp邏輯,當時如果沒有多隆,整個項目需要延後2周;還有一次,淘寶session框架調用session_tair故障,一堆人(應該有10人+)一起排查問題,從6:00排查到第二天的6:00,最後多隆查到了問題。」
而達到如此境界,與多隆自身的特質分不開。當他沉浸在他的程序世界時,外界的人和事很難干擾到他。他不擅交際,也不玩什麼社交網路,一般很難在公眾場合見到他,只要能不參加的會議、采訪,他都不會參加。
就算去,他也常常會帶上筆記本。據說他也曾經帶著筆記本去outting,在車上寫代碼……
而且盡管被同事們頂禮膜拜,多隆依然謙遜,他說:「我就是個寫代碼的,很普通」。
從多隆身上我們也能看到,想要成為大神,首先就是要靜下心來沉住氣,認真研究代碼,不斷學習進步,完善技術,讓自己不再有短板。
理想是最好的指引者,對於技術行業尤其如此。
很多人在成為程序員之初,都抱有改變世界的想法,想像著運用自己的編程技術來為未來的世界增添色彩。而真正能將這種想法堅持到底的人可謂是鳳毛麟角,但這恰恰是成為大神程序員的重要特質。
支付寶OB資料庫團隊的隊長陽振坤就是這樣一位典型的理想主義者,在他的職業生涯中遭遇了太多的挫折和失落,但他始終保持著一個技術人員的初心,堅持理想,不曾退讓。
陽振坤曾是北大的學術明星,北大本碩博一路念完留校任教,不但破格晉升教授,還成為北大首批「長江學者獎勵計劃」特聘教授之一。他的理想就是攻克分布式系統難題,建成中國技術人自己的分布式資料庫。
在加入網路之後,他集中一切精力來進行資料庫的開發,然而盡管他主導的分布式系統在性能上已經超過了開源系統,網路仍然以成本太高為理由解散了他的團隊。
隨後他加入阿里,陽振坤繼續做分布式資料庫研發,他的團隊從零發展到十幾人,搗鼓出中國第一個分布式資料庫,他們給它起了個名字叫OB。
然而,同樣因性價比的問題,陽振坤和他的OB團隊在阿里坐了冷板凳。這一彼時僅有十幾個人的團隊曾在長達三年多的時間里,孤獨而邊緣。
很多同事都說,「如果陽老師願意妥協,放棄OB,轉去做開源系統的技術優化,早就撥雲見日了。」
但是,那顯然不是他想做的事情。
不過相比於網路,阿里對於「無用」的創新有更大的包容,OB最終被並入了支付寶。彼時的支付寶,面臨著一個世界級的難題:雙11的交易量呈幾何級增長,未來勢必還將繼續呈幾何級增長,可是支付寶當時用的甲骨文資料庫早已經承受不了這么龐大的數據量。
為了應對雙11這天的數據,只能再花數億千萬人民幣的價格去購買主機,可在交易恢復常態時,昂貴的主機旋又陷於長期閑置狀態,這樣未免得不償失。
因此OB這一還未正式上過「戰場」的資料庫,被支付寶高層認定是解決雙11支付峰值這一世界級難題的「鑰匙」。OB最終也不負眾望,幫助支付寶攻克了這一難關。
2016年5月,時任螞蟻金服董事長彭蕾親自將支付寶內部最高榮譽——CEO大獎「勛章」戴在了以陽振坤為首的OB團隊成員的脖子上。
從陽振坤的身上我們可以感受到,理想或許會讓我們一時間陷入困境,但如果我們堅持下去,會帶給我們更大的回報。
這是老生常談,卻也是最重要的一點。這是每一個想要突破自我的人所必備的特質,也是每一個大神程序員依舊在堅持的習慣。
即使多隆在阿里早已封神,但是他仍然每天醉心於編程的世界,研究各種代碼,不斷強化完善自己的技術。
即使陽振坤和他的OB團隊已經為取得了阿里的最高榮譽,他們仍然在每一次維護和升級中不斷地為OB資料庫做出新的改進和嘗試,向著更高遠的目標進發,他們期待著有朝一日OB可以超越IOE,成為世界上最棒的分布式資料庫。
每一個大神,都是由小白蛻變而成的。大神若不再努力,早晚會跌落神壇,泯然眾人。而小白們只要堅持學習,不斷提升自己,終有一日也會成為自己曾經仰望的大神。
每個大神的「封神之路」都有各自的精彩,但是也有著共同點,那就是:專注、熱愛、持之以恆。當然,每個領域的大神都是極少數,我們大多數人可能用盡全力也趕不上天賦異稟的人的輕松一步。
但是我們努力不是為了趕上任何人,而是為了成為心目中那個更好的自己。
就像現在正拼搏在殘奧會賽場上的殘疾健兒們,他們早就喪失了和正常人一樣生活的能力,但不妨礙他們依舊熱愛生活,依舊為了夢想去拼搏,去創造正常人都難以企及的記錄。
所謂奧運精神不光會激勵賽場上的運動員,也會時刻提醒我們每一個平凡的人,向著心裡的頂峰奮力沖刺。
保持心中那份對於夢想的執著和渴望,我們終將會突破自我。加油,未來的大神。
㈡ 普通的程序員和大神級的程序員有什麼區別
㈢ 《程序員那麼可愛》大結局來了,觀眾對這樣的結局滿意嗎
《程序員那麼可愛》大結局來了,觀眾對這樣的結局不是很滿意,大家都覺得有些潦草了。我個人覺得這部劇其實很水。豆瓣評分和觀眾反饋就可以知道,這部劇有多差了。
我看了這部劇唯一的想法就是,膽子都挺大的。敢寫,敢拍,也敢演!牛!
㈣ 你見過最厲害的程序員是怎麼樣的
以前曾經做過十餘年的編程,見識過不少程序員,其中有兩位是比較厲害的。
第一位,J同學,非科班出身,糧食專業畢業的,之後在一個食品廠工作,因為比較清閑,於是他突發奇想,想考某個211的計算機研究生,就去買了書來看,但是要實踐啊,他又沒有計算機,就有空總去公司的電腦室蹭機器用,電腦室的人,就讓他幫忙開發一個工資管理系統,不知道是不是想為難他,結果他研究生是沒考上了,但是經過一個月的摸索之後,居然把工資系統給做出來了。讓電腦室那些科班畢業的人臉上掛不住啊!
之後他就斗膽去了一個國內知名的企業應聘程序員,居然還給應聘上了,慢慢做到了華南區的技術總監,再後來他幾個同事出來創業,高新挖走他。
他這個人就是傳說中的怪俠,非常低調,樸素,不按時上班,不按時下班,工作效率非常高,愛抽煙,請教他什麼問題,他一時想不出來的話,就去外面抽根煙,煙抽完了,回來就會有答案,反正非常神奇。
第二位,B同學,科班出身,211大學計算機研究生,當時是他的導師跟我們單位有來往,推薦過來的,我面試的他,惜話如金,聽說他C語言非常厲害,但是當時我們做項目需要PB,他說他不會,我就說,那給你一個星期的時候,你回去學習一下,再來面試。一個星期後,再過來,給他一個小模塊,很快就做出來,非常棒,之後,項目的技術難題,大部分都是他解決的。平時,他也不怎麼跟我們來往,但是有事就做,也不打 游戲 ,按時上班,按時下班,非常討厭加班。
遇到技術問題,下班後打電話給他,他不接的。有一次,我們第二天系統要上線,大家都在忙著測試,加班,他到點就走了,領導追到電梯門口,問他,XX哥,你走了,他說了一個字,是,就進電梯了。後來也是被高薪挖走,聽說到現在40歲也還沒結婚。
我們公司有一位非常厲害的程序員,基本上一個人當做一個排兵力使用。也就是說一個人寫代碼的效率基本上抵得上10+人的能力,一年隨隨便便寫個幾十萬高質量的代碼。這種人對編程語言的理解已經到了登峰造極的地步,且能夠靈活自如地使用。
在自己編碼能力強的同時,對架構的理解能力也是超強,一個大的系統能夠很快地進行模塊拆分,快速的定義不同模塊間的交互介面,可以快速的安排任務下去。
另外代碼的質量基本上沒地說,導致跟著他的測試人員幾乎發現不了Bug,這哥們在寫代碼的同時基本上順手就把單元測試寫好了,代碼質量高的簡直出奇。
當然了,至於學習什麼新的開源框架或者新的技術架構,基本上就是2-3天的功夫,就可以全面掌握。
目前為止,公司一直當做寶一樣供著。
我見過最厲害的程序員,是在2001年入職的一間香港電路板公司的電腦部經理,他也是最值得我尊重的程序員,那他最厲害的地方在哪裡呢?
編程語言只懂Foxpro DOS版本,但所有的ERP流程,英文、管理方法說得滴水不漏,有一次和財務的同事聊天,才知道他的月薪達8萬多。
很多程序員最怕大老闆提問題,但在他的眼裡,大老闆提問題就是一個商機,多多少少都要老闆加工資加設備。 高情商的表現就是無論下屬或老闆通通管理得服服帖帖,包括我自己,甚至老闆還沒有說話就己經知道老闆的心思了。
老闆分配的編程任務應期三天完成,絕對不過4天。軟體開發效率的提高,自然要依賴下屬心甘情願的加班付出才行,做到這一點,真的是難能可貴。
最厲害也是我最佩的一點就是,40多歲了頭發還沒有一點白的跡象,每天高效率的工作,下班後就拋開工作的煩惱,盡情桑拿按摩享受。
我認為最厲害的程序員不是編程技術,而是如何利用編程技術,不知道你認不認同?
應該是讀研時的學長,精通java和Python,畢業後進去微軟研究院工作。
當時和他在一個項目組,他獨立完成了教學平台語言分析模塊,NLP 模塊。我們團隊任何問題都能很快給出解決方法,前端後端都擅長。
當時我剛接觸linux,他就已經把Linux作為工作學習唯一的選擇。經常用terminal 操作,敲起代碼太帥了
誠邀,本人在杭州華為研究所工作,之前在一家創業公司工作過,公司里一個工作10年的大神,撐著整個創業公司,老闆總能拿到某些項目源代碼,不同語言的,c c++ .net java總之很多,給他,一禮拜就可以全懂了,所有語言基本都是1禮拜搞定(玩代碼的都知道精通一門語言後學其他的特別容易,不外乎面向對象的,面向過程的,然後就是各種API )上手做項目,之前很多不懂的問題問他都可以從本質上分析得很明白,主要是基本上看幾眼就可以知道哪裡錯了。或者大概方向,我後來去華為,都是他建議的,現在還在那公司的他聽說是技術總監了,應該不怎麼敲代碼了。
核心的代碼總是有那一兩個程序員來實現的。比方說現在微信的一開始的核心代碼。
比方說Linux的核心代碼, 都是由林納斯·托瓦茲編寫的, 並且為了能夠讓開源社區的人一起進行開發, 又編寫了Git版本控制。當你不滿意某個軟體或者系統的時候, 能夠自己實現並製作出更好的也許就是厲害的程序員吧。一直到現在很多的系統分支都是來源於Linux的內核。
最後如何成為最厲害的程序員, 還是要學習基礎核心的知識, 操作系統, 數據結構, 演算法, 編譯原理, 計算機網路, 在這個基礎上學習編程都是為了更好地實現自己的心中所想。為什麼這樣寫, 這樣寫會產生什麼效果。 為什麼Golang最近這么熱, 為什麼鴻蒙會被看好, 它又和其他的有什麼區別, 就可以自我判斷, 而不是見風就是雨。
最後希望自己也成為那個最厲害的程序員。
很久以前,我用win98的時候有次我系統崩潰了,因為我是電腦白痴,我朋友給我介紹了一個高手來幫我修電腦。
他看了一下電腦,問我有沒有98的盤,我說沒有。
他想了一下,叫我把固定電話拿給他,我想修電腦要電話干什麼,但人家是高手,我也不好說什麼,就把電話拔下來給他了。
他把電話線空著的一頭接在電腦的一個插孔內,然後進入dos,就開始在電話上不停的按著鍵,他按鍵的速度異常快,但是只按0,1兩個鍵,我搞不懂這有什麼用,但也不敢問,看了半個多小時,他還是不停的按這兩個鍵,我徐徐的有些困,我問他這東西要搞多久,他說要幾個小時,我給他倒了杯茶,就一個人去隔壁睡覺了。
醒來的時候,一看已經過了4個多小時,我起身到隔壁,看見他正在98裡面調試,過了一會兒,他說,你試試,我坐上椅子用了一下,真的好了,我當時也不懂電腦,謝過人家就走了。 後來我慢慢對電腦有了了解,終於了解,原來當時那位高手是用機器語言編了一個98系統,我後來問我朋友那位高手的下落,我朋友說前幾年去了美國之後,杳無音訊....
五年前有幸在一家軟體公司做產品經理。小的軟體公司。坐標西安。招人還挺不好招的。雖然給的薪水還不錯。但是真心不好招人。這種小軟體公司沒有名氣。真正牛逼的人都不來。
百試幾百人,包括做產品和前端的也算在裡面。光程序員這塊。有百分之六十的投簡歷的都是從某培訓機構出來的。所以的項目經歷。和待過的公司都是一模一樣,有明顯的人為的痕跡。
但是後來實在沒有人手。招了一兩個,差。差。差。真是差到極點
後來又經人推薦,招了一個,說是做安卓開發的。結果連個軟體的心跳包都調不好。軟體的升級這塊都搞不定。最後還是我這個外行,逼著他。一點一點卡,才把軟體升級這塊稍微搞上路了。
說出來真是讓大家笑話,華為的外包中軟國際。有個孩子實在忍受不了裡面的虐待,在裡面工作了一年半。然後跳到我們公司。這個孩子,才是稍微讓人可以用一下。就是起碼。你給他的工作。他能完成。其他的人都是在摸魚。因為這個公司的老闆以前也不是做手機軟體這塊。沒有資源,不認識人。
他是做電腦PC軟體,到後面做BS系統多一點。其實這種沒有技術含量,找的別人的框架。去修改。
普通人見不到最牛逼的程序員,最牛逼的程序員,一定是在最牛逼的軟體或者互聯網公司的深宮後院裡面。還沒出世的。就像當初的張小龍,史玉柱,裘伯君一樣。
你現在能看的牛逼的,感覺牛逼的。都是因為你不懂這個。你才覺得牛逼。包括前幾年比較活躍的黑客們,製造一些病毒。這都不是牛逼。包括熊貓燒香的李俊,普通人覺得他可牛逼了。但是真正的他出來後,去金山 360這種公司,提鞋別人都不要。
因為搞破壞不是牛逼。也不是自己水平有多牛逼。
我來講一個我見過最厲害的程序員。
這個程序員是我第一份工作碰到的大牛,我的第一份工作在中興通訊成都研究所,當時是做操作系統研發的。
我們當時經常會做一些培訓和技術分享,那時候我才入職3個月,我發現公司里有個人每次技術分享時候,就很多人去聽,並且會議室爆滿,連站的地方都沒有,然後我有次也去聽了一下, 第一每次目睹大牛的風采,因此操作系統是最底層的研發工作,會涉及到內核這塊知識,而linux內核知識特別抽象,看書根本很難看懂,但是這個大牛能把很難的東西講的很容易理解,並且在會上面對大家的提問總是能對答如流,實在是厲害。
而後我通過公司里的老員工才了解到,這位大牛是自學成才的,他的文化程度才初中,破格錄取到中興通訊,當時是操作系統部門的技術專家,他都能自己編寫操作系統,對各硬體都非常了解,也出了很多書。可見興趣是最好的老師,讓他能夠在程序員中發光。
必須是ACM大神,樓天成,樓教主。不了解他的可以網路之。是個天才一般的存在。
幾年前清華大學找同學玩,他那時是清華軟體學院的學生,突然說要帶我去見他的偶像,還說是最後的機會了,我們跑去計算機學院,當時博士正在答辯,通過在場的同學找到了他,他很靦腆的千呼萬喚始出來。他們兩在那裡交流了半個多小時,最後互留了EMail,我跟他聊了些我專業的內容,他還蠻好說話。 後面還通過這位同學認識另一位ACM屆大神,上海交大的戴文淵。我對編程略有了解,主要還是崇拜天才。
㈤ 普通的程序員和大神級的程序員有什麼區別
你好,普通程序員只能做一些重復簡單的事情,大神級程序員可以解決普通程序員解決不了的難題,還可以給普通程序員建框架。