知识积累整理::

[self]邮件列表整理

[self]《提问的智慧》

[self]编程之道

[WWW] TPCI--开发语言排行榜注1

1. Freedom 综述

logo_flosspols_kleur2

[WWW] Free-Libre and Open Source Software
自由/开放源代码软件 资料汇编

相关的思想性文章...

  • 1

    这个排行榜每月更新一次,其排名顺序按照世界范围内的技术工程师、讲师、第三方厂商的调查依据,并查询了目前流行的搜索引擎:Google,MSN, Yahoo,结合前两者的数据计算后得出的。根据TIOBE的观点,此排行榜是被程序员们用来检查自己的程序技能是否过时,或者作为建立新的软件系统时进行参考之依据,并非意味着哪种语言是最好的

2. 知识森林

集中一些优秀的开源项目的文档,资料,代码,思想…………

2.1. LAMPs

若想进行跨平台的解决方案, 那就没有绝对的事情!

  • LAMPs-LAMP“明灯”照亮我们的Web事业

    • Linux

开源!最核心的动力!

  • Apache

最 Power 的永远的 Web 服务器... Apache.org 旗下汇集了无数强力的开源项目,严然与成为开源开发的管理中心

  • PHP - Hypertext Preprocessor

最流行的嵌入库试动态网页脚本

2.1.1. Linux

  • 拯救了自由的系统!

    • ReHat--Fedora ; 最容易安装的分发之一,但是现在RedHat 不对个人版的支持....

2.1.2. FreeBSD

2.1.3. Lisp

古老优美的脚本语言

2.2. DB

  • MySQL

最流行的快速轻型DB

最Mini的高级关系型DB

  • ZODB -- 高效对象型数据库

2.3. Text!

文可文,非常文。本可文,非常本。文本,数据之始,字符,万思之母...

  • 文本作为最基础的数据格式从来没有在计算机世界中消失,而且以最快的发展速度在支持着我们最狂妄的需求!

  • 文本文件好 
    工具遍地跑
    程序两三行
    全部改好了
    

    -- [WWW] 文本文件好 - Blog on 27th Floor

2.3.1. 结构化文本[StructureText]

使用缩进和简单的符号来标识文档结构的文本

  • ST -- 基础结构化文本

  • reST -- 新结构化文本

  • PyTextile -- 模糊化的标记文本

  • txt2tags -- 多模式结构文本 Python 应用!

  • [WWW] AsciiDoc -- 简单方便的文本转换格式,支持HTML, Linux Man Page, Docbook

2.3.2. 标记文本[TagText]

标记文本!是XML的依存之道!

2.3.2.1. XML
2.3.2.2. 文章专用标签文本[DocBook]

2.3.3. TeX

  • LaTeX 使用技巧

  • Py2TeX将Python代码转换成TeX格式

2.3.4. 文本转换

2.4. 图象处理

含有章节索引的中文 文章模板

::-- hoxide [2005-07-29 19:08:23]

2.4.1. Python Imaging Library

2.4.2. ImageMagick

2.5. C / C++

  • glibc GNU C Library 的一些资料

  • wxWidgets wxWidgets是与MFC相似的框架,不同的一点是,它具有跨平台(MultiPlatform)的特性。

2.6. Python

一种精心设计出来的脚本语言,使你可以快捷的实现任何愿望!

2.6.1. Pythonology 蠎学!

pythonology-mac[WWW] Build Better Software Faster with Python

2.6.1.1. Python 版本

追踪不同版本间的特性差异

2.6.1.2. Jython

差点儿死的咖啡蟒

2.6.1.3. 中蟒

总是被国人诟病的奇妙的Python 方言

2.6.1.4. Py Books

Pythonic 推广项目,组织,收集各种Python 学习,应用资料,进行推广宣传活动! Hoxide 发起

::-- ZoomQuiet [2005-03-20 04:58:51]

2.6.2. 缘起 Pythonic 推广

简述

  • 开源者, 不仅自己使用开放的软件, 同时也应该将这些美妙的东西介绍给别人, 共享是开源的精神基础. Python是我们的媒介, 是宣传开源和开源的切入点.

