Announcing SSIS Catalog Compare Version 3!

I’m so happy to announce the release of SSIS Catalog Compare version 3!

SCCv3 Speaks Cloud

In May, Microsoft announced the general availability of Azure Data Factory SSIS Integration Runtime. Customers immediately began deploying SSIS from on-premises servers to the cloud. Some quickly recognized some gaps in the process, such as:

  • On-premises, enterprises have the option of executing SSIS from the file system or an SSIS Catalog (or the MSDB database). The only option available in Azure at the time of this writing is execution from the SSIS Catalog.
  • The DevOps story for the SSIS Catalog is… challenging. If enterprises use Catalog Environments and References, for example, developers have to devise a method to extract environment and reference metadata from the SSISDB database. Opening an environment and clicking the Script button results in an empty script window in SSMS. (Developers don’t even get an empty window when they click the Script button for Reference configurations…).

The Empty Script Window…

SSIS Catalog Compare, by comparison, migrates the entire SSIS Catalog configuration between catalogs.

To support DevOps for SSIS – on-premises, in ADF SSIS Integration Runtime, or hybrid scenarios – SSIS Catalog Compare facilitates scripting Catalog Folders and all contents (and also entire Catalogs!):

The scripts are numbered in dependency-order. Most artifacts – everything except the actual ISPAC file, in fact – are T-SQL scripts. I love this because it removes a bunch of the “mystery” for Production DBAs who may be deploying the SSIS solution.

Sensitive parameters – like connection passwords – are not exported. The person performing the deployment needs to supply sensitive parameter values stored in either SSIS Catalog Environments or in Parameter literal overrides. Both appear as shown here (click to enlarge):

Similarly, when using SSIS Catalog Compare to deploy between catalogs, sensitive values are not transferred. If you watch the gif at the top of this post, you notice the last step is to update the Sensitive Environment Variable value used to override the connection manager Password property. Sensitive values must be updated post-deployment and  SSIS Catalog Compare allows deployment personnel to perform these updates.


SSIS Catalog Compare version 3 is designed to support on-premises, cloud, and hybrid data engineering / integration DevOps for enterprises. Take a look and let me know what you think!


One Way to Write a Technical Book

In my previous post titled Writing a Technical Book, I discussed phases of the process of writing a technical book. In this post I share details of my approach to writing a technical book.


To summarize, the steps for writing a technical book are:

  1. Idea
  2. Proposal
  3. Contract
  4. Writing
  5. Editing
  6. Typesetting
  7. Publication

How I Write Technical Books

First, a disclaimer. I want to be very clear: This is but one way to write a technical book. This is not the only way and there are likely better ways to write a technical book. This works for me; your mileage may vary.

I choose to list the problems I am trying to solve and my responses.


Publishing is a business. Books are commodities in the publishing world. Like every other commodity on the planet, books are treated as goods to be sold, deliverables to be delivered. While the publisher desires a well-written book, they want a book above all else.

Impedance Mismatches

The process of writing a technical book is fraught with impedance mismatches – the misalignment of the goals between the author and publisher.

One example: the author may see the book as their magnum opus.
The publisher desires a good book, well-written. But most of all, the publisher wants to publish something. That’s how they get paid.

At the intersection of magnum opus and getting paid lies the AreYouDoneYet? call / email. This is usually an (or several) unpleasant communication(s) for all involved. The publisher likely feels fiscal pressure to ship. The author feels deadline pressure. As I said, not pleasant.

I know plenty of single-book authors who tell me, “I will never again publish a book through a publisher.” Without fail, each one lists an AreYouDoneYet? experience as their reason or part of their reason. I feel you. I really do. I don’t like those calls either.  Many solve this problem by self-publishing.

One Solution: Write First

How do I solve AreYouDoneYet? I change the order of the process and write the first draft, first – and then submitting the book proposal.

If you don’t like the AreYouDoneYet? communications, get done first. If you believe self-publication is the route to go – and I write this as someone who has self-published – then you will need to write the book before you can publish it. Go ahead and write the first draft.

Just ship.

It is not uncommon to experience difficulties writing such as writer’s block or finding adequate time to write. If you are writing about software that is scheduled to be released, the release schedule may slip. In fact, you should count on experiencing these difficulties and allow for them in your writing schedule, whether you are writing for a publisher or self-publishing.

I am not sharing this with you to discourage you. Quite the opposite, in fact! I want you to enter the writing process with both eyes wide open. I want to be unequivocal about these facts:

  • Writing is hard work.
  • Writing requires discipline.
  • Writing takes time.

If you read the writing of others and think, “I could do a better job,” odds are you are correct (especially if you’ve read my writing). I am not a good writer. Prolific does not equal good. But – and this is an important but – you have to write to write better than me.


“Why do you write, Andy?” In my humble opinion, why you want to write is the most important question you need to answer. This question needs to be thoroughly settled in your mind before you apply keystrokes to document editor.

My answer? “I write because I love to write.” I think it stems from the joy I derive from learning and a desire to pass that joy to others. Trite? Perhaps. But altogether true. I enjoy writing. I write stuff no one else reads, even. I journal. I do not care if a single soul reads this blog post. Does that mean I don’t care about writing?

Nope. I rewrite for you.

I want you to experience the joy I derive from learning. I know some of you experience that joy because you tell me.

The coolest thing about writing, for me, is helping someone learn something.

So I rewrite. I do that here, even. I edit posts before publishing them. I often read a post later, cringe, and rewrite some sentence, paragraph, or entire section. Often, I add material or links for clarification. More often, I delete stuff (especially commas and parentheses and run-on sentences and sentences that begin with conjunctions and ellipses…).

Robert Graves said, “There is no such thing as good writing, only good rewriting.” He’s right. In his book titled “On Writing,” Stephen King shares awesome tidbits about the craft. I found King’s On Writing and Steven Pressfield’s The War of Art and Do The Work inspiring and informative. Note: those links are to my Amazon Associates account. If you would rather not use an Amazon Associates link, please click one the following links: On Writing, The War of Art, Do The Work. These are books worth reading. I wish I’d read them before I started writing.

If you are going to be a writer, please learn to write.

Learning to write will actually solve most of the AreYouDoneYet? problem.
Don’t believe me? Start writing a book today. Follow my advice and write first. You’re going to have to write the book for the book to get written, right? Even if you self-publish, you will need to write eventually.

Why not start writing today?


Do you remember grammar and language arts classes in grade school? I do. I made straight D’s in these classes until my senior year in high school. I had a fantastic teacher my senior year at Nottoway Senior High School. His name was Barrow Cyrus. Mr. C. taught with passion. I’m sure other teachers had passion; I noticed Mr. C’s passion. Years later I would see the movie Dead Poet’s Society and be reminded of him. I made a B in Mr. Cyrus’ class. I started enjoying reading. I began to think about writing.

Remember those dumb outlining exercises? I hated those. First you have to plan how you’re going to write. You have to think first, then plan, and then write. Even back then, I enjoyed writing, but I wanted to get to the fun part and Just Write.

Those dumb outlines will save you many a headache, many hours rewriting, and might just help you avoid one or more AreYouDoneYet? communications. Please trust me: I’m right about this.

Does your outline have to be in standard outline format? Nope. It just needs to exist before you write the body of material.

In Practice

Start writing by creating a document for each chapter. Provide a title. Optionally, write an “In this chapter…” section. Don’t write more body text, not yet.

Add section headers and optionally include an “In this section…” sentence or two. You may add subheadings.

Please resist the urge to start writing in earnest on the topic until you’ve created an outline for each chapter you intend to write.

Does this mean you will not add chapters later? Goodness no! You will add and remove and consolidate chapters as you write. Start here. Write an outline.

On Advances

An advance is a pre-payment for writing. It’s essentially a loan against future royalties. An advance is seen as a way to compensate authors during the writing process, since writing takes time away from other paying endeavors.

I no longer accept advances on writing.

