Girls and Windows
Both have a great UI.
Both consume large resources and do less work.
Both crash unexpectedly.
Both are not easily portable on different architectures (environment).
Both can't work on low resource architectures (environment)
Both are costly to maintain.
Both give mostly unexpected outputs.
Boths working often contradicts with their documentation.
Both are easily prone to viruses (rumors and doubts) (and they (viruses) do spread very fast in windows based networks).
In spite of all above disadvantages, both are liked
Boys and Linux
Both have an average UI.
Both are robust.
Both are highly secure.
Both can be easily modified to support new concepts/features.
Both are highly efficient.
Both are easily portable to any architecture (environment) no matter how low are resources.
You can easily guess the output for your input (in Linux just open its code, for boys they are mostly transparent by nature).
Both provide large support for development (work environment).
Both are poorly documented