Problems displaying this newsletter? View online.
Database Weekly
The Complete Weekly Roundup of SQL Server News
Hand-picked content to sharpen your professional edge
Editorial
 

Coping with a working life as an imposter

'Imposter syndrome' is a curious contemporary phenomenon. It describes that strange feeling of the inadequacy of one's professional expertise and knowledge, and therefore the fear of being exposed as a "fraud". The IT industry is famous for the many real imposters in its ranks, the people who reinvent themselves as IT experts, but I also believe that most of the minority of people who really understand the business and their role within it suffer from imposter syndrome. I sometimes wonder whether IT people are so inclined to subside into management roles purely because they either think themselves to be imposters, through the stress of 'burnout', or because they really are imposters.

This loss of confidence in one's own expertise is an occupational hazard. In areas of knowledge such as science, it is easy, when faced with the feeling that you are a fraud, to retreat into an arcane specialization such as the nesting behaviour of ivy bees, or the surface chemistry of III-V semiconductors. Who can argue that you're not an expert then?

The problem for developers, and particularly database people, is that most of us are forced to be generalists, rather than specialists. In a large organization, perhaps, we can avoid those creeping feelings of being an imposter by being a specialist, finding a cosy role doing nothing but modelling data or dealing with data-exchange systems. Database administrators or developers rarely get the chance because their role requires a diverse and changing range of skills and knowledge, and when they change jobs, they discover to their dismay that there many others, entirely different, elsewhere.

How then can one combat imposter syndrome? I believe that the best way to survive as a technical expert, with a broad knowledge, is to adopt the strategies of the successful lawyer. To handle highly technical cases, they need to argue eye-to-eye with people who are genuine technical experts in their field, and on esoteric topics such as the chronic symptoms of organo-phosphorous poisoning. Their skill is in the rapid assimilation of knowledge and detail, by knowing where to look for it. Then, once the case is over and the file is closed, they manage to forget it all. Effective preparation is everything. Like most people, I'm good at the 'forgetting' side of this technique, but struggle more with the assimilation side.

Actually, this sort of skill can be learned and there are many established techniques for doing so. It requires no mutant mental powers. Many of my colleagues in IT have an extraordinary facility for it. When asked in an interview if they had any knowledge of a particular arcane facet of relational databases, I remember a candidate saying, "None at all, but in a couple of days I'll be an expert." That wasn't arrogance, it was explaining that to be effective in an IT team, it is necessary to constantly learn and forget skills. It is not the existing knowledge, but the skill of acquiring it rapidly that's important.

Phil Factor

Join the debate, and respond to the editorial on the forums

 
Redgate SQL Prompt
The Weekly News
All the headlines and interesting SQL Server information that we've collected over the past week, and sometimes even a few repeats if we think they fit.
Vendors/3rd Party Products

How SQL Prompt Improves SQL Server Database Development

Everyone knows SQL Prompt for its code completion and IntelliSense features, but a lot of its extra value comes from features that allow the development team to standardize coding practices and drive up code quality.

Questions about Comparing Databases with SQL Compare that you were Too Shy to Ask

Phil Factor offers straightforward answers to tricky SQL Compare questions.

Administration

Create a Self-Service Framework for SQL Server DBA Tasks

SQL Server DBAs usually need to respond to lots of requests every day, from simple requests such as "can you please run a query in prod and send me the result in a spreadsheet?" to "can you please deploy these scripts (maybe hundreds) to PreProd?". This type of DBA service is a low value-add, yet unavoidable. So, is there way we can solve this issue?

DBA in training: Know your environment(s)

Pamela Mooney provides some advice about what information to track down first about your servers.

SQL Server Error Log Management

Guy Glanster explains the default behavior of the SQL Server error log, the problems with it, and provides a script that implements his recommended practice for managing it.

Failing SQL Agent Jobs – Part 3

This installment will show you how to setup SQL Agent Alerts and Operators for sending notifications when Job Failures occur.

Azure Databricks, Spark and Snowflake

How to See Record Count Per Partition in a Spark DataFrame (i.e. Find Skew)

One of our greatest enemies in big data processing is cardinality (i.e. skew) in our data. This manifests itself in subtle ways, such as 99 out of 100 tasks finishing quickly, while 1 lone task takes forever to complete (or worse: never does).

