Monday, May 30, 2011

A different kind of music

Yesterday , when I was returning home after watching a movie , It was raining a bit. At a temple complex , the Dogs began to howl like foxes and Since it was a open space , I heard voice from far off places where herds of dogs relayed the "music" and it might have reached the opposite side  of Bangalore.

There was a power shutdown to give realism. Even though , It was bit scary , It was like listening to a Band. A fine example of collaboration !.

Mallikarjuna - a movie for the Hullies

I started watching Tamil movies in the late 80s and most of the movies were shot in a rural setting. There will be a Village head who gives judgment in Grama Panchayat and he will have a detractor ( an opposition leader ) . Most probably story will revolve around younger brother of the detractor ( a ladla ) being banished from the village .

Then, detractor will put the village headman in some kind of moral dilemma where his own (village head's ) son will be forced to move out or do something against the will of person in question. Too often , the village head and his son will be enacted by the same person .

Finally , a happy climax , where people lived happily ever after in that village. Some good songs , emotional tidbits mark these movies. Frankly , speaking I used to enjoy it.

Watching Mallikarjuna (  starring Ravichandran , Sada and Ashish Vidhyarthi ) took me back to those days and for the first time , i saw Kannada version of the village headmen story.

Film is Ok to watch , If you like movies shot in rural settings.



Sunday, May 29, 2011

Ideal truth vs apparent truth

I tend to argue a lot on things which interests me. One common problem with arguments are the fact that the discussion has to go down to the  intellectual level where all the participant can participate actively.( The  person with lowest learning determines the tempo ! in the name of participation !)

Individualists believe in meritocracy and most people believe in "It just works" ( IJW,aka mediocrity ) . Businesses work on the basis of law of averages and IJW people are always having the last laugh in the modern life . When arguing with IJW people , apparent truth is more important than ideal truth based on meritocracy.

Argue with IJWs a lot and understand the difference between the perceptions and I suspect , majority wins and that is the socially acceptable truth.






Who should determine who we are ?

Increasingly, I am seeing a trend where the job, career and other daily routine define the individual. These are signs of times. Ideally speaking , one's character , outlook should be independent of the profession we pursue.

Because of the pressure for resources , people of different "professional species" ( doctors , lawyers , software professionals , traders ) are competing in the same space using the common denominator viz Indian Currency. 
Things have reached a stage where people are forced to behave in the same way , despite pursuing different trade.

Services Industry is dictating terms for all and even the way we behave. Should a business model determine who we are ?


Pursuit of some things has to come down to an end !

For the past six months , I have been pursuing something with great desire. Even though , the odds for me to achieve my objective was very minimal , I gave a fight to the extend possible by me. Finally , It seems that I have to throw in my  towel.

The lesson learned from this was there are collateral benifits when you puruse something , even though the objective is not achieved.

Saturday, May 28, 2011

Films "export" some non sense to the society

Films are supposed to reflect the society around them. The script writers do get inspiration from characters in real life around them. Initially , films used to reflect the reality or were "importing" it's stuff from the society. Later , It began to "export" memes to the society. Some of them are utterly nonsensical.

Friday, May 27, 2011

Morons and Managers

I do not know whether I am correct in equating Morons and Managers. But , as some one goes up in the management ladder , the number of variables he has to process becomes more than a single human can handle (with tools , software etc ) .

The only thing a manager can do is to use his hunch to categorize the stuff to  relevant variables and irrelevant ones. This process is error prone.

So , any manager will be in the clutches of randomness , serendipity , luck etc. That is how morons do succeed , r8 ?

The bottom line is 


          "There is no point in analyzing deep. Just act !  and who has survived his situation is a successful manager"

a fool knows this instinctively , wise men takes fifteen to twenty years to learn this. Only exceptions are people who went to the management school to learn this simple fact.

Are you physically aware of your existence during the commute and work ?

Frankly speaking (IMHO) , Most people now a days live a life of their own imagination in the abstract space which they have modeled out of their physical environment.. I have to spend close to three hours on commute and further nine hours of work in between to take the time off for my personal chorus.

Now a days , I make myself conscious about surroundings during the commute and even during the work , when I am away from the computer , I try to connect myself to the physical reality around. (  I am in a canteen , I am eating , I am urinating , I am in the lobby etc. )

This has helped me to conserve my energy.

Never Argue with a person who has taken a position

Recently , I have come across a phenomena where people with different positions on an issue argue with each other for hours and reaching stalemate.

The  sole purpose of arguments ought to be discover truth to the extent possible. I think , degree of the strength of our belief is a much more objective criteria to shoot for in these situations.

Make sure that you do not argue with guys who believes "Nothing is impossible".


Wednesday, May 25, 2011

In Software Services Industry , Programming is just 10% of the whole

When Software Industry began to flourish in India in the mid nineties , there was huge emphasis on learning Programming techniques , Algorithms , Unix Programming , Windows Programming,Assembly language programming  and other things which were more computer system centric.

Some people really excelled in those times and the concept of "Guru" found a new meaning. Then , the pressure on margin and to focus on core competencies , the companies in America and Europe began to outsource their business software development activities to  India.

Then , new players like Business Analysts ,  User interface specialists , Project managers , Team leads , Quality assurance guys , Software testers and other roles became part of the project. The emphasis shifted to
functional aspects of the project and people who do the support job gained an upper hand against the wishes of programmers.

I think , a new model for evaluation of professionals in the Industry is necessary. How can you train a software engineer  for modern software services Industry ? ( Only thing which seems to happen in India ! )

A model for evaluation of value of a Software engineer is given below

Draw Four Columns viz  Project , Functional Domain , Technical Domain and Ingredients

a) List all projects ,
b) Identify Functional Domain ( Payroll, Inventory control , CAD/CAM , Finance , Logistics ) of each project
c) Identify Technical domain ( Windows Desktop development , Linux Programming , Graphics Programming , Web application development , Writing Shared Objects/DLL etc )  of each project.
d) Identify Ingredients ( C/C++, Java , Perl , OpenGL , C# , ADO.net etc )

A Guy with Varied Functional Domain with focused technical domain seems to be our successful "Software Engineer". Programming is only one of the several aspects of Software Engineering.













Saturday, May 21, 2011

Perl , Python - Which one is "good" ?

For writing Cross Platform Scripts , both are equally good. It all depends on the context in which we operate.

Perl can be used by Non Programmers and have always had a army of loyal following among the network and system adminstrators. For Task Oriented stuff and exploting the platform capabilities , Perl is a good choice.

Python is a better programming language than Perl. With a robust system of Binders ( Python Bindings ) , It combines best of the both worlds. The Power of Scripting Languages and Performance of C/C++.

My personal preference is towards Python.

Thursday, May 19, 2011

Hudugru ( "Boys" ) - a movie with entertainment value.

Yesterday , I happen to get a Bus which goes uptil Kamakya in Bangalore. I live in a nearby place called KatriGuppe , which is the next stop. I paid Rs. 5 to eat a slice of mango ( Salem Mango !)  and happen to see Puneet Rajkumar's and Ganesh's poster at the theatre infront of the Kamakya Bus stand.

It was 9.10 pm and I decided to see "Hudugru" starring Puneet Rajkumar and two others whose name I do not know. ( One guy seems to be the hero of  "Sanju Weds Geetha" ).

The movie was shot in the context of a sleepy temple town and portrays three happy go lucky friends . After showing some interesting anecdotes in their life , the movie suddenly gets serious when a child hood friend of theirs  tries to commit suicide.

The trio tries to marry off the friend with his lady love at great personal cost just to realize later that they parted their ways. Finally , with yet another heroic effort they unite the couple.

There are good songs and the I liked the ambience of shots really well. It was like going back to watch a movie of 1990 genre from Tamil nadu or Andhra (which used to come in Kerala dubbed into tamil ).

Puneet Rajkumar is a good dancer and fight sequences were really good as well. ( I understood that he is a good dancer from the title song of Jackie and other songs in the movie )

After the movie , I walked closed to two kilometers and it was showering . It was scarry with empty streets and some boys hanging around at the street corner. I happen to stumble upon a mating pair (Dogs!) and the situation was tricky. My natural instinct to watch their gestures and me being very close to them would have landed me in danger. ( Who said Dogs have got mating season ?! ) Finally , I caught a glimpse of their activity and things went well.

"Man is the only animal who eats when he is not hungry , drinks when he is not thirsty and makes love all the seasons" - a proverb is there. I think , at a least a Bangalore Doggie couple can be added to the list about the last .



Sunday, May 15, 2011

Balance in the Skill-set makes you more valuable

While travelling back to the Bangalore from Aluva , I happen to strike conversation with a person who was sitting next to me. During the discussion , He mentioned that some people are always meant to do the work as they have invested heavily in acquiring skills in a particular activity.

Because of their affinity towards a particular thing , they fail miserably as managers. The moral of the story is a "bits and pieces" professional will have a long innings than a expert ( at least in a corporate hierarchy )

Some important Sites for Informal Higher Education

During a discussion @ Barcamp Kerala 10 , I mentioned couple of sites and there were enquiries about their urls.

MIT Open CourseWare (http://ocw.mit.edu/ under the dept. of Electrical engineering and Comp sci )
nptelhrd (youtube channel ) - http://www.youtube.com/user/nptelhrd
Berkeley Webcasts -  http://webcast.berkeley.edu/
ars digita -  http://aduni.org/courses/

Participated and gave a talk at the BarCamp Kerala 10

Today , for most of the day , I was at the Barcamp Kerala 10 venue in the SCMS campus at Kochi. This would have been the most participatory barcamp which has been conducted uptil now. I think , now we are living up to the image of an unconferencing event.

Met Kenny , Binny , Anand , Hari KT , Eldhose ,Arun Basil Lal, Juwal Bose (regulars at Barcamps ) after a gap of six months. This time , Kenny Jacob started a lively session which fundamentally says that Language is one of the most important cause for Human Intelligence. Being a person who believes in Linguistic Determinism ( Sapir Whorf Hypothesis ) , I was mostly in sync with Kenny's argument.

The next session was taken by me and it is about Snobbery and I did present some Anti-Snobbery device. Judging by the people's reaction , Some found it to be useful.

The next session was about PR . Unfortunately , I had to go out for a personal reason and missed the presentation.

I also missed the first part of the presentation on http://whatiswrongwith.me/ . But , I enjoyed whatever I have heard from them. I did put a suggestion them to have list of questionnaire's to decide one's negative points. Recently , I had undergone Strengthfinder 2.0 test @ http://www.strengthsfinder.com/home.aspx

After the lunch , Binny VA did a good session on "Development : What they do not teach you anywhere " .Some notable tools were Workstation , Chairs , Regular Expressions , Community and there was a lively discussion on this.

The Next Session was on Cyber Warfare and I learned a lot of terms and their exact meaning . The presenter has taken lot of pains to prepare those slides and were good.

After the Cyber Warfare session , there was a session on Friday , a unique software from dextra. Even though , it was a product demo, It seems most people enjoyed it and wholeheartedly participated in the discussion. The presenter has good skills to put the idea across.

The Last session was on Financial Engineering by Mathew. He was aided by Mr. Sanjay George by keying in the key points of the topic. Couple of guys participated in the discussion and things were interesting. I participated in the ensuing discussion.

I really enjoyed the event and met lot of new Individuals . I also met erstwhile colleagues Rahul and Sanal after a gap of three months.



Saturday, May 14, 2011

I'm giving a talk @ Barcamp Kerala 10

Barcamp Kerala , 10th edition is being held @ SCMS School of Management , Kochi (Kalamassery ) today (15th may 2011). I am planning to give a talk titled "Why do people compare apple and oranges ?"

The synopsis of the talk is available @ http://barcampkerala.org/blog/sessions

Why do people compare Apples and Oranges ?
by Praseed Pai 
Most Software companies in Kerala has got a shallow hierarchy and emphasis is on technical aspects of Software engineering. People who started their career and stayed back are mostly satisfied lot. In Contrast , Companies from Bangalore , Chennai and Hyderabad are build with scale in mind. Their emphasis is on Business Continuity. By reducing so called "Unit of Work Per Employee", they reduce risks in operations. Both set has got their own world views shaped by their respective context. The session talks about the impedance mismatch between a Metro Software professional and a Kerala Software professional.


Wednesday, May 04, 2011

Software Engineering vs Automation Engineering

Now a days , Lot of software professionals do Automation in various companies. Some of them come with years of experience in "Clean room" software engineering ( Writing code from scratch ! ) and I have noticed a necessity of shift in the mindset of people. Software engineers focus on the structural aspects of the domain ( what are the entities and relative position of entities ) and then move on the process arena.

Writing  Automation Software  is a  way to save time or minimize the pain points in processes . The professional in question should think about the process pipeline first and then move on to entities , if they are important.

Software Engineers => Structure First , Process Next

Automation Engineers => Process First,Structure Next

Funny fact is most often both the camp are supposed to the same thing and now hybrid models are also popping up here and there.

Writing toy programs - It is really rewarding

Now a days , thanks to specialization , most people are confused about how their activity fits into the larger context. But , thanks to business compulsion , some are supposed to do overlapping activity with their "neighbhours" who are links in the same chain.

How do one get quick feel of what something is about in neighboring area of specialization ? At least , in computer programming , write some Proof Of Concept code to test whether our understanding is correct or to get more know-how about the area.

Recently , I wrote some code to teach Win32/Win64 DLLs , P/Invoke , ATL/IDispatch COM component and a C# client program to call the COM object. Under an hour , I hope I was able to make a "soul" understand what he is supposed to do in his next assignment. Based on the initial feedback , It has really helped him.

Preperation for future is not more than prayer

Some people do lot of homework before they venture into any activity. This will give handsome rewards in their formative days . As they go up the hierarchy , number of variables increase in their sphere of activity and most often plans and preparations for future just becomes self indulgence.

The "rationalists" who advocate homework are just like believers who pray for something. As much as marriage of girl can get arranged serendipitously just because she goes to church,temple or a mall and a boy gets fascinated in her, Preperations give "good" results in most cases in an area where we never prepared.

Jargons - There is indeed substance behind the hype

Every discipline has got it's own set of Jargons to make the communication easier between professionals within it's  area of study. For people outside of those professions , it might seem like beating around the bush and the same is the perception of the people who have just started to venture into the area.

In Every discipline , only a few will be adept at using jargons and rest will resort into something called "trivialization". Trivialization or de-jargonization is a technique which some people use to take the steam
out of a discussion by variety of techniques . Some times , It sets the agenda straight in the discussion as well.


Fact of the matter is Jargons are necessary at each level of hierarchy as it helps to communicate the core idea very fast. Some words can substitute a phenomena observed and it saves time.


Pampering Employees is a clever way to "enslave" them

I have observed some companies pamper their employees more than usual. The fact of the matter is It is a clever way to enslave them. Every one likes to be liked and some kind of insecurity feeling is automatically injected as employees fear the loss of "importance" , if they move out.

Films bind people together

After coming to Bangalore , I have noticed that my awareness about Mollywood , Tollywood , Kollywood , Sandalwood and Bollywood has helped me to relate to people who come from different parts of India.

In the South , there is a pattern of replicating successful formulas which has clicked in one state . Even Music and Lyrics , they try to replicate. This helps me to understand and enjoy  movies from Andhra as the story outline and scene coherence helps me to understand the content.

Compiling Csharp programs for 32 bit under Visual Studio 2010 64 bit

Today , I taught a person how to do Pinvoke from C# programs. For educating him , I wrote  a Win32 DLL from Visual studio command prompt ( Visual studio has got command prompt for 32 bit programs and another one for 64 bit programs ) meant for 32  bit programs.

After giving the necessary atrribute ( DllImport ) , I compiled my test program and ran it. For some reason , bad file format excecption was triggered every time. I did not have a clue for some fifteen minutes.

Then , I went to the 64 bit command prompt and re-compiled the DLL to 64 bit target. The program worked correctly.

I understood that the default mode for C# in both 64 bit command prompt and 32 bit command prompt is 64 bit .NET.

I found out that u have to compile your C# program for 32  bit using /platform:x86

csc /platform:x86 .cs

Sunday, May 01, 2011

Should we have goals in life ?

Goal setting is something which is akin to "priming the pump" in human societies. In the name of Goals , people fail to live in the present and always bothered about future which they do not have control. The sad consequence is you fail to live in the present and there is no guarantee that you will live a good life in the future.