Archive for December, 2011

Tools / Utilities – I love using December 29th, 2011

Vinod Kumar

With the New Year 2012 not far off, let me take a moment to tell you some of the tools that I have used for almost ages without even thinking twice. These get installed almost every time I do a refresh / rebuild on my Laptop. Couldn’t resist and hence thought of sharing. (Order of the tools are just random)

1. Sysinternals – ZoomIt and Process Explorer

I have been using the SysInternal tools for such a long time. As a presenter, the ZoomIT tool is a must have for any session. It gets used almost in every session I am involved. The second tool that I use with passion is the Process Explorer. When used correctly, there is so much learning that you can get from this tool. I have also used Process Explorer sometimes to understand how SQL Server works – that powerful this tool is.

2. TreeSize – Free Version

Finding the space utilization of your HDD is something I grapple with almost when my HDD runs out of space. HDD space is so cheap and we have so much to learn.

I still remember the days when I had to use floppy disks to boot and work on BASIC, FORTAN etc. Those were the days :). Now even with 500GB HDD I seem to be looking out for where to get that extra ounce of space free – what an irony !!!

How many of you use a Paging file in your machines? Ever since I got 6+GB of RAM I stopped using them.

There is a Professional version of the Tool giving you great color formatting and other extra features, but if you are a home power user, the Free version just fits the bill in my opinion.

3. WordWeb – Free Version

This was a wonderful utility that one of my friend pointed long time back. Ever since I started getting into a typing routine, this tool has come handy. With a flip of CTRL + ALT+ W, I have a dictionary for quick reference. Loved the shortcut when highlighting and selecting the shortcut I get to the meaning directly. Atleast, this is one step easier when compared to Copy and Paste this over a website for the meaning. The Free version here again has worked wonders for me.

4. SpaceMonger v1.4.0

I don’t know how many space visualizing tools I will use, but apart from TreeSize I also use this nifty tool. Check the free software of v1.4.0 and it is quite handy. This is similar to the SQL Internals Viewer available on CodePlex now for your HDD space.

5. Slickrun

This is another tool which once my good old friend Sanjay Shetty from INETA introduced to me. This tool reminded me of the old days TSR programs that I wrote in my college days :). The sleek blue mini-bar can be placed at any location over the screen and it so prominent. I have used this to watch my timing when doing sessions. The super cool part of this tool is the concept of MagicWords which can be used as shortcut to commonly used programs. Powerful and interesting tool.

Conclusion

This is not an exhaustive list of tools I use, but this was a start that I thought was worth sharing. Also, tell me if you have used these tools or you have better tools to suggest that you use almost daily at work.

Do pass me your comments to if you want to see something similar list for working with SQL Server? Your comments are most welcome !!!

Continue reading...


 

Cloud Computing – Trends watch December 26th, 2011

Vinod Kumar

Cloud Computing is surely a buzz word and is catching the IT industry slowly but surely. As part of my work, I do meet a lot of Indian customers asking for more when it comes to consuming and evaluating various Cloud implementation strategies. Yes, cost is one of the dimensions where this is evaluated, but the crux being – Have you designed for the cloud? I will spare that thought of designing for the cloud for a different discussion some other day. But let me call out some of the trends I am seeing and is worth investing our time when it comes to learning Cloud phenomenon in the coming year !!!

Dilbert.comSource – Dilbert Site

Cloud as Disaster Site

This is quite a viable option to think, as most companies are looking at options to get their online backups to the cloud as the storage costs are cheaper and available with redundancy on the cloud. The traditional method of using a DR site was only for business continuity and needed dedicated processes and replication infrastructure to be maintained at a different site. Not to add the human resources, electricity, A/C, infrastructure and more costs to maintain a dead weight. So this trend will become something to lookout for in the future especially when ingress traffic is at no cost from most cloud providers :).

Word of caution here would be – look at the SLA the cloud providers give you even with the storage. Given storage cheaper, just incase of disaster – look at the recovery time requirements that you have set with your customers. Having TB’s of backup will take some considerable time and don’t assume on your recovery strategy !!!

Enterprise moves with Hybrid-Private Cloud

