if we build software that doesn't scale, that's okay because our communities are small, and it means the megas can't use it
I like this idea, but also have trouble reconciling it, on the upstream side, with needing scale for the things on which we build, and on the downstream side of needing scale to be accessible and inclusive.
maybe there are different kinds of scaling that help resolve this?
@deejoe I'm not sure how not scaling to, say, thousands of users reduces accessibility, except that it requires more instances to be set up?
there's a premise that some people hold that accessibility requires centralization, but i don't agree with that.
yeah, maybe that's an entirely different idea than what people usually mean by scale. I think being able to do needful things does mean "bigger" in absolute terms than many of us are comfortable with, but not necessarily the "move fast and break things on the way to acquiring market share and excluding competitors" type of scaling.
yeah, I don't know. Accessibility aside for the moment, we also see small communities struggle with shifting priorities over time, burnout in the people running things, chasing upgrades, moderating, a hothouse environment for personality clashes, all that.
Best way to put this that comes to me just now is to shoot for "organic scaling"?
Or to trot out a more familiar usage: How do we maintain critical mass without it either fizzle out or a blowing up?
That's at an end of the scale I think we all agree is best avoided. Towards the smaller end though, is everyone capable of running things, such that the loss of any one of them doesn't mean the loss of essential social infrastructure for others?
For instance, there's long been a tradition of people hosting DNS and email secondaries for each other, backups for each other. But that's then exclusive to tech folk with particular skill and interest.
@deejoe @tindall (this is a good point! i've always had this concern about 'well-meaning 1st world techy 3rd-world aid projects' like OLPC etc that envisioned kind of drop-kicking tech into someone's culture and then just kinda abandon them, with seemingly no thought towards self-maintenance and self-management by the end-users on the ground)
Also as long as even a small community welcomes diversity, accessibility can be achieved.
I am part of a forum about vintage electronics where there are a lot of older people present, and the users will speak up if fonts / colours are hard to see and things get changed (they also share positive discussions on how to deal with doing things like close work and driving as their eyesight changes due to ageing)
@deejoe @brion @tindall I noticed this is a huge problem in the open source community — going from a hobby project to a community project. Few projects are successful at this, and pretty much none do it without problems.
Anything that would help with that step would have a tremendous impact on the whole community.
I'm thinking not about numbers alone, but about the composition. In the best case of assuming even distribution across a user base, a small community is going to have less diversity of experience, ability, & background. This then applies all the more to the development & operations components of that community, too. You can try to accomodate, develop for, and in general support people who aren't yet part of your community but that's not going to be the same as having those folks in it.
@tindall A key question becomes "what is sufficient scale?"
Given that FB et al are competing at billions, a system which "only" scales to a small number of millions ... should be tolerable. It's probably too big to be intimate (by numerous orders of magnitude) but is still far too small to be practicable for mass media applications.
@tindall Y'know, I've thought of (and possibly mentioned out loud) this as a potential goal.
What keeps systems small and localised is friction. Scaling happens through reducing frictions and increasing efficiencies, which is mostly the same as saying that greater efficiency -> greater monopolisation.
So yes, absolutely: if you can build systems and specifications which explode horrendously at scale they stay small.
(Whether or not this can be done, I'm not at all convinced. But the theory makes all kinds of sense.)