2006年8月23日星期三

bug驱动。

实验室试行bug驱动开发的管理办法,严格指定每天测试人员抓bug和开发人员改bug的数量, 并以此作为员工业绩的重要考核指标。
领导的意思很明白,想比较精确地量化员工的工作力度,能够督促懈怠者,并且易于管理控制。
个人认为bug驱动开发的思路是好的,许多开源项目就是被社区内用户的新功能请求和bug提交来推动发展的。但这种严格量化的方法值得商榷:一、用一种简单的计数方法来比对各种不同类型的开发任务是不太科学的,比如界面表现的修修补补、针对用户体验的调整这类任务和新功能模块的添加以及性能的调优这类任务基本上是没有比对意义的;二、严格量化确实能够敦促懈怠者,但对于积极工作的员工来讲反而会影响他们的积极性,是一种负累,因为除了努力工作外,还要考虑将自身工作整理成定量的条目展示给领导者;三、严格量化本身就出于管理者对员工的不信任,这种方法在某种程度上会影响员工在工作上的积极创新的兴趣。
bug驱动不是错,但严格量化的方法是管理上的倒退,这是属于古老的“科学管理方法”体系中的东西,不适用于新兴IT从业者,因为和制造业工人比起来,他们更需要轻松的环境和自由发挥的工作空间。

2006年8月20日星期日

测评及其后。

8.17日下午测评结束。
忙碌了几个月,目标似乎就是为了在某个时刻得到某些人的肯定。
眼前还闪现着测评前一天由于数据简陋、程序bug和PPT未完成而烦躁不安的心情,Evaluation Eve和第二天早晨补PPT时的紧张,测评时录入数据失败时的强作坚强,以及测评后想要放把火的释放。
不管怎么样,已经完成了一个阶段,测评后大家能够凑在一起轻松愉快地总结就是我们这个阶段的胜利。

测评之后。
不相干的私人生活。
约了一个曾经的相亲对象游香山,这是第三次去了,并没有抱着非要爬到顶的野心,只是要出去散心。登得很慢,见水就停,见风就歇,在璎珞岩和眼镜湖畔很是驻足了一会儿,惬意。
又去了一次植物园水杉林,怀念很久了,在瀑布前的呆坐把一路的闷热和劳累都赶走了。往回赶,下一个引诱我们的目标是狼吞虎咽。
收获了很多,除了从我们第一次见面时就互相怀有的希望。
并没有直接回宿舍,在一个朋友的住所附近下了车,想寻找点什么?可能是吧。
最终买了两瓶酒两个鸭脖两个人在公园内混到零点。
躺在床上暴尸时,灯也忘了关。

周日晚,跑到实验室记下这些事情。
一个周末又过去了。

2006年8月12日星期六

live

face, calm, work, think, change and adapt, no complaint, no noice!

2006年5月17日星期三

项目进展─目标、激励。

项目走到现在,进展时快时慢,成员的积极性时有变动,我的心情也随之经历了若干次起落。
前段时间对照进度表,曾一度陷入延期、加班的恐慌之中,经过分析、调整,最近两天有了些起色。
归纳一下,感觉有两点经验或者说教训:目标要明确,激励成员要得法。
所谓目标明确,就是说在项目启动时,作为“头儿”,首先要非常明确地知道实现这个项目的目的何在(比如说做这个项目是为了应付谁)、期限如何,并且把这个目标明确地传达给成员(让成员心里有个谱),即使自己把握不了,也要暂定一个目的。至于具体的需求目标,就可以在确定大的目的之后逐渐细化考虑,这个过程可以由成员参与。每一个阶段都要让成员明确当前的目标。
所谓激励得法,做起来就难了。保证项目进展有条不紊,让成员获得成就感,这是激励;保证团队内部的和谐,让成员具有凝聚力,这是激励;但具体如何达到这些状态就需要根据实际情况不断地分析、调整,变换“手段”了。了解成员的特点、心理是有必要的。工程紧张时用一定的压力也是有必要的,成员在当时可能有抵触情绪,但赶上进度之后就会获得成就感。最重要的一点,大家是一起做事的,把事情做好是共同的目标。

