Monday, March 17, 2008

Basics - 1

The basic things tend to be what trip up complicated applications and systems. For instance, just the other day one of my colleagues asked me what the last packet sent to close a TCP socket connection was. He was working with a package that seemingly wasn't playing by the normal rules.

"FIN" was my reply - and I was right. That's not the point of the story though.

The developer working on this project is extremely good at what he does. The fact that he found this problem quickly and solved it quickly highlights two important aspects of the way he does things:

1. He looked for a cause, not tried a solution without basis
2. He asked for clarification to speed up the fix

The number of cases that exist where the words and phrases "maybe", "probably" and "what else could it be" appear in response to a problem without having a proper look is worrying.

The most important thing to remember when it comes to solving problems is that you should call on the experience and insight of others. Simple really.

No comments: