7 Free Tools Every Database and BI Developer Must Have

It was Thanksgiving in the US last week. As a way to say thanks, I wanted to use this space to give a shout out to free tools that help me in my day-to-day work.

Click on the following links to know more and download.



Book Review: SQL Server 2012 Integration Services Design Patterns

This book is written by Andy Leonard, Matt Masson, Tim Mitchell, Jessica Moss, and Michelle Ufford. These are all highly talented people we are talking about. Andy is constantly teaching SSIS patterns in his training classes and articles. Matt, for me, is the face of SSIS team at Microsoft. Same goes to other authors, they are common appearances in forums and community events helping people learn SSIS.

Within a few hours of reading SQL Server 2012 Integration Services Design Patterns, it stood out that none of the authors were trying to impress by showing what they all know in SSIS. Instead, they focused on describing solutions and patterns in a great detail (exactly why i paid for).

Each chapter is a collection of solutions and best practices to common data integration problems. For loading flat files go to chapter 7, for data warehouse patterns go to chapter 11. Each solution is written in detail with lots of pictures and step by step instructions. You could have the book open at work and follow through each step to solve a problem without running into any issues.

There is also pages and pages of code that you could immediately use. You’ll learn frameworks and metadata driven execution patterns. I didn’t find a companion cd or website from where you can simply copy and paste this code. That leaves you with having to type-in; a little depressing.

It is fun to read as well. I smiled when page 30 said VCR play button (referring to the debug button).Literature in the book is plain, clear, and casually written. It was like reading a blog post – simple and refreshing.

If you’re on a mission to learn everything about SSIS, I wouldn’t recommend this to you. This isn’t a know-all-SSIS book. Authors didn’t hide this fact either. Cover of the book says “Improve your efficiency as a data integration developer”. This focuses on patterns to data integration problems. If your job involves moving data using SSIS, this is a must have. SSIS 2012 Design Patterns teaches building faster, efficient, and reusable packages for your data integration needs.

I’m @SamuelVanga on Twitter.

Tips to improve your blog, really!

As I learnt a few things about blogging, I made a list of tips to get better at blogging. Thought I would share.

  1. Pour your heart out to answer a question. When someone asks a question, it means they followed your post hoping they would find an answer to their problem. If they are stuck, take responsibility. Do everything you can do to help them.
  2. Don’t plagiarise. It is just not the right thing to do.
  3. Don’t like your own posts. We know you like them, you don’t have to explicitly click like to show that.
  4. Don’t start with Hi or Hello. You’re writing a blog, not a letter.
  5. Don’t sweat it. Write what comes to you and how it comes to you.
  6. Be natural. You’ll be at your best when you are yourself.
  7. Use images. Images deliver the message quickly. If it’s a technical post, throw in lot of screen prints, else find a funny and relevant picture to use.
  8. Name your images. One extra opportunity do drop keywords for SEO. Search engines read image names and rank your post better. Posts also show up in image search.
  9. Use lists.
  10. Check spellings. There is no excuse for spelling mistakes.
  11. Check grammar. Difficult specially for people with foreign mother tongues (including me). It’s okay to be not perfect, but keep an eye on it.
  12. Check font. Inconsistent font size looks ugly. Will make the readers go away.
  13. Title is the key to a good post. Choose a title to attract people, not Google.
  14. Make use of URLs. Google will read URL text to show your posts in search results. People don’t read this. Feel free to use as many keywords as you want.
  15. Let the readers comment. Don’t post a comment saying you received so and so feedback from somebody.
  16. Be careful with series of posts. They are both powerful and dangerous. In depth series like this by Devin Knight, for example, will make the readers come back, a series on keyboard shortcuts won’t.
  17. Use your energy wisely. Blogging requires a lot of energy: time and thought. Use it and write to solve problems.
  18. Blog because you want to, not because someone else is blogging.

As always, comments are most welcome.


Do You Know These Free Events?

I frequently attend a few online training events that greatly help me learn new things. Thought I would share, if may be you are interested too. These are all cool people sharing information for free to the community.

Go get'em!

