Modest opinions  
by a humble autodidact

2011年9月23日

摘要: 我的第一个erlang/otp程序,虽然弱爆了,还是上线了。功能:记录gtalk签名档使用方法:在gtalk里面邀请tpol@takuneering.com为好友。以后每次改签名都会被tpol记录。向tpol发送任意信息,tpol会把签名档历史记录发回来。实现方式:用Erlang和其标准库实现,没有使用第三方库。整个程序由application/supervisor/gen_server构成,用gen_tcp读写socket,用xmerl_sax_parser解析XMPP协议中的xml,用dets储存数据。第二个程序,虽然只有几百行,但SoLoMo都有了。有一次我们几个同事去昭觉寺玩,有一个同 阅读全文
posted @ 2011-09-23 11:33 yushih 阅读(450) 评论(0) 推荐(0) 编辑

2010年9月17日

摘要: 我调用super的习惯是这样的:super(self.__class__, self)...第一个参数我一般不写类名,因为我觉得这样更DRY,但是在Django中继承某些类的时候不能这样写。因为Django中有的类使用了特殊的metaclass,如果你这样定义了一个类:class MyClass(django.XXX): def fun(self, ...):那么self.__class__并不是... 阅读全文
posted @ 2010-09-17 14:27 yushih 阅读(1351) 评论(0) 推荐(0) 编辑

2010年7月1日

摘要: 第一点疑问,不是我认为面向对象不好使,但是“面向对象”这个技术实在太有限了,首先它只能用于解决软件开发中众多问题中的有限的一类,或者说它只是软件的众多维度中的一个维度上的。其次即使只着眼于这一个维度,面向对象也不是银弹,只是对于一小类软件,它是比较不坏的选择。在招聘广告中写上“精通面向对象分析与设计”就好象我要招个C程序员,招聘广告里写“... 阅读全文
posted @ 2010-07-01 23:40 yushih 阅读(413) 评论(0) 推荐(1) 编辑

2010年6月1日

摘要: 更新:哥现在已经发展出了基于TUN/TAP+脚本语言的更成熟、稳定的技术,所以下面的内容算是废了。 首先声明:本人只是试验成功,还没有进行过严格正确性、性能和稳定性的实验。以下程序可能存在bug。使用者自己注意。问题:有人在豆瓣Python版提出“在一台PC上模拟多个IP地址向服务器发起socket连接,并在建立连接后发数据包“的需求。具体要求是“可以在界面上输... 阅读全文
posted @ 2010-06-01 17:06 yushih 阅读(4445) 评论(1) 推荐(0) 编辑

2010年5月5日

摘要: 豆瓣Python版有人想要goto。虽说看不出来goto有什么特别吸引力,但是为了实现Python社区对广大人民群众做出的“Python是世界上除Lisp外最牛b的编程语言”的庄严承诺,同时也为了复习一下一段时间没用Python知识,写了一个goto模块。使用如下例: [代码]用法是:1. from goto import *。注意暂时不支持import goto,不是不能... 阅读全文
posted @ 2010-05-05 15:03 yushih 阅读(4806) 评论(2) 推荐(0) 编辑

2010年1月28日

摘要: 本来是应该写在豆瓣网上的,但是鉴于豆瓣网过分的删贴行为,认定豆瓣已经不是受害者而已经充当起了帮凶的角色。从即日起,不再向豆瓣贡献任何有意义的内容,上豆瓣网仅限于:骂娘,灌纯水,捣蛋。言 归正传,我非常不推荐这本书。虽然pragmatic书一贯是很高的质量,但这本书真的很不好。问题就出在pragmatism上--它完全是一本 how-to,只覆盖到了一些常用情况下的操作方法,没有把Subversio... 阅读全文
posted @ 2010-01-28 22:05 yushih 阅读(300) 评论(1) 推荐(0) 编辑

2010年1月23日

摘要: 好吧,我承认我又标题党了,不该把Python拉出来和C比,我绝无轻视C语言的意思。我想说的只是,在解决某些问题是,比起用C,用Python真是太舒服了。《Beautiful Code》开篇第一章是由大神Brian Kernighan讲解另一位半神半程序员Rob Pike设计的C语言“正则”表达式引擎(“正则“二字打引号的原因下面会说明)。不能不说短短... 阅读全文
posted @ 2010-01-23 19:08 yushih 阅读(1810) 评论(5) 推荐(0) 编辑

2010年1月7日

摘要: 问题:有Python函数一枚,用递归写成。运行时超出Python的递归深度,现欲将其由在堆栈中分配空间改为在堆中分配空间(即用malloc)。解决方法:首先,from heaprecursion import *。然后对目标函数进行改造,假设要改造的递归函数为def func(p1, p2):1.把函数中的递归调用func(exp1,exp2)改成yield RECURSION(exp1,exp2... 阅读全文
posted @ 2010-01-07 21:26 yushih 阅读(1037) 评论(0) 推荐(0) 编辑

2009年6月17日

摘要: STL的binary search是由lower_bound和uppper_bound两个函数实现的。lower_bound的描述为:lower_bound() returns the position of the first element that has a value less than or equal to value. This is the first position wher... 阅读全文
posted @ 2009-06-17 19:30 yushih 阅读(633) 评论(0) 推荐(0) 编辑

2008年11月9日

摘要: 最近文档标准之争正烈。我完全不问政治(虽然在技术无区分的情况下我情感上偏袒国货),而且对相关技术也没有深入了解,但我还是想指出文档标准中一个可能被忽视的重要方面--对象寻址。现在是互联网时代,所有的东西都要考虑在网络上的使用性,文档更是如此。W3C定义的URI提供了寻址到文档的方法,但这显然是不够的,我们需要寻址到文档的一个部分,因此需要一个扩展URI的标准。HTML有可以命名的anchor,文档... 阅读全文
posted @ 2008-11-09 20:43 yushih 阅读(324) 评论(0) 推荐(0) 编辑