> world where software is always compiled from source code to an executable binary file which exists on the user's own computer
That is ultimately what you need to do if you want the highest level of autonomy (modulo "compilation" being optional). The FSF and the framing of Free Software is an uncompromising judgement, but you're still free to accept compromises.
Do you have a concrete framework that you think would be more worthwhile? Even for any one of the examples you've listed?
My own thinking is augmented with a tower of diminishing Freedom/Trust. My main desktop and laptop run only Free software, period. Their peripherals run proprietary firmware, but they're either isolated from the network (keyboard, mouse, etc) or not fully trusted (encrypted network traffic and disk drives).
I run my biggest use of proprietary code, web applications, in browsers in many different VMs (actually on separate machines). This also isolates their networking to defeat IP-based tracking, since I have to treat them as quasi-hostile black boxes. Similarly when I have to run MSWin apps, virtual machines.
In a third direction, I have infrastructure running Free software on less secure systems (eg VPSs).
In another direction, I have separate machines when I have to fully engage with the surveillance economy, like an Android tablet for banking apps.
Having basic Freedom in my base environment is what gives me the perspective to see each compromise clearly. I understand why I am forced to compromise, what I am giving up, and how I can best protect myself from the fallout of what I've given up.
It's true that I optimized around something other than Freedom, like say ease of use or productivity for a specific task, that I would end up with more Freedom compromises and more of what I optimized for. But I can't see how that's anything other than a Faustian bargain, especially as proprietary software has now combined with ubiquitous network connectivity to undermine Freedom 0.
That is ultimately what you need to do if you want the highest level of autonomy (modulo "compilation" being optional). The FSF and the framing of Free Software is an uncompromising judgement, but you're still free to accept compromises.
Do you have a concrete framework that you think would be more worthwhile? Even for any one of the examples you've listed?
My own thinking is augmented with a tower of diminishing Freedom/Trust. My main desktop and laptop run only Free software, period. Their peripherals run proprietary firmware, but they're either isolated from the network (keyboard, mouse, etc) or not fully trusted (encrypted network traffic and disk drives).
I run my biggest use of proprietary code, web applications, in browsers in many different VMs (actually on separate machines). This also isolates their networking to defeat IP-based tracking, since I have to treat them as quasi-hostile black boxes. Similarly when I have to run MSWin apps, virtual machines.
In a third direction, I have infrastructure running Free software on less secure systems (eg VPSs).
In another direction, I have separate machines when I have to fully engage with the surveillance economy, like an Android tablet for banking apps.
Having basic Freedom in my base environment is what gives me the perspective to see each compromise clearly. I understand why I am forced to compromise, what I am giving up, and how I can best protect myself from the fallout of what I've given up.
It's true that I optimized around something other than Freedom, like say ease of use or productivity for a specific task, that I would end up with more Freedom compromises and more of what I optimized for. But I can't see how that's anything other than a Faustian bargain, especially as proprietary software has now combined with ubiquitous network connectivity to undermine Freedom 0.