Interesting thoughts from @jonathoda on “duplex applications” as an alternative to local-first software. 🤔

https://alarmingdevelopment.org/?p=1692

Ubiquitous connectivity and duplex applications

Pretty soon we will all be connected to the internet all the time. Satellites will fill in the last remaining dead zones. Cheap ubiquitous connectivity is going to break many assumptions of the sof…

Alarming Development

@eaganj I am extremely skeptical of "ubiquitous constant connectivity" as a premise to anything. It's not because infrastructure is deployed that it is here in practice or will be in any realistic future + mainstream satellite connectivity is a terrible idea on so many levels that it has to be stopped.

TLDR: infrastructure need people to maintain it and make it run smoothly, it's rarely the case so connectivity breaks down frequently as long as it remains acceptable.
https://hal.science/hal-03969060

The Everyday Experience of Connectivity Limits

From Ubiquitous Computing to the recent deployment of 5G technology, public discourses assume ever increasing levels of connectivity, whether in geographical availability, in reliability, or in speed. However slowdowns, breakdowns, and unavailability are an integral part of the experience of everyday connectivity. We conducted critical incident interviews with 10 students (aged 22-25) to understand how they dealt with the various connectivity limits they faced during the COVID19 pandemic, but also how they deliberately set limits at times. Our results show the complex relations that people develop with their internet connection. We outline the informants' difficulties to identify and understand the nature of the connection's problems they usually face, leading to a lack of control. We present how they react to such problems, the anticipation strategies and coping mechanisms they develop. We finally present situations in which informants deliberately set their own limits. Overall, we emphasize the shift from a shared and localized connection (WiFi) to a personal and mobile one (4G), combined to increased pressure for maintaining connectivity.

@eaganj PS: lots of respect for Jonathan Edwards and his work. His assumptions may even be shared by enough people that things will develop in the direction he predicts. But it will not work as predicted and we will suffer.
@aurelien completely agree about both points.

@aurelien @eaganj you may very well be right. Even non-mobile internet is flaky, yet we have come to depend on it so much. So I’m extrapolating to satellite internet.

I’d be interested in what you think about the local-first movement.

@jonathoda @eaganj I think we toyed with some variation of the idea of duplex applications with a hypercore enabled version of Plateau a tool to document participatory design workshops.
Our idea was that you could use several devices to capture workshop activity even without any external connection (or a just sketchy one), sync locally across devices, and later sync with a server when better connectivity would allow it.

@jonathoda @eaganj It was painful to develop :) and even more to express clearly the state of the data to users, but I guess that's a generic problem to distributed apps (an interesting one worth tackling).

In a way we were between a p2p and a duplex app, in that we wanted a primary server, but not to depend on it all the time.

In the end local-first proved to be much clearer from a mental model perspective for end-users, and "easier" to implement (with some shortcuts).

@jonathoda @eaganj in another project we explored a layered architecture with various fall back strategies for multi-devices activities in classrooms (and outside). https://hal.science/hal-02136481/

We are not software engineers, so the things is far from being well designed from an software point of view, but it touches on various problems related to connectivity.

Toccata: Supporting Classroom Orchestration with Activity Based Computing

We present Toccata, a system that facilitates the management of rich multi-device pedagogical activities. Through interviews with high school teachers, we identified a set of barriers to conducting digital activities in schools: setup time, network problems, difficulties in following and changing plans as activities unfold. We designed and developed Toccata to support the planning of pedagogical activities (scripting), seamless sharing of content and collaboration across people and devices, live management of activities in the classroom, roaming for situations outside classrooms, resumption across sessions, and resilience to unstable network conditions. We deployed Toccata in three classes, over seven teaching sessions, involving a total of 69 students. Together, these deployments show that Toccata is a generic solution for managing multi-device activities in schools. We reflect on how Activity Based Computing principles support Orchestration in Toccata, and discuss the design opportunities it creates such as better awareness of learners' activity, micro-orchestration techniques for enabling teachers to better control devices in classrooms, or supporting reflective practices of teachers.

@jonathoda @eaganj I like local first as it seems to me that it enables much better coping with the fragility of the infrastructures which we assume too readily to be working. And I agree that true p2p is a pain and rarely needed. Maybe some layered duplex? triplex apps :)

+ from a participatory design perspective I like the idea of having a central place to design collectively with all the frictions it involves, rather than hand-waving at p2p as a solution to issues of power and control.

@jonathoda @eaganj and let's sabotage mainstream satellite connectivity it's environmentally toxic even by aerospace extremely poor standards.
@jonathoda @eaganj welcome to my sunday evening rants, you saved the monday morning of some colleagues !