It seems everyone perceives this topic with their own lens.
I was going to say "Anyone who wants to create their own abstractions,.. should be required to do basic algebra" - science of abstractions in its purest form.
WIth isomorphism, factor groups and basics of linear spaces. :)
Though as I spend so much time trying to convey the technical message with some visuals nowadays, I would enjoy design course at the Uni.
@bookwar @doctormo @fuzzychef
There are surely abstractions for which algebraic lenses can work wonders.
I would lean more in the direction of the previous post, however: approaches that apply •principles of design• but not •mathematical formalism• to API surface typically fare far, far better in practice than the reverse.
I think we may be talking about the same thing. It is just that for me mathematics is not about _using_ some formalisms. It is about developing the skill which allows you to create and evaluate different formalisms.
https://fosstodon.org/@bookwar/107389047199043428
Where it may differ is that mathematics does not just create the language, it also validates it for correctness.
And it is important too.
When defining a new abstraction you need to recognize when it doesn't make sense.
@bookwar
Strong agree that math is about creating / evaluating / etc formalisms, not just using them.
There is an important distinction here. When I say principles of design, I mean psychoperceptual things (proportion, hierarchy, ergonomics, etc) and process things (user testing, prototyping, iterative development, etc), none of which (except maybe prototyping, maybe, debatably) are typical of mathematics. And in particular…
…identifying stakeholders, goals, constraints, and tradeoffs are anathema to the aesthetic of “pure” mathematics, which is to explore the surprising implications of imaginary things wherever they may lead. So I do think there’s a tension here.