Python论坛  - 讨论区

标题:[python-chinese] [转]写给互联网上从业的Web程序员

2006年06月19日 星期一 09:37

=?ISO-2022-JP?B?GyRCQmdPOhsoQg==?= iexper at gmail.com
Mon Jun 19 09:37:13 HKT 2006

  作者:奶瓶 <http://conanmusic.spaces.msn.com/PersonalSpace.aspx>
程序员是一个脆弱、特殊的群体,以各种方式生存在有01的世界里。

程序员的特点:
狂躁,但是有修养
随和,但是疯癫
肯向任何人学,但是不服任何人
守约,但是不守时
感情丰富,但是单纯
……
Web程序是程序员中的一个别具特色的群体,他们有着和HTTP协议类似的无状态性、无序性、不可预测性。我这么说,是因为web程序员的出身、成分、学习途径、从业历程多种多样。Web程序员,是现今IT从业者中最具活力也最复杂的最可爱的一群人。

相比于传统的"学院派"程序员(请暂时允许我这么说),Web程序员的普遍出身都比较"贫寒",这是行业事实,尤其是处于刚入行不久的这一大部分人中,有很多是没有上过大学,受过正常高校教育体制折磨的。高中、专科甚至初中学历的程序员比比皆是,他们通过自己的努力,掌握了一定的技能,取得了一项不错的工作。

"学院派"包括很多集团性质的大规模开发活动,外包项目,基于底层或硬件的开发,研究性的开发等等,体现在开发工具上多集中于C、C++、Ada等学院气息浓厚的语言,Java在某种程度上也可以算作其中,他们的特点是基础牢固、严谨、重视内在,又有些枯燥的味道。Web开发更倾向与灵活、开发效率和表现形式。

然而由于各种原因,很多高等学府中的学生有一种很不正确的误解,认为Web开发是低于传统开发的,没有水平的,浮躁的,实在没工作的表现,从而看不起它。相对的,很多Web从业者认为大学生毕业后去的大公司的工作是死板的,缺乏创造性的,枯燥的,没有真才实学的,更认为大学里学不到什么,从而也看不起,甚至仇视大学教育(包括一些受过高等教育的人)。这是一个非常现实的矛盾。

当然这个矛盾只是集中没有毕业的学生和从业时间不长的人群中,等到工作一段时间之后,相互接触得多了,都会觉得自己原本并没有体验到对方的真实内涵。传统开发中有很多富有创造性富有激情的内容值得互联网行业借鉴,而Web开发中千奇百怪的想法和时刻面对亿万用户的几乎无法预测的使用环境都是传统开发者觉得羡慕不已的,而两者结合更是体现了学院的严谨、知识的重要、来自用户的成败决定性,比如搜索引擎,比如企业级的B/S分布系统。

一个精熟C语言并有着丰富经验的人,转行从事Web开发是比较快的,甚至可以说是如鱼得水,但是一个做了两年PHP而又没有什么其它的语言背景的程序员,在自身发展上就会受到阻碍了。任何一门语言上升到一定高度,它所面对的问题已经不再是这门语言本身。语言只是工具,使用工具的方法才是生产效率的决定因素。熟习了语言之后,慢慢地在工作中会碰到诸如执行效率、存储方法、算法优化等更多偏向分析而不是代码艺术的内容。通常对于一个没有受过系统的计算机教育,没有受过自认为"没用"的大学培养的程序员,在这些问题面前表现都是比较盲目、无助的。很多问题需要严整的数学分析,查阅参考资料需要比较好的英文水平和数学基础,聪明一点的会马上意识到大学基础教育的重要性,多半都会后悔上课睡觉了,呵呵~~

一些人对于分析方法等抱着不以为然的态度,认识多是浮于表面,比如对于数据结构和算法的淡漠,觉得在Web开发中极少或不可能触及到这些内容。诚然,现在的Web开发脚本语言都有丰富的函数,灵巧的使用方式,多数已经不需要再像C语言一样声名变量、创建指针、计算内存地址、写排序算法。而且基于互联网的不可预知性,也很难有一个完美的算法解决所有情况下的问题,比如排序。程序员在这种情况下都是使用语言内置的各种功能在完成操作,当然我不是说什么都要从头开始自己写,那是莽夫做的傻事,但是我想,既然用了,多多少少也应该知道函数是怎么回事。自己写的function是函数,系统提供的就不是函数了么?不求看懂源码,至少也应该知道它是在做什么。每天追求执行效率和页面执行时间的程序员,更是忽略了系统函数本身的效率问题,把所有的系统函数都想象成了汇编中的NOOP这种单元操作。

Web开发中碰到的算法问题很少么?举一个小例子:iForum论坛(前年我在上海看过)中记载用户组权限的方法,是在数据表中插入一条类似11110010011100的字符串,每一位代表一种操作,1就是表示有权限进行操作,0就是没有。这种方式很简单实用,但是它受到Varchar的长度限制(虽然255种操作已经足够复杂了),而且字符串的计算效率又是低于数字,那么有没有想过这种算法的本质是什么呢?有没有想过优化它呢?

中国古代有一套数学理论叫做"盈不足术",例如,有十只盒子,第一个盒子里放一个盘子,第二个盒子里放两只,第三个盒子里放四只,第四个盒子里放八只……第九个盒子里放256只,第十个盒子放512只,即第N只箱子里放2^(N-1)只盘子,一共1023只。那么命题如下:在1023这个数字之内,任何一个数目都可以由这十只盒子里的几只组合相加而成(大家自己算算就知道了……呵呵)。
那么1、2、4、8、16、32、64、128、256、512这个序列为什么有这么个魔力?这个数列的特点:1、每项是后一项的二倍,2、每项都比前面所有项的和大,而且大1。这个1就是关键,就因为这个1,它才可以按1递增,拼出总和之内任意一个整数。这个序列叫做超递增序列,它是解决背包问题的基础。
对于一个整数,假设377,它的二进制表示为"101111001",它就是由第一只、第四只、第五只、第六只、第七只和第九只箱子拼成的,对于一个表现了9种操作的描述,377就是这个描述下的一个实例,是一个权值。
那么相比于保存这个字符串和保存这样一个数值,好处和坏处都在哪里呢~~很明显的,保存字符串的好处是运算压力小。我们可能听过一个故事,就是把这个超递增序列延伸到第64项,就是那个术士和皇帝在国际象棋棋盘上要米粒的传说。64项的和是一个天文数字!但是不要忘了,计算机本身就是一个只认识二进制的机器!(这点很多Web程序员都忽视了,很多人不知道位操作是什么玩意)有人担心数据库的int不够长,那么既然可以保存一个只有0、1组成的varchar字符串,为什么不能保存一个十六进制的字符串,有人规定varchar只能保存01吗?十六进制串的长度正好是二进制的四分之一,而十六进制到二进制的转化是非常直接方便的。
以上就是这个权限串的由来,不知道有多少web程序员想到过这些……而一个C或汇编程序员看到这个字符串第一眼就会想起这是个十进制的15516(当然不是马上就算得出来)。
由此引出的和web相关的,比如多选框的保存,投票选项的保存等等……

Web程序员需要学习一些数据结构、算法分析等知识,虽然在工作中不会使用得那么明显,但是这些概念是学习本身语言的一个很好的催化剂,它会让程序员更有效地理解资料上的信息,达到事半功倍的目的,也会在问题陷入苦处不得解脱时候帮助开发者理清头绪,以一个清晰的思维过程找到解决问题的突破点。

阻碍程序员学习这些的原因,第一就是基础学科不扎实,比如数学。计算机划分为理工科是非常有道理的,计算机科学建立在深厚庞大的数学系统之上,至于如何学数学……这是功夫问题了。第二是心理障碍,觉得离开学校就学不好。自然学校是学习基础学科的最好地方,但是往往工作上需要的知识更贴近实际,在实际中学习通常会比在枯燥的书本上搬东西效果更好。第三是客观原因:从业者多半工作都很忙,业余时间很少(这几乎是程序员的标志),那么学习只能在工作中见缝插针,这种学习方式需要会用巧功,会联系。第四个就是信息来源。现在适合Web程序员学习,根据Web脚本语言特点编写的基础类书籍太少了!比如数据结构类书籍多半是以C/C++/Pascal这类强类型的严谨的传统语言为描述基础,操作系统原理多是以汇编等底层脚本描述,设计思想多是以Java这种纯OO的语言为主,我没有发现有使用Perl这种怪异的语言教授数据结构的学校。

