imageModel View View Model or MVVM is, without question, one of the best things to ever come out of XAML development. MVVM separates the logic necessary to interact with the data from the logic necessary to interact with the UI. Where together it makes a muddled mess, separate it makes an elegant approach that is more easily maintainable.

Technical debt

Why does maintainability matter? Maintainability is not the inverse of complexity. That’s because complexity can be controlled with good patterns like MVVM. But without good patterns, complexity is the logarithmic multiplier to headaches and troubles. I don’t mind picking up on a project that is well organized. I hate even smelling projects that have deep architectural debt.

Read the whole article here