2006年5月8日星期一

几个句子。

假期看了老舍的<微神><无题>,感觉到应该是老舍先生对初恋的纪念和祭奠。看到老舍描写的梦境和眼神,不禁想起了高中的那个中午,楼道里的那缕阳光,被阳光弥撒的红红的脸庞和晶莹的眼神。

<微神>里有一句话:明天的渺茫全仗昨天的实在撑持着,新梦是旧事的拆洗缝补。


今天看了潘石屹的风花雪月和经济增长,里面提到了进步的驱动力、中庸。
有这样几句话:
驱使我们奋发求学的最大的动力之一,应该是:对美的鉴赏,受美的吸引。 — Farzam Arbab
中庸之道是用谦卑对诚实的修正;是用爱心对正义的修正;是用超脱对爱心的修正。
判其曲直,辩其诚伪,校其得失,衡其是非,必可修中庸之道。 — 李大钊<民彝与政治>

2006年5月7日星期日

随意贴。

将随意贴的内容转存到这里,清理一下桌面。

[1] IBM中国研究中心 空间信息处理
空间信息(包括地理,位置等信息)在人们日常生活中起着重要的作用。IBM 中国研究中心在空间信息处理领域,将传统空间处理技术运用于普及运算环境中,主要研究课题有基于位置的信息服务 (Location-based Services,LBS),移动目标数据库(Moving Object Database,MOD)和空间数据仓库和空间联机分析处理(Spatial Data Warehousing and OLAP)。我们开发了 LBS 中间件平台和基于 Java 的位置服务软件包,此功能已经集成到 IBM 的 Websphere 产品系列中。位置服务支持最新的工业界标准,如 Parlay 和 Web 服务界面(Web Service)。移动目标数据库支持对移动用户位置的管理(跟踪,查询和事件触发器),为 LBS 的高级智能应用提供平台支持,例如基于空间信息的消息订阅/发布服务。空间数据仓库和 OLAP 技术将大量隐含在现有数据中的空间信息集成到数据仓库中,利用创新的空间 OLAP 分析技术帮助决策者从丰富的空间信息中获得更多的信息和知识。

[2] 小型机器人
约30厘米高 1mm铝板
22个自由度:每个腿上6个,每个胳膊上4个,头上2个
驱动器是标准的小型R/C伺服电动机(11个):
BMS-380 MAX: 角速度=0.15sec/60度(4.8V), 输出扭矩=4.1kg/cm(4.8V), 重量=16.4g
12V/8A外接电源,
内部两个变压器: 一个5V/1A供应电路; 一个5V/10A供应驱动器
RS232接口电平转换芯片: MAX 232

[3] mysql运行相关命令
yanj#bin/mysqld_safe &

mysql -h110.110.110.110 -uroot -pabcd123

CREATE TABLE mytable (name VARCHAR(20), sex CHAR(1), birth DATE, birthaddr VARCHAR(20));

DESCRIBE mytable;

LOAD DATA LOCAL INFILE "mytable.txt" INTO TABLE pet;

[4] GAIM源码获取与编译相关
export CVSROOT=:pserver:anonymous@cvs.sourceforge.net:/cvsroot/gaim
cvs login
cvs co gaim

cd gaim
cvs update -d
./autogen.sh --enable-vv
make

[5] 胡思乱想
基于地图的随意贴随意画工具
比如读<诗经>时, 读到卫风, 拉出中国政区图, 根据注释在地图上画出卫国的大致范围, 并指定时间范围

五一

五一假期一晃而过。
比原来更怀念假期,有种说不出的危机感。

2006年4月22日星期六

音乐会。