Why? I find it depressing to receive the first royalty statement from the publisher stating something akin to, “You earned $100 in royalties. You now owe us only $400 of the $500 we advanced you.” I’d rather receive a check for $100.

In worst cases, and advance can be weaponized against an author in an AreYouDoneYet? communication. I have a strict rule regarding ultimatums that applies to everything in life, not just writing.

Andy’s Ultimatum Rule states: You can deliver an ultimatum to Andy once.

I almost always capitulate when delivered an ultimatum. The other party gets their way. They have deployed a nuclear option, however; whether they realize it or not. My top priority from that point forward is departure.

It’s probably time I shared some potentially discouraging truth with you about writing…

You Are Not Going to Make Money Writing

Now that’s not entirely accurate. Odd are, someone reading this post will, in fact, make money writing. I have. So why’d I write that? I wrote that because you should not begin writing if you are only in it for the cashola. If even part of the reason you want to write is to make money from writing, stop now and save yourself some frustration.

I earn less – considerably less – than minimum wage writing.

“Are you telling me there’s no money in writing, Andy?”

Yes. Yes I am telling there is no money in writing. But

You can earn more money as a published consultant. If you want to look at this as a silver lining, please understand there’s a cloud attached.

My first book project was Professional SQL Server 2005 Integration Services (Wrox, 2006). That particular book sold more copies than all my other books combined. I made money off that book. The year that book was released, my salary tripled. Why? That’s an excellent question to explore.

Often, CIO’s and CEO’s do not follow the technology crafts. They don’t know who’s good from who’s not-so-good at tech. They listen to friends in the business for advice about who to hire. They hire larger firms that have been around longer because, they reason, those firms must be doing things correctly to have survived and grown.

You and I know the biggest and oldest are not always the best. We understand technology and know how to discern between who’s up-and-coming and those riding past success – or even firms that have better salespeople – or firms that flat-out lie. Some CIO’s and CEO’s cannot separate the wheat from the chaff. Many can (they didn’t get where they are for no reason!) but not all.

If you and I are bidding for the same work and I am published and you are not, I am probably going to win the work because the customer is going to reason, “Andy must know what he is doing because he’s written a book about the technology.” They would be correct insofar as I know enough to write about it. Does that mean I am going to do a better job for them, though? Maybe. But you may not get a chance to show them you can do better work than me because I can drop a physical book on their desk and you cannot.

Is that unfair?
Yes. Yes, that’s wholly and completely unfair.
It’s also reality.

So I lied. You will make money from writing, just not from the act of writing all by itself.

Consider not accepting advances.

If you accept an advance, I recommend you save the money as if you hadn’t received an advance. That way, should you find yourself in an AreYouDoneYet? discussion and an ultimatum regarding the advance is made, you preserve the option of responding akin to, “Will you take a personal check?”

If you accept an advance, please, please pay very close attention to the section in the contract about how the advance is distributed and collected. I’ve heard horror stories about authors actually owing the publisher money when books don’t sell as expected.

On Self-Publishing…

Maybe reading this post has discouraged you. If so, I am glad. Do I like hurting people’s feelings? I promise you that I do not. If you are discouraged it’s likely because you opened this post thinking some things that are simply inaccurate about writing technical books. If I’ve disabused you of false notions, I feel I’ve done you a favor.

“I’ll Just Self-Publish”

Self-publishing is a way to avoid AreYouDoneYet? communications.
Self-publishing is a way to avoid contracts and advances and all the associated headaches.
Self-publishing is a way to add work to managing the book and, thereby, the book’s value – especially the long tail. (That link is to an excellent blog post by none other than THE Seth Godin. If you’re thinking of self-publishing, you need to read Seth Godin!)

Shelf Life

Books have a shelf life. Publishers have relationships with book outlets – physical outlets like the ever-diminishing book box stores and with Amazon. In addition to these relationships, publishers also have marketing departments that create banner ads for books you and I see online. Publishing marketing departments also create email campaigns designed to attract buyers to books.

This increases book sales.
This takes time.


