Monthly Archives: October 2005

Do you love or hate Visual Studio?

Charles Petzold is known to many as father of Windows API Programming. His Windows Programming books are Bibles in the subject. But you never knew he is also a profound thinker and orator, until you listened/read his recent speech given to .NET user group. The topic he choose was “Does Visual Studio Rot the Mind?”, if you are using Visual Studio, then this is a must read. Thanks Charles, all these years I was thinking I am mad for being the only person in the planet to complain on these nuisances with VS.


 

Rains in Chennai

It normally doesn’t rain enough in chennai, water shortage has been a perenial problem here due to failed rains. The water situation became a little better in the last 6 to 12 months, thanks to World Pioneering Rainwater harvesting scheme enforced by local government and Veeranam water project. Still in the last 4 years+, we didn’t have a decent rain fall. All of this changed with the rain pouring down in Chennai for last couple of days. It has been raining non-stop for nearly last 24 hours. Very few people managed to leave their houses, so almost all schools and offices have been closed due to rains. Thanks to Internet many of my office colleagues are managing to work from home. Main Electricity supply has been switched off for safety, I hope I will be able to work few more hours with my Battery power.


Rain in Chennai
(Pictures taken from my Balcony)

Print your own boarding pass

I had to come to Mumbai today and so I had my office book an e-ticket for me in Jet Airways from Chennai – Mumbai 7AM flight. Yesterday late evening I was told the meeting got postponed so I thought it to be better to move myself to the next flight – the one that leaves Chennai at 9:15AM. When I checked Jet website for the availability in 9:15AM flight I noticed the fares to be only Rs.5280 against Rs.7800 (or so in my earlier booking) for the 7AM flight. So I called up Jet over phone – cancelled my earlier booking and made a new booking over Internet. All this is routine stuff, but the reason of this post is that it all (Cancellation and New booking) got done within 10 minutes – Thanks to Jet Airways well-informed Call Centre Operators and their efficient website.


The best part of the online booking was that Jet now allowed me to choose the seat, checkin and even print the boarding pass right from my desktop. This definitely saves the trouble of queueing up in the check-in counters. If you travel with just an hand baggages (like me with my Laptop today), with the printed boarding pass you can go directly to the security check. Remember to take a valid photo-id (I showed my Tamilnadu state Driving License), they check for it in couple of places along the way.



Being a frequent flyer, I have had the chance to travel in over a dozen airlines (or more) around the world and I can certainly say when it comes to Service (both In-Flight and Ground) no other airline comes close to Jet’s superb track record. Next will be Singapore Airlines. The best part about Jet’s staff is that most of the time they anticipate your needs or get it right away after being told; And all the time you will be greeted with a genuine smile. Certainly “Naresh Goyal” and his team deserves a big “Kudos” for creating such a first class team.



Read here CNN’s recent interview with Naresh Goyal


Read here my earlier post (July 2004) which was also about Jet Airways

Navarathri 2005




It is festival season in India. Navarathri (Dasara in Hindi) is one of India’s important festival period, the word Navarathri means “9 Nights”. 9 Nights of celebrations in which people in their houses show casing idols of gods and godesses in beautiful settings, dolls depecting stories, parks, kolams (Floor Paintings with Colour Rice Powders). Relatives and Friends visit each others houses to see the decorations, chat, eat “Sundals” and leave.


We had lots of visitors this time to our house. So overall Navathri is a good chance for you to visit friends and relatives who you haven’t met for years.


Read here my posting of last year Navarathri. 

Moving Jobs from West to Asia

Last week there was a post by Jon Box in his blog about Microsoft adding jobs in India. Jon is one of my fellow Microsoft Regional Directors, from Memphis USA. I sent him back a detailed reply by email on how I feel on this important issue. Here it is:


As someone who has been running an Indian IT Services Company for last several years and with sizable portion of my business coming from USA, these are my comments.


In business the first rule of thumb – your returns are more or less dependent on your risks. You don’t take risk you don’t make money, its that simple. In fact nothing could be more risky than to resign your job and start a company. After the risk are the following



  1. To identify a need (a.k.a Innovation/Invention)
  2. Develop a Product (a.k.a. Manufacture)
  3. Package the Product and Market them
  4. Sell the Product

India/China currently does only 1 of the 5 steps in a business – Manufacture. If someone in US is worrying about us, either he/she doesn’t understand what it is to be an American or lacks seriously in self-confidence.


Risk and Products
Today Microsoft or IBM makes several times more money more than the 3 Top Indian IT Services company (TCS, Wipro and Infosys) put together. Put together they will have same number of employees as Microsoft. It might never be possible for them to overtake Microsoft or IBM. Why?. Because MS/IBM are products company – a company who’s core assets are its products which is based on IP (Intellectual Property) and Patents.


