2008年12月21日星期日

哪个国家用塑料造币



 
 

jfp 通过 Google 阅读器发送给您的内容:

 
 

于 08-12-19 通过 烧荒网 作者:moorburn

2000年11月,中国人民银行发行我国第一套塑料流通纪念钞票。

塑料钞票,也称塑胶钞票、有机聚合物钞票。最早发行和使用塑料钞票的是澳大利亚。1966年,澳大利亚发现了一个试图伪造10元澳元的集团,联邦储备银行决定改变现行的印钞技术。1968年,联邦储备银行和科学与工业研究组织(COIRO)确定实施一项聚合物类材料和变光图案(OVD)相结合的:塑料货币方案"。经过20年的研制,1988年1月27日澳大利亚发行了建国200周年塑料纪念钞,面值10澳元。这也是世界上首次发行的塑料钞票。在 1992年至1996年期间,澳大利亚每年发行一枚塑料流通钞,面值分别为5元、10元、20元、50元、100元、,成为世界上唯一拥有整套塑料流通钞票的国家。其它一些国家也发行有塑料钞票的。如:

新加坡于1990年发行新加坡独立25周年塑料纪念钞票一枚,面值50元。

泰国于1996年发行泰国国王普密蓬登基50周年塑料纪念钞,面值50泰铢。翌年又发行了塑料流通纪念钞,面额50泰铢。

文莱于1996年发行一套3枚塑料流通钞,面额分别为1、5、10文莱元。

斯里兰卡于1990年发行国家独立50周年塑料纪念钞,面额200卢比。

科威特于1993年2月26日发行纪念(海湾战争)国家光复2周年塑料纪念钞,面额1第纳尔。

罗马尼亚于1999年发行日全食塑料纪念钞,面额2000列伊。

新西兰于1992年发行面值5元塑料流通钞。2000年又发行千禧塑料纪念钞,面值10元,同时有2连张、整版20连张。

巴比亚新几内亚于1991年开始,先后发行三套塑料钞,有纪念第九届太平洋体育比赛和国家银行成立20周年塑料纪念钞,也的塑料流通钞,面额均为2基纳。

西萨摩亚于1990年发行总统马列托亚.塔努马莫非利领导国家50周年塑料纪念钞,面值2塔拉。

巴西等国也发行了塑料钞票。

香港將推可循環再造的塑料鈔票。

近此年来塑料钞票正在同纸钞进行着一场激烈的竞争,有迹象表明,塑料可能逐步取代纸钞。


标签: , , | 分类:经管学院 | 本文链接 | 还没有评论
添加到:del.icio.us 烧荒网:烧荒公社烧荒OTO烧荒W计划



 
 

可从此处完成的操作:

 
 

俞君英,百分之九十九都在撞墙



 
 

jfp 通过 Google 阅读器发送给您的内容:

 
 

于 08-12-19 通过 科学松鼠会 作者:小蓟·夏静好

真的是一枚美女科学家哈,春末时写的,圣诞了,贴出来自己人看着玩吧。

年少轻狂,幸福时光

有报道称:她完成了一项有望问鼎诺贝尔奖的成果。而问起拿奖,西施故里长大的女生俞君英只是淡淡地答:"拿不拿奖,研究成果的重要性只是一方面,还要看很多因素的。"而她自己,只是"解决了自己希望解决的问题"。

今年,她是生命科学领域炙手可热的青年才俊。去年的11月20日,她作为第一作者的一篇文章发表在了《科学》杂志电子版上,文章宣布:俞君英所在的汤姆森实验室的一个研究小组把人体皮肤细胞成功改造成了类似胚胎干细胞的新型"万能细胞"。

70后生人,92年入北大,昔日的同学里,"留下来做研究的不多",做研究的人里面,她成就突出——35岁即崭露头角。可聊起当年转行的同学,"会不会为他们遗憾?"她却只是笑笑,答:"其实,有很多朋友中途转行,从事商业或其他,现在的生活状态,也不错,我也羡慕呢。"

在北大的讲座,不谈科学,主题是"展望事业,探讨人生"。那天天气微凉,她只穿了件纯白的短袖T恤,瘦瘦小小的一个人,说话也是单弱的江南口音,站在诺大一个讲台上,几乎消融不见。直到提问时间,在底下声声"学姐"的衬托下,这个江南女子才逐渐显出了些传奇里应有的青年科学家气质——镇定、幽默以及对自己行当的信心。仔细看看,果然,与去年媒体上铺天盖地的照片相比,头发更短,眼睛更亮,人更精神。讲座结束,北大生科院院刊的人上来,一定要请赐签名,却羞涩地摆手,自称书法太差。推辞不掉,才找个安稳处,在签名本上郑重地签上名字——不是汉字,是拼音:Junying Yu。

外国字对书法要求不高,她只写了十年便已写顺。1997年,俞君英赴美国宾西法尼亚大学攻读博士学位,2003年起在美国威斯康星大学麦迪逊分校汤姆森实验室工作。那是世界上为数不多的几个以干细胞研究闻名的实验室之一。1998年,正是这家实验室的创建人汤姆森从人类胚胎中首次分离出了胚胎干细胞。在那里,俞君英开始了自己的干细胞研究。

那是种神奇的细胞,1970年,美国科学家史蒂文斯在小鼠胚胎中发现了这类可分化形成数种不同细胞的"万能细胞"。科学家们想知道:能否尝试利用胚胎干细胞在体外培养细胞,再移植到体内修复受损脏器?

然而,要使用胚胎里的干细胞,首先需要面对伦理难题。要获得它们,难免要破坏胚胎,这就涉及了伦理问题。哪怕为了拯救另一个生命,破坏胚胎,道德吗?知名或不知名的学者、政治家对此各执一词。美国总统布什就坚决捍卫"胚胎自受精卵开始就是一个生命个体",在美国,某些州禁止将胚胎用于科研目的,另一些州则允许。

