-
新鲜出炉
雁过留声
- RoR learning log (2) | 湖间小筑 on RoR learning log (1)
- PSY on Ruby learning log
- hzmangel on Ruby learning log
- Kevin on Ruby learning log
- Ivy on 2012,魔都开年
Tags
不明真相之围观
- Android中使用自定义Adapter - 4,019 views
- 让win下的vim支持非等宽字体 - 2,572 views
- C++中静态成员函数的声明及定义 - 1,348 views
- python中的静态成员函数 - 1,332 views
- VIM LaTeX Suite - 1,327 views
- List的Iterator - 1,069 views
- Pietty + Xming,在Win下用X - 1,025 views
- 给iphone传电子书 - 945 views
- AutoHotKey 设置窗口在最前 - 760 views
- 用AutoHotKey窗口平分屏幕 - 719 views
归个类
回忆
- May 2012 (3)
- April 2012 (1)
- January 2012 (1)
- December 2011 (1)
- November 2011 (1)
- September 2011 (1)
- July 2011 (2)
- June 2011 (1)
- May 2011 (2)
- April 2011 (1)
- March 2011 (3)
- January 2011 (2)
- December 2010 (4)
- October 2010 (2)
- September 2010 (2)
- August 2010 (1)
- July 2010 (3)
- June 2010 (3)
- May 2010 (2)
- March 2010 (5)
- January 2010 (7)
- December 2009 (5)
- November 2009 (2)
- October 2009 (1)
- September 2009 (5)
- August 2009 (3)
- June 2009 (1)
- May 2009 (4)
- April 2009 (2)
- March 2009 (1)
- February 2009 (3)
- January 2009 (3)
- December 2008 (6)
- November 2008 (14)
- October 2008 (5)
- September 2008 (11)
- August 2008 (8)
- July 2008 (9)
- June 2008 (21)
- May 2008 (17)
- April 2008 (17)
- March 2008 (15)
- February 2008 (1)
- January 2008 (3)
- December 2007 (1)
- October 2007 (12)
- September 2007 (8)
- August 2007 (9)
- June 2007 (8)
- May 2007 (10)
- April 2007 (3)
- November 2006 (5)
- October 2006 (2)
- September 2006 (16)
- August 2006 (13)
- July 2006 (4)
- June 2006 (1)
- April 2006 (1)
- March 2006 (6)
- February 2006 (1)
- January 2006 (3)
- December 2005 (6)
- November 2005 (15)
- October 2005 (12)
- September 2005 (1)
- June 2005 (4)
- May 2005 (12)
- April 2005 (16)
- March 2005 (6)
- January 2005 (13)
- December 2004 (3)
- November 2004 (8)
- October 2004 (13)
- September 2004 (13)
Category Archives: Happy coding
try-except-finally block in python 2.4
try-except-finally这种语法是在py2.5中才支持的,而在py2.4中只能单独使用try-except或try-finally。为了让脚本有更好的兼容性,只好绕过去了: #/usr/bin/python2.6 try: print ‘try’ except: print ‘except’ finally: print ‘finally’ #/usr/bin/python2.4 try: try: print ‘try’ except: print ‘except’ finally: print ‘finally’ 从Chromium的代码库(Issue 140005)中找到的方法,呵呵。
Translate errno to error string
没几行的程序,就是输出errno数字所表示的对应含义 #include #include #include int main(int argc, char* argv[]) { if (argc == 1) { printf (“Please give a number, Thanks~~~\n”); exit(1); } char tmp_str[20]; errno = atoi(argv[1]); sprintf(tmp_str, “errno %3d”, errno); perror(tmp_str); }
在thickbox中关掉自己
嗯,很拗口的标题吧,我也这么觉得~ 最近写的东西用到了jquery,然后也就用到那个很好用的thickbox插件。不过有一个需求是我在thickbox中用Ajax.post()方式提交表单后需要把这个thickbox窗口关掉。它的close按钮调用的是tb_remove()函数,但是我在里面调怎么也不起作用,直到最后找到了这个网页,它告诉我,要这么来折腾: parent.tb_remove() 于是就达成需求了……
Android中使用自定义Adapter
算是对这段折腾android的一次小结吧,呵呵。 一个很简单的界面,上面留块地方放logo或者banner,然后下面放个东西来显示数据。试验中上面使用的是TextView,下面是ListView。对于ListView,当然需要使用Adapter来显示数据啦,但默认的Adapter满足不了需要,因为我的那个一条需要显示的东西不是那么标准,所以折腾了几天,自己弄出来了一个fooAdapter,顺便还有这篇文章。
调整Flex默认Application的长宽
Flex的ms:Application默认有一个大小,我新建的Panel要比这个大小要大,所以默认会出来滚动条,看着比较的不爽。但是如果在Application中把大小通过Height/Width设死的话,在窗口放大或者丢浏览器里面看的时候又不会居中,比较的不爽。最后终于在这找到一篇文章讲这个的,这个参数不是在mxml文件里面设定的,而是需要在编译的时候传入-default-size 800 600 参数。命令行编译的话,是需要把这个参数加在mxml文件后面的,即这样: mxmlc.exe foobar.mxml -default-size 800 600
Ubiquity + dict.cn 查字典
关键字: ubiquity, dict.cn 前天装上了个ubiquity,觉得满好玩的,于是就想做一个查词的东西,因为它里面默认的东西用的是Gtrans,对于单个单词的释义感觉有时看着云里雾里的,于是就萌生了自己写一个命令的想法,然后就做了。 看了几分钟教程,就开始折腾了,先从一个HelloWorld开始,然后慢慢扩展。其实没啥难的,按着例子把想要的东西加上就是了。赞一下dict.cn,不止提供了地址栏直接查询,还加上了XML接口。一开始用的是普通的查询,结果页面返回的结果是GBK编码的,在ubiquity里面直接乱码,当时把我郁闷的不行了。还给它的客服扔了封信,问能不能提供XML或者JSON的接口,结果后来去它的论坛里面逛了一圈,属于直接提供了。一开始我用的还是一个简单的查询页面,返回结果还是GBK的编码,当时被郁闷弄傻了,直接从论坛上找到了admin的邮箱,扔了封邮件过去,然后等发完邮件回来一试XML接口的,好了,于是只好汗自己了,呵呵。 代码没啥东西,只是自己在里面加了一个template,所以看上去很不清爽,由于现在的代码只能扔在sandbox里面,模板啥的也不能发布,所以将就着用吧,0.1.1版本嘛。最后赞一下,开发还是满简单的,这个东西用了一天左右的时间吧。只是调试起来很不爽,大概是我还没找到方法吧,呵呵。点开看代码,嗯。
Posted in Happy coding
1 Comment
Open File with Specified Encoding
其实很早以前就找到解决方案了,只是一直没记录下来,害的我前几天写程序的时候又找了一大圈,现在学乖了,写下来吧。用的是 Python 语言,嗯。 其实很简单,直接用 open 打开的话,好像用的是系统的编码或者什么别的方法来确定编码的,但是如果是 utf8 的文件可能会出错,说可能是因为它有时候不出错,汗。这时用 codecs 库里面的 open 方法即可,它的第一个参数是文件名,第二个是打开模式,第三个参数是文件编码,文件打开后会以 utf8 的格式存入变量,然后就可以处理了,嗯。
Posted in Happy coding
Leave a comment
Google Developer Day 2008
报名了今年的GDD,于是就过去看看了。 早上和平时上班一样的点起床,蹬车去玩亚运村那边。诶,由于某些原因,那边的路叫一个绕啊,还好绕着绕着就找到路进去,没发生看着会场就在对面还进不去的惨剧。 进去后,签到,排的那个队居然系统出了问题,郁闷的不行了,到后来换了两个队才弄完,旁边 一工作人员让后面来的先去旁边拿点饮料边喝边等,后来中午听说有人没拿到餐券,看来在那排队是正确的选择,虽然中午的饭也一般,8过那是后话了,呵呵。在排队的时候居然看到了apt,呵呵。 开始照例是开复的讲话,和去年差不多,嗯。话说开复出来的时候,那叫一个掌声雷动啊,呵呵。所不同的就是去年的会场比这个要小。去年是在北京新世纪日航饭店,今年弄到了国际会展中心。应该是第二次在会展中心参加G的活动了,上次是那个啥互联网论坛。场地是大了,效果也比上次差了不少,开复讲了几句,就把话语权给了号称G第一个女性工程师,好像是产品经理啥的吧,记不清了,呵呵。然后伊就开始讲,主要是大概介绍一下产品,然后讲到一个就从下面拖一个专家上来讲,满不错的安排。总有三块投影幕布,中间一个放的是演讲者的幻灯,一般是鸟语的,两边两块是中文的,NND也不知道是哪个脑残的人做的,用啥字体不好用宋体,细的和啥一样,在后面根本看不清,你好歹也用个黑体啊;中间的投影字倒是能看清,但也不知道谁管的灯光,N盏灯照在演讲者那边,人倒是看清楚了,片子看的那叫一个费劲啊,诶。 这个完了就是分会场,上次好像是分了两个分会场,这次分了四个,外加两个代码实验室。感觉这次几个分会场的一些演讲主题和分会场的主题不一致,像上午云计算移动平台的两场,一个讲云计算的结构,一个讲的机器学习,和移动应用基本上扯不上边撒,诶。 听的第一场是云计算的架构和基础软件,P大数学系毕业的一哥们讲的,主要是介绍了GFS+BigTable+MapReduce ,GFS就是G自己的分布式文件系统,在一开始做搜索的时候,针对搜索系统的东西对文件系统做了优化,主要考虑的是大文件的存储以及对文件的操作多为追加的情况。还说了说G的文件系统的结构,一个Master负责维护GFS系统的运转,然后一堆 Data Server 用来存放数据,它是把数据分成大小相同的块,好像今天是这么说的,然后一份数据存三份用于备份。数据只在Client机器和数据服务器间传输,Master不参与数据传输。然后就是 BigTable,一个三维的数据映射关系,用以替代关系数据库,三个键值忘了,呵呵。MapReduce 就是把一个操作分到N台机器上去做,然后再在另M台机器上进行数据挖掘,最后发到一台机器显示,感觉就是一个数据挖掘的过程,有点像上次看的MPI里面的Reduce,呵呵,也不知道是谁借鉴谁的。顺便提一下,这场的人叫一个多,反正我是在站在门口听的,满不错的,嗯。 这一场没听完就撤了,去了别的会场,本来是想去听应用平台主题的,于是跑到那边,结果等上一个哥们讲完了,再仔细一看原来是讲GWT,于是赶快就撤了。转了一圈最后去听了社区平台的东西,说的是把自己的网站加到OpenSocial的容器中去,讲的满搞笑的,Chris Schalk和沈翔。不过内容倒是没怎么听,因为都是偏概念的东西,而且我个人对SNS倒真的没啥爱。所以听了一半直接闪人,也算是给那些站着的人空个位子出来,呵呵。然后去地理API那边转了转,人好少,不过也没细听就撤了,跑代码实验室转了转,结果发现讲的东西都用过了,继续闪,在移动平台那块门口转了转,讲机器学习,片子上大把的公式,把我雷到了,只有闪。闪出来没到吃饭的点,于是在外面傻傻的坐着,想找个认识的人搭讪,可惜未果。 好不容易等到吃饭点了,跟着大部队去吃饭(顺便说一下,一楼有个EMC展会,我们一票人就大摇大摆的从人家展会那穿过去了,还由于场地问题在那交通堵塞了N久,想想都汗),饭嘛,盒饭,一盒饭加两个小馒头,菜里面一个炒素菜,一个鸡腿,一个大概是洋葱炒牛肉,把牛肉挑吃了,不吃洋葱,木办法,呵呵。中午吃饭的人那叫一个多啊,排了三个队,拿到饭后还等了N久才有地方坐下吃。排我前面的是一个exoweb的mm,好像是来迟了木有餐券,于是就木有吃上,也不知道是怎么解决的。还有个不爽的就是大概排到后来没有饮料了,只好给我们每人一瓶水,本来是有个小盒装的鲜橙多的,诶。在身后人虎视眈眈的目光下吃完饭,赶忙起身让位,呵呵。看看时间也不算太早了,直接就去下午的会场了,听的是实现平台的东西。 下午第一场是讲Google Gears,几个demo看下来,唯一的想法是很好很强大,呵呵。一个是桌面快捷方式,有点像Mozilla Lab的prism,不知道这两个有啥区别,反正我是都没用过,有空试试;第二个demo是上传文件,一次传一堆,也满好玩的,不过好像在好看簿有看到过,应该用的不是gears;第三个是脱离浏览器的Alert等东西,也满好用的;第四个是和WiFi的运营商啥的一起,定位后查找周边,就这玩意引了一堆人问,能操作这个东西还是满不错的。反正给我的感觉不错,一开始还以为就是离线浏览的呢,没想到现在有这么多功能,嗯 第二场讲的是GAE,可惜已经用过了,限制太多,不说啥了,不知道能不能在上面布置非阻塞的web fetch进程,要不然肯定过不了它的时间限制。会后和Tom聊的时候说到一次Data View出了500的错,可惜那会没细去想,没准还是个bug呢,呵呵。 然后,和apt聊了聊,再然后,我有事就闪人了,嗯。 总结结束,差不多就这样了吧。有几点感想: 1、碰到老外,还是会结巴啊,要练口语了,诶 2、最受不了那帮自我感觉良好,然后操着各种口音的英语说着国人和老外都听不懂的鸟语的人,估计主持人都想来一句,您还是说中文吧。 PS:刚去瞅了一眼,上次申请的GAE还是三个App诶,不错不错,刚用掉一个还有俩,做点啥呢……
Posted in Happy coding
Leave a comment
MoinMoin on Windows with Apache
昨天想着要装一个wiki系统,于是想到了MoinMoin,上次装是在Linux下,这次手边暂时没有Linux的机器,只好用Windowz了。在这记录一下安装过程吧,反正是比较麻烦。 先是把那些个软件装上,啥Python, Apache啥的,再去下载MoinMoin,它是用easy intall做的,直接下载,然后运行setup.py install即可。然后开始配置mod_python,也是windowz下的exe文件,双击运行,自动安装。有点不同的是它在最后会询问Apache的安装位置,大概是要把那个.so文件拷过去吧。然后开始改Apache的http.cpnf文件(在Debian下装的时候,那些个mod是分开放的,有个目录专门放被加载的mod),加载mod,配置Directory,测试。 mod_python测试通过后,就是MoinMoin了,新建一个文件存放wiki的文件,从MoinMoin安装的地方把moin.cgi文件拷过来,再在http.conf中加上一个script alias,然后设置wikiconfig.py,首页名称啥的,还有一个静态文件的地址,应该是绝对路径。但是在这里设计不行,还需要在Apache的http.conf中加上对静态文件目录的访问权限。再然后,就差不多了,嗯。
Posted in Happy coding
Leave a comment
GAE上的blog
折腾了两天发现后来发现没有用的东西,还是比较郁闷的事情。不过还好,没有被打击,又开了个新的东西。有了前面的一个经验,还是满快的,嗯。 做了一个十分简单的blog系统,说说里面有用的东西吧,由于blog很简单,所以只用了两张表,一张放文章,一张放Tags。其实本来懒到只想用一张表的,但是想想只有文章,那和留言板也没什么区别了,所以,加了个tag。文章中的taglist是用ListProperty建的,list的类型本来想用db.Key,但是查询那段代码写着太麻烦了,所以最后用了简单的字符串,没办法,我比较懒,呵呵。 还用到的一个模块就是认证,也是很简单的,传到服务器上后直接用google帐户的认证,满不错的,也满方便的,于是我就直接用了。在get时判断是否登录,如果登录了就显示表单,否则给个要登录的链接。两个用的是一个页面,用到了模板中的判断{% if %},也很方便。从表单取数据直接用self.request.get(<name>)就行了,没啥好说的。 还有个地方就是URL的正则匹配,在app.yaml中有,在webapp的main()函数中也有,我是在app.yaml中把所有的URL映射到了一个地址下,然后在webapp中细分。它的正则匹配就是在函数中按顺序匹配()中的内容,变量名随便起,然后可以直接在函数中用。 别的,没有啥了,嗯。
Posted in Happy coding
4 Comments