Friday, June 23, 2006

Bus - Train !!

Guten Tag ppl

Guess it has been really long since i blogged.(i will definitely work on not making this my statutory first line ..)
I was bit busy in the project work. We have nice time with Test Driven programming and Domain Driven design here in our team. (probably would need a separate blog)
Recently , i went to my colleague's wedding in Vizag by train. This brought back floods of memories. I had traveled by bus more when compared to train.
I went to my uncle's place in Coimbatore on every vacation when i was living in Trichy. Coimbatore is a nice place with weather similar to bangalore (Trichy has very hot and humid weather all year round). My family usually took the bus to coimbatore(it takes 5.5 hrs).

Bus

I used to like the bus rides more for the solitude that i get. Being the eldest kid:-) (may be most troublesome!!), i always got the window seat. The (dis)advantage of the buses was that once u plug urself into a seat, it is difficult to pull urself out.. So , there is no physical movement for couple of hours until there is an intermediate stop. I have one great virtue(Vice?) , i day dream a lot.. so these bus rides excite me a lot..

I sit and watch the scenary as bus goes along the beautiful shore of River Cauvery(dry for most part of the year!!) and dream all sort of things,.. from goin to mars to entering an atom.. being next Einstein to next Prime Minister of India.. there was no limit to imagination..

I believe Bus travelled more close to people than train did.. there always was some hustle-bustle enroute.. there were always countless villages, towns, cities or just remote farmin ranches on the way.. it was very rare to find a stretch of road say 10 KM without any settlement of one kind or another!! also , sitting in the bus i felt closer to outside world but with a safe distance without spoiling my solitude..

Train

The trains gave totally different experiences. The train always awed me with its larger than life image. It was always special becoz of the long wait in the station, it demands. As with other families, my family too believed in reachin the railway station atleast 2 hours before the scheduled departure time(it was rarely on-time). Since , train offered better mobility (leg space) , it was a favorite choice of transport for the younger kids.. the preparation for train journey is quite religious. A separate bag would be alloted for packing eatables, lunch , evening snack and dinner, boiled water(the elixir of life), fruits, biscuits and a flask of cofee!!! Though loaded with enough food to feed a Third World country , we kids always liked the eatables sold in the platform.. but even in the world largest democracy minors dont have a say :-(..

As against bus, getting a window seat is difficult in trains as there would be only 2 for every six passengers.. the middle and the aisle seats are really boring seats .. u never get to watch the scenary outside and also u cannot relax properly in ur seat.. i was a bit introverted kid, so unlike others, was not ready to strike up conversation with the co-passengers.. also if i start gaping in the window and start day dreamin, ppl around me get concerned and ask me if i am feelin sleepy!!

Trains offer a different view of the country. it always gives a detached and distant view of the outside world. As against bus, you get to see agricultural fields, factories and smaller home steads.. its rather peaceful perspective of a bustling civilization ..

The sides of the railway tracks have sign boards with some numbers.. for long time i tried to decipher it .. but finally concluded that it must be a puzzle for the engine driver to solve, to stop him from sleeping :-)

As opposed to other views on travel, i see it as an opportunity to have a peaceful solitude... with changing view instigating wildest of dreams.. this is one and only single factor that makes me love traveling no matter what the means is :-)

Saturday, April 22, 2006

Cartoons and Science

I recently saw this website which has 2 best things i like - Cartoons and Science(it's actually Maths but i dont like math as much as science but science is toothless without math )

http://www.msri.org/ext/larryg/


Check it out!!

Friday, March 17, 2006

Domain Atom!

I was recently introduced to domain driven design. It means - "Ur design should be made up of building blocks that are existing as it is in Domain of interest and u should finally be able to explain the design to the domain expert/Req. Engg( must hav no tech slang) "

Check out http://domaindrivendesign.org/index.html

This is so different and this has totally changed my perception. till now the major problem was language of communication between the developers and the domain experts. now that agreed upon glossary is available, the language is common to both the developers and the domain experts. The developers' design only uses the agreed upon glossary and one of the design verification check is
- is it understandable by domain experts who have no technical knowledge?

This led me to compare the software developement with Physical world.

Consider the following scenario...

Any domain can be broken down into indivisible part. i.e. a smallest unit beyond which it loses its purpose.. for example, Customer in a banking domain.. it is a basic unit that defines a person/entity that can be subjected to various work flows in the banking domain.

We can consider such units as DomainAtoms. DomainAtom is an indivisible part of the domain and has some meaning that completes the domain definition.Another example of Domain atom would be a SavingsAccount.. we can quote lotsa such examples.
When we want certain logic to be implemented using these DomainAtoms then we get something called DomainMolecule. DomainMolecule would be made up of two or more different DomainAtoms. This DomainMolecule will internally use individual atoms properties but for outside world would expose totally new set of functionality also. this leads to similar such comparisons with physical world..

Collection of DomainAtoms/DomainMolecules -- DomainPolymer

DomainAtom/DomainMolecule that needs to broadcast message(event) all around -- DomainRadioactive Isotope ;-)

sometimes there may be partial implementation that need to be completed in later stage (more like Ions) which can be done using Partial classes!!
further, there are these properties and fields which are like matter paricles and events,methods which are like force particles..
and C (velocity of light) equivalent would be machine cycles for an instruction..

and strangely, both Class and Carbon have "C" as first letter.

Further, as atoms and molecules are bound by rules of physical world, the DomainElements will also be governed by these rules. these rules can be inherited or contained rules which are generic and have global definition..

Further, these DomainElements should be directly be consumable, i.e. they should be ready to be used in whatever form of UI or logic that might require it.. conversely such knowledge can be created else where and contained within these elements.. Even though ,the atoms are bit complex, they are very much user friendly...

this then leads to another possiblity.. havin got intelligent atoms and molecules .. we can program any new logic that needs these by just combining them into a new molecule or polymer!! may a RAD UI can be created(like VB) which will generate code for this..

i donno somebody would surely have tried this out.. but the computers can understand only finite set of rules and logic.. it just asks us to build our logic outta them ... so y not hav one more level of abstraction...