What is the point I am making here?
The point I am making is this: To find something one really needs in the MS Docs ocean, one needs to spend 90% of the time, in order to discard 90% of information encountered on the “path of discovery”, which I would call “path of MS Docs misery” most of the time.
And most of the time, that unneeded 90 % are generated by MS Docs “evangelists” and “ideologists”1, In MS Docs or anywhere in the Microsoft universe (as far as I know) there is no this top-level classification :
- Essential (aka:core)
- Specific (aka: additional)
- Nice to have (aka: vertical, aka specific architecture)
Imagine if all of the MS Docs material would be tagged with only these three simple tags? With maybe: experimental and legacy added. Then imagine you go into the MS Docs, and the first thing you do is click on the cloud on the tag “Essential”. And as a result of that, the good old dreaded MS Docs tree view is all of a sudden pruned to be manageable! Ah, sweet dreams … Back to reality.
The same is perfectly applicable to the issue of bloated software packages Microsoft and others are currently packaging and selling. I am not familiar with, let’s say Adobe CS5, but I am very familiar with Microsoft software. Thus I will use Visual Studio as a good example. Now imagine this simple classification “ideology” applied to let’s say Visual Studio packaging and installation?
Visual Studio is huge. VS Setup GUI is equally a sea of ticks and options. For example, I do want only the core of Visual C++ functionality. The barebone IDE, the compiler, and the debugger. Nothing else.
With the current Visual Studio setup, this is just a distant dream and a source of great annoyance.
Allow me to dream a little bit? So I fire up this imaginary VS setup and I choose:
- Essential, and then 1.1 Visual C++
And voilá. I have only essential pieces of Visual Studio C++ jigsaw, which are enough for C++ basic editing, compilation, and debugging.
I play with this for few days and then I decided I would like to use something a bit more realistic for my projects. I fire up again this alas imaginary Visual Studio setup and, it knows I have installed C++ essentials, thus it is on top of other essentials. I go into it and this time I choose:
2.specific and 2.1.ATL
And I, have added ATL to my current Visual Studio C++ IDE, without adding anything else in the process. With all the interdependencies resolved, and kept to the minimum. Something current Visual Studio, user C++ developer, can only dream of.
Who knows, maybe after reading this post, someone will develop n-Lite for Visual Studio? A tool that will allow users to have lean and functional Visual Studio installations, vs “I am taking over your machine” kind of an approach Visual Studio has.
- Who sometimes need to prove the point of their own existence and salaries. I understand that. But then why not just move all of the “ideological” material out of the MS Docs onto the blogs of the “ideologists”? I am talking here about all “recommended practices” and articles and all CodePlex projects.