On the libreplanet mailing list, a user recently asked for opinions on the response the members of the Endless Computer project gave when asked why they are not releasing their whole software stack as free software. One paragraph in particual caught my attention:
Finally, any successful free software project needs a thriving community: our developers come from that world, and we really don't want to do over-the-wall code dumps like Android does. When we open up our software, we want to do it right.
Sorry if I don't provide a link for this quote, but it comes from a private email conversation published on the libreplanet list. A similar message has been posted on reddit by someone who presented himself as an Endless developer.
The line of reasoning here seems to be that to do free software development right, their team would need to accept pull requests.
While that would be a nice way to manage a project, I think that, with regards to the question being debated, the point is moot, not really constructive and sounds more like an excuse to avoid the fundamental issue of freeing their code.
While I'm not saying they aren't entitled to do whatever they want with their code (as much as I'm entitled to not using their product), I think the point needs a bit of exploration.
In my humble opinion, this mentality is a by-product of the Open Source mentality, that is "I free my code so that others can give back useful contributions and make it technically superior". While that is a worthy goal by itself, it is not the goal of free software. The real reason to make your software free, is to respect users' freedom.
Especially for projects like Endless Computer, whose raison d'être is to provide a computing platform to disadvantaged people, they should strive to give their users the freedom they deserve.
On a side note, the problem with Android-style code dumps is not the fact that usually contribution don't get merged back to upstream, by itself. The problem is that it is difficult for users to install modified versions of the software to their devices. This is a different way of restricting users' freedom and a reason why I consider the way the Android platform is handled to be wrong and damaging to the user. It's not the Android code per-se, it's the way it is deployed on hardware. Let's just hope that if the Endless Computer project decides to free their code, they won't do the same mistake, freedom-wise.