Aug 31, 2005

Vinod Excels at Shortcuts

Let's face it, the top item in your Start Menu is no longer a Dev Tool. It is more likely Excel or Word. In my case it is powerpoint followed by word, excel and then MSDN. As an evangelist, one tends to live in Beta Land, which is hosted in Virtual Server and persisted in a VHD, so that's where SQL and VS are.

 

Anyway, since Excel is as much a part of life now as VS, I keep looking for keyboard combinations and had built up a little collection. Imagine my surprise when Vinod came up with this post - it gives more shortcuts than I ever knew! What a collection!!

 

But he is missing my favorite: Ctrl+PgUp and Ctrl+PgDn. These allow you to switch between sheets. I just wish this was something I could manage with a single hand, but my laptop's keyboard layout does not allow me to do so. The keys are too far apart.

 

SQLCLR for the DBA

 

Kimberly Tripp has put up the draft of a whitepaper on SQLCLR for the DBA. This will eventually end up on MSDN.

 

I especially liked some of the last few sections: Source Code management, Release management and Warning Signs. This is stuff people use in real life and is very useful information, all under one head.

 

If you are working on SQL-CLR, this one is a must read.

 

Aug 29, 2005

Book Review: The Rule of Four

While I was on the road last week, I finished reading The Rule of Four.

 

Ian Caldwell and Dustin Thomson, fresh out of college, have written a book set in the campus of Princeton about an under-grad's obsession in finding the underlying meaning of an esoteric rennaisance text called HYPNEROTOMACHIA POLIPHILI (hypner-oto-machia poli-phili) that has confounded academics for five centuries. More than the puzzle the book is about friendship, relationships, life on the campus and how one person's obsession affects his friends' life.

 

While a lot of people compare this novel with DaVinci Code, the only thing they have in common is rennaisance art hiding puzzles. If you are looking for solve-it-or-you-die kind of suspense, this is not the book to read. The reason you want to read the book is the sheer beauty of the prose - plain and lucid. At several places, I just re-read entire passages to enjoy the reading. This novel is more cerebral, more thought provoking. You pause and reflect while you read it. Very unlike DaVinci which was a page-turner. In fact, it reminds one of Umberto Ecko. And that is a BIG compliment.

 

Highly recommended. Go buy it.

 

PS: the MIT guys have published hypner... at http://mitpress.mit.edu/e-books/HP/.

Aug 25, 2005

TechEd on the Road

Gaurav, Jani, Manik, Ramneesh, Ravi and I have been on the road for the last one week.



We started off with Trivandrum last Thu, hit Kolkata day before on Tue, did Ahmedabad yesterday and are visiting Chandigarh tomorrow! My travel schedule has been maddening:



18 Aug Delhi to Mumbai (8:00 am)
18 Aug Mumbai to Trivandrum (11:00 am)
19 Aug Trivandrum to Mumbai (1:30 pm)
19 Aug Mumbai to Delhi (5:00 pm)
23 Aug Delhi to Kolkata (9:20 am)
24 Aug Kolkata to Mumbai (6:00 am)
24 Aug Mumbai to Ahmedabad (10:00 am)
24 Aug Ahmedabad to Delhi (8:00 pm)
26 Aug Delhi to Chandigarh (6:00 am)
26 Aug Chandigarh to Delhi (7:00 pm)



However, the pain of travel has been worth the joy of meeting folks in the various cities, listening to them and discussing technology. I have been talking on SQL Server 2005 from both the DBA perspective and the developer perspective and trying to do justice to a vast topic within a span of 180 minutes, while still not losing technical depth of the session.


Now if you are excited about a database talk at the end of the day, after having just had lunch, then you are as weird as I am. That said, a lot of people have met me after the session asking questions and requesting for the demos and the slides. I will put these up once we are done with Chadigarh. Keep watching this space!


 

Aug 15, 2005

Dunking in Dal at Pind Balluchi