基于以上的研究结果,我们可以有条理地整理思路,多站在Web程序员的角度上考虑,做出一些适合这个特殊群体学习提高的有意义的活动。

(――NP博士,2006年6月12日夜)

from: http://conanmusic.spaces.msn.com/PersonalSpace.aspx


-- 
大郎(IT民工,目前在南昌)
iexper at gmail.com
blog:http://www.iexper.com/blog/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060619/2ae2ecb1/attachment.html

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月19日 星期一 09:37

Xiao Lei Wu xiaoleiw at cn.ibm.com
Mon Jun 19 09:37:53 HKT 2006

ÔÚosÀïÃæÕÒÁË°ëÌ죬û·¢ÏÖÓÐʲô°ì·¨£¬removedirs²»ÄÜɾ³ý·Ç¿ÕĿ¼£¬ÊµÔÚ²»ÏëÖ±
½Óµ÷ϵͳÃüÁî

Best Regards,

Zachary Wu (Îâ°~ÀÚ)
Software Engineer, Enterprise Content Management FVT, IBM China Software
Development Lab
Tel: +86 10 82782244-3235. Fax: 82782244-2886 Tie Line: 915-2244-3235
Internet: xiaoleiw at cn.ibm.com
Notes ID: Xiao Lei Wu/China/Contr/IBM at IBMCN
Address: 8/F, Block A, Power Creative Building, No.1, East Road, Shang Di,
Beijing 100085, P.R. China
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060619/0a589f35/attachment.htm

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月19日 星期一 09:40

limodou limodou at gmail.com
Mon Jun 19 09:40:02 HKT 2006

On 6/19/06, Xiao Lei Wu <xiaoleiw at cn.ibm.com> wrote:
>
>
>
> 在os里面找了半天,没发现有什么办法,removedirs不能删除非空目录,实在不想直接调系统命令
>
不是有人回答了嘛,在shutil中,rmtree。

-- 
I like python!
My Blog: http://www.donews.net/limodou
My Django Site: http://www.djangocn.org
NewEdit Maillist: http://groups.google.com/group/NewEdit

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月19日 星期一 09:53

Xiao Lei Wu xiaoleiw at cn.ibm.com
Mon Jun 19 09:53:03 HKT 2006

ÊÇ°¡£¬ÒòΪÎÒ·¢ÏÖÁ½¸öµØ·½²»Í¬²½ËùÒÔ²ÅÓÖ·¢ÁËÒ»·â£¬ºÇºÇ£¬Ò²Óв¿·Ö²âÊÔµÄÒâ˼
×òÌìÊÇÔÚ¼ÒÀïÉÏgoogle·¢µÄ
ÁíÍâÎÊһϣ¬ÄãÃÇÊÇÓÃÓʼþÁбíΪÖ÷°¢»¹ÊÇÓÃgoogleΪÖ÷£¿

Best Regards,

Zachary Wu (Îâ°~ÀÚ)
Software Engineer, Enterprise Content Management FVT, IBM China Software
Development Lab
Tel: +86 10 82782244-3235. Fax: 82782244-2886 Tie Line: 915-2244-3235
Internet: xiaoleiw at cn.ibm.com
Notes ID: Xiao Lei Wu/China/Contr/IBM at IBMCN
Address: 8/F, Block A, Power Creative Building, No.1, East Road, Shang Di,
Beijing 100085, P.R. China

python-chinese-bounces at lists.python.cn дÓÚ 2006-06-19 09:40:02:

> On 6/19/06, Xiao Lei Wu <xiaoleiw at cn.ibm.com> wrote:
> >
> >
> >
> > ÔÚosÀïÃæÕÒÁË°ëÌ죬û·¢ÏÖÓÐʲô°ì·¨£¬removedirs²»ÄÜɾ³ý·Ç¿ÕĿ¼£¬Êµ
> ÔÚ²»ÏëÖ±½Óµ÷ϵͳÃüÁî
> >
> ²»ÊÇÓÐÈ˻شðÁËÂÔÚshutilÖУ¬rmtree¡£
>
> --
> I like python!
> My Blog: http://www.donews.net/limodou
> My Django Site: http://www.djangocn.org
> NewEdit Maillist: http://groups.google.com/group/NewEdit
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060619/c1e37a09/attachment.html

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月19日 星期一 09:57

limodou limodou at gmail.com
Mon Jun 19 09:57:12 HKT 2006

On 6/19/06, Xiao Lei Wu <xiaoleiw at cn.ibm.com> wrote:
>
> 是啊,因为我发现两个地方不同步所以才又发了一封,呵呵,也有部分测试的意思
>  昨天是在家里上google发的
>  另外问一下,你们是用邮件列表为主阿还是用google为主?
>
我主要以google为主,但大部分人象我一样同时订阅了两个邮件列表,所以不管哪个都看得到。跟一个没有什么区别。

而且有时,有人会两个邮件列表同时发信。
-- 
I like python!
My Blog: http://www.donews.net/limodou
My Django Site: http://www.djangocn.org
NewEdit Maillist: http://groups.google.com/group/NewEdit

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月19日 星期一 10:02

HoLin holin.he at gmail.com
Mon Jun 19 10:02:57 HKT 2006

有点感触。思考ing