2.6.2.0.1. 历史
  • 2004 年 3-6 月, Hoxide在数学学院机房, 6次讲解, 第一次将python介绍到了苏州大学.

  • 2004 年 11 月, Hoxide 《漫谈开源软件》, 将开源软件和开源精神作为一个整体一起介绍.

  • 2005 年 4 月, Hoxide 《漫谈python语言》, 一个时长两个小时的python介绍, 概览python的语言特性和应用实例. 其间还分发了刻有python软件的光盘.

2.6.2.0.2. 计划
  • 2005 年 9-10 月, Python聚会? S(anghai/uzhou) Python User Group 发起? 组织活动?

  • ..., Python 的科学应用?

  • 2005年 11月在北京师范大学,应邀进行一系列的宣讲活动 -- SpreadPyInBjTeachers

2.6.2.0.3. 资料收集

教学类图书

  • OpenBookProject -- 开放图书计划!使用DocBook 标准化的生产/维护/创建/推广好书! OsmondLiang创立 CDBE 作者

    • PyProgFaq -- 《Python编程FAQ》-- 由liqust翻译

      • PyFaqDict -- 总是要回答的基础的不能再基础的一些概念词典!

    • PyIAQ -- Python 罕见问题集!

    • PySourceCode -- 从Python源码中来,到Python应用中去

    • PyCookbook - Python 食谱

    • DiveIntoPythonZh -- 《深入Python》中文翻译项目

      • 好书不常有,好书常更新,我们读好书,好书要常读,常读常更新,永远是好书!

    • TPiP - Py 的文本处理

    • PyTwisted - Twisted 一个功能丰富的高性能socket开发框架

    • [self]Python开发编码规范 --- hoxide dreamingk 贡献


API类手册

宣传文档

2.6.2.1. Py Tips
2.6.2.2. Python 学习笔记

Py 之灵活好学又是可以体现在大家各有入门妙方!倡议记录在案哪!

2.6.2.2.1. fall in Pythonic

初学者如何快速入门?

  • 是也乎是也乎!非常积极的活动,鼎力支持! -- ZoomQuiet

2.6.3. Py 4 distribute

ejwe <[email protected]> 
回复: [email protected]
收件人: [email protected]
日期: 2005-11-24 下午2:29
主题: [python-chinese] 如何“编译”Python程序[转]

如何编译python程序(或者如何由python生成可执行文件)是一个非常常见的问题,总是有人问,列出来,google搜索的时候就可以看到了。如果还有人说"找不到相关资料",唯一的解释就是这个人太懒了,根本没有去找。

如果转载,请注明出处。

  1. python(及其它高级的脚本语言)不存在把指令编译到本地代码的工具,但是总是可以发布可执行文件。

我觉得py2exe等等工具还是罗嗦,需要在配置文件中写上需要的数据文件作者完全无视这样一个事实:我需要发布可执行文件的时候,程序已经完工了,所有的数据文件就在主程序所在目录下,所以多数情况下,根本不用到别的地方搜索。

  1. py2exe [WWW] http://py2exe.sf.net

只支持windows平台,应该是大家听到最多的一个名字了,用户不少,所以有问题的话在它的mail list里面很容易找到答案。文档中提到了"无法找到某某code"、使用opengl等模块的问题

  1. Installer [WWW] http://www.mcmillan-inc.com/installer_dnld.html

可以产生windows、linux平台的可执行文件,现在作者主页连不上去了,但是搜索一下可以在其它地方下载 自带一个小程序写配置文件,如果程序较复杂,还是需要手工修改这个配置文件

  1. Python自带的freeze(不过windows版本不带这个,你可以自己下载python的源程序再找)。这个是我最不推荐的一种方法(为什么?自己看),不过如果你的python程序要发布到其它工具不支持的平台上,可以考虑这个方法

  2. 新出来的Pyco [WWW] http://www.pythonapocrypha.com/projects/pyco/

还没用过

  1. Squeeze [WWW] http://starship.python.net/crew/fredrik/ipa/squeeze.htm

还没用过,只支持python 1.4

  1. cx_Freeze [WWW] http://starship.python.net/crew/atuining/cx_Freeze/

