T-SQL Tuesday 131: Data Analogies, or: Explain Databases Like I’m Five!

This month’s TSQL2sday is hosted by one of my favorite presenters, Rob Volk. His challenge for us is to use analogies and explain a database concept like you would to a five year old. I love this idea..because so many of us techies have challenges with getting down-to-earth and simple when it comes to explaining things. We often assume other people are at the same level as we are.
I have many examples but the first one that came to mind to me, was a question my Dad asked me many years ago. He was sitting next to me while I was at work, and saw me get to my work using multiple passwords – first, unlocking the laptop. Then logging in to work on vpn. Then, logging in to the sql server I had to be on. His question was – why do you need so many, isn’t one enough?
I had to explain this using the example of security he had at home, where he lived. His bedroom has a lock.It is to ensure his privacy, and he keeps documents and various things there that he does not want everyone in the house to have access to. The house has a lock…for obvious reasons, of course. We don’t want any burglary or any strangers entering it easily. The community he lives in is a gated community, with a security guard at the gate. Only residents or their authorized guests can enter. Again, for obvious reasons..they don’t want strangers or loiterers in there. Why are so many layers necessary?
Each layer has its own vulnerabilites. There are people within the community who may be security risks. I can have things on my laptop that are personal and I don’t want to get in to work directly without an additional layer that protects the work environment from any accidental breaches I may have. There are people in house who may be guests or other friends and he may not want them to look at all the stuff in his room. I certainly don’t want everyone at work to have access to what I have, as a DBA, that can cause considerable damage. The individual strengths of each layer also cover any gaps that other defenses may have. The fewer the number of people who have access the more secure whatever it is you are securing may be.

Thank you Rob, for hosting.

Azure SQL Championship

There is no doubt that this is a time when we all have to be extra aware and work towards keeping our skills aligned with market needs. During this time of great crisis, the last thing we want is to lose our jobs or not have the skills necessary to land a new one. Multiple articles and research studies have been done on growing demand for cloud computing skills. Azure is undoubtedly among the fastest growing platforms for cloud – as this article from Dice.com says having Azure skills increases your potential to be marketable significantly.
Learning can be drudgery, it can also be fun. One of the fun ways to learn Azure is to take part in Azure SQL Championship – a joint attempt by Microsoft and PASS to promote Azure learning. From October 12-30, there will be daily quizzes/simple challenges to solve. If you do it right you have a chance to win some fabulous prizes as below:

GRAND PRIZE

  • Admission to PASS Summit Conference 2020.
  • Admission to PASS Summit Conference 2021 (3 days). Plus up to $3k for travel, accommodation + expenses.

SECOND PRIZE

  • PASS Summit 2021 Speaking Session.

THIRD PRIZE

  • A Raspberry Pi Kit, Azure SQL Revealed e-book, Azure branded items.

This is a great opportunity to get some skills in and also participate in a community event. Please consider doing it!! Will be blogging/share more in the days to come. Thanks for reading.

Being seen and why PASS helped

One of my colleagues/friends read my earlier blog post on the future of PASS and said he was not aware that being seen as a minority person was among my reasons for supporting them. In this one I want to explain that a bit more.
There is a strongly held belief in the tech community atleast that volunteers should not expect anything, including recognition. Theoritically, this is true. Volunteering is based on the concept of doing good without expectations and those should include recognition. But we don’t live in an ideal world.
I have been at many tech events not associated with PASS as a regular attendee. I knew what was being talked about, I wanted to participate – but it is insanely hard. I could be a pillar, or a book shelf, to the many men there.
The tech industry is hugely white male dominated – and those of us ‘others’, if we have to be seen, need some sort of prop identifying what you did, and perhaps, that you did it well. It may be an award, or it may just be a digital badge. Or it may be you sitting at a table with a table cloth or swag that is familiar looking to the people going by. People stop to ask details about the user group. Then they ask about what I am doing for them. Then, perhaps about other chapters or conferences or whatever else PASS has. It is a gain, for me, and for PASS. The same thing goes for digital badges on my resume. Below is an actual conversation during an interview, when the interview saw the ‘regional mentor’ badge.
Interviewer: So, what does a ‘regional mentor’ mean?
Me: It means I get to mentor and help chapter leaders on various aspects of what they do.
Interviewer: I see, so what are the chapters you mentor?
Me: In southeast region, I mentor 6 chapters (I list names).
Interviewer: Oh there is one in Greenville? I did not know that. We have another office there, I must ask our staff there to go. So I suppose you got to become regional mentor by being with them for some time and leading chapters yourself?
Me: Yes. I have run my own chapter for ten years in Louisville.
Interviewer: That tells me a lot about initiative!

That’s typically how it goes. Below are the ‘badges’ I have received doing various things for PASS. If PASS goes away, all this goes with it. Many people like me wil not have any props, any means to start a conversation or let others know what they are capable of. Please consider registering for the virtual summit, help us save the organization and sustain efforts at helping people succeed.


PASS – Meanderings

As most people reading this would know…the PASS organization is in a state of crisis now following the decision to go virtual. We are in a place where we are obligated to get very high attendance #s for the virtual summit, or risk going under if not. While on the face of it this seems like a financial crisis, I believe that is only one aspect of what it is..some of these wounds have been festering a long time and now broken open and gone septic. Many people have written posts on the financial part/association with C&C. I don’t have a head for accounts and am not going there. I will address what it means to be a PASS volunteer and what it has come to mean, over time.

Being a volunteer is hard, thankless work. When I started my sql saturdays at Louisville, I was the only person on the team with community association. I had volunteers, but they were people who would do what they were told to do, not the ones handling money or doing other publicity for it. I did this almost 100 percent on my own for 8 years, after which two dear friends who are community members came in and started to take over. I was burned out and tired to the bone doing it although I got many valuable contacts from doing it. I was also co running my user group at the same time, with similar challenges. I’ve also done plenty of other volunteering with PASS over the past 20 years that have helped me grow as a person, and helped enormously with my career. BUT it has also shaped my thinking a certain way, that seems a little dated for today’s world. My thinking and my rules/values by default run as below.
1 You have to work and contribute a lot to be seen. I mentally associate this with actual grunt work, significant hours, running around, searching for speakers, sponsors, presenting, helping and coaching people and such. So anyone who is newer and wanting recognition typically get this line from me – to pick up and do something and keep doing it a while until you are seen as worthy/respectable/sincere volunteer.
2 You have to support the organization at some level even if you disagree with their decision making. Like, a ‘core loyalty’ is needed, without which it is really difficult to get people to understand where you’re coming from when you have feedback. You can’t say ‘I hate PASS and its time they were gone’ and simultaneously offer feedback on how to improve.
3 You have to be willing to risk speaking up and let concerned people know at PASS that whatever they did wasn’t ok and why.
4 Have some heart, and be willing to forgive what other volunteers, including people on the board did – since we are all doing it for free, because we care and have many personal obligations to cope with.

In today’s world, none of my above values are holding up. Based on experiences using those lines – a lot of people get and want quick recognition. A lot of people think loyalty is about being brain washed and kool aided. A lot of people do not want to speak up anywhere for fear of being bullied or drawn into long winded arguments that end up making them feel defeated and regretting it. A lot of people think the board is like the White House, a huge static entity constantly making bad decisions that have negative impact. They don’t care to even know who is there, let alone forgive or think about why those people did what they did. Not all of these stances are right or wrong, but they exist and are impacting us a lot as a community.

In short, PASS has gathered ill will to an enormous extent that even those of us who were not part of any ill will are having significant challenges promoting the cause. Looking at some of the reasons why this could have happened –
1 Diversity issues – WIT is literally the only user group supporting diversity, they do an awesome job, but more sub groups are needed that actively push other causes – neuro diversity, LGBT, Racial inclusivity..everything. People from these sub groups feel their cause is not out there and acknowledged.
2 Old model of conferences and user groups – we did have online conferences with 24HOP (which was an enormous success when it started and one of its kind), but we did not keep up very well. The technical focus of PASS itself is very sideways skewed, after the move away from being a core SQL Server user group and conference. It seems a hotch potch of a lot of stuff broadly grouped under ‘Data’.
3 Speaker model – many speakers have asked about what they get in return for sessions. Advanced sessions especially need a ton of effort – and what they get in return does not seem to add up to it. Speakers need to be compensated well and not fed the line that the money coming in is going to other causes. That line is seriously old.
4 Weak anti harassment policy – Atleast two community leads I respect enormously left on grounds of this. It is becoming standard practice too everyone to adopt a strong policy and stand up for what it is.
5 Affliations for user groups and sql saturdays – The value of the affiliation, aside from a website has been seriously and repeatedly questioned. We have run some day long events virtually from our local user group here, and not used any tools PASS provided. We have had considerable success there and there is no reason that cannot continue. Sponsorships are also mostly local and enough to make a decent local event happen. In short, this affiliation is meaning less and less by way of value.