Please do the math. Is your goal to make money from writing? I’ve shared my thoughts on that matter already. I contend the value of writing lies in consulting after being published. I feel that way because that’s what I have experienced. John Grisham probably has a different perspective.

Once he writing is done – the work – and the book is published, it’s time to advertise. You want as many people as possible to learn about your book. You want them to want to buy your book. You want them to want to hire you as a consultant. And, as I said earlier, you want to win the horribly-unfair competition against those who are not published (or not yet published) for mind-share in the minds of CIO’s and CEO’s.

The math is simple: More is better.

It’s true that I can avoid the pitfalls I’ve listed (and many that I’ve not touched upon) by self-publishing. But, bottom line, you are most likely not going to be able to advertise as much or as well as a publisher. And if you are able to advertise as much or as well as a publisher, consider doubling – multiplying, really – the advertising of your book by combining your efforts with that of the publisher.

One last thought about the math: Is it better to earn 100% of the royalties by selling 100 copies of your self-published book or to earn 10% of the royalties for selling 1,000 copies of your publisher-published book?

If you read that and thought, “That’s the same!” you are wrong.

Please scroll up and reread the paragraph about my salary tripling. You need mind-share. That’s why you should write (unless you love writing like I do!). Even if you love writing, you still need mind-share. Mind-share pays the bills.


I wrote Building Custom Tasks for SQL Server Integration Services (clean link) from a 12-part blog series. I wrote the blog series in 2012. I copied the contents into Word, edited the material, built a more-relevant demo task, paid an artist $200 to design the cover (not this cover), and popped over to CreateSpace to ready the book for self-publication.

I even printed a test copy. I was that close to pushing the button on self-publishing in March 2017. And then my editor emailed and asked, “Andy, why didn’t you send me that manuscript?” It was a fair question and I gave an honest answer: “I didn’t think you’d be interested in publishing so small a book.”

Building Custom Tasks for SQL Server Integration Services comes it at 111 pages. I really didn’t think Apress would be interested. Apress was interested. The book was released in July 2017.

Everything is Negotiable

I negotiated a bunch or author copies for Building Custom Tasks for SQL Server Integration Services. A bunch.

I failed to consider – and negotiate – more copies for my co-authors of The Biml Book.

I failed.

I led that team initially, and co-led the team along with Scott Currie at the end of the process. I regret my failure to lead and apologize to the team for missing this detail.

Why did I negotiate a bunch of copies of Building Custom Tasks for SQL Server Integration Services? I wanted to be able to give copies of the book away at conferences and speaking engagements. I did and I have.

Key take-aways:

  • The number of author copies is negotiable.
  • The writing schedule is negotiable.
  • The advance (or lack thereof) is negotiable.
  • Editorial control is negotiable.
  • Ownership and the right to share some (or even all) of the content in other outlets such as blog posts and articles and whitepapers for which you may receive additional remuneration is negotiable.


If you are considering writing, I encourage you to write. I want you to enter the profession (and it is a profession), though, with both eyes wide open. I want you to know what to expect. I do not want you to think writing is easy because it’s hard work (even if you enjoy writing).

After publishing your first book, it’s normal – perhaps even a rite of passage – to look back and think, “I am never doing that again!” If you’ve published and feel that way, I promise you things get better with the second book and subsequent books. Why? Because your initial expectations were part of the problem.

The problems caused by your inaccurate expectations about writing have been solved.

Last August, a small subset of The Biml Book author team rewrote the book. It took about three weeks. One Amazon reviewer commented on the unity of voice, even. That didn’t happen by accident.

For me, the rewrite was the most difficult part of writing The Biml Book. When it was done I was ready to not think about Biml for a while. If you read that last sentence and know anything about me, you know that was a heavy emotion and a pretty big deal. I love Biml! But I needed a break.

Enterprise Data & Analytics started a gig right after the rewrite concluded. We were required to be onsite for the kickoff and the customer’s HQ was a few hours drive east of my home in Farmville. Since the project was just getting started, Kent Bradshaw and I were onsite 8 hours per day; no more, no less.