Compare this to India, though Indian Engineers are considered high in Software, we don’t have one product that is seen in store shelves around the world. The reason is simple, to develop Products and to market them requires huge capital investments which simply doesn’t exist in India. Even if you have deep pockets, the chance of a product succeeding is very low – the risks are very high. We Indians traditionally like to play it safe and we like the safe Government Jobs. We never venture into the unknown. This is the reason why Asians (including India and Japan) save money. We keep it as Gold Ornaments (Never enjoy them by wearing it but safeguard it against theft by keeping it in Bank Safe Lockers) and Bank Savings. A common man (Woman) in India investing in Stock Market is unknown till very recently. The Silicon Valley and its VC/Angel funding culture has no parallel in India. In India (until very recently) the only funding known was Debt. Equity funding was being restricted to handful of stories.


Contrast this to US. USA is certainly the land of opportunity – Opportunity created due to the risk taken by Entrepreneurs and equally by common man. I always admire at the American (and of course the Europeans) zeal for exploring and travel. To drive from East to West Coast in search of opportunity and settle down there is a everyday common story in US. It is unimaginable for me to drive down even 600 miles and settle down in my neighboring state – nevertheless go to the other end of India.


If American Companies don’t innovate/invent with their money eared, certainly the Indian Companies (with their newly earned money) will innovate and we will reap the benefits of that invention for next 2 decades.


Packaging and Marketing
Next to risk & innovation it is packaging and marketing that I consider to be core strengths of US. In fact, at my company we hired at high rates and outsourced our marketing campaign to a US Agency – because we realized it will be cheaper to do it right the first way, rather than waste money on iterations with cheaper clones.


These are the reasons why in the world today you see Coke, Pepsi and Mc Donalds everywhere.


In fact, when Coke and Pepsi came to India a decade+ back – they killed all the local Soft Drink manufactures. One of the Indian’s who soled all his bottling plants & brands to Coke; created a new empire from scratch – bottled water. In India nobody would have dreamt of buying Water, but this guy saw a need when people earn more they will demand safe drinking water, and local bodies in India will never get to give it for long. He created “Bisleri” bottled water. Pepsi was forced to follow it up with Aquafina. 


[Though I am not writing on this, examples like this could turn out to be answers for India as well, on how to face “China” dimension. For example China makes finished goods at prices lower than it cost to even produce 1/4th the raw materials in some products. This is true even for India-China comparison].


Summary
Apart from these, in my experience I have seen Americans to be excellent Managers (and Japanese for their keen eye on perfection). I found it amazing on their capabilities to methodically plan and execute things.


In the new economy; companies that innovate, that take risk, that package well, succeed. Companies that don’t do it  – perish. It is same whether it is for US or India or China. It is also same for Individuals because Individuals are part of companies (in the work force).


So in summary if your Angry Coder is losing job, then the company they work for is not innovating (or) He/She is not innovating to go high in the value chain to become managers and manage the outsourced projects that have gone to India or China or to Eastern Europe. Needless to say managerial jobs will earn twice/thrice of their present income. Wow, I didn’t realize I will be ending this with a positive note like this!

Change the filename shown in IE for a dynamic content

Today I encountered this issue in one of the projects. Simply put, we have an ASPX page like www.venkatarangan.com/file/getit.aspx?id=4040 that is going to read a file say “Office2003.DOC” from filesystem and stream it. The actual file will depend on the ID that is passed. It will come from a folder that is not accessible through IIS or will come from a SQL Server BLOB column. In either case an user will see in IE’s dialog box the filename to be get it.aspx?id=4040 and not as “Office2003.DOC”.


We can modify the mimetype of the output of an ASPX page to say image/jpeg or anything by using the Response.ContentType property. It will be easy if we can specify the filename as well, but no property exists to do this in Response object. One way to solve it will be to create a virtual URL like /4040/office2003.doc. This URL doesn’t exist, it will be mapped to be handled by a HTTPModule and the HTTPModule does the streaming by parsing the URL and getting the ID number. Since in this case the filepath from IE’s perspective is Office2003.doc, IE will no problem in identifying the mimetype and launching MS Word with the file loaded.


HTTPModule seemed to be a round-about solution. That’s when my good friend Deepak Gulati of Microsoft came to rescue with this ASP code snippet (Thanks Deepak, I know I can count on you for these quick solutions. If you get a chance visit his photo blog)
<%
  ‘If correct mime type is known use that    
    Response.ContentType = “application/x-unknown” ‘Arbitrary
   
    fn = “blog.doc”                                ’Actual FileName
    FPath = “c:\temp\” & fn
    Response.AddHeader “Content-Disposition”,”attachment; filename=” & fn

    Set adoStream = CreateObject(“ADODB.Stream”)
    adoStream.Open()
    adoStream.Type = 1
    adoStream.LoadFromFile(FPath)
    Response.BinaryWrite adoStream.Read()
    adoStream.Close
    Set adoStream = Nothing
    Response.End
%>

The above solution works by adding a “Content-Disposition” header as specified in RFC2183. This RFC seems to provide couple of useful customization possibilities, check it out. The code also shows a simple way to read a file and stream it using ASP/ADO.