So..what next?

I wish for PASS to survive. Or to put it another way, I have to train myself to imagine it won’t exist since it was such a significant part of my life and am not quite there yet. It gave me a platform where I was seen – as a woman, as a person of color. That is not easy to find everywhere. I have been among other non affiliated user groups – it is really hard to get people to see who you are and sometimes they are so white male dominated that you don’t even exist even if you are physically present. I am not sure just saying PASS has to go and ‘lets do things locally’ is going to fix that problem. I will absolutely miss the big party that is the summit, but that is hardly on top of the things I will miss.Getting seen as a community member who added value and worked hard tops that, and many volunteers like me who are not mvps or even speakers in high standing are going to miss that, A LOT.

But, sometimes changes are needed even though they seem difficult to get used to. Pumping money into a system with all problems as above is not going to work very well. Or it is going to be a question of time, again, when a crisis comes up and everyone is re evaluating the need for their existence.

I wish for a new PASS, maybe smaller or less powerful, but with a clean slate and more acceptance from various parts of the community. I wish for more acceptance for free speech and more respect for volunteering in general. I wish for people to be seen and respect regardless of age, ethnicity,religion,sexual orientation or gender in this community. How all this will happen – I really don’t know. Maybe it will involve the organization to dissolve and re emerge as a smaller entity. I have hope and I hope for the outcome to be something meaningful for us all.

Deleting packages from SSIS Catalog

I was fortunate to attend a training on SSIS by my good friend and SSIS expert Andy Leonard(b|t). We already use the tool for ETL purposes where I work and I have mid level familiarity with it. I was able to pick up many best practices and tips and tricks. I highly recommend Andy’s training for those who want to get familiar with SSIS.
I will be blogging on a few things I learn on my journey to SSIS expertise. This is the first one. This came about as a result of wanting to delete a few packages from ssis catalog. We do not use these packages any more, and I wanted to clean them out from the project which resides on a few servers. I looked into a few ways of doing it.
1 Using SSIS to delete the packages from the project, and then re-deploy the project without the said packages on to the servers. This is probably the simplest way to do it.
2 Delete the entire project from ssis catalog and re deploy it.  This is not possible when you have some packages that are in use, particularly in production.
Both of these methods are discussed another SSIS expert Tim Mitchell(t) ’s blog post here

I found a third method that was a bit more elegant and easier to use for deployment – particularly in situations where the SSIS developer has limited access to production. This method uses varbinary project stream that is generated from the catalog.  

1 I have an SSIS project with 3 packages as below.

2 I deploy this project to my development server from SSDT.

4 Now, I delete the packages I do not need – package1.dtsx and package2.dtsx. My project looks like below.

5 5 I repeat step 2 and redeploy the project to SSIS catalog on my development server. This project does not have the packages I do not need. I can push the same to production using scripting as below.

6 I generate the varbinary stream for this project using below script on development server, where it is already deployed.

USE SSISDB
GO
DECLARE @ProjectStream TABLE (Stream varbinary(max));
INSERT INTO @ProjectStream
EXECUTE SSISDB.[catalog].[get_project]
@folder_name = N'LearningSSIS',
@project_name = N'Integration Services Project1';
SELECT  CAST('0x' + CONVERT(varchar(max), stream, 2) as XML)
FROM @ProjectStream;

7 I can cut and paste this into my deployment script as below:

USE SSISDB
GO
DECLARE    @folder_name nvarchar(128) = ' LearningSSIS',
@folder_id bigint = NULL,
@project_name nvarchar(128) = 'Integration Services Project 1’,   @project_stream VARBINARY(max) = xxxxxxxx,
@operation_id bigint = NULL,
@message nvarchar(max);
--Create the folder if it doesn't exist
IF NOT EXISTS
(SELECT 1 FROM catalog.folders AS f WHERE f.name = @folder_name )
BEGIN
    PRINT N'Create folder for ' + @folder_name
    EXECUTE [catalog].[create_folder]
        @folder_name = @folder_name,
        @folder_id = @folder_id OUTPUT;
END;

PRINT N'Deploy project ' + @project_name
EXECUTE [catalog].[deploy_project]
    @folder_name = @folder_name,
    @project_name = @project_name,
    @project_stream = @project_stream,
    @operation_id = @operation_id OUTPUT;
SELECT @message = om.message
FROM internal.operation_messages AS om
WHERE
    om.operation_id = @operation_id;
IF @@ROWCOUNT > 0
BEGIN
    PRINT @message;
END GO

8 Run this query on production (or get the deployment process to do it) – results as below.

9 If I look at the catalog on production server now, I can see that the packages I did not want are gone from there.

Learning Postgres:Installation

I had the opportunity of working on a project converting a postgres database to a sql server based one at work. I used this opportunity to learn more of this platform and decided to write some blog posts on it. I will be focusing quite a bit on how this compares with SQL Server as I go along and hope it will be useful.

PostGreSQL is an open source based relational database – it is easy to download and install from here. I chose the version available for Windows since mine involves a comparison with SQL Server on Windows and this is easier. The install is really simple and one has to click through screens as below:

The first option is the database engine. The second, pgadmin 4, is the PostGresQL equivalent of SSMS. We can use Azure Data Studio as well but would be good to have this too to make a comparison if needed. Stack Builder is an install utility that helps with add-ons to PostGreSQL. Command Line Tools can come in very useful for many commands. So in short, it is good to have all these installed.

The second option asks for a password for SA equivalent of PostGreSQL. Be sure to record this in the password vault as there is no secondary mechanism to recover if it is lost.

The default port for PostGreSQL to listen on is 5432 so unless something else is using this port it would be best to leave it as is.

Locale is similar to collation – but is more than just that. It is a combo of preferences that are specific to country/location. There is a detailed explanation of what it includes here. I left it as default.

After this the engine will install. It would be good to reboot once the install is complete. Then, type pgadmin and the prompt will appear for you to enter the SA password created above. Once that is entered, you should see a screen with the master ‘postgres’ database as below. In the next post we can step through server settings and creating a database.

Telecommute Resources

This is a summary of potential resources for any tech person who is interested in working from home – temporarily or full time. It came about from a twitter conversation on subject. This is not an attempt to promote any way of working, nor does it mean you need all of these resources to telecommute. It is entirely any individual’s call on what they need/afford to make working from home a satisfying experience.
I will start with my own experience. I am a minimalist when it comes to gadgets. I go into an office most days. When I work from home my needs are limited to my laptop, a keyboard and a mouse and a simple headset with a microphone. I used to have an extra monitor but it did not have any glare adjustment with made it hard to use. But most of us need a bit more than just a laptop – essentials seem to be monitors, headphones, standing/sitting desk and chair.
Monitors: Some people seemed to prefer 4k monitors like this one. There was a great suggestion by Monica Rathbun(b|t) on a portable monitor. If we don’t want to or have a lot of money the cheaper monitors like ASUS may be helpful. If you are the kind to have all your work displayed on a large screen – there are big ones like this. These cost a lot of money. By and large most people were in agreement that an extra monitor seems to add to one’s comfort and ease while working, so just having a cheap one might help in that regard.
Headsets: The options suggested were Plantronics , Yeti, and Surface noise cancelling headphones. My personal favorite has been Bose.
Buck Woody (b|t) and John Morehouse(b|t) also suggest Jabra speakers as well.

Keyboards and Mouse can be found anywhere for cheap. I personally like the Amazon essentials line. I have also found good options on sale at Staples or Office Depot. Majority laptops come with a built in camera that one may need to show demos or share screen during conference calls.

Spare power cords are absolutely necessary, as pointed out by Lisa Bohm (b|t)and Kellyn Pot’Vin-Gorman(b|t). Kellyn also has suggested a 1 TB drive and having a set of accessories you can pack and move with quickly.

Furniture including chairs and sitting/standing desks are personal with regards to comfort level and easy to find. I am fine with an ordinary folding table from walmart and a chair I found many years ago on Office Depot. It is important to find what works for your body/how many hours you are going to be standing or sitting and so on. A lot of health conditions can be created by improper desk arrangements.

Lastly, aside from gadgets, telecommute is a radically different way to work. It is a privilege for us to have it in tech – the vast majority of other professions in the world have to be worked on on site and the vast majority of people have to travel to work. But in order to enjoy and get the most out of it, self care is absolutely essential. I worked for nearly 6 years so I have some idea of what kind of needs there are :
1 Do not under estimate your need for being around real people. For many, the convenience factor and not having a commute is so exhilarating that we completely lose sight of our needs in this regard. Being around other humans creates a sense of connection and warmth that computers cannot absolutely provide. Find time, atleast at lunch, to dine with fellow human(s). Find office spaces for shared work if that is possible. Go to user groups or other meetings to be around real people.
2 Take frequent breaks. Buck Woody and Tim Ford mention having pets that allow for this to happen .It is important to step outdoors and get some fresh air/sunshine in. Having a fitness watch can help to remind one of this.
3 Start and end on time and maintain physical hygiene. I have never relished the ideas of working in jammies or nightwear much. It helps to start the day showering and clean set of clothes. And ending the day and calling it done. These are rituals that help sustain balance and create boundaries, which are very necessary.

Hope this was helpful and thanks to everyone who contributed.


T-SQL Tuesday 123: Life Hacks to make your day easier

This month’s T-SQL Tuesday is hosted by Jess Pomfret. Jess’s theme is ‘Life Hacks to make your day easier’. She talks of some things we do to make life simpler/easier. Two of mine are as below.
1 Before I accepted the current gig I am at – I worked several years in telecommuting positions. I found myself struggling in two ways with this – one, not getting enough walking/exercise, and two, not being around real people. I liked the benefits of telecommute though – which is, no commute and the ability to eat warm home cooked meals for lunch. I wanted to combine benefits of both – so for the next gig, I rented an apartment that is walking distance from work. It was not cheap – but got me all the benefits I needed. Fast forward – two years and this has been a wise call. I am loving the combined benefits I get and feel healthier, physically and emotionally. This might not work as a solution for all jobs but it does for this one and am grateful.
2 We all struggle with finding time to learn. About two years ago I discovered the joy of podcasts. I made it a point to listen to a tech podcast during my evening walk and was able to get both exercise as well as learning done. But I started to run out of material there – not that there is any shortage of podcasts in general but my focus was data specific tech podcasts and there were not that many to feed my needs on a daily basis. This year I decided to go one step further – I put a laptop on the dining table right in the middle of my living room. I have a long hallway that i can walk up and down on, and watch a pluralsight course, or a pass summit recording as I walk. This does not work for very demo-heavy recordings, but it does for a lot of lectures and am getting a lot of learning done this way.

I think we all need ‘hacks’ to make our lives easier and maximise value and pleasure we get out of doing what we do. Thank you Jess, for hosting.

T-SQL Tuesday #122: Being authentic

This month’s T-SQL Tuesday is hosted by Jon Shaulis – the topic is an evergreen one, dealing with Imposter Syndrome. I learned of this word via Mindy Curnett a.k.a @sqlgirl in one of her presentations. I was aware of it in a different way for a long time. Trauma victims know what it is better than most others. To deal with trauma, especially as a kid, one learns to dis associate or pretend it is happening to somebody else. It is a form of survival since you don’t have the necessary skills to deal with it as a child. Entire fantasies can form around such disassociation, many people do not recover from it. I knew I had it because I was given to frequent day dreaming as an adult. I was rarely present in the moment and always carried a perpetual sense of loss about me. In essence dealing with Imposter Syndrome is about being in the present and feeling life as it happens. Below are my strategies.
1 Mindfulness practice – breathing and meditation.
2 Using present tense as often as i can in conversation – this is an excellent tip I got from somewhere. If other tenses are needed use them and consciously return to the present.
3 Keeping track of when I disconnect/wander off – typically triggers that cause this.
4 Find moments when I am in the moment – and try to make more of these happen. I was surprised to see how trivial some of these ‘moments’ where – I remember them because I was fully prsent in body and mind when it happened.
5 Read and get more tips whenever possible. I read an excellent book on this recently. It is called ‘Presence: Bringing your boldest self to your biggest challenges‘ by Amy cuddy. The author went through a traumatic accident and describes her process of recovery and finding her sense of connection/meaning/authenticity through it. Her tips include posture (she has diagrams on how to develop good posture), Surfing,smiling and singing to ourselves, and giving ourselves tiny nudges of encouragement constantly.

Every person wants to be seen for who they are .Being authentic and present is the biggest gift we can give ourselves to handle imposter syndrome. Thank you Jon, for hosting.

Epic Life Quest – 2020 Update

I started keeping a written record on bigger goals in life from the year 2018 – following the example set by Steve Jones and Brent Ozar. This method of keeping track is called ‘Epic Life Quest’. I wrote my first blog post on it in 2017, and then another in early 2019. This is my post for 2020. Below are the goals I set and how or if I met them.

1 Finish off Microsoft Big Data Certification. I am already working my way through it. I will devote every saturday evening to it and hope to get it done.
Wheeee….the certification is gone 🙂 Considering the track record Microsoft has until now with certifications I think it is not longer valid to make them a goal in of itself.
2 Continue with watching pluralsight/pass summit videos and listening to podcasts whenever time permits.
I’ve done well in this area, although I could do better. Pluralsight was hard to dedicate time to. This year, I made a change. I bought a galaxy tab and keep it on my living room table. I have a rather large living room and walk up and down there as part of my fitbit goal in the evenings. I usually listen to podcasts while I walk – this year, am going to turn pluralsight videos on instead. And keep weekend for podcasts. I think this will help me find the necessary time as well as get some good learning in.
3 Complete writing second book I have committed to. 
I went about half way down the road with this, learning about graph data and the feature in SQL Server. But the feature did not evolve to the extent expected and was not book worthy. But I learned a tremendous lot about trees/hierarchies and graphs while working on it. This learning will be very useful for further blog posts/ug talks and so on.
4 Read two pages of a tech book every day evening with tea. I am intentionally keeping this goal very small and doable. This is also based on a few experiences with reading.
I failed miserably here. Not because of the goal but because I set it for mornings and am just not a morning person. Even though I live really close to work, I just get up in time to swallow some breakfast and get ready to get in. Also, am suffering some sleep trouble with mid age feminine stuff and it is really hard to predict a morning very well. So for 2020, there are no early morning goals.
5 Blog @ one post every two weeks – again, scaled down from one post per week and trying to keep it modest and consistent.
I could not keep up any schedule with blogging and most of my blog posts ended up to be community related or personal growth related. I did however, write 3 articles for SQLServerCentral and one for Simple Talk, which left me thrilled. I think if I find a juicy tech topic I will still stick with writing for one of these two sites instead of on my personal blog. It gets me more exposure, lots of interesting questions and some pocket money as well. 
6 I am planning on 4 tech events – SQL Saturdays at Raleigh, neighboring Charlotte, Louisville and then the PASS Summit towards end of the year. 
This happened. And this will be the same goal for 2020 as well. The only difference perhaps is that I plan to submit to speak as well at all events. I am unsure of submitting to PASS Summit or participating in Speaker Idol, which has been a longtime goal. It will depend on how I do health wise as well as how work/job and personal goals pan out. I leave it as a loose goal for now.

On personal front – 
1 I plan to continue with hiking and exploring national parks. I am planning a trip in Spring/early summer with some visiting family members.
I do not think an overseas trip will materialise this year.
Yes, this happened. Visited Colorado/Rocky Mountains as well as Smokies.
2 I plan to continue with healthy eating and exercising goals. 
Yes, Fitbit is happy. My allergies have gone up sky high so eating ‘healthy ‘ is not even an option. Am able to keep up with what I can eat and come home for a hot meal, both of which are blessings.

Goals for 2020 are as below.

1 Have one book ongoing to read. Alternate between a tech book and a book on personal growth. Blog book reviews so that others can benefit. Ideally, the time to read is a good 15 minutes to half an hour on the recliner after returning from work.
2 Listen to Pluralsight/PASS summit videos during evening walks.
3 Submit at least one article to SQLServercentral or SimpleTalk every month.
4 Keep weekends free of tech stuff or social media.Ideally, this is time to do some artwork/cook and clean/read something fun and various activities that help rejuvenate.
5 Keep up physical activity and eating habits.
6 Plan to visit one national park or another country in spring/summer, and 3 week vacation in India with family during the holidays.
7 Attend SQL Saturdays Louisville,St Louis,Raleigh,Charlotte and PASS Summit. My goal is to attend these events regardless of if or not am chosen to speak.

My learning goals include – in-depth Query Store and Xevents, R Programming, some SSIS and SSAS and if time permits some C#/F#.
On the art side – have taken up a rather ambitious cross stitch project and loving every minute of it. Plan to take this to completion.

That is my rather simple goal list. Hope to live through it. Wish everyone a happy new beginning in 2020!