Being an early riser, I got up each morning a few hours before we were due at the work site and wrote. Of all the things to do, why did I write? After weeks of rewriting, why in the world did I write?

I wrote because I love writing.

I wrote Data Integration Lifecycle Management with SSIS in one week, writing a couple hours each morning and a couple hours each evening.

I spent several weeks rewriting the book, editing, removing, and adding content. But the 185 pages you can read today started as 110 pages in Word written that week.

You Gotta Figure Out Your Why

Simon Sinek wrote a couple really good books about vocation motivation:

Start With Why and Find Your Why are excellent books.

You need some reason to write. Really, you need motivation to accomplish anything in life. I don’t think money is a good-enough reason. You need something else – something beyond money.

My why? Love. I love writing.

Regardless of whether you write or not, find your motivation.


Writing a Technical Book

Writing a Technical BookI am often asked for more information about writing a technical book. As author or co-author of twelve books focused or touching on technology, I consider myself experienced – not an expert.

I’ve noticed “ah-ha” moments recently when sharing insights and advice, so I thought I’d write a post about it. I hope that’s ok. If you’re here, I reckon it is.

A Typical Workflow for Writing a Technical Book

“So just how does a technical book get written, Andy?” I’m glad you asked. The answer is, unsurprisingly, “It depends.” It depends on the publisher and author(s), but mostly on the publisher. It can also depend on the topic and competition (real or imagined).

Step 0 – Idea

Someone has to come up with an idea for a book. It can be either a publisher or author, but someone says, “There should be a book about that!” Publishers often seek authors these days. Every time I share this fact I get blank stares and looks that communicate, “What did you just say?” It’s true. These days publishers are looking for authors to write about technology topics.

Finding good writers is hard for publishers. The writing process is hard work and requires discipline and stubbornness from authors. I am not making any of this up.

Once the idea for writing a technical book is codified-enough, the next step is…

Step 1 – Proposal

Every publisher with whom I’ve worked has a book proposal process. Book proposal templates vary but share some important features, such as:

  • Title
  • Description
  • Author(s)
    • Author bio(s)
  • Target audience
    • Reader market size
  • Competing titles
  • Projected page count
  • Writing schedule
  • Remuneration details

Most of these items are self-explanatory. Some are negotiable. For example, you will be guessing (wildly) at the reader market size. You will also be guessing page count. And writing schedule.

Although it’s very important I choose to hold off sharing details about remuneration, for now.

When writing a technical book, there is often some give-and-take regarding the book proposal, followed by…

Step 2 – Contract

The book contract usually includes snippets from the proposal. At its heart, the contract is the work-for-remuneration document.

You should always read the contract carefully and strive to understand not only the language of what is written but the nuance of what is not written.

If you have any concerns, I recommend you consult a lawyer – especially if this is your very first experience with a writing contract.

The contract will always include the writing schedule and page count. Pro tip: delivering a first draft early that is longer than the proposed page count is not going to be an issue. (That last sentence is pregnant…)

As an author, you want to make sure you are comfortable with the contract when writing a technical book.

Step 3 – Writing

The author writes (or authors write) the first draft. For technical books, this includes screen shots and code snippets. Writing may also include quotes from others or other books.

Everything must either be original or attributed. No excuses.

There will be language regarding original / attributed content included in the contract, accompanied by language about penalties should the book contain non-original-and-unattributed content, i.e. plagiarized material.

Writing a technical book takes time to do well.

Step 4 – Editing

Editing involves at least a couple phases:

  1. Language editing – someone who is good at human language syntax, plow, and structure and understands technology well-enough to not bungle the author’s intent reads through the manuscript and notes places where better sentence structure, different words, and entire sections can be moved or changed to enhance idea-flow.
  2. Technical editing – someone, usually a technologist, who is willing to walk through the examples, samples, and demo code to verify it works and there are no missing steps.

Sometimes you can find a technologist who is good-enough with language to perform both functions – or a language editor willing to tackle the technology demos – but that’s rare.

Editing takes time to do well when writing a technical book.

Step 5 – Typesetting