昨晚去听了一场纪念肖斯塔科维奇百年诞辰的音乐会。
肖斯塔科维奇的第一钢琴协奏曲中生动的小号给乐曲增添了许多活跃气氛;据传记作者说,斯大林一死,他就作了第十交响曲,其中的第二乐章据说是斯大林的音乐肖像,听起来有那么点意思。
渐渐对各种乐器的音色有了更多的识别能力,印象比较深的是年轻有力的小号、悠扬的长笛,还有变化较多的长号,似乎听到长号能够吹奏出一只小笨熊摇摇摆摆地走动。
在每次听音乐会的过程中都会考虑应当如何欣赏古典音乐,至今也没个头绪。有说需要了解乐曲的写作背景,结合作者思想来欣赏的;有说没必要那么累,欣赏的时候可以随心所欲、心游万仞,将曲调、节奏关联到任何你能想到的场景、心情,比如猫和老鼠的电影情节;是不是也有说只需要调动某一种情愫随乐曲起伏呢?还是搞不太懂到底应当如何欣赏。
这次听音乐会的时候我倒是更多地想到了项目管理与交响乐、协奏曲的关系。用于沟通的文档其实就如乐谱,每个成员应当能够根据乐谱迅速找到自己当前的位置,紧随乐曲进度。如果团队的管理者能够做到像高明的指挥一样,感应到团队气息的细微变动并及时协调,团队中可能有类似协奏曲中钢琴、小号、小提琴等的比较核心的角色,如果每一个成员能够各司其职,齐心协力,那么没理由演奏不成功。

2006年4月21日星期五

激励。

组里有些同志的积极性不高,一直想不到很好的办法激励。
我不善言谈,但现在也应当硬头皮说些什么了。
趁着周五总结的机会,说点什么,给某些同志提个醒儿:
  1. 交流:做工程不是谈情说爱,交流的时候直来直往比较好,把个人的意见都摆到台面上来,不要回避争吵,为了做好工作而争吵反而能增进情谊,所谓“不打不相识”。不过,只有对项目深入思考才能争得起来。
  2. 成效:既然我们要花费时间在这个项目上,就要见到成效,否则我们的付出就是浪费。有了成效,就有了成就感。大家也都愿意和工作认真、负责、踏实的同志合作,因为和这样的同志合作能更容易获得成效,都能得到成就感。
  3. 积累:小组里分工不同,但不管负责什么任务,都要注意积累一些技术、能力、思想,也不枉费了我们在工作上时间和精力的花销。
  4. 项目是一台交响乐,要想演奏成功,需要指挥、钢琴、小提琴、小号等各个演奏者的通力合作。

2006年4月5日星期三

调节。努力。

当前的任务有:
  1. 要带着一个小组实现一个工程, 需要做项目的设计、需要组织讨论、需要把握进度、需要分派任务、需要协调组员之间以及与组员之间的关系。
  2. 要考虑毕业,需要发表文章若干,需要考虑毕业论文选题。
  3. 也想在项目之外保持一点业余兴趣的钻研,因为在项目中会身不由己地根据项目需要学习。
  4. 另外,还有一些素养方面的需要长期培养,如文史、外语等。
解决方法:
  • 将1、2合并,在项目进行过程中选点写作,不能推到项目结束时总结。因为1将占用绝大多数时间,这些时间不能浪费,并且开发过程中思维是最活跃的,通过写作也能整理思路。
  • 对于3,选择合适的开源项目,标准是选题好、启动晚、更新快、开发语言合适。学习、跟随,在这个过程中提高自己。
  • 对于4,只有在闲暇时挤时间积累了。

2006年3月29日星期三

东莞归来。

上周去东莞出差。

原计划是用一周的时间完成一个系统(用开源软件搭建),后来和对方交流发现他们胃口大了,想寻一个题目到科技局立项,开发任务就变成了写文档。幸亏有相关的文档模板可以参考。
看来真的需要储备一些文档资源,因为软件项目执行的全过程都离不开文档的牵引和总结作用。有些软件工程执行标准或者项目管理规范也提供各个阶段用到的文档模板,但要收为己用还需要在实践中摸索出适合自己的方式,因为文档的书写和工程的流程控制是紧密接合的。

