Why do I reject some ideas and not others?
Perhaps I simply like my ideas better than other people's :-) It's not
possible to eliminate "personal bias" completely. The best antidote is to
acknowledge that the bias could be real.
However, I think that my overall engineering judgement is sound. It has
kept Leo "healthy" for decades.
My main concern is to continue to make Leo's core (including key plugins)
simpler and more robust. cff and git are making this easier. Other devs
prefer quick find. Either way, we all have much better tools than we did
three years ago. But we must resist the temptation to do "fancy" things in
The master design principles, as I have stated many times, are to
encapsulate complexity and to eliminate global dependencies and special
cases. Let's look at the redraw branch for examples:
The c.enable_redraw/disable_redraw complicates some already-complicated
code, but those complications have *no* global effects.
The new c.redraw_later is a valuable new distinction. Helper methods
should never call c.redraw directly, because that causes annoying screen
flash. The c.redraw_later code is refreshingly simple.
Eliminating various unused (or just plain stupid) keyword arguments in
various important redraw-related methods is something that is *always*
worth doing, regardless of short-term risk. Adding a kwargs arg, and
warning if deprecated keywords are passed in ensure that existing code will
continue to work.
*Summary*: We devs *must *have a real sense of danger when contemplating
global changes. *Local* complications are tolerable, but global special
cases and dependencies have the potential to destroy Leo.
You received this message because you are subscribed to the Google Groups
To unsubscribe from this group and stop receiving emails from it, send an email
To post to this group, send email to firstname.lastname@example.org.
Visit this group at https://groups.google.com/group/leo-editor.
For more options, visit https://groups.google.com/d/optout.