Slw10: Automation With Jeffrey Snover
I talk to Jeffrey Snover, father of the PowerShell, about his almost 20 years journey to establish the fundamentals of a modern datacenter and automation toolchain and his vision of an OS agnostic automation framework around PowerShell Core.
2018, Thorsten Butz
One quote to rule them all: "The renaissance of the command line"
Jeffrey Snover is not only the "father" of PowerShell, he became the iconic advocat of Microsoft's data center focussed transformation. He is the poster child of many Microsoft focussed IT pros and enthusiasts, celebrating the improvements in command line administration as an accelerator of their own businnesses and carreers. In brief, I'd personally name him "Redmonds Godfather of Automation".
We talk about his almost 20 years journey to establish the fundamentals of a modern datacenter and automation toolchain from his early days in Redmond, the lessons learned from wmic.exe and his vision of an OS agnostic automation framework around PowerShell (Core).
Intro Airtone Ft. Bruce Payette
[0:37] Windows 2000 has coming out, we're starting to be a significant Player in the in the enterprise because prior to that it has all being 95 was a client operating system and everybody used any unix in the back and,
uh when does auntie was coming along and it looked like it could be a significant challenger to, unix in the NT space,
but they wanted to find out what they're competitive disadvantages work with respect to unix boxes and so they commissioned a survey amd one of the one of the strongest things that they got back was your shell sucks,
that command.exe is an inappropriate Automation tool and that you can't automate stuff in windows that so much of configuration windows is is point and click,
and that's great if you have one computer it's okay if you have two but once you start to get around five thousand computers,
it's not it's not feasible anymore it just doesn't work and so they needed to have this Automation and scripting tool and they needed a new shell.
Welcome Jeffrey To Hannover
[1:36] Hello Jeffrey Snover! Howdie, how are you doing? It is my pleasure to have you here it's a little bit like a dream come true you might get the idea that i say this every time but,
it's somehow just like this anytime i reach out to people that i never,
expected to meet in flesh and blood i'm very happy to have them here,
on the podcast so hello,
we're here at the partial conference in hanover, and first of all, i think we should,
say something about your experience. Here.
We are all very excited. What is your impression as there, the father ofthe that all somehow not off the conference, but off the reason where we hear, yeah, it's, an exciting conference, right?
I mean, we get some of the world's best people in this area, and they're all solving different problems, and we come together and we have a common language that we're talking.
We're able to share tips and techniques, you know, have you see something in the talk, and then you find that person that hallway and follow up on it.
It's just fantastic. And then the thing i like about this crowd is it's very, very deeply technical.
[2:51] Every single person here wants to reach out to you. Talk too. You make some pictures.
[3:00] Is that a burden? I would say it's a burden it's uncomfortable because by my nature i'm an introvert.
You know, i'm the guy. If you go to a party, i'm the guy in the corner staring at his shoes so it's, very awkward talk to people but i love tio talk to people.
I know that they want to meet me. They want to ask me questions. So i try and get out of my comfort zone to do that because i certainly enjoy hearing their success stories. And i hear lots of those and that's and that's. Great.
A Social Shell
[3:31] I don't want to rep up this communication in the first minute.
But somehow i think the success of power shell and the love that is spread and the engagement that you see, how much do you think belong?
Does it belong to the people, or does it simply belonged to the technique?
How important are you and guys like bruce who are very open minded for the success and the embracement of power shell?
[4:00] Oh, that's, a great question. I don't really know. I mean, i certainly i've long believed and had the argument that said, basically that gu ys were anti social, right?
Because you're there and you use a gooey, you click next, click next, click next.
Well, how can you help me? Like, hey, i've got a problem on which you can say is, well, i don't what you mean, well, i was able to do it well. Can you help me and it's like,
We're not really like sit next to you and tell you what to click, but with the command line interface and a scripting in her face, you can do work, and then when i have a problem, you can share your script with me,
and all of a sudden you've helped me, and in helping me, you've incurred, i've incurred a debt of gratitude, i say thank you.
Next time i see you, i'll buy you a beer and then guess what?
When you have a problem there's like a dozen different ways, you can solve it, and i can look at your work and i can say, wow, that is clever,
not just you've accomplished something, but i see into your mind and i see your skill and your thought process, and i can add meyer that on again.
You can't do that with a click next. Never have i said to somebody, hey, i just wanted what you share with your confidence. I just think you are an awesome mouse clicker.
You know that really, the way you click that mouse is really something else, you know, that never happens, but that happens all the time with scripting, like, wow, look at the, you know, the inventiveness of that person, so i think, by definition.
[5:24] Scripting committal in their face is a very social thing, and certainly i think, you know, we might have helped that along lines, by, you know, i think there's a.
[5:34] Ah seo, you know what i'll make? An analogy to.
Someone was talking about longevity, lifespan on whether or not you're, you know, some health indicator, like, you know.
And they said, well, there's, the average and then there's below average and above average,
and there's a huge difference in longevity between the people who are below average on something wade or blood pressure, something and the people who are average huge difference,
but between average and above average there's, no, really, no difference in outcome.
Okay, so what does that mean? So i think the answer is.
I think if we were jerks, it could have a very negative effect on the community, and we're not jerks that said being a super open, etcetera, i'm not sure changes that much.
[6:28] I think the key thing was not being a jerk. Yeah, yeah, but i i think you personally, but, uh, i'm convinced let me say like that, that it's a little bit more definitely.
But i want to talk to you about the future of Automation on dh. Someone said you can't understand your future if you do not understand the past. Yes. So it's obvious that we have to talk about your achievement.
The Origin Of Powershell
[6:58] What made you a technical fellow? Yep. Correct.
[7:02] And i want to start with it's a very current thing.
It happened to be that this month, terry myerson and the windows chief, he will go away from Microsoft.
And i know from a story that you told that terry maya listen was very important for the success or for the surviving off power shell in its early days.
Yeah, absolutely wouldn't have shipped without terry.
So what happened was, you know, we were doing this power shells, mon add.
And and then there was the windows.
[7:39] You know dot net diaspora the disaster the blow up and they were just getting rid of dot net everywhere and so we made the conscious choice to say, hey, we're gonna get out of windows,
on and then we'll come back in that gave us some breathing room but in reality you know they were going to come get us on it really was a cz bad is that really wass anyway?
So i had known the head of the exchange program, which was,
dave thompson at the time and dave was the guy who hired me into Microsoft infact my joke was that i never hired i never joined Microsoft i joined dave thompson.
[8:18] Is just an awesome executive and he said, well, you know, i got this team doing something maybe they should be using this instead and so i went and talked to terry and his team and they're like yeah, this is the right thing to do,
now terry was an incredible advocate first he was a hard nose hey, it needs to do this this and this and boy he just had a great set of demands it was very demanding and so we, you know, upped our game quite a bit,
and then when the windows team finally did come after us, they were going to get rid of us,
terry was there saying, hey, no you know they're critical to my, you know, multi billion dollar business. What are you doing?
Leave them alone on. So he was a great advocating a great customer. Very demanding the whole implicit promoting you jia.
We talk about jia now, and people think, oh, wow, that's, this new technology the answer is terry and his team was demanding of that of us from the very beginning.
And so, in fact, that technology the core that technology has been in the product for many years,
now they used it tau host exchange in the cloud, and they had their own implementation diddle a lot of heavy lifting, not appropriate for the general purpose community. And finally, at some point, i said, you know what?
The exchange guys were right. Everybody should be doing it this way.
And then we did the work to make it easy. That became jia prion twisting.
And beyond that the change people that it's common knowledge.
[9:46] They made power shall very popular simply because they put it in exchange two thousand seven, which was a little bit earlier than windows two thousand eight, which also had included with this power shell.
[10:04] From your point of view, how much complains did you hear about this huge change that exchange two thousand seven now is completely different than it was before just because ofthe power shell,
yeah eso there were definitely some grumbles i think that biggest signal that we heard was well basically,
we had written a white paper you know, exchange team myself about, you know, exchange and power shell or exchanging mona had finally get the administration model right?
And basically the idea was prior to this they had a gooey,
and what happened was it was all kind of messed up like,
first you have each individual team deliver a gooey and then they were all different,
so that was a mess and then they said, okay, no, we're not going to we're going to a central team deliver a gooey and then all these feature teams like hey, you know, you're a bottleneck and i can't get my features delivered there,
and then the resulting thing was coherent, but what didn't have everything and then the stuff it had showed everything.
And so what we said was the correct model was every feature team delivers a command line experience a full and comprehensive command line experience and then a centralized team we'll take a subset.
[11:22] Of the thing's basically said the eighty percent of the things that twenty percent of the things that eighty percent of the people will use on deliver that as a coherent experience.
But then, for the advanced people, they've got a command line experience.
And what this did was it allowed us to dramatically simplify the user experience.
Instead of saying, you know, new user and there's, fourteen tabs of properties to fill out, you said new user, and there were a couple tabs.
And if you needed those other twelve properties, like, hey, you're an advanced person used the command line on dso, the biggest signal that we heard. Wass you didn't get eighty, twenty. You got, like, seventy, twenty.
You know that it wasn't enough, and so then they were able to rapidly it a rate. And then most people were pretty happy.
Yeah, from what i remember is that there were some pressure which showed up as a cz one result of that and exchange was improved by adding some going features.
So i think there were a few complaints, right? Sure.
Thie interesting thing is how much, um, off this comes to your ears, how much is reflected on the power? Sheltie? Um.
[12:39] When i think about when it's over, you know, that's a very interesting point, one of the challenges we always have is to get the true signal it's easy to get a signal to get a true signal is very difficult.
[12:53] Because when you say you release something this and then all of a sudden you hear one hundred people complain, what does that mean? Everybody hates it?
Or does it mean the people love it aren't saying anything that people hate it are right, and vice versa.
So, you know, like, for instance, here we have a number of ex people who used to work in the military, and they were telling us i talked him after the talk, and they're saying, oh, it partials used everywhere.
I have no signal of that whatsoever, and there is and it's used everywhere for cyber defense, and i had no signal on that all this whole, you know, they love it so that under the hood, like in windows, we had exactly the same problem.
Because in the past, we had no telemetry really had no idea who was using what or how they were using it.
So, it's, one of the challenges that we have is trying to get the true signal. I can get a signal, but i don't really know what it means.
[13:49] I want to focus on the time that PowerShell was a build in functionality in witness server two thousand eight.
And i know that there is a quite a fun story how it came to, uh, window system thirty two when its power shall version one dot oh, thiss strange part.
I think this story must be told because it's very funny, right?
[14:14] Little of its funny tragic. Yeah, yeah, yeah, it can be both so well, let's, go back a little bit.
So as i mentioned, i'm sensitive to the fact that sometimes the story makes people come off as as overly negative on dh. Certainly that was my experience.
But let me try and be fair to people. Here's. What happened for a number of different reasons?
Bill had been beating up bill gates have been beating everyone up to do dot net dot net dot net.
And so then we did longhorn. That was the code name, and we're everybody's got to do dot net every is getting on at was not the right thing to do. But that was the message everyone heard.
And so people were doing all sorts of crazy stuff and it was never gonna work, but it just went down.
Pretty far down the line before it just collapsed of its own weight.
And instead of having the deep think say, hey, what really happened here? Hey, maybe maybe, maybe bill gave us the wrong signal or too strong a signal or wasn't refined in a signal.
Maybe we didn't do a good job taking that and saying, hey, we hear you, bill, we understand what you want, here's, how we're going to translate that into things that can do, and here's what? We're going to stay the same and hears, we're going advance.
Maybe it was individual engineers who made bad calls, etcetera, there's, any number of reasons. But it was a disaster.
[15:41] And the team you know, the mark twain once said that a cat that jumps on a hot stove will never jump on a hot stove again,
but neither will they jump on a cold stove well that's sort of what happened with windows and dot net you know even you know they're not going to jump on that out stove again dot net it brought them such pain such disaster and a lot of people,
hurt their careers and a lot of people have ruined their careers okay?
And you know the guy before you got his career ruined because something you're a little reticent to jump on that,
anyway so they developed but there was this other group that said no no this is great technology we've got to keep using it and so the windows guys said okay, well, you know,
we'll have tto we have tto establish some criteria for what when will allow dot net into the into windows,
and so a group of senior windows architects get together and produced the seven rule rules for bringing any windows any dot net code into windows and these were very, very difficult things and part of this wass version ing,
and so you know and there were all sorts of problems with version ing and that it was all confused right?
So first off have told you this story but basically my position is version ing is not a problem.
[17:02] Okay version ing is not a problem because problems can have solutions,
version ng is a dilemma because there is no solution right as the lama just has to be managed ok, so that's the first thing you have to get in focus and then the second thing and this is my key contribution wass,
i said there isn't a version ing issue here there are three different version ing issues here,
and they have different characteristics and they have different solutions so let's walk through that and so then i structured things and as the outcome of that and cause one of things was no dot net and windows and tell you solve the version in problem.
[17:41] And so this is part of that and what we said was oh well, one of the version in problems is that the language might change and so v one is not the one of power shell the implementation,
it's v one of power shell and so if we had a massive breaking change, you know, instead of saying for each we say for each,
element or something is something some dramatic change then we'd say, well, it's power shall version two in reality we just call it a new language but anyway that,
made everybody happy on dso finally, you know, seven of these things and each one very, very difficult and each one we were greener than green, we just really nailed it on dso.
Then, finally, we were ready. We knocked on the door and we said, okay, we have solved all these seven problems. No one else has done it.
[18:37] We're the team, we've done it and then we found out that there's an eighth rule and you only learned about the eighth rule after you learned the first seven and the eighth row wass no frickin tot net and windows,
and so i'm not making this stuff literally way,
sent it our letters say okay, we're ready to come back in the windows here is all the things and the head executive at the times said you would draw this, you know, send malik withdraw this request i'm not letting,
dot net into windows and i'm sitting there with the program and you're like, oh my heavens, what do we do?
He looks at me says here's what we do and he wrote, you wrote back and he said, no, you turn it down.
[19:20] And so that's what the guy did and then that forced the conversation where hey,
hear what you're saying, but there are other business concerns here of this business leaders and it meets their business needs and met all the requirements and that's ultimately how it got shipped,
so in fact there were a lot of other executives that were crucial,
bob muglia ah fantastic executive he basically said hey understand this is critical to the server business, right?
Windows is going to be a data center operating system and for that i have tohave this Automation they've solved all the problems i understand there's. You have some bad history here.
But we met the criteria, and we're going to move forward.
[20:04] Anyone understand that when your ship, when the server two thousand eight are too and delivered power shell version too?
Does anyone contact you and say, hey, we raised the number, everyone, everyone because everyone things this is to the generic polish ovary?
Yeah, yes. So lots of people ask me that, and we knew that was gonna happen.
But you had tohave it there. There was a number things like that, like snapping scores, another one we hated snapping at everyone aided, snapping, but basically, you know, colin powell, i think the world of call no.
In his book, he talked about people, you know, find people brilliant people who destroyed their careers because they were came a point where they had to his time,
his phrase was pay the can't give the king his coin.
[20:56] If you don't give the king his coin, you don't get to move on and so and these that their entire career, because they wouldn't give in on one thing, and so their entire career went away. So it's the same sort of thing.
Every now and again, you got to just pay the king is coin.
And you get to move on, and then you can do good things. So there are a couple things like that we had to pay. The king is coined. Snap ins was one. We hated that thing.
We did it, this version ing thing, that was another one.
What it kept saying was, listen, we don't let me tell you why this is the solution, but why we don't have to implement that, because, you know, in reality, it's, like, if you drive down the oregon coast, you see these tsunami.
[21:38] Evacuation signs.
I says navy in this room, ever used one of those.
[21:43] No i mean it's important a half but no one's ever going to use it so maybe what we do is we don't in this case maybe we have it because now we figured out how to solve it,
but we don't use it until we need it and the answer wass no so you know what,
if i if i fought on that i would've lost and we would have been able to ship so i paid the king is coin we have this kind of stupid thing everybody asked me hey isn't that stupid which i say yep you're right.
[22:13] Yeah just keep ahead in time if we talk about pasha corps yes we have that version ing but in the proper way so nowadays if you install a partial core,
usually you reflect the version in number within the five paths so this is what people expect and now we have it yeah of course and to wrap this up too,
the file extension what was first because dot ps one also obviously a little bit strange was that first because of the conflict is post script or,
no no no it's all had to do with this is everything is the same yes exactly,
before p s one i think it was m s h one,
r m s h then we had to go to version you would get the name michelle that was a last minute change change everything that's good keyword.
From Monad To Powershell
I really did like um mona the term moment,
and off course you can't ship this you need some proper wording for the marketing guys and i thought Microsoft shell is a good is a good term at this age i really like that,
today i think it wouldn't have been so clever because nowadays we get rid off the Microsoft and windows thing we want to be open minded so maybe power shell is the perfect name.
So can you set tate say something about who invented this term a power shell because morning yeah. Who was that?
Yeah eso we had a program manager actually was marketing manager i guess,
scores it's got hot away and he drove ah whole naming study and we brought in consultants and the whole bunch of names omni shell was one i liked omni shell and there were all these things and then there was this power shell,
and then they did this whole thing long conversation i really liked mon ad i really wanted mode at um,
and everybody really wanted more but the marketing guys said no, we want to do power shelf i mentioned it bob ugly he was sort of the the executive sponsor this.
[24:21] He went and said no what do you mean no?
I said it's going to moan at and and the marketing guy sipa bob i own this decision i'm upset yeah, but only if you get it right.
Wait, wait, wait. That's not how it goes he's like yeah, but that's a bad name.
And so he said, hey, you know what? We'll do a study, we'll do a study and so that kind of like let the get the pot off the boil for a second because otherwise we're just going to buy.
Fiat aims to the marketing guys went into the study, i'm not making this up and they talked to her. I don't know hundreds of people and they would ask questions like this, and i'm literally not making this up.
They would say which name better conveys a sense of power, menad or power shell?
Which name better conveys a shell worn out our followers?
Thie end of the survey they had statistical evidence showing that power shell was a better name.
And so, you know, as much as i rolled my eyes at the technique they won the day it was power shell and then after they kind of forced it, it was something that i learned to love, and i thought, no, they actually made the right call is a fantastic name.
[25:33] So they did. They did. They did good. We already touched this on dh just because we're talking about that.
I'm sure you told that story at this moment. I don't know right now i mean,
mona is something that you need university degree to understand the philosophy,
can you tell within a very short period of time from five hours of something like that, can you tell how how big.
[26:03] How did this touch you?
This idea ofthe moni it's very, very hard to understand what the essence that made you pick up this term and the philosophy or however you want to call that and put it in your work because this's not related now on first sight.
Yeah, right. Well, so my background right is physics and then philosophy, right?
And so is i study philosophy realized that there were two worldviews, right kind of western world view and eastern world view and the western world view everything's made up of atoms.
Ah, but then live minutes had this idea that will everything was made up of mon ets and emote. Add the discreet unit.
You know that basic building block of the verse was a unit of consciousness,
and that consciousness would sometimes decide to manifest itself is matter, and sometimes it would decide to aggregate with other matter to affect a purpose.
[27:01] And that these higher structures would join with other higher structures to affect purposes. Right?
So particles into adam's atoms and the molecules molecules into structures, etcetera, all forming higher and higher purposes.
So in this world view, it was all based upon composition and that's. What power shall wass is a world where hey, i wasn't gonna build a command line. Do it. And it does everything.
I was going to build all these little components that then you structured together to solve some big perp us. And then it went away.
So that's that's how that that's what influenced me so lego would be another name that were fit the needs, right?
Maybe some danish company fancy.
Ok. Yeah. That's. That's. Pretty it's. Pretty amazing.
The Perfect Tribe
[27:51] Back in the early days, i know from bruce. Forget that he came more or less by accident toe Microsoft. And he did a very funny talk about his early days talking about being a foreigner.
Who's canadian which that's? A strange name. He told me anybody thought that he's from france or whatever.
So he really he came to Microsoft by accident because simply his company was born.
[28:21] And then.
[28:23] You somehow on the floor someone focused on bruce and told you talk to this guy or the other way around so you,
became the perfect couple from what i know until now,
and my question is if you go back in these early days it's obvious that you and bruce are very very important for the for the for the very early days,
but my question is how many people does it take to build a shell so who's involved in that you might not want to drop all the names but,
from a non programmers perspective it's pretty hard to measure how many people does it need to build this stuff yeah well actually so if you,
if you listen to bruce is talk today and i think it would be made public he even to part talk about the history power shell and really he skimmed over things so lightly but even then it was like a multi hour talk right,
s oh really knows shell well most people when they hear a shell like like if i could produce a unique shell like one person a couple weeks because it's pretty straightforward thing but that's not what we have here right?
We have a very sophisticated distributed multi machine ultra secure,
distributed management infrastructure that has an imbed herbal Automation engine and a language and then a shell.
[29:49] Okay so it's really quite complex s o the answer i'm always terrible it like quantity so i don't know how many people we've had on it but i will say that we've had lots of people that were this absolutely key,
so and at some point when we shipped version one the manager came to me and said well, who who's responsible for language and i said you know the language,
bruce pad and jim truer cho designed the language and i'll tell you what they just did a fantastic job they did ten acts better than i thought was possible and they said yeah but who developed it,
and who designed i said well they did it together and said well if you had to give fifty one percent of credit to someone who would it be i said go away,
that's a stupid question so anyway they just did a knockout job on language ly homes has had his hands on everything but is like the core owner for all the security and by far this is the most secure language the histories of,
part he wasn't part from the very beginning my wrong he was in version one but not from the very beginning so he had gotten the early beta's and he had all this great feedback and so when i said boys guys,
pretty awesome i'm going to go buy him lunch,
and sea bottom launch and like you know if you're interested and he's doing a bunch of stuff right fantastic with a couple of years.
[31:09] Yep, kenneth hanson, he was there, actually, he was the first guy recruited to the team because he had been working on a configuration management system.
You know, it took us fourteen years, but we finally have to it desired state configuration, but i hired him to go and do that,
and he had played a key role on up bunch of areas like the name, spaces and modules, and you're all in line we've had people that have done just knock out jobs, and i'll say that the thing that i'm most proud of, i mean, i definitely was the,
owner of a number of the key concepts,
but the thing i'm most proud of is that i created a framework where awesome people could come,
and contribute you bring their awesomeness,
and do so in a framework word added up,
you know, bill kate used to joke, and he said, Microsoft we and we are great at hiring the world's best talent, we're just not so great at making their iq's add versus subtract and that's what?
I think you know why i did i take pride in creating the environment?
We're awesome people could be awesome, and it added up together, so to sum this up.
[32:21] From what i heard less than ten people who are the core, the heart of the very early days,
to both of these early days let's see so i would say the very early days was largely i'll just say that sort of the core principles,
the core principles were really worked out through a siri's i'm bad with times and durations but probably,
ate too fourteen months where we would go into each other's offices and sometimes was two and sometimes three sometimes four but myself.
Kenneth hanson, bruce pay at jim truer um for that kind of day, you must not forget someone could say,
yeah, i'll just say i lose that i'm old and i'm sure i forgot somebody now we had other people who had come in for a certain element, you know,
daryl ray very important player in version one he was the key program leader, but in terms of the kind of core principles that four group of people were always in the core,
machine or bees do is to go take a look at the original patents and take a look and see who is on those original patents.
[33:35] Because there were quite a few yeah that's the things that,
i really like that this is living history, you can talk to the people who did,
some very important stuff but it's only ten years ago twenty, thirty years and you don't have the chance of it comes to rome ancient rome can't tell her so um.
Lessons Learnd From Cli
[33:57] In these days off windows xb.
[34:01] Once you told us that you were also in charge ofthe women,
which really surprised me because women was a such a hidden star in my life i could show this beautiful tutto anyone and nobody knows it before i jump into the enter the room so,
and nobody knows about it knew about it back in those days,
but it was so powerful in other hand,
not so easy to use no admirable but you told us there is a relationship because you learned something from women that lead,
so the design of the power shell can you explain a little bit about what went wrong in women so that you think today with power ship with a much better solution because the data is the same it's w m i a.
[34:51] Yeah, so the key thing that i learned from women so basically we came in said we needed to command line interface is and so then we had one project that just said hannah spend millions of dollars on contractors to write individual commands,
and i think we got forty of those things like forty compounds that's, not many.
And then i went and said, hey, get this other problem this other problem is people spend all this time and energy to write a w my provider and then they don't see any value,
like with a perf mon perf counter you see a performance counter, a line goes up and down, but here we say, we'll do all this hard work and then somebody might buy tivoli, and then they'll use it, like that's two disconnected so we need to give them an experience, an immediate gratification.
So let's write a command line interface and i knew that was gonna happen was the team want to say, well, let's do do the same approach and then all right, you know, all right, individual commands for each one of those.
And i knew if we did that, what ended up happening was i wouldn't get many commands because we had written so much code and then we didn't ship it because we couldn't be tested.
[35:56] So instead i said, hey, let's, do it this way let's write a core engine and then we'll write this metadata that drives the core engine toe work against this common interface w my and they're like no that's a dumb idea.
I don't want to do that. And i said, yeah, i'm not asking these that we're going to do it, and so a jam that on them and they did not see it.
They thought it was stupid senior guy making us do all the stupid stuff, but i knew that what it meant was that i could get that core engine validated.
And then this other, these this metadata.
Well, that wouldn't be viewed as something that need to be tested before it shipped.
[36:35] And so once we had this engine in place i was able to then spend two weeks in my own time writing and i wrote like seventy two of these ah meditate of things and boom they were we're off to the races,
but then what happened was it was working so well i said hey you know we should add this feature in this feature in this feature,
so it got a little bit extra money to invest in this we added those features and then they applied to everything.
[37:03] So what i learned was hey if we get this partitioning right and have most of the work being done by the engine and then on ly the work and this is where we ended up with command let's and this,
therefore mon adds was to make those things as small as possible,
now what that did was because they were small as possible that meant when i asked somebody to do something it was the smallest thing necessary and the bulk of the work was done by the engine.
[37:32] So and that i got a consistent user experience i minimize the cost i was asking people to dio and doing it in a frame work that i could invest and make everything better,
so if you think about it that's the heart of power shell right so money writes a very small amount of effort to get a command let and then i provide remote ing a common syntax, i provide workflow, i provide a gooey i can expose it through a web.
I can expose it through delegated administration through jia, i do all that, they didn't do anything, you have to get any of that benefit, so that value proposition really resonated.
In fact, in the later days, i just started talking to people about this.
What, in fact, w my seong, you know you, if you know this, but it generates xml, and then you process the xml through a series of excess. Lt transforms.
In fact, you can sequence and have multiple excess. Lt transforms.
So what i was doing, those those experimenting with pipelines of xml data on. In fact, that was my first.
[38:41] Dot net prototype was to say, you know, basically ran out of funding, so we shipped with what we have.
But then i started and i said, hey, let's, do this for real let's have a riel pipeline of excess lt transforms.
Turns out excess lt is just hitting. Yes, and so that didn't work at all.
But while i was at it, i realized hey, wait a second. Dot net has what?
W my has this common reflection interface. I can do this for dot net and that's that's how it all happened.
So some of this is the birth ofthe this all off this idea of a pipeline transferring objects? Exactly.
Yeah, because what happens? You got these things and then with the excesses lt transformed, turn it into a table.
The next lt transform i turned into a list or a c s v and we did all that is like, wow, i can invest and everything gets more powerful uniformly without their investment.
That's great or their cooperation. And it was new. Did you ever see something? Um, compare arable?
[39:44] I guess this this is really a fresh idea to have a object based pipeline.
Yeah, i've never seen something like that before, no. So the object based name space yes people say oh you know your,
ripped off the idea of the unix unified name space you said no i ripped off apollo's unified names face and i used to work for apollo computers and we had a unified,
object oriented name space now what's the difference in unix they have a unified name space and everything looks like a file.
[40:15] In apollo and in power shell you interact with everything as you interact with a file but what you get is whatever it isthe,
so when i do it durai can navigate cd into the directory and you know thick registry and do it er and then when i get something,
i get the real registry object it has registry up properties et cetera it has registry methods,
it doesn't it's not file,
so it's much more powerful yes it may had that idea,
didn't go as far with it as we have but they had that idea but no the object pipeline that's that was my kind of key contribution that and the adaptive type system adapter types system basically said hey,
degree to which it's dot net that's great but a whole bunch of people are implementing their own type systems within dot dad and i got a d normalize those things.
Objects And Apis
[41:10] There is a short cut to what we currently see the interaction between lennox and windows unix based operating systems you always.
[41:26] Explain that unix is a text based, string based fire based operating system and windows as a p i driven right.
So this is it comes together at this point, right?
This idea of objects and the idea off i am unhappy, i.
[41:45] Um, if we now move to lennox and push power shell to these operating systems, the key concept that had to be implemented is moving forward to objects, right.
So rest a p i stuff like that is super important future that is the intended purpose, right? Yeah.
So basically with frame it is so when we take power, shelly movinto lennox, why would anybody care?
There's a couple different reasons one a week care because we want to have a uniform.
Microsoft builds managing products. And so i want to have a uniform infrastructure to manage everything and turns out a bunch of people have managing products. And so that's a desirable thing.
One mansion infrastructure to manage everything number two is i got a group of.
[42:33] Individuals windows add men's who've learned a technique and now they can manage not just windows but they can use exactly the same skills to manage lennox and now all of a sudden they become more valuable and that's great.
So they become the heroes for their companies and then three for the lenox guys, will you just say, well, hey, you know what, it's?
Just another shell analytics there lots of shelves and you might have a favor one but you know, people change, you know he used to be ever to using bash i was a big seashell user. I love sea shell.
Then everybody was keisha when we started project is all keisha okay, shel k shell and now it's bash but so me shells follow fashion so you know what? This is another shell.
Try it. You might like it now. Hey, we do a great job. The benefit of the power shell is that it's one it's a distributed shell distributed in infrastructure.
And that, too is we really not get out of the park when you get structure data and you deal with a pee eyes.
Well, the story is i like to kind of ripped my my lennox friends a little bit and i saying that day by day, lennox world is becoming more like windows and they hate that like what are you talking about?
You're really violence well because of this architectural difference and in the lenox world more more of its being surfaced as rest ap eyes returning jason objects,
on when you do that we just knock it out of park we do really, really well there and then they're like yeah actually right for example the success ofthe doctor container technology in the clinic space.
[44:02] This is exactly what we talked about it's build upon the idea of having a p i a web service it's built upon the idea ofthe have jason data are structured data that you can easily convert from strings to objects and off course.
[44:18] We might expect that the world moves forward these technologies yeah, of course.
[44:24] So you open source power shall first of all you did what you did is you said power shell is complete,
the food's windows are shell the windows power show the full cia power shell so we're done,
and i will start from scratch and we improve power shell but we're doing this in the first step with subset of technology because we have to focus on dot net corps,
because we need a proper base that burke's on windows works on lennox um,
being at the conference here,
this seems normal for everyone everyone is used.
[45:00] To work with this new concepts,
but it will take some time till all your customers get it right.
Because power shall six. Today is more concept.
It's. An investment in future.
[45:16] You can't actually do proper administration off sharepoint exchange exactly.
We have to move a giant leap towards a future where all these side effects are removed, all the dependencies,
and until we can rely on the core and the core off dot net and the core off power shell, and we will be operating system agnostic how'll i challenge at, though, because you yep that's what people think but that's.
Why i hoped to have dispelled in my key notes of people watch my keynote from the partial european conference two thousand eighteen for your readers.
[45:56] What i showed was a prototype of something we're working on were released in the next couple months called r module and our module basically says, hey, i don't need to wait, i don't need to get sharepoint,
to convert to core in order for me to manage sharepoint using core.
And so the idea is that you imported module, you can import a remote module, and this is just a simplified way to do what people could do for a long time, which is implicit, promoting,
on with cynical mandolins exactly and it's, i think it's conceptually easier for people to get to import a module and you get those access to those command let's, so now the point is you're impartial version six and you can import a module,
that runs in power shall version five, and you can continue to run all the command. Let's.
So i think that that's going to be very popular. And i think more people are going to be able to adopt power shell version sixth and currently think they'll be able to.
I think most people sitting there saying, hey, i gotta wait till, you know, you know.
[46:59] Two years or whatever before and i think they'll find out that no actually one you could do a lot right now to a soon as we get everybody to sign off and get all the sim command let's,
moved over that gets us to like almost nineteen hundred command let's we already know a bunch of windows modules already work like hyper v they did that work a while ago we get more to do that, but i think in pretty short order,
the will hit critical mass and then with this our command to deal with long tail i think people are going to move over pretty quickly but you know, watch that space you know, next year,
i think people will be able to do it before people do it.
So next year this time next year i think you'll say people have tried it our can do it but not everybody's doing that two years from now, i think you'll see, but i've always bad it had gemma rate i'm pretty going to twenty for the record,
nobody accurate it judge and where things will go, i'm not particularly accurate on how long it takes to get there yeah.
[48:03] I always liked the like it when you tell the story that you running around in the Microsoft campus,
the command line guy and then some people talk to you and say, hey, jeffrey the concept of windows if you really get it.
And if we act now, the concept of open source and embracing the linux community.
Him, i'd like to combine that toe one question. And there is a a deep, changing Microsoft inner seeing things right outside ofthe redmond.
[48:36] People and people are ready to embrace other technologies.
People are ready to deliver lennox workloads a lot.
And there are no santi mohs ah people do not reject it, how does that comes that all such an adela?
Because you always talk this way can you tell a few things of ours to be clear that we've always had individuals who've had this flame?
You kept this flame, but the reality is there was not,
institutional or environmental support for it, so a lot of people came and said, like, hey, we got to do this let's do this and met such resistance that they just they laughed, right?
And certainly i thought about that many times so many weeks we've had that there, but the institutional change really came with sasha and really the big thing wass hey.
[49:36] We can be muchmore than we are,
like you guys, you're all happy with things, you're content, we're done very successful, but what you're failing to see is where we could be and where we are going and we we are going is not,
you know, the customers we have, we are going to grow this market and we're going to grow our share, and we're going to help the world by,
getting out of our heads, getting out of our egos, listening to our customers, figuring out what it takes to make them successful and giving it to them, and if we do that, we will grow our business.
We will help people, and we'll grow our business from doing so.
So a lot of people, like, well, what's, that mean, does he really mean it? Sometimes people say these big things, but they don't really mean it.
And then, when there was that picture, such a nadella with the picture, marcus off, hearts, lennox everyone's, like, wait, why? What?
[50:34] My sasha loves lenox. What is that really true?
And then step by step, he has backed up this and then step by step.
Individuals are like, oh, it's really weaken do it um and so this is culminated with this week thie announcement of alfa sphere,
alfa sphere where for the first time, Microsoft is shipping a linux distribution that's, right, marcus off shipping olympics distribution allowed people go crazy over that, but and it's, great it's, huge news, but here's a reality.
[51:07] In nineteen ninety six, Microsoft was the world's largest unix distributor with phoenix.
So it's not that crazy, but, you know, somehow we got ourselves we had an executive that was particularly pugilistic on this point and made some very unfortunate statements and and gained a lot of ill will.
And we've just gotta unwind that, you know, i had a ah report to come out to me and said, oh, you know, this is all whatever you know, come on my show and convince me that you love lennox.
And i said, dude, you know, that framing is not gonna work here.
You know, if you're skeptical, you know, i we know i'm not going convince you with words, the only way i'm going to convince you is with consistent action.
And i think any fair person can look back on the Microsoft as of such an adela, and see that we have been consistent.
We've said, he's set a story, and then we consistently be and executing on that step by step.
Bye step office applications on android and ios on mac os, you know, open sourcing, dot net sequel sequel, running on lenox.
[52:25] And now, finally, is there's just so many points in this thing, and now doing our own lennox thing.
So i think that, you know, my words aren't going to convince anybody but our actions, i think, well.
[52:38] Let's focus on some issues yes toby honest sure not everything is perfect what do you think about people that claim.
[52:48] Technology like desired state configuration this's over engineering this is way too much to do simple tasks.
[52:59] What is the the main point behind desired state configuration it can be a mess it's not an easy one liner to right a conflict decides the configuration but it's off.
[53:12] Huge importance in terms ofthe azur so how can you convince someone that he or she should invest,
in technology like desired state confident i know there is this nice little word that you laugh from the philosophy item portend yeah i guess this all comes together there,
yeah uh let's see so let's break it down.
[53:36] Because there's some things i'm not see so what i think it works well what i think does not work well so first off um.
[53:48] Desserts that configuration really just came out of the observation that um.
[53:55] Let's see which way to go here you go this way so right now there are a lot of people have products to sell that's have this big lab blah blah we invented blah blah blah women it's all nonsense right?
The reality is all these products are all based pun.
[54:13] Lennix unix make right the developer to will make you say i want to make the sex acute herbal it depends upon these things and if they're not,
in the right order, here's howto build us, compile these things, and then those that turns into a set of recursive things.
Oh, in order for those things to be true, they need thes dependencies, etcetera.
And what we all observed was that hate we could take that concept and apply it to systems like, i want the system to be in this condition.
And then i could make in that condition. And then later i can say, make sure it's in that condition and then it recursive lee walked down and find the things that aren't in that condition and then remake them.
Okay, so that's the kind of core concept now, really, you know, you could sort of do this with power shell today.
I mean, this is sort of a bruce is observation was, hey, you know, what we find is that everybody who's configuring systems is using power shall scripts.
The problem is that they're using inconsistent interfaces to do so and that they're not that important.
So you know it's, a simple as hate. Please write your script that has a get a set and a test.
[55:26] And make sure the sad is it important you know it important basically means i can call it over and over and over and over and over again and has the same effect,
s o that's the difference between saying add one is not adam potent so i had one dewan tickets to i'd do it again i get three again forget five so that's not an important sat toe one is it important?
Because i said it to one its values one i'd do it again i'd do it a thousand times it's always one s o that's what you want to do is to write configuration now it turns out that's really hard to dio so that's sort of the heart of it you know that one,
that's just an intrinsic issue and here it actually say that and you just be fair,
it is much harder right it important code on windows than it is lennox,
right on lennox the state is well defined it's easy to units in it in a configuration file for large from most point,
where's windows because we're a p i rented this is one of the benefits of lennox architectures it's easier to write it in port in code and that's why, by the way, while number these tools have done better on lennox then on windows historically.
[56:35] So that's number one number two was so then we said, okay, we'll have this desired state configuration model, and it will be cross platform being cross platform.
We then chose standards, and that was w my and moths.
In reality, those they that was probably a mistake, because, ah, those technologies are great, but they're sort of sunset.
Their day is they're they're best days are behind us, not in front of us.
You know, really. If i had gone with jason and just ignored, you had my own agent.
The problem is, so many people have stepped on the my own agent problem that rake over and over again. So, anyway, i think that was a mistake.
[57:18] Something we're going to fix but that was a mistake but then the second thing is desired steak configuration really is is this as it's expressed through power shell is a platform technology,
and was explicitly designed to be a platform technology,
so specifically as lead architect for windows server i said i got a problem my problem is i got the chef guys,
trying to convince these people to write chef providers and the puppet guys are here trying to convince people to do this,
and then you know, bunch people like that and then they're competing with each other saying, well, hey, i can manage sequel better and well they committed sequel better but i can manage exchange better.
[58:00] And from a platform perspective that was a disaster so what?
I needed it it was to say, hey, everybody listen, we will use and and by the way they could their small companies that could only get some people to play some people they couldn't so that kind of mess from an ecosystem standpoint.
So what i did was i said, hey, we will get everybody to write a common set of providers and then we'll give you infrastructure and you can code it,
so then everybody will be able to manage the same things to the same level and then you go compete on this feature of that feature whatever that was part of that in order to make it worthwhile for the people writing providers,
it has to be value outside those products, and that,
that was the power shell scripting environment.
So that's, the thing i think you mentioned was a little bit too complex, and it iss because it is not a solution like chef and puppet. They really are solutions.
And so what people have done is they've built their own scripting solution on top of that infrastructure and that's pretty complex, and we, to date, have on ly provided a solution in the context of azure configuration management.
But we have that now. When will continue to invest in that, make that a better solution. But we are. We are pretty far behind.
[59:18] If i break this bow, is that a fair breakdown? Do this? Of course, is very detailed if i break it down in my work?
In my words, i'm the desired state configuration we have the dc resource that actually does the job yet,
and we have you and the old age we would have said we have a kind of any file way have the configuration, which is it's always the same it's a common language that you write down, how you want it to be,
is it fair to say that the dc resource is should be provided by the product?
So if i have, ah, certain technology of i'm a software a vendor like vm vera what's however,
i care about the vc resources and the configuration standards are made by Microsoft so thinking about this.
[1:00:11] Today, the dc resources mainly come from the community k and from the power shall team, wouldn't it make more sense,
that the secret guys, the exchange guys they'd should deliver the dsc resource is because they know that product?
Is it fair to say this would be the perfect way?
Yeah, that's, great points, let's now say, um.
[1:00:38] Every year cloud has a silver lining, every silver lining has a cloud, so indeed in the new world, right, such games that, hey, we're going to do things differently and we'll be focused in on the customer.
I want you to focus in on the customer and i'm going to get rid of a lot of bureaucracy for you.
And so we got rid of a lot of bureaucracy, right and stuff that people had to do that really wasn't customer focused, right and that's giving people a lot of agility.
But in the same token, things like the common engineering criteria have fallen away.
And so now each team basically listens to their customers and does you know, i get so many resource is, and i gotta pee maximized the benefit from my customers.
And then i go talk to these different group talks to a different set of customers, and they do the same thing.
[1:01:26] So what this means is that the roll of you consistent architecture is decreasing in this world on daz.
You know, i come and i say, hey, you should write this desired state configuration. They said, well, you know what? I just talked to one hundred customers, and none of them told me i should write a desire to take configuration for them. I said, yeah, but,
They need that well if they needed it they would have told me and you know, we're here focused in on my customers not making you happy so i'm going to do this,
and so that's that's ah bit of the mess here world and you'll see that a lot of things like the the azure sea lie right,
away saying that doesn't follow the naming standards etcetera that's exactly what happened hey, we need teo we have an urgent need,
to go deliver a command line interface toe lennox it's psycho but i'm working on that was like yeah you baby you're going to deliver it i need it now,
and so they went and did their own thing built it on python some people overinterpret that like oh it's a shift a python it is not a shift a python,
it is this team talk to those customers who were not going to use azure because or we're not using azure because they couldn't.
[1:02:40] Have a good bash experience to manage it at so they said,
man, we cannot have that we're solving this problem now jeffrey, you know best of luck but we're now waiting for you and so they went and built something and they tailored it for the bash community,
so that's a bit of a mass but here's the reality okay, fine, we're also going to get,
power shall command let's there. That's, actually very good team.
This one isn't as bad as an example of some of the other one, so you'll have both environments.
But even if you didn't even think they just had the azure ese command let's, you can invoke those from power shell, and you can put, ah, power shell mean power. She'll really was meant.
Was this something i brought to the table, i said, eh, the world has been the world, is the world always will be a messy place, and the goal of power shell is to be able to deal with that mass to provide a consistent experience.
You know, high level, task oriented, you know, verb, dash, non experience across lots of things, and yet it would be best if the people you know, providing stuff, did it, but as long as it gets done,
that's, that's. What, what that's what's needed.
[1:03:52] Yeah we're almost approaching a full circle if you mention the verb dash noun,
idea if we go back to your monitor manifesto the first approach was to use regular commands so the thing worked ash not noun came later.
[1:04:14] Well actually was known a noun slash ferb to begin with because i was being d c l v m s d c l compliant okay are compatible yeah who had that idea because me okay,
what i want to focus on this today we have a couple off.
[1:04:31] A couple off elements let me say like that you mentioned one juicy ally another good example is dr dot taxi,
we're heading towards a world where we more and more do not use command let's because we have something else that is better in this case so i would i would say dr dot xy is better than the,
not even complete command let's,
would you care if we approach point in time that people more and more use.
[1:05:10] Those sophisticated tools?
[1:05:14] Do you really care about the idea off the command lit.
[1:05:19] Or what is the most important thing is the command lit the idea off this easy to use birding and stuff like that is that an integrated must have for the philosophy of power shell,
would it hurt you? Do you get what i mean?
I don't think we're talking about so at the end of day you think about the user and think about what they need to dio and then what they say they're going to be a successful at.
And so you're saying there, let's, just say, you learn docker, and he figured out that.
And now you want to go manage a desk that help you, okay, ese seal. I did help you with a z seelye today, zeal, seal. I help you with soccer.
Do any of these when cuban, how about cute couple did help you a cute couple.
[1:06:12] What is dash? L mean in asia feeling what's that mean in cuba? Cuddle etcetera, right.
So so when you say like if your whole world is doctor like i do nothing but dr metaphysically impossible than then.
Oh, yes, it's optimized for that?
I'm not sure that's true, but let's say it is like, oh, that is a great experience for that uh oh, well, all i do is cute couple it's optimized for that.
But as soon as you say, well, actually i got to do this and this and this and this then you have the choice of oh, i see why this is good, right?
The point about power shell is if you learn exchange and then you're responsible for sequel guess what?
You know how to make a sequel get you get command, get dash star oh, here all announce oh, i get it i get man slash, you know slash what if you know, etcetera?
So the point was that you can guess.
And by the way, which of those which of those things support? What if confirm, right?
Yeah, of course. So i think that the the your power show really is focused in on the user experience now here's thing either adds valuer, doesn't full stop and and it does not require those.
[1:07:35] Providers to deliver that experience.
I mean, it be great if it did the optimal thing.
But the reality is if it adds value, the community will provide that layer, and then you'll have that experience.
So at the end of the day, i just believe in in in truth and physics, right?
You know, if the physics is right, the right things gonna happen.
I'm sorry. I have empowered the community. I have empowered the ecosystem in the community, tohave as coherent or as messed up as environment as makes sense for them.
If it makes sense, you just another shell. Hey, i can tie together this cinco here, innit?
Experience with that. And coherence varies with attic in clearance experience.
You can do that with a shell. That's. What shells? D'oh.
Or you can say, hey, i'm going to take the cinco here and experience and transform it into a common one, and then do it here and then do it here.
And then i'm just going to deal with a coherent experience on top of all of those, either model works.
[1:08:36] And both miles to summarize it it is very important when away and when i started classroom when i do a lot of teaching and.
[1:08:45] I really liked to teach beginners and i d o ask people on day one how many come home medical man's do you use ping khan fix stuff like that,
and it's pretty clear it's always the same that people really do use five commands maybe ten that sophisticated people maybe twenty,
but all over seven you have a power sheldon you have thousands off commands so and this,
qualified kind of guessing this is what what makes the difference right off course this is not in urgency ally this is not in dhaka dhaka taxi this is not in all the stuff that is,
explicitly one command and that's it it might be as sophisticated as this so.
[1:09:35] Thinking about that we have a ton off come on let's go,
and there are naming issues is that time bomb,
if you think about it for example new v m yeah this is an i p v this is also in v m there should you have done,
a better job enforcing that people stick to the guidelines with the prefix or what's the solution if we get more and more power shell command let's and we have overlap,
off name okay, so funny should ask that question so in of having a similar issue in as your stack different but similar in the sense of.
[1:10:14] What i told the team, he said it was because we're delivering an appliance experience with azure stack and i said, hey, i want you to observe something.
Any time we have not been ah, hard ass on a particular topic. We regretted it, and our customers have been hurt by it.
So i think finding that balance between being open, letting people do whatever they want and being a hard ass is right.
And i think that, ah, we should have been a hard ass, like we didn't do a naming,
enforcement are naming checking until version to why, because as hardcore as we were, like super hard core here, the verbs, here's, the knowns that it had a,
for some reason citrix believe that citrix was a verb and only just like you just couldn't make this stuff up.
And we saw that it's like, okay, stop.
We need toe fix this, and so then we started enforced that we didn't do anything around prefixes, and i probably should have.
I should have probably required that.
[1:11:20] Yeah, very interesting and like i hate the azure r m prefects yeah,
too long but they're going to fix that make it easy no two to four characters and i don't know it's one of those things here's i think one of the heart problems that i have that the unit's community doesn't,
use community from its get go has been commanded an interface right start off with the tt well hi everything's done on the command line interface,
everybody in that world gets,
they experience because they used the experience in my world that's not the case right?
A lot of people who are writing command let's there they don't like right then like command they click next click next click next because that's what they grew up in and therefore they didn't understand the fos,
and therefore didn't understand the make a good set of design decisions and that's why i think you're right i should have been harder core and say i'm not going to give you a set of freedom.
[1:12:16] Talking about issues one thing more greased layer on top of the command yeah that's the one quote i always use,
there are so a few examples where that works on active directory administrative center and citrix far shamble but the list is so long.
[1:12:37] But this does not work middle is the newly released capability off creating a global transcript on the computer?
Is that the answer from the power show team. Because if you enable the the transcription of everything that's going on, this is not well readable for the for the average guy. Correct. So.
[1:13:02] Do you confirm that we need more simplicity?
We need better tools we need more gui tools that really show up this is what done behind the scenes so there's design principle is not yet reached.
Yeah that's right? I think that's one there i'd say one of the biggest regrets is that that we have made much progress in a couple different directions.
One is the ability to write gu ys in power shell had been a number of like, you know, efforts had never really got off the ground.
And honestly, part of that is that, um the whole user interface space is is kind of turning itself right so there's w p f and no, then there was going to be mostly one,
our big thing for silver silver light right forms for so relied the uvf then you you universal window eyes just kind of spinning,
so you know so that's part of the problem um and then.
[1:14:10] That's a large part of the problem and then the layer and gu ys on top of command lines where that's where it's done it's worked out pretty well but it's not done very often.
And then when it's done, they don't always show the command line like the new windows with project honolulu windows admin center that's all web based off layered on top of power shell using g it just enough admin.
So i'm over the moon over this, like, yes, this is the right thing to do, but they don't show the command.
They said, that's, common. But and more of the nice thing is that they're, ah, they ship with windows, not in windows, so they can update pretty frequently.
[1:14:50] Yeah, that it hurts, right?
It does. You see that i got one more, and maybe in my career off over the last years it really hurt me more or less physically, no, no, nano sever.
[1:15:08] Oh, yeah, um, and birth and death within elf months and you might say, no, no, no, no it's, not that, but.
[1:15:19] You always tell us on guy totally apply to this.
We have to get rid off the grease on the servers and let's, be honest.
So the core is not what people expect to use, so nano might be the right step towards because you get a huge benefit in terms of security and simplicity and stuff like that.
And now we were told, okay, just right now, it's only containers and to summarize this all, how important is it to get rid off the grease on the servers?
Would you predict something about the future ofthe nano server as the general approach for delivering workloads beyond containers?
[1:16:07] Because if you combine this with desire state configuration and it makes a ton of sense yeah, let's see?
So when i was the lead architect of windows server, that was something that i was driving quite heavily and now i'm no longer the league architect of windows server i'm now focused in on azure,
and so as part of that change, you know, we unified the the the,
ah, the client in the server teams and that combined team looked at this area and they said, hey, we think containers are sorry nana, service simultaneously sort of too large and too small,
to large in the sense of containers we wanted to be a smallest possible in this whole bunch of stuff that we don't need, and they've done it very good job there of continuing to reduce the size of nano server,
and then to look too small in the sense of for the goal of running physical servers.
[1:17:07] Thie ecosystem required a set of diagnostics, a critical mass of diagnostics that had dependencies that were not satisfied by nano server,
and their judgment wass that instead of going to fight that fight, uh go do the heavy lifting to get that ecosystem that instead that they would focus nano server on containers,
so that was their call um,
you know, history will see whether that was the right call or not.
[1:17:40] If Microsoft turns into a more and more also lennox focus company, this is there is a nuance there.
Let me let me go back. Because i'm not sure i gave them a fair, uh, standing in that if you recall.
In the past, we would say, um.
[1:18:00] We release an operating system and then um,
here's a bunch of patches so this month there are fourteen patches this month there twenty four patches this month there's thirty six patches,
and one of the hypotheses wass well hey whenever you patch these things some of those things require you to do a re boot right and so the idea was hate if i reduce the service area,
then it gets small enough because by way some of the things that patch the most of these,
[1:18:31] Then instead of so many patches i have fewer patches and i might might be able to reduce the number of times i need to do a reboot because,
but in reality we've gone away from that and there's basically one patch a month yeah so waiters at the service yeah exactly so,
you know that's that's one argument for it doesn't the hypothesis sort of broke yeah right yet,
but i will still point out that a there's those air patch is for a reason and the reason was they exposed a surface area and if you're not if you use in the surface area you should incur all the cost necessary like that's just the deal but if you're not using that service area,
you really shouldn't and i think from a security standpoint we really do need the smallest possible surface area,
and i guess the technology needs a reboot to get rid of all the crap yeah, it's beyond over the air, fresh, it refused refresh that such is term for what he's doing with the company.
That's. The term we use with respect to power shall version six.
The question is, i was, i was trying to do a hit refresh on on the o s, and the answer is, yes, we're going to do it in the four applications in containers, but we're not currently unpacked the hit refresh for physical servers.
Yeah, i think that's a good way to free. Yeah, i i see. Well, i think we see our target destination. Now.
What i wanted to ask was.
[1:20:00] If we believe in Microsoft embracing other technologies for most harm lennox, and you get more and more workloads done in terms ofthe asia, it makes a ton off sense.
You said that fabulous quote, that you are glad for one hundred, customers by one hundred limits machines instead ofthe one customer by one windows machine.
It makes it on of sands, would you could you retire as a lucky man?
If you somehow are is part of an evolution where windows became unimportant, but power shall survived as the,
um, the top layer off Automation do you really care more about on the line off a rating system, or do you care more about the ap?
I how do we manage our workloads?
Good question, um, well, first, i'd say that a couple things um,
at some point we had ah, dinner with a bunch of ibm executives are execs had dinner with the ibm xx, and the ibm execs said, hey, you know, Microsoft you could be a hundred year old ibm,
is a hundred year old technology company, and you could do that, too, but what you're going to need to learn is that you can't cling.
[1:21:23] You can't cling to any technology if we clung toe punch cards, we would not be a hundred year old,
technology, so would you have to do is you have to pin your your corporate, eh, throws around, meeting customers needs and taking that wherever it does, and so that leads you away from punch cards.
You got to go away from punchcards, no matter how much money it made, you know how much how much identity you had wrapped up in that so basically, you know, i think that's, what you're saying is we're going toe,
lead our technology base where our customers takes it, where it needs to go on, and so, you know,
by definition, that means a reduced importance of windows within Microsoft because now we care about any environment,
on then, you know, twenty years from now, you know, where is the role of windows?
I don't know you don't how punch cards did not fare well, but i think operating systems do a little bit better now in terms of me personally, you know, it's always what things did you?
I mean, i i was lead architect for windows server for many years, but i didn't invent windows server, you know, power shell has sort of got that invention, so you might my ego.
I try and keep my ego separated from technology.
And the answer is, i failed. When it comes to power shelf, you know, yeah, i do feel a sense of pride in it.
[1:22:47] They're so super interesting, uh, to hear this, that the inner details, and it gives you a lot of thoughts about the future, what's that all about.
[1:22:59] And i have two little topics on my my sheet of paper where we can finalize that.
Okay, on the first thing is that one ofthe this off the door, ripple quotes, and i know a lot of things that you said, and i really like this, and quote that over over again, you said once it was in two thousand seven, i guess.
[1:23:21] The power shell is the renaissance of the command line.
Yeah, i really like that because i ask my students what? Jeffrey? What does he mean?
Does he mean the renaissance off? Emma's dawes was this's talking about talking about unix?
What did you mean as too sad? The renaissance or the command line? What was the first thing that you come back with? Power shell?
Was it the idea of unix?
Well, actually, uh, before i answer that, i'll say that it's one of the reasons why i'm actually pretty friendly to things like azure sea ally and there's, some other kind of, like random.
[1:24:00] Ah, see allies that margaret sobs doing and look at him and one level having free, frustrated that they're not following the standard that not playing in making a little bit harder for customers,
but i am very enthusiastic about they do they are participating this renaissance of the c l i like, hey, these guys have finally figured out that the seal is important now they're implementing it wrong.
They everything that you know that they're doing, but they finally figured it out, and basically what happened was that there would been this like,
oh, well, the inevitable progress of of computing is to replace this command line interface with the gooey, and the answer is boy, that was a bad idea.
It is a fantastic idea when it's your machine that you're messing with but when you're trying to manage a data center, my friend that goo is not your friend, you know?
And when you want to do something like let's, be clear, i mean, there's a phrase that i use that i really like because it puts the thing in perspective.
[1:25:00] Azure. The goal of azure is to provide a planetary scale compute infrastructure, right?
We have over fifty regions throughout the world going to an individual machine and, you know, with a gooey click click hello planet just mean, clearly is not gonna work.
And so basically the renaissance wass no, what we thought was with lumber people had assumed was a dead technology is not at all a dead technology.
It is a vibrant technology. It is the critical technology for something people didn't figure out.
I mean, that was those i think mikey contribution was i came in and realized what success looked like, and a bunch of people didn't realise what success looked like.
They were so busy feeling great about having want a server sail over the other guy, they didn't realize that, hey, when you're successful there's going to be thousands and tens of thousands and hundreds of thousands and you need to do something different.
[1:26:07] Yeah. That's. Um, i guess, uh, this is full soaking. All right, geoffrey, i really do appreciate that you to your time.
Did we forget anything? Is there anything important that we skipped that we cut all the big bullet points in terms ofthe understanding the past to design the future?
Yeah. I mean, the only thing i'd say is you're a number of people have talked about how it was difficult.
Oh, toe move away from the click next. You know that instant dopamine rush like a click next. I got this, you know, i push this button, i got a peanut. I'm a happy little monkey to saying ho, wait, i gotta stop. I gotta get a idea.
Eee i gotta learn the syntax and that uh uh and so there's this dip in productivity's e but then all of a sudden it's like fun, right?
Anyway, so my point is that i think that the people have done it er and go through the period of discomfort.
Say that is my big lesson are big lesson personally that i'm still struggling with and the thing i try and conveyed everyone is that this comfort is the new normal, right, so you got to get out of your comfort zone.
You learned these technologies but guess what when you win these technology is going to be very very powerful but you're not going to feel more comfortable because those new technologies they're going to lead you to the ability to solve this problem.
[1:27:32] But you know i have solved that problem so then you're gonna feel uncomfortable but then you'll solve it,
but then that's going to lead you to the next one and the point is that each stage you're going to be uncomfortable but that's okay, what you're doing is you're being discussed uncomfortable at higher and higher levels of product teddy,
and then you're going to be rewarded you have larger and larger effects and you're rewarded mohr and more and more i there's something odd about when people tell me about their success stories,
there's something about triple the salary like the number of people have told me that they've tripled their salaries,
is really quite large now i assume that meant that they were starting people learned power shell and then moved up pretty quickly,
but never never for x three acts but within years yeah anyway so i think that it really does,
you know there is discomfort, but if you're not uncomfortable you're probably not doing the right thing if you look at the amount of transition that's going on in amount of innovation that's going on,
if you're not constantly uncomfortable, you should be uncomfortable about that.
[1:28:38] You made i can confess you made my professional life much and mohr enjoyable so jeffrey i do thank you.
Thank you for your time thank you for what you've done in terms of power shell but i guess it's maybe the most important thing is that you you're really on a mission.
You really want to embrace people and explain these ideas and it's absolutely.
[1:29:08] Easy to believe this is a benefit for my personal life and this's i guess this is ah um maybe this is at the end of the story.
Ah, the biggest chief how excellent. Thanks so think we shared it.
[1:29:45] Epi lok i met jeffrey a couple of times over the course of the last years.
[1:29:51] I have my fifteen minutes of fame when i deliver to talk about all the things i strongly dislike in power shell in twenty sixteen the number one celebrity in my audience back then was jeffrey you might imagine that that was very special to me.
[1:30:05] I reached out to him a few weeks before the twenty eighteen european power shall conference and ask for this interview and he responded immediately yeah let's do it.
[1:30:16] But when we met in person it was pretty hard to find a suitable time slot the simple reason wass he didn't wanna miss a single session at the conference literally,
so we searched the again the step by step until we gladly found a session delivered by one of the power shift team members that he was willing to skip because he already had heard it before.
[1:30:39] I guess this little story is very telling about geoffrey's, nature, passion and openness, and i thought it shouldn't be untold.
[1:31:05] And so he took me over to me. Jeffrey and jeffrey was showing me the first thing that, uh, jeffrey asked me was.
[1:31:11] Do you do you know anything about gottfried von lateness?
I said, yeah, gold into philosophy courses. Of course, i did he's, a great we'll get together just fine, and they started showing me the shell and talking about it. In the concept of the context of the mon ideology.
This is freaking brilliant like this is so awesome.
Um, i was i was i was completely blown away by the thing, and absolutely sure it would work.