This editorial was originally published on Nov 1, 2016. It is being republished as Steve is on holiday.
The Forever War is a classic science fiction novel. I'd highly recommend it if you enjoy that genre, but even if you aren't a science fiction fan, this is a story that can really make you think. The gist of the story is that as various parts of our military travel faster than light, we might encounter foes (or other units of our own military) that are substantially ahead of, or behind us, in technology. All because of the nature of time travel. Recently I ran across a few situations that reminded me of this story.
The first item was at home, where my son's computer acted up. He likes Windows 7 and has stuck by it. However an update caused boot corruption and he wasn't able to repair the system. In the process of trying to get repair things, we dropped into the command line to run chkdsk and bootrec. He wasn't sure how those worked, which makes sense. He's 17 and most of his life has been spent in GUI OS's. However, once we realized he needed to reinstall, I told him to copy things off his boot drive to another drive. I showed him a bit of moving around the command line, making directories, listing contents, copying files. As I was walking away, he asked, "how do I make a folder?"
A folder. Not a directory. We've had not only a technology shift, but also a nomenclature change in computing. It had never occurred to me that my son wouldn't know basic command line calls. As a side note, he greatly appreciated the /? parameter to learn more about commands.
The second situation was at a conference, where I was talking about continuous integration and deployment. A person asked about SSIS packages, and how would you move these with a tool like TeamCity or VSTS. I asked how they'd do this manually, and said that we would just program that. This person asked how they'd program the steps they take in SSDT. My answer was to use the command line, but this person had no idea there was a command line. Their whole career had been spent in GUI systems and they assumed that was the only way. Hint, pretty much everything can be run from a command line.
Those situations showed me that we have a technology shift in place. There are things that some of us have grown up with, used as a base to learn more, and we can assume that others have similar paths. After all, wouldn't you need to know about x to learn about y?
Not necessarily. The longer I am in this business, the more I see that the experiences and knowledge of different people can be vastly different. A person that knows how some technology, say T-SQL and SQL Server security might have no idea how replication works. Or they might know AlwaysOn well, but couldn't implement an Extended Event session. There are gaps and holes in the knowledge that each of us has, and assuming that others have similar understanding of any particular item can cause us problems when we try to work together.
Understanding, transparency, sharing knowledge, and appreciation of diverse experiences can help us all learn, and work together better. If a situation seems strange or a person is confused, perhaps a few questions on their frame of reference of the situation is a better response than assuming they are incompetent or telling them to RTM.