>> what does it mean "overwriting your list with a text binding"?
Your HTML was this:
<li data-bind="text: $data.Name">
<ul data-bind="foreach: $data.Exercises">
<li data-bind="text: Name"></li>
</ul>
</li>
The top binding (<li data-bind="text: $data.Name">) is telling
Knockout to set the innerText (or textContent) for your outer li
element. This text replaces everything in between the starting and
ending tag, so it results in: <li>$data.Name</li> - overwriting your
<ul> elements HTML with the Name text.