Sendhil Kumar's profileSendhil's Cyber HomePhotosBlogListsMore Tools Help

Sendhil Kumar Ramalingam

Occupation
Interests
Favorite Novels: Atlas Shrugged
Favorite Authors: Ayn Rand, Michael Crichton, Isaac Asimov
Favorite Movies: Contact, Martix, Miracle Worker, Born Free
Photo 1 of 6

Sendhil's Cyber Home

Make a difference
June 11

Other side of the fence

Prakash shared this link with me. I do believe in certifications, and I have used them in the past as a push to become better in what I do, very rarely I have used it as a distinguishing factor. But 40 of them ;-).

I am glad I am not on the other side of the fence where my title is spelled as ‘Architetect’ and a person having 40 different certifications is pushed as a role model ;-). The person might be genuinely good but the first thing that comes to my mind is ‘Jack of all trades and …’. 

June 08

Google Page Speed

Google page speed looks promising. via infoq.com.
It is a Firefox-Firebug plug-in for analyzing web page performance.
I liked the Page Speed Activity feature.
First look it looks more promising than YSlow.

May 26

CRUD User Interfaces around entities Anti-Pattern

I am by no means an UI Design expert, but I am just blogging my current thoughts on the topic. Also this is my personal opinion (based on the limited experience I have) and I might change my opinion with time as I get to see better frameworks.

There is this school of thought “automagically generating user interfaces based on a model” (either the Domain Model or the Data Model). The most prominent examples which I had seen include

  1. A Business Application Platform which supports building a domain model on the fly and provides UI Design capabilities (e.g. Microsoft Dynamics CRM, Sharepoint). The UI is modeled as a projection of the business domain. You get Forms to Create and Update domain entities, Lists to View and Delete domain entities.
  2. A Framework which supports UI scaffolding. This may not be as bad as the previous one, since there may not be a notion of permanence here. I see this as an anti-pattern even in the prototyping stage as it might limit/bias the UI Designer’s / Developer’s  ideas. Examples include Ruby on Rails Scaffolding, Subsonic Scaffold control, ASP.NET Dynamic Data. I know very well that these are good frameworks and do not recommend anyone to use the generated UI in production applications. Also, I am talking only about the automagically generated UI.

A custom application where you do not have an UI Designer and the developer decides to structure the UI design around the domain model / data model. The UI will provide forms to Create and Update, Grids to View and Delete domain entities.

This CRUD of entities based  UI Design can be considered a leaky abstraction where the domain model (or worse data model) has leaked into the UI. The Worst part is that the end users of the system are forced to wriggle around their daily tasks using the provided User Interface. So if we do not structure our UI as CRUD of entities what should we structure them around?

User Interfaces should be designed around the tasks which the Users perform day to day. For example a task might include displaying / editing information from multiple entities. The same data can be visualized differently in a way it is the most intuitive to the users. So if you are thinking of building a Framework to automatically generate CRUD User Interfaces around entities understand the limitations it will impose on the end users of the system.

May 22

Surrogate key generation & OR Mappers – Some great links

I was reading Davy Brion’s post on NHForge, Using The Guid.Comb Identifier Strategy. And I ran into a few really nice articles. I am blogmarking them here for reference.

The Cost of GUIDs as Primary Keys (Eventually Sanket shared this article with me long ago)

NHibernate POID Generators revealed

SCOPE_IDENTITY() sometimes returns incorrect value

May 21

What is Windows Sharepoint Services

One of the goals this year for me is to learn the Sharepoint platform. I’ll post my study notes as I go along. I am not a WSS guru, but you find this useful if you are new to Sharepoint like me :-)

Windows SharePoint Services (referred to as WSS from here) is a Site provisioning engine. In plain English a platform which tries to simplify the act of creating web sites in a Web Farm environment.

Some notes from the Inside Microsoft Windows Sharepoint Services 3.0

“WSS was designed from the ground up to make the creation of Web sites faster and more cost effective. As a WSS developer, you will learn to develop components that others will use to create sites and workspaces.

At its core, WSS is a site provisioning engine. The architecture of WSS was specifically designed to operate in a Web farm environment. The act of provisioning (a fancy word for creating) a site in WSS can be accomplished by any member of the IT department in less than a minute by filling in the required information in a browser-based form and clicking the OK button. There’s no need for a database administrator to create a new database or any new tables. There’s no need for an ASP.NET developer to create a new ASP.NET Web site. There’s no need for a system administrator to copy any files or configure any IIS settings on the front-end Web server.”

“WSS is included as a part of the Windows Server 2003 operating system while MOSS is a separate product with its own SKU. You should think of WSS as the underlying platform and think of MOSS as a value-added set of components and services that has been built on top of this platform.”

