"hello world"—我終于親手敲出了這行代碼

我只記得,我好像看過一幅漫畫,講述一枚雞蛋和一只小雞的故事,在那副漫畫中,小雞說了一句‘Hello World’ ——Brian Kernighan

前些天在微博看到騰訊玄武實驗室的TK教主發了一個動態,大意是:以前有個家境很好的二代找到TK,表達了對信息安全的熱愛,可是這位二代有個習慣每次要寫代碼的時候,就必須要開車到一個非常安靜的地方然后開瓶紅酒才能寫得了代碼。

當我在timeline中無意刷到這條動態的時候,瞬間感到當頭一棒的驚醒,在過去的很長一段時間里,我也常常陷入了這樣的誤區里,更可笑的是我還不是能到處喝紅酒的二代,只是個窮逼。在決定進入一個陌生的領域之前,我總是為自己設想了太多的阻礙,總是花了過多的時間和精力在準備做件事,而沒有集中精力的去做這件事本身。
我總是力求完美的,造孽的處女座。

拿起鍵盤就是干

當我想通真正阻擋自己前進的原因之后,一切就變得簡單而快樂了,管它用什么IDE、管它什么電腦配置,打開記事本拿起鍵盤就是干。于是,開始網上找教程,因為大學學過點C語言和網頁設計, 畢業之后又自己學了點java啥,對編程心里還是有點底的(如果知道后面會遇到這么難題我打死都不會說出這句話的,臉被打腫了)。

就這樣在網上晃蕩了兩晚上,決定用Python+Django來實現我的博客,為什么會是Python這個語言呢?我主要是基于這兩個原因決定的:

  • 人生苦短我用Python,對于小白的我這個語言足夠友好,非常簡單
  • 我學編程主要想用來做行數據分析的,Python下面豐富的科學計算庫無疑好利器
  • 后面學爬蟲,用來爬點不可描述的資源 呵呵

好了語言選好了,決心下了,阻礙掃除了,拿起鍵盤就是干。開始以為我這11年買的小黑耐不住我的折磨,沒想到老一輩的小黑做工還是非常不錯的。就這樣每天白天完成了公司的工作之后,8點半回到家之后就開始一邊看書,看教程敲了。過程中我之前設想的問題一個都沒有出現,2G內存i3處理器的小黑也很給面子沒有任何卡頓,各種工具安裝,編譯都異常的順利。工程開展的異常順利~哎又說早了

自己挖坑跳坑填坑

話音剛落隨著項目的往前推進,需要的知識面開始變得復雜起來了。為了保證項目可以順利按照預期完成上線,我一邊對著教程完成工程的主體代碼。一邊學習其他的支線知識:惡補了html,學會了用git有了自己的github倉庫,掌握了Markdown語法(再也不用被word的排版破壞心情了),期間還用小爬蟲爬了一些不可描述的資源(我這是正經的科研學習)

在不斷的自我挖坑填坑中,項目跌跌撞撞在11月下旬開始成型了,當我通過admin賬號本地發出第一篇test時,這感覺就像初戀般的感覺(有點過了,飄了)。

沒被linux折磨個3天3夜是不完整的

啊,終于走到這步了,本地的開發工作完成了,終于可以開始部署上線了!但是這個喜悅之情僅僅停留了不到1分鐘,看完整個部署的教程之后我徹底蔫了。我對部署,服務器,linux是這個什么鬼我都沒有一點概念,就知道是個服務器系統,對于是選Ubuntu還是其他鏡像我都是一臉懵逼。

就這樣我徹底蔫了一星期,沒有去動項目代碼,反復看了好幾遍整個部署教程。看著距離項目上線的日期越來越近,整個人開始感覺越來越慌,眼看這就要deadline了。難道我又一次打退堂鼓?不存在的!還是拿起鍵盤就是干。(被自己帥到)

如果要讓網站可以讓人在外網訪問到,那就必須要有一臺正常運行的服務器和一個域名。之前對服務器一點概念都沒有,在不斷的看教程之中,我終于花了9.9元在阿里云順利買到了一個ECS半年的服務器,又花了15塊錢買了一個域名:isyd.fun。萬事俱備,就差最后一鼓作氣了。

按照教程的要求整個網站我使用了Ubuntu 14.04 64位,Nginx+Gunicorn來進行部署。就當我完成所有的準備,信心滿滿的時候,前面已經悄悄布好了許許多多的巨坑等我跳進。部署最讓人抓狂的地方是,就算你跟著教程一步不差的來操作,也可能會導致失敗,其中的原因各有各的復雜。

而我在整個部署中就是遇到了這個問題, 根據教程我順利并且趕緊利落的完成了整個項目代碼的拉取和部署,并也成功的啟動了nginx,gunicon。就當我以為完美的上線時,在這之后的3天3夜中,我經歷了無數次的修改,無數次的reload都無法成功完成部署,期間問了無數的人,都沒有成功解決。就當我以為要重裝系統,從頭來過時,終于在修改了nginx配置文件的一行代碼之后,就順利的看到了我的網站成功上線了。是的,只是一行代碼我寫錯了,只錯了3個字母和少了一個空格。

解決這個問題我花了3天3夜。
但是當網站上線的那一刻我就知道,這個起碼夠我吹一段日子了。
那這一切都是值得的,在這一刻我終于體會到了“hello world”的快感!

這只是一個開始

這個還不夠好看的博客上線,只夠我吹一段日子而已,
這只是一個開始。

回到本文開頭,我學編程的目的不是要成為一個專職的程序員,而只是在工作的這兩年中我個人發現,對于互聯網從業人員來說,對數據的挖掘、處理、分析、輸出能力的要求已經越來越高。而我也開始習慣看數據說話,所以我告訴自己掌握一門數據分析語言已經變得越來越迫切,不然我可能會在未來的某一天被大潮拋棄。

當然,學習編程這個興趣,對于我來說另一重要的影響是她可以讓我學會更多的思考方式,在工作中處理問題時可以更加的理性分析問題。

致謝

也許你發現,我在整個開發的過程中都一直在強調說“教程”這個詞。是的,沒錯!在此我衷心的感謝寫出這么優秀教程的up主們。在寫這個博客之前我已經花了很長的時間學習了Python的基礎語法,數據結構了,而這些知識除了從書本中,更多的是來自網上的資源,非常感謝這些up主們的分享。

此外,還要感謝Django學習互助QQ群里的各位小伙伴,大家來自不同的城市,不同的身份,因為相同的興趣遇到一起共同探討學習。這真是很棒的感覺,感謝群里每位幫助過我的小伙伴。希望我有一天也可以寫出能幫助到后來者的教程。

最后,要感謝寫出網站前端模板的作者,整個網站的前端實現都是基于各類模板改造而成。后面隨著我的知識點的深入,也許會慢慢的改掉升級,但是你們貢獻的代碼我會一直記住的。

PS 網址:www.isyd.fun(正備案中只能通過ip訪問)
訪問ip:120.78.149.82

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,284評論 25 708
  • 不知道為什么,覺得這次列車的行車速度特別快,飛馳,快速的離開著常州,離開著媽媽,剛剛在肯德基吃早餐,收到媽媽第一天...
    娜娜不乖閱讀 163評論 0 0
  • 有好多話想說,卻無語凝噎…… 說了那么多自以為很感動的情話,卻沒有看到預期的感動,他不是不懂是不在意怎么那么巧合?
    愛你不烈不弱閱讀 59評論 0 0