2008年10月29日星期三

有啊!来了

打了一阵的口水仗,“有啊”来了,正式和阿里巴巴拉开阵势,是骡子是马都要遛遛。“有啊” 对 “淘宝”,“百付宝”对“支付宝”,相信后面还有对阿里巴巴的“B2B”和"B2C"的,对了还有个"hi"对"旺旺"。阿里取名一向很土,败坏网络整体的取名风气,“宝”、“旺”、“财”的乱飞。

阿里巴巴一怒之下终止在百度的投放广告的业务,我看阿里巴巴也没有必要在百度上投放广告,很快阿里巴巴的搜索引擎也要诞生,这回来了个掉个,是“yahoo”(阿里巴巴应该不会丢下yahoo这块金子招牌)对决“百度”。

战略严重叠,国人就是喜欢扎堆,哪有钱往哪扎。哦!仔细看看似乎错了,阿里巴巴和百度都是欧美企业,不信你查查。说个地道的公司---海尔,房地产火了,它眼红了,搞起了房地产,怪你没选好时辰,和经济危机干上了,现在不知道在哪个昏暗角落掉泪。

看看“有啊”长啥样。

和那个淘宝宝很像吧,复制是最廉价的。再看看这个活宝“百付宝”。


相信从支付宝转过来直接就是熟手。

马云不是说打着望远镜也看不到对手吗?!没感觉到周彦宏的37°?!周前胸贴着你的后背呢!那亲呼劲......!

2008年10月26日星期日

黑屏!该来的还是来了

黑屏事件已经有几天了,可以说是闹的满城风雨。

自从咱百姓用上Windows起,D版和Z版的纷扰就从来没消停过。在电脑城至今还是堂而皇之的给用户无条件的安装D版。在我身边,至今没见过个人买过Z版(我已经撤离了windows,惭愧,呵呵),没有负疚感,还口口声声说烂。

看了一片报导,中国计算机学会声明反对微软黑屏,实在让人诧异:
http://tech.sina.com.cn/it/2008-10-27/09422536145.shtml
毕竟是有知识产权的商品,MS在此付出和投入的可以说比任何OS都大,收费是合理的,就是高了点,物价局估计还不知道怎么去评估软件价格。作为一个协会还打上中国二字,发表此申明非常不妥,MS也没有把事情做绝,只是黑屏几分钟,警示而已。至于垄断不垄断的都是自己造成的,自己习惯不好还赖别人。

该来的还是来了!不管你反对还是赞成。I support MS.

2008年10月22日星期三

lighttpd & django搭建测试环境

1. 软件环境
我的机器ip为192.168.1.183。
在此机器上安装了lighttpd1.4.20、python2.5、以及django1.0、flu1.0。
注:若在安装lighttpd时缺少依赖包,直接使用sudo apt-get install lighttpd来安装试试。其它可以源码编译安装。

2.创建工程
在/work/sites下创建一个django工程mysite,如:pwd/django-admin.py startproject mysite
在mysite里添加一个py文件first.py

from django.http import HttpResponse
def index(request):
return HttpResponse('first django page .....')

修改url.py,在patterns里添加:
(r'^mysite/$','mysite.first.index')


3.在mysite下添加一个文件mysite.cgi
#!/usr/bin/python
import sys,os
sys.path.inert(0, "/work/sites/mysite")
os.environ['DJANGO_SETTING_MODULE'] = 'setting'

from django.core.servers.fastcgi import runfastcgi
runfastcgi(method='threaded', daemonize='fase', socket='/work/sites/mysite/django.sock')


4.配置lighty
server.modules= ("mod_rewrite","mod_redirect","mod_alias","mod_access","mod_fastcgi","mod_accesslog")

#添加如下信息(采用load balance),采用tcp方式通讯:
$HTTP["remoteip"] == "192.168.1.183"{
server.document-root = "/work/sites/mysite/"
fastcgi.server = (
"/mysite.fcgi" => (
("host" => "127.0.0.1",
"port" => 8100,
#"socket" => "/work/sites/mysite/django.sock",
"check-local" => "disable"),
("host" => "192.168.1.183",
"port" => 8101,
"check-local" => "disable"),
),
)

alias.url = (
"/media/" => "/work/sites/mysite/media/",
)

url.rewrite-once = (
"^(/media.*)$" => "$1",
"^/favicon.ico$" => "/media/favicon.ico",
"^(/.*)$" => "/mysite.fcgi$1",
)
}

启动lighty

5.启动2个fastcgi服务(注意host区别,在前端分发时会匹配)
sudo python manage.py runfcgi host=127.0.0.1 port=8100 method=threaded
sudo python manage.py runfcgi host=192.168.1.183 port=8101 method=threaded

6.访问
http://192.168.1.183/mysite
页面输出为:first django page .....

可观察到请求被正常分发到127.0.0.1:8100和192.168.1.183:8101上(不同的fastcgi server)。

2008年10月17日星期五

Quick start for django & apache on windows

1. 安装python2.5.2
python 请使用2.5.2版本,如使用2.6或以上,你会发现在安装mod_python和MySQLdb时需要找2.5版本,可能这几个还未跟上python的发布步伐,少一些烦恼下载安装2.5.2版本 python-2.5.2.msi http://www.python.org/download/releases/2.5.2/

点击安装,安装目录默认为c:/python25

配置环境变量,使得在任何目录运行python都会输出:
python 2.5.2 (r252:60911 .....等等信息


2. 安装django 1.0
http://www.djangoproject.com/download/
文件为Django-1.0.tar.gz
用rar或zip解压到当前目录,在解压的目录下找到setup.py,在cmd下运行:
解压目录>setup.py install
其实被安装在C:\Python25\Lib\site-packages下。


3. 安装apache
这个就不用说了,我的是2.2版本,不要低于这个版本。


4. mod_python
下载地址 http://www.modpython.org/
mod_python-3.3.1.win32-py2.5-Apache2.2.exe
点击安装,不费神。选择apache安装目录,完事后,mod_python.so已在apache的modules下。
介绍性的说明请参看:http://man.chinaunix.net/develop/python/mod_python/mod_python.html


5. MySQLdb
可选,在此没有用到,我想还是最好要装一下,文件是:
MySQL-python-1.2.2.win32-py2.5.exe
自己google一下下载即可。双击安装即可。


7. 创建一个django工程
如在D:\software\django\sites下创建mysite工程,cmd到该目录下
cmd>python C:\Python25\Lib\site-packages\django\bin\django-admin.py startproject mysite
注意自己的目录设置。


8. 配置apache
httpd.conf修改

添加一条:
LoadModule python_module modules/mod_python.so

在最后添加内容(google保存xml内容有点问题,我只能描述了):
标记Location "/mysite/"
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE mysite.settings
PythonPath "['D:/software/django/sites'] + sys.path"
PythonDebug On
Location标记结束


注意自己的目录设置。


9. 开发
在工程mysite下创建一个py文件为first.py,写入内容如下(return 前面有tab缩进,google不厚道剪裁掉了):
from django.http import HttpResponse
def index(request):
return HttpResponse('first django return info.')

修改该目录下文件urls.py,在patterns里添加一行:
urlpatterns = patterns('',
(r'^mysite/$', 'mysite.first.index'),
)

10. 测试
启动apache
http://localhost/mysite/

2008年10月15日星期三

start on python

python一个不错的语言,早在2002年一个朋友(我的领导)在捣鼓这个,还想强拉威逼入伙,被我言辞拒绝。当时刚毕业不久,还在啃java,为了servlet、jsp等初级问题头痛不已。当时对python发自内心无理由、非理智得非常不削,认为java是第一位的,其它语言一切不重要。当时还无端鄙视一个要转学.net的家伙。

哎!时过境迁,居然现在我也python ......

在2006年开始听说ruby,一时冲动,于是拿起ruby看得起劲,但非常喜欢,我不是因为rails而喜欢ruby。对着电脑看《ruby programming》,仔细看了2-3遍,第一次看见真正的完全OO语言,接触到java语言里没有的奇技淫巧。但由于一直没有实践机会,所以rails没看完只记得其非常轻便自然、OR强大,由于我不懂js(只知道check等),还能写出ajax,rjs为最爱,还有点就是url的设计非常易于程序员理解。

2008年疲惫的离开呆了5年的创业型公司,进入一家互联网公司,突然想起我因该再学一门语言,将来或许能做个网站,java在网站迅速开发上还有待改进,并已经厌倦java。于是就对比rails和django(我这人有个习惯,就是先看看网上的口水)。看到大量的VS(语言框架的都有),是人就迷惑,本来就是2种简单语言(哲学不同)、2个相似的框架(哲学相同),偏要掐得你死我活,相互辱骂。

其实影响的我最后选择的原因全是外部非理智的:
1. Youtube
2. douban
3. google的大力支持(app engine)
4. 语言排名(python一直很平稳,势头缓慢上升,逼近第二集团)


一些资源:
《Div into Python》电子档或在线看看
《python核心编程》也有电子档,由于该书出现人品纠纷,电子档也释放出来,自己google吧
python www.python.org
django http://docs.djangoproject.com/en/dev/
有一点python小品 http://www.ibm.com/developerworks/cn/linux/theme/python/index.html
python 论坛里有价值的东西并不多,如javaeye

2008年10月14日星期二

常上的网站

突然心血来潮,打开自己的访问历史记录,发现访问的网站集中在几个固定站点,还有几个零
星站点分散其中。主要站点列表如下(排名不分前后):
www.google.com/www.g.cn
news.sina.com.cn
www.javaeye.com
www.infoq.com/cn
www.youku.com
www.taobao.com
www.alipay.com
www.china-pub.com
www.baidu.com
www.theserverside.com

google果然凶悍,基本把我粘在上面,尤其以资讯(阅读器)、mail、搜索、日历代表,每天必
光顾N次。

2008年10月13日星期一