Azure SQL Database

Update both SQL Server 2019 and Azure SQL Database objects using one commit

To update both SQL Server 2019 and Azure SQL Database objects, in GitHub or Axure DevOps, using one commit you can set your database project to use the SQL Azure V12 Database Schema Provider.

Azure Synapse (SQL Data Warehouse and Data Lake)

Query options in Azure Synapse Analytics

A huge benefit of using the public preview version of Azure Synapse Analytics is the ability to query a file in the data lake by simply right-clicking the file.

Career Growth and Certifications

Overcome the Top 3 Mistakes in Preparing for a DBA Interview

Learn the top three mistakes candidates make when preparing for an interview -- plus the steps which will get you into the right mindset for success.

Redgate SQL Prompt
Computing in the Cloud (Azure, Google, AWS)

Building an AWS DevOps Pipeline for Databases

Grant Fritchey walks through a simple example of a deployment in support of a Continuous Integration (CI) process using AWS.

What is Oracle ASM to Azure IaaS?

Kellyn Pot'Vin-Gorman explains Oracle Automatic Storage Management and why it’s impossible to do a comparison to Azure IaaS.

Prepping the local SSD D: in an Azure VM for SQL Server TempDB

One of the few good, safe uses for the local SSD D: volume of an Azure VM is for SQL Server TempDB data and log files. There's a gotcha. Let's discuss.

Could verifying your backups be costing you money?

In this article, I'll explain how you might (unknowingly) be spending more than you think on this hybrid disaster recovery method, along with possible solutions to mitigate that extra spend.

Conferences, Classes, Events, and Webinars

Hidden treasures of SQL Prompt

You are invited to discover features of SQL Prompt that you may yet even know exist. We will will walk you through the treasure map of SQL Prompt and show you where all the great features are buried.

Monitoring is key to Database DevOps success

Through automated database monitoring, organizations are not only catching deployment issues faster, they are also resolving them quicker by empowering seamless integration between development and database management teams. To find out more join Grant Fritchey and our expert panel for this live discussion.

DMO/SMO/Powershell

Automating Power BI Deployments: PowerShell Basics

If you are going to use PowerShell to automate your deployments, it makes sense to have some understanding of how it works.

Data Mining / Data Analysis

How to Make Sense of SQL Server Geography Data Type

Do we need the SQL Server Geography data type? What problems does it solve? The answer lies in use cases.

Filetables, Great For Business, Great For Hobbyist

Louis Davidson uses the filetable feature to take his Disney and Dollywood picture database to the next level.

DevOps and Continuous Delivery (CI/CD)

Solving the Provisioning Problem in Database Development using Clones

When database development is described, the details often get vague when the data gets beyond spreadsheet-size. There is 'hand-waving' talk of providing databases for each developer, but little detail of how you would provision all the databases that would be needed, at the correct version and with the correct development data, and then keep them all in sync with the source code, as developers commit changes. This article explains the requirements, and how SQL Clone can meet them.

DocumentDB/Key-Value/Graph/other NoSQL Databases

Understanding Data Modifications in Cassandra

This article explains about how the data modifications is handled by Cassandra, to handle Update’s and Delete is effectively we need to first understand the Write Path and the Read Path in Cassandra.

MDX/DAX

Understanding the difference between LASTDATE and MAX in DAX

This article explains why in many cases, MAX should be used instead of LASTDATE to search for the last date in a time period using DAX

Performance Tuning SQL Server

Extended Events: Filter on Stored Procedure Name

Can your Extended Events session filter on the stored procedure name? Sure, we can do that but it's worth being aware of a few wrinkles.

Unindexed Foreign Keys Can Make Performance Worse.

Indexing foreign keys is a good thing, but as with any indexes, they come with a few costs: slower inserts and updates to maintain those indexes if you already have serious performance problems during inserts, it might be a price you can't pay. What are the other options?

Starting SQL: Eager Index Spools

Eager index spools can reduce the amount of work that needs to be done for some Nested Loops joins. Not only does SQL Server create an index for you, it doesn’t really tell you about it and it throws that index away when the query is done executing. It only exists in tempdb while the query executes, and it’s only available to the query that builds it. And boy, they sure can take a long time to build.

Index Usage: finding indexes not being used

