# 第五天
宽敞的办公室,凉爽的空调,护眼的显示器,顺手的ML系统,舒适的椅子,在“一切都好的环境”中,开始了我最喜欢的工作。心情想不好都难。
选定的架构为:PYTHON,DJANGO,SQLITE3.
之喜欢PYTHON,最主要的原因,在于:丰富的数据结构以及灵活不受限制的组合表达方式。现在的新一代程序员和我那个年代过来的程序员,有个很明显的区别:对于数据的理解不同。也许这也是桌面程序与WEB程序的不同。
“蠢货,要好好思考数据是怎么存储的,所有的计算都是为数据服务的,数据,数据才是重点”。我忘了是哪本书上看的这句话,大意如此,不是原话。
那时,不管是用C,C++,还是PASCAL,或是其他什么,建立一个符合需求的数据结构都不容易。你需要用最基本的几个数据类型,创造整个世界。指针,数组,内存分配,每个都需要百分之一百的小心谨慎。那天杀的中文字符串,单字节双字节,多少兄弟在这点上被折腾的死去活来。
对了,在Window 95之前,还必需懂得“显卡图形模式“,从字符模式切换到图形模式,才能画出点像样的界面来。真的是按像素点计算一个线框一个线框画出来的。下拉菜单,那是高级货。你要是能做出那种效果,绝对被帖上牛人的标签。
PYTHON是至今为止唯一一种能让我感受到“行云流水”般编程快感的语言。
PYTHON的创造人在介绍PYTHON时有这么一句话:如果它看起来像鸭子,听起来像鸭子,那它就是鸭子。一开始不明白,终于有一天,突然悟通这句话,差点喜极而泣。
一个没有形成自己的“常用工具集”的程序员是称不上专业的,除了安装外,更是要把它们配置得如同自己的手指一样灵活调用。
tmux, virtualenv, ipython这三个对于python开发是必备的。
嗯,环境搭建开始。
1. virtualenv django
2. 在.bash_profile中定义别名:py_django="source ~/python/virtualenv/django/bin/activate
3. py_django
4. easy_install django
5. easy_install south
django环境安装完成。
接着,是文档部分。
打开www.djangoproject.com。“哟,都到1.4版本了,上次频繁访问这个网站还是0.96版本呢,时间真的很快”,我一边感叹一边打开最近两个最近版本的release notes,仔细地浏览。
然后是Documentation页面,查查有没有新出现的条目,再研究了下网站的搜索页面的URL的生成规则。
“嘿,各种细节增强还真不少,但这次的开发需求很简单,没必要再去深入了解那些新特性,整体架构看起来没什么变化,下午再花点看看Field和URL相关的文档温习一下,就行了“。
打开alfred的配置界面,增加两条自定义搜索:
Search URL:
http://stackoverflow.com/search?q=[django]+{query}
key: so_dj
Search URL:
http://docs.djangoproject.com/search/?q={query}&release=6
key: dj
在任何时候,只需两步:
Ctrl+Space,so_dj 搜索关键词
或者
Ctrl+Space,dj 搜索关键词
就能在网上最靠谱的两个有关django的地方(stackoverflow的django区或django的1.4版本的官方文档)搜索问题的答案,在95%的情况下,就算找不到答案,也会给出一些线索。如果连有用的线索都没有,那么就是这问题本身的提出就不正确,需要再一上层重新思考。这是我的经验。
嗯,文档搜索也配置好了。
接着,就是编辑器部分。VIM,当然是VIM了。
1. 下载django-1.4的源码
2. ctags -R .生成tags
3. 在vimrc中增加函数:
function Django()
set path+=~/program/Django-1.4.1/django/
map <F3> :CtrlP ~/program/Django-1.4.1/django<CR>
set tags+=~/Program/Django-1.4.1/django/.tags
endfunc
启动MACVIM,输入:Django(),瞬间,完整的DJANGO世界的入口就在前面,
CTRL+P,CTRL+],CTRL+T,如同庖丁解牛,游刃有余。
我已经忘了第一次是怎么遇到GVIM,为什么要下载安装,我只记得大概是22岁那一年,有整整一个月时间,每天上班唯一做的事就是阅读VIM文档,研究用法,全然不顾项目进度。
至于与EMACS的缘分,则记得很清楚,微软的NET平台核心的开发者,就是写<<net本质论>>那个大胡子,在某次技术展示上现场编写示例代码,用的是EMACS,淡黄背景黑色文字,只见大段代码如同有生命的精灵般此起彼落,编辑窗口下面居然带了个SHELL窗口。那时,年少见识短,看得我当场眼睛发了直。视频一结束,就满世界搜那个编辑器。
VIM是一个能让你体会到“境界”的编辑器:帆随湘转,望衡九面,及输入之极意。
呃,编辑器是我的又一个敏感点,又扯远了,回神,回神。
有了框架,有了文档,有了编辑器,最后再来一个git init,齐活了,完整的一个DJANGO开发环境构建完成。
死党今天不在,带着司机出门,一定又有酒局。
也好,乐得清静。于是我就在更欢快的心情中度过了下午,完成了4个表的MODELS类。
git push。美好的一天结束了。
“嗯,明天让他看看模型,调整一下就可以输入数据了。这速度,会让他吓一下跳的,让他看看啥叫实力“。我把椅子推开半米,向后一靠,双脚放在桌面上,惬意的想着。
明天,一个令人充满美好和希望的字眼。但,我不知道的是,当时的”明天“却意味着所有的麻烦真正开始。