References:
1) How To Raise a “File Download” Dialog Box for a Known MIME Type – Microsoft Support KB
2) Explanation of Content-Disposition – MSDN Reference


While I was searching this, I came across this support article that uses a single API call to “URLDownloadToFile” for downloading and saving a file. The code works in VB6.0 thru’ .NET.

Chennai marine aquarium


Chennai Marine Aquarium
For reasons unknown after I took these photos I was told to stop!


Though India has tons of places of potential tourist interest, and Indians travelling abroad spending the most per day, there are few tourist places in India that are of International standard. Chennai is no different in this regard – inspite of having the world’s second longest beach, there was no Aquarium to educate and promote interest in marine life. This void is now being addressed with the opening of the new Marine Aquarium.


I took my son (2 Years old) last week to the aquarium. He loves to see fishes (‘ish’ as he calls it) and we had a good time. Comparing to aquariums I have seen in Singapore, Lankawi (Malaysia), California and other international ones’, this one is quite small. But nevertheless it had about 20+ tanks with double that number of fish varieties.


The aquarium is within the Zoological Survey of India premises in Santome High Road. Roughly about 1 – 1.5 Kms from Santome Church going towards Adayar and before the right-turn to Foreshore estate, and is on your right-hand side. It is roughly the same distance from Iyappan Temple if you are coming from Adayar towards Marina. Unfortunately there is no publicity or any prominent signs promoting the existence of the Aquarium. The aquarium management seems to have got the timings completely wrong, it is open only during Weekdays from 10AM to 5PM. This timing leaves out the the target audiences (Students and Kids) from visiting it. Presently there is no entry fee!


So if you are in Chennai, it is a good place to spend 30 minutes. And do this now, when it is new – before it gets spoiled just any other public place in India due to poor maintenance.

Windows Sharepoint Service Templates

If you are looking at using Windows Sharepoint Services (a.k.a. WSS that ships with Windows Server 2003), check out these 30 ready to use templates from Microsoft. They range from Expense Reimbursements to Marketing campaigns.


There is also the Sharepoint team site at Gotdotnet, this has tons of information on Sharepoint, FAQs and more.


If you are administrator then the official Adminstrative Site for Sharepoint has valuable info on Capacity Planning, Upgrade Options, Deployment scenarios and the likes.

my new mac mini





mac300.jpg
Apple mac mini
Samsung 910MP 19″ LCD

Last month while in United States, I ordered for a mac mini from the Internet. I ordered for the base config with 512MB RAM, 40GB plus Bluetooth module, Wireless Keyboard and Mouse – all put together came to abut US$700. First came the wireless keyboard and mouse package in 3 business days and a day later the machine itself arrived. That was pretty impressive delivery. I took it out and plugged to a monitor it simply worked. Wow!. 


For long I wished to own a mac, to play with it and see how different or similar it is to Windows. In case of mac mini I simply wanted to own this lovely little box after seeing the image on Apple’s site. I was impressed with its extremely small size and the engineering marvel of apple. It is amazing how Apple Engineers can put inside this small box – couple of chips, a hard disk, a dvd rom drive and still manage with heat that is being generated inside. Even in my HP Laptop, after few minutes of usage I could use the bottom to boil water.


The first thing I did was to download Windows Media Player for mac so that I can listen to my WMA songs, following that I downloaded Remote Desktop Connection (RDC) for mac. With RDC I could connect to my Windows Laptop and still do my emails.


The things I loved after few hours were Mac 10.x (Tiger)’s beautiful aqua user interface and animations. Followed by that was the crisp interface especially the text clarity (to some extend thanks to my 8ms Samsung 19″ LCD). I simply couldn’t help myself admiring the sharpness of Tamil Texts in Unicode pages using Safari browser. The audio was brilliant. Safari’s RSS reading was equally good. The machine came with Office 2004 for mac 30 days trial pack installed. Word sports an interesting UI in this release for mac, cool. The best feature for me was the bundling of Murasu Anjal for Tamil Fonts and Tamil Keyboard. Because of Murasu bundled in, I could go to any latest Mac apps and start typing in Tamil. Unfortunately Office X for mac and Appleworks 6.0 don’t support this new Input/Display methods. PowerPoint 2004 & Textedit supported this flawlessly. The experience of connecting my digital camera and importing photos was simply painless. Good work Apple.


Things I didn’t like: I was not that impressed with the Safari browser page rendering speed. Even after trying for an hour or so, I couldn’t enter this blog from my apple. I tried first with Safari, then with Camino, then with Internet Explorer for mac. The issue was none of them had my Dasblog entry screen which uses FreeTextbox to appear correctly. So I am doing this post from my trusted Windows XP.


In Remote Desktop I figured how to do Right Click – later configured to use the Alt key with mouse click as Right-Click. I am still unable to select multiple songs or create a playlist in Windows Media Player for mac.