All the sessions are recorded and posted on their respective blogs. If you miss the live event you can always catch up later.

Do you know something else that isn’t here? Please share. Drop a comment below. And SPREAD THE WORD, would ya!


Be careful with two digit years

I recently had a scary conversation with a user, which can be broken down to:

User: Why would the data have customers with a birth date of MM/DD/2020?

Me: What are you talking about? Lemme take a look.

Me again, this time with a changed voice: Umm, Umm, i plead guilty with an explanation your honor!

User: Let’s hear your explanation son.

Me: We receive a raw file with customer data. Date of birth is a field in that file, and it is supposed to contain data in ‘DD-Month-YYYY’ format. But, apparently, one fine day the file contained two digits for year instead of four. My import process decided that the two digit year 20 is 2020 and not 1920.

User: Okay, I’ll let you go this time, but fix it. Won’t you?

<end of story>.

Turns out, SQL Server automatically uses current century for two digit years less than 50, and previous century for years greater than or equal to 50.

SELECT CAST('01-January-49' AS DATETIME) [<50]


2049-01-01 00:00:00.000

(1 row(s) affected)

SELECT CAST('01-January-50' AS DATETIME) [>50]


1950-01-01 00:00:00.000

(1 row(s) affected)

Here is the books online explanation for the two digit year cutoff. Benjamin Nevarez (t|b) pointed me to this link when i asked for help on twitter using the #sqlhelp hashtag. Thanks Benjamin.



You will also like If i learn something, sorry, but you have to read it!

#meme15 – Use. Twitter. Why?

Should an average Jane or Joe professional use twitter?meme15new



Because, I’m using it.

Not enough reasons? <grumpy face> I knew you wouldn’t buy this.

Okay, allow me to present why you should:


You might be thinking, “I’m neither an author nor do i have any business to advertise”. True, but do you have a blog? Are you working on any interesting project? Are you a character? If the answer to any of these questions is yes, then yes, you’ve something to advertise.

Follow your interests.

Twitter makes it easy to follow your interests: people, events, or anything else, so you can stay up to date of what’s happening around your interests. I’ll use me as an example: I follow a (very) few people. No, I don’t follow celebs like @KimKardashian or @justinbieber – I don’t care what they do – oh, sorry, my interests don’t match theirs. Instead, I follow people from whom I learn new things, people whom I find interesting, people those inspire me. If any of those people write a new article, I want to know about it. With Twitter, i can know the news from all the people at a single place.


Example. Mine. Again.

I follow Marco Russo (blog|@Marcorus). Marco tweeted that he was doing a session on Vertipaq vs OLAP.


I was excited about it and wanted to attend, but couldn’t. I tweeted this.


A tweet appeared magically from Marco saying, hey Sam – you are awesome, this session has been recorded for you. Ha, I’m dreaming here. But you can see his tweet below:


This shows how Twitter makes it easy for a novice like me to interact with a master like Marco.

Wrap it…

I’m sure there are other ways to achieve these – but don’t you want to pick the horse that wins the race?

There are more reasons, oh yes, more. Need’em? Sure. Fantastrateic bloggers are giving more reasons here, while participating in this month’s #meme15, created by Jason Strate (t).

When you are ready to start using Twitter, read this free simple twitter e-book by Brent Ozar (@BrentO). You will thank me later.

See ya on the Twitter world…


Management Studio Split Tabs

This is by far the simplest and silliest post ever, but i just figured how to create vertical tabs in management studio. When I learn something, you have to read it. I apologize, but you have to read it. As Ellen DeGeneres says, “if I see something… you have to see it” (YouTube Video).

When I want to compare scripts, I would open management studio in two separate windows and compare them. I knew there is an easier way, but didn’t know how to do that until recently.

Right click on a tab and choose – New Vertical Tab Group.


Split vertical tabs can be seen in the image below.


Note that you won’t see the new tab group options unless you have more than one tab open. Horizontal tabs can be created by clicking on New Horizontal Tab Group.

When done, you can reset the tabs to the original position by clicking on Move to Previous Tab Group.


I’m sure you know this – but like I said earlier, if I learn something…!