回顾2013 - 技术上
因為自己的執意選擇,2013經歷了許多“人生第一次”:第一次辭職,第一次更多地體會動態語言python,第一次進入在創業公司的經歷,第一次用git到項目,第一次嘗試自動部署,第一次更多地了解vps,第一次的nginx,第一次的shell,太爽了能學習更多地vim,太爽了自己能感覺到自己思維活躍,更自由地感受自己學習、進步,還有一直伴隨的孤獨,2013年第一次遇到的無奈(或許能發展成 隱忍)。
?
亂糟糟的開頭,需要整理的2013年。
?
知識:
?
1. python
更多的python理解,一直不停看著`python核心編程`。因為學習python發現、遇到了許多美好的特性,比如 函數編程,doctest測試驅動。
python的簡單好用,能輕松接觸到更多激發興趣的知識,比如 便捷的圖片處理,便捷的服務器監控,自己寫一個簡單的服務器,雖然寫不了但是可以完整看看有趣的框架,例如webpy。
python在性能上,速度完全能勝任大多數用戶的需求。多注意 python自身數據結構的正確使用,編碼上也有良好的習慣,比如【多用用 列表(元祖、字典)推導,少用用for】。
自己目前感悟是“看源碼”。我看webpy的一少部分源碼,會更快地學習到python的各種知識。學習也有利于我的工作。
?
2. html,大學就會表格布局,后來遺忘,現在因為時不時地用用html,越來越熟悉了。
`-> 這兩天又在家了,隨手翻翻挑著看《html5 高級程序設計》,我承認我看見這種非常薄的書就欲望讀:D
Chrome常常F12,可以不使用firebug,特別推薦的是:Chrome自帶各種`設備模擬`,就是說,你可以在Chrome種模擬Nexus 7啊,IOS啊,方便測試網頁。
<kbd>最好玩的標簽,例:ctrl
常被忽略卻有用的`實體轉義`,值得一提的 ‘url 編碼’,在人肉分析別人url的時候,%什么,也類似。
?
3. xml,自定義的html。
因為使用webpy的原因,提供xml就是簡單return。自己在chrome中,安裝插件:XML Tree,幫助語法正確檢查。
工作中,常常需要提供給api出去,常用的數據格式就兩種:JSON 和 xml。(chrome - JSON view有助于看JSON)
`-> python除了手動拼接字符串生成“xml”,還提供了相對應的庫。如果使用,值得看看。
在 sae的配置文件,apache的配置文件,rss訂閱格式,小網站的數據庫代替品,都使用了 xml。
最近在看 `公開課 - 哈佛大學 - 如何構建動態網站`,英文語速很快,講得很棒。其中,值得一提,對于小網站,完全可以使用xml 代替 數據庫。
只要利用python lxml解析xml,就能方便的處理xml,方便地生成動態網站。
特別想說的是:像THIS中提到的,“xml 換行顯示更友好”的問題,這真的是個多余網絡開銷。toString()方法本來就是“方便人類閱讀”,換行顯示是多余的。
?
4. git,紅丸藍丸。用過了git,真的就不想用svn了。
git能提供分支,對于我,最好的就是“方便代碼回滾”。一開始就是簡單的分支提交,熟練了,稍微增加“分支管理策略 - THIS”。
git還能在hook中,方便代碼部署,或者寫一個shell腳本來部署代碼。真的非常方便。
git init, 便捷地創建自己的代碼倉庫,別人提交也一樣方便~
?
5. markdown,縮寫是MD,讓人魂牽夢繞的縮寫。
因為github,因為stackoverflow,還因為oschina wiki中的文檔,沒事都是看著說明,寫寫md.
馬克飛象 - chrome插件,在線編輯md。
順便一提,markdown可以直接生成html,也好用。
順便再一提,我的大vim也是可以生成html的!!不告訴你們這些壞人!!
?
6. webpy,懷念 Aaron Swartz.
最初熟練了webpy而不是django的原因是工作。工作需要使用webpy,主站是用webpy寫的。
webpy是只小麻雀,非常非常好用,我們平時處理的GET(),POST()請求,其實只是整個框架的一個回調函數而已。
你完全可以不去使用webpy提供的form,db機制。但是,你又可以仔細閱讀webpy的每一行代碼,你想怎么讀就能怎么讀,整個框架都簡潔。
比如__slots__ 與 __dict__,這樣的系統自定義變量的含義、作用、區別。
webpy代碼都會指引你。
?
7. vim
vim現在就是我的IDE了,可定制的快速輸入,你需要多利用利用vim的插件。
使用簡單的vim通常會得到 簡單的文件結構。
在打開文件的時候會有困擾,可以考慮command-T,這樣同樣會導致你自己去思考文件名。因為你自己會使用。
?
8. ubuntu
每天都用,無所不能,魅族也快出ubuntu的產品了。
可以在查找指定文件夾 中 所有文件 中的 關鍵字kw
find dir/ -name * | xargs grep kw
因為工作關系,基本的top、iostat也得常注意。
crontab計劃任務也得用著,系統中如果沒有搞得好的線程,crontab 也能更新db內容的排序。
?
10. nginx
工作中用到,自己就google著學了。簡單好用。
現在總結兩方面:
a. 使用上:寫配置文件(sudo nginx -t)、服務器重啟、簡單的nginx狀態查詢(使用了stub_status 模塊)、access.log分割備份(分割就是‘重命名,再生成’)、error.log分析(可以指定生成error.log的格式)
b. 開發上:淘寶 連 Tengine都搞出來了。我還假裝自己什么啊,要是有時間,周圍也有朋友跟你結對,大家一起搞唄。
?
7. mysql
代碼上正常使用python - MySQLdb。
在ubuntu的環境下,直接使用地命令行。在select語句之后加\G 會有更好的顯示格式。
工作中,記得備份。備份就是做人厚道不厚道的問題了。
工作中,tail -f 查看slow_log.log,消除slow query。
工作中,對于查詢多行但只返回少數結果的語句,代碼搞一搞。
服務器出現性能問題,show status查查。explain看看語句。
?
?
11. Django,全都做好了,非常欣賞自動生成的后臺。
`-> 自己也看了一遍書,自己也照著例子寫了寫,以后工作中能用到,自己也能多學習吧。
?
12. js,越來越逆天了,后端也能搞了:D
`-> node.js, jquery
`-> bootstrap
?
14. tornado
`->?跟webpy好像啊,性能會有提升,多學學
?
15. php
`-> 挺常見的,有時間學學
?
p.s:?`-> ,補遺點。
?
?
轉載于:https://www.cnblogs.com/kevin922/p/3551229.html
總結
以上是生活随笔為你收集整理的回顾2013 - 技术上的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 未处理的异常: 0xC0000235:
- 下一篇: java编写交通灯思路