Monday, August 12, 2013

UK VISA for Indian citizens in USA

I recently applied for a UK VISA at the New York, NY consulate. The process is pretty straightforward and you can easily do it yourself. The process starts with an online application. The application is long (took me about an hour to complete) and you will need all your documents from Passport to bank statements ready.
On completing the application, you will be directed to pay the VISA fees, and book a fingerprinting and bio-metric appointment at the nearest USCIS center.
You will get two confirmation emails after submitting the application, one with your unique application number(starts with a GWF) and the other with your USCIS appointment confirmation.

Your appointment has to be atleast 1 week from the day you submitted your online application. You need to carry your appointment letter and original Indian Passport for your appointment. You may print the appointment confirmation and submitted application here, using your application ID that you got in the confirmation email.
                         My experience at the Kansas City, MO USCIS was great. I was in and out in 15 minutes, with my receipt. You will need to send this receipt (which is basically the appointment letter with a confirmation stamp) with your mail-in application.

I sent the following documents with my application to the NY consulate. A general guide can be found here.
1) Original Indian Passport and copies of front page and US H1-B VISA stamp
2) Printed application with Photo
3) Last 6 months' bank statements and payslips
4) Company letter verifying employment and compensation
5) An invitation letter from my cousin with her address and UK resident status, including a copy of her UK resident card. (Otherwise, you need emails of your hotel confirmation in the UK)
6) Saved travel itinerary from (Do not book the tickets, it's okay to send just the itinerary)
7) Return UPS waybill, for them to mail back the passport.
8) USCIS receipt

That's it! I mailed the application on Friday, reached there on Tuesday, I got the confirmation email on Wednesday and a VISA acceptance email the next week on Monday.

Sunday, August 11, 2013

Reducing your Geico premium

Here's a trick I learnt for reducing your Geico premium, if you're currently a Geico customer and have had a clean record for the last year or so.

I recently moved from Des Moines, IA to Kansas City, MO and my premium went up from $474 to $679! I was surprised as I had not gotten any traffic tickets or had accidents on my policy. I called Geico and asked them to re-evaluate my policy to no avail. I then had an idea. I got a fake quote from using a different name (they won't give you a quote if you use the same name on policy) and voila! My quote was $431. I called up Geico gave them the reference number and asked them to explain that how can I be quoted a premium of more than $200 for the same policy rates. The representative was very supportive and asked his manager to look at the comparison to make sure we were comparing apples to apples. The manager got back to me after about 40 minutes on the phone with a new quote. It was just $311.50!

I immediately got my policy renewed using the new premium rates. So if you're someone who thinks they are paying a bit too much for their auto policy, try this method and see if it works for you!

Sunday, January 27, 2013

Get first excel sheet - C#

 public static String GetFirstExcelSheetName()
            OleDbConnection objConn = null;
            System.Data.DataTable dt = null;

                // Connection String. Change the excel file to the file you
                // will search.
                String connString = Connection.getOleDbConnectionString();
                // Create connection object by using the preceding connection string.
                objConn = new OleDbConnection(connString);
                // Open connection with the database.
                // Get the data table containg the schema guid.
                dt = objConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);

                if (dt == null)
                    return null;

                String[] excelSheets = new String[dt.Rows.Count];
                int i = 0;

                // Add the sheet name to the string array.
                foreach (System.Data.DataRow row in dt.Rows)
                    excelSheets[i] = row["TABLE_NAME"].ToString();

                // Loop through all of the sheets if you want too...
                for (int j = 0; j < excelSheets.Length; j++)
                    // Query each excel sheet.

                return excelSheets[0];
            catch (Exception ex)
                return null;
                // Clean up.
                if (objConn != null)
                if (dt != null)