On 6/19/06, 大郎 <iexper at gmail.com> wrote:
>
>   作者:奶瓶 <http://conanmusic.spaces.msn.com/PersonalSpace.aspx>
> 程序员是一个脆弱、特殊的群体,以各种方式生存在有01的世界里。
>
> 程序员的特点:
> 狂躁,但是有修养
> 随和,但是疯癫
> 肯向任何人学,但是不服任何人
> 守约,但是不守时
> 感情丰富,但是单纯
> ……
>
> Web程序是程序员中的一个别具特色的群体,他们有着和HTTP协议类似的无状态性、无序性、不可预测性。我这么说,是因为web程序员的出身、成分、学习途径、从业历程多种多样。Web程序员,是现今IT从业者中最具活力也最复杂的最可爱的一群人。
>
>
> 相比于传统的"学院派"程序员(请暂时允许我这么说),Web程序员的普遍出身都比较"贫寒",这是行业事实,尤其是处于刚入行不久的这一大部分人中,有很多是没有上过大学,受过正常高校教育体制折磨的。高中、专科甚至初中学历的程序员比比皆是,他们通过自己的努力,掌握了一定的技能,取得了一项不错的工作。
>
>
> "学院派"包括很多集团性质的大规模开发活动,外包项目,基于底层或硬件的开发,研究性的开发等等,体现在开发工具上多集中于C、C++、Ada等学院气息浓厚的语言,Java在某种程度上也可以算作其中,他们的特点是基础牢固、严谨、重视内在,又有些枯燥的味道。Web开发更倾向与灵活、开发效率和表现形式。
>
>
> 然而由于各种原因,很多高等学府中的学生有一种很不正确的误解,认为Web开发是低于传统开发的,没有水平的,浮躁的,实在没工作的表现,从而看不起它。相对的,很多Web从业者认为大学生毕业后去的大公司的工作是死板的,缺乏创造性的,枯燥的,没有真才实学的,更认为大学里学不到什么,从而也看不起,甚至仇视大学教育(包括一些受过高等教育的人)。这是一个非常现实的矛盾。
>
>
> 当然这个矛盾只是集中没有毕业的学生和从业时间不长的人群中,等到工作一段时间之后,相互接触得多了,都会觉得自己原本并没有体验到对方的真实内涵。传统开发中有很多富有创造性富有激情的内容值得互联网行业借鉴,而Web开发中千奇百怪的想法和时刻面对亿万用户的几乎无法预测的使用环境都是传统开发者觉得羡慕不已的,而两者结合更是体现了学院的严谨、知识的重要、来自用户的成败决定性,比如搜索引擎,比如企业级的B/S分布系统。
>
> 一个精熟C语言并有着丰富经验的人,转行从事Web开发是比较快的,甚至可以说是如鱼得水,但是一个做了两年PHP而又没有什么其它的语言背景的程序员,在自身发展上就会受到阻碍了。任何一门语言上升到一定高度,它所面对的问题已经不再是这门语言本身。语言只是工具,使用工具的方法才是生产效率的决定因素。熟习了语言之后,慢慢地在工作中会碰到诸如执行效率、存储方法、算法优化等更多偏向分析而不是代码艺术的内容。通常对于一个没有受过系统的计算机教育,没有受过自认为"没用"的大学培养的程序员,在这些问题面前表现都是比较盲目、无助的。很多问题需要严整的数学分析,查阅参考资料需要比较好的英文水平和数学基础,聪明一点的会马上意识到大学基础教育的重要性,多半都会后悔上课睡觉了,呵呵~~
>
>
> 一些人对于分析方法等抱着不以为然的态度,认识多是浮于表面,比如对于数据结构和算法的淡漠,觉得在Web开发中极少或不可能触及到这些内容。诚然,现在的Web开发脚本语言都有丰富的函数,灵巧的使用方式,多数已经不需要再像C语言一样声名变量、创建指针、计算内存地址、写排序算法。而且基于互联网的不可预知性,也很难有一个完美的算法解决所有情况下的问题,比如排序。程序员在这种情况下都是使用语言内置的各种功能在完成操作,当然我不是说什么都要从头开始自己写,那是莽夫做的傻事,但是我想,既然用了,多多少少也应该知道函数是怎么回事。自己写的function是函数,系统提供的就不是函数了么?不求看懂源码,至少也应该知道它是在做什么。每天追求执行效率和页面执行时间的程序员,更是忽略了系统函数本身的效率问题,把所有的系统函数都想象成了汇编中的NOOP这种单元操作。
>
>
>
> Web开发中碰到的算法问题很少么?举一个小例子:iForum论坛(前年我在上海看过)中记载用户组权限的方法,是在数据表中插入一条类似11110010011100的字符串,每一位代表一种操作,1就是表示有权限进行操作,0就是没有。这种方式很简单实用,但是它受到Varchar的长度限制(虽然255种操作已经足够复杂了),而且字符串的计算效率又是低于数字,那么有没有想过这种算法的本质是什么呢?有没有想过优化它呢?
>
>
> 中国古代有一套数学理论叫做"盈不足术",例如,有十只盒子,第一个盒子里放一个盘子,第二个盒子里放两只,第三个盒子里放四只,第四个盒子里放八只……第九个盒子里放256只,第十个盒子放512只,即第N只箱子里放2^(N-1)只盘子,一共1023只。那么命题如下:在1023这个数字之内,任何一个数目都可以由这十只盒子里的几只组合相加而成(大家自己算算就知道了……呵呵)。
>
> 那么1、2、4、8、16、32、64、128、256、512这个序列为什么有这么个魔力?这个数列的特点:1、每项是后一项的二倍,2、每项都比前面所有项的和大,而且大1。这个1就是关键,就因为这个1,它才可以按1递增,拼出总和之内任意一个整数。这个序列叫做超递增序列,它是解决背包问题的基础。
>
> 对于一个整数,假设377,它的二进制表示为"101111001",它就是由第一只、第四只、第五只、第六只、第七只和第九只箱子拼成的,对于一个表现了9种操作的描述,377就是这个描述下的一个实例,是一个权值。
> 那么相比于保存这个字符串和保存这样一个数值,好处和坏处都在哪里呢~~很明显的,保存字符串的好处是运算压力小。我们可能听过一个故事,就是把这个超递增序列延伸到第64项,就是那个术士和皇帝在国际象棋棋盘上要米粒的传说。64项的和是一个天文数字!但是不要忘了,计算机本身就是一个只认识二进制的机器!(这点很多Web程序员都忽视了,很多人不知道位操作是什么玩意)有人担心数据库的int不够长,那么既然可以保存一个只有0、1组成的varchar字符串,为什么不能保存一个十六进制的字符串,有人规定varchar只能保存01吗?十六进制串的长度正好是二进制的四分之一,而十六进制到二进制的转化是非常直接方便的。
>
>
> 以上就是这个权限串的由来,不知道有多少web程序员想到过这些……而一个C或汇编程序员看到这个字符串第一眼就会想起这是个十进制的15516(当然不是马上就算得出来)。
> 由此引出的和web相关的,比如多选框的保存,投票选项的保存等等……
>
>
> Web程序员需要学习一些数据结构、算法分析等知识,虽然在工作中不会使用得那么明显,但是这些概念是学习本身语言的一个很好的催化剂,它会让程序员更有效地理解资料上的信息,达到事半功倍的目的,也会在问题陷入苦处不得解脱时候帮助开发者理清头绪,以一个清晰的思维过程找到解决问题的突破点。
>
> 阻碍程序员学习这些的原因,第一就是基础学科不扎实,比如数学。计算机划分为理工科是非常有道理的,计算机科学建立在深厚庞大的数学系统之上,至于如何学数学……这是功夫问题了。第二是心理障碍,觉得离开学校就学不好。自然学校是学习基础学科的最好地方,但是往往工作上需要的知识更贴近实际,在实际中学习通常会比在枯燥的书本上搬东西效果更好。第三是客观原因:从业者多半工作都很忙,业余时间很少(这几乎是程序员的标志),那么学习只能在工作中见缝插针,这种学习方式需要会用巧功,会联系。第四个就是信息来源。现在适合Web程序员学习,根据Web脚本语言特点编写的基础类书籍太少了!比如数据结构类书籍多半是以C/C++/Pascal这类强类型的严谨的传统语言为描述基础,操作系统原理多是以汇编等底层脚本描述,设计思想多是以Java这种纯OO的语言为主,我没有发现有使用Perl这种怪异的语言教授数据结构的学校。
>
>
> 基于以上的研究结果,我们可以有条理地整理思路,多站在Web程序员的角度上考虑,做出一些适合这个特殊群体学习提高的有意义的活动。
>
> (――NP博士,2006年6月12日夜)
>
> from: http://conanmusic.spaces.msn.com/PersonalSpace.aspx
>
>
>
> --
> 大郎(IT民工,目前在南昌)
> iexper at gmail.com
> blog:http://www.iexper.com/blog/
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060619/2ccfa0eb/attachment.html

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月19日 星期一 10:04

Zoom.Quiet zoom.quiet at gmail.com
Mon Jun 19 10:04:18 HKT 2006

On 6/19/06, limodou <limodou at gmail.com> wrote:
> On 6/19/06, Xiao Lei Wu <xiaoleiw at cn.ibm.com> wrote:
> >
> > 是啊,因为我发现两个地方不同步所以才又发了一封,呵呵,也有部分测试的意思
> >  昨天是在家里上google发的
> >  另外问一下,你们是用邮件列表为主阿还是用google为主?
> >
> 我主要以google为主,但大部分人象我一样同时订阅了两个邮件列表,所以不管哪个都看得到。跟一个没有什么区别。
>
> 而且有时,有人会两个邮件列表同时发信。
是俺在 Gmail 中设定了过滤,会自动向 python-chinese 转发…………

> --
> I like python!
> My Blog: http://www.donews.net/limodou
> My Django Site: http://www.djangocn.org
> NewEdit Maillist: http://groups.google.com/group/NewEdit
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>


-- 
"""Time is unimportant, only life important!
blogging  :  http://blog.zoomquiet.org/pyblosxom/
wiki enter:   http://wiki.woodpecker.org.cn/moin/ZoomQuiet
in douban:  http://www.douban.com/people/zoomq/
"""

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月19日 星期一 10:08

Xiao Lei Wu xiaoleiw at cn.ibm.com
Mon Jun 19 10:08:00 HKT 2006

¿´À´¹úÈË»¹ÊÇϲ»¶web
²»¹ýÎÒ¹«Ë¾µÄÍøÂçÓÐʱÁ¬²»Í¨google£¬ËùÒÔÖ»ÄÜÓÃmailÁË£¬ÆäʵÎÒһֱϰ¹ßÓÃmailµÄ

Best Regards,