More and more I get an opportunity to talk with the Enterprise CxO’s, I get to hear more of these terms coming up. Yes, the investments are already out there within the enterprises and these cannot go anywhere. So the need to use the existing storages and extend the future needs of storage to the cloud can be a viable option that exec’s always want to contemplate and discuss. The whole concept of limitless (based on costing) storage that hardly requires upgrades, replacements and with no additional capital investment means quite a lot to these CxO’s – especially the CFO’s love to see the ROI here.

Now that these decisions work, next is the need to seamlessly integrate your on-premise environments with the cloud infrastructure. This will become a critical part of any application designs moving forward. We cannot live in a Monolithic model moving forward – hybrid is here and there to stay for a long time.

With computing easy to get on the cloud, it is sometimes the storage that will need to transform from local storages to SAN to Private Cloud storages to Public Cloud storages. These are challenges to keep in mind but not far from implementation – get ready.

Bootstrap to Cloud

As more and more applications do get designed to move to the cloud, there are many more administrative tasks that organizations are contemplating to move to the cloud to reduce the maintenance overheads. The tools and steps required to migrate or move these applications will be something we need to aware and understand holistically. As IT Admins, the need to maintain VMs on the Public Cloud and keep them up-to-date and running is a trend not to miss. Yes, pure play cloud enabled apps are taking shape for newer applications but the legacy applications will stay, hence VMs might be something that cannot be avoided.

As much as applications migrate away from on-premise to cloud. Keep in mind the tools needed to bring them back to your environment anytime (if required).

Big Data – trends not to forget

As more and more people are getting stung with these industry phenomenon not very well understood implementations of NoSQL worlds, Non-relational databases – a trend that will hit the market sooner than later. Though I am a big relational DB fan for a long time, I can see it clearly the Big-Data story is something I will need to bite in the coming year without any doubt. Do we have a choice – Nope !!!

Conclusion

As 2012 nears, just like explained in “Crossing the Chasm” by Geoffrey Moore, the concepts of adoptions remain the same. There will be industry early adopters, others on the way to get themselves moved coming year and a vast majority still contemplating to move first in a sandwich mode with Private Cloud and then move slowly to the new era of completely public cloud infrastructures.

If you really ask me, there is more than what hits the eye and we will get a lot to learn as companies make these moves. There is anyways an opportunity in everything new that comes to the market and the phenomenon of Cloud is something to stay as we move into 2012 !!!

Continue reading...


 

In Coding–WHY does really matter December 18th, 2011

Vinod Kumar

This is a very simple tip to all programmers who are into this IT world. More and more I get to interact with developers and DBA’s I see this striking behavior that people memorize the syntax and the API’s more than understanding HOW these API’s really work. And there are so many of them who do neither but use their favorite search engine to give them almost any code block. Use intellisense with Visual Studio to help you rather than memorizing the API’s and methods available.

It is a little known fact that truth cannot be memorized. ~ Barry Long

Concepts matter

I have been part of this industry that changes so rapidly over the decade and I feel of loosing track of what all I learn. Even inside SQL Server, with every release passing – I am finding there are pockets of areas which are becoming tough to keep track off. But I have refrained from knowing everything that comes my way and concentrated on the basics of these concepts so that I will be able to have that conversation if it comes my way.

Learning is a journey and not a destination.

So don’t miss the opportunity to become a student and learn something new from someone next to you. You will be amazed about your own progress – trust me. I am still a student in many ways even today.

Learn about why things work the way they work and more importantly know the capabilities more than the nuances of these.

Going Search Engine way

I don’t think anyone out there has not used a search engine to help them in their times of problems :). So true the fact maybe, there is a problem associated with this method -

  1. We forget in what context that code was posted. This is so true in cases where I have seen people tryout something from the internet when their Database becomes corrupt. Now this is dangerous because you can cause permanent damage to the database that you may not be aware. So DONOT believe anything and everything out there on the internet.
  2. The context of the version is lost in such cases. For example, if you look at the API’s released for say – file IO API’s, Caching API’s, Encryption API’s inside .NET world. These are so different from .NET 1.1 to .NET 4.0. The irony of fact remains that the old style code will most likely work even on the latest version and hence can become a sub-optimal code. So be careful here too.

Next time you use a search engine, look at the code – look at the documentation if there is a different way to complete the task in hand using latest API’s. This is super critical from a code maintainability for the future.

Know your subject !!!