Not all books are published physically, but all books pass through a typesetting phase. You may think, “Why, Andy?” That’s a fair question, especially for books published only in electronic formats (e-books).

Formatting the written word is important. There’s an entire science dedicated to fonts. What looks good on a paper page may not be as easy to read in a web browser or an e-reader like the Kindle. Publishers (and authors… well, good authors) want the reader to enjoy as little resistance to reading as possible. That’s not as easy as it sounds.

Books are more than just words. There are images and code to consider. Readers often complain about line-breaks in published code. In response, publishers go to great lengths to manage code line breaks and line continuation indicators. Again, this is not as easy as it sounds.

When writing a technical book, typesetting takes time to do well.

Step 6 – Publication

Once the idea for the book has been conceived, the proposal submitted and accepted, the contract agreed upon, the book has been written, has been edited, and the typesetting is complete; the book is ready to be published.

All authors understand this step: this is why they signed up to write a book in the first place!

There is no way to adequately and accurately communicate the emotions of opening a package and seeing your name printed on the cover of a book.


This post covers writing a technical book at a high-level. In my next post, I share tweaks to this process I have learned from experience.

A Tale of Two Properties: SSIS ProjectVersion and TargetServerVersion

I’m typing this at 4:30 AM IST in my hotel room in Bengaluru, India. It’s not unusual that I am awake at 4:30 AM. It is unusual that I’ve been awake since around 1:15 AM. I am attending and presenting at the Data Platform Summit 2018 and, obviously, still adjusting to the time zone.

It is an honor to be here! Amit, Manohar, and a small army of team members work around the clock – literally – to bring this awesome conference together. The passion and energy here is inspiring! If you have an opportunity to attend DPS, I encourage you to do so.

From the Interwebz…

Since I am still adjusting to the 9.5 hour time zone shift, I decided to poke around social media. My friend and brother from another mother, TJay Belt, had tagged me in a tweet. TJay was looking for answers about updating an SSIS 2014 project in SQL Server Data Tools (SSDT) for Visual Studio 2017.

TJay and I started this conversation a couple days ago when he mentioned a team member installed Visual Studio 2017 and experienced difficulties getting SSIS 2012 packages to execute in the debugger.

I don’t think I blogged about it, but I had some interesting experiences upgrading to Visual Studio 2017 and SQL Server Data Tools for VS 2017. The sum of my experience was: uninstall everything, then install Visual Studio, then install SSDT.

I shared this information. Today TJay asked a followup question:

I replied on Twitter – a lot – and realized in so doing that this deserved a blog post.

You are welcome.

A Tale of Two Properties


Since the release of SSIS 2016, SSIS developers have been able to select the version of SSIS via the TargetServerVersion property of the SSIS project. When new SSIS projects are created, the TargetServerVersion property defaults to the most up-to-date version available.

The flexibility offered in this setting adds complexity, of course. But it’s neat to be able to use features of Visual Studio 2017 to build and maintain SSIS projects for earlier versions without having to maintain earlier versions of Visual Studio and SSDT.


SSIS projects maintain a ProjectVersion property in the dtproj file that informs Visual Studio (and SSDT) of the version of the XML format for the SSIS project. If you open an SSIS project built in SQL Server 2008 R2, for example, the ProjectVersion is 10.50.1600.1 or thereabouts:

For SSDT in VS 2017, the ProjectVersion is 14.0.3002.106 at the time of this writing:

What This Means

ProjectVersion does not affect TargetServerVersion.

Visual Studio checks the ProjectVersion property and, if needed, updates the SSIS project to the latest version. The ProjectVersion will be updated to match the current Product Version of the SSIS Designer template for SQL Server Data Tools which may be viewed from Help–>About:

Updated ProjectVersion, Same TargetServerVersion

Once an SSIS project has been updated to the latest ProjectVersion, the TargetServerVersion property may be used to target a previous version of SSIS. SSIS projects targeted at any version other than the latest version available are flagged in Visual Studio Solution Explorer with the version displayed in parentheses after the project name:

In this screenshot, the SSIS project is targeted for SQL Server 2014 (SSIS 2014) but it is loaded into SSDT for Visual Studio 2017. This feature means we can edit and maintain an SSIS 2014 project using Visual Studio 2017.

Some Possibilities

The functionality presents some interesting flexibility for SSIS developers.

First, managing the TargetServerVersion property I can maintain the current Production version of an SSIS project using the latest tools, as long as the current Production version is SSIS 2012+.

Second, I can – fairly easily – update the TargetServerVersion property to the latest version available by simply changing the value in a dropdown.

What’s the Best Book for Learning SSIS?

Best Book for Learning SSISI am often asked the question, “Andy, what’s the Best Book for Learning SSIS?” There are some really good books out there that will help you learn SSIS (and I am co-author of several).

The book from which I learned the most about SSIS is Extending SSIS 2005 with Script by Donald Farmer.

Why do I consider this book the best?

Donald Farmer (TreeHive Strategy | Interview on the Data Driven Podcast) is a data engineering industry expert. He led the team that developed Microsoft SQL Server Integration Services. He’s technical, a great communicator (speaking and writing), and fantastic at solving business problems.

In Extending SSIS 2005 with Script, Donald discusses and shares demo code that informs he reader of the problems SSIS is designed to solve, and how SSIS is designed to solve those problems. Best of all, you learn this from one of the minds that designed the product.

I consider the Data Flow task to be the heart of SSIS – and the SSIS Script Component of the Data Flow Task is arguably the most difficult and most flexible component in the SSIS Data Flow. If you get your mind around the Script Component, you have a pretty good handle on how the SSIS Data Flow works, in my humble opinion.

I am aware of SQL Server Integration Services (SSIS) courses that are based on the material contained in this book. It’s that good.

“This book is over 10 years old, Andy…”

Yep. The information remains cogent. If I have to choose one book, Extending SSIS 2005 with Script remains the best book for learning SSIS in my opinion.

The Best Book for Learning SSIS

How serious am I in this recommendation? I just ordered a copy for one of the independent consultants at Enterprise Data & Analytics who is learning more about SSIS. I want her to become a senior SSIS developer in 2019 and I consider this book vital to accomplishing that goal.

Full disclosure: The links to the book above pass through the Amazon Affiliate Program. If that bugs you, please click here for a clean link to the book.



Honored to Present Lift and Shift SSIS to ADF at #Azure DataFest Atlanta

The #Azure DataFest Atlanta Schedule has been posted and I am honored to be selected to present Lift and Shift SSIS to ADF!

Check out this lineup of presenters and presentations. I describe this group as: “a bunch of smart people – plus me!”

Lift and Shift SSIS to ADF Abstract

Your enterprise wants to use the latest cool Azure Data Analytics tools but there’s one issue: All your data are belong to the servers on-premises. How do you get your enterprise data into the cloud?

In this session, SSIS author and trainer Andy Leonard discusses and demonstrates migrating SSIS to Azure Data Factory Integration Runtime.

Register today!


My Day – Sunday, 22 Jul 2018 – #SQLCareer

6:30-9:00 AM

Awaken. Weigh in, pray, read the Bible, check the burn barrel.
This morning I weigh 200 pounds. Prayer, praise, gratitude, thanking God for another day.
This morning I read Romans 8:31-39. I am teaching our adult Sunday School class this morning and we are making our way through Romans. Powerful.
Coffee. Breakfast. Boy-wrangling. It’s tough to get those boys up some mornings. This morning isn’t too bad. But it isn’t too good either. Apparently it was another late night online. It might be time to adjust the internet availability schedule. Again…

Riley is out-growing clothes weekly, it seems. He’s almost 11 and that happens. We manage to get them fed, watered, medicated, and dressed.

9:00 AM-2:00 PM