Zachary Wu (Îâ°~ÀÚ)
Software Engineer, Enterprise Content Management FVT, IBM China Software
Development Lab
Tel: +86 10 82782244-3235. Fax: 82782244-2886 Tie Line: 915-2244-3235
Internet: xiaoleiw at cn.ibm.com
Notes ID: Xiao Lei Wu/China/Contr/IBM at IBMCN
Address: 8/F, Block A, Power Creative Building, No.1, East Road, Shang Di,
Beijing 100085, P.R. China

python-chinese-bounces at lists.python.cn дÓÚ 2006-06-19 09:57:12:

> On 6/19/06, Xiao Lei Wu <xiaoleiw at cn.ibm.com> wrote:
> >
> > ÊÇ°¡£¬ÒòΪÎÒ·¢ÏÖÁ½¸öµØ·½²»Í¬²½ËùÒÔ²ÅÓÖ·¢ÁËÒ»·â£¬ºÇºÇ£¬Ò²Óв¿·Ö²âÊÔµÄÒâ
˼
> >  ×òÌìÊÇÔÚ¼ÒÀïÉÏgoogle·¢µÄ
> >  ÁíÍâÎÊһϣ¬ÄãÃÇÊÇÓÃÓʼþÁбíΪÖ÷°¢»¹ÊÇÓÃgoogleΪÖ÷£¿
> >
> ÎÒÖ÷ÒªÒÔgoogleΪÖ÷£¬µ«´ó²¿·ÖÈËÏóÎÒÒ»Ñùͬʱ¶©ÔÄÁËÁ½¸öÓʼþÁÐ±í£¬ËùÒÔ²»
> ¹ÜÄĸö¶¼¿´µÃµ½¡£¸úÒ»¸öûÓÐʲôÇø±ð¡£
>
> ¶øÇÒÓÐʱ£¬ÓÐÈË»áÁ½¸öÓʼþÁбíͬʱ·¢ÐÅ¡£
> --
> I like python!
> My Blog: http://www.donews.net/limodou
> My Django Site: http://www.djangocn.org
> NewEdit Maillist: http://groups.google.com/group/NewEdit
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060619/9d0da5f2/attachment.htm

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月19日 星期一 10:10

limodou limodou at gmail.com
Mon Jun 19 10:10:33 HKT 2006

On 6/19/06, Xiao Lei Wu <xiaoleiw at cn.ibm.com> wrote:
>
>
>
> 看来国人还是喜欢web
>  不过我公司的网络有时连不通google,所以只能用mail了,其实我一直习惯用mail的
>
因为我使用的是gmail。功能非常强大,已经足已让我基本上不使用客户端软件了。其实我还装了thunderbird,用来收其它的邮件。

-- 
I like python!
My Blog: http://www.donews.net/limodou
My Django Site: http://www.djangocn.org
NewEdit Maillist: http://groups.google.com/group/NewEdit

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月19日 星期一 10:12

Robert Chen search.pythoner at gmail.com
Mon Jun 19 10:12:22 HKT 2006

ºÇºÇÎÒÒ²ÊÇÁ½¸ö¶¼¶©ÁË

On 6/19/06, Xiao Lei Wu <xiaoleiw at cn.ibm.com> wrote:
>
>  ¿´À´¹úÈË»¹ÊÇϲ»¶web
> ²»¹ýÎÒ¹«Ë¾µÄÍøÂçÓÐʱÁ¬²»Í¨google£¬ËùÒÔÖ»ÄÜÓÃmailÁË£¬ÆäʵÎÒһֱϰ¹ßÓÃmailµÄ
>
>
> Best Regards,
>
> Zachary Wu (Îâ°~ÀÚ)
> Software Engineer, Enterprise Content Management FVT, IBM China Software
> Development Lab
> Tel: +86 10 82782244-3235. Fax: 82782244-2886 Tie Line: 915-2244-3235
> Internet: xiaoleiw at cn.ibm.com
> Notes ID: Xiao Lei Wu/China/Contr/IBM at IBMCN
> Address: 8/F, Block A, Power Creative Building, No.1, East Road, Shang Di,
> Beijing 100085, P.R. China
>
> python-chinese-bounces at lists.python.cn дÓÚ 2006-06-19 09:57:12:
>
>
> > On 6/19/06, Xiao Lei Wu <xiaoleiw at cn.ibm.com> wrote:
> > >
> > > ÊÇ°¡£¬ÒòΪÎÒ·¢ÏÖÁ½¸öµØ·½²»Í¬²½ËùÒÔ²ÅÓÖ·¢ÁËÒ»·â£¬ºÇºÇ£¬Ò²Óв¿·Ö²âÊÔµÄÒâ˼
> > >  ×òÌìÊÇÔÚ¼ÒÀïÉÏgoogle·¢µÄ
> > >  ÁíÍâÎÊһϣ¬ÄãÃÇÊÇÓÃÓʼþÁбíΪÖ÷°¢»¹ÊÇÓÃgoogleΪÖ÷£¿
> > >
> > ÎÒÖ÷ÒªÒÔgoogleΪÖ÷£¬µ«´ó²¿·ÖÈËÏóÎÒÒ»Ñùͬʱ¶©ÔÄÁËÁ½¸öÓʼþÁÐ±í£¬ËùÒÔ²»
> > ¹ÜÄĸö¶¼¿´µÃµ½¡£¸úÒ»¸öûÓÐʲôÇø±ð¡£
> >
> > ¶øÇÒÓÐʱ£¬ÓÐÈË»áÁ½¸öÓʼþÁбíͬʱ·¢ÐÅ¡£
> > --
> > I like python!
> > My Blog: http://www.donews.net/limodou
> > My Django Site: http://www.djangocn.org
> > NewEdit Maillist: http://groups.google.com/group/NewEdit
> > _______________________________________________
> > python-chinese
> > Post: send python-chinese at lists.python.cn
> > Subscribe: send subscribe to python-chinese-request at lists.python.cn
> > Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> > Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>


-- 
Robert
PythonÔ´ÂëÆÊÎö¡ª¡ªhttp://blog.donews.com/lemur/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060619/ac0647e2/attachment.html

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月19日 星期一 10:30

一只小蚂蚁 qixiangnj at gmail.com
Mon Jun 19 10:30:59 HKT 2006

好文!