winodws、linux平台。简单的程序甚至都不需要写配置文件

  1. Stand alone Python for Windows [WWW] http://arctrix.com/nas/python/standalone.html

如果你不介意源程序太过"暴露"的话,用这个吧 会不会觉得Updated: Sun, 09 Apr 2000 18:39:54 -0600 扎眼?如果你看一看它的VC源代码,就不会这么想了——其实这是普遍适用于win系统的方法,无论是98、2000或者xp。也许也可以用到linux上——我不懂linux,如果真的可以这么做,还请告诉我。

  1. py2app [WWW] http://undefined.org/python/

支持linux平台的工具可能也支持mac os,或者直接使用这个py2app。具体就不知道了,只吃过苹果,还没玩过苹果呢

  1. 另类的方法,对python语言都还不是100%支持,众多的CPython模块也不可以使用,还有,我也没有试过:

    1. for .NET的python编译器(如Visual Python),不过我可不喜欢为了一个芝麻大的软件安装.NET framework

    2. 用jython,然后用jbuilder、jsmooth、NativeJ之类的包裹一下,或者用gcj编译成本地代码 [WWW] http://blender.blogchina.com/523381.html

反馈

  • 还有使用 .egg 的 setuptools 那 —— ZoomQuiet

  • 我用wxPython给py2exe做了个界面,有兴趣可以试试.[WWW] py2exe_gui —— 0.706

2.6.4. Py 4 Mobile

Python 在移动设备中的开发

  • PyMobileDev -- 如何在移动设备中开发Python 应用

2.6.5. Py 4 Chinese

Python 中文 开发技巧

2.6.5.1. 中文Python资源

2.6.6. Py 4 IDE/GUI

Python 综合开发环境

Python GUI 开发技术

  • PyGtk -- GTK 的Py 开发

  • PyTk -- Tk/Tkinter 的Py 开发

2.6.7. Py 4 Web

Python web 开发技巧

2.6.8. Py Web 应用平台(Application Frameworks)

[WWW] WebProgramming - PythonInfo Wiki

2.6.8.1. CherryPy
2.6.8.2. Snakelets
2.6.8.3. Karrigell

KarriGell -- 永远安心工作的“推车”

2.6.8.4. 堂吉诃德
2.6.8.5. TurboGears
2.6.8.6. Django
  • DjanGo -- 悄悄开发成功的高级 Web Framework, 比以前的,更加注重整体设计

2.6.8.7. 悟空智轮
  • WukooPy -- lihui 混合 Karrigell 和 Quixote 创造的 一个应用轮子

    • 哈哈哈!别直接龙了,叫 蟒龙是也乎?

2.6.8.8. ikaaro
  • IkaaRo -- 从工具包入手的CMS 构建包

2.6.8.9. atocha
  • atocha -- 一个围绕表单的web framework

    • 感觉还不错,可以考虑嵌在其它的web应用中用来生成表单 -- Limodou

2.6.8.10. webpy
2.6.8.11. pylons
  • pylons

2.6.8.12. paste
  • paste

2.6.8.13. Myghty
2.6.8.14. colubrid
  • colubrid

2.6.8.15. aquarium
  • aquarium

Pythonic Web 应用平台对比

2.6.9. TurboGears vs Django

对比集中在高压力环境稳定性sqlobject的发展结合

2.6.9.1. gasolin 曰
发件人: [email protected] <[email protected]> 
回复: [email protected]
收件人: "python.cn" <[email protected]>
日期: 2005-9-19 下午9:32
主题: TurboGears vs Django

这几天从limodou兄的blog中看到 TurboGears 这个框架,看完演示教程后相当为之惊艳.

Django 跟 TurboGears 的出现提供了一个相当 pythonic 的解决方案 (python + HTML :D).

不需要使用资料库查询语言(SQL)或额外的资料库设计修改工具是一大特色.

TurboGears (Python) 是在 cherrypy +SQLObject等的基础之上整合相当成功的框架.

