開發者的日常
作為一名996的開發者,我幾乎每天只有兩件事,制造bug和解決bug,這兩件事,既替我解決了溫飽問題、也替產品經理、測試工程師等一票人解決了吃穿問題。
嗯,有人為我這種程序員評了一個等級,我大概是第五等程序員。
但是。。。我是真的想寫bug嗎?。。。並不是。我也渴望能夠編寫更加優秀的代碼,能夠掌握更優秀的互聯網技術框架、掌握更加優秀的開發方法,但是每天沉迷於搬磚之中不可自拔,哪怕每天認真閱讀Robert大叔的《The Clean Code》,掌握好代碼的速度也遠遠趕不上我寫爛代碼的速度。
好吧,我的工作大概是這樣的:
~溪源,你那個功能做完了嗎?可以發布了么?
~可以發了,啥毛病都沒有。
~那行,現在發吧。
~等下,我又發現了一個bug。
~那我等你五分鍾。
~好的,只剩最后一個bug了,改完這個bug就可以發,就可以下班了。
-哎呀,卧槽,怎么天亮了。。

~你就不能做一個不寫bug的程序員嗎?
~對不起,我做不到啊。
~為毛啊。
~那天我去廟里上香,我虔誠的對菩薩說,菩薩,保佑我成為一個不寫bug的程序員吧~
---然后我獲得了永生。
以上內容純屬虛構,如有雷同,純屬巧合。

中國程序員的現狀
中國的程序員大概是國內最苦逼的行業之一,每天996,下班還要回家學習各種新技術哪怕是BAT這樣的大廠,優秀的開發者也不過是公司前進路上的一塊磚石,無時無刻不面臨着被犧牲的后果,如果未能在指定年齡之前,成為最拔尖的那一批人,那不管你多優秀,跟其他開發者沒有任何區別。
“中年危機”,就像夢魘一般,既激發我們向前,更驅趕我們向鴨子一般,盲目的向前拼搏。或許我們可以逃出這座圍城,但是圍城之外卻是留不住躁動心的舒適區。
無論如何,我們都得努力提高自己,先寫更加優秀的代碼,才能獲得更多的機會,但是,bug卻像魔咒一般。尤其是為了緊跟技術的步伐,我們會選擇一些新技術,這就得迎接更加嚴酷的考驗。
例如,前不久,博客園就英勇而壯烈的翻車了。眾所周知,博客園選擇了一個構建在.NET平台之上的博客系統,而隨着.NET Core的推出,博客園內部的許多系統也完成了從.NET FX到.NET Core的技術改造;而前不久,博客園也將博客系統升級到了.NET Core 3.0 Preview8,然后開始了挖坑、踩坑、填坑的過程。
前前后后,博客園進行了五次嘗試,
【故障公告】發布 .NET Core 版博客站點引起大量 500 錯誤。
https://www.cnblogs.com/cmt/p/11302666.html
【網站公告】.NET Core 版博客站點第二次發布嘗試。
https://www.cnblogs.com/cmt/p/11316324.html
暴風雨中的 online : .NET Core 版博客站點遭遇的高並發問題進展 。
https://www.cnblogs.com/cmt/p/11328141.html
Powered by .NET Core 進展:驗證高並發性能問題嫌疑犯 docker swarm。
https://www.cnblogs.com/cmt/p/11335456.html
同“窗”的較量:部署在 Windows 上的 .NET Core 版博客站點發布上線。
https://www.cnblogs.com/cmt/p/11347507.html
Powered by .NET Core 進展:第5次發布嘗試(Windows部署)。
https://www.cnblogs.com/cmt/p/11357365.html
問題也從最開始的Docker swarm切換到Docker Compose的組件故障,到后來的.NET Core本身的一些故障,期間從博客園團隊發布的一些內容來看,也似乎陷入了扯毛線扯掉了一件毛線衣的怪圈,不過最終還是發現了問題的核心,是來源於DbContextPool的線程池限制。
https://www.cnblogs.com/cmt/p/11355978.html
將這個對象去掉之后,終於塵埃落定,取得了短暫的平靜,當然,即便如此也無法證明已經真正解決了所有問題,下周是否會重現本周的局面?不得而知。
博客園對於.NET的執着,讓無數優秀的.NET開發者欽佩,但是這些翻車事故,我個人認為,暴露了博客園的一些現存問題。
我也冒昧的提幾點小建議:
除此之外,也暴露了國內.NET技術圈存在的一些問題。
-
多如牛毛的學習資料,卻顯得不夠系統,許多博客都是面向初級開發者,介紹的都是如何編寫HelloWorld這樣的基礎知識。更高層次的開發者,往往只能借鑒於梯子,從國外獲取有用的學習資源。
-
由於國內基於.NET的互聯網企業不多,使用容器技術構建互聯網體系的更是少之又少,所以缺乏真正能夠讓企業快速借鑒的容器知識分享或社區交流氛圍。
-
NET技術圈對於大並發的經驗不足,對類似的技術缺少分享、缺乏開箱即用的優秀學習資料。
-
閉塞的行業應用范圍是.NET技術圈的硬傷,與其他技術社區很容易針對技術點發生討論相比,.NET技術圈依然過於安靜,例如當出現問題時,往往大部分開發者都只能看熱鬧,想插手都無能為力。
在這樣的大背景下,博客園的勇氣依然值得贊賞,毫無疑問,博客園的初衷是渴望通過這次新版本的發布,成功的將.NET Core的優秀宣傳出來,讓更多開發者能夠親歷技術的變革、加入.NET Core的轉型之中,不過過程中遇到了太多坎坷。
這恰好跟我們平時開發過程中經常遇到的問題或我們采取的解決問題的辦法一模一樣。
所以,不要妖魔化博客園,也不必神化博客園,畢竟博客園是一家規模不大的小公司,他恪守底線,讓商業化在這個平台上幾乎對大家來說無感。
在技術這條道路上,每個人都需要努力的學習,並不是為了爭一口氣、也不是為了成為第一,而是為了打造更加優秀而完美的產品。
限於時間倉促,胡言亂語,還請諸君見諒。
(ps:請騰訊把博客園這樣優秀、優質的內容平台收了吧,雲加社區文章再多,不都是從博客園搬過去的、而且也沒這么多流量啊,再不下手頭條就要搶了。)

關注公眾號,閱讀更多精彩內容。