Live data from Hacker News

Jeffrey Snower was originally demoted over PowerShell

twitter.com

111–120 of 153 posts

Re: Jeffrey Snower was originally demoted over PowerShell

#111

This is an intriguing peek into some upper echelon MS politics. He notes he got busted down from L69 to L68 - L68 is a significant cutoff inside MS, titled “Partner”. L70 is “Distinguished Engineer”. For recent years, L68 all-in comp is probably right around $1mm a year, although I’m sure that was a bit lower when PowerShell was being written, and much higher in toto if you held on to your RSUs. What surprises me is…

> For recent years, L68 all-in comp is probably right around $1mm a year,

This is in stark contrast of how people below 67 got paid. Their packages have been visibly smaller than those of similar roles in FANNG-like companies. I think this is because resources will concentrate to the top as a company becomes bigger and older most likely because visibility disappears quickly among lower ranks and what they do individually hardly matters. If the theory is correct, the natural conclusion is that one should really seek a career in a fast-growing company unless they are great at navigating a big co's dynamics.

Re: Jeffrey Snower was originally demoted over PowerShell

#112
post #9

Question for the PowerShell afficionados: Do you consider PowerShell to be "something we can count on to exist on Windows systems, in the absence of Bourne-like shells" - or is it "a superior alternative to Bourne shells which only got traction on Windows because Bourne is too deeply embedded in the Unix world"?

the latter, though I may have some Stockholm syndrome. killer features: * objects are streamed, not text. I look upon sed and awk and their ilk as stone knives and bear skins. why not just dot into fields? * first-class interaction with libraries. I can import managed DLLs and call their methods. I don't have to build weird little one-off tools or expose porcelain. I can get at everything, it's profoundly hackable in…

I love the idea of PowerShell, especially as scripts become more complex, having something closer to a “real” language and with decent debugger support is great.

However it’s just unintuitive enough, with enough sharp corners, to be a real pain. I find if I haven’t used it for more than a couple weeks, then even doing trivial things require significant time and about a dozen browser tabs of docs.

That said, trying to remember how to use the various *nix tools like curl, find, tar, etc. and wrap them in a bash script isn’t easy either. No free lunch I guess.

Re: Jeffrey Snower was originally demoted over PowerShell

#113
post #67

Earlier quoted context omitted.

Sigh. it's not a comment on the downvote, it's a call to those down voting to participate to enhance the convo. If you read the rest of the guidelines, they also state not to cite the guidelines as a reply.

Downvotes and upvotes are just imaginary internet points and you should not become attached to them.

That’s only true until someone puts them on the blockchain.

Re: Jeffrey Snower was originally demoted over PowerShell

#114
post #67

Earlier quoted context omitted.

HN guidelines: > Please don't comment about the voting on comments. It never does any good, and it makes boring reading. https://news.ycombinator.com/newsguidelines.html

Sigh. it's not a comment on the downvote, it's a call to those down voting to participate to enhance the convo. If you read the rest of the guidelines, they also state not to cite the guidelines as a reply.

I would not have downvoted your comment but IMHO saying “don’t be a coward” is the wrong tone to take here.

Re: Jeffrey Snower was originally demoted over PowerShell

#115
post #102

Earlier quoted context omitted.

They would never have known. When you cook the goose, you get a nice meal but you never know about the golden eggs that never got laid as a result. Everyone thinks they did the right thing except for the goose.

Yeah, but almost always geese lay regular eggs. You cannot just never kill geese in the offchance one lays golden eggs. The maintenance costs get astronomical.

This is why gold is expensive and you’re simply justifying the injustice

Re: Jeffrey Snower was originally demoted over PowerShell

#116
post #110
post #107

Earlier quoted context omitted.

> It doesn't appear to have completions matching those shells What kind of completions do you mean? PowerShell has completion for commands, parameter names and arguments. You can define arbitrary script blocks to do custom completion (or for simple cases just use `ValidateSet`). They can be defined either in the script/function itself, or separately with `Register-ArgumentCompleter` (that also works for non-PowerShel…

In fish, if I type ls - , I get a history based autocomplete suggestion (ls -l), and also a summary of options with brief descriptions: ls -l -1 (List one entry per line) -A --almost-all (Show hidden except . and ..) -a --all (Show hidden) -B --ignore-backups (Ignore files ending with ~) …and 51 more rows I can use the arrow keys to cycle into the "and more rows section, or type further to narrow the list. zsh suppor…

If you use `Set-PSReadLineKeyHandler -Key Tab -Function MenuComplete` it will show the options and the types of the arguments, but yeah, I don't think there is a completion function available that orders them based on history or shows the docstrings.

In principle there isn't anything that would stop one from making that. PowerShell has history info available, and help messages/docstrings can be given for parameters (`Get-Help command -full` will show them if available).

Re: Jeffrey Snower was originally demoted over PowerShell

#117
post #102

Earlier quoted context omitted.

They would never have known. When you cook the goose, you get a nice meal but you never know about the golden eggs that never got laid as a result. Everyone thinks they did the right thing except for the goose.

Yeah, but almost always geese lay regular eggs. You cannot just never kill geese in the offchance one lays golden eggs. The maintenance costs get astronomical.

[deleted]

Re: Jeffrey Snower was originally demoted over PowerShell

#118
post #102

Earlier quoted context omitted.

They would never have known. When you cook the goose, you get a nice meal but you never know about the golden eggs that never got laid as a result. Everyone thinks they did the right thing except for the goose.

Yeah, but almost always geese lay regular eggs. You cannot just never kill geese in the offchance one lays golden eggs. The maintenance costs get astronomical.

Agreed. I was responding to the question of whether the cook ever realizes the mistake. Of course he doesn't - particularly if it's a new cook or someone who thinks geese are fungible.

Re: Jeffrey Snower was originally demoted over PowerShell

#119
post #109
post #91

Earlier quoted context omitted.

The Microsoft of that time period was infamous for deliberately paying less than other tech giants.

Absolutely true.

They had an actual formula for it, and I'm forgetting what the number was. Like 80% of some metric of other tech giant comp?

Re: Jeffrey Snower was originally demoted over PowerShell

#120

Earlier quoted context omitted.

Incidentally, I needed to teach myself PS for an azure-focused client of mine -- and I did so on mac (incidentally, making notes in a jupyter notebook with PS backend). It's a weird language, but I always reminded myself of its competitor: bash -- which is perhaps an order of magnitude more weird. It feels like it could be a "shell language for the cloud", ie., the language for cross-OS cloud automation work.

Is it possible to "learn" Powershell? My very limited experience has been: look up problem, find likely solution, enter 60-character command specific to this niche issue that I'll only ever have to use again in this exact situation, which is now solved until next reinstall. Having said that, those are the only situations in which I've needed to use powershell.

To be fair, as a native of Windows, you seem to be describing the process I need to go through for stuff like maintenance of my home Plex server (which runs on Linux).

I'd even argue that, between PowerShell's kinda-guessable commands and parameter names (as contrasted to bash/linux) and ubiquitous --help, PS makes it easier (relatively) to discover a solution on your own.

I guess a big part of this is what your native language is.

Post reply on HN