我正式离开了投入了一年的小组,进入了另一个学习和工作阶段。不再担任项目召集人了,我长长的舒了一口气,至少不再有误人子弟的机会啦,所谓无官一身轻
啊。不过毕竟还挂职顾问,多少还是要担负一定责任的,不能大撒把。于是在这周里依旧进行着我原本打算在原来小组进行的一些事情。
我搭建起
了一直想要建立的小组Wiki,尽管我知道反响不会很热烈,但是也算是留下一些东西吧。至于是否接受这种协作方法,这种协作方法会起多大作用,怎样用好这
种协作方法是我想要学习和探索的东西。不过不在其位不谋其政,此次实验多半会失败吧,因为就算在当召集人的时候倡导的一些方式方法始终没有深入人心。
同时我也装了一套BugFree,整理了原本项目的文档。希望接班人能少走些弯路吧。
本
周开始投入新的项目,这次要在整体和细节两个方面把握一个大型项目的设计和构建。原本希望自己回去校内搞一些理论性比较强的东西,不过现在发现这实在是一
个锻炼自己的大好机会。我也许会在硕士毕业之前拥有复杂系统的设计和构建经验,这系统足够的大,足够的有难度,很有挑战。如果可能,获取会有意想不到的收
获。
本周整理文章:
《一周一更新》
《存在》
《耗散人生》
打仗的时候有一个常用的原则:集中优势兵力……如果兵力太分散,或者分批分期的投入,那就是添灯油,都消耗光了也不会有什么效果。
导师找我谈话了,虽然起因是因为看到了我的Blog。但是实际上是他从我的Blog上看到了我的一些苗头,说实话,老师的话给了我一种前进的督促。
过去每每在填写表单的时候,我都会在爱好一栏有所犹豫。我的爱好总是非常广泛的。什么都喜欢,什么都想去尝试。我喜欢画画,小学时候得过区里得一等奖,但是因为这不是我得最爱,我并没有投入过多少精力,所以在这方面也没有多少进步。我喜欢唱歌,小学时候也被选中进入校小合唱队,但是我发现这太辛苦,每天晚上得训练让我厌倦,于是在参赛得奖之后,我以学习为由没有在参加任何合唱队的活动,后来我还是哼自己的小曲子。而小合唱队里曾经的同学们有的考取了音乐学院附中,有的在考大学的时候因为声乐加分,去了比较好的大学。我也曾经参加过数学竞赛,自然竞赛,生物竞赛等等等等。在过去的20余年里,我一直转换这自己的兴趣点,或者同时拥有一大堆的爱好。如果我专注一些,或许我没有现在知道的东西多,可是我有可能会比现在更加有信心去取得成功。
一直以来,我以为自己很博学,什么都知道。但是仅仅是知道而已。就像老师说得那样,如此下去,我会渐渐的形成一个圆弧,不再有锋芒。也就无法取得特别大的成就。
今天和妈妈谈心,谈到未来的发展时,妈妈很淡的看了我一眼,说了一句话:“想了去做,才会成功,还没有好好去做,就去想其他的事情,我对你很担忧。”
老师在给我的Email中写到:
人在年轻的时候都会有很多执着,太多的妄想,这是正常的事情。但是,只有那些一边想着又一边干着的人才有希望达到理想的顶点。我常说的一句话也许你还记得,人的一生实际上就在历练三件事情:历练执着和勇气去克服那些你能够克服的事情;历练肚量和心态去容忍那些你克服不了的事情;历练究竟和智慧去区分那些是可以克服的,那些是不可以克服的事情。如果你执着那些你不能够克服的事情去做,如果你没有勇气去完成那些你能够完成的事情,如果你迷茫+始终的迷茫,那么就将一事无成。因为你年轻,所以你只要选择最简单的事情、用最简单的方法去做,但是要不断地做、连续地做,那么究竟就一定会等着你。
So it’s time to concentrate on one focus. 我想要站在山颠,而不是总在半山腰流连。哪怕看到了更高的山,在征服眼前这座之前,我也没有资格去选择。
因为要专注做好工作,所以很多事情要放弃,Blog的更新速度更是会缓慢许多。大概一周一次吧,我想由于对工作专注了很多,也就在周末会整理一下一周以来的思绪,写些东西记录下我的状况吧。
“人是什么?我想一定是超越了纯粹的存在的某种东西。因为如果纯粹的存在是人的基本特征,那我们和牡蛎又有什么区别——Hsu”
涉及到人的问题,往往会比任何问题要复杂很多,以至于头疼。
相信绝大多数开发团队都会遇到同样的问题:总可能会面对在项目中期新加入的人员。他们可能对业务流程不是很了解,也有可能对软件结构和团队的规范需要熟悉,甚至可能编程技能还没有达到团队的要求。而几乎每个人都希望新人能够尽快的融入到团队之中,尽早的有所贡献。
但
是,这是一种损耗,很大的损耗。等待新手步入正轨是一个充满变数的过程。新手的理解可能有所误差以致完成的代码还需要原有成员进行修改;新手可能充满问
题,需要原有成员进行帮助,而这又消耗了已有的工作能力。甚至会仅仅因为新手的加入,使项目进行陷入暂时的混乱状态。这也就是那条著名的论断的原因之一:“向一个注定
延误了的项目添加人手,只会使得项目更加延期”……
尽管,我们一般不希望团队成员发生变化,但是我们永远无法逃避开发团队的成员变化问题。事实上不断调整的团队会有其他的好处,一个不平衡态也会使得团队可以拥有更多的动力因素。不过,不管怎么说,处理成员的变化永远是一个棘手的问题。
OK,
在每一个人刚刚进入一个团队的时候,他都是一个新人。献身说法是,在我刚刚进入团队的时候,是一个可怕的过程。我所拥有的是一份不完整的文档,注释很少的
代码,和一个不太究竟的目标。尽管师兄也竭尽所能的帮助我进步,但是事实是,我经常听到的最多的话是:“你再看看代码吧”……我的经验是,让一个新手在没
有instruction的情况下靠看代码来理解整个项目是一件恐怖的事情。事实证明,我这一批人在进入项目很久以后依旧没有摆脱新人的状态,我们所拥有
的是“照猫画虎”的无奈,而大部分的代码都没有达到那个我们不太清楚的目的。而最有意思的,同样的代码,不同人的阅读完全可能得出截然不同的想法。
阵
痛过后,我们迎来了一个短暂的春天,每个团队成员似乎好不容易找好了自己的位置。然后,我们面对的是又一次人员调动。我丢掉了三个成手,然后得到了三个新
人(至少对这个产品来说是新人)。我的想法是,如果重复我们进入项目的过程,那会是另一场恶梦。所以我决定尝试另一种方法,我曾经以为会有一定效果的方
法。将每一个新人和一个成手配成一个小组,共同完成任务。其实我原本的目的是让共同开发成为新手的学习过程。而这被证明只不过是另外一个错误。首先,新人
的提问很大程度降低了我们小组的开发速度,学习过程和开发过程纠缠在了一起,正常的工作经常被解释问题所打断;其次,发展到后来,会发现不耐烦的成手开始
宁愿自己承担更多的工作,而把一些容易实现的目标交给同组的新人;再后来,我惊讶的发现,成手和新人完全分割开来了,完全在做不同的部分,没有交流,没有
问题,没有学习。然后我不得不承担,新手代码依旧偏离目标的结果。很抱歉,我失去了对这一过程的控制。
而现在,我们这届的人逐渐要离开当
前的工作进行新的研究了。在走之前,我们必须做到的事情就是把这些工作完好的交接给新人。咳,没错又是新人。老师布置任务的时候强调,要整理好文档,
描述完整。事实上,我想单独靠完整的文档是否能够简化学习过程的。那会有帮助,但是依旧不够。我的感觉是,一个引导性的交待是必要的。我该怎么做,这会是
又一次的尝试。
我会提供尽量容易阅读的文档,但是我不会提供那种“标准”的成摞的文档。事实上,我个人觉得一个完全不懂的人,依靠阅读从
成山的文档和代码中理清头绪是对时间的浪费。我们有交流的条件,几次面对面的交流应该可以更快的帮助他们理好一条路径,然后在安排好起点、终点以及中转站
的旅途里前进,那目的性应该会强很多。当然,老人的帮助还是不能少的,经验是最难获得的东西,但是这种帮助应该更有序,Maybe会安排专人,或者安排专
门时间,总之尽量不打算让大家的工作时间频频被打断,而很难进入状态。
尽管在软件开发过程中,我们谈论更多的是技术、框架、平台一类的东西,或者客户市场和商业前景。但是做为开发的主体,人才是最重要的因素。事实上,当我们谈论项目管理,我们大概想谈的不是技术问题,我们工作中的主要问题是社会学问题。至少,是人在制造软件。
团队成员和机械系统中的零配件完全不同,永远不可能简单替换。我还很菜,我不指望这次的尝试能应对好变更的团队,但我希望这次能比前两次得到更好的结果。不断的尝试其实是很有趣的事情。而关于软件开发中人的问题,会和技术问题一样,不断引发我的思考和学习。
BTW. A worm welcome to my new teammates.
从这周一从睡梦中醒来,我就发现了一个严酷得现实,我得脖子不能动了。落枕得滋味谁尝过谁知道,那叫一个痛苦,带着整个后背都疼,胳膊抬不起来,脑袋动弹不了。坐在实验室得电脑前,那叫一个痛苦!整个几天过得迷迷糊糊得,还得经常用手扶扶脑袋缓解一下脖子的疲劳。
经过4天的恢复,今天早上起来的时候基本没有什么大碍了,胳膊可以自由活动了,脑袋恢复了正常的自由度。还真算是挺过去了。于是今天早上在路上的心情都是清爽的。于是应约去打篮球,又是一个多月没有打球了,手还是真痒痒,虽然人多场少是一大遗憾,但是能玩上一会实在是一件有益身心的事情。
天有不测风云,人有旦夕祸福。又抑或是注定的事情,在一次晃动上篮落地之后,突然间眼前一黑,然后就是脖子剧痛,脑袋又不能动了。坐在旁边休息了一会,实在手痒就又上去瞎打了一会。结果就是回到实验室以后,干脆脑袋一点自由度都没有了,基本处于一个方向上的硬直状态。烦躁到了极点,甚至忘记存盘导致很多代码修改在一次覆盖以后要重新开始。回家的路上也因为混沌的状态撞上了路边行走的ppmm,虽然从某种意义上来说,可以发展成一次艳遇,不过我的心思就是快点到家吧,于是say sorry之后逃离肇事现场,留下mm一人郁闷,虽然心有戚戚,然则实在无能为力。
没办法看书了,也没办法睡觉,躺在床上就是一个疼字。只好靠在椅子上看电影听音乐。现在我脖子上包着热手巾,趁着一段热乎乎的感觉,我从椅子上爬出来,写下上面文字,算是一种泄愤吧。很担心发展成颈椎病一类的麻烦病症,因为专业原因,以后看来得好好养护我得脖子了。
BTW,《Forever Young》这个专辑不错,超可爱得童生演绎一首一首得经典Rock n‘ Rock曲目,动画MTV也很炫。推荐收听收看。
http://lib.verycd.com/2005/10/26/0000071289.html
http://lib.verycd.com/2004/04/22/0000010250.html
挺不住了,我得回到半躺姿势了,各位同行,小心脖子啊!
Emma Watson ,很喜欢Harry Potter中她扮演的Hermione这一人物。聪明,有思想,几乎善于一切事务;有主见,正直,勇敢;而除此之外还拥有漂亮的外貌。
而当这样一个小女孩逐渐成长起来以后,感觉只有一个,那就是惊叹了。多希望有这样一个妹妹啊。
So,Here comes Emma Watson:


Bruce Eckel 的新书 Thinking in Java (4th Edition) 已经开始预定了(in Amazon),新书在原书的基础上针对Java SE5 做了响应的变动,而且针对对Java SE6 的candidate release进行了书中源码的测试。因为Mustang的改动不是特别巨大,所以 Bruce Eckel 觉得在 Java SE6 的正式版本推出以后,也不会对此版本的内容造成特别大的影响。所以估计 TIJ 不会为Java 6再添加什么内容了。
因为Java 5的重大变化,Bruce Eckel 坦言他花费了一年半的时间来修订这个版本,比他预计的时间要超出很多。相比去年早早就出来的 Core Java 7e 可以看出 Bruce Eckel 在本书中投入了很多的思考和琢磨。
TIJ 4e 与 TIJ 3e 的章节比对(左边是3rd, 右边是4th)
|
|
Bruce Eckel 的Thinking in 系列在全世界范围内得到了广泛认可。Amazon对 TIJ4 的 Editorial Reviews 中毫不保留的将 legendary author (传奇作者)这个 title 加在了他的名字前面。而就 Bruce Eckel 自己的话来说:“I also think this is significantly better than any work that I’ve done in the past. ”而我本人对这一系列实在是钟爱有加,从组织结构,知识体系或者行文风格上都很合个人口味。
遗憾的是,这个版本的 TIJ ,Bruce Eckel 决定不再提供完整的电子版本供大家免费下载了。在MindView网站上仅仅提供了Front Matter + First 7 Chapters + Index 的Sample包可以下载。也就是说,我们无法在第一时间享受这一部作品,也不会拥有 TIJ 4e的免费套餐了。另一点小变动是此版本不再提供配套光盘,源码和原来附带的Thinking in C都需要到MindView网站上下载了。
而因为不再有免费的完整电子版,前七章的内容又太少且浅显,在这里我没有办法给出更多的评论,我们能做的只有等待了。
Just another simple day !
如果不是路过花店的时候看到宣传板,如果不是乘电梯的时候看到送花人,如果不是看到日历上的2月14。谁晓得今天是所谓的情人节。
一个年内要结婚的师妹姐(岁数比我大,入学比我晚)说:
-“你要是有女朋友,一定要送花”
-“我没有女朋友”
-“你还小”
-“……”
不过应该知道,尽管两个人可能在一起很久,一切都成了习惯的时候,还是需要互相做出特别的关怀,尤其是在一年一度的特别的日子里,生日,情人节,纪念日……也许口上不说,但是来自最亲密的人的关心&爱意是最好的礼物。今天还没买花的gg们考虑一下吧,算是对自己情感的一种表达吧,也许世俗,但是有效。
MSN上,一个在普华永道的同学今天Change了:“不求浪漫,不求温馨,只求一个没有加班的情人节,这要求不高啊”…… 也有人依旧留名“断肠人在天涯”。
Maybe, Something should be special for Somebody today……
带给我们IBM PC标准的IBM甩开了PC部门。曾经拥有最出色的IDE的Borland要踢走IDE。不是我不明白,这世界变化快。技术的,商业的,政治的,莫名其妙的原因把 每个人的头塞得满满。不必明白,只需要接受现实。
没有PC的IBM开始做服务,没有IDE的Borland瞄准了“更好的目标”。就好像沈阳夏宫不干了一样,不是没钱赚,是因为把这些钱放在其他地方收益更高。资本的运作本来就是追求更高的利润,痛心也好,怀念也罢,毕竟俺们既不是控股人,有不是决策者,搬个板凳坐下先。
Borland笃定是不陪微软玩了,一个dotNet ,搞的Borland相当郁闷,一方面不得不积极迎合,另一方面又试图以跨平台开发的特性绕开dotNet。但是Borland忘却了新网络时代的来袭,也不怪Borland,微软似乎也迷失了好一阵子,现在似乎还有点后遗症。紧接着Vista的一套组合拳是极其凶猛的,Avalon,Indigo,WinFS……从架构上的根本改变使得微软在Windows应用上的优势更加扩大,其实本来就没有什么希望,人家设的赌局难道能让外来人赚肥咯?问题是,Borland避开了微软,又和IBM在某种程度上掐上了,毕竟Rational在一些方面走的很快。IDE其实和开发过程是紧密结合的,其实这种结合也是一种特别的优势,也许人家看得比我这种菜鸟更加明白咯。
而另一个以我这种菜鸟的水平一直看不清楚的是Vista这种大洗牌后的未来。据我所知,别说dotNet 2,就是dotNet 1的转换还不够完全。太多的因素让开发者没有选择走dotNet这条路。而且相比在WebApp和嵌入式\移动设备大行其道的形势下,windows只是一种选择。而我本身似乎也不大喜欢dotNet运行库这种东西的存在。或者仅仅因为吃不到葡萄说葡萄酸罢了。尽管最终发布的时候可能会好很多,但是Vista对机器性能的极端要求,让我并不急欲了解它。我一时半晌用不起,别人也若干长时间用不上。因为还有更多更加值得学习的东西。
不过不管风往哪吹,只要有一技之长眼下大概还不至于饿着肚子。我还着实有点担心那个稍微遥远一点未来,当只需要画画图,写写文档就可以制造软件的时候来临,我能学成什么样子?还能不能混口饭吃了。
我顶多也就是用过Java 1.4 ,下周Mustang Beta(Java SE 6)就要面世了,真有点“还没刷牙”的感觉。
大风起兮云飞扬,其路漫漫兮赶路忙。
Enya是我最喜欢的New Age 歌手之一,刚刚听到她的最新专辑《Amarantine》……
So Good!
Amarantine,诗人用这个词来形容一种永不凋谢的花,这张专辑叫做《Amarantine》的意思是永恒。Enya用了两年的时间来准备这一专辑。也怪我的孤陋寡闻,去年11月22日就已经发行的专辑,我今天才听到。当梦幻般的歌声再次想起,Enya又回来了,依旧喜欢她的歌声!
其中Amarantine一曲空灵婉转,无论是曲调还是歌词,在我脑海中引起了无限的鸣动。
《Amarantine》
试听
You know when you give your love away
It opens your heart,
everything is new.
And you know time will always find a way
to let your heart believe it’s true.
You know love is everything you say;
a whisper, a word,
promises you give.
You feel it in the heartbeat of the day.
You know this is the way love is.
Chorus
Amarantine…
Amarantine…
Amarantine…
Love is always love
You know love may sometimes make you cry,
so let the tears go,
they will flow away,
for you know love will always let you fly
-how far a heart can fly away!
Chorus
You know when love’s
shining in your eyes
it may be the stars
fallen from above.
And you know love
is with you when you rise,
for night and day belong to love.
AirSet 是一款Online Calendar,功能比较丰富,界面也比较美观。经管很早就有人介绍过,不过直到今天我才决定开始使用它作为我的Calendar工具,而之前,我一直使用周历和笔……
AirSet主要拥有Calendar,toDo List,Contacts,Blog以及Weblinks的管理功能,Group功能设计十分贴心,完全可以用于小组的时间管理工具,甚至是交流工具。同时,具备Email,Skype等的协作功能。无论用来做个人的时间管理,还是整合团队的进度安排,都是比较理想的工具。AirSet支持与OutLook以及Palm的同步,同时也支持美国地区mobile phone的同步与提醒。功能多,但是不杂,紧贴Calendar这个核心应用,可以做为比较合适的时间管理工具进行使用。
遗憾是,skype组件暂时只能在IE6和firefox1.0下使用,mobile phone只支持美国地区,不过其他方面也足够好了。瑕不掩玉嘛。
不过并不打算把这一工具介绍给我的开发小组,经过之前的几次尝试,发现无论是强迫还是诱导别人违反自己常规习惯的事情,都是要花费大量成本的。而这成本,将从我自身的整体时间和精力中扣除,因为现在是学习阶段,完善自身是首要任务吧。我曾经耗费很多时间用来引入各种软件开发的经验和过程,也试着应用大量的管理方法和实践工具,结果热情和详尽的介绍并不能带来什么变化,几天以后又恢复到从前的样子,还需要我的提醒和帮助才能继续,鉴于成本如此之大,也就只能作罢了。尽管投入的成本应该在长期上获得收益,但着收益在目前的情况下并不属于我。拥有影响人的能力,但不一定值得去影响吧。
说了很多题外话,总之先用一段AirSet看看效果吧。