One reason to check index usage would be to drop indexes not being used. Every index create some level of impact on changes (INSERT/UPDATE/DELETE) and if an index is not being useful, it will be only creating problems.

How to Persist Information from Lightweight Query Profiling?

With lightweight profiling, you can monitor real-time query progress while the query is in execution. You can also persist in some of the runtime information by using extended events

Merry-Go-Round or Advanced Scan

This Enterprise Edition-only feature allows two queries both scanning the same table at the same time to "join forces" and share the workload.

Optimize for Unknown for Inline Table-Valued Functions

An inline table-valued function (iTVF) is performing poorly for some parameter sets, and quite fast for other parameter values. Koen Verbeeck explains why.

PowerPivot/PowerQuery/PowerBI

Power BI and SharePoint – Terrible Together

Matt Allington finds that Power BI performance with SharePoint as a data source is simply terrible, both for refresh speed and for query editing/maintenance speed

Split up an existing Power BI report into a Golden Dataset and a thin report

Imagine you have a Power BI report published and now you want to create other reports that can feed from the same "golden dataset". Here's how to do it.

Dataflows enhanced compute engine – will it fold?

What happens when I turn on the enhanced compute engine for my Power BI Premium capacity? Matthew Roches reviews some of the factors the answer depends on.

Power BI icon library for Diagrams.net (draw.io)

An icon library for all Power BI objects.

How big is your PBIX?

Explains two ways to find the genuine size of our Power BI file and busts a very common myth.

Power Query – Uri.Combine Examples

Matt Mason shares his frequently-referenced table of Uri.Combine combinations

Using Power Query to get data from an API that uses a Username and Password combination

It's a bit trickier than it sounds. You have to encode the username and password in Base64 and in a particular format so it can be included in the API call, in the headers section.

SQL Server Security and Auditing

Dynamic Data Unmasking

The SQL Server 2016 dynamic data masking feature may seem like a great way to obfuscate data for downstream systems like dev and QA. Joe Obbish shows us that the data can be “unmasked” with T-SQL statements, so it’s not secure against anyone who can write their own queries.

dbatools.io = command-line SQL Server Management Studio: Keys, certificates

There is no way to see database master keys via SSMS GUI, so the only way would be to manage it using T-SQL, or… dbatools.

Security News and Issues

Padlocks, Phishing and Privacy; The Value Proposition of a VPN

Troy Hunt on the value proposition of a VPN in the modern era.

T-SQL

How to Create a Table with a Partitioned Clustered Columnstore Index

Brent Ozar provides a short script.

Starting SQL: Things Your Execution Plan Should Warn You About

Microsoft has chosen some odd things to warn us about in query plans. Erik Darling explains what's missing.

Starting SQL: Things Your Execution Plan Will Warn You About

One of my favorite pieces of SQL Server documentation is the XML schema for query plans. Whenever I’ve needed to figure something out to query the plan cache, or when I’ve been looking for stuff that might be interesting to pull out of it, this is where I’ve gone.

Starting SQL: I Don’t Care How Many Rows Are In Your Table Variable

So you’re that odd soul who has been listening to rumors about table variables. Perhaps things about them only being in memory, or that they’re okay to use if you only put less than some arbitrary number of rows in them.

Converting Manually-Entered Strings to Dates

Phil factor looks for a way to convert many thousands of dates, from transcribed historical records, into dates in SQL Server, so that search results could be retrieved on date ranges and so on.

Virtualization and Containers/Kubernetes

Upgrading a Kubernetes Cluster

Upgrading a locally deployed Kubernetes Cluster to a newer version seems a very simple task, but there are a few pitfalls.

 
RSS FeedTwitter
This email has been sent to {email}. To be removed from this list, please click here. If you have any problems leaving the list, please contact the webmaster@sqlservercentral.com. This newsletter was sent to you because you signed up at SQLServerCentral.com. Note: This is not the SQLServerCentral.com daily newsletter list, and unsubscribing to this newsletter will not stop you receiving the SQL Server Central daily newsletters. If you want to be removed from that list, you can follow the instructions on the daily newsletter.
©2019 Redgate Software Ltd, Newnham House, Cambridge Business Park, Cambridge, CB4 0WZ, United Kingdom. All rights reserved.
webmaster@sqlservercentral.com

 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -