SHA-1 vs SHA-256

标签:JavaScript, Python, 性能

最近想在GAE上实现一个验证码,但又不想用传统的键盘输入方式。一来是习惯用鼠标,切换到键盘很麻烦;二来是生成图片的成本很大,在GAE上还不能用C实现;三是在让机器难以识别的同时,也会造成用户的困惑。
所以想到Google曾经提出的一个技术:提供一组选项,用鼠标将正确的选项拖动到指定位置,然后提交。

又一个JavaScript框架:Como JS

标签:JavaScript

自从用了jQuery,我就对其他JavaScript框架提不起兴趣了,不过这个Como JS却值得一提,因为是中国人开发的,文档是全中文的,这就降低了学习成本。

决定采用Mercurial(Hg)了

标签:无

最近想用版本控制软件来保存汉化文件,但又觉得SVN太麻烦,于是想到了最近较为流行的分布式版本控制工具。
而Git和Mercurial(意思为水银的,于是经常缩写为Hg)自然是其中最为流行的工具。大名鼎鼎的Linux就用Git作源码管理,而Python和Firefox则采用Hg(你可以在这找到一堆使用Hg的项目)。
比较了一番后,最终我选择了后者。因为Git的优势主要在于分支,而汉化并不需要太多分支;而Git对Windows的支持似乎不如Mercurial,ssh也比http麻烦,比较难教汉化组成员们使用;此外还有个特别的原因:Hg主要是用Python实现的(小部分使用C实现)。
当然,Hg也有个很严重的缺点:不支持针对单个文件夹的分支。如果剧本翻译和改图要建立分支都必须复制整个仓库,而对翻译来说,图像文件并不是他需要的部分。

用Descriptor实现另一种风格的Decorator

标签:Python

之前我曾写过《在Python中实现Decorator模式》,里面展示的例子都是一个函数封装另一个函数,然后返回封装后的函数,即:
def decorator(func):
	def wrapper(arg):
		#做另一些事
		return func(arg)
	return wrapper

@decorator
def f(param):
	#做一些事
虽然这就是正统的写法,但对于不太了解闭包的人来说,那个wrapper太难懂了,就会有种Decorator很恐怖的印象。

用Python生成暴力破解字典

标签:Python

事先声明一下,我只是一时兴起,绝对没有去做和谐的事,各位也请自重=。=

其实暴力破解字典就是将可输入的字符进行全排列,是非常简单的方法,只不过用C语言写起来很繁琐,因此我想到了Python。

Python 2.7 alpha 1发布

标签:Python

自从上次下载页被GFW后,目前Python全站都被GFW了,我只想说操你妈的GFW工作人员,祝你们全家在新的一年里,全身长满菊花。
会翻墙的可以去下载Python 2.7,我只介绍一些改动。

强大的Python Shell:IPython

标签:Python

以前一直使用Python自带的交互式Shell,感觉也还够用,至少比Ruby好;不过今天用了下IPython,发现它实在太强了,支持彩色高亮显示、代码补完、魔术函数、宏、编辑和保存文件、调用操作系统的Shell命令等功能。

« 看看还有什么好玩意