April 28

Great Links

Karl Seguin has done some good analysis on the stages of unit testing. I stole the and content and copied the full post to my blog (because I enjoyed reading every line/stage of it...). I have experienced every stage except the elusive stage 7 :-).

  1. Refuse to unit test because "you don't have enough time"
  2. Start unit testing and immediately start blogging about unit testing and TDD and how great they are and how everyone should do it
  3. Unit test everything - make private methods internal and abuse the InternalsVisibleTo attribute. Test getters and setters or else you won't get 100% code coverage
  4. Get fed with how brittle your unit tests are and start writing integration tests without realizing it.
  5. Discover a mocking framework and make heavy use of strict semantics
  6. Mock absolutely everything that can possibly be mocked
  7. Start writing effective unit tests

Original post

UI Prototyping with Microsoft Expression Blend 3 (Sketch Flow), looks promising. I need to check this out.

Prototyping with SketchFlow via Arjan’s World
April 27

Saving changes is not permitted – SQL Server 2008 Management Studio

I ran into an error in SQL Server 2008 Management Studio when I tried to disable the Identity Specification on a column. It is a default setting problem, flipping the setting made it work. May be it makes more sense on a production system. But then Fool-Proofing everything will result in an unusable product. This is a perfect example.

Saving changes is not permitted. The changes you have made require the following tables to be dropped and re-created. You have either made changes to a table that can't be re-created or enabled the option Prevent saving changes that require the table to be re-created.

Read more in Rick Strahl’s blog here

Making of the Butterfly

A man found a cocoon of a butterfly. One day a small opening appeared. He sat and watched the butterfly for several hours as it struggled to force its body through that little hole. Then it seemed to stop making any progress. It appeared as if it had gotten as far as it could, and it could go no further.

So the man decided to help the butterfly. He took a pair of scissors and snipped off the remaining bit of the cocoon.

The butterfly then emerged easily. But it had a swollen body and small, shriveled wings.

The man continued to watch the butterfly because he expected that, at any moment, the wings would enlarge and expand to be able to support the body, which would contract in time.

Neither happened! In fact, the butterfly spent the rest of its life crawling around with a swollen body and shriveled wings. It never was able to fly.

What the man, in his kindness and haste, did not understand was that the restricting cocoon and the struggle required for the butterfly to get through the tiny opening were God's way of forcing fluid from the body of the butterfly into its wings so that it would be ready for flight once it achieved its freedom from the cocoon.

Sometimes struggles are exactly what we need in our lives. If God allowed us to go through our lives without any obstacles, it would cripple us.

We would not be as strong as what we could have been. We could never fly!

I asked for Strength.........
And God gave me Difficulties to make me strong.

I asked for Wisdom.........
And God gave me Problems to solve.

I asked for Prosperity.........
And God gave me Brain and Brawn to work.

I asked for Courage.........
And God gave me Danger to overcome.

I asked for Love.........
And God gave me Troubled people to help.

I asked for Favours.........
And God gave me Opportunities.

I received nothing I wanted ........
I received everything I needed!

 

Source: http://www.whereincity.com/stories/inspirational

April 21

Currently reading - Zen Mind, Beginner’s Mind

Here is a quote to keep our humility, “In the beginner's mind there are many possibilities, in the expert's mind there are few” - Shunryu Suzuki

A quote from the book which I am Currently reading Zen Mind, Beginner’s Mind

Talking about “Great Performances in failed projects”

PAWEL BRODZINSKI is talking about “Great Performances in failed projects”. It is very nice read, especially if you had been in one ;-)

Bridge the Distance has a good entry on Building trust in virtual teams. Read here

April 16

The 90/10 Principle

My colleague Deepak Khandelwal shared this in an email with me. Its an article about choosing our attitude. Read it here The 90/10 Principle.

Architect Competition from Microsoft India

Morning I was reading Sreedhar’s blog entry on an Architect Competition from Microsoft India. You can read more about it here. The problem statement can be read here. It is a very good initiative. I just had one thing to say,

I was slightly disappointed by this.

Work on the Solution - Create a 5-slide PowerPoint Presentation and a 5-10 minute Audio Recording of you presenting the Solution

Architecture is not about just PowerPoint presentations. It will be Promoting Ivory Tower Architects IMHO.

April 15

Do not judge things too quickly

There was a man who had four sons. He wanted his sons to learn not to judge things too quickly. So he sent them each on a quest, in turn, to go and look at a pear tree that was a great distance away.