Long time back in a flight back from Sri Lanka to Chennai, I had the unique opportunity to spend some quality time with my friend and mentor – Dr. Nitin Paranjape. I am gifted to have known him for more than 7-8 years now, I keep learning so much from him even today.

So in this flight back we had an interesting conversation. This were the times way back in pre-Year 2005 days.

Nitin: Vinod, what is it that you love so much in computers.

Me: Nitin, I just love SQL Server like anything.

Nitin: Do you know each and every checkbox, dropdown and options available with SQL Server?

Me: Hmmmm … May not be all Nitin.

Nitin: Then you really don’t love it enough. When we go back, just give a glance through the documentation of SQL Server completely once. You must know what the capabilities of SQL Server is in-out to say you really love SQL Server. Once you got this between your head, then the implementation is just a matter of searching to the right index of documentation.

So true, from that very day this has been a constant struggle to get knowledge of “WHY it functions the way it functions” VS really looking at “HOW to make it function” for me. Even in my sessions I tend to move to the basics rather than talking about everything thing that I know. It is critical to understand the concept – “Why it was included” and the scenario’s it can be used with.

Conclusion

Hopefully, now you will think more towards the WHY rather than the HOW when you start coding. Do tell me your thoughts around this. Will love to hear your perspectives too.

Continue reading...


 

Customers are GOD !!! December 16th, 2011

Vinod Kumar

Your most unhappy customers are your greatest source of learning – Bill Gates

Joining a role with Microsoft Technology Center and now as a Technical Architect, I get to learn from our customers almost every day. This is a great source of learning and I am still slowly but surely starting to get a feel for it. There has been tons and tons of learning’s and that cannot be discounted. One of the key things that I did learn is to listen with patience before jumping into solution. Get ALL the relevant information and then suggest a solution. I think this has been my #1 learning in the past ~ 1 year into my role.

Now these listening skills with some thought through precision questioning is key to proposing a complete solution to our customers / partners. Let me highlight some of my perspectives in this blog post.

Customers are always right

There is no exception to this rule. In fact, we need to be careful and sensitive to their feelings before jumping into a comment. Their real life situations and emotions (passion) with which they are expressing their experiences – these are REAL. We should have an unqualified, unconditional respect to their views – PERIOD.

Being non-judgmental in our perspective to their views is critical. Hence, giving the due credit and respecting their point of view is something we must handle with caution. More so being open and neutral in our Questioning will help a long way. Let me cite some examples later in this article to drive this concept home.

Customers necessarily don’t have to earn our respect, we have to earn their respect.

Be non-judgmental

Though most of the techniques are old and look like no brainer – trust me it is really hard to take a step back and look at the big picture especially when we are talking about Technology. But I have been gifted in many ways to learn these tricks from my good old friend (Govind Kanshi) and still learning some of these techniques every single day from him and many more from my team. Here are some practical examples of answering -

Caution: “That wouldn’t work. You should not have done it that way”

Better approach: “That is a common approach, but based on our understanding and best practices we should be able to achieve the same task faster using ABC technique. Like …”

Caution: “Are you sure you want to use it that way?”

Better approach: “In a performance testing environment, we have successfully implemented the same requirement is a slight different way like ….”

Treat every customer as if they sign your paycheck… because they do.

Listen and probe

I don’t have to explain how listening is a key aspect of the job that I perform. By listening we are more keenly able to capture the context and the emotions attached to a specific comment rather than jumping into any conclusions. And in order to understand this perspective, it is critical to ask open-ended questions to get more insights to what a customer means.

Closed Question1: Do you xCopy your web files into the server?

Open Question: How do you do deployment of your websites today?

Closed Question2: Do you use VS2010 Debugger feature?

Open Question: What are the ways your team debugs code when application doesn’t work?

Sometimes these experiences are based on just word of mouth information that flows from grapevine conversations. Hence, we might sometimes need to get more specifics from customers when you see these hints.

Customer1: “Admin team thinks SQL Server is ….”

Response: “Sir, what do you think …? Can we help you validate this assumption against your applications data?”

Customer2: “That tool is better than this tool?”

Response: “Glad to hear on this tool, can you give us a glimpse of what capability does this tool do for you which you weren’t able to do before?”

And this list continues on and on … But I hope I gave you a flavor of what happens and how we probe and get more insights into the problem. Hence asking open-ended, non-leading, and neutral questions is the key here.

Be honest, acknowledge the issue, and follow-up as appropriate. Customers leave encouraged

