KnockoutJS and MVVM: Tips for Building HTML and JavaScript Web Apps