出差期间是在分所领导租住处寄居的,深切体会到在研究所里员工的职位意味着什么,而不是技术、资历意味着什么。也许各个环境下都是这样。期间也和企业的管理者有过接触,他们可以不懂技术,但一定需要有的是人脉。做技术的难道就只能在别人的管辖之下?

东莞环境不错,但潮湿,现在正逢雨季,一周的时间里基本上每天都有雨下,远处、山上都烟雨蒙蒙的。仓促地登了一次旗峰山,印象有三:一是从后山上去时山道幽静,每隔二百米就能看到警示“山路偏僻,小心抢劫”等意思的牌子;二是山不高但草木葱葱、鸟鸣嘤嘤、云雾蒙蒙;三是下山快走到前门发现既有寺院又有道观。

和一个网友碰面, 一晚上学会了一首粤语歌《上海滩》。临来的时候,送我一个雕塑,感激啊。

2006年3月10日星期五

配置管理工具。

经过先前的项目,深切体会到使用配置管理工具的必要性,特别是多人共同开发的时候。
首先,选择合适的工具。这一站点专门对各种配置管理工具进行全方位比较,对SubVersion的好评较多,另外SourceForge也弃CVS转用SVN了。决定选用SVN。相应的还需要Apache服务器以通过Web发布,图形化客户端TortoiseSVN以方便使用。
其次,安装配置。一篇介绍SVN安装方法的文章。
最后,学习使用。参考SVN-Book

昨日杂记。

下午,参加了一个项目的预评审会议,项目组作了技术方案和预算说明的汇报之后,专家组就若干技术点、测试方面问题进行质询,对压力测试关注较多;另外,纠缠最多的就是预算问题了,项目组是一个大公司,开出的价格比较吓人,专家组对人员单价取费标准、高级人员工时分配合理性、重复工作的定价、软件模块定型与否对价格的影响等问题提出质疑。最终要求项目组核减。
晚上,一个久不联系的同学找到我,深夜“出访”,一番长谈短叙之后,对方道出了让我大吃一惊的请求——让我扮男友去看望病中的父亲。电影里的情节发生在我身上,但并不是惊喜。
该来的不来,sigh...

2006年3月7日星期二

由Ajax桌面系统想到的...

对基于浏览器的桌面系统一直只是耳闻,总以为不过是Ajax的简单应用,实现内容整合、页面无刷新而已,今天接触了一下某人整理的13个极品Ajax桌面系统之后还是受到了不小的震撼。
这篇Blog列出了13个系统,分别简单介绍了各自的特点,总体来说它们共同的特点有:系统主页面就相当于一个容器,由多个独立的组件组成,各个组件可拖动、可增删、可编辑。其中Pageflakes系统的帮助信息中就简单介绍了如何开发能够插入Pageflakes系统界面的flake组件,以及系统功能实现的简单原理。在Google的个性桌面系统的组件目录中也可以看到,它能够容纳由第三方开发的模块,并允许查看其XML源码。
感觉这些系统实现的效果很像Portal/Portlet要达到的目标,比如Pageflakes提供了一个组件库(包括map组件等),能够方便地拖入页面容器内运行。不过Portal是从服务端解决问题,而这些系统使用Ajax技术从客户端入手,更能充分利用客户端技术的灵活性提供更舒适的用户体验。比如在服务端可以实现组件的插入,但要实现组件在容器里的拖动还是离不开JavaScript等客户端技术元素。
个人认为客户端的事就应当使用客户端的技术来完成。服务端专心做服务实体,客户端专心做集成界面。现在不能再简单对待Web客户端开发了,应当用工程的眼光来对待,其实它也是可以建成完整体系架构的,看一下JackBe的产品组成:

2006年3月5日星期日

关于我国Linux的发展...

