如果在前几年SSH火热的时候,提起Gavin King,那是如雷贯耳,现在虽然从事数据库管理的部分要多一些,感觉开发都快淡出了自己的能力范围了。但是看到Hibernate的故事还是让人热血沸腾。
SSH就是Spring+struts+Hibernate 的简称,后来有了Structs2,成了SSH2.
先来看看没有Hibernate之前的Gavin King.


Gavin King开发Hibernate的主要动机是当时的EJB CMP太过繁琐。那是2001年,Gavin King就职于澳大利亚悉尼的一家J2EE软件开发和咨询公司Cirrus Technologies。
Gavin发现在当时的项目开发中,他总要花很多时间处理Entity Bean的体系架构,这个工作步骤繁冗,结构复杂;而真正的软件核心业务逻辑却很少有时间顾及。他计划搞出一套比Entity Bean更好的方案,帮助所有J2EE的开发人员摆脱CMP的困扰。
他首先将这个想法告诉了自己的老板,Gavin抱怨EJB Entity Bean 1.1的架构复杂,CMP给自己过多的限制。而Cirrus的老板却认为EJB是这个行业的标准,也是当前最流行的技术;他认为,数学系毕业的Gavin还没适应EJB的开发模式,熟悉之后,这样的抱怨会少很多。
但Gavin坚持自己的想法,他希望可以开发出一套简洁的对象关系映射解决方案;同时,他也很清楚,自己从没用SQL开发过任何东西,之前也很少接触数据库方面的东西。这看似是一个不可能完成的任务。但Gavin King坚持这样做。

由Gavin King的故事所做的感悟 (r4笔记第24天)_Gavin King
这件事换做每一个人,都会经历一个很长的低谷期,我不确定他当时的想法是不是确实是成熟的,毕竟大家用了这么多年的东西突然有人跳出来指手画脚确实是挺另类的,有时候想想自己或者身边的人,可能抱怨工作中问题的人不在少数,但是如果真心实地去改变这种情况,你的思想真就高出不少了,至少你的出发点是好的。当然从某种程度上说,抱怨也是一种进步。记得当年崔永元在接受一个采访的时候说,我们就需要抱怨,就需要挑刺,如果我们都懒得抱怨了,那说明是没什么希望了。IT这个生态圈有时候就是如此,一旦注入了新的活力就会越发壮大。新的技术新的框架曾不不穷,不知道他是怎么度过的这两年,比较流传的一个说法是他做的第一件事就是去书店买了本SQL基础的书,但是两年后自己一手设计的框架竟然得到了相当好的反馈,他当时起名为Hibernate的本意应该就是想让数据缓存的犹如冬眠吧。

今天在地铁上想到这件事的时候,发现其实我们每个人都会碰到几次这样的转折点,可能转过去了是希望,可能还是冷墙,很多人都说忙啊,其实有时候真心想做还真能抽出点时间,而且好多事在不明朗的时候,大家都看不到希望,做也可以不做也可以,没有人逼着自己,所以可能慢慢就适应这种安逸和稳定的感觉了。我想Gavin当时可能也是为了证明自己的想法是对的,或者较真的部分,他无论如何也不会想到成功之后的光环,所以说好多事情在规划的时候,不管你规划的多么详细周密,等到你经历了一些事情,经历了一些困难,可能你的思维方式就会发生变化,不要一心想完成一个大作,如何丰富全面的功能,Hibernate也是由版本1,版本2,直到发展成了后来的版本3.

在这个过程中,可能最难克服的困难就是自己,因为很可能一念之差就会选择放弃,大家都在这么做,这么用,自己重新来做可能是碰到各种的细节,如果领导直到你还在创新那个东西,可能还会觉得你在瞎折腾,浪费资源和效率。权威意识在内心还是根深蒂固的。
不管学习何种技术,可能大家都会去学习什么是什么,如何能够带着启发式的学习,可能会问出很多意想不到的问题,任何软件都有不少的问题或者bug,新技术,新框架确实有很多,但是很多核心的思想还是不变,我当时学习的时候发现就会追求一些时髦的名词,任何技术都听它如何的高大上,但是使用的时候都是三脚猫功夫,眼高手低。最后感觉时间也花了,但是越学发现自己真的懂得越少了。我们都被各种框架给绑架了。一旦被这种情况束缚,任何的改动都得费劲心思,一遍在代码中加入一些很直白的逻辑处理加工代码,一遍在推崇面向对象的思想。
举一个微信的例子,大家可能会沉浸在微信的各种功能之中,生活感觉现在都要被微信丰富强大的功能给垄断了,qq用的少了,qq空间用的少了,都用朋友圈来代替了,微博相对也少了,有朋友圈,短信发的也少了,微信简单点几下就可以发送各种表情和祝福。
电话也少了,可以用简单快捷的留言功能代替,想视频也可以了,想打车,想支付,想买彩票,想做生意都有,但是你回过头来想,最开始的微信功能也是很简单的,据说微信启动界面的那个人就是张小龙强烈建议下加上去的,那可能代表一种孤独,我们每天都在享受生活中的变化,在习惯这些的同时我们的生活也在变化,你回发现我们都在默然接受这一切,不默然又有什么办法呢?:) 生活就是这样你想的越多,做的越多,你的思想就走到别人前面了,如果你不希望老是被人牵着鼻子到处走,还是需要静下心来好好想想,自己每天的工作生活充实吗,有什么能够改进的地方,哪些方面还能够提高。
黎明前的黑暗终究会过去,等待你的可能是成功,可能是失败,就好比买彩票,你买了,可能不中奖,但是你不买,肯定不中奖。
在享受生活带来的安逸的同时,想想自己能够做点什么,可能是一些很细微的改变,一个微笑,一句问候,一次耐心的解释,一次精心的思考。。。

最后Gavin king的生活就此改变,他成了EJB 3.0专家组的成员,在全球孜孜不倦的发挥着这些成功带来的影响力,IT生态圈还在不断的演进。