程序員的悲哀是什么 ?| 文末送書(shū)
老王是個(gè)程序員,這么說(shuō)也不合適,年輕的時(shí)候是吧。
這會(huì)兒老王已經(jīng)很老了,老的快要不行了。
老王聽(tīng)著旁邊的哭泣聲、嘈雜的音樂(lè)聲,逐漸地陷入了沉睡。。。
讀書(shū)時(shí)候的老王也是個(gè)沒(méi)心沒(méi)肺的主,上網(wǎng)打游戲、看小說(shuō)、逃課、談戀愛(ài),就是不愛(ài)好好學(xué)習(xí)。
好歹高考居然還考上了一個(gè)本科,老王的性格也不擅長(zhǎng)和人打交道,于是大學(xué)就這樣靠著游戲和小說(shuō)慢慢地過(guò)去了。
老王也經(jīng)常想啊,我這樣是不是不太好,畢業(yè)了怎么辦?可是!然后!最終還是啥也沒(méi)干。
就這樣,大學(xué)要結(jié)束了。
老王沒(méi)有辦法啊,去人才市場(chǎng)吧,網(wǎng)上投簡(jiǎn)歷啊,方法都試過(guò)了,可是一個(gè)電話都沒(méi)有。
老王于是和同學(xué)聊天,他聽(tīng)說(shuō)最近計(jì)算機(jī)很火,聽(tīng)說(shuō)有的同學(xué)剛畢業(yè)工資就好幾千了。
老王心動(dòng)了,于是就買(mǎi)了兩本編程書(shū)自己看,看了1個(gè)多月啥也沒(méi)看明白,老王想著這樣不行啊,于是就問(wèn)同學(xué),同學(xué)告訴老王他是找了一個(gè)培訓(xùn)公司培訓(xùn)的。
經(jīng)過(guò)同學(xué)的介紹,老王花了1萬(wàn)塊錢(qián)總算進(jìn)了培訓(xùn)班,這下總算找到組織了。
最開(kāi)始老王啥也聽(tīng)不明白,老師說(shuō)的hello world老王都聽(tīng)不懂,好在老王自己心里還是有點(diǎn)B數(shù)的,自己知道努力。
總算最后經(jīng)過(guò)3個(gè)月的培訓(xùn)找到了一份工作,雖然工資只有2000塊,但是老王也心滿意足。
可是進(jìn)入公司,老王發(fā)現(xiàn)自己還是啥也不懂,活也干不了,沒(méi)辦法啊,只能繼續(xù)學(xué)習(xí)。
就這樣,1年過(guò)去了,老王總算從一個(gè)啥也不懂的菜鳥(niǎo)變成了一個(gè)可以獨(dú)立完成CRUD的程序員了。
可是,想著自己只有2000塊的薪水,老王跳槽了。
可是老王沒(méi)有經(jīng)驗(yàn),居然還裸辭了,這下糟糕了。
這一次經(jīng)過(guò)2個(gè)多月,老王才找到了工作,老王心想,還是吃了沒(méi)有經(jīng)驗(yàn)的虧啊。
后面的日子就漸漸好起來(lái)了,老王這份工作也深得老板的看重,逐漸就當(dāng)上了項(xiàng)目經(jīng)理了,工資也漲到了10000塊了。
于是,老王又開(kāi)始頹廢了,老王覺(jué)得現(xiàn)在這樣就挺好的,每天上班分配分配任務(wù),下班回去玩玩游戲,有點(diǎn)小錢(qián)了,老王好像又沒(méi)有了目標(biāo)了,生活就這樣得過(guò)且過(guò)就行了。
不久后,老王談了一個(gè)女朋友,沒(méi)過(guò)多久,兩個(gè)人就到了談婚論嫁的時(shí)候了。
老王雖然這時(shí)候工資還可以,但是平時(shí)花錢(qián)大手大腳的,一看存款,才2萬(wàn)塊,這沒(méi)法結(jié)婚啊。
于是,接下來(lái)兩個(gè)人就開(kāi)始攢錢(qián)了,可是這點(diǎn)錢(qián)對(duì)于一線城市的房?jī)r(jià)來(lái)說(shuō)真的是杯水車薪。
老王和同學(xué)閑聊的時(shí)候聽(tīng)說(shuō)同學(xué)去了騰訊,年薪百萬(wàn),老王驚呆了。
于是,老王也投了好幾個(gè)大公司的簡(jiǎn)歷,結(jié)果連個(gè)回音都沒(méi)有。
好在最后還是有一個(gè)二線公司給老王的面試機(jī)會(huì),可是老王發(fā)現(xiàn)對(duì)方問(wèn)的問(wèn)題他啥也不會(huì),甚至連問(wèn)題他都搞不明白。
老王明白了,還是要學(xué)習(xí),不學(xué)習(xí)是不行的。
于是,老王又開(kāi)始努力了,經(jīng)過(guò)很久的準(zhǔn)備,老王最終進(jìn)入了一家二線公司。
在這里,老王學(xué)到了很多,之前老王以為自己CRUD很熟練了,結(jié)果發(fā)現(xiàn)這里什么分布式事務(wù)啊、分布式鎖啊、分布式緩存啊、分布式限流啊,以前自己聽(tīng)都沒(méi)有聽(tīng)說(shuō)過(guò)。
于是老王又沒(méi)日沒(méi)夜的拼命學(xué)習(xí)。
總算,功夫不負(fù)有心人,老王成功在公司站穩(wěn)了腳跟,而且工資又漲了不少。
老王向家里的親戚借了很多錢(qián),然后加上兩個(gè)人的所有積蓄,總算買(mǎi)了一套小小的房子,也算在這個(gè)城市立足了下來(lái)。
但是這時(shí)候,壓力更大了,要還房貸、要買(mǎi)車,還要考慮生小孩的問(wèn)題。
但是不巧的是,因?yàn)殚L(zhǎng)期的加班、熬夜,老王的身體吃不消了。
老王因?yàn)榻?jīng)常請(qǐng)假去醫(yī)院,身體狀態(tài)不好,任務(wù)完成的也不行,年底績(jī)效太差,沒(méi)有拿到年終獎(jiǎng),今年本來(lái)想換個(gè)好點(diǎn)的冰箱也沒(méi)有著落了。
老王也知道問(wèn)題,但是沒(méi)辦法,老王已經(jīng)30了,注意力經(jīng)常難以集中,記性也不太好了,而且最近頭發(fā)掉的有點(diǎn)多。
老王抱著得過(guò)且過(guò)的日子就這樣來(lái)到了35歲。
這一年,老王真的禿了。
不久之后,老王就辭職了,因?yàn)樗l(fā)現(xiàn)自己真的肝不動(dòng)了,太累了,無(wú)盡的學(xué)習(xí)帶來(lái)了無(wú)盡的疲憊,老王真的想好好休息休息。
他們賣(mài)掉了一線城市的小房子,換來(lái)了不算多也不算少的錢(qián),去老家買(mǎi)了一套足夠一家三口住的房子。
老王自己也開(kāi)了個(gè)小賣(mài)鋪,就在小區(qū)里賣(mài)點(diǎn)東西,也足夠平時(shí)的開(kāi)銷了,只是日子過(guò)的緊巴巴的,但是好在日子還能繼續(xù),再也不用做累死累活的社畜了。
就這樣,老王和媳婦兒老了。
孩子也長(zhǎng)大了,去了大城市打拼,每年回來(lái)一次過(guò)年,甚至有的時(shí)候因?yàn)檫^(guò)年還要值班,兩三年才回來(lái)一次。
老王打電話和孩子說(shuō),工作不要太拼了,錢(qián)賺不完的,不要把身體弄垮了。
可是孩子總是和他們說(shuō),知道了,知道了,然后還是沒(méi)有然后。
老王無(wú)奈,孩子有自己的路要走,一切就隨他吧。
日子一天天地過(guò)去,老王就在這樣平淡的日子中慢慢走到了生命的盡頭。
哭聲、嘈雜的音樂(lè)聲,孩子的聲音又傳入老王的耳朵。
終于,老王笑了,他還是閉上了眼睛。
這一年,老王該有60了吧。
老王意識(shí)逐漸陷入了黑暗,直到過(guò)去了仿佛很久很久。。。
“老爺夫人,公子醒了,公子醒了!”
老王睜開(kāi)眼睛,發(fā)現(xiàn)自己出現(xiàn)在一個(gè)古色古香的房間中,身邊的人也都是古裝打扮。
老王明悟了,自己穿越了!
“草擬大爺?shù)模献舆@一世注定要無(wú)敵!要打破這個(gè)宇宙!去你嗎的程序員!”
“好了,咔!那個(gè)老王啊,情緒挺到位的,你很有潛力啊,都收工吃飯吧?!?/p>
《全文完》
沒(méi)啥要說(shuō)的,就是看見(jiàn)知乎一個(gè)問(wèn)題,隨手寫(xiě)了一個(gè)回答,我覺(jué)得編的還挺好的。
生活還是得過(guò),所以還是要看書(shū),送3本《高性能Java架構(gòu):核心原理與案例實(shí)戰(zhàn)》。
抽獎(jiǎng)方式:關(guān)注我的小號(hào)《互聯(lián)網(wǎng)日記》,回復(fù)915抽獎(jiǎng),周6中午12點(diǎn)開(kāi)獎(jiǎng),中獎(jiǎng)之后的同學(xué)在24小時(shí)內(nèi)聯(lián)系我,發(fā)給我聯(lián)系方式和地址。
這是本書(shū)的結(jié)構(gòu):
本書(shū)是按照程序設(shè)計(jì)與架構(gòu)的順序編寫(xiě)的,共13章。
第1章介紹學(xué)習(xí)高性能Java應(yīng)了解的核心知識(shí),為前置內(nèi)容。
第2章和第3章講解在編寫(xiě)代碼之前,如何高效地為MySQL填充億級(jí)數(shù)據(jù),并對(duì)MySQL進(jìn)行基準(zhǔn)測(cè)試,以便在之后編程時(shí)有所比較。
第4章講解在編寫(xiě)代碼的過(guò)程中如何優(yōu)化代碼,使代碼更高效。
第5章和第6章講解在寫(xiě)好代碼之后如何測(cè)試并優(yōu)化場(chǎng)景響應(yīng)速度。
第7章和第8章講解在程序上線執(zhí)行一段時(shí)間之后如何對(duì)MySQL進(jìn)行主從復(fù)制、分庫(kù)分表。
第9章講解如何通過(guò)Prometheus和Grafana監(jiān)控MySQL節(jié)點(diǎn)。
第10章和第11章講解如何通過(guò)堆內(nèi)緩存、堆外緩存(MapDB)和磁盤(pán)緩存解決MySQL數(shù)據(jù)庫(kù)性能不佳的問(wèn)題。
第12章講解如何使用分布式鎖Redisson解決實(shí)際應(yīng)用中常見(jiàn)的數(shù)據(jù)一致性問(wèn)題。
第13章簡(jiǎn)要介紹Java中的常見(jiàn)架構(gòu)與工具。
本書(shū)不僅適合Java初學(xué)者、剛?cè)胄械木幊倘藛T,也適合對(duì)高性能、高并發(fā)感興趣的程序員。