I love eating good food (and it shows! :-D). Yesterday evening, the entire family (that's about 10 people) went to this place called Pind Balluchi on Ring Road, right next to the Lajpat Nagar flyover. Actually this was my second visit. Chikki, Gagan, Montu and I had been there a couple of weeks back and had loved the food. We had Dal Makhani, Paranthas and "Keema Kaleji, Gurde, Kapure" along with Chicken Biryani and a couple of kebab platters. We loved the food and the bill - Rs. 1000, tip included! The decor was unique - they have tried to give it the look of ancient diners of northern rural India, the classic dhabas - and the service efficient. We really enjoyed the experience - Chikki was talking about it for the next several days, asking everyone to check it out.

 

So this weekend, when we all decided to go eating out, Pind Baluchi it was again! I called these guys up sometime in the morning to book a table and was told that they don't reserve tables, but if we reached before 8 pm, we should get a table easily. Throughout the day, the three of us kept telling the others about how nice the place is, what great food they serve, and that we should eat lightly during the day because we won't stop eating in the evening. So everyone was really excited and charged up when all of us got in the two cars by around 7:50 (when you have four members of the fairer sex going with you, believe me, sticking to timelines is impossibly hard) We reached at around 8:05. Imagine my surprise to see around 4-5 families already there, waiting to be seated, in a already full restaurant. We were told to wait for about 45 minutes, so the ladies went driving around the city, not wanting to wait outside in what was a slightly warm evening. Now my father likes his to have his food on time, and was not too happy about it. I tried placating him, telling him how much he will enjoy the food once we get started, but was not feeling so sure. This had not started right.

 

We were seated in what seemed like eternity, but was actually just 35 minutes. My family is mostly vegetarians, it’s just the three of us who eat non-veg on a regular basis. So we ordered a bunch of veg dishes besides what we had last time. Imagine our surprise when we discovered that none of the other dishes was great. In fact, even the preparations we had last time were not quite the same. Only the dal and the biryani stood up to the high bar that was set in our last visit. So we ate mostly dal and biryani, and ordered a few more helpings. I love dal and had a lot of it along with a roti and a parantha. A trick, which I have learnt from Gagan, is to add a bit of curd and a dollop of butter to the dal. This makes it even better. Try it out. I did the same for Gudda, my little cousin, and he loved it, asking me to do the same to his second helping. Overall, it was not bad, but nowhere close to the gastronomical nirvana that we had experienced last time.

 

I think what went wrong was that when we had eaten here for the first time, it was on a week-day and the place was not too crowded. The week-end crowd made everything run out of steam - the food, the service and the air-conditioning! What did not help was that we were in the second lot - I am sure if we had arrived earlier the food would have been better. A bit of a disappointment, but as my uncle pointed out, we still had a lot of fun because we were all together!

 

So I haven't given up on these guys and will certainly return, but it will not be on a weekend.

 

Aug 13, 2005

Karma is no Metaphysical Power

One of my American friends got confused by the first entry in this blog. His question was how can writing a blog be Karma? Isn't Karma a sort of divine power?

 

Well, deude, I am no expert on metaphysics or theology, but from what I do know of my mother tongue (Hindi, which derives from Sanskrit) and my scriptures, the meaning of Karma is act, as in whatever acts you perform. What the Geeta says is "Do your work, and leave the rest to God." Simple as that. But in the west, the word seems to have taken a different meaning. This is what I found on Merriam-Webster:


 

Main Entry: kar·ma
Pronunciation: 'kär-m& also 'k&r-
Function: noun
Etymology: Sanskrit karma fate, work
1 often capitalized : the force generated by a person's actions held in Hinduism and Buddhism to perpetuate transmigration and in its ethical consequences to determine the nature of the person's next existence
2 : VIBRATION 4
- kar·mic
/-mik/ adjective

 

(http://www.m-w.com/cgi-bin/dictionary?book=Dictionary&va=karma)

 

This is mumbo-jumbo and makes Karma sound something mystical. It is not. Karma is act. Plain and simple. Certainly not fate.

 

This usage has been prevelant for several years. I wonder when folks started getting it wrong. Anything mysterious, mystical attracts people, so it is not surprising that people started adopting this usage. Its not just wrong, it kind of defeats the main message of Geeta: Do your act with dedication and commitment, do not waver from it.

 

Aug 10, 2005

QuickShift for SQL Server

Someone recently pointed me to http://www.quickshift.com/Product_QS-SQL.shtml. These guys claim 3x and 4x times performance gains with SQL Server. The product apparently sits between the OS and SQL Server and they improve performance by managing the "flow of data and operations." They don't give details on the technology up front - you need to contact them first and then they revert. The technology is claimed to be certified by several vendors including Microsoft.

 

This sounds too good to be true. The only reason I am being sceptical is from what I know about SQL IO, it uses a WAL protocol. WAL requires that log record entries be written before the corresponding data pages. This in turn means that for SQL to work correctly, writes have occur in the order they are sent. Now if QuickShift is using write re-ordering at all, this may not work. SQL IO has a couple of other such requirements also (all given in brief on the link above). These may cause an optimization engine which is unaware of these requirements to fail.

 

The tool QuickShift have used - SQLIOStress.Exe - ensures rudimentary IO safety. From the link above, "SQLIOStress does not guarantee or warrant data security or integrity. It was designed to provide base line testing of a hardware environment, and it may expose potential data integrity issues."  Passing this may not be enough to gurarntee proper working in all scenarios. The only way to find out would be some fairly heavy testing. I would like to test sceanrios like loading the server with trasactions and then cause sudden shutdowns and then recover databases. Such a test would reveal if the intermediate layer holds up.

 

All said, these guys do have a couple of customers in production so this technology should be holding up. I am hoping that this is actually true - this would be great news for the databases community.

Monad and Ugly Journalism

I was disgusted by this article on InfoWorld. It is shamefully incorrect. First, the exploit was against Monad and not Vista. Second, all techniques discussed in the exploit require the user to load and run malware on their box. When a user downloads and runs *untrusted software* on his machine (and yes everyone is an admin!), all bets are off. One could do this with any shell today - cmd, csh, ksh ... this is certainly not unique to Monad. But maybe the "experts" at F-Secure don't think so to qualify this as a "virus"

 

Now this article on PC-World makes me literally want to throw up. It has been a public fact for a long time that Monad will not be shipping with Vista (Longhorn). There has been no "cutting" of Monad from Vista because of security issues. But this is eaxctly what the PC World article implies. But do they say it anywhere in the article? No sir. All they do is take two stories together and put them side by side. Story one is an announcement in an interview that was done "last week". Story two is the virus story from a day before. Clearly story one could not have been affected by story two, but that's the picture you form when you read the article.

 

Such sensationlism does not deserve to be categorized as journalism. But then, truth does not sell ads. What gets eyeballs are soundbytes such as "First Family of Windows Vista Viruses Unleashed" and "Microsoft Cuts Windows Vista Feature Experts had worried that the Monad scripting shell would be an attractive target for hackers."

 

Utterly shameful.

Security - Too Much Monkey Business?

Good to see the SecurityFocus guys give its due to Microsoft for doing some innovative security work: http://online.securityfocus.com/news/11273/2.

 

This initiative by Microsoft Research allows the company to handle zero day attacks. A zero day attack is one in which an exploit is made available before or on the day a vulnerability is disclosed. This gives no one any chance to protect their systems.

 

Honey Monkey tries to actively search for potential exploit code by creating bots which let themselves get hacked. This is how it works: A virtual image of an unpatched Windows XP machine is brought to life and made to mimic the actions of a typical user on the Internet. The changes being made to system files and registry are recorded and the delta tells the system whether the machine has been exploited. If an image is determined to be infected, it is killed and new image is spawned, this one containing a patched copy of the OS. The test is repeated to check if the infection works. There can be other follow ups of the infection also. The entire system is automated and run out of a Virtual Server farm.

 

Pretty cool stuff and way better than anti-virus systems which are really reactionary and are no guard against new attacks.

Aug 9, 2005

The Karma of Blogging

karmany evadhikaras te
ma phaleshu kadachana
ma karma-phala-hetur bhur
ma te sango 'stv akarmani

 

(You have a right to perform your prescribed duty, but you are not entitled to the fruits of action. Never consider yourself to be the cause of the results of your activities, and never be attached to not doing your duty)

- Krishna


This is my first blog entry so I decided to start this with this well known shloka from Geeta, which has been the cornerstone of my philosophical beliefs for a very long time. While one would typically not think of writing a blog as one's duty, every act is Karma. Writing a blog is also Karma. So why not start with the basic tenet of doing Karma?

 

BTW, if you want to read an English translation of Geeta, probably the best source is http://www.bhagavadgitaasitis.com/. Simply because this is (as the link says) Geeta as it is and not an author's interpretation of the Geeta.  Incidentally, the translation of the shloka above is from the same site (http://www.bhagavadgitaasitis.com/2/47/en).

 

So the karma of starting the blog is done. Let's see what the phal (fruit of action) turns out to be!