
Mark Russinovich, Microsoft Critic, Is Now Building Azure - omnibrain
http://www.wired.com/2014/05/mark-russinovich/
======
AaronFriel
There are a handful of people worth watching at Microsoft conferences - no
matter what they're doing. My list is:

* Anders Hejlsberg

* Mark Russinovich

* Scott Hanselman

They have the clout and the job security to speak their mind - and they do.
They all work on neat projects and are interested in talking about the
internals. I saw Mark at Build this year and his talk was about the "fails" of
Azure. It was an honest breakdown of how they've had failures that have taken
down customers, taken down Microsoft services, and hurt the reputation of
Azure.

I've followed Mark's blog since before he became a Technical Fellow at
Microsoft, and he deserved it, no doubt. Very few people could write or speak
with such precision about the internals of Microsoft kit. His interviews on
Channel9 are all fascinating, before Azure he did work on the NT Kernel (and
who knows what else) and he spoke candidly about dealing with issues scaling
up the operating system. He has given interviews solely about removing global
locks from the kernel, because that's his domain and he's good at it. If that
reminded me of anyone else, it would be Linus Torvalds and his intimate
knowledge of the Linux kernel.

~~~
gavinpc
> Very few people could write or speak with such precision about the internals
> of Microsoft kit

Indeed, he "wrote the book" on it, which is apparently freely available as PDF
now [1].

As someone who knows nothing about OS's, I picked up a cheap copy out of
curiosity, and found it highly readable and enlightening (until it got rained
on somewhere around chapter 10).

 _EDIT_ : Do you have a link to the "fails" talk? I've been using Azure for
the last few months and have been extremely impressed so far.

