开发者和技术支持

来香港这么久,渐渐发现和香港同事的“道不同”其实还是源于来自国内的我一直都是程序员(programmer,开发工程师)的思维,而香港同事则是技术支持(business support,支持工程师)思维。这两种思维在我看来,可以说是截然不同 - 可以这么说,程序员倾向于认为自己的同伴和后辈要足够的聪明,他们需要并且可以用代码来沟通,可以说更多的是一种默契配合。而技术支持的关注点更多在business,和supportablity(自己生造的词“可维护性”,于maintenability有所区别)。

简单的说程序员认为人人都是聪明的,而support可能认为人人都是被动的不积极的不负责任的。

–一时的感想

关于对象图(object graph)的idea

可能一说object graph,有sense的人就想到ognl。没错应该是这样,我在一开始遇到这个问题也是一样的想法。我的最初想法是:有没有一个工具可以把一个实例对象的对象图“路径”全部列出来呢。比如,类Father:

class Father{
String name;
List<Child> children;

}
class Child{
String name,age;
Father father;

}

现在有一个叫王二猫的father,有两个孩子,那么我要的就是:

father.name
father.child[0].name
father.child[0].age
father.child[1].name
father.child[1].age

我不需要知道具体的内容,只需要上面的这些object graph里的路径,当然我会用这些路径获取相应的属性值。ognl和commons-beanutils是把这些路径作为参数来获取相应的属性值,而我想要的就是根据一个存在的对象来生成所有可能的路径串。这样作有甚么意义呢?可能很多人不是很明白我到底想要干什么。其实由来是:我想要动态的方式去遍历对象的所有属性(包括nested属性),然后统一处理,比如想要比较两个对象我不许要写一大堆代码去一个个遍历每个属性,而是根据object graph的路径去动态获取。

可能是“成长”了,最近想的东西很多都是关于动态,脚本。btw,BeanUtils.describe是做不到的,因为得不到nested属性 – 不过似乎可以用它来遍历对象图. – 这样好吗?

不一样的中国地图

看看不同的人是怎么看中国其他地方的.没有不敬的意思,只是觉得作为一个“大国的子民“真的作到包容和了解并不容易。我的一个上海的小同事分不清楚新疆和西藏“哪个在上面哪个在下面”。想让世界了解我们自己,其实我们自己都不是很了解。

http://www.xucx.com/blog/post/map.html

顺便贴几个上来


大龄女青年的:

Oracle tips

获取会话ID

SELECT SID FROM V$SESSION WHERE USERNAME = ‘<Schema_user>’

获取被锁事务

SELECT SID, TYPE, LMODE, REQUEST, CTIME, BLOCK FROM V$LOCK WHERE SID IN (SELECT SID FROM V$SESSION WHERE USERNAME = ‘<Schema_user>’)

获取被锁对象

SELECT OBJECT_ID, SESSION_ID ORACLE_USERNAME, OS_USER_NAME, PROCESS, LOCKED_MODE FROM V$LOCKED_OBJECT WHERE
SESSION_ID IN (SELECT SID FROM V$SESSION WHERE USERNAME = ‘<Schema_user>’)

数据导入导出
exp cls02/[password]@[OracleName@tns_name] file=c:cls02_20080528.dmp owner=cls02 indexes=no statistics=none

imp qa02/[password] @[OracleName@tns_name] file=c:cls02_20080528.dmp fromuser=cls02 touser=qa02

获取服务器的语言设置(解决乱码问题时用到)

select * from v$nls_parameters

看这两个字段:
NLS_LANGUAGE
NLS_CHARACTERSET

NLS_LANG格式:
NLS_LANG = language_territory.charset
有三个组成部分(语言、地域和字符集),每个成分控制了NLS子集的特性。其中:language 指定服务器消息的语言。
territory 指定服务器的日期和数字格式。
charset 指定字符集

确保和客户端的设置是一样的

敏感

今天收到这个。感觉真的好搞笑。

尊敬的用户:
请检查您的网站内容是否包含以下内容
新增三个关键字:“家乐福,深圳南航,南航空难”。
请马上检查您的网站是否有以上内容,如果再被网监查到的话就直接关站直到站长主动联系处理。检查对像为各类论坛,CMS,以及博客,我们郑重的警告各站长管理员请不要涉及任何政治内容。

不知道”我今天和老婆去家乐福买了张凉席“是不是要被处理,“今天南航的飞机晚点了,害我等了半小时”是不是也要被处理。以后干脆搞个自动替换关键字的插件,应该蛮有用的。干脆把贬义词都和谐掉,那才和谐。比如:“老”,“难”,“累”,“苦”,“坏”,“独立”,等等,独立好像是中性,不管反正敏感的都不要说。

弗洛伊德把人的行为统统用性冲动来解释,比如一些人喜欢讲脏话其实可以解释为一种性冲动的排解,如果不让他排,迟早要憋坏的,平时让他过过嘴瘾总好过憋出个变态来。对大家都不好。

关于版本管理的一点总结

这是最近几天研究的一个关于配置管理,变更管理,发布管理的简单流程 – 根据我们目前的情况和需求.用到了clearcase的细节就不说了.把流程图先发上来.这个图着重指出的是change coordinator的practice.

相关资料:
Common ClearCase Practices

High-level Best Practices in SCM

Clearcase Versioning[PDF]