我的十年程式生涯:建模啟航
我是一個有魄力的人!
我是一個有魄力的人!
請大家記住這句話,只有記住這句話,你才能明白我這十年間的選擇。
十年前我還是象牙塔中數學系的一名普通的大三學生。
六年前我包裡揣著3000塊錢來北漂。
三年前我在一家網際網路金融公司做到了技術負責人。
兩年前我辭職了,在一家公司做架構師,入職半年後連跳三級,被領導提拔到研發副總,最多管理超過100人。
現在我是一名自由工作者。
以上其實只是我的職場生涯,業餘時間我還做了一些其它的事情。
2016年6月,開始在部落格園寫技術文章,當年即被推薦成為推薦部落格,陸續成為其它技術社群部落格專家,16年年底文章閱讀累計超百萬。
2017年,在公眾號紅利期早過的情況下,開通“純潔的微笑”公眾號,2 年後讀者關注量超 12 萬,綜合指數排在原創個人技術號中前十。
2018年,嘗試在網上寫教程,年底成為 Gitchat 專欄銷量前三,後面陸續嘗試線上演講、知乎Live、免費影片課程、線下演講等等,在每個領域去拔草,不為掙錢只為嘗試,尋找自己最想做的事情。
2019年,我也在期待會發生什麼。
你想聽聽我的故事嗎?
題外話
我的個人公眾號介紹只有一句:一個有故事的程式設計師。說這句話不是吹牛逼,是我非常非常喜歡有故事的人,有故事的事,同時發生在我和我身邊朋友身上的事情,足足夠我寫一輩子了。
生活不是電影,但遠比電影更具有戲劇性,更精彩,更荒誕,更不真實,我想用文字記錄下這些故事,這些故事就是我的世界。
年歸正傳,這次還是先來聊聊我的故事,相信我,絕對精彩!
一件事情
回顧我們的歷史長河會發現,往往在人生的道路上,突然會有一件事影響到我們,從而改變了我們的一生。
我就有這麼一件事情影響到了我,讓我找到了自己最喜歡做的事情,就是做一名程式設計師去 Coding 這個世界。
我的這件事情發生在大學時期,參加了全國大學生《數學建模競賽》。那年,我們小組還得了一個小獎,我把它保留至今。
我給大家從頭講起。。。
一個機會
09年那會是我讀大三的最後一個學期,和許許多多考研的大軍不同,我從來都沒有想過我還要繼續在學業上有所發展。
因為我大學上學家裡欠了一屁股的債,所以我對錢極度的渴望,恨不得立刻馬上工作,讓我的家庭我可憐的母親可以喘上一口氣。
我大學學的專業是資訊與科學,大家不要被這個高大上的名字所迷惑了,基本上和應用數學沒有太多的區別,整天就是學各種數列、極限、微積分、空間解析幾何等等,還有一本書就是專門證明一毫米之內的世界。一想到學這麼多東西和我的就業扯不上半毛錢關係,我就提不起一絲絲的興趣。
大學三年通宵網咖、曠課籃球、掛科重考、探索男女之情,慌慌而過,唯一讓我感謝自己的就是,喜歡看書的毛病沒有變,泡在圖書館看了許許多多的書,中文系的現代文學、經濟系的人物傳記、藝術系的人體藝術都是我常常涉獵的內容,極大的擴充了我的世界觀和人生觀。
大學的碌碌無為加劇了我內心的不甘,耗費了四年火辣辣的青春、還有不知道父母從哪個親戚借來的學費,我總該學點啥吧!
就是那種你感覺渾身哪哪都是勁兒,就是不知道往哪兒使的感覺,我以為我的大學就這樣碌碌無為的過去了,終於等到了一個機會。
幹票大的
那年我們學校是抱著幹一票大的來準備這件事的,我就喜歡幹大的。
雖然我不怎麼喜歡數學,但數學系當時是我們學校的名牌專業,但卻被兄弟院校虐了好幾年,《數學建模競賽》從來都沒有拿到過國家一等獎。
於是09年的時候,學校的重視程度也上來了,在系裡抽調了幾位有能力的年輕老師組建了一個團隊,並且承諾競賽結束後根據成績重獎。
老師的積極性被調動了起來(這個世界看來還是錢頂用),學校開始從數學系、物理系、化學系、計算機系招募學生,那年夏天一共招募了七八十號人。
招募過來的人,大家都沒有什麼建模經驗,學校統一安排高強度培訓,並且兩週做一次模擬競賽,根據競賽結果不斷進行淘汰,最後真正參賽的人員只有十幾個人。
那時候年輕感覺不到累,整個暑假大家都是泡在實驗樓。這也成了我大學生涯中最充實的一段經歷,老師從建模演算法、程式語言、論文書寫、歷屆考題分析等幾個維度不斷培訓,每培訓一段時間就來一次模擬競賽,然後宣佈淘汰名額。這個過程很爽、很累、也很殘酷。
建模競賽是模擬現實生活中的真實問題,透過一套理論、演算法、建立數學模型來解決問題,涉獵的內容非常多。
因此需要團隊配合來解決,每個建模小組由三個人組成,每個人的分工都不同,有的擅長演算法,有的擅長論文書寫,有的強在程式設計實現,相互配合完成整個競賽。
找到自己喜歡做的事情
剛開始培訓的時候大家啥都不懂,也不知道自己擅長做什麼,模擬競賽的過程中遇到很多問題,大家都不會,但其實這個並不重要,重要的是你可以學呀。
99% 的問題在搜尋引擎的加持下都可以解決,所以競賽對自我學習能力要求極高。另外競賽是開卷的,你可以利用任何你可以搜尋到的資料包括書籍。
有的槓精可能要說,既然是開卷的是不是就可以抄了,so yong so simple。《數學建模競賽》強調的是模擬現實解決實際問題,那在現實生活中解決問題當然可以查閱任何資料。
但是並不意味著可以抄,第一,你可以想到的,考題老師也可以想到;第二, 建模都是解決現實中的具體問題,這些具體問題當然是搜尋不到的。
我給大家截圖看下2018年數學建模的題目,大家看完就可以理解了。
感興趣可以去這裡下載:
經過一個多月的封閉培訓、模擬競賽,我終於找到了自己擅長做的事情,那就是用程式設計來解決問題,我喜歡敲打鍵盤的那種感覺,透過 Coding 實際解決問題簡直太酷了。
那時候老師推薦使用 MATLAB 來做資料處理,但我個人更喜歡使用 C 語言來程式設計,也就是在那段時間讓我體會到了程式設計的樂趣,於是心裡想終於找到了我喜歡做的事情。
瘋狂三天
2009年9月經過3個多月的拼殺,我們十幾個人總於迎來了最終的考驗,前面提到了我們學校準備今年幹票大的,於是把我們整體拉到老校區的招待所裡面,好吃好喝伺候,要求只有一個:三天三夜不許出去,完全無干擾的完成競賽。
2009年競賽照片,左小角就是我們團隊。
給大家解釋一下《數學建模競賽》規則,試題出來後會給參賽者三天時間,三天後交出一份解決方案的論文,附帶程式。所以也會涉及到戰術問題,是三天都不睡覺完成競賽;還是第一天睡覺,第二天第三天不睡覺;每個團隊根據情況自行決定。我們是第一天每人睡6小時,第二天輪流睡4小時,第三天通宵。
每次競賽會出四道題,小組根據自己的情況來選擇,我們當時選擇的B組題,解決醫院眼科病床的問題。拿到這道題的時候,我們還挺高興,覺得就是個處理資料的問題,但是做著做著發現並沒有那麼的簡單,同時我們嘗試了很多的數學模型,但是結果並不是很理想。
三個人不斷的討論、爭吵,實驗數學模型,調整著細小的引數,時間一下就過去了一天,還是沒有太多的頭緒,腦子都快炸了。這個時候我們組內最小的那個女生(她來自物理系),提出了一個假設,我雖然立刻就否定了她的這個設想,但還是按照她的思路進行了調整,意外的發現找到了解決問題的方法。
當找到解決方案後,最最重要的一件事情就是要寫好論文,因為不論你的模型多麼的好,如果不能明白的把它講清楚,那其實效果就大大打折扣了。寫論文我們也會進行分工,有的負責寫開頭,有的負責寫論文的中部,有的專門來寫結尾。我就是那個寫結尾的人。
寫完之後,再按照競賽的標準去審稿,一遍一遍不斷的去審,改個它羅漢十八次後才到定稿。其實到了最後的那天晚上,不管是人的精神還是體力都已經到達了極限,改著改著我在座位上坐著都能睡著了,被指導老師罵醒之後,爬起來接著改。早上當我檢查完所有資訊無誤後,點選了郵件的傳送按鈕,拼命三天終於結束。
過了幾個月後,競賽結果出來了,那年我們學校終於揚眉吐氣了一把,獲獎數量和質量都突破了歷史,拿到了學校的第一個國家一等獎。我們小組得了一個省級的二等獎,雖然成績並不是特別好,但我們知足了,三個月的辛苦努力並沒有白費。
後來
2010年畢業的那年,我將曾經練習過的一個競賽題目作為畢業論文進行了提交,沒想到畢業時還成為了學校的優秀畢業論文。
也正是因為數學建模競賽的這段經歷,讓我和程式設計結緣,為我以後走向程式設計的這條道路,埋下了伏筆。
大家以為我就這樣直接走向了程式設計師這個職業嗎?當時我也是這樣認為的,直到我碰了一鼻子灰,走了很多的彎路,甚至還南下去了深圳流水線工廠工作了幾個月,才讓我真正的下了決心走上程式設計這條路。
當然了我找工作的這段經歷其實更精彩,我會在後面的文章中慢慢來告訴大家。限於篇幅這篇文章就寫到這裡,我計劃用連載的方式來記錄我渡過的十年程式設計師生涯,預計會寫下十萬字,所以故事才剛剛開始。。。
作者簡介:純潔的微笑,一個有故事的程式設計師。曾在網際網路金融,第三方支付公司工作,現為一名自由職業者,和你一起用技術的角度去看這個世界。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31499124/viewspace-2647704/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 我的程式設計生涯裡啟發我的15本書程式設計
- 我的程式設計職業生涯程式設計
- 為什麼結束了十年的程式設計生涯?程式設計
- 不思量自難忘:我的 10 年程式生涯
- 先奮鬥後躺平,學習風變程式設計開啟了我的“躺平”生涯程式設計
- 講講我的開發生涯
- 我的十年程式設計師之路程式設計師
- 我的十年程式設計路 序程式設計
- 十年老友記 | @張京:我程式設計了三十年,程式設計就是我的符號程式設計符號
- 十年的程式設計師:最危害程式設計師職業生涯的三大觀念程式設計師
- 我的十年程式設計路 尾聲程式設計
- 我的部落格生涯開始了
- 我這幾年程式設計師生涯的一點體會(轉)程式設計師
- 程式生涯小記
- 從我一年程式設計生涯中得到的經驗教訓程式設計
- 我的十年程式設計路 2013年篇程式設計
- 我的十年程式設計路 2021年篇程式設計
- 我的十年程式設計路 2017年篇程式設計
- 我的十年程式設計路 2018篇程式設計
- ChatGPT們的幕後先驅,史丹佛教授Manning的四十年NLP生涯ChatGPT
- 5年程式設計師生涯,我學到最重要的6個教訓程式設計師
- 回顧15年程式設計師生涯,我總結的7點經驗程式設計師
- 從我的校長生涯談原型和原型鏈原型
- 六年程式生涯
- 盲人程式設計師的程式設計生涯程式設計師
- 我的十年程式設計路 2014年篇程式設計
- 我的十年程式設計路 2020年篇程式設計
- 我的十年程式設計路 2022年篇程式設計
- 我的十年程式設計路 2015年篇程式設計
- 我的十年程式設計路 2016年篇程式設計
- 我的十年程式設計路 2019年篇程式設計
- 開啟我的程式設計之路程式設計
- 我在華為工作十年的感悟
- 我的IT職場生涯: 畢業4年,月薪過萬薦
- Bruce Eckel:程式設計生涯程式設計
- Android 十年之路: 主屏與導航Android
- 程式生涯職業規劃求助!
- 程式設計師職業生涯程式設計師