其计划的核心概念是不重复发明轮子, 而是把 python中的各轮子组成有用的框架.计划主要的工作是提供简化的安装, 设定, 操作,与文件.

  • 我们的 WuKooPy 也是这意思,不过关注的深度比较浅 -- ZoomQuiet

之前 Ruby on rails 超热的时候似乎 python 社群有个 SUBWAY计划想达成类似的事情,但一听就知道是想复制 ROR 的计划,并未提出相当的成果.

两者较不同的是 Django提供预设的资料库增删修改介面, 而 TGP似乎还没发展这块.

比起 Django 来说, TurboGears 更吸引我的是整合 AJAX 支援,

Django 跟 TurboGears 相比无论安装, 使用上都复杂许多,而 Django 从头开发也意味着目前 python web开发社群要使用这框架也得多花费心力去学习.

TGP 是由 python script 组成的 controller 呼叫 SQLObject来读出资料库中的资料,再以字典形式传值到样板中当作动态语言的变数.

达成资料库(model)--controller--template (View) 的 MVC 架构

传出的格式如

{data=content, pagename=page.pagename}

这样一次收集所有用到的参数,接收用

[div] py:replace="data"/ Page text goes here.[/div] 

这样在标签中加"py:replace"的格式插入参数,

Ruby on rails 或 Django 每加一页新的资料, 要处理的 MVC关连似乎不及TurboGears 承袭 cherrypy架构(不知有无说错?)的简单明了

TurboGears 教程中是由单一的 controller (标准的 python class) 呼叫 SQLObject来读出资料库中的资料, 再以字典形式传值到样板中当作动态语言的变数.

 达成资料库(model)--controller--template (View)  的 MVC 架构.

  • 由 controller 传出的格式如 {data=content,pagename=page.pagename}

一次收集网页样板将用到的 data 跟pagename 参数.

网页样板 template 接收用[div] py:replace="data"] 内容显示在这里 [/div] 实际显示时会将"内容显示在这里"这段替换成资料集"data"中的内容.

要在网页样板中调用这几个参数有两个方式.

  • 第一种是可以在标签中加py:replace="data", 来插入 data字典参数;

  • 或是使用类似一般动态语言给参数的方式 ${data} 插入data 字典参数.

    • 注意第二种的格式还是跟 python调用字典的感觉很像.

间中用到的 HTML, ini 都算是基本的内容,用起来没什么要另外学东西的负担.

Django (或 Ruby on rails)每加一页新的资料,都要分别处理对应的 controller.关连似乎不及 TurboGears 承袭 cherrypy 架构可使用单一controller 的简单明了(不知有无说错?)

  • 因此我认为相比之下 TurboGears 成功的机率更大些.

2.6.9.2. limodou 曰
回复: [email protected] 
收件人: python-chinese列表 <[email protected]>
日期: 2005-11-14 上午10:24
主题: [python-chinese] Django vs. TurboGears

[PyCNmail]Django vs. TurboGears

