4 ms·
> Google have reversed the User Interface paradigm. Instead of users learning the software and telling it what to do, the software learns the user. I don't nece
by smichel17 6y ago
> Google have reversed the User Interface paradigm. Instead of users learning the software and telling it what to do, the software learns the user. I don't necessarily mean NNs or personalisation. I mean that the paraign is software-centric. "If the user does X, how should the software respond?" instead of "If the user user wants Y, how does she make the software do it?" That's great for intuitiveness, but it also creates a frame where the software gets better over time but the user never does.
May I quote you on this?
It is a great description of the 3rd premise in a talk proposal I submitted to LibrePlanet 2021, which goes something like:
- Software freedom is predicated on the notion that users ought to be in control of what runs on their computers.
- I claim that tech literacy is necessary to exercise this control.
- "Google Design" presumes that "nontechnical users" are not and will never be capable of tech literacy.
If all of these are true, then "Google Design" is incompatible with the idea that Software Freedom is for everyone. And indeed, we see this borne out in many people's disdain for copyleft licenses, which impose restrictions on developers in order to guarantee freedoms for end users. That's a logical viewpoint, if you believe that end users wouldn't benefit from software freedom, anyway.
"Google Design" does make software more accessible to end users… at the cost of turning your computer into an appliance. Which makes it a self-fulfilling prophecy. People don't magically become tech literate; they intentionally learn the skills so they can achieve something. Remove the power from the tools, and you take away their motivation to become tech literate. I have a great story about my grandma to illustrate this point.
If our goal is to make computing (and, by extension, software freedom) more accessible to everyone, then we need to change our approach. We need to prioritize education and teaching tech literacy. And most of all, we need to write software that is powerful enough that users will see the benefit in learning to use it.
That's they key points from the first half of the talk. The second half is about how we can create software that is powerful without sacrificing usability. It basically boils down to "make simple things easy and hard things possible" — creating software that Just Works™ without configuration, but allows you to customize its behavior if/when you want to. In particular, I'm a fan of embedded scripting interfaces (e.g. spreadsheets), which allow a vast amount of customization without creating "settings overload" that is typical of many FLO[1] programs.
[1]: https://wiki.snowdrift.coop/about/free-libre-open#flo https://wiki.snowdrift.coop/about/free-libre-open#flo