Conclusion

We just discussed few techniques that I have learnt over the course of ~1 year. But when dealing with customers, don’t miss the opportunity to learn who your customers are, what they do, how they work, and what issues affect their productivity and success. If your conversations are to their pain points and their problems then you are likely to make good progress in understanding the problem from the outside-in method rather than solution out method. Cheers !!!

It’s mostly about understanding, not helping :)

Continue reading...


 

My Top 5 – Networking Tips December 9th, 2011

Vinod Kumar

It’s not what you know but who you know that makes the difference.

What do you look out for in conferences? I have been on both the receiving end and the giving side for years now and there is one thing that comes out clear for me personally – the Networking effect. I thought let me take this opportunity to talk out what are my perspectives to events and what we need to be aware when attending conferences in the future especially from Networking perspective. As an attendee the conferences are filled with boring moments and monotonous small talks back-to-back. Only the speaker has the luxury to make it exciting or put you to sleep – now trust me, try to put your kid to sleep and it is such a tough job. Last thing as a speaker you don’t want to work hard to put 100+ people to sleep in one sitting :).

Now let us get back to my top things to keep in mind while in these sessions / events. These are my top 5 -

Be ready to Give, Getting (is a byproduct)

Don’t get into a pressure of forcing yourself into networking and don’t focus on meeting a closed group of people. By enforcing this, you will miss out on all the fun that happens around the event and the new friends you can make. So the deal is simple, be there to share and learn from others too. Once you are into this mode of exploring and helping, you will see having a great time yourself and developing great new leads which you never imagined before.

Critical to understand – you shouldn’t look like you are desperate. There is always a fine line to be with-in and open. You don’t want to send a message that your agenda is out there to get something out of the interaction always. Don’t turn-off people – people are smart to see where a conversation leads.

Keep it simple and Open Conversations

Be a person of simple words with asking questions or delivering the answers too. Especially at social events be mentally prepared for your typical questions like – “What are you up to these days?”. This can be ice-breakers and avoid any jargon filled complex sentences. Keep it short, sweet and most importantly interesting :).

As much as possible if you want to get away from the monotony of these pre-thought questions – just divert the question in the next direction by asking a question back. Ask like – “what do you think of XYZ?” or “Why do you feel ABC is inevitable?” etc. These open questions can open up others and now you are about to “get” the most interesting answer and these are perspectives you want to not miss out.

It’s all about people. It’s about networking and being nice to people and not burning any bridges – Mike Davidson

Meet and greet everyone

Never look over anyone’s shoulder ever and more so at a social event. It is the last thing you don’t want to be remembered for. Don’t write off the opportunity coming your way. This world works via word-of-mouth and every bit helps. Appreciate each person you meet, don’t dismiss anyone, and don’t try to scan the room while talking to someone. This is a time for meeting new people and making new connections, to see if there is someone you can help or who can maybe help you.

Dos and Don’t

  • Know your limits while Drinking – One or two social drinks are fine. But you don’t want to miss the opportunity – where business is the need and answers need to be sharp, crisp and clear. And alcohol is surely not helping you in that cause. You want to portray yourself as someone others want to work with, not necessarily drink with.
  • Taking your business cards – This seems pretty obvious, but you’d be amazed at how many people don’t have any on them when it comes time to exchange the cards. And make sure you make some note of the business card with the context. Keep a pen handy always !!!
  • Be on the move – It’s way too easy to get stuck talking to one person for a long time. If you really go well with someone and want to talk more: exchange business cards and get in touch at a later date and then excuse yourself to speak to someone else. You want to make sure that you make as many conversations as possible before you leave.
  • Get socially connected – In this world of facebooks, twitter etc, don’t miss the opportunity to share, care and connect online.

“Privacy is dead, and social media hold the smoking gun” – Pete Cashmore, Mashable CEO

Don’t forget to Follow up

At any networking event, you’ll shake tons of hands and collect a loads of business cards. If you meet someone that you’d like to speak with further, don’t wait for them to contact you. Take the initiative and make the first move.

Conclusion

It’s something you have to learn through trial and error. And the only way to improve is to just get out there and do it. Attend events, attend client meetings – be part of it and win it one step at a time. The main deal here is to conquer yourself first.

Welcome your comments, keep them coming !!!

Continue reading...