看到列表中讨论 Django 和 TurboGears 的多了起来,我想就这两个web framework提出自已的一些看法,因为哪个都算不上精通,只是对某些方面多一些罢了,至今天除了按照django的教程做了一下,某它的就没做过。TurboGears方面也只是学过CherryPy而已,不过我从我个人的关注角度出来,希望对它们进行比较一下,大家可以补充,让比较更客观。另外因为我对DjanGo关注稍多一些,可能对于turbogears有些不正确的观点,请大家见谅。

  • DjanGoTurboGears 的优点

    1. 自动的admin界面,有用户和组的管理,这些代码不用你写了

    2. generic view,减少你写view的代码,模板当然还是要的

    3. 模块及模板均支持i18n。

    4. url采用正则表达示很有创意,这样可以规则你的url。另外通过正则表达式可以构造与方法调用无直接关系的链接形式,搜索引擎支持好。

    5. DjanGo的模板还可以自已扩展,很有趣,可以增加新的tag和filter,而且写起来挺简单。

    6. 有middleware,可以自已编写

    7. 应用安装方便

    8. 开发团队集中,目标一致

    9. 已经有网站的应用

  • TurboGearsDjanGo的优点

    1. ORM模块采用sqlobject,比DjanGo中的要成熟

    2. 支持ajax

    3. 充分利用了setuptools工具

    4. 宣传力度大,人数多,相对DjanGo活跃

  • 共同的优点:

    1. 文档做得都不错

    2. 都象ROR一样提供相应的命令行工具

  • 我的感觉是: -- ZoomQuiet

    • TG 是聪明的大杂烩,但是每种主料发展的不均衡一定会影响到TG的,当然集成 Ajax 是非常吸引人的

    • Dj 是一个美妙的新轮子 MTV 非常炫,但是远离了Pythonic, 回到Unix 神秘的命令行时代了,而且DB 操作调试,更加没谱了……

  • 这两天在看 TG 感觉到 TG并没有因为 它的杂而影响到他,相反的很多组建开始依赖 TG 来开发了,而且 TG 开始引入 Plugin的概念了,原来集成在 tg里面的 kid 模板组建 从 r459 开始分离出了TG 这样 TG现在就有了很多的 Template engine 了 TurboCheetah ,TurboStan TurboKid,TurboZpt ,这些个 Template engine 都会为 TG 带来更多的新鲜血液,吸引更多的开发者. 还有 ORM ,估计 Kevin Dangoor 也会渐渐的将 SQLObject作为 plugin来集成在 TG里面了,这样更多 好东西都会慢慢加入 TG了,但是估计CherryPy是换不掉了,现在看tg的maillist Kevin Dangoor 和 Cherrypy的团队合作很密切.呵呵,然后就是很让人期待的事情了 Kevin 打算在 pycon2006之前发布 1.0版本,现在每天就是看 TurboGears Repository Commits 都有些什么更新.

还有 TG的 Toolbox组件也非常的让人期待 modelDesigner的出现使得建模更加的快速和简单了,真正突显出了 TG 的快速开发. by bib

2.6.10. P2P

  • KenoSis -- 构建p2p网络的基础框架

2.6.11. P4EE

Python 企业环境应用探讨 Python for Enterprise Environment

2.6.11.1. mod_python

与Apache 紧密结合的支持组件!终于可以完好运行了

2.6.11.2. Zope
2.6.11.3. Dabo
  • DaBo -- 又一个默默发展的快速开发平台!

2.6.12. Pythonic 模板

2.6.12.1. ClearSilver

ClearSilver是一个高性能的模版系统,让我们看看他的使用网站,就知道他的表现有多好。

  • Bloglines

  • Google Groups

  • Yahoo Groups

Clearsilver-Architecture

2.6.12.2. 印度豹

cheetah-face-black-medium CheetahTemplateOrg -- 一个历史悠久的JAVA 模板系统的衍生,可以生成一切文本文件

2.6.12.3. Myghty Google 的利器

myghty_small.png MyghtyOrg -- 一个高速模板系统,几乎可以独立作为web 应用平台来使了

2.6.13. Py in M$

2.6.14. Python 实用开发包

2.6.15. Python 扩展与嵌入

  • Swig -- 最方便、强悍换python库扩展工具

2.7. JavaScript

最基本的动态Web 技术,但是研究下去...

2.7.1. 实用框架

2.7.2. Ajax

令JS 重新注目于世界的小花招

  • GoogleAjax -- Google 组织的Ajax 实现 -- 清风发起

    • PyBurlap -- Burlap协议的Python实现

2.7.3. js-elf

2.8. 文学编程

2.9. 设计模式

2.10. e-Learning 开放学习

电子学习? 互联时代的全新学习方式,在研究领域中是使用开源精神进行构筑的!

2.10.1. 思考·学习工具

2.11. Google.com

虽然是.com 但是!Google 从来不排斥开源!

2.11.1. GTalk - Jabbar 的盛宴!

  • GoogleTalkBot -- Google Talk Group 群聊守护机器人

    • 根据开放API 快捷完成的功能!!

2.12. Mozilla.org

绝对的开源项目中心,不仅仅是浏览器是也乎!

2.12.1. Greasemonkey

当红的客户端插件开发环境!

3. 算法研讨

语言之外的天地

-- Zoom.Quiet [2004-08-04 23:17:26]

last edited 2006-01-02 04:16:42 by ZoomQuiet