有很多朋友問我要不要學(xué)C++,或是問我學(xué)Python還是學(xué)Ruby,是不是不用學(xué)前端,等等。這些朋友告訴我,他們不可能學(xué)習(xí)多個(gè)語言,學(xué)了不用也就忘了,而且術(shù)業(yè)有專攻。這并沒有什么不對(duì)的,只是我個(gè)人覺得,學(xué)習(xí)一個(gè)東西沒有必要只有兩種狀態(tài),一種是不學(xué),另一種是精通。了解一個(gè)技術(shù)其實(shí)花不了多少時(shí)間,我學(xué)C++的目的其實(shí)是為了更懂Java,學(xué)TCP/IP協(xié)議其實(shí)是為了更懂Socket編程,很多東西都是連通和相輔相成的,學(xué)好了C/C++/Unix/TCP等這些基礎(chǔ)技術(shù)后,我發(fā)現(xiàn)到達(dá)別的技術(shù)路徑一下縮短了(這就是為什么我用兩天時(shí)間就可以了解Go語言的原因)。這就好像這個(gè)算法一樣,算法效率不高,也許達(dá)到你的目標(biāo),你在一開始花了很長(zhǎng)時(shí)間,遍歷了很多地方,但是,這也許這就是你的最短路徑。
算法就是Trade-Off
你根本沒有辦法能得到所有你想得到的東西,任何的選擇都意味著放棄——當(dāng)你要去獲得一個(gè)東西的時(shí)候,你總是需要放棄一些東西。人生本來就是一個(gè)蹺蹺板,一頭上,另一頭必然下。這和我們做軟件設(shè)計(jì)或算法設(shè)計(jì)一樣,用時(shí)間換空間,用空間換時(shí)間,還有CAP理論,總是有很多的Trade-Off,正如這個(gè)短語的原意一樣——你總是要用某種東西去交易某種東西。
我們都在用某種東西在交易我們的未來,有的人用自己的努力,有的人用自己的思考,有的人用自己的年輕,有的人用自己的自由,有的人用自己的價(jià)值觀,有的人用自己的道德…… …… 有的人在交換金錢,有的人在交換眼界,有的人在交換經(jīng)歷,有的人在交換地位,有的人在交換能力,有的人在交換自由,有的人在交換興趣,有的人在交換虛榮心,在交換安逸享樂…… ……
每個(gè)人有每個(gè)人的算法,每個(gè)算法都有每個(gè)算法的purpose,就算大家在用同樣的算法,但是每個(gè)人算法中的那些變量、開關(guān)和條件都不一樣,得到的結(jié)果也不一樣。我們就是生活在Matrix里的一段程序,我們每個(gè)人的算法決定著我們每個(gè)人的選擇,我們的選擇決定了我們的人生。
VIA:coolshell
更多詳細(xì)信息,請(qǐng)您微信關(guān)注“計(jì)算網(wǎng)”公眾號(hào):