Web Analytics

Review Board的几点使用体会

近期产品线研发体系正式将Review Board这款优秀的基于Web的代码评审开源工具引入到开发过程中,作为产品线内各项目组进行代码评审的辅助工具。我对Review Board近两年多的关注总算没有白费,算是有了一个还算不错的结果。不过Review Board的正式使用并不代表一种结束,反而恰恰是一个新的开始。我们下一步要关注的是如何用好Review Board,让它真真正正地为改善产品质量和开发效率出力。 ...

March 4, 2011 · 6 min · Tony Bai

又遇字节序问题

今天上午处理了一个线上产品的故障。分析来分析去,最后定位问题还是出在字节序转换的环节上。 其实测试组早在产品上线前就曾报告了这个问题,但是对应的开发人员并未对该问题进行深入地分析,而是有些草率地将该问题归结为客户端模拟器的实现不符合标准。因为这位同事比较资深,所以当时我也没有给予足够关注。 ...

January 21, 2011 · 2 min · Tony Bai

"%05s"行为未定义

下班前,一位同事发来的mail中提到这样一个问题:在Solaris上,新添加到Project中的一段代码编译有Warning,由于我们在Makefile的GCC命令行中设置了"视警告如错误“的-Werror编译选项,导致了项目无法成功Build。 这个Warning内容如下: warning: `0’ flag used with `%s’ printf format 产生这个Warning的那行代码大致是类似这样的:printf("%05s%06s\n”, “11”, “222”); 其实这段代码是从老项目中Copy出来的,在老项目中,这段代码运行的很是正常,也许它在老项目Build时也会产生Warning,不过之前大家也都没有关注。 ...

December 17, 2010 · 2 min · Tony Bai

也谈共享库

近两天一直在考量产品安装包改进的事宜。说实话,我们的安装包做得不够"专业",不仅没有按照各个平台的标准安装包形式(比如redhat的rpm,debian的deb或solaris上的pkg包)制作,而且安装包在生产环境中还需要再进行一次链接才能得到最终的可执行程序。这样一来,每次制作安装包都很费时费力(虽然有自动打包脚本),安装包的"体积"也很是庞大,因为包中要包含所有.o目标文件和一部分自有库以及第三方库的.a文件。 ...

December 13, 2010 · 7 min · Tony Bai

给assert加上返回值,不给力!

众所周知,assert是程序调试阶段的一柄利器,可以帮助程序员快速的定位代码问题。但一般来说当程序部署到生产环境的时候,我们会选择关闭assert。不过由于历史原因,我们运行在生产环境下的程序中的assert依旧发挥着作用,这样一把双刃剑就悬在了我们头上。 ...

November 24, 2010 · 3 min · Tony Bai

有选择的保留遗留“惯例”

在工作中,我们常常会听到这样的声音:“原来的系统就是这么做的!”。 没错儿,在工作中我们潜移默化地受到了遗留系统的一些设计和实现的“惯例”的影响,另外天生携带的懒惰基因使我们很少去思考和判断这些惯例的正确性和保留的必要性。但事实上,我们确应该经常重新审视这些遗留的“惯例”,有选择的保留,并敢于放弃。 ...

November 15, 2010 · 4 min · Tony Bai

也谈Configure脚本问题的解决

开了一个下午的技术交流会,回到办公室时离下班时间已经不远,天气预报说今晚有暴雪,外面阴沉的天气似乎也证实了这一点。这时一个同事遇到了一个软件包编译的问题,一时无法解决,向我求助。 ...

March 19, 2010 · 3 min · Tony Bai

HelloWorld.s

都说汇编不易学习和使用,的确不假。自己自大学以来也曾多次尝试学习汇编,甚至大学时还有相应课时,但是自己对汇编依旧是浅尝辄止。工作后也少有使用,对汇编的认识也就停留在基础层面。汇编的学习与对计算机系统的理解是密不可分的。工作这些年也算是一直浸淫于系统层面,经过多本底层相关书籍的教诲以及工作中的实践,对计算机系统的理解就自然而然加深了。昨天下载了一本名为:“Professional Assembly Language(中文名:汇编语言程序设计)” 的电子书,目的是想了解一下C内联汇编(Inline Assmebly)。花了半个小时读后,居然感觉轻松自如,和自己大脑中的知识融会贯通起来。发现这本书在卓越网还有“剩本”,也就抓紧买了下来,下周到货。 ...

February 28, 2010 · 2 min · Tony Bai

一个Solaris x86平台64位编译的问题

上午在做一个Solaris 10 on x86代码移植测试过程中,发现一个Gcc编译问题,这里记录下来以作备忘。 我们的代码在一台安装了Solaris 10 for x86平台的机器A上进行64位编译(gcc -m64)时报错,错误信息如下: ...

November 5, 2009 · 1 min · Tony Bai

Review Board中文支持

Review Board安装成功至今已半月有余,这期间我一直在试用它,虽欣喜于其提供的强大的功能,但还是有若干使用中的问题一直让我头痛不已,同时也阻碍了在部门推广该工具的进程。 ...

October 5, 2009 · 5 min · Tony Bai