1
00:00:00,770 --> 00:00:03,740
Now you may be wondering, why does all of this matter?

2
00:00:03,740 --> 00:00:08,840
Why should you be investing your time and energy into learning PowerShell?

3
00:00:08,840 --> 00:00:11,860
The answer to those questions have changed a bit over time,

4
00:00:11,860 --> 00:00:15,970
but with PowerShell 7, the long‑term goal is for you to be able to

5
00:00:15,970 --> 00:00:20,340
manage anything from anywhere on any platform.

6
00:00:20,340 --> 00:00:24,420
It doesn't matter if what you have to manage is in the basement data center or

7
00:00:24,420 --> 00:00:28,720
in the cloud. PowerShell makes it easy to manage at scale.

8
00:00:28,720 --> 00:00:32,210
If you can use PowerShell to set up one new Active Directory

9
00:00:32,210 --> 00:00:36,190
user account or one virtual machine in AWS,

10
00:00:36,190 --> 00:00:40,960
it should be just as easy to do it for 10, 100, or 1000. PowerShell

11
00:00:40,960 --> 00:00:44,310
gives you the option to manage things interactively. Although, I

12
00:00:44,310 --> 00:00:47,670
expect many of you will move quickly to build scripted solutions that

13
00:00:47,670 --> 00:00:51,680
can be automated. PowerShell should also make it easier so that once

14
00:00:51,680 --> 00:00:55,390
you learn the tool set, you can run it anywhere.

15
00:00:55,390 --> 00:00:57,020
Today you're on the Windows desktop,

16
00:00:57,020 --> 00:00:59,920
but tomorrow you're moving to a Mac. Microsoft doesn't

17
00:00:59,920 --> 00:01:01,940
want you to have to start all over.

18
00:01:01,940 --> 00:01:02,220
Of course,

19
00:01:02,220 --> 00:01:05,570
we're not at this utopian stage yet, there's certainly much more work

20
00:01:05,570 --> 00:01:12,170
to go, but there is a vision. With all of the current emphasis and

21
00:01:12,170 --> 00:01:15,890
interest in automation, PowerShell should be considered one of the

22
00:01:15,890 --> 00:01:18,580
primary automation languages.

23
00:01:18,580 --> 00:01:23,340
It's not the only one, but probably a good one to start with.

24
00:01:23,340 --> 00:01:26,690
PowerShell makes it easy to create scripts, and scripting,

25
00:01:26,690 --> 00:01:29,310
as I've said, provides consistency.

26
00:01:29,310 --> 00:01:34,340
You don't have to worry about forgetting some steps or mistyping a command.

27
00:01:34,340 --> 00:01:38,000
I'd also argue that if you've built the proper automation tools, the

28
00:01:38,000 --> 00:01:41,340
scripts themselves can also serve as documentation.

29
00:01:41,340 --> 00:01:44,410
Now everyone knows the process for provisioning a new user

30
00:01:44,410 --> 00:01:49,140
account or standing up a new SharePoint server.

31
00:01:49,140 --> 00:01:52,600
And automation through scripting provides efficiency.

32
00:01:52,600 --> 00:01:56,360
I once heard of an Active Directory administrator who was very content to

33
00:01:56,360 --> 00:02:00,040
manually create new user accounts one at a time in the GUI.

34
00:02:00,040 --> 00:02:02,640
He was in no hurry to learn anything new.

35
00:02:02,640 --> 00:02:04,840
Apparently his boss didn't care either.

36
00:02:04,840 --> 00:02:08,360
But I know that in the 5 minutes it might take him to create a single

37
00:02:08,360 --> 00:02:11,370
user using Active Directory Users and Computers,

38
00:02:11,370 --> 00:02:17,040
that GUI tool, I could create 100 accounts in even less time through PowerShell.

39
00:02:17,040 --> 00:02:18,740
Here's another example.

40
00:02:18,740 --> 00:02:23,050
What you see here is an old DOS command that's going to query a list

41
00:02:23,050 --> 00:02:26,620
of servers for the status of the BITS service.

42
00:02:26,620 --> 00:02:31,020
My list has 100 servers, and I'm going to go ahead and run it.

43
00:02:31,020 --> 00:02:33,940
And this command took 10 minutes to run.

44
00:02:33,940 --> 00:02:36,280
And let's not even think about how long it would take for you to do

45
00:02:36,280 --> 00:02:39,790
this manually with GUI‑based tools. Again, all I'm showing you here is

46
00:02:39,790 --> 00:02:43,800
kind of an old school approach to what we used to have to do as IT

47
00:02:43,800 --> 00:02:48,730
pros. Now compare that to a few interactive PowerShell commands using

48
00:02:48,730 --> 00:02:51,090
the same list of servers.

49
00:02:51,090 --> 00:02:55,240
This time it only took me 27 seconds.

50
00:02:55,240 --> 00:02:55,360
Now,

51
00:02:55,360 --> 00:02:58,260
certainly there are other PowerShell ways and commands I

52
00:02:58,260 --> 00:03:01,350
could use for that same list of servers in order to get the

53
00:03:01,350 --> 00:03:04,270
information, but this is one way, 27 seconds,

54
00:03:04,270 --> 00:03:07,850
obviously a whole lot faster than 10 minutes.

55
00:03:07,850 --> 00:03:10,060
And if I needed to build a report,

56
00:03:10,060 --> 00:03:12,700
say from the command output, it'd be super easy to

57
00:03:12,700 --> 00:03:15,940
run a few more PowerShell commands.

58
00:03:15,940 --> 00:03:19,110
The bottom line is you need to learn PowerShell because it is the

59
00:03:19,110 --> 00:03:22,280
language of the cloud and the modern data center.

60
00:03:22,280 --> 00:03:26,860
Even if your company isn't doing Azure or AWS today, maybe they will

61
00:03:26,860 --> 00:03:36,000
tomorrow, or maybe your next job has you managing Office 365 tenant. Learning PowerShell future‑proofs your career.

