Fedeproxy pitch

You could avoid using the word in your pitch altogether. It is a bit of a technical term anyway. In the EC event we organize at SocialHub we talk about an “open --> closed --> re-open” vision for the Fediverse, where we currently are in an Enclosure of the web by Big Tech.

"All across IT dominant tech players are monopolising the market. This also applies to software development platforms. Github, the most popular code hosting site, has tremendous network effects. Effectively a walled garden, FOMO keeps most projects hostage, including the majority of all open-source. FedeProxy will radically open up the landscape, allowing project teams to once more select their preferred platform and code hosting location. We free your code by offering an interoperable proxy to arbitrary other hosts. Location is no longer important, as FedeProxy decentralizes the workload. Issue management, code changes, discussing bugs, creating documentation. Our software keeps everything in-sync and tidy […] etcetera.

Note that this is already too long, but just for inspiration :slight_smile:

(See revisions for other, longer variants of pitch)

1 Like

Not using the term “software forge” is an interesting idea. And your draft made me think of another approach (hopefully this will blend together somehow :slight_smile: ). It is a widely known theme that “workers should own the mean of production” (or something along these lines). That’s what a cooperative is about, as opposed to the company that is owned by the shareholders and not the employees.

Instead of “software forges” maybe we could talk about “the tools software developers use to make software” and how it is important that they own these tools instead of some giant corporation.

Does that sound sensible?

If you don’t know about it, the book « Say It In Six » by Ron Hoff gives very good advice for a straightforward short talk (6 minutes; but the outline should not differs for a one minute one).

2 Likes

So “Code Forges” is the official term. It is used on technical / protocol level.

For FedeProxy you can create your own ‘domain specific language’ that is ultimately returning and used throughout the UI. You might start that with an appealing slogan, very short, that communicates your vision wrt the product. “Cooperative” is a nice starter. So, let’s give it a go:

FedeProxy: Create code cooperatively

Has a nice CCC acronym. Or…

  • FedeProxy: Cross Code Collectively
  • FedeProxy: Cooperative Coding Solved
  • FedeProxy: Create Code Everywhere

There’s many more to think of… some brainstorm will yield a great one. BUT…

Did you consider that the name ‘FedeProxy’ itself might still be changed eventually (Or that ‘FedeProxy’ community provides ‘XYZ’ product)? Note that, when someone hears just the name, they will have no idea at all what it is and what it does. That is a barrier to overcome all of the time… explanation needed.

What might be alternatives?

  • CodeRealms
  • CodeRoam
  • BridgIT
  • RoamingCodes
  • RepoCrossing

Bit strange words, but familiarity comes with use :grin:

1 Like

I am unsure the good point of view should be about tooling. Imho Github is a social network for devs. I would say the following as the burning issue:

  • Software forges are the places where those developers are actually deliberating and working together.

  • Free software peoples likes to cooperate, but their forges are partitioned. As a result, for many years, different hegemonic firms successively cached the authors’ work. Exactly the same way facebook catch people’s life. Currently the most known forge is GitHub, property of Microsoft (one of oldest and strongest free software enemy). This mean that most free software hackers are their guest and have to comply in consequence.

  • We think that decentralization cannot occurs without decompartmentalization of software forges. And this is the matter of this work. Creating interoperability for GitHub (without asking permission) and creating bridges between forges will eventually allow developers to break free.

PS: the video should allows to insert good pictures.

1 Like

Yes, absolutely: it’s not a good name. At all :slight_smile: And before investing too much into it, now would be a good time to find a great name. The ultimate goal is for fedeproxy to disapear, dissolve itself because:

  • ActivityPub is mature and widely adopted
  • ForgeFed is mature and widely adopted
  • All forges natively implement both

Or any other combination that puts a stop to the centralization of Free Software development tools. I will refrain from proposing names because I’m notoriously bad at it.

You’re right. It’s more than tooling. A cooperative is when workers own their mean of production and cooperate together around a project. It is both about tools and social interactions.

1 Like

19 posts were split to a new topic: A better project name

With the new name of CoderGlue as a starting point, let’s revisit the pitch…

“All across IT dominant tech players are monopolising the market. Github has tremendous network effects as the most popular code hosting platform, and it initially gave the open-source movement a big boost. But it is also a centralized walled garden where increasingly FOMO keeps projects hostage. The wealth of great free software projects that exists beyond Github are not so easily discovered. Maintainers have a hard time finding contributors and gain traction. CoderGlue will radically open up this landscape by taking away any friction to participate in development processes, regardless where they take place. CoderGlue decentralizes common project tasks like issue management, submitting code, developer discussion and documentation, so that coders can work from their own preferred environment. Our product keeps ongoing work in-sync and your projects tidy. We set your work free, allowing any coder to collaborate. So, let’s code together!”

1.05 minutes. Shortened further:

“Popular code hosting platforms nowadays are centralized walled gardens where network effects and FOMO keep projects hostage. A wealth of great software projects that exists beyond them are not easily discovered. Maintainers have a hard time finding contributors and gain traction. CoderGlue will open up this landscape by taking away friction and barriers to participate in remote projects. By decentralizing common project tasks - such as issue management, submitting code, developer discussion and documentation - coders can choose their own preferred environment. CoderGlue keeps work in-sync and sets your code free, allowing anyone to collaborate. So, let’s code together!”

50 seconds, and it does not mention platforms by name :grin:

1 Like

Another one (did not time it, probably 2min):

“Free Software, GNU and Linux are behind every web service, mobile phone and laptop. It is a common good that belongs to humanity and is crafted daily by hundred of thousands of developers, coding together. A cooperative of effort of epic proportions that software giants would love to own. A few years ago Microsoft spent 7 billions on GitHub, a software development platform with 50 millions users. And they make sure it is a walled garden designed keep projects and developers locked-in. The goal of the CoderGlue project is to help them break free, by connecting software development platforms such as GitHub, without asking their permission. It will enable a developer to report a bug on any software project, regardless of where it is hosted. And they will also be able to easily exchange bug fixes and improvements. Bit after bit, CoderGlue will build a federation where developers and projects communicate seamlessly. Free Software is created by people working together, using the tools they collectively own, improve and re-invent. It cannot blossom in an environment where they are surrounded by software they cannot modify, fix or study. This is what is at stake: the developers freedom to create, which is gradually taken away from them when the tools they use daily are controlled by someone else.”

  • Free Software is everywhere (keyword “Linux”)
  • It is a collective work (keywords “common good”, “hundred of thousands people”)
  • Software giants try to own it (keywords “7 billions”, “Microsoft”, “50 millions users”, “Locked-in”)
  • CoderGlue creates interoperability between forges (keywords “break free”, “connecting software development platforms”)
  • Starting with bug reports and bug fixes and progressing step by step (keywords “communicate seamlessly”)
  • Developers can only create freely if they collectively own their tools (keywords “freedom to create”, “controlled by someone else”)

To followup on @misc idea regarding translation, I’d like to call for participation on the pitch so that there are two voices: one in english and one in the language spoken in a country excluded by GitHub. What about a toot along these lines:

#fedeproxy is designed to help developers excluded from GitHub because they live in a country that does not agree with the US government. We are recording a one minute pitch today to explain why it matters. If you live there (#Crimea, #Cuba, #Iran, #NorthKorea, and #Syria) or speak the language, would you be willing to participate?

2 Likes

So, from what I know, North Korea network is heavily filtered, there was several CCC presentations on it. And usually, the ones interacting with github are doing so from outside (eg, the various state sponsored hackers). If I remember well, they are sent to China or India, working for the gov who keep a eye on the family. When your job is hacking banks, I am quite sure the respect of Github ToS is not on top of your priorities :slight_smile:

Then Cuba, the network is quite heavily censored and under developed, and I heard Cubans rely a lot on a sneakernet, passing data around on USB sticks. See here or here. While situation could have changed since 3 years especially since Fidel Castro death, I suspect it didn’t change that much. Addressing this crowd would likely mean making some radical architecture choices to work offline or in a batch way, along others problems.