The first son went in the winter, the second in the spring, the third in summer, and the youngest son in the fall. When they had all gone and come back, he called them together to describe what they had seen.

The first son said that the tree was ugly, bent, and twisted. The second son said no it was covered with green buds and full of promise. The third son disagreed; he said it was laden with blossoms that smelled so sweet and looked so beautiful, it was the most graceful thing he had ever seen.The last son disagreed with all of them; he said it was ripe and drooping with fruit, full of life and fulfillment. The man then explained to his sons that they were all right, because they had each seen but only one season in the tree's life.

He told them that you cannot judge a tree, or a person, by only one season,and that the essence of who they are and the pleasure, joy, and love that come from that life can only be measured at the end, when all the seasons are up.

If you give up when it's winter, you will miss the promise of your spring,the beauty of your summer, fulfillment of your fall.

Moral:
Don't let the pain of one season destroy the joy of all the rest.
Don't judge life by one difficult season.
Persevere(to be persistent) through the difficult patches and better times are sure to come some time or later.

Source: http://www.whereincity.com/stories/inspirational

Paradigm(accepted perspective)shift

This is a very interesting message about paradigm(accepted perspective)shift.

Imagine you're in London's Heathrow Airport. While you're waiting for your flight, you notice a kiosk selling shortbread cookies. You buy a box, put them in your travelling bag and then you patiently search for an available seat so you can sit down and enjoy your cookies. Finally you find a seat next to a gentleman. You reach down into your travelling bag and pull out your box of shortbread cookies. As you do so, you notice that the gentleman starts watching you intensely.

He stares as you open the box and his eyes follow your hand as you pick up the cookie and bring it to your mouth. Just then he reaches over and takes one of your cookies from the box, and eats it! You're more than a little surprised at this. Actually, you're at a loss for words. Not only does he take one cookie, but he alternates with you. For every one cookie you take, he takes one.

Now, what's your immediate impression of this guy? Crazy? Greedy? He's got some nerve! Can you imagine the words you might use to describe this man to your associates back at the office? Meanwhile, you both continue eating the cookies until there's just one left. To your surprise, the man reaches over and takes it. But then he does something unexpected. He breaks it in half, and gives half to you. After he's finished with his half he gets up, and without a word, he leaves.

You think to yourself, "Did this really happen?" You're left sitting there dumbfounded and still hungry. So you go back to the kiosk and buy another box of cookies. You then return to your seat and begin opening your new box of cookies when suddenly you glance down into your travelling bag. Sitting there, in your bag is your original box of cookies.........still unopened.

Only then you do realize that when you reached down earlier, you had reached into the other man's bag, and grabbed his box of cookies by mistake. Now what do you think of the man? Generous? Tolerant? You've just experienced a profound paradigm shift. You're seeing things from a new point of view.

Is it time to change your point of view? Now, think of this story as it relates to your life. Seeing things from a new point of view can be very enlightening. Think outside the box. Don't settle for the status quo. Be open to suggestions. Things may not be what they seem. Unless and until, one realizes about the fact, no one will change his or her view of thinking in spite of lot of external factors.

Every Point has THREE Sides; Your Side, My Side and The Right Side. To understand either the Other's Side or the Right Side, one needs to leave His Side.

Source: http://www.whereincity.com/stories/inspirational

Stop carrying the bottle

An interesting system has been used for capturing monkeys in the jungles of Africa. The goal is to take the monkeys alive and unharmed for shipment to zoos of America. In an extremely humane way, the captors use heavy bottles, with long narrow necks, into which they deposit a handful of sweet-smelling nuts. The bottles are dropped on the jungle floor, and the captors return the next morning to find a monkey trapped next to each bottle.

How is it accomplished? The monkey, attracted by the aromatic scent of the nuts, comes to investigate the bottle, the nuts, and is trapped. The monkey can't take its hand out of the bottle as long it's holding the nuts, but it is unwilling to open its hand and let them go. The bottle is too heavy to carry away, so the monkey is trapped.

We may smile at the foolish monkeys, but how often we hold to our problems so tenaciously as the monkeys hold to the nuts in the bottle. And so, figuratively we carry our bottle around with us, feeling very sorry for ourselves, and begging for sympathy from others, even from God.

Source:http://www.whereincity.com/stories/inspirational

Our Brain's Negative Bias

I read an interesting article on Psychology Today about the Negative Bias of our brain. It answers the questions

  • Why do insults once hurled at us stick inside our skull, sometimes for decades?
  • Why do some people have to work extra hard to ward off depression?

Read on … via Frank Patrick's Focused Performance Business Blog

Talking about Lean times require lean thinking presentation from ThoughtWorks Quarterly Technical Briefing

