4 responses to “Rage Against the Design”

  1. Paul

    What’s worse is I’m assuming the reason they don’t parse the – as an operator is because the dash can denote a parameter. But even that doesn’t work!

    PS > function test-numericparam ($42) { “$42” }
    PS > test-numericparam -42
    -42
    PS > test-numericparam -42 Foo
    -42

  2. Roman Kuzmin

    Thank you for posting this, I do agree with everything you say. I wish more people criticize PowerShell design or whatever they call design. I love PowerShell very much because other alternatives are even worse. Other alternatives do not fit to .NET well enough for what I do. Fortunately .NET is not developed by The Team.

    There are too many exclamation signs everywhere about PowerShell. The technology itself is awesome, but implementation quality and responsibility for what is done is low too often. Meantime one has to be a rocket scientist to able to use this shell for file system or registry operations. I am talking about real jobs, not trivial demos that work sometimes.

    Thanks,
    Roman Kuzmin

  3. Josh Einstein

    Why don’t you tell us how you really feel? :)

    I agree with the fact that the “by design” excuse is abused. However, because loose typing is often the cause of many frustrating bugs, and because typing the argument as Int32 does work as intended, I’d say the issue isn’t that bad. The bottom line is, when you don’t specify types, life is like a box of chocolates…you never know what you’re gonna git.