在06-6-19,HoLin <holin.he at gmail.com> 写道:
>
> 有点感触。思考ing
>
>  On 6/19/06, 大郎 <iexper at gmail.com> wrote:
>
> >    作者:奶瓶 <http://conanmusic.spaces.msn.com/PersonalSpace.aspx>
> 程序员是一个脆弱、特殊的群体,以各种方式生存在有01的世界里。
>
> 程序员的特点:
> 狂躁,但是有修养
> 随和,但是疯癫
> 肯向任何人学,但是不服任何人
> 守约,但是不守时
> 感情丰富,但是单纯
> ……
>
> Web程序是程序员中的一个别具特色的群体,他们有着和HTTP协议类似的无状态性、无序性、不可预测性。我这么说,是因为web程序员的出身、成分、学习途径、从业历程多种多样。Web程序员,是现今IT从业者中最具活力也最复杂的最可爱的一群人。
>
>
> 相比于传统的"学院派"程序员(请暂时允许我这么说),Web程序员的普遍出身都比较"贫寒",这是行业事实,尤其是处于刚入行不久的这一大部分人中,有很多是没有上过大学,受过正常高校教育体制折磨的。高中、专科甚至初中学历的程序员比比皆是,他们通过自己的努力,掌握了一定的技能,取得了一项不错的工作。
>
>
> "学院派"包括很多集团性质的大规模开发活动,外包项目,基于底层或硬件的开发,研究性的开发等等,体现在开发工具上多集中于C、C++、Ada等学院气息浓厚的语言,Java在某种程度上也可以算作其中,他们的特点是基础牢固、严谨、重视内在,又有些枯燥的味道。Web开发更倾向与灵活、开发效率和表现形式。
>
>
> 然而由于各种原因,很多高等学府中的学生有一种很不正确的误解,认为Web开发是低于传统开发的,没有水平的,浮躁的,实在没工作的表现,从而看不起它。相对的,很多Web从业者认为大学生毕业后去的大公司的工作是死板的,缺乏创造性的,枯燥的,没有真才实学的,更认为大学里学不到什么,从而也看不起,甚至仇视大学教育(包括一些受过高等教育的人)。这是一个非常现实的矛盾。
>
>
> 当然这个矛盾只是集中没有毕业的学生和从业时间不长的人群中,等到工作一段时间之后,相互接触得多了,都会觉得自己原本并没有体验到对方的真实内涵。传统开发中有很多富有创造性富有激情的内容值得互联网行业借鉴,而Web开发中千奇百怪的想法和时刻面对亿万用户的几乎无法预测的使用环境都是传统开发者觉得羡慕不已的,而两者结合更是体现了学院的严谨、知识的重要、来自用户的成败决定性,比如搜索引擎,比如企业级的B/S分布系统。
>
> 一个精熟C语言并有着丰富经验的人,转行从事Web开发是比较快的,甚至可以说是如鱼得水,但是一个做了两年PHP而又没有什么其它的语言背景的程序员,在自身发展上就会受到阻碍了。任何一门语言上升到一定高度,它所面对的问题已经不再是这门语言本身。语言只是工具,使用工具的方法才是生产效率的决定因素。熟习了语言之后,慢慢地在工作中会碰到诸如执行效率、存储方法、算法优化等更多偏向分析而不是代码艺术的内容。通常对于一个没有受过系统的计算机教育,没有受过自认为"没用"的大学培养的程序员,在这些问题面前表现都是比较盲目、无助的。很多问题需要严整的数学分析,查阅参考资料需要比较好的英文水平和数学基础,聪明一点的会马上意识到大学基础教育的重要性,多半都会后悔上课睡觉了,呵呵~~
>
>
> 一些人对于分析方法等抱着不以为然的态度,认识多是浮于表面,比如对于数据结构和算法的淡漠,觉得在Web开发中极少或不可能触及到这些内容。诚然,现在的Web开发脚本语言都有丰富的函数,灵巧的使用方式,多数已经不需要再像C语言一样声名变量、创建指针、计算内存地址、写排序算法。而且基于互联网的不可预知性,也很难有一个完美的算法解决所有情况下的问题,比如排序。程序员在这种情况下都是使用语言内置的各种功能在完成操作,当然我不是说什么都要从头开始自己写,那是莽夫做的傻事,但是我想,既然用了,多多少少也应该知道函数是怎么回事。自己写的function是函数,系统提供的就不是函数了么?不求看懂源码,至少也应该知道它是在做什么。每天追求执行效率和页面执行时间的程序员,更是忽略了系统函数本身的效率问题,把所有的系统函数都想象成了汇编中的NOOP这种单元操作。
>
>
>
> Web开发中碰到的算法问题很少么?举一个小例子:iForum论坛(前年我在上海看过)中记载用户组权限的方法,是在数据表中插入一条类似11110010011100的字符串,每一位代表一种操作,1就是表示有权限进行操作,0就是没有。这种方式很简单实用,但是它受到Varchar的长度限制(虽然255种操作已经足够复杂了),而且字符串的计算效率又是低于数字,那么有没有想过这种算法的本质是什么呢?有没有想过优化它呢?
>
>
> 中国古代有一套数学理论叫做"盈不足术",例如,有十只盒子,第一个盒子里放一个盘子,第二个盒子里放两只,第三个盒子里放四只,第四个盒子里放八只……第九个盒子里放256只,第十个盒子放512只,即第N只箱子里放2^(N-1)只盘子,一共1023只。那么命题如下:在1023这个数字之内,任何一个数目都可以由这十只盒子里的几只组合相加而成(大家自己算算就知道了……呵呵)。
>
> 那么1、2、4、8、16、32、64、128、256、512这个序列为什么有这么个魔力?这个数列的特点:1、每项是后一项的二倍,2、每项都比前面所有项的和大,而且大1。这个1就是关键,就因为这个1,它才可以按1递增,拼出总和之内任意一个整数。这个序列叫做超递增序列,它是解决背包问题的基础。
>
> 对于一个整数,假设377,它的二进制表示为"101111001",它就是由第一只、第四只、第五只、第六只、第七只和第九只箱子拼成的,对于一个表现了9种操作的描述,377就是这个描述下的一个实例,是一个权值。
> 那么相比于保存这个字符串和保存这样一个数值,好处和坏处都在哪里呢~~很明显的,保存字符串的好处是运算压力小。我们可能听过一个故事,就是把这个超递增序列延伸到第64项,就是那个术士和皇帝在国际象棋棋盘上要米粒的传说。64项的和是一个天文数字!但是不要忘了,计算机本身就是一个只认识二进制的机器!(这点很多Web程序员都忽视了,很多人不知道位操作是什么玩意)有人担心数据库的int不够长,那么既然可以保存一个只有0、1组成的varchar字符串,为什么不能保存一个十六进制的字符串,有人规定varchar只能保存01吗?十六进制串的长度正好是二进制的四分之一,而十六进制到二进制的转化是非常直接方便的。
>
>
> 以上就是这个权限串的由来,不知道有多少web程序员想到过这些……而一个C或汇编程序员看到这个字符串第一眼就会想起这是个十进制的15516(当然不是马上就算得出来)。
> 由此引出的和web相关的,比如多选框的保存,投票选项的保存等等……
>
>
> Web程序员需要学习一些数据结构、算法分析等知识,虽然在工作中不会使用得那么明显,但是这些概念是学习本身语言的一个很好的催化剂,它会让程序员更有效地理解资料上的信息,达到事半功倍的目的,也会在问题陷入苦处不得解脱时候帮助开发者理清头绪,以一个清晰的思维过程找到解决问题的突破点。
>
> 阻碍程序员学习这些的原因,第一就是基础学科不扎实,比如数学。计算机划分为理工科是非常有道理的,计算机科学建立在深厚庞大的数学系统之上,至于如何学数学……这是功夫问题了。第二是心理障碍,觉得离开学校就学不好。自然学校是学习基础学科的最好地方,但是往往工作上需要的知识更贴近实际,在实际中学习通常会比在枯燥的书本上搬东西效果更好。第三是客观原因:从业者多半工作都很忙,业余时间很少(这几乎是程序员的标志),那么学习只能在工作中见缝插针,这种学习方式需要会用巧功,会联系。第四个就是信息来源。现在适合Web程序员学习,根据Web脚本语言特点编写的基础类书籍太少了!比如数据结构类书籍多半是以C/C++/Pascal这类强类型的严谨的传统语言为描述基础,操作系统原理多是以汇编等底层脚本描述,设计思想多是以Java这种纯OO的语言为主,我没有发现有使用Perl这种怪异的语言教授数据结构的学校。
>
>
> 基于以上的研究结果,我们可以有条理地整理思路,多站在Web程序员的角度上考虑,做出一些适合这个特殊群体学习提高的有意义的活动。
>
> (――NP博士,2006年6月12日夜)
>
> from: http://conanmusic.spaces.msn.com/PersonalSpace.aspx
>
>
>
> --
> 大郎(IT民工,目前在南昌)
> iexper at gmail.com
> blog: http://www.iexper.com/blog/
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>
>
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>


-- 
『忙忙碌碌   ★   碌碌无为』

――――一只小蚂蚁――――
http://blog.csdn.net/qixiang_nj

Tel:13851402330
QQ:375621797
MSN:qixiangnj at gmail.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060619/091e42fb/attachment.htm

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月19日 星期一 18:52

Lea.Cen leacen at gmail.com
Mon Jun 19 18:52:50 HKT 2006

写的很好!很经典!

