I'm glad to see Fossil mentioned here. Yet the real problem is not in the technical aspects and possibilities of project hosting migration, it's the dependence of the majority of open-source developers on GitHub's centralized social network.
For me, one of the big advantages of email (which makes it my preferred electronic communication medium) is that it does not assume immediate reaction. I can read my mail once a day, reply to the messages that need to be replied to, and forget about it until tomorrow. Having email on a phone (especially with notifications enabled) would undermine that advantage.
«60% of my fav links from 10 yrs ago are 404. I wonder if Library of Congress expects 60% of their collection to go up in smoke every decade». And the discussion that follows about how to preserve not just the bits but also their meanings: https://twitter.com/worrydream/status/478087637031325697
GUIs normally support keyboard navigation and TUIs can often use mouse. Some application may support keyboard poorly, but that would be the problem with that particular application, or GUI toolkit it uses, rather than the general GUI/TUI distinction.
Is there a conceptual difference between GUI and TUI? Same UI elements, only represented by different technical means. CLI is different, but CLI does not have to be text-only.
Interesting how some UIs appear to be limited either to education, end-user programming, or professional software development, and others (e.g. Smalltalk) strive to be universal and work as an integral part of the OS's user interface.
The sole purpose of existence of a corporation is to make money, and it would be strange to expect them to be nice and not use every opportunity for profit. Thus, enforcing ethics is a consumer responsibility: if you believe that something is bad, don't use it.
The Teredo protocol (implemented by miredo-client on GNU/Linux) provides a simple way to get a public dynamic IPv6 address on a host behind NAT. Combined with dynamic DNS this solves the problem of accessing my devices from anywhere I need to.
In Fossil the good use case is supported by using private branches: when you merge a private branch into a public branch, only the merge commit is pushed, the private branch remains private.
Windscribe.com appears to be behind Cloudflare, which means that they allow a third party to MITM https connections to their site. I would not trust their service.
I generate unique passwords using command-line tools like apg and pwgen and store them in an encrypted Emacs org-mode file [1]. Emacs can open files transparently via SSH [2], so I have easy remote access to my password store without having to rely on any external service.
A decentralized technology only works until some corporation with large advertising resources creates a proprietary centralized service around it and most people flock to their offering. E.g. Bitcoin is becoming centralized around popular online wallets, exchanges and pools; email was supposed to be decentralized, but now most people use Gmail; etc. We will not achieve full decentralization until it becomes both technological and social norm.
> Packages like Emacs 'paredit' make it even better.
Not just better — it's a leap from editing code as plain sequence of lines of characters to editing code structurally. And lisp syntax enables complete and uniform structural editing across all contexts from simple arithmetic expressions to complex top-level definitions.
What's wrong with "2013 devices"? Nexus 5 probably has more alternative OS choices than any other phone available: LineageOS (based on Android 7.1), Ubuntu Touch (UBports continuation of the project), Plasma Mobile, Sailfish, and Maru OS. And what is the real benefit of having a newer device if the old one is still very capable of running modern OSes and applications?
I used Sylpheed a lot in the past. Very fast, clean, simple and reliable. But switched to Notmuch (with Emacs UI) years ago for its great flexibility and programmability, and due to my general preference for using Emacs modes over separate applications.
On the other hand, the GNU project tries to build a coherent operating system, which means that Guile, being part of GNU, is the preferred choice of the extension language for other GNU projects. This makes it very likely for Guile to stay relevant for a long time.
I'm not a participant in the GNU project, but, as I see it, the most important thing about GNU is that they actually have ethics and culture, and that's what keeps the project relevant for decades. They hold to their principles and are able to follow their own way without succumbing to pop culture of the modern IT.
So yes, being part of the GNU project is probably more of a cultural thing than an immediate practical advantage.
Notably, they were able to achieve this performance with bytecode interpreter. Unlike other mentioned Scheme implementations, Guile does not use a native compiler (neither JIT nor AOT).
One big advantage is that this unified recursive representation of code allows structural editing. With things like Emacs's paredit you manipulate code structure directly by splitting, joining, and moving subexpressions instead of editing code as flat lines of characters.
Btw, of modern Lisp dialects, I do not like Clojure for undermining this advantage by not syntactically grouping everything that is grouped semantically (e.g. binding pairs in let) just to use less parentheses. In my opinion, Scheme syntax (Guile is a Scheme implementation) is much better.
It's not just about moving data from one provider to another. GitHub is not simply a hosting service, it's a large centralized social network, and the cost of switching from it includes reduced project visibility and disconnection from the community.
The programming community became globally dependent on a single commercial company. Using GitHub would mean contributing to that dependence and monopolization even more.
Being removed from one of many interchangeable hosting services is one thing. Being removed from the one central service that everyone around insists on using is another. GitHub, due to it's extreme popularity and centralized nature, is becoming the global gatekeeper for the programming community.