We pile into the vans and head to town. Worship starts with breakfast (we had a keto-friendly breakfast already, so we just bring stuff and don’t eat). Each adult Sunday School class is responsible for breakfast one Sunday per month. Our class has 4th Sundays and we pack some goodies Christy has left after the Farmer’s Market yesterday. Praise band rehearsal starts at 9:30. My hands are not cooperating with the guitar this morning. Note to self: No more 3-hour ax-limbing marathons on Saturdays… It’s Vacation Bible School week and Christy has a coordination meeting immediately after the service. We connect with some brothers and sisters for lunch at Pino’s across from Longwood University where good food and fellowship is enjoyed by all!

2:00-3:30 PM

I complete my presentation slides for the Data Platform Summit 2018 and upload all three presentations to the site.

3:30-8:00 PM

I empty the now-cool ash and restart the burn barrel. I’m hoping to get a nice hot fire burning before the threatening storms strike. Once the fire settles into a steady burn deep inside the barrel, Christy, Emma, and I go grocery shopping. We pick up supper from local eateries and head home.

Farmville has two colleges: Longwood University and Hampden-Sydney College. One nice thing about living in a college town is we have plenty of restaurants to choose from – and new restaurants open all the time. Some close, it’s true. But overall, the colleges “recession-proof” our small town.

We get home in time to watch the beginning of Shark Week on The Discovery Channel.


So… that’s a peek into four days in my life. I hope you’ve enjoyed this mini-series that includes this post plus the previous three:

Could I do things differently? Yep. Could I do things better? Goodness yes! This is what was queued for these four days; the decisions I made, some of the stuff I did with the time.

As I mentioned, this week is Vacation Bible School week so we will be at Heritage Baptist Church each evening helping Farmville-area young people learn more about faith in God. It will be a time when lifelong memories are made for the kids attending (I still remember stuff from VBS in Green Bay Virginia when I was a wee lad). It will also be a time of packing Operation Christmas Child shoe boxes, stress, teaching, running around, helping, hard work, learning, hurt-feelings, forgiveness, serving, and of joy in serving.

I didn’t accomplish all my goals for last week. That happens. It’s called “life.” The older I get – and I get even older Tuesday! – the more I’ve learned that life is mostly made up of interruptions. At least, the important stuff is. Things like spilled chocolate milk and scratches and helping and pulled backs and calls and emails.

Work is just stuff I do in between interruptions.
Work is a part of life.
Work is important.
Work is not the most important part of life.

I bumped some work goals into this week and will be back at ’em Monday morning, Lord willing. And life, Lord willing, will go on.


My Day – Saturday, 21 Jul 2018 – #SQLCareer

5:30-9:30 AM

Awaken after hitting snooze thrice.

Weigh in, pray, read the Bible, check the burn barrel.
This morning I weigh 201 pounds.
There’s a bunch to pray about. I start with praise followed by gratitude, thanking God for another day.
This morning I read Psalm 150 again (now reading Psalms from last to first), the second half of Romans 14, and Colossians 1:9-14.

I help Christy and Emma get the van loaded for the Farmer’s Market today. They sell all sorts of goodies.

The fire in the burn barrel is out and a few coals are smoldering. I decide to let is cool down and empty the ashes, then start over.


9:30-11:00 AM

I get the boys up – those boys can sleep. Stevie Ray needs to finish up some laundry and homeschool testing and Riley has some cleaning to do. I clean up the kitchen some and then head to the office.

Slides for the Data Platform Summit 2018 in Bangalore, India are due tomorrow. I’ve delivered each presentation before. But this is the first delivery of the Intelligent Data Integration precon with Azure Data Factory material. Exciting!

11:00 AM-2:30 PM

I head outside for some “pine therapy.” It’s Saturday and I want to get the trunk of this large-ish tree on the ground. That means either finishing or all but finishing the limbing of the tree. To turn it into exercise (well, more exercise) I decide to use the ax instead of the chainsaw. I accomplish my goal. Four large piles of pine brush lie drying in the Farmville sun.

2:30 PM

I call it for the day. I may have overdone it a little. Exercise is a good idea and getting outside for a stretch was awesome. Perhaps the ax wasn’t such a good idea… My hands and elbows are sore.

I do something I rarely do – plop down on the couch and watch some television.