能否用其他方式获取干细胞?

答案是肯定的。俞君英他们努力了很久的方向正是把人类的皮肤细胞便会干细胞——就像……把成年人变回婴儿。

2006年8月,日本人山中申弥宣布,他们已通过基因操作,利用小鼠的皮肤细胞成功制成了全能细胞。老鼠身上成功了,人身上呢?这也许只是时间问题。

回想起来,俞君英是在当时第一次知道了自己还有个对手:大家想到了一块,而且,别人几乎走在了自己前面。虽然,"他们胜在实验对象是老鼠"。

一切变得像场赛跑:目标明确,几乎相同;方法清晰,大致相似。拼的是速度;也许,还有运气;再或许,还有参赛者的从容。

"后来的工作中,会不会很紧张,有赶时间的感觉吗?"

"压力是很现实的,不过当时心里也很平静,我觉得,当你在做一件事情的时候,做事是第一位的。我只是想解决我的问题。"

"赶得很辛苦吗?"

"也没有很辛苦了。我每天工作10小时,保证8小时睡眠,有几个助手也会帮忙,但他们比我投入的时间更少。"

"8小时(惊讶状),真的吗?"

"没错,睡眠不足8小时我没法工作。"

"但如果被别人抢了先,你就什么都没了,有没有想过?"

"嗯,有竞争。"低下头,俞君英考虑了一下,"但……大家方法不同,优势也各不相同。"

"另外,做研究,有时候需要点平常心。" 这是沉吟良久之后的补充。

2007年11月20日,比赛结束。俞君英所在的汤姆森实验室与日本京都大学的Yamanaka实验小组,分别在《科学》和《细胞》杂志电子版上发表文章宣布自己把人类的普通皮肤细胞转变成了干细胞。

