編程 - 佳句語錄
一行代碼,1塊錢,知道怎麽寫,100塊錢。
好比醫院的手術醫生,手術所用藥物100塊錢,但是一台手術幾千塊,為什麽,因為只有他知道怎麽手術,同樣是開刀,知道怎麽開是最值錢的!
關於讀書無用論,學歷只是很小的一方面,其實最重要的是三個能力:
自主學習的能力,解決問題的能力,人際交往的能力!
三方面都厲害,哪怕幼兒園畢業,都是頂層人物。讀書,培養的就是這三方面的能力。
只是有些人培養好了,有些人沒有而已。
軟件寫得再好,代碼再牛逼,界面再漂亮,架構再厲害,不能解決用戶的實際需求,不能賣錢或者賺不到錢,都是白搭!
人,真的需要找對行業和運氣!
也許你現在做的事情看不到成果,但不要害怕,你並不是沒有成長,而是在紮根。
要麽選擇自己努力摸索出一套成長和賺錢的思維模式,
要麽選擇學習別人已經成功和賺錢的思維模式並加以改造成自己的模式。
碼農最重要的是學會溝通,而不是寫代碼。
不要抱怨沒人回答你的問題,首先需要學會如何提問,其他人才能更好的理解你的問題。
回答你的問題是情義,不理你是我的權力,沒有人有義務要幫助你,你是在尋求幫助,態度好點,但也不要委屈自己。
最後,如果你啥都不會,或者只會一點基礎,不要期望我們告訴你怎麽做!建議買本基礎書籍多看看多練練。
如何有效地提問:
你做了什麽,怎麽做的;
你查過什麽資料,怎麽說的;
你是怎麽設計的;貼出你的代碼;
編譯錯誤是什麽;代碼截圖,錯誤截圖;
結果有什麽錯,你期望的結果是什麽;你是怎麽想的;
如何成為一名優秀的獨立開發者,給出以下幾點建議:
做一些你喜歡做的東西;快速構建好產品,並及早放到市場上驗證(精益創業);
不要在技術上浪費太多時間,定好發布日期便執行;
不懂技術也可以打造一款好產品;
如果你打算開始單幹,記得打造好你的個人品牌;
親自為客戶提供郵件支持,至少在一開始時要這麽做;
顧客至上;仔細思考並設定合理的目標,先實現產品再談其他。
大學生應該放下自己的身段學歷等,主動積極做事情,端茶倒水搞衛生也無妨,先活下去再說,不分高低貴賤,忍辱負重不斷積累資本,方能前途無量。
假如你的運氣更好,不但找到適合你的職業方向,同時又碰到能給你鼓勵和提供發展機會發展空間的老板,那就可以將這份職業當成事業來做了!
選擇公司的時候一定要注意,要看一看公司的氛圍,一家正常的公司,一般沒有那麼多亂七八糟形式化的東西,不會一大早喊口號,打雞血,也不會早請示,晚彙報,因為正經公司追求的是利潤,做企業要賺錢的,大家沒有那麼多時間去浪費。
人一定要有才華,這是所有自信的根基和源泉。
技術人員做技術時間久了,很容易陷入一個技術思維陷阱,以為技術就是整個世界整個生活,老子技術天下第一,其他人寫的都是垃圾的感覺,很多人覺得自己5年10年的時候技術很牛逼,自我感覺良好,非常蔑視瞧不起那些做銷售做市場做商業的技術人員,其實大錯特錯,這些人全身心投入到技術上,技術深度未必比你差。建議技術人員頭5-10年,可以全身心投入技術研發,深紮根,打牢基礎,過了這個階段以後,可以適當的往市場、需求、商業、管理等更高層次方面拓展,格局慢慢變大而不僅限於技術方面。
有一種生意最賺錢,那就是教別人如何賺錢,讓別人賺錢。有一種成功最成功,那就是讓別人成功從而讓自己獲得成功!
在編程這條技術路線過程中,除了要耐得住寂寞,扛得住誘惑,技術深紮根以外,更需要自我總結、自我推動、自我激發、自我生產、自我療傷、自我成長。
當你離開大學走上社會以後,你會發現,大學的就業指導課的老師很可能自己都沒去社會就過業,大學的計算機老師很可能沒做過商業項目的開發,入門甚至還沒入門的水平!
Perl語言的发明人Larry Wall說,好的程序員有3種美德: 懶惰、急躁和傲慢(Laziness, Impatience and hubris)。
Laziness
The quality that makes you go to great effort to reduce overall energy expenditure. It makes you write labor-saving programs that other people will find useful, and document what you wrote so you don’t have to answer so many questions about it. Hence, the first great virtue of a programmer, Also hence, this book.
懶惰:
是這樣一種品質,它使得你花大力氣去避免消耗過多的精力。它敦促你寫出節省體力的程序,同時別人也能利用它們。為此你會寫出完善的文檔,以免別人問你太多問題。
Impatience
The anger you feel when the computer is being lazy. This makes you write programs that don’t just react to your needs, but actually anticipate them. Or at least pretend to. Hence, the second great virtue of a programmer.
急躁:
是這樣一種憤怒----當你发現計算機懶洋洋地不給出結果。於是你寫出更優秀的代碼,能盡快真正的解決問題。至少看上去是這樣。
Hubris
Excessive pride, the sort of thing Zeus zaps you for. Also the quality that makes you write (and maintain) programs that other people won’t want to say bad things about. Hence, the third great virtue of a programmer.
傲慢:
極度的自信,使你有信心寫出(或維護)別人挑不出毛病的程序。
入錯行不可怕,可怕的是,在錯誤的行業里不斷的繼續前行。
等你寫過一段時間的代碼,你將領略:覆制,拷貝,粘貼那樣的技術對你來說是何等重要。
技術僅僅是一個工具,善於運用這個工具為別人幹活的人,卻往往不太擅長用這個工具來為自己創業,因為這是兩個概念,訓練的技能也是完全不同的。
創業最開始的時候,你的人際關系,你處理人際關系的能力,你對社會潛規則的認識,
還有你明白不明白別人的心,你會不會說讓人喜歡的話,還有你對自己所提供的服務的策劃和推銷等等,
也許有一萬,一百萬個值得我們重視的問題,但你會發現技術卻很少有可能包含在這一萬或一百萬之內,
如果你創業到了一個快成功的階段,你會這樣告訴自己:
我幹嗎要親自做技術,我聘一個人不就行了,這時候你才真正會理解技術的作用,和你以前做技術人員的作用。
技術僅僅是一個工具,是你在人生一個階段生存的工具,你可以一輩子喜歡他,但最好不要一輩子靠它生存。
掌握技術的唯一目的就是拿它找工作(如果你不想把技術當作你第二生命的話),就是幹活。
所以你在學習的時候千萬不要去做那些所謂的技術習題或是研究那些帽泡算法,最大數算法了,
什麽叫幹活? 就是做一個東西讓別人用,別人用了,可以提高他們的工作效率,
想象吧,你做1萬道技術習題有什麽用?只會讓人覺得酸腐,
還是在學習的時候,多培養些自己務實的態度吧,
比如研究一下當地市場目前有哪些軟件公司用人,
自己離他們的要求到底有多遠,
自己具體應該怎麽做才可以達到他們的要求。
等你分析完這些,你就會發現,找工作成功,技術的貢獻率其實並沒有你原來想象的那麽高。
一個程序員,應該有在別人給你指引一個大方向,或者完全沒有人告訴你大方向的時候,通過搜索,去一步一步解決問題的能力,然而每一步你能找到的答案,基本上都不可能是完全針對你的問題的,你都要通過去看別人的問題,別人的解決方法,去快速的用類推的方法嘗試解決自己問題。
在程序員工作的過程中,會遇到各種各樣沒人解決過的問題,如果有人給你指引個大方向,你就應該感激了,不可能指望總有人一步一步帶著你解決這個問題,如果別人要這樣帶你,還需要你幹嘛呢。
“技能學習這件事,有技巧無捷徑”。有技巧是說,並不是說你花了很多時間,技能就一定會提高的,這里面有方法論的區別;無捷徑是說,即使知道了技巧,不下功夫也是不行的,正所謂,紙上得來終覺淺,絕知此事要躬行。
做任何事情都要用心,要非常關注細節。看起來不起眼的、繁瑣的工作做透了會有意想不到的價值。
過來人的指點可以避免走彎路,讓你在第一時間做出正確選擇,節省大量時間。但是要記住,別人對你沒有義務,所以別指望高手會手把手教你。我的學習更多的是觀察優秀的人如何做事以及他們對事情的觀點。
通過項目學技能的好處是任務很具體目標很清晰,缺點是容易見樹木不見森林,知識不系統。通過看書學技能的好處是知識體系比較完整,有全局觀,缺點是書本知識比較抽象和枯燥,不容易理解。所以這兩者一定要結合起來。
其實,你不願意相信沒有“天賦”存在的原因,關鍵在於:
一是因為你“懶”,堅持不了長期訓練,借“別人更有天賦”之詞來逃避懶的本質。
二是因為你“笨”,你真的不知道如何找到最佳的練習方法。
懶人,其實你不懶,只是缺乏動機。 舉個誇張的假設,把你扔到恐怖分子的監獄里,3天之內學不會倒立就把你喂狗,情急之下,可能你一天就學會了,沒準還能跑的比狗快。
如果你學任何東西,都有渴望求生這樣的強烈動機,怕學不會嗎?
笨人,其實你不笨,只是缺好方法。 如果智商低下,那就是基因限制的問題,你之所以覺得自己笨,是你從來沒想過什麽是刻意練習,也從來沒有思考過,如何通過系統獲得進步。
動機可以刻意制造和放大,而訓練方式,就是刻意練習。
“人們希望人生中有這樣的奇跡:並非所有的一切都要遵循古板的法則,某些人生來就有某些不可思議的超強能力,不需要刻苦的訓練或者嚴謹的提高就能世界一流,只要你具備正確的基因,即使不用練得太多,也可能成為世界上最優秀的人。但對傑出人物進行數十年的研究後,讓我確信,這樣的奇跡並不存在。”
成為世界上頂級的專家唯一的方法就是一萬小時持續不斷地進行練習,大家要特別注意“唯一”,也就是說絕大部分專業是沒有什麽天才的,所謂的天才只是他一鳴驚人之後我們才這樣覺得,在他成為天才之前至少要經過一萬小時持續不斷的練習。
對於大部分人來說每天的工作很多時候是重覆勞動,雖然我們一天工作8小時,但是只是重覆以往的經驗,並沒有刻意去訓練提升自己。
有一個笑話是有一個10年工作經驗的人去面試,面試完了之後面試官跟他說其實你只有1年工作經驗,你把它重覆了9年。
對於1萬小時理論來說如果你深入思考其實它並沒有那麽簡單,這意味著什麽呢?意味著你每天要花3小時時間用於提升自己的技能,這樣一直做,要持續大約10年時間。大家想想每天持續十年去做一件事情去提升自己,有幾個能做到,所以我們看到雖然有些人工作了10年,但是也不一定能成為業界的專家。
為什麽我要強調每天3小時?持續10年提升自己,你不能把你重覆的工作算進去,你要在專業廣度和深度上面不斷擴展,才能業界一個頂尖的大牛或者專家。
舉一個例子,一個小孩子每天唱《兩只老虎》,唱10年,你覺得他會成為周傑倫嗎?肯定不會。