That exercise would be immediately deprecated by the palindrome product exercise, though.
It helps a lot, and in fact it is not far from what I suggested (at least in the spirit if not substance) to what I mentioned above about splitting the problems.
I’d like to try contributing to the content, so if that’s OK, following this recommendation I could try to author an article about palindrome check for numbers, approaches for palindrome product and perhaps try to record the video about it too? It won’t be tomorrow, but if you can wait a week or two I’d like to give it a go.
As for for
or LINQ
I think for an approach text, or an article one would be enough, and it would be LINQ I think. However, in a video I think it would be worth to show both and how one is refactor into the others. From my mentoring experience some struggle with the transition and explanation can help them.
Going back to the discussion about benchmarking. One of the reasons I wanted to start here, was the mentoring session I mentioned earlier. I was able to show a few useful things to the person mentored. First of all, that sometimes it is possible to measure performance to get data in addition to the feeling that it is clearly too long. He then started asking about improvements to IsPalindrome
and we did them too, and measured them only to show, that performance impact is insignificant and so more readable version (which performs slowest) is probably the preferred code. I’d like to try to include it somehow as it is an important point to make.
In what sense deprecated? When learning things I don’t think about stuff I learn on a foundation level as deprecated by stuff which I then learn at intermediate or advanced level. They all add up, not override.
In more practical sense, if Is Number a Palindrome was a separate exercise, the Palindrome Product could come with implementation of IsPalindrome
function.
In the sense that it doesn’t make sense to have two exercises asking students to implement the same thing.
We could split up every exercise that has multiple components into individual components … to make it easier to write about each component independently. But then we won’t have any exercises where students need to work out multiple problems in one exercise, which is also a good skill.
That all sounds great! Ping me in your PR and I’ll help review it.
Great work! I’ve reviewed. Looking good!