It’s mostly formed from Seth Schoen and Cory @doctorow ‘s idea of adversarial interoperability, Joanna @rootkovska’s Qubes, and @mntmn’s Interim and Reform projects
with also (in a way that I haven’t been able to entirely compose together) CHERI https://www.cl.cam.ac.uk/research/security/ctsrd/cheri/ , and @cwebber ’s work on Mark-Miller-like capabilities.
Sorry, that sounds conspiratorial and I didn’t mean it to. What I mean is that a successful tool or service builds on the browser, or Android/POSIX say, or inside Twitter or Facebook’s ecosystem. Those environments are rich and complex and provide coherent and comprehensible abstractions for doing almost everything that their creators and sponsors want to do (and would like you to do) in the world
In earlier years, we were lobbying and picking and working on the abstraction towers we hoped would lead to a better world, but now it feels like those directions have been buried by the buildings built above them: you can think of this as co-option, but another way may be a narrowing of options after a period of abstractions that tended to general innovation - a post-Cambrian winnowing? Sorry for all the metaphors I’m still trying to name and frame this
I don't know the name for this act, but adversarial interop will do for now. You wire yourself up to the existing abstraction framework, and pull it in a new direction. But you only do that to the degree that the abstraction fails to be able to stop you, and to the degree that you can comprehend what the abstraction presents
@mala Some general thoughts:
- Selling the notion that existing infotech stacks are excessively complicated isn't a hard sell. Don't linger on that long.
- Defining what specific _elements_ of that stack you're concerned with, somewhat more so. Are you tackling the whole shebang, or only parts?
- "Social computing" strikes me as a vague or poorly-known term, something of a shibboleth or blind reading, filled with meaning supplied by the reader, but not necessarily the same by all.
1/
@dredmorbius Doc thank you for your advice, but I think you're confused about what I'm doing here. I'm not explaining, I'm speaking my thoughts out loud to see if anyone is already on the same wavelength.
@mala And I'm telling you that yes, there are people on this wavelength (or at least similar ones, based on uncertainty of message).
The ideas are worth developing. Developing and expressing them more clearly would help.
The stack _is_ too complex and will likely collapse (I'm getting to that in my main thread).
But yes: good ideas, shared concerns, and probably useful.
@mala ... whom, and on what type(s) of platforms (inputs, UI/UX/ performance specs, energy, bandwidth, latency, etc.)
Some years back I started thinking technology goes through a set of stages, from idea, to proof of concept, to early and mature development. At some point it hits a rococo phase -- highly embellished, highly complex.
Which creates a crisis.
There's usually either a total collapse or a what I call a "recapitulation".
With the first, the tech just dies -- too complex ...
3/
@mala ... and often overtaken (Christensenian sense) by more capable and cheaper alternatives.
The recapitulation is in the spirit of Saint-Exupery: "Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away."
We get systems which are overly complex, and they are replaced with a return to the simple life. MSIE scrapped for Chrome, proprietary Unix for Linux. Several rounds of this with Netscape & Mozilla's browsers.
Simplify.
4/
@mala A year or so back I traced the origins of the phrase "complexity is the enemy".
I'd previously determined it was actually "complexity is the enemy *of reliability*", from an Economist article in early 1958. It was commenting on a report of British industrialisation (and safety as I recall), and general findings. (I've got the study ... somewhere.)
But the notion and its seniority seem highly significant. Complexity is ultimately a trap.
Either we break out of it or it breaks us.
5/
@mala You might want to use a more concrete term, define what you mean, or link a standard definition.
- How your inspirations (Seth Schoen, Qubes, Interim/Reform) fit in here isn't clear. Spend more time on that (or find better examples?).
- Defining a goal, and sorting How to Get There From Here is a good practice. So I'm on board with that. Might specify the goal a bit more clearly.
Defining what you want to be able to do (or you want the computing environment to provide), for ...
2/