I think the best way to understand this is that division by dx is always allowed. It is genuinely a nonzero quantity. Later, we think more in a more abstract way in a tiny neighborhood around (x,y), considering what happens to dy as dx becomes arbitrarily small, but it never vanishes entirely. That explains why we can say dy = 2x dx or dy/dx = 2x and both are completely true and reasonable. I think the author's argument is that d() is a bit easier to understand because we aren't dividing by dx but it makes no sense (to me) that way. If you cannot divide by dx, a nonzero number, then why not? And if you can, why doesn't dy/dx involve zero division, which is clearly not well-defined? I think answering those questions makes calculus a lot easier to understand and that they are in a sense the hardest questions. The notation this author uses doesn't really illuminate those points and the fact that the author realizes that he is basically teaching the students to accept zero division for most of the year suggests he is basically saying we should go back to a Leibniz-era approach to calculus. I would rather make rigorous what is meant by dx/dy and what exactly dx and dy are.
Author suggests using them. Resistance to Hyperreals seems to come from era before there were rigorous definitions for them. Robinson’s hyperreal number system 1974.
-- George Berkeley, namesake of UC Berkeley, in 1734, critiquing infitesimal approaches to calculus.
Math uses limits because "dx" as a concept is hard to define and relies on faith that such an object can exist. It behaves as zero when convenient yet is non-zero when that breaks math. Limits have a more rigorous footing.