Then there is Syria. Internet access is also not that great, but I have a more limited knowledge of recent development.

I kinda assume that private companies and government buys software from outside the country, so I feel that searching for local developers would be less fruitful than the 2 others.

This leave us with Iran and Crimea.

I know zilch about the Crimea situation. I guess I would start by searching for Ukrainian developers who might know someone in Crimea. I know Eclipse Che is a project created by a Ukrainian company (acquired by RH) and they have Ukrainian folks on payroll. I can’t remember his name, but there is 1 Ukrainian python committer and I know someone who can help (but is not awake yet).

I heard that Iran ICT industry is flourishing and there is a whole diaspora around the world. I think Behdad Esfahbod would be a person to contact, given his activism around Iran matter and being a free software developer.

2 Likes

Also, might be worth contacting the Telecomix folks for the Syria part. KheOps might be a good person to contact, since he gave recently a interview on Telecomix for mediapart.

2 Likes

This is version 1 of the pitch. It is three minutes long and that’s more or less what I’m going to say to introduce fedeproxy tomorrow. I do not encourage anyone to listen to it: there is room for improvement :sweat_smile: Here is the transcript:

fedeproxy is going to allow free software developers to easily move from one software development environment (which we call forge) to another. It matters because free software is everywhere, it is behind every website, within every operating system and even in every mobile phone. It is built daily by hundred of thousands of developers. It’s an extraordinary workforce that software giant wants to control. To the extent that Microsoft, a few years ago, spent 7 billions acquiring a forge called github.

And since then they made sure it stays a walled garden from which projects can hardly escape and in which users are locked-in. If you do not agree to the github terms of service then you cannot create a bug report, you cannot even contribute a fix that would correct the problem, which goes against the very idea of Free Software. And if you do agree with the TOS of GitHub, then you also agree that some countries are arbitrarily excluded from using GitHub such as Syria or Cuba.

Nobody should be forced to make such a choice to participate in free software and this is what fedeproxy is going to fix, simply by building bridges between forges. Say for instance that I run a forge on my own machine and I file a bug there. Then fedeproxy will see that the bug I filed is really about a software that lives on another forge. And it will copy over my bug report to this other forge. And whenever the developers there reply to me, then it copy the reply to my own forge so that I can see it.

The larger issue is that the tools and the environment in which the free software developers work every day define what they can do and how they communicate. And whoever controls these tools (when they are not free software) ends up controling, to some extent, what they can do and how they can communicate.

1 Like

Should not be mentioned explicitly that the software development environment is not composed of the source code only ?

Another limitation from the GitHub TOS: one isn’t allowed to create two free accounts (for example in order to isolate some contributions or to manage online identity).

1 Like

I would also address “network effects”.

Time and again on e.g. Hacker News discussion I see people saying ‘what walled garden? Git is inherently decentralised’. A misunderstanding of where the walled garden + lock-in exists.

But even if one knows this, there’s the consideration “lock-in drawbacks vs. network effect benefits”. People choose Github because so many others are on the platform. Gaining visibility and popularity, attracting contributors becomes way easier, than being in some obscure place on the internet with your repo. There is significant FOMO to do that.

Do we have evidence of that? Some kind of measure that shows how much more visible and popular a project becomes when it is hosted on GitHub. And also why and how it is easier to attract contributors when a project is on GitHub, compared to when it is hosted elsewhere. That last one is a mystery to me: attracting contributors to a Free Software projects is extremely difficult and time consuming and I can’t imagine how being on GItHub versus elsewhere makes it any easier :slight_smile:

For traditional social media I think there are studies of network effects and FOMO. But I don’t if anything exists for Github. Personally I know there’s FOMO with me. And I have also heard these same considerations from other maintainers in the past.

It may have been considerations of many of the fedi projects that are on GH, idk.