两个小组的工作是分别独立完成的,他们都是通过向细胞中导入了4个基因完成了这项改造工作,但各组分别使用的4个导入基因中,有两个是完全不同的。(这里原本放了个小小的评价,八月的时候,见过了山中申弥先生,也是很好的人,儒雅、小帅。不忍心偏哪边向哪边了,不作评价罢。

比赛圆满结束且竞赛选手并列第一,翌日的《纽约时报》用大幅标题说:"绕开胚胎,得到干细胞"。汤姆森实验室中,直接从事这项工作的就是俞君英。虽然还只是名年轻的助理科学家,但因为研究的思路确立和主体实验都是她一个人完成,俞君英论文作者名单中,排在了第一位

说起实验室的"老板",俞君英却另有一番道理。她的讲座,第一张幻灯片就是一张八卦"老板"们的漫画。漫画来自《自然》杂志,用简洁的线条刻画了9种PI(Principal Investigator)。PI即实验室"老板",他们是告诉学生该做什么,该如何做以及发给学生工资的人。选PI难:太懒的学不到东西,能学到东西的又太严厉;没名气的不被人重视,太过出名却成了偶像派;不够大牌的拿不出手,太大牌则像上帝了,没有人想在一个全知又永不出错的上帝手底下工作……

底下学生便问:"那么,你的PI汤姆森是哪类?"

"喔,汤姆森……也许他是'上帝'那种,不过还好,他还愿意与学生交流。"

再问:"学生阶段找什么样的PI合适呢?"

"看你个人的特性了。但有几个原则,那个地方要给你足够的训练,又能提供给你一定的思考空间。毕竟,PHD阶段,你的主要任务是trainning自己。"回答时,是郑重的——这是正统的指导意见。

又问:"那么,如何做一个好PI?"

莞尔,答:"其实,作学生的时期,是做研究的人最幸福的时候。虽然看上去寄人篱下,钱也比较少,生活清苦,但做的事情很纯粹,只是努力去希望解答令自己困惑的问题就行了。做了PI,就没那么纯粹了,你需要考虑很多东西……"  

答着答着,声音低下去,有些沉默。忽然想起自己的责任来,便抬起头,嘴角上翘,补充:"所以,趁着年轻,扎扎实实、快快乐乐地作PHD吧。"

说这句时,她看着下面的未来科学家们,目光里,是鼓励。

某张幻灯片中,俞君英选的图片是个撞墙的小人,她指着小人解释:"这就是你从事科学工作的大部分工作状态。超过99.9%的工作都是在碰壁。"选择这个职业,"你需要足够坚韧的内心和足够的心理准备。"

提问:为什么从事今天这项研究工作?

俞君英:3个理由。

Health care,当然,我个人也知道,这种基础成果想应用到临床上,还很遥远;

Constant challenge,科学所能提供的这种持续的挑战,不是任何一件事情可以代替的;

Mentoring the next generation of scientists,作为一个科学家,你必然要有自己的实验室,你的实验室里会有很多年轻人,你有机会眼看着那些年轻科学家们成长起来。

提问:为什么选择从事研究?

俞君英:也曾试图去工作,没找到合适的。

提问:为什么会从事再生医学和干细胞相关研究?

俞君英:我从前是做植物分子研究的,在美国,这类研究是冷门。但植物具有最强大的再生能力。后来我还研究过卵细胞如何成熟。

虽然没有刻意去选择,我之前做的那些东西都对我今天的再生医学领域的研究很有帮助。可见,重要的不是你的题目,而是你有没有扎扎实实去做。

提问 :你选择干细胞研究方向时,预见到过今天的成就吗?

俞君英:知道这项工作很重要,但并不知道需要多长时间,当时是下决心做一辈子的。

提问:干细胞的相关研究还会继续热门吗?

俞君英:会,但最近好像有点过热了。

提问:对今天的学生,应该继续做研究还是去工作,你有建议么?

俞君英:看个人喜好吧。当然,你一旦作了决定 ,不论决心做什么,都该踏踏实实去做,以免浪费资源。

提问:汤姆森实验室对你们的研究成果都申请了专利,你对这个问题怎么看?会阻碍再生医学的进一步研究和应用吗?

俞君英:专利对基础研究和早期的应用研究都不是障碍。药厂想做商业用途的话,付钱也是应该的。

提问:你将来的方向会转向应用吗?

俞君英:应该不会,企业界虽然可以提供一些钱,但他们的资金都是支持最接近应用的成果的,科学研究有时需要经历一些看不到应用前景的阶段。另外,我做研究的目的只是为了解决这个问题,我喜欢仅因为这个目的而工作。

提问:据说你这次是来国内考察研究环境,会回国工作吗?

俞君英:最近几天,我参观了国内的几个实验室,确实有些人为了真正发展中国科研工作作了很多事情。但我个人而言,要不要回国还要回去好好考虑。

在国内做PI的话,我的资金并不是问题。但我的几个顾虑包括:有没有一个好的研究环境,有没有与足够优秀的同行进行交流的氛围;能否招到合用的学生,尤其是好的post doctor?

注:本文未经文中的俞女士审阅,如有任何错误和不当之处,责任全部在我。

你也许会喜欢


 
 

可从此处完成的操作:

 
 

2008年12月16日星期二

转:老博心得

发信人: whu2008 (工学部), 信区: PostGraduate
标  题: 转:老博心得
发信站: BBS 珞珈山水站 (Mon Dec 15 11:42:48 2008)

1、文献阅读

   先看两篇综述,搞清过去未来;  
   再看具体文章,搞清技术方法;
   阅读摘要为主,全文只能为辅;
   书籍大多没用,别去浪费时间;  
   文献看少没用,少说也要两百。

2、选题和开题

   心比天高要不得,先整及格再良好;
   课题规划定仔细,注重细节少挫折;
   老板态度最重要,干到啥样能毕业。(搞清干到啥样能毕业,这很重要)

3、课题实施

   精艺求精是目标,难得糊涂最重要;(得变通处且变通,世事不能尽如人意)
   干不出来别上火,坚持就会出结果;(上火没用,坚持到底就是胜利)
   不知道的就去问,千万不要闷头搞;(询问行家要比自己查自己试来的快,有的时候部
分工作可以外协)
   定期要与老板聊,找不到人也得找;(找导师聊可以时刻纠正研究方向,免得偏离目标
还不知道)

4、发表文章

   SCI重新意,写不出来也得写;(SCI期刊注重论文创新性,你必须写出你的新意处,才
能提高录用概率)
   EI刊源最好办,给钱基本差不多;
   实在不行投会议,还发不了没话说;
   发表文章老板抢,先斩后奏没商量;(如果老板爱当第一作者,而有时你舍不得,只好
发了再报告。但是,注意一定要把老板放在第二作者)

5、生活

  心情放松身体好,心理平衡最重要;(别抱怨,别攀比,要勤奋的工作)
  唱歌健身都要搞,花前月下不能少;

2008年12月13日星期六

[转]一种Linux下隐藏文件的新方法

一种Linux下隐藏文件的新方法
       
Author: wzt
EMail: wzt@xsec.org
Site: http://www.xsec.org & http://hi.baidu.com/wzt85
Date: 2008-9-23

一. 概述

目前通用的隐藏文件方法还是hooksys_getdents64系统调用, 大致流程就是先调用原始的
sys_getdents64系统调用,然后在在buf中做过滤。修改sys_call_table是比较原始的rk技术了,
碰到好点的管理员, 基本上gdb一下vmlinux就能检测出来。 如何想做到更加隐蔽的话,就要
寻找新的技术。 inline hook也是目前比较流行的做法,不容易检测。本文通过讲解一种利用
inline hook内核中某函数, 来达到隐藏文件的方法。

二. 剖析sys_getdnts64系统调用
想隐藏文件, 还是要从sys_dents64系统调用下手。 去看下它在内核中是如何实现的。
代码在linux-2.6.26/fs/readdir.c中:

asmlinkage long sys_getdents64(unsigned int fd, struct linux_dirent64 __user * dirent, unsigned int count)
{
        struct file * file;
        struct linux_dirent64 __user * lastdirent;
        struct getdents_callback64 buf;
        int error;

        error = -EFAULT;
        if (!access_ok(VERIFY_WRITE, dirent, count))
                goto out;

        error = -EBADF;
        file = fget(fd);
        if (!file)
                goto out;

        buf.current_dir = dirent;
        buf.previous = NULL;
        buf.count = count;
        buf.error = 0;

        error = vfs_readdir(file, filldir64, &buf);
        if (error < 0)
                goto out_putf;
        error = buf.error;
        lastdirent = buf.previous;
        if (lastdirent) {
                typeof(lastdirent->d_off) d_off = file->f_pos;
                error = -EFAULT;
                if (__put_user(d_off, &lastdirent->d_off))
                        goto out_putf;
                error = count - buf.count;
        }

out_putf:
        fput(file);
out:
        return error;
}

首先调用access_ok来验证是下用户空间的dirent地址是否越界,是否可写。 接着根据fd,
利用fget找到对应的file结构。 接着出现了一个填充buf数据结构的操作,先不管它是干什么的,
接着往下看。
vfs_readdir(file, filldir64, &buf);
函数最终还是调用vfs层的vfs_readdir来获取文件列表的。 到这,我们可以是否通过hook
vfs_readdir来达到隐藏文件的效果呢。 继续跟踪vfs_readdir看看这个想法是否可行。

源代码在同一文件中:

int vfs_readdir(struct file *file, filldir_t filler, void *buf)
{
        struct inode *inode = file->f_path.dentry->d_inode;
        int res = -ENOTDIR;
        if (!file->f_op || !file->f_op->readdir)
                goto out;

        res = security_file_permission(file, MAY_READ);
        if (res)
                goto out;

        res = mutex_lock_killable(&inode->i_mutex);
        if (res)
                goto out;

        res = -ENOENT;
        if (!IS_DEADDIR(inode)) {
                res = file->f_op->readdir(file, buf, filler);
                file_accessed(file);
        }
        mutex_unlock(&inode->i_mutex);
out:
        return res;
}

EXPORT_SYMBOL(vfs_readdir);

它有3个参数,第一个是通过fget得到的file结构指针, 第2个通过结合上下文可得知,这是一个
回调函数用来填充第3个参数开始的用户空间的指针。 接着看看它具体是怎么实现的。
通过security_file_permission()验证后, 在用mutex_lock_killable()对inode结构加了锁。
然后调用ile->f_op->readdir(file, buf, filler);通过进一步的底层函数来对buf进行填充。
这个buf就是用户空间strcut dirent64结构的开始地址。

所以到这里我们可以断定通过hook vfs_readdir函数对buf做过滤还是可以完成隐藏文件的功能。
而且vfs_readdir的地址是导出的, 这样就不用复杂的方法找它的地址了。

但是还有没有更进一步的方法呢? 前面不是提到过有个filldir64函数吗, 它用来填充buf结构的。
也许通过hook它来做更隐蔽的隐藏文件方法。 继续跟踪filldir64,看看它是怎么实现的。

static int filldir64(void * __buf, const char * name, int namlen, loff_t offset,
                     u64 ino, unsigned int d_type)
{
        struct linux_dirent64 __user *dirent;
        struct getdents_callback64 * buf = (struct getdents_callback64 *) __buf;
        int reclen = ALIGN(NAME_OFFSET(dirent) + namlen + 1, sizeof(u64));

        buf->error = -EINVAL;
        if (reclen > buf->count)
                return -EINVAL;
        dirent = buf->previous;
        if (dirent) {
                if (__put_user(offset, &dirent->d_off))
                        goto efault;
        }
        dirent = buf->current_dir;
        if (__put_user(ino, &dirent->d_ino))
                goto efault;
        if (__put_user(0, &dirent->d_off))
                goto efault;
        if (__put_user(reclen, &dirent->d_reclen))
                goto efault;
        if (__put_user(d_type, &dirent->d_type))
                goto efault;
        if (copy_to_user(dirent->d_name, name, namlen))
                goto efault;
        if (__put_user(0, dirent->d_name + namlen))
                goto efault;
        buf->previous = dirent;
        dirent = (void __user *)dirent + reclen;
        buf->current_dir = dirent;
        buf->count -= reclen;
        return 0;
efault:
        buf->error = -EFAULT;
        return -EFAULT;
}

先把参数buf转换成struct getdents_callback64的结构指针。
struct getdents_callback64 {
        struct linux_dirent64 __user * current_dir;
        struct linux_dirent64 __user * previous;
        int count;
        int error;
};
current_dir始终指向当前的struct dirent64结构,filldir64每次只填充一个dirent64结构。
它是被file->f_op->readdir循环调用的。 通过代码可以看出是把dirent64结构的相关项拷贝到
用户空间的dirent64结构中, 然后更新相应的指针。

所以通过分析filldir64代码, 可以判定通过判断参数name,看它是否是我们想隐藏的文件,
是的话,return 0就好了。

三. 扩展

通过分析sys_getdents64代码的实现,我们可以了解到通过hook内核函数的方法,来完成
rootkit的功能是很简单和方便的。 关键你能了解它的实现逻辑。 对linux平台来说,阅读内核
源代码是开发rootkit的根本。 如何hook? 最简单的就是修改函数的前几个字节,jmp到我们的
新函数中去, 在新函数完成类似函数的功能。 根本不必在跳回原函数了, 有了内核源代码在手,
原函数怎么实现,我们就怎么copy过去给它在实现一次。 所在linux实现rk也有很方便的一点,
就是它的内核源代码是公开的, 好好阅读源代码吧, 你会有更多的收获

本篇文章来源于 黑客啦 原文链接:http://www.hack4.com/article/sort011/info-270.html?njenaed=26796

2008年11月30日星期日

Python and Python

Table of Contents

Updated August 1, 2008

Video Tutorials


Python Screencasts: the Best Tech Videos on the Net
Show-Me-Do Video Tutorials
Brad Allen's Collection of Video Tutorials
VPython Video Tutorials
Introduction to Programming with Python and Tkinter Video Tutorials


Grimoire

Python Grimoire
The Grimoire is different and deserves a category unto itself. It is a book of magic spells and incantations, or How to Perform Common Programming Tasks in Python.

Beginners (21)

Lie Hetland
Really good, learn to hack Python!

How to Think Like a Computer Scientist, 2'nd Edition
A great tutorial!

Python Programming Crash Course for Absolute Beginner's

Python Baby Course with exercises and answers

Learn Python in 10 Minutes

Learning Python: Child's Play with RUR-PLE!
requires wxPython but is for beginner's including children; different, but interesting; also in French or English

Python Beginner's Guide
from the Python web site

PyKarel the Robot
for younger people, Guido von Robot!

Livewires Python Course
for younger people

Alan Gauld's "Learning to Program"
Start here if you a complete newbie to programming

Joe Useless Writes a Program
It doesn't get any easier than this ;-)))

Batteries Included
Useless Python's Short Tutorial on Modules

A Byte of Python
online book

Python Babysteps Tutorial (getting started using Python on Windows)

Josh Cogliatti's Tutorial
A great tutorial for newbie's to start with!

Playing with Idle: What to do on day one with Python using the built-in IDLE IDE
including translations into several languages

The What, Why, Who, and Where of Python
by Aaron Watters

Python, Anyone?
by Robert Richardson

Python for Newbies
David Borowitz

General Python Tutorial from TechWarehouse by David Mertz

Python 101 -- Beginning Python by Dave Kuhlman

General and Advanced (13)

New: Python Tutorial Wiki

Quick and Painless Python Tutorial by Norm Matloff

Python 201 -- (Slightly) Advanced Python Topics by Dave Kuhlman

Guido van Rossum's own Tutorial
The definitive tutorial

Instant Hacking by Magnus Instant Python by Magnus Lie Hetland
Excellent!

Discover Python: an 8 part Series from IBM
Really good, learn to hack Python!

Learn to Program Using Python
by Richard Baldwin

Short Python Tutorial (but good!)
by Richard Muller, California Institute of Technology

A Python Course
by Uta Priss, Exercises and Answers

Exhaustive Index to Beazley's Tutorials
A JavaScript index to Beazley's tutorials

Dive Into Python
a great tutorial for experienced programmers

Python for Lisp Programmers

Python at Devshed, several mini-tutorials on various subjects

Internet: Django (9)

The Django Book

Advanced Django

Django Djumpstart: Build a To-Do List in 30 Minutes

Top 30 Django Tutorials and Articles

Develop for the Web with Django and Python
IBM DeveloperWorks

"Official"Django Tutorial Part 1

"Official"Django Tutorial Part 2

How-To: Setting up Django and associated software stack on Windows

Tutorial : Setting up Django on a shared host

Extending and Embedding (8)
Embedding Python in Your C Programs from Linux Journal December 2005

Python Extensions In C++ Using SWIG

Embedding Pyrex HOWTO
Pyrex is a Python/C Wrapper Language

Embedded Python
new online tutorial listed May 7, 2004

Boost Python Tutorial and Documentation
C++ and Python integration

Writing Python Extensions in C
from the Starship

Extending and Embedding the Python Interpreter

Happy Hooking: Designing Software for Extensibility and Maintainability

Games (7)

Python Game Programming
Excellent Series of Online Lectures

Python Game Programming

A Guide to Writing Games using Python
from S. J. Brown

PyGame Tutorial
from official PyGames site

Programming a Video Game
by Chris Meyers

Making Games with Python
by Tom Chance

Creating Windows Executables with PyGame
by Pete Shinners

GUI Programming: General and Miscellaneous (5)

Python GUI Programming
Basic GUI Programming: plus wxPython, Tkinter, PyQT, PyGtk, PyFox

EasyGUI
new online tutorial listed May 2, 2004

Tutorial-Introduction to VPython
new online tutorial listed May 2, 2004

Anygui Tutorial
Anygui is an exciting new GUI builder for Python

Venster Tutorial, Venster is a lightweight GUI Toolkit for Windows

GUI Programming: Tkinter (10)

How I learned Tkinter

Tkinter Reference: a GUI for Python

An Introduction to Tkinter: a Work in Progress
by Fredrik Lundh

GUI Programming with Tkinter
by Alan Gauld

Intro to Programming with Python and Tkinter
from the python.org wiki

Thinking in Tkinter
Tutorial on Tkinter

An Introduction to Tkinter
Tutorial on Tkinter

Building a GUI Application with Tkinter
by Chris Meyers

TK Programming in Python
Tutorial on Tkinter

Tkinter Life Preserver
Tkinter Manual

GUI Programming: wxPython and PythonCard (11)

Getting Started with wxPython
by Steve Holden

wxPython Linux Tutorial

[url=http://www.ictedu.net.cn/%20http://www.serpia.org/wxglade]wxGlade Tutorials[/url]
Several Tutorials-listed January 1, 2006

wxPython
Tutorial on wxPython

wxPython for Newbies
Tutorial on wxPython

wxPython Small App Tutorial
Tutorial on wxPython

PythonCard Tutorial
by Dan Shafer, a simple, brief intro to the exciting new PythonCard gui programming tool

PythonCard Users Guide
Exhaustive set of resources for learning PythonCard

keep it Simple with PythonCard
a pdf file from PyCon2005 by Ken Altis

wxPython Wiki

Building the GUI with wxPython

Tutorial on wxGlade

GUI Programming: pyGTK and Gnome (16)

Writing PyGtk Applications in a Visual Way

Building an Application with PyGTK and Glade
one man's journey learning Python! added June 1, 2006

a Beginner's Guide to Using PyGTK and Glade
from Linux Journal & listed February 9, 2006

PyGTK Tutorial from Serpia
listed January 1, 2006

PyGTK Tutorials
Several Tutorials-listed September 20, 2005

GUI-the Pythonic Way!
PyGTK, Glade and Python, a new online tutorial-listed May 4, 2005

PyGTK 2.0 Tutorial
new online tutorial-listed July 27, 2004

Developing Gnome Applications with Python

RAD with Python and Gnome
by Padraig Brady, added Nov. 22, 2004

GTK+ 2.0 Tree View Tutorial

PyGnome Tutorial (loads a little slowly)

Bonobo and Python Tutorial
a Tutorial about component based programming for the Gnome desktop environment added December 7, 2004

Gimp-Python

RAD with Python and Glade
from Linux Journal

Gnome Applets with Python
by Arturo Gonz?lez Ferrer

How To Use Maemo a PyGtk programming tool
a PyGtk programming tool for the Nokia 770 tablet

GUI Programming: QT and KDE (6)

PyKDE Extensions Handbook

Tutorial: Creating GUI Applications in Python with QT
Excellent, New, Visual Tutorial for Beginnign with PyQt by Alex Fedosov

Tutorial on PyQt used with Trolltech's QT Designer

PyQt Tutorial by Jonathon Gardner

RAD with PyQt and Eric3

Python + KDE Tutorial

HTML and XML (20)

Elementree Tutorial

Simple XML Processing with ElementTree (O'Reilly)

Process XML in Python with ElementTree (IBM )

HTML Screen-Scraping: a How-To Document by Dave Kuhlman

Python and HTML Processing

Introduction to PyMeld
a simple, lightweight system for manipulating HTML (and XML, informally)

Using Python to Generate HTML Pages

XSL and XPATH

Developing Responsive GUI Applications Using HTML and HTTP
a pdf file from PyCon2005

Python and XML How-to columns by Uche Ogbuji (excellent!)
from O'Reilly

Python and XML Akara site by Uche Ogbuji, supplemental to the above columns
from O'Reilly

Practical Python XML and DOM
by Andrew Cooke

Python and XML Tutorial from O'Reilly

Using XML-RPC
from Dalke Scientific

Tutorial on ElemenTreeby David Mertz

The cElementTree Modulean effbot guide by Fredrik Lundh

XRC Tutorial from SerpiaXRC is XML Resource Code

HTMLgen
from the Starship

Python XML How-To

Python and XML: An Introduction

HTML Template

Internet: Network and Web Programming (16)

Web Python Tutorial

wsgi, Python's Secret Web Weapon

Untwisting Python Network Programming

Programming in Python with Medusa and the Async Sockets Library

Tutorial on Allegra Web Peer to Peer Programming in Python

Asynchronous Socket Programming

Fetching RSS Files
by Fredrik Lundh

Python Tutorial for Network Administrators
by Norm Matloff

Quick and Painless Network Tutorial
by Norm Matloff

urllib2: The Missing Manual
by Michael Foord

Sockets in Python
by A.P.Rajshekhar

Socket Programming Tutorial
by Gordon McMillan

Packet Wizardry: Ruling the Network with Python

lingmail Python Binding for Google's GMail service

Web Programming with Python
by Guido von Rossum

Python Web Services Articles
from IBM DeveloperWorks added November 26, 2004

RSS Programming with Python
Content Syndication

Web Scraping, Screen Scraping (3)

Screen Scraping
from Dalke Scientific

Web Scraping with Python Part I
from AkaSig

Web Scraping with Python Part II
from AkaSig

Internet: CGI (5)

Using Python for CGI Porgramming
by Guido van Rossum

Web Server Programming and CGI

CGI Web Applications with Python, Part One
from PyZine

CGI and Python
an Interactive Tutorial

Writing CGI Programs in Python
Python CGI FAQ

Internet: Web Frameworks-Turbogears and Cherry Pie (8)

Very Good and Comprehensive Tutorial on TurboGears

Develop for the Web with TurboGears and Python
IBM DeveloperWorks

Brian's Turbogears Tutorial

What is TurboGears? O'Reilly Detailed Introduction

TurboGears 20 Minute WIKI

CherryPy Tutorial
from cherrypy.org

CherryPy Tutorial from Serpia

CherryPy for CGI Programmers

Internet: Web Frameworks-Twisted (5)

Twisted: A Tutorial

Twisted Mail Tutorial
Building an SMTP Client from Scratch

Using Python and Twisted to Write Reliable Peer-to_peer Programs

Patterns for Twisted
by Dave Kuhlman

Internet: Web Frameworks- Zope and Plone (5)

Zope "Appetizers"
little, gentle, tidbit introductions to Zope and Plone

Introduction to Zope

Zope Tutorial

XML-RPC over Zope 3, a quick tutorial

Plone Tutorials Page

Internet: Web Frameworks-Other (4)

Mod_python Manual

Tutorial on Subway

Quixote Tutorial

Quixote 2 Tutorial

Internet: Django (9)

The Django Book

Advanced Django

Django Djumpstart: Build a To-Do List in 30 Minutes

Top 30 Django Tutorials and Articles

Develop for the Web with Django and Python
IBM DeveloperWorks

"Official"Django Tutorial Part 1

"Official"Django Tutorial Part 2

How-To: Setting up Django and associated software stack on Windows

Tutorial : Setting up Django on a shared host

Jython (12)

Jython Course

Introduction to Jython

Jython Tutorials, Parts One and Two
on www.jython.org, scroll down to click on pdf files: Excellent!

Advanced Server side Programming in Jython

Jython Tutorial Examples

Writing Threaded Applications in Jython

Jython and Swing
Useless Python's Short Tutorial on Jython and Swing

Jython Bibliography

Jython Webapp Tutorial

How to Make Java Servlets with Jython

Jython Cookbook

Testing, Test Driven Programming and Unit Test (5)

Agile Testing Articles and Tutorials Repository

Agile Development and Testing in Python
from PyCon 2006

De-Bugging Python, a Tutorial

Test Driven Development in Python
a Tutorial from O'Reilly's OnLamp Python Development Center added December 7, 2004

Agile Testing Blog
Articles and Tutorials

Editors and IDE's (7)

Python with Stani's Python Editor (SPE)
from ShowMeDo added March 17, 2006

Eclipse Integratuion: Using Eclipse as an Editor for Python

Python Development with Eclipse and Ant
from IBM DeveloperWorks, an excellent tutorial added December 7, 2004

Python Development with Eclipse
a good tutorial with helpful screenshots

Tutorial about IDLE

Python and Emacs

Leo Tutorials

Mac and Apple (11)

An Epic Introduction to PyObjC and Cocoa

Using PyObjC for Developing Cocoa Applications with Python

MacPython Documentation

wxPython OS X Issues

Introduction to PyObjC

Start Cocoa with PyObjC

Macintosh Library Modules

Intro to Using PyObjC
Overcoming Newbie Hurdles when using Xcode and Interface Builder

Setting Up Mac OSX to run Python CGI's

Using Core Data with Python

Unit Testing Objective-C with Python

Windows (14)

Writing Win32 Applications with Python and Glade

Synthesizing Speech with Microsoft's pyTTS and Python

Microsoft Access and Python

Python and COM
by Christian Tismer

Python and COM
from a different angle

Embedding Python in Visual Basic or Delphi Apps

Tutorial on Visual Python
Visual Python is ActiveState's python plug-in for Microsoft's Visual Studio .Net

Python and COM
by Mark Hammond and Greg Stein

Python 2.4 Extensions w/ the MS Toolkit Compiler

A Python for Windows Tutorial
good to help newbies get their Python-on-Windows setup properly

Python for Windows Extensions

Python Dynamic Scripting on the .Net CLR
by Jim Hugunin

Python and ASP

Tutorial on Python and ADO (ActiveX Data Objects)
Using Python to program SQL and ADO

Using Python with IIS (Microsoft Information Server)
from the Microsoft website

IronPython (7)

IronPython and SilverLight in your Browser

Mini Guide: IronPython and the .Net Framework

IronPython Tutorial Series by Michael Foord at Voidspace

A First Look at IronPython: Where Python meets .NET
brand new on July 14, 2006 by Jeff Cogswell on DevNet

Python Dynamic Scripting on the .Net CLR
by Jim Hugunin

MSDN Video Tutorial Featuring Jim Hugunin

IronPython: A fast Python implementation for .NET and Mono
PDF download

Decorators (6)

Decorators Make Magic Easy by David Mertz

Python Decorator Mini-Study

Decorators by Phillip Eby on Dr. Dobb's Journal

Python Decorator Library

Decorators in Python

The Decorator Module by Michele Simionato

Generators and Iterators (7)

Recursion and Generators

Norm Matloff's Quick and Painless Iterators and Generators Tutorial

Iterators and Generators
it ain't your gramps' loop anymore!

Iterators and Simple Generators
from Charming Python by David Mertz

Python Generator Tricks
from Linux Gazette

Generator-based State Machines and Coroutines
by David Mertz

Iterators, Generators, and Continuations
by Daniel Arbuckle

Database (12)

Databases and Python Tutorial by Steve Holden

Connecting databases to Python with SQLObject

SQL Alchemy Tutorial

Wrapping Your Brain Around Oracle + Python

MySQL and Python, a Tutorial from Serpia

Writing MySQL Scripts with Python DB-API

The Python DBI-API Interface

Persistent Storage of Python Objects in Relational Databases

Short Tutorial about Fast, Easy Database Access with Python
retrieving, searching , and updating data

MySQL and Python: a short Tutorial

SQL and Python

Pythonic DataBase Topic Guide
not exactly a tutorial, but covers Pythonic database related topics

Biology and Bioinformatics (7)

Titus' Bioinformatics Tools

Learning Python with Bioinformatics

BioPython Documentation

Beginning Python for Bioinformatics

Exhaustive Course on Bioinformatics using Python

Introduction to Programming for Bioinformatics in Python

Programming Course for Biologists at the Pasteur Institute

Statistics(1)

StatPy


Math, Science, and Physics (19)


An Introduction to Python for Scientists
By Conrad Hinson

Tentative Num Py Tutorial

Scripting Techniques for Scientific Computing

SciPy Course Online
by Dave Kuhlman

Experimental Physics with Phoenix and Python
Phoenix is Physics with Homemade Equipments and Innovative Experiments

SciPy.org Python for Science Tutorials, Links, and Resources

NetworkX, a Python-based package for the creation, manipulation, and study of the structure, dynamics, and function of complex networks.

Scripting Techniques for Scientific Computing

Python for Scientific Use: Data Analysis
from Linux Gazette

Tutorial on NumPy, Numerical Python
by David Ascher

A guide to installing Python packages for scientific computing from Cornell

MatPlotLib Tutorial from Serpia

MatPlotLib Tutorial

Handbook of the Physics Computing Course

PyODE, the Open Dynamics Engine, an open source physics engine
3 short tutorials, scroll down to bottom of page

Tutorial on the Numeric Module from Penzilla

MatPy - Matrix package for Python

Python for Statistical Programming

OOP, Objects, and Object Orientation(6)

An Introduction to Object Oriented Programming using Python

Introduction to OOP with Python

Python Types and Objects

Python Attributes and Methods

Python Objects-effbot guide

Descriptors(2)

How-to Guide for Descriptors

Design Patterns(6)

Design Patterns in Python
a Seminar

Design Patterns in Python
by Vespe Savikko

Object Oriented Design Patterns using Python

Data Structures and Algorithms with Object-Oriented Design Patterns in Python

Design Patterns and OOP
a pdf file from PyCon2005 by Alex Martelli

Data Structures and Algorithms with Object-Oriented Design Patterns in Python

Introspection(1)

Guide to Python Introspection

Metaclasses(5)

Metaclasses: Who, What, Why, Where

Metaclasses: Blueprints of Blueprints

New Style Classes in Python

A Primer on Python Metaclass Programming by David Mertz

Firedrop (2)
Weblog and Content Management System

Firedrop Mini How-To Docs
Illustrated

Firedrop Plug-ins Tutorial
Firedrop is a (Programmable with Plug-ins) Python (and Wax) Blog Client Manager Tool and Content Management System

Concurrent Programming (2)
Concurrent Object-Oriented Programming in Python with ATOM

Introduction to Concurrent Programming with Stackless Python

Stackless Python (5)
Introduction to Concurrent Programming with Stackless Python

Python Microthreads and Stackless Python

Microthreaded Game Programming with Stackless Python

Introduction to Stackless Python

Continuations and Stackless Python

Threads (11)
Threads and Concurrent Programming

Threaded Data Collection with Python including Examples

PyGTK and Threading

Implementing "weightless threads" with Python generators

Python Microthreads and Stackless Python

Microthreaded Game Programming with Stackless Python

Python Threads, a First Example

Quick and Painless Threads Tutorial
by Norm Matloff

Basic Threading in Python
from DevShed

Understanding Threading in Python
from Linux Gazette

Tutorial on Threads Programming with Python
PDF file, loads slowly

Python Threads
PDF file, click on "threads" at top of html page

Unicode (7)

Unicode Mini Tutorial

Developing Unicode Aware Applications in Python, a pdf file

A Crash Course in Character Encoding
by Fuzzyman, including Unicode.

Unicode Secrets
by Uche Ogbuji, May 18, 2005

Python Unicode Tutorial

Using Unicode with Python

Using UTF-8 with Python

Continuations (3)
Continuations

Continuations Made Simple and Illustrated

Continuations for Curmudgeons

Continuations and Stackless Python

Regular Expressions (5)

Using Regular Expressions for Lexical Analysis
by Fredril Lundh

Tutorial on Python and Regular Expressions
by David Mertz

NLTK Tutorial on Python and Regular Expressions

Cameron Laird's personal notes on "Regular Expressions"

Text and String Processing (4)

Text Processing in Python
by David Mertz

Learn to Program Using Python: Strings
from Developer.Com

String Manipulation with Python
from DevShed

Efficient String Concatenation in Python

Linguistics and Natural Language Processing (5)

Python for Linguists
Really good and thourough tutorial

Python for Linguists
Zacharski Site

Python for Linguists
Using Python & NLTK Lite

Getting Started with the Natural Language Toolkit
by David Mertz

NLQ.py
a wonderful and easy NLQ module

VPython (6)

VPython Video Tutorials: 3D Programming with Python using the Visual Library
new and great! added July 14, 2006

V Python an introduction

VPython introduction (in pdf)

Brief, basic VPython introduction from ANU, for bouncing ball

Next VPython tutorial from ANU, for simulating a gas

Rob Salgado's VPython applications for Teaching Physics

Curses (3)


Quick and Painless Curses Tutorial
by Norm Matloff

Curses Tutorial by Dr. David Mertz
from IBM DeveloperWorks

Curses Programming with Python

Searching and Sorting (4)

Sorting with Python
by Andrew Dalke

Writing a Search Engine in Python
from Serpia

Sorting Algorithms in Python

Search Algorithms in Python

Python and Simulation (4)

Python as a Discrete Event Simulation environment

Quick and Painless Monte Carlo Simulation

Quick and Painless SimPy Tutorial
SimPy is for Discrete Event Simulation

Search Engines and Social Software (7)

pyGoogle
Grabbing Del.icio.us posts with Python by Fredrik Lundh

pyGoogle
Python interface to the Google API

Scripting Flickr with Python and REST
from XML.com

flickr.py
Python interface to the flickr API

Beej's Flickr API
an alternative Python interface to the flickr API

del.icio.us experiments using Python
hackdiary site

Simple Search Engine in Python Tutorial from Serpia

Python on Mobile Devices (2)

Python and the Nokia Series 60 Tutorials

Python for Mobile Devices

Flash (3)

A tutorial on connecting client-side Flash applications to Python XML-RPC web services

Embedding Flash in Python

Tutorial: Macromedia Flash served by Python

Robotics (3)

[url=http://72.14.203.104/search?q=cacheKuWnUkaCNgJ:dangermouse.brynmawr.edu/~dblank/papers/jeric-05.pdf+handyboard+python&hl=en&gl=us&ct=clnk&cd=2]Pyro: A Python-based Versatile Programming Environment for Teaching Robotics[/url]

Python Robotics: An Environment for Exploring Robotics Beyond LEGOs

Intro to RoboFab with Python

Functional Programming (5)

An Introduction to Functional Programming

Functional Programming in Python from IBM DeveloperWorks

Functional Programming HOWTO

Functional Programming in Python

Documentation to the Functional Package for Python Functional Programming

Genetic Algorithms and Python (1)

Genetic Programming with Python

Date and Time Usage (1)

Date and Time Usage for Python

Neural Networks (3)

An Intorduction to Neural Networks

Weave a Neural Net with Python

Neural Networks in Pyro

Pickle (1)

Pickle Tutorial

PyPy (1)

Getting Started with PyPy

Miscellaneous Specific Topics (22)

Bluetooth Programming with Python

Python Specific Source Code Mini-Examples for Common Topics

Cheese Shop Tutorial

Basic Motion Graphics with Python

Python and UML

Python for Fun
an Exellent collection of small Python programs for learning

Python Code Snippets from Serpia

HowTo: GantPV Scripts with Python

HowTo: Python Programming in Gnumeric

Python Imaging Handbook and Tutorial
PIL Handbook from PythonWare

Michael's Quick Guide to Pyrex

Building Chandler Parcels
an introduction from PyCon2005

MozPython, Python for Mozilla

NetworkX Tutorial
NetworkX is a Python-based package for the creation, manipulation, and study of the structure, dynamics, and function of complex networks.

PyMedia Tutorial
PyMedia is a module for manipulating wav, mp3, ogg, avi, divx, dvd, cdda and etc. files

Scripting OpenOffice with Python

GraphPath is a little-language for analysing graph-structured data, especially RDF

ZeroConf and Python

Python Console Examples
by Padraig Brady, added Nov. 22, 2004

Python and Doxygen
Doxygen generates documentation from source code

Algorithm Education Using Python

Python Package Index Tutorial
Tutorial for PyPi

Documentation and Reference (11)

Python Quick-Reference Guide
meant to be printed and kept by the keyboard or on the wall

Official Python Documentation
exhaustive documentation from the Python website

Python 2.4.2 Documentation

the Effbot Guide to the Python Standard Library

Language Notes on Python

Python Quick Reference
A Python online reference in several different formats, including clickable

Python Style Guide
by Guido van Rossum

Python Infrequently Answered Questions
by Peter Norvig, not a Tutorial, not exactly documentation, but an incredibly useful read...

Python "How-To's

Python Knowledge Base
an incredible database of answered questions

Bruce Eckel's Thinking in Python