在CSDN上看到关于Linux发展的两篇评论,有点意思:
首先是被称为红旗副总裁白总的文章《Linux的“原罪” 瓶颈中改变的经济规则》,以尼奥和Matrix来比喻Linux与微软的关系,以生产力和生产关系来比喻Linux和GPL,也提出了Linux发展的几个瓶颈和机遇,认为最终Linux会与微软利益团体共存。
另一篇是叫做黄国荣的针对上一篇文章写的质疑《我国Linux发展的瓶颈是GPL?》,提到Redhat、Ubuntu等国外的Linux发行版本因开源而赢利、而国内的红旗等不开源也没有赢利的对比。由于Linux内核是基于GPL2.0许可证,所有Linux发行版都应当是开源的,因而作者对红旗等没有开源的原因进行了一番奚落。另外,也给国内Linux发行版开发商提出了一个方向:开源,发展自己的用户和开发社区。作者认为我国Linux发展的瓶颈在于思想和理念。

创业。

创业可能是很多技术人员的梦想,不是有人说嘛:
企业家留下脚印;作家描述脚印;经济学家解释脚印。

一篇简单而平实的创业日记
作者是技术人员出身,对于眼前出现的各类非技术问题还只是有个模糊的认识。
我也有过(时常有)抓住机会、不惜中断学业也要开创自己事业的冲动,考虑到方方面面的问题都没能成行。
祝福所有那些技术出身,但不甘于只为别人做嫁衣裳的同志们。

文章中提到了“道”和“德”的新鲜理解(至少对我而言是):道是只有自己才能走遍天下,德是要两个人直心相对。

2006年2月24日星期五

1:50000比例尺地图意味着?

今天,国务院新闻办公室发布消息说我国国家基础测绘1:50000数据库正式通过验收。
向师兄询问得知,1:50000的地图意味着分辨率为0.1毫米*50000(也就是5米),即在地图上肉眼可分辨的最小距离为5米。

2006年2月23日星期四

J2EE到Java EE 5

SDN上有一篇文章介绍Java EE 5平台,提出了如下改进:
  • 简化企业应用开发,将Java5的新特性annotation用于多项任务(如定义和使用Web服务、将Java类映射到XML或数据库、指定外部倚赖、指定发布信息等);
  • 高效的EJB软件开发;
  • 通过倚赖注入简化资源的访问;
  • 轻量级的Java持久化API模型;
  • 简化、高效的Web服务支持;
  • 使用JavaServer Faces技术方便了Web应用的设计;
  • 其他新特性如JSTL、JAXB2.0、StAX、等

看旁观者写的一篇介绍J2EE发展的文章
  • J2EE提供了EJB容器、Servlet引擎等框架,并采用运行时调用来管理对象;Struts框架建立在这之上,主要是用MVC模式把业务逻辑和界面表现分离。
  • 在持久化方面,J2EE提供了JDBC和实体Bean两种手段,但JDBC强制用户用Java代码来处理关系思想,实体Bean既笨重又低效不被用户接受;JDO技术因缺少SUN和其他J2EE技术提供商的支持而发展缓慢;Hibernate提供了一种健壮的关系对象映射解决方案。
  • Spring框架负责融合框架与应用业务代码,组合了IOC(Inversion of Control)和AOP,增强了POJO的功能。
  • 致使J2EE领域不确定性的两大因素:开源领域和J2EE标准之间的冲突,AOP的日益重要。
  • 开源领域和J2EE标准之间的冲突表现在两方面:一是表现层标准的JSF和开源的Struts,不过Struts目前也增加了对JSF的支持;二是标准上用倚赖注入简化资源的访问,而这也是Spring的功能子集。
  • 新一代的J2EE规范将拥抱更简单的POJO编程模型。

Web办公套件2005最佳评选(转)

ZDNet上的一个博客对当前的Web办公套件进行了评比,列出各类工具的最佳产品,目前它们基本上还都是免费的:
邮件 — GMail;
字处理 — Writely
表格 — iRows NumSum
日程管理 — 30Boxes CalendarHub
PPT — 还没有相关的成熟产品,S5处于试验阶段,SlideML是基于XML的SlideShow描述语言;
项目管理 — Basecamp
小型套件 — Zimbra