This starts with visibility. I think (again no metrics) many people do topics searches on Github to find projects of interest. I do that a lot myself. Like I find AP candidates for the fediverse.party watchlists. A similar search on DDG to find repo’s across the web would be so much more inefficient.

I feel being on GH works in your favor, but I can’t make it any harder than gut feeling :slight_smile:

It’s a very wide spread gut feeling :slight_smile: And my compass on the matter is totally broken: I don’t relate to this at all because I don’t use any social media, do not listen to radio, television, read newspapers nor do I stress because I could miss anything, reason why I’m asking you. Thanks for sharing!

If that’s not too personal (I’m not asking you to disclose anything that would be uncomfortable :fearful:) could you share examples or stories about how it manifests itself for you?

If I weren’t operating a whole bunch of social media channels for my community and advocacy stuff, then I’d be more or less in same situation as you :grin:

I long to deep-dive in technical stuff, and it is an attention-killer that hampers deep work, but there’s also an importance to it. Someone has to do it, I guess.


Before giving some examples, first another example of FOMO: Stargazing. Some devs our outright derogatory in anyone mentioning stars on a repo, and you’ll get sarcastic or nasty remarks. But - whatever you think of them - I feel they are very important in terms of netwerk effects that keep people on Github.

Consider a full-stack dev creating a NodeJS project. JS / React / Node… huge ecosystem. Now the initial project setup with "Hello world in it, has 100 billion dependencies. Each additional feature added to the project via another library add a couple billion dependencies more. The dev - creating a platform, full-stack involved - juggles a million tasks. Now suppose they want to add OAuth2 to the platform…

Good chance that library selection goes 1) via NPM search (also MS now) and 2) Github search, or maybe a GH awesome list. Say there are 5 candidate libraries, and the dev checks them one by one. Would they choose the 3 year old project with 100 stars or the 2 year old one with 21k stars? I am sure the dev will first look deeper into the latter project.

Overall: A large number of stars are an implicit indication of ‘quality’. It is not guaranteed in any way, but if thousands of devs gave their star you are more likely to just go with that.

For devs that are used to GH, they can’t have this indication of ‘quality’ via stars on other external forges. A star-comparison metric is only meaningful on a platform with the same amount of members where you know how to gauge it. This star thing puts all other forges at a disadvantage.

So are stars to be considered a bad social media vanity metric? Let’s now consider the situation where there are no stars at all. Now the dev has to delve into the codebase to judge the qualtiy. You might say that is a best-practice anyway, but it is not feasible for all people, requires expertise. How is our full-stack dev able to judge e.g. security aspects of the OAuth2 library? 21k stars are no guarantee for security either, but at least you know 21k pair of eyes went to the project.

Some tech has usage statistics, that can replace stars. “If so many people use it, then I might do as well”.


Now for my personal example. I maintain awesome-humane-tech - a curated list of OSS humane technology projects. I obviously want to advocate and promote this list. It has 1.7k stars at the moment. I did not need to do a lot of promotion to gain these. Also I’ve got 33 contributors who just came in without me asking.

The curated sub-list is part of the awesome project, where the list-of-lists resides. There are numerous very popular awesome lists, people create them spontaneously and spent a lot of effort to get their entry added top-level (there are quality criteria, and ‘branding’ rules). All lists are on GH.

I have also created a derivative of awesome, called the delightful project. It has the same concept, except it is only for FOSS, Open data and Open science related curated lists. And also lists are not restricted to any forge or location.

Though still young I have given quite a bit of promo to the project, received positive response, but thus far only 2 people decided to maintain their own sublists. On the sublists I maintain, I have found co-maintainers on some, but they are thus far not too active. I have had zero PR’s on my own lists and have been most active contributors on the 2 other lists.

Now I don’t mind this too much as the lists are useful to me, and I keeps steadfastly adding resources to them (albeit mostly in candidate issues, waiting to be processed). I expect that - given time - there will be a treshold where this get recognition and the initiative starts to drive itself (i.e. it gains network effects).

Interesting is the response by Sindre Sorhus - creator of Awesome project - when I notified them about my variant of their initiative:

1 Like