• I think it seperates into 2 areas

    - 3rd party products your software may come to rely on (e.g. expansion of functionality, 3rd party dll's, etc.)

    - 3rd party products that enhance/speed up your system indirectly (e.g. development, exploration, monitoring, profiling, etc.etc.)

    With the first, your product may become dependant if using them. Where I am I tend to avoid this where possible as our environment here is not really set up to support going far off `out the box MS`.

    The second, to me is more about working smartly, faster, more efficiently and effectivly - i.e. you could remove these products if anything were ever to happen and carry on (all be it with possibly far more manual overhead). Here I am far more likely to/to be able to use something 3rd party.

    M. 🙂