[1]
[https://www.google.com/#q=windows+internals+russinovich+pdf](https://www.google.com/#q=windows+internals+russinovich+pdf)

~~~
jspaur
[http://channel9.msdn.com/Events/Build/2014/3-615](http://channel9.msdn.com/Events/Build/2014/3-615)

------
Touche
> “I ranted at some of the architects when I was at Microsoft. They were
> constraining the sorts of things you could do,” Brown told us in 2012.
> “Microsoft likes to do a really big up-front design, where they define the
> physics of a new universe. They birth this new universe, and they say: ‘This
> is how you do it’–instead of starting out with something simple and letting
> people show them how it should be done.”

I really hope this advice is taken by others, particularly the Windows team.
Powershell is a golden example of this. Great idea, piping around objects
instead of text, but wait, they must be .NET objects. So the entirety of the
language community cannot participate other than Microsoft languages.

I'm hoping they revitalize the command line taking this advice, start with
something simple and let others build on top of it.

~~~
ygra
PowerShell also plays nicely with COM and WMI. It's not all .NET objects you
interact with. (Well, technically it is, due to PSObjects wrapping everything,
but that's another matter.)

How would you do it, though? Pipe around JSON or XML? Then you just have data
structures, but not objects. They can't have methods and if they could, what
language would they be written in?

~~~
Touche
I don't think we can design this in HN comments... all I'm saying is that it
should have been a Day 1 requirement that it is low-level enough to work with
any modern widely-used programming language, on a first-class basis.

That's what the comment I quoted is saying, Microsoft likes to do big up-front
designs that restrict their platform to uses that they have already thought
about.

~~~
brudgers
I'm having trouble understanding what is needed. The 'shell' in PowerShell is
an interface to an operating system interface, .NET. While Microsoft's
implementations of C#, &rest can call PowerShell scripts and cmdlets, it's a
bit kludgey compared to calling the API directly. Other than effort, there is
nothing preventing creation of a library with equivalent function in any
language, and the effort is what killed IronRuby and IronPython as
continuously developed projects...and they didn't use powershell.

Can you provide an example?

~~~
Touche
You can write cmdlets in C# and VB, not just call Powershell cmdlets/scripts.
You should be able to write cmdlets in Ruby, or Node.js or Brainfuck.

~~~
brudgers
OK, I get what you want. My understanding is that the reason you can write a
cmdlet in C# is because C# provides a facility to return .NET objects [more or
less] and that's only in so far as it interops with the .NET API.

Ruby implementations will tend to return a byte stream rather than a value a
value against the .NET API. Even if Microsoft provided another API on top of
the .NET API, the same situation would exist because Ruby implementations
usually don't write to that API by default. It's turtles all the way down on
the .NET side.

Programming .NET in Ruby requires writing to the .NET interface from the Ruby
program. If one wants to program to the .NET interface through Powershell from
Ruby, a Ruby program can always output text that can be interpreted as a
Powershell script. One way or another, the responsibility is on the program to
write to an API.

What would be the output of a Brainfuck program that should operate as a
PowerShell cmdlet? Would it ever be more than text which can be interpreted as
a PowerShell command or script?

~~~
Touche
You're entirely missing my point. Powershell shouldn't have been written to
require .NET. Full-stop. That's a deal-breaker and highlights the quote I
original referenced. Stop building high-level stuff on top of other high-level
stuff where it's uses are restricted to only a small subset of _potential_
developers.

------
ryanackley
I feel like this article mischaracterizes sysinternals as something of a
Microsoft critic and watchdog which just wasn't the case. They were more like
a valued and vital member of the Microsoft ecosystem.

If you did development on a Windows machine in the last 20 years, you probably
downloaded a sysinternals tool at one point. Many Microsoft KB articles
pointed to their tools and articles and when Microsoft announced their
acquisition, most people were like "That makes sense".

~~~
weinzierl
I completely agree but I can at least image where the critic characterization
comes from. Mark's articles and the Sysinternals tools gave us wonderful
insight many parts of Windows. They showed the good things but often times
they also pointed out the flaws.

I think Mark is just honest about the technical aspects of Windows and
thankfully his attitude has not changed since Microsoft pays his checks.

One example of this are his videos about Windows Memory Memory management
(from 2011, hosted on MSDN)[1], which besides being a detailed technical
explanation don't skip all the shortcomings of Windows' memory subsytem.
Sometimes his statements seem harsh but I think it's more sincerity and he has
been as sincere about his own tools as well[2].

[1]
[http://channel9.msdn.com/Events/TechEd/NorthAmerica/2011/WCL...](http://channel9.msdn.com/Events/TechEd/NorthAmerica/2011/WCL405)

[2]
[http://blogs.technet.com/b/markrussinovich/archive/2009/11/0...](http://blogs.technet.com/b/markrussinovich/archive/2009/11/03/3291024.aspx)

------
GFischer
Mark Russinovich is the author of the Sysinternals tools, which have long been
essential utilities for troubleshooting Microsoft environments.

His blog has some pretty good reads for anyone that wants an in-depth view of
Microsoft products:

[http://blogs.technet.com/b/markrussinovich/](http://blogs.technet.com/b/markrussinovich/)

~~~
moonlighter
Every time I set up a new dev system, literally the 2nd thing after installing
Windows was installing all the Sysinternals tools. I've since moved on to OS X
as my main dev system, but even my VM's Windows all have the Sysinternals
tools installed.

------
stpe
For background, this is Mark Russinovich's original blog post from 2006 about
Microsoft acquisition of Sysinternals/Winternals.

[http://blogs.technet.com/b/markrussinovich/archive/2006/07/1...](http://blogs.technet.com/b/markrussinovich/archive/2006/07/18/on-
my-way-to-microsoft.aspx)

"I’m joining Microsoft as a technical fellow in the Platform and Services
Division, which is the division that includes the Core Operating Systems
Division, Windows Client and Windows Live, and Windows Server and Tools. I’ll
therefore be working on challenging projects that span the entire Windows
product line and directly influence subsequent generations of the most
important operating system on the planet. From security to virtualization to
performance to a more manageable application model, there’s no end of
interesting areas to explore and innovate."

------
weinzierl
If I remember correctly then Mark Russinovich is an Azure architect since at
least 2011 and I think he had a leading role even back then. He is with
Microsoft since when Sysinternals was bought in 2006.

A little off topic, but if you ever wondered what all those numbers shown by
Task Manager really mean, Mark did a video[1] that really explains it well.

[1]
[http://channel9.msdn.com/Events/TechEd/NorthAmerica/2011/WCL...](http://channel9.msdn.com/Events/TechEd/NorthAmerica/2011/WCL405)

------
kubov
I recommend watching "Case of the unexplained". Mark is showing practical
examples of using sysinternals tools, it really gives a glimpse of how skilled
he is.

[http://technet.microsoft.com/en-
us/sysinternals/bb963887.asp...](http://technet.microsoft.com/en-
us/sysinternals/bb963887.aspx)

~~~
edsykes
It's well worth the time to go and watch these. It teaches you all kinds of
things about how windows works

------
akandiah
I really like him for his contribution towards creating the Sysinternals set
of utilities. I'm surprised that Windows doesn't include them by default
nowadays.

~~~
jameshart
The sysinternals tools are always available on a webdav-enabled share on
live.sysinternals.com. Just run pushd \\\live.sysinternals.com from a command
prompt, and then run any of the sysinternals tools without any kind of
installation - or, I guess, security or validation of the executable. YMMV.

~~~
EvanAnderson
Validation is provided by Authenticode signatures embedded in the EXEs
themselves.

~~~
yuhong
What is interesting is that the kernel mode drivers buried inside procexp is
still signed using sysinternals not MS certificates, sometimes with no
timestamp!

------
timthorn
> Cloud computing was invented by Amazon

That's a bit of a journalistic stretch.

~~~
Nursie
I don't know....

The S3 stuff was kicked off in the late 90s and everyone just kinda-sorta said
why? But it seems to have been the first modern cloud-type service.

Now, I personally hate the term "Cloud" because it's pretty meaningless, and
you can look back throughout the entire history of computing and find examples
of distributed, remote storage, compute power etc etc.

But if we're going to call anything "Cloud" in the sense we try to use it now,
then I reckon Amazon were first to market by a mile.

~~~
a-priori
“If computers of the kind I have advocated become the computers of the future,
then computing may someday be organized as a public utility just as the
telephone system is a public utility... The computer utility could become the
basis of a new and important industry.”

— John McCarthy, speaking at the MIT Centennial in 1961

(As quoted at
[http://en.wikipedia.org/wiki/Utility_computing](http://en.wikipedia.org/wiki/Utility_computing))

~~~
hga
Although that was no doubt in part due to the extreme expense of computers
then. He said that 4 years before Moore published his famous Moore's Law,
which many refused to believe for decades, in a period when computers were
transitioning from vaccume tubes to transitors, which cost many hundreds of
dollars when adjusted for inflation, and probably still when they were shipped
with serial numbers. And of course memory was still made by hand out of
magnetic cores.

Multics was the result of this vision of McCarty and others at MIT, hence its
strong focus on security.

------
lnanek2
I definitely found Sysinternals useful, and I was impressed when I saw Azure
with easy to run Linux images way back when. I didn't realize they are
becoming a better player. Props to them for hiring the guy.

~~~
dspillett
_> Props to them for hiring the guy._

They hired him (effectively) quite some years ago when they bought
sysinternals (2007 or there abouts IIRC).

Props to them for neither neutering him nor making him leave though, either of
which is common with a buy-out that includes a critic. A _good_ critic can be
a powerful resource for reflection and positive change.

------
jessriedel
I could use a summary.

(New idea for facebook: allow users to submit abstracts/summaries of articles,
and show me the one written by someone least removed from me by friendships.)

~~~
jerf
Politely asking for one on HN ought to do the trick, I hope.

(I'd suggest not downmodding this, folks. Politely asking for a summary is
nice, as is providing one, and let's not discourage it. It's not the same as
just squirting out a "TL:DR?".)

~~~
jessriedel
Yea, I don't really get why folks have a problem with asking for a summary. As
gedrap said, most writing on sites like Wired is 90% fluff, and I don't
understand why we all should be reading through that to see if the core 10% is
worthwhile. There's a reason journal articles have abstracts.

So maybe I'll just start asking for an "abstract" in the future, since that
sounds fancier.

------
Zigurd
Without an attractive, desirable suite of cloud services, their endpoint
devices and OSs are going nowhere.

WITH world-class cloud services, Microsoft could derive revenue from Apple and
Android users.

It appears that Microsoft's biggest problem was egos. People wanted to "leave
their mark" rather than play to strengths and achieve the possible. Microsoft
could readily be 3X bigger if they focus on what they are good at and on the
customers most likely to welcome Microsoft products.

~~~
benjaminpv
>People wanted to "leave their mark"

TBF this had a lot to do with the stack-ranking MS was famous for. When you've
got to justify your job every year making a name for yourself is mandatory.

~~~
cheez
So what is their new method of measuring performance?

~~~
Zigurd
I think what benjaminpv is getting at is that a system like stacked ranking
drives people within an organization to build fiefdoms of their own creation,
where they are permanently on top. That way you don't get reorged into some
group with established cliques and you end up on the bottom of the stack.

------
pdknsk
> So he’s now working to merge the platform service and the infrastructure
> service, giving people the power to run any software while still ensuring
> this software operates in an automatic way. “We want to blend the two
> worlds,” he says.

That sounds very much like App Engine Managed VMs.

[https://developers.google.com/cloud/managed-
vms](https://developers.google.com/cloud/managed-vms)

------
krmmalik
I don't know how closely Nadella and Russinovich are working, but all being
well this could be the start of a new collaboration and wave of dominance not
much unlike the Jobs-Ive duo. For new product development that is, not for
aesthetic design or hardware brilliance.

I had been following Mark for quite some time in the early 2000s and was a big
fan of his tools but hadn't seen him speak or anything like that. He then did
talk on work he was going for the next Microsoft OS, which at the time was
Windows 7. His talk was easily the best talk that day. He was confident, knew
his subject and was passionate about what he was doing. No one else that day
was as authentic and enthusiastic as he was. I'm not sure how many people in
that particular audience recognised his drive and talent though.

I'm glad to see him written up about and if he's a big part of driving
Microsoft into the future, then Microsoft could very well become exciting and
relevant again.

------
dang
Can anyone please suggest a more neutral, less baity title?

Edit: No takers? Ok, I'll try to come up with one.

------
bashmohandes
As someone who worked for Microsoft for years (left few years back), everybody
in Microsoft criticize Microsoft, there is no red lines to cross. The bad
things usually come from the fanboys of Microsoft inside Microsoft, especially
if one of them is guarding a pretty strategic area, and the good thing is,
these people have been leaving (or asked to leave) for quite some time now,
the likes of Steve Ballmer & Sinofsky, while other super geeks like Satya
Nadella, Scott Guthrie, Qi Lu are taking over.

------
euroclydon
I find it strange that Wired would spend several paragraphs describing
standard software licensing practices as a "fraud".

------
ed_blackburn
Interested to read the comments about IaaS and re-visiting PaaS. I expect PaaS
services to be the differentiator that make people ship their new open source
.NET vNext stack to Azure / Microsoft servers as opposed to alternative clouds
/ hosts. Seamless scaling of web servers, persistence stores, monitoring,
analytics etc...

------
ww520
He's a very smart man, a true hacker in the technical sense. His set of free
tools revealed amazing details about Windows internal. Those have helped me
tremendously back in the days when I work on Windows kernel internals as an
outsider. Thanks to Mark.

------
mh_yam
It was interesting to find out who the people behind Sysinternals were.

The article, though, has an embarrassing number of typos...

------
curiousDog
He also auctions rides in his Ferrari 458 for charity!

------
wnevets
his Sysinternals stuff was pretty solid.

------
malkia
procmon/procexp are my power-tools. Thank you Mr.Russinovich.

------
mgleason_3
Cleverest?

------
616c
Well, those Sysinternals tools were open source before MSFT acquired them.

If you want to see the magic before MSFT force it behind the wall, here you
go.

[https://code.google.com/p/akeo/downloads/detail?name=sysinte...](https://code.google.com/p/akeo/downloads/detail?name=sysinternals_site_rip.7z.torrent)

And fuck you, Microsoft, and long live Russinovich. Could not have done
without them in sysadmin work, open or closed.

~~~
yuhong
This reminds me of how michkap had access to Jet source code and was able to
get permission to release the TSI utiliities.