On 6/19/06, 一只小蚂蚁 <qixiangnj at gmail.com> wrote:
>
> 好文!
>
> 在06-6-19,HoLin <holin.he at gmail.com> 写道:
>
> > 有点感触。思考ing
> >
> >  On 6/19/06, 大郎 < iexper at gmail.com> wrote:
> >
> > >    作者:奶瓶 <http://conanmusic.spaces.msn.com/PersonalSpace.aspx>
> > 程序员是一个脆弱、特殊的群体,以各种方式生存在有01的世界里。
> >
> > 程序员的特点:
> > 狂躁,但是有修养
> > 随和,但是疯癫
> > 肯向任何人学,但是不服任何人
> > 守约,但是不守时
> > 感情丰富,但是单纯
> > ……
> >
> > Web程序是程序员中的一个别具特色的群体,他们有着和HTTP协议类似的无状态性、无序性、不可预测性。我这么说,是因为web程序员的出身、成分、学习途径、从业历程多种多样。Web程序员,是现今IT从业者中最具活力也最复杂的最可爱的一群人。
> >
> >
> > 相比于传统的"学院派"程序员(请暂时允许我这么说),Web程序员的普遍出身都比较"贫寒",这是行业事实,尤其是处于刚入行不久的这一大部分人中,有很多是没有上过大学,受过正常高校教育体制折磨的。高中、专科甚至初中学历的程序员比比皆是,他们通过自己的努力,掌握了一定的技能,取得了一项不错的工作。
> >
> >
> > "学院派"包括很多集团性质的大规模开发活动,外包项目,基于底层或硬件的开发,研究性的开发等等,体现在开发工具上多集中于C、C++、Ada等学院气息浓厚的语言,Java在某种程度上也可以算作其中,他们的特点是基础牢固、严谨、重视内在,又有些枯燥的味道。Web开发更倾向与灵活、开发效率和表现形式。
> >
> >
> > 然而由于各种原因,很多高等学府中的学生有一种很不正确的误解,认为Web开发是低于传统开发的,没有水平的,浮躁的,实在没工作的表现,从而看不起它。相对的,很多Web从业者认为大学生毕业后去的大公司的工作是死板的,缺乏创造性的,枯燥的,没有真才实学的,更认为大学里学不到什么,从而也看不起,甚至仇视大学教育(包括一些受过高等教育的人)。这是一个非常现实的矛盾。
> >
> >
> > 当然这个矛盾只是集中没有毕业的学生和从业时间不长的人群中,等到工作一段时间之后,相互接触得多了,都会觉得自己原本并没有体验到对方的真实内涵。传统开发中有很多富有创造性富有激情的内容值得互联网行业借鉴,而Web开发中千奇百怪的想法和时刻面对亿万用户的几乎无法预测的使用环境都是传统开发者觉得羡慕不已的,而两者结合更是体现了学院的严谨、知识的重要、来自用户的成败决定性,比如搜索引擎,比如企业级的B/S分布系统。
> >
> > 一个精熟C语言并有着丰富经验的人,转行从事Web开发是比较快的,甚至可以说是如鱼得水,但是一个做了两年PHP而又没有什么其它的语言背景的程序员,在自身发展上就会受到阻碍了。任何一门语言上升到一定高度,它所面对的问题已经不再是这门语言本身。语言只是工具,使用工具的方法才是生产效率的决定因素。熟习了语言之后,慢慢地在工作中会碰到诸如执行效率、存储方法、算法优化等更多偏向分析而不是代码艺术的内容。通常对于一个没有受过系统的计算机教育,没有受过自认为"没用"的大学培养的程序员,在这些问题面前表现都是比较盲目、无助的。很多问题需要严整的数学分析,查阅参考资料需要比较好的英文水平和数学基础,聪明一点的会马上意识到大学基础教育的重要性,多半都会后悔上课睡觉了,呵呵~~
> >
> >
> > 一些人对于分析方法等抱着不以为然的态度,认识多是浮于表面,比如对于数据结构和算法的淡漠,觉得在Web开发中极少或不可能触及到这些内容。诚然,现在的Web开发脚本语言都有丰富的函数,灵巧的使用方式,多数已经不需要再像C语言一样声名变量、创建指针、计算内存地址、写排序算法。而且基于互联网的不可预知性,也很难有一个完美的算法解决所有情况下的问题,比如排序。程序员在这种情况下都是使用语言内置的各种功能在完成操作,当然我不是说什么都要从头开始自己写,那是莽夫做的傻事,但是我想,既然用了,多多少少也应该知道函数是怎么回事。自己写的function是函数,系统提供的就不是函数了么?不求看懂源码,至少也应该知道它是在做什么。每天追求执行效率和页面执行时间的程序员,更是忽略了系统函数本身的效率问题,把所有的系统函数都想象成了汇编中的NOOP这种单元操作。
> >
> >
> >
> > Web开发中碰到的算法问题很少么?举一个小例子:iForum论坛(前年我在上海看过)中记载用户组权限的方法,是在数据表中插入一条类似11110010011100的字符串,每一位代表一种操作,1就是表示有权限进行操作,0就是没有。这种方式很简单实用,但是它受到Varchar的长度限制(虽然255种操作已经足够复杂了),而且字符串的计算效率又是低于数字,那么有没有想过这种算法的本质是什么呢?有没有想过优化它呢?
> >
> >
> > 中国古代有一套数学理论叫做"盈不足术",例如,有十只盒子,第一个盒子里放一个盘子,第二个盒子里放两只,第三个盒子里放四只,第四个盒子里放八只……第九个盒子里放256只,第十个盒子放512只,即第N只箱子里放2^(N-1)只盘子,一共1023只。那么命题如下:在1023这个数字之内,任何一个数目都可以由这十只盒子里的几只组合相加而成(大家自己算算就知道了……呵呵)。
> >
> > 那么1、2、4、8、16、32、64、128、256、512这个序列为什么有这么个魔力?这个数列的特点:1、每项是后一项的二倍,2、每项都比前面所有项的和大,而且大1。这个1就是关键,就因为这个1,它才可以按1递增,拼出总和之内任意一个整数。这个序列叫做超递增序列,它是解决背包问题的基础。
> >
> > 对于一个整数,假设377,它的二进制表示为"101111001",它就是由第一只、第四只、第五只、第六只、第七只和第九只箱子拼成的,对于一个表现了9种操作的描述,377就是这个描述下的一个实例,是一个权值。
> > 那么相比于保存这个字符串和保存这样一个数值,好处和坏处都在哪里呢~~很明显的,保存字符串的好处是运算压力小。我们可能听过一个故事,就是把这个超递增序列延伸到第64项,就是那个术士和皇帝在国际象棋棋盘上要米粒的传说。64项的和是一个天文数字!但是不要忘了,计算机本身就是一个只认识二进制的机器!(这点很多Web程序员都忽视了,很多人不知道位操作是什么玩意)有人担心数据库的int不够长,那么既然可以保存一个只有0、1组成的varchar字符串,为什么不能保存一个十六进制的字符串,有人规定varchar只能保存01吗?十六进制串的长度正好是二进制的四分之一,而十六进制到二进制的转化是非常直接方便的。
> >
> >
> > 以上就是这个权限串的由来,不知道有多少web程序员想到过这些……而一个C或汇编程序员看到这个字符串第一眼就会想起这是个十进制的15516(当然不是马上就算得出来)。
> > 由此引出的和web相关的,比如多选框的保存,投票选项的保存等等……
> >
> >
> > Web程序员需要学习一些数据结构、算法分析等知识,虽然在工作中不会使用得那么明显,但是这些概念是学习本身语言的一个很好的催化剂,它会让程序员更有效地理解资料上的信息,达到事半功倍的目的,也会在问题陷入苦处不得解脱时候帮助开发者理清头绪,以一个清晰的思维过程找到解决问题的突破点。
> >
> > 阻碍程序员学习这些的原因,第一就是基础学科不扎实,比如数学。计算机划分为理工科是非常有道理的,计算机科学建立在深厚庞大的数学系统之上,至于如何学数学……这是功夫问题了。第二是心理障碍,觉得离开学校就学不好。自然学校是学习基础学科的最好地方,但是往往工作上需要的知识更贴近实际,在实际中学习通常会比在枯燥的书本上搬东西效果更好。第三是客观原因:从业者多半工作都很忙,业余时间很少(这几乎是程序员的标志),那么学习只能在工作中见缝插针,这种学习方式需要会用巧功,会联系。第四个就是信息来源。现在适合Web程序员学习,根据Web脚本语言特点编写的基础类书籍太少了!比如数据结构类书籍多半是以C/C++/Pascal这类强类型的严谨的传统语言为描述基础,操作系统原理多是以汇编等底层脚本描述,设计思想多是以Java这种纯OO的语言为主,我没有发现有使用Perl这种怪异的语言教授数据结构的学校。
> >
> >
> > 基于以上的研究结果,我们可以有条理地整理思路,多站在Web程序员的角度上考虑,做出一些适合这个特殊群体学习提高的有意义的活动。
> >
> > (――NP博士,2006年6月12日夜)
> >
> > from: http://conanmusic.spaces.msn.com/PersonalSpace.aspx
> >
> >
> >
> > --
> > 大郎(IT民工,目前在南昌)
> > iexper at gmail.com
> > blog: http://www.iexper.com/blog/
> >
> > _______________________________________________
> > python-chinese
> > Post: send python-chinese at lists.python.cn
> > Subscribe: send subscribe to python-chinese-request at lists.python.cn
> > Unsubscribe: send unsubscribe to
> > python-chinese-request at lists.python.cn
> > Detail Info: http://python.cn/mailman/listinfo/python-chinese
> >
> >
> >
> >
> > _______________________________________________
> > python-chinese
> > Post: send python-chinese at lists.python.cn
> > Subscribe: send subscribe to python-chinese-request at lists.python.cn
> > Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> > Detail Info: http://python.cn/mailman/listinfo/python-chinese
> >
> >
>
>
> --
> 『忙忙碌碌   ★   碌碌无为』
>
> ――――一只小蚂蚁――――
> http://blog.csdn.net/qixiang_nj
>
> Tel:13851402330
> QQ:375621797
> MSN:qixiangnj at gmail.com
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>


-- 
_______________________________________________
Python中文技术讨论邮件列表
发言: 发邮件到 python-chinese at lists.python.cn
订阅: 发送 subscribe 到 python-chinese-request at lists.python.cn
退订: 发送 unsubscribe 到  python-chinese-request at lists.python.cn
详细说明: http://python.cn/mailman/listinfo/python-chinese
My webSite: http://www.scweb.cn
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060619/7bd1392d/attachment-0001.html

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月20日 星期二 15:29

Ericzhao82 ericzhao82 at gmail.com
Tue Jun 20 15:29:36 HKT 2006

我还很菜,理解、感触不深。

不过这篇文的老大,能想"Linux鸟哥"一样,写一些帮助小菜的文,多分享下实际一些的经验就完美了

在06-6-19,Lea. Cen <leacen at gmail.com> 写道:
>
> 写的很好!很经典!
>
> On 6/19/06, 一只小蚂蚁 <qixiangnj at gmail.com> wrote:
>
> > 好文!
>
> 在06-6-19,HoLin <holin.he at gmail.com> 写道:
>
> > 有点感触。思考ing
> >
> >  On 6/19/06, 大郎 < iexper at gmail.com> wrote:
> >
> > >    作者:奶瓶 <http://conanmusic.spaces.msn.com/PersonalSpace.aspx>
> > 程序员是一个脆弱、特殊的群体,以各种方式生存在有01的世界里。
> >
> > 程序员的特点:
> > 狂躁,但是有修养
> > 随和,但是疯癫
> > 肯向任何人学,但是不服任何人
> > 守约,但是不守时
> > 感情丰富,但是单纯
> > ……
> >
> > Web程序是程序员中的一个别具特色的群体,他们有着和HTTP协议类似的无状态性、无序性、不可预测性。我这么说,是因为web程序员的出身、成分、学习途径、从业历程多种多样。Web程序员,是现今IT从业者中最具活力也最复杂的最可爱的一群人。
> >
> >
> > 相比于传统的"学院派"程序员(请暂时允许我这么说),Web程序员的普遍出身都比较"贫寒",这是行业事实,尤其是处于刚入行不久的这一大部分人中,有很多是没有上过大学,受过正常高校教育体制折磨的。高中、专科甚至初中学历的程序员比比皆是,他们通过自己的努力,掌握了一定的技能,取得了一项不错的工作。
> >
> >
> > "学院派"包括很多集团性质的大规模开发活动,外包项目,基于底层或硬件的开发,研究性的开发等等,体现在开发工具上多集中于C、C++、Ada等学院气息浓厚的语言,Java在某种程度上也可以算作其中,他们的特点是基础牢固、严谨、重视内在,又有些枯燥的味道。Web开发更倾向与灵活、开发效率和表现形式。
> >
> >
> > 然而由于各种原因,很多高等学府中的学生有一种很不正确的误解,认为Web开发是低于传统开发的,没有水平的,浮躁的,实在没工作的表现,从而看不起它。相对的,很多Web从业者认为大学生毕业后去的大公司的工作是死板的,缺乏创造性的,枯燥的,没有真才实学的,更认为大学里学不到什么,从而也看不起,甚至仇视大学教育(包括一些受过高等教育的人)。这是一个非常现实的矛盾。
> >
> >
> > 当然这个矛盾只是集中没有毕业的学生和从业时间不长的人群中,等到工作一段时间之后,相互接触得多了,都会觉得自己原本并没有体验到对方的真实内涵。传统开发中有很多富有创造性富有激情的内容值得互联网行业借鉴,而Web开发中千奇百怪的想法和时刻面对亿万用户的几乎无法预测的使用环境都是传统开发者觉得羡慕不已的,而两者结合更是体现了学院的严谨、知识的重要、来自用户的成败决定性,比如搜索引擎,比如企业级的B/S分布系统。
> >
> > 一个精熟C语言并有着丰富经验的人,转行从事Web开发是比较快的,甚至可以说是如鱼得水,但是一个做了两年PHP而又没有什么其它的语言背景的程序员,在自身发展上就会受到阻碍了。任何一门语言上升到一定高度,它所面对的问题已经不再是这门语言本身。语言只是工具,使用工具的方法才是生产效率的决定因素。熟习了语言之后,慢慢地在工作中会碰到诸如执行效率、存储方法、算法优化等更多偏向分析而不是代码艺术的内容。通常对于一个没有受过系统的计算机教育,没有受过自认为"没用"的大学培养的程序员,在这些问题面前表现都是比较盲目、无助的。很多问题需要严整的数学分析,查阅参考资料需要比较好的英文水平和数学基础,聪明一点的会马上意识到大学基础教育的重要性,多半都会后悔上课睡觉了,呵呵~~
> >
> >
> > 一些人对于分析方法等抱着不以为然的态度,认识多是浮于表面,比如对于数据结构和算法的淡漠,觉得在Web开发中极少或不可能触及到这些内容。诚然,现在的Web开发脚本语言都有丰富的函数,灵巧的使用方式,多数已经不需要再像C语言一样声名变量、创建指针、计算内存地址、写排序算法。而且基于互联网的不可预知性,也很难有一个完美的算法解决所有情况下的问题,比如排序。程序员在这种情况下都是使用语言内置的各种功能在完成操作,当然我不是说什么都要从头开始自己写,那是莽夫做的傻事,但是我想,既然用了,多多少少也应该知道函数是怎么回事。自己写的function是函数,系统提供的就不是函数了么?不求看懂源码,至少也应该知道它是在做什么。每天追求执行效率和页面执行时间的程序员,更是忽略了系统函数本身的效率问题,把所有的系统函数都想象成了汇编中的NOOP这种单元操作。
> >
> >
> >
> > Web开发中碰到的算法问题很少么?举一个小例子:iForum论坛(前年我在上海看过)中记载用户组权限的方法,是在数据表中插入一条类似11110010011100的字符串,每一位代表一种操作,1就是表示有权限进行操作,0就是没有。这种方式很简单实用,但是它受到Varchar的长度限制(虽然255种操作已经足够复杂了),而且字符串的计算效率又是低于数字,那么有没有想过这种算法的本质是什么呢?有没有想过优化它呢?
> >
> >
> > 中国古代有一套数学理论叫做"盈不足术",例如,有十只盒子,第一个盒子里放一个盘子,第二个盒子里放两只,第三个盒子里放四只,第四个盒子里放八只……第九个盒子里放256只,第十个盒子放512只,即第N只箱子里放2^(N-1)只盘子,一共1023只。那么命题如下:在1023这个数字之内,任何一个数目都可以由这十只盒子里的几只组合相加而成(大家自己算算就知道了……呵呵)。
> >
> > 那么1、2、4、8、16、32、64、128、256、512这个序列为什么有这么个魔力?这个数列的特点:1、每项是后一项的二倍,2、每项都比前面所有项的和大,而且大1。这个1就是关键,就因为这个1,它才可以按1递增,拼出总和之内任意一个整数。这个序列叫做超递增序列,它是解决背包问题的基础。
> >
> > 对于一个整数,假设377,它的二进制表示为"101111001",它就是由第一只、第四只、第五只、第六只、第七只和第九只箱子拼成的,对于一个表现了9种操作的描述,377就是这个描述下的一个实例,是一个权值。
> > 那么相比于保存这个字符串和保存这样一个数值,好处和坏处都在哪里呢~~很明显的,保存字符串的好处是运算压力小。我们可能听过一个故事,就是把这个超递增序列延伸到第64项,就是那个术士和皇帝在国际象棋棋盘上要米粒的传说。64项的和是一个天文数字!但是不要忘了,计算机本身就是一个只认识二进制的机器!(这点很多Web程序员都忽视了,很多人不知道位操作是什么玩意)有人担心数据库的int不够长,那么既然可以保存一个只有0、1组成的varchar字符串,为什么不能保存一个十六进制的字符串,有人规定varchar只能保存01吗?十六进制串的长度正好是二进制的四分之一,而十六进制到二进制的转化是非常直接方便的。
> >
> >
> > 以上就是这个权限串的由来,不知道有多少web程序员想到过这些……而一个C或汇编程序员看到这个字符串第一眼就会想起这是个十进制的15516(当然不是马上就算得出来)。
> > 由此引出的和web相关的,比如多选框的保存,投票选项的保存等等……
> >
> >
> > Web程序员需要学习一些数据结构、算法分析等知识,虽然在工作中不会使用得那么明显,但是这些概念是学习本身语言的一个很好的催化剂,它会让程序员更有效地理解资料上的信息,达到事半功倍的目的,也会在问题陷入苦处不得解脱时候帮助开发者理清头绪,以一个清晰的思维过程找到解决问题的突破点。
> >
> > 阻碍程序员学习这些的原因,第一就是基础学科不扎实,比如数学。计算机划分为理工科是非常有道理的,计算机科学建立在深厚庞大的数学系统之上,至于如何学数学……这是功夫问题了。第二是心理障碍,觉得离开学校就学不好。自然学校是学习基础学科的最好地方,但是往往工作上需要的知识更贴近实际,在实际中学习通常会比在枯燥的书本上搬东西效果更好。第三是客观原因:从业者多半工作都很忙,业余时间很少(这几乎是程序员的标志),那么学习只能在工作中见缝插针,这种学习方式需要会用巧功,会联系。第四个就是信息来源。现在适合Web程序员学习,根据Web脚本语言特点编写的基础类书籍太少了!比如数据结构类书籍多半是以C/C++/Pascal这类强类型的严谨的传统语言为描述基础,操作系统原理多是以汇编等底层脚本描述,设计思想多是以Java这种纯OO的语言为主,我没有发现有使用Perl这种怪异的语言教授数据结构的学校。
> >
> >
> > 基于以上的研究结果,我们可以有条理地整理思路,多站在Web程序员的角度上考虑,做出一些适合这个特殊群体学习提高的有意义的活动。
> >
> > (――NP博士,2006年6月12日夜)
> >
> > from: http://conanmusic.spaces.msn.com/PersonalSpace.aspx
> >
> >
> >
> > --
> > 大郎(IT民工,目前在南昌)
> > iexper at gmail.com
> > blog: http://www.iexper.com/blog/
> >
> > _______________________________________________
> > python-chinese
> > Post: send python-chinese at lists.python.cn
> > Subscribe: send subscribe to python-chinese-request at lists.python.cn
> > Unsubscribe: send unsubscribe to
> > python-chinese-request at lists.python.cn
> > Detail Info: http://python.cn/mailman/listinfo/python-chinese
> >
> >
> >
> >
> > _______________________________________________
> > python-chinese
> > Post: send python-chinese at lists.python.cn
> > Subscribe: send subscribe to python-chinese-request at lists.python.cn
> > Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> > Detail Info: http://python.cn/mailman/listinfo/python-chinese
> >
> >
>
>
> --
> 『忙忙碌碌   ★   碌碌无为』
>
> ――――一只小蚂蚁――――
> http://blog.csdn.net/qixiang_nj
>
> Tel:13851402330
> QQ:375621797
> MSN:qixiangnj at gmail.com
>
> _______________________________________________
>
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>
>
>
> --
> _______________________________________________
> Python中文技术讨论邮件列表
> 发言: 发邮件到 python-chinese at lists.python.cn
> 订阅: 发送 subscribe 到 python-chinese-request at lists.python.cn
> 退订: 发送 unsubscribe 到  python-chinese-request at lists.python.cn
> 详细说明: http://python.cn/mailman/listinfo/python-chinese
> My webSite: http://www.scweb.cn
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>


-- 
…………………………………………
               Ericzhao

Email:   Ericzhao82 at gmail.com
MSN:    Ericzhao_82 at hotmail.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060620/3a968a6f/attachment.html

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月20日 星期二 21:00

zhang peng finalmdj at gmail.com
Tue Jun 20 21:00:25 HKT 2006

以上就是这个权限串的由来,不知道有多少web程序员想到过这些……而一个C或汇编程序员看到这个字符串第一眼就会想起这是个十进制的15516(当然不是马上就算得出来)。

~~~~~~~~~~~~~~~~~~
   原来是这样哦~  有没有这个的资料什么的
想学一下
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060620/d2febe8d/attachment.html

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月20日 星期二 21:13

xxmplus xxmplus at gmail.com
Tue Jun 20 21:13:28 HKT 2006

我怎么觉得周围写web的一个比一个学历高呢

On 6/20/06, zhang peng <finalmdj at gmail.com> wrote:
>
> 以上就是这个权限串的由来,不知道有多少web程序员想到过这些……而一个C或汇编程序员看到这个字符串第一眼就会想起这是个十进制的15516(当然不是马上就算得出来)。
>
> ~~~~~~~~~~~~~~~~~~
>    原来是这样哦~  有没有这个的资料什么的
> 想学一下
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to
> python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to
> python-chinese-request at lists.python.cn
> Detail Info:
> http://python.cn/mailman/listinfo/python-chinese
>
>

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月20日 星期二 21:16

yi huang yi.codeplayer at gmail.com
Tue Jun 20 21:16:21 HKT 2006

web火着呢,而且越来越复杂了。


-- 
http://codeplayer.blogbus.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060620/4d685dd6/attachment.htm

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月21日 星期三 08:40

Lea.Cen leacen at gmail.com
Wed Jun 21 08:40:33 HKT 2006

不是都在吼什么web service的时代来了吗?呵呵!

还有,现在的web也不是那么的好开发的!简单的也简单,复杂的还是复杂!呵呵


On 6/20/06, yi huang <yi.codeplayer at gmail.com> wrote:
>
> web火着呢,而且越来越复杂了。
>
>
>
> --
> http://codeplayer.blogbus.com/
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>


-- 
_______________________________________________
Python中文技术讨论邮件列表
发言: 发邮件到 python-chinese at lists.python.cn
订阅: 发送 subscribe 到 python-chinese-request at lists.python.cn
退订: 发送 unsubscribe 到  python-chinese-request at lists.python.cn
详细说明: http://python.cn/mailman/listinfo/python-chinese
My webSite: http://www.scweb.cn
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060621/e3d82905/attachment-0001.html

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月21日 星期三 10:31

wang dy dongyang.wang at gmail.com
Wed Jun 21 10:31:08 HKT 2006

经过SUN,IBM,BEA等大厂商的不断努力,web开发越来越复杂了,难度越来越高了,项目越来越有赚头了

2006/6/20, yi huang <yi.codeplayer at gmail.com>:
>
> web火着呢,而且越来越复杂了。
>
>
>
> --
> http://codeplayer.blogbus.com/
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060621/ffdb6f1b/attachment.htm

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月26日 星期一 09:33

麦田守望者 qcxhome at gmail.com
Mon Jun 26 09:33:53 HKT 2006

现在很喜欢Gmail组织邮件的方式,阅读邮件很方便。

Thunderbird用来离线写邮件,非常好啊!

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2025

    京ICP备05028076号