My first instinct is to agree, but I'm not sure actually. What I really want when learning a new area of math is the full motivation for the tricky definition, taking as much time as needed to follow the dead ends of easier but worse definitions. Then I get the whole picture. IMO the motivation is the key thing for students, not the definition being easy.
Though maybe the way this course would work is in fact by proceeding through a series of easy but explicitly flawed definitions, and proving both real results and nonsense from them, so you see why the real definition is justified.
> What I really want when learning a new area of math is the full motivation for the tricky definition
yes so then you want proofs that actually exercise real machinery instead of playing the shell game of "an X is a Y and a Y is a Z, and has ABC properties, there for X has ABC properties"; you want a proof that goes through the process of using properties ABC to build Y from Z and X from Y (or something akin to that).
definitions aren't for people learning math, they're for people using math ie practising professional mathematicians that are proving more theorems; Hausdorff didn't invent "Hausdorff spaces", he used/worked with various properties of topological spaces and then when the next person came along and needed to right another paper on top, that person invented "Hausdorff space".
It’s interesting that you use the “a monad is a monoid in the category of endofunctors” example. That kind of statement is definitely hard to parse when you’re trying to learn concepts.
However, the more I’ve learned about category theory, the more I’ve understood it as a way of defining what things are and what properties follow from those definitions.
Like, a monad really doesn’t have meaning beyond “monoid in the category of endofunctors”. The same is true for monoids and endofunctors: it’s all about the properties of those objects.
In the context of programming, we can impose all kinds of meaning, but the definitions and laws are really what makes it all work when you piece it together.
I guess my approach is to suffer through it until some understanding is gleaned, which admittedly isn’t very satisfying or easy haha.
Though maybe the way this course would work is in fact by proceeding through a series of easy but explicitly flawed definitions, and proving both real results and nonsense from them, so you see why the real definition is justified.