Saturday, March 15, 2008

Expand perspective in two directions: higher level (Siebel/Javascript) and low level (hardware/C/C++)

Expand perspective in two directions: higher level (Siebel/Javascript) and low level (hardware/C/C++) and therefore forget about all fat “processes”

A. I will be in Siebel space for a while, while this is happening, my plan is to have an integrated perspective of enterprise computing, from bottom to up.

Yes, this means I want to go back to the root of computing: the hardware. I want to pay more attention to handset, games, and, Linux. I want to refresh my Linux C/C++, and system administration and protocols, and then, get a little bit .Net on Linux.

I will keep using .net, because silverlight is so attractive; but I will pay more attention to Linux-based things, simply because they are open source, and I have an open way to hardware.

In short, for me, it is time to "merge" C/C++ (shell, perl), java, C# (VB), Javascript (perl) together – they are all C family anyway. Note that Siebel (and Ajax) will improve my javascript to a "serious professional" level. Also note that although I am gradually moving far and far away from perl and VB; however, because javascript is a scripting language (for Siebel, javascript is a server side scripting, exactly like perl!) and perl-like regular expressions are now in all modern languages, I can pickup perl anytime. As for VB -- as long as I keep C#, I can certainly re-pick up VB anytime.

By doing this, I will feel more “solid” when I do the programming in C#/Java/Javascript.

B. I will introduce Siebel techniques to spring:

1. OR mapping extensively: this is already in spring-hibernate, but Siebel's way adds more discipline and systematic taste. This also include OX mapping – xml to object mapping, and web services.

2. OU mapping -- databinding ideas: Siebel's databinding is strict and thorough.

3. Extensive use of rule engine. Again, this is not really originated from Siebel, but Siebel 8 makes it happen.

4. Event, security, transaction, logging etc. I will introduce some good ideas and practices as the usage patterns for spring's AOP.