Quote

Lean Times Require Lean Thinking 
View more presentations from ThoughtWorks.
March 30

Blogmarks

Seth Godin has an interesting entry Ignore your critics (via Arjan’s World)

BetterWorkplaceNow has nice entry on being positive (via Arjan’s World)

Prakash  has posted a good overview of What is Transaction Analysis?

Anne Epstein has an entry Scrum-It's not about completing the sprint (via Arjan’s World)

The effect of multi-tasking - Multi-tasking Exercises

March 09

Hindu philosophy and work

I was looking into what Hindu Philosophy says about work and ran into Bhagavad Gita Chapter 2 Verse 47 again. I have come across this verse many times. But its almost like I had turned a blind eye towards it.

Chapter 2, Verse 47
KarmaNyaavadhikaarasthae maa phalaeshu kadaachana
Maa karmaphalahaethurbhoo: maa thae sangO(a)sthvakarmaNi

Thy right is to work only, but never to its fruits; let not the fruit-of-action be thy motive, nor let thy attachment be to inaction.

The stanza gives the four injunctions guiding us to be true workers. A real Karma Yogin is one who understands:

  • that his concern is with action alone;
  • that he has no concern with results;
  • that he should not entertain the motive of gaining a fixed fruit for a given action; and
  • that these ideas do not mean that he should sit back courting inaction.

In short, the advice is to make the worker release himself from all his mental pre-occupations,
and thus through work make him live in the joy and ecstasy of inspired self-forgetfulness.
The work itself is his reward; he gets himself drunk with the joy and satisfaction of a noble work done.
The work is the means; the Higher Self-experience alone is the Goal-Divine.

In this (Detached performance) there is no loss of effort, nor is there any harm (contrary result).
Even a little performance protects one from great fear.

The term 'attachment' in the Geeta has a peculiar flavour and, through-out its length,this term has been used to  indicate the spirit in which an ego-centric personality will come  to work in any field of  activity while  fulfilling his own egocentric desires. Thus, ego and its desires are the component  parts of attachments.  When an ego strives to fulfil its own burning desires,it comes to live in a certain  relationship with the  world  of things  and objects around.  This  wrong relationship is called 'attachment'.

Commentary from: The Holy Geeta by Swami Chinmayananda, 2nd edition, 1992, Central Chinmaya Mission Trust, Mumbai

http://www.chinmayauk.org/Resources/Downloads.htm

The same idea in the wordings of Swami Ishwaranand

  • You can choose your action.
  • You cannot choose the result of action.
  • You can choose your reaction.
  • May you not be without action.

Apprehension of result breeds inaction, How true!

The next level of thought is realizing that you are not the doer, that’s a bit too advanced for me now.

March 06

Funny stickers on a car

This morning  (thanks to Bangalore traffic) I happened to read some funny quotes on a Car. The driver was in mid-thirties and he must be a brave man :-). This is what the stickers said.

The driver does not carry any cash, he is married.

My wife gives me sound advice, 99% sound 1% advice.

Before marriage a man is INCOMPLETE, after marriage he is FINISHED.

Married man do not live longer, it just seems longer.

My wife complains that I do not listen to her, or something like that.

Some inspiration from Hollywood

A quote from Rocky Balboa by Sylvester Stallone

“Let me tell you something you already know. The world ain't all sunshine and rainbows. It is a very mean and nasty place and I don't care how tough you are, it will beat you to your knees and keep you there permanently if you let it. You, me, or nobody is gonna hit as hard as life. But it ain't about how hard you hit; it's about how hard you can get hit, and keep moving forward. How much you can take, and keep moving forward. That's how winning is done. Now, if you know what you're worth, then go out and get what you're worth. But you gotta be willing to take the hit, and not pointing fingers saying you ain't where you are because of him, or her, or anybody. Cowards do that and that ain't you. You're better than that!”

February 27

Congrats Raji

My sister’s blog was featured in Times Of India’s Blog-e-Binge Column.

Congrats Raji, Cheers. You can find it here.

Blog-e-Binge – Blog of the Week / A Southern Sojourn!

February 06

Adopting the whole Enchilada

InfoQ has a summary of posts written recently in the industry about managerial and technical agility and importance of having both, it is not one vs other.

The posts under discussion:

The Decline and Fall of Agile

Flaccid Scrum

The Whole Enchilada

Context, My Foot!

My own thoughts on this subject

Another entry on the effect of jumping to Scrum and ignoring the engineering practices
Agile & Engineering Practices
Talking about ‘The Decline and Fall of Agile’


Read on… Adopting The Whole Enchilada via Arjan’s World

 
My Blogroll