Sunday, March 6, 2016

A thought occurs to me while trying to learn and use Kivy on Android, via Buildozer: if you are going to have something, be it a configuration script, a build tool, a language, etc., it would perhaps be nice to leverage things which already have well known and well documented semantics.

Thus rather than the buildozer.spec file using heaven only knows what format, use something more standard like JSON or even XML (e.g. how does one break up a long line value?). I know the new cool kids would laugh, but I'd rather have it be based on e.g. Make for Pete's sake. Similarly, rather than making up your own event system, how about find one that is more already long lived and well documented (e.g. what aspects of the event system are synchronous vs. asynchronous, exactly)?

(There's a zillion other things about Kivy and Buildozer that are just terrible, terrible UX, but I'm restraining my whining to this for now, and attempting to draw some sort of constructive lesson from it other than just, "how about you just not suck in the first place?" E.g. if you are going to write a command line tool, what if you made sure the docs matched how it behaved? Gosh. Or that you maybe caught internal errors in a standard way and reported them cleanly rather than letting the stuff leak out like olestra all over my console? Also, has nobody ever heard of showing % progress even in a command line tool? Etc.)

No comments:

Post a Comment