THE SQL Server Blog Spot on the Web

Welcome to - The SQL Server blog spot on the web Sign in | |
in Search

Andy Leonard

Andy Leonard is CSO of Linchpin People and SQLPeople, an SSIS Trainer, Consultant, and developer; a Business Intelligence Markup Language (Biml) developer; SQL Server database and data warehouse developer, community mentor, engineer, and farmer. He is a co-author of SQL Server 2012 Integration Services Design Patterns. His background includes web application architecture and development, VB, and ASP. Andy loves the SQL Server Community!
Note: Comments are moderated. Spam shall not pass! </GandalfVoice>

  • SSIS Design Patterns Training in London 8-11 Sep!

    A few seats remain for my course SQL Server Integration Services 2012 Design Patterns to be delivered in London 8-11 Sep 2014. Register today to learn more about:

    • New features in SSIS 2012 and 2014
    • Advanced patterns for loading data warehouses
    • Error handling
    • The (new) Project Deployment Model
    • Scripting in SSIS
    • The (new) SSIS Catalog
    • Designing custom SSIS tasks
    • Executing, managing, monitoring, and administering SSIS in the enterprise
    • Business Intelligence Markup Language (Biml)
    • BimlScript
    • ETL Instrumentation
    • SSIS Expression Language
    • And more!

    I hope to see you in London in four weeks! Register today!


  • PASS and Summit 2014 Session Selections

    Earlier this week, the Professional Association for SQL Server (PASS) announced speaker and session selections for the Summit 2014 and there was spirited community feedback, questions, and debate. I offer the following analysis and opinions:

    In Defense of PASS…

    Full disclosure: I was selected to present this year and have been selected to present for several past years. In 2012, I was selected to co-present a full-day, paid, pre-conference session in 2012 but not selected to present during the Summit proper.

    Speaker and session selection is a zero-sum game. There are a finite number of session slots. In order for a non-selected session to be selected, one of the selected sessions must be de-selected. Over 900 sessions were submitted to fill roughly 165 slots.

    Selecting sessions is hard. That’s one reason PASS (wisely) allows volunteers to do the selection work*. There will be winners and losers, and the losers are not going to be happy about losing. I wasn’t happy about not being selected when it happened to me. I wanted to know why and I asked for feedback. After much persistence I got the feedback I asked for, and I wasn’t happy about that either.

    Session Selection is a Process

    PASS has a process for selecting sessions. I know the process is designed to facilitate session selection. I know it’s a different process from one used by my friend Allen Kinsel [blog | @AllenKinsel] in years past. There are benefits and liabilities to having a process – any process.

    People should always trump process.

    PASS and Processes

    When people are unhappy with the results of a PASS decision, PASS holds up their process in defense. *But PASS has a history of “overriding” process results. In an earlier Summit pre-conference session selection process, the selection of the volunteers was overridden by PASS leadership. The response of one participant in the selection committee was, “PASS, Don’t Waste My Time.” And this (valid) complaint led to all sorts of trouble in the PASS 2010 Board if Directors election. When PASS makes these sorts of decisions – for whatever reasons – people become suspicious and request more transparency. (I was once asked by a PASS Board member, “How much transparency is enough?”)

    Is it better to have no process? I don’t think so. But I think it is hypocritical and a leadership failure to hold up a process as a defense when the process isn’t always followed.

    When an MCM who consistently ranks in the top 10 sessions at the PASS Summit, Tech Ed (US and Europe), SQLBits, SQL Connections, SQL Intersections, and almost every other conference at which he presents is not selected to deliver a full-day, paid, pre-conference session and three full-day, paid, pre-conference sessions are awarded to employees of a member of the PASS Executive Committee (which is elected by the elected-members of the PASS Board of Directors, and not elected by the PASS membership – meaning PASS membership has no voice in this Executive Committee member’s future in PASS leadership), ethics questions are inevitable.

    I call for a public explanation from PASS leadership of why Brent Ozar [blog | @BrentO] was not selected to deliver a pre-conference session at the PASS Summit 2014.

    The Appearance of Misconduct

    As Kendal Van Dyke points out in his post, Thoughts On The 2014 PASS Summit Selections, it “smells” when three (of seventeen) day-long, paid, pre-conference session speakers work for the same company and that company’s president sits on the PASS Executive Committee. Are the selected individuals qualified to deliver pre-conference sessions? Yes, they are some of the best and brightest in our community. Are there others in our community who could deliver pre-conference sessions of equal (or higher) quality? Yes.

    Is it fair that qualified people be disqualified because they are employed by a company whose leader sits on the PASS Board of Directors? No, it is not fair. But it is right. In business and life, ethics demands we avoid “the appearance of misconduct”. The appearance of misconduct means we are technically (and perhaps morally and actually) right; but the action, words, or decision appears suspect. This is why I’m against having two (or more) members of the PASS Executive Committee work in the same company, and three or more PASS Board of Directors work for the same company.

    And this is why I believe the company’s of sitting PASS Board and Executive Committee members should be excluded from the (potentially substantial) financial benefit of being selected to deliver full-day, paid, pre-conference sessions at the PASS Summit.

    Some Suggestions

    • Collect and distribute feedback from the PASS volunteers selecting the sessions. (After some digging, I’ve learned feedback was collected from volunteers serving on the session selection committees, but the collected feedback has not been distributed. There may be more written about this in the coming week…)
    • PASS should either follow PASS processes completely or stop using “process” as an excuse for a failure to lead.
    • Do not allow sitting members of the PASS Board of Directors and Executive Committee, or people they employ, to present pre-conference sessions.


    I write these words because I care deeply about the SQL Server Community and the subset of the Community that is PASS. Historically, PASS does not respond to Community concerns. I’m not sure if PASS leadership takes the SQL Server Community for granted or merely acts like they take the Community for granted. Either way, it’s no fun for the SQL Server Community.

    This is fixable. There’s time to rectify this before the Summit in November. Will PASS leadership make corrections? Will PASS leadership address the concerns of the community? Or will they write the complaints off as coming from “a vocal minority” (unless this post goes viral and gets 250k hits)? We shall see.


  • The SSIS Data Pump - Level 2 of the Stairway to Integration Services has been Republished at SQL Server Central

    The SSIS Data Pump - Level 2 of the Stairway to Integration Services has been republished at SQL Server Central! You can find additional articles in the Stairway to Integration Services series here.



  • You Need a DBA

    This post was inspired by a recent conversation with a DBA followed by reading The Curse of Relational Databases (especially the comments) posted at Grant Fritchey’s SQL Server Central blog.

    I have two points to make:

    1. As of mid-2014 a physical person is required to properly administer a production relational database instance.
    2. The title of this post (and the second phrase of item 1) is a lie. You need two DBA’s (at least).

    You need two DBA’s in case your first DBA becomes unavailable. Having a single DBA perform the work of two DBA’s is a good way to ensure your first DBA will become unavailable due to burnout.

    If your disaster recovery / business continuity plan doesn’t have a use case or scenario to cover the possibility inevitability that your DBA will be unavailable then you need to update your DR / BC plan.

    For 75% of my career as a technology professional, I have seen advertisements that either state outright or allude to the belief of a software company’s marketing department that their relational database platform either reduces or eliminates the need for management by a qualified database professional. This is an inaccurate portrayal at this time.

    An accurate portrayal is that automation and tools have increased the number of instances a DBA can manage if everything is running smoothly. The number of people required to manage a crisis is higher (which is another reason you need more than one DBA). The number of people required to manage a database is not zero. Will it ever? I think it will. At that time, I think we will need people to manage the automation that is managing the database. I could be wrong; it has happened before. For now, I am confident stating…

    You need a DBA.


  • Presenting Using Biml as an SSIS Design Patterns Engine to Lynchburg SQL Server Users Group 26 Jun!

    I am honored to present Using Biml as an SSIS Design Patterns Engine to Lynchburg SQL Server Users Group Thursday, 26 Jun!


    Business Intelligence Markup Language provides a powerful solution for creating and managing SSIS Design Patterns. Andy Leonard, one of the authors of SSIS Design Patterns, demonstrates the flexibility of Biml in this session.

    If you're going to be in the Lynchburg area Thursday, I hope to see you there! 


  • Deployment and Execution – Step 18 of the Stairway to Integration Services is Live at SQLServerCentral!

  • Presenting Enterprise Information Management in SQL 2012 and SQL 2014 in Reston 16 May!

    I am honored to participate in the Reston SQL Server 2014 Launch Update event – a half-day event held 16 May 2014 at the Microsoft Reston Office. You can learn more and register here.

    Art Rask will kick-off the event with an overview of new features of SQL Server 2014, including:

    • Integrated In-memory technology
    • AlwaysOn HA / DR for mission-critical workloads
    • Cloud and on-premises scenarios support
    • Resource governance improvements
    • Advanced security enhancements

    After this introduction, two tracks are available for attendees: the Engine track and the BI track.

    BI Track

    Tim Mitchell (blog | @Tim_Mitchell) – co-author of SSIS Design Patterns and Group Principal at Linchpin People – and I will be presenting on new capabilities in SQL Server Integration Services (SSIS), including:

    • Upgrading from SSIS 2008
    • New designer features
    • Deployment
    • SSIS Catalog
    • Data Warehousing
    • Data quality services
    • Enterprise data integration design patterns
    • Master data services

    Reeves Smith will present on Analysis Services, Reporting Services, and Power BI, including:

    • Upgrading from SSAS 2008
    • Tabular model improvements
    • Implementing an enterprise BI strategy

    Engine Track

    Darryll Petrancuri will present “lessons from the field” featuring early-adoption stories of two new features of SQL Server 2014:

    • In-memory OLTP
    • Clustered columnstore indexes

    Casey Loranger will share significant improvements in SQL Failover Clustering, AlwaysOn Availability Groups, and cool new disaster recovery options using Microsoft Azure.

    I hope to see you there 16 May! Register today!


  • Presenting SSIS 2014 Data Flow Tuning Tips and Tricks in Boston 14 May!

    I am honored to announce I will be presenting SSIS 2014 Data Flow Tuning Tips and Tricks at the New England SQL Server User Group Wednesday, 14 May 2014!

    SSIS 2014 Data Flow Tuning Tips and Tricks
    Want to go fast? This session is for you! Attend and learn techniques for developing, instrumenting, monitoring, and managing SSIS 2014 Data Flow performance in your data integration enterprise.

    If you will be in the Boston area 14 May, join us! Details here.


  • Presenting Using Biml as an SSIS Design Patterns Engine at NoVaSQL in Washington DC Monday!

    I am honored to present Using Biml as an SSIS Design Patterns Engine Monday 24 Mar 2014 at the Northern Virginia SQL Server User Group (NoVaSQL)!

    I hope to see you there. Details…


  • Do You Learn?

    Silly question? Maybe. Hang with me, please. This will be short – a couple / three minutes, tops.

    Do you know more than you did six months ago? A year back? Yep, we both know you do. How did you feel back then, before you knew what you know now? Did you sense there was something missing? Did you know you didn’t know? No, you did not.

    That thing that you recently learned, did it just become true? Or was it true all along and you didn't know or accept it? What about the stuff you believe right now? Are there things you believe are true that you will later learn are not true? So what makes you so sure you have it all figured out now?

    Do you learn?


  • Step 17 of the Stairway to Integration Services is Live!

  • Flexible Source Locations - Level 16 of the Stairway to Integration Services is Live at SQL Server Central!

  • Me and the Man

    Part 1

    I grew up poor – the US version of poor. We never missed a meal but a few times it was only because we had a successful hunt. Suffice it to say that when we interacted with others, they always had more than us. More stuff, nicer houses and cars and toys. We weren’t unhappy kids – my brothers and I – but we were unable to do some things we wanted to do, things others took for granted. Perhaps the best description of how I felt about our childhood is a southern US expression: we made do.

    My first job was pulling tobacco at age 11 for $1/hour (I was probably overpaid). It was hard work. A few years later, in my mid-teens, I got a couple jobs that were less-physically taxing. I played sax in a country and bluegrass band on Saturday night and worked on a farm / orchard during warmer months. It worked out because most of the people who came to the dances on wintry Saturdays did not show up for the Saturday dance when it was warm out.

    I made decent money for a teenager. But never enough to get everything I wanted and definitely not enough to support myself.

    And then my girlfriend got pregnant. And my Mom and Dad separated. And I turned 18. During the same 10 day period in July 1981. Six weeks after I had graduated high school.

    I tried to get a job and found one working in a textile mill. I was still able to play music on Saturday nights to supplement our income. My new wife was still a senior in high school. Three days after I joined the National Guard I was fired from my job at the mill. I wasn’t scheduled to leave for Basic Training until summer, after the baby was due. I tried to get a job driving a feed truck for a local granary, but one of the guys in my National Guard unit worked there and told them I had just signed up and would be leaving for Basic Training soon, so they didn’t hire me. I understand. The law said (and still says) they had to hold my position open for me while I was gone and give it back to me when I returned. They didn’t want to go through the disruption of hiring me, then hiring someone else for a few months while I was away at training, and then letting that person go when I returned. The law meant well, but it kept me from getting a job I really needed.

    I ended up working at the stockyard mucking stalls. You may have seen an episode of Dirty Jobs featuring this kind of work. I would clean out the stalls with a Bobcat, push the manure to the end of the market, load it with a larger bucket loader onto a manure spreader. Then I would drive the spreader out to the fields and pastures and use it to fertilize the fields. I started during the winter months, but as Spring sprung pollen filled the air. My allergies made me miserable every day at work.  I couldn’t quit work because our daughter was born and there were even more expenses.

    Things picked up some when I went to Basic Training. I was getting paid more and all my meals were provided by the Army. I sent almost my entire paycheck home. But then I came back from Basic Training and had to find more work for six months before I went to Advanced Individual Training (AIT). I went back to playing music and working at the stockyard until that time. When I got out of AIT it was summertime. I found some work doing construction and still played music on the weekends to make ends meet. When the construction work slowed, I looked for a new job and found one – but again, it paid barely enough to survive and there was no money to do fun stuff.

    I once applied for a job at the post office. I’d heard they would hire veterans and people with military backgrounds. I didn’t even get a letter telling me “better luck next time.” Maybe it got lost in the mail.

    You might read this and think “Wow, things were hard for you.” They were, but that wasn’t the worst thing. The worst thing was that people were always saying stupid things to me like, “You should go to college” and “Keep working hard, it will pay off one day.” That was the last thing I needed to hear. I didn’t have money to go to college, so why waste my time going to the admissions office to see if I could attend? That was worse than a waste of my time, it would take up time the admissions office people would use helping people with some kind of chance in life. And working hard? I’d been doing that half my life. A lot of good that did. It wasn’t making the food stamps go away. I would have been happy to make $10,000 / year. These jerks were talking like I could make $25,000. Yeah… right.

    It was me against the man. My score was a big ol’ goose egg and the man kept wracking up points he’d never even use. I was never going to get ahead. Life sucked.

    Part 2

    Everything I wrote in Part 1 is accurate. But it is not true. First, it is written from an extremely narrow, selfish perspective – it’s all me, my, I. Second, all the responsibility is pushed to others. It was never my fault. “My girlfriend got pregnant” is probably the most telling indicator. “I couldn’t quit work because our daughter was born and there were even more expenses.” Accurate? Yep. True? Not by a long shot.  Third, The advice I dismissed was not only accurate, it was true.

    So what was true?

    • I started in life with a couple strikes against me, this is true. But it was nothing like real and actual poverty. I’ve seen poverty and I was living the dream by comparison. Our father tried his best (he started with a few more strikes against him). Our mother surrounded us with love and understanding. We had a good childhood.
    • I got my girlfriend pregnant.
    • I didn’t learn to manage money.
    • I refused to listen to good advice.

    There was “a man” messing with my life, alright. His name was Andy Leonard. And he wasn’t much of a man as he was a punk disguised as a man. 

    Part 3

    I went to community college. It took me six years to complete an Associates of Applied Science degree in Electronics Engineering Technology. But months before I completed that degree, I had started to realize my problem was me. I started my own business within months. It was hard because I still didn’t understand how money worked. But that business grew and kept us fed and watered for several years.

    When the economy shifted, I went back to work – but not at the stockyard. This time I was actually recruited by people who wanted to pay me to be a consultant. I struggled mightily while running my first business. But I survived and I learned hard lessons – mostly about myself, but also about how to communicate and sell and ship.

    It turns out those skills are worth something in every field of endeavor. Especially consulting.

    I changed jobs a few more times, learning new things as I did. One important thing I learned: At a minimum, work is me trading my time, energy, and knowledge for money. I bring something to the table – something to trade. My employer brings something to the table – something to trade. I am not selling my soul, I am trading time for money. I am not a slave, I am an employee. I stopped seeing employment as a contest and started seeing it as a balance-scale. I was willing to give on this point if I could get that point. Often, the thing I wanted didn’t even matter to my employer and they were happy to make the trade.

    Truth is, I’m still learning to manage money. It’s like learning anything else – it takes time, patience, and practice.

    Part 4

    Please think.

    Think about the stuff you do not like – the obstacles – in your life and career. Everyone has obstacles in their lives (some of them are real). It’s rare that you find yourself in possession of the means and opportunity to swiftly destroy an obstacle in your life; most of them must be worn down by time and persistence (Exhibit A: Many lottery winners are bankrupt within a few years of winning…). Ask yourself: How much of that stuff requires my acceptance, agreement, and  / or participation to continue? You may be surprised at the answer to that question.

    Think about who “the man” is in your life and career. How are you responding to the obstacles you identified earlier? If some of the obstacles require your “help” (acceptance, agreement, and  / or participation) to continue, you know how to manage that, right? Stop helping them! What about the other obstacles? One of two things is going to happen:

    1. The obstacles will stop you.
    2. You will overcome the obstacles.

    There’s no middle. There’s no stasis. Things are going to change, and they will either get better or worse. For things to get better, you have to overcome entropy. You are not on a level playing field. Life is not fair.

    Are you going to continue to blame others or are you going to start taking responsibility for your actions?
    Are you going to ignore good advice or are you adult enough to admit you are sometimes wrong and do not know everything?
    Are you going to keep losing points to “the man” or are you going to change?

    Part 5

  • An Overview of SSIS Parameters - Level 15 of the Stairway to Integration Services is Live at SQL Server Central!

  • SQL Saturday 277–Richmond Precons Are 21 Mar 2014!

    SQL Saturday #277 is going to be held 22 Mar 2014 in Richmond Virginia!

    There will be three day-long pre-conference sessions on Friday 21 Mar:

    You can find details of the precons here and you can register here!

    I hope to see you there.


More Posts Next page »

This Blog


My Company

Other Blog

Check out my personal blog...

Contact Me

Twitter: @AndyLeonard

Powered by Community Server (Commercial Edition), by Telligent Systems
  Privacy Statement