unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Jean Louis <bugs@gnu.support>
To: Ergus <spacibba@aol.com>
Cc: Qiantan Hong <qhong@mit.edu>, Fermin <fmfs@posteo.net>,
	Caio Henrique <caiohcs0@gmail.com>,
	Noam Postavsky <npostavs@gmail.com>,
	Emacs developers <emacs-devel@gnu.org>,
	Karl Fogel <kfogel@red-bean.com>,
	Stefan Monnier <monnier@iro.umontreal.ca>,
	Eli Zaretskii <eliz@gnu.org>
Subject: Re: Question collaborative editing - Wikipedia reference
Date: Tue, 20 Oct 2020 21:21:49 +0300	[thread overview]
Message-ID: <20201020182149.GC6994@t400> (raw)
In-Reply-To: <20201020161557.trl2ehuvcqotag4l@Ergus>

* Ergus <spacibba@aol.com> [2020-10-20 19:16]:
> > If user have Emacs with public IP address, all such user need to do is
> > to tell the IP address and port and password to the collaborator, they
> > can already connect.
> > 
> > If user do not have public IP address but user is behind the router,
> > then such user who connects over network or administrator who is
> > helping users to connect over the network is assumed to have
> > sufficient knowledge how to click few times or setup router to port
> > forward from local network to public network.
> > 
> > If user has VPS or dedicated server, then such can use ssh to port
> > forward to the public server, or can use permanent VPN to connect to
> > other collaborators which is anyway best setup. When I say permanent
> > VPN, I mean "private" network and not VPN through third parties.
> > 
> > To use VPS, today it is about $5 or less, expenses are not high.
> > 
> > And let us not forget that there are many organizations where such
> > collaborative simultaneous editing can take place who need not have
> > any Internet connection, they may have their hotspots for local
> > network or ethernet wire networks.

> Not all the users have the skills/knowledge to do this. Even if they do,
> the most frequent is that they don't have the privileges for that in
> their network/work/home/ISP to open a port or so. Users with real IP are
> not common these days.

I am comparing it with Gobby collaborative editor, it works, but it
does not say how to connect. Person who invites others to connect, I
am assuming, will learn how to do it.

With Qiantan we connected together and I was using ssh connection to
VPS.

> VPS is an option... but do you really think that most users can/want to
> create a virtual machine create a VPS + VPN and so just to edit a
> document?... actually in some countries (like mine) the common VPS
> services are blocked too...

You mean VPN services are blocked. As VPS is just virtual machine running.

I think that collaborative editing is first very usable in local area
networks, then over Internet. We have to keep in mind that Emacs is
installed on multi user computers. The daemon and client model are
already well done and I somehow think that multiple users connecting
through network to same computer could use emacsclient model to
collaborate. It is just not handy or very secure.

Now we have crdt.el and it can be used well in local area network. If
that is so, users already have IP address.

If it is not so, at least one of them has to have IP address exposed
to Internet that can expose also the server ports.

In gaming world this is very common, even children learn today how to
expose or forward ports from inside to the router, and they host
gaming servers.

> Not Tor. Tor is an onion infrastructure I was referring to the user
> connections. I explicitly said p2p so, direct communication without
> needing an permanent intermediate server.
> 
> Many ISP don't allow you to connect directly or open ports to your
> home. Some networks have fireworks. Some of them even change your IP
> every some hours that's why services like noip need a program to ping
> frequently with updated information.

That is all true. Though it will not prevent those who wish to collaborate.

If you have particular need, you can tell me, and I may tell you how
to connect. 

> I understand that crdt.el does a good work for local networks, but to
> extend it ever internet your solutions are very limited.

ssh today is very common, all VPS providers teach people how to
connect with SSH and it is not hard. I have enabled TCP forwarding and
GatewayPorts on server, and I could -R
LOCALPORT:my.example.com:REMOTE-PORT my.example.com already forward
the ports to Qiantan, and he could connect.

How people connect is quite different subject, that must be left to
people to decide, crdt.el cannot do much about it.

There are free shell accounts too.

> There is
> something else needed and what you explained is exactly the kind of
> things I won't recommend/suggest to any user to do (create a virtual
> machine, install a vpn, create it, open a port in your router, get an
> ISP with fix IP...). It is almost like open a tmux session over
> ssh... will be simpler.

I know my friend in Tacoma, WA, they connect over Wi-Fi to Internet,
then they collaborate on Google, that is why I favour collaboration in
Emacs, that I can offer him fully free software as solution.

You can be connected by local area network, or through wireless local
area network, through VPN, through SSH, by using public IP of one of
the participants, anything is possible.

My suggestions are examples. If you have particular need, you may tell
me, I can analyse it and give you few solutions how to connect. 

> Specially with the inexpert users in mind... they can edit easily with
> many other tools these days (either documents or code). So the idea is
> to offer something "competitive"... not to challenge their skills and
> make collaborative editing like a final lever of a complex videogame...

What Gobby editor did for years, now is possible on Emacs. We have
simultaneous real-time collaborative editing feature as free software.
If it is competitive or not, why? We do not have yet users' requests
to know what it has to be competitive. Qiantan is doing good job and
have enabled all general options, soon it will be finished.

Give me some examples, to what exactly would crdt.el need to be competitive?

What I can think of is that somebody can provide service of Emacs
collaboration, that would not be hard to do. I would make simple HTML
interface, users could launch their session and server would start on
specific port and by specific session name, and other users could
connect.

It is similar like Jitsi, everybody can connect on video call with
Jitsi, and somebody is providing a server. If people want they can
host it themselves.

> > > > 3) The other workflow (create a local server for others) is the
> > > > "simplest" approach at the moment. But that is a problem for many use
> > > > cases due to dynamic ip addreses, firewalls, opening ports and so on. It
> > > > is fine for a class room or company, but not for working from  home.
> > 
> > All solutions for that already exists, see above.
> > 
> What you mention are not solutions... just workarounds and their
> complexity (and requirements of skills) just show that some extra work
> is needed to easy the user experience...

OK you tell me your particular case problem and I will tell you how to connect.




  parent reply	other threads:[~2020-10-20 18:21 UTC|newest]

Thread overview: 151+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20200921120518.35d56p747pr5mhta.ref@Ergus>
2020-09-21 12:05 ` Question collaborative editing Ergus
2020-09-21 13:35   ` Stefan Monnier
2020-09-21 16:24     ` Ergus
2020-09-21 20:25     ` Karl Fogel
2020-09-24  1:36       ` Ergus
2020-09-24 21:41         ` Fermin
2020-09-25  0:22           ` Ergus
2020-09-25 10:34             ` Fermin
2020-09-26 16:33               ` Ergus
2020-09-29 16:01                 ` Qiantan Hong
2020-09-29 21:46                   ` Ergus
2020-09-30  9:52                     ` Jean Louis
2020-09-28  0:43               ` Ergus
2020-09-29  0:00                 ` Fermin
2020-09-29  1:01                   ` Noam Postavsky
2020-09-29  8:25                     ` Jean Louis
2020-09-29 12:45                       ` Ergus
2020-09-29 15:58                         ` Qiantan Hong
2020-09-29 16:29                           ` Stefan Monnier
2020-09-29 16:33                             ` Qiantan Hong
2020-10-27  5:10                             ` Qiantan Hong
2020-10-27 12:46                               ` Jean Louis
2020-09-29 17:35                         ` Karl Fogel
2020-09-29 21:58                           ` Ergus
2020-09-29 23:40                             ` Qiantan Hong
2020-09-30  0:13                               ` Ergus
2020-09-30  0:47                                 ` Qiantan Hong
2020-09-30  7:40                                 ` Karl Fogel
2020-09-30 13:19                                   ` Ergus
2020-09-30 17:00                                     ` Karl Fogel
2020-10-02 18:48                                     ` Emacs + Etherpad compatibility? (was: Question collaborative editing.) Karl Fogel
2020-10-02 20:34                                       ` Emacs + Etherpad compatibility? Stefan Monnier
2020-10-03 10:01                                         ` Michael Albinus
2020-09-30 13:46                                 ` Question collaborative editing Eli Zaretskii
2020-09-30 13:43                               ` Eli Zaretskii
2020-09-30 15:47                                 ` Qiantan Hong
2020-09-30 16:19                                   ` Eli Zaretskii
2020-09-30 17:00                                     ` Qiantan Hong
2020-09-30 17:04                                       ` Qiantan Hong
2020-09-30 17:20                                         ` Eli Zaretskii
2020-09-30 17:48                                           ` Qiantan Hong
2020-09-30 18:08                                             ` Eli Zaretskii
2020-09-30 23:11                                               ` Ergus
2020-10-01 13:40                                                 ` Eli Zaretskii
2020-10-01 15:21                                                   ` Qiantan Hong
2020-10-01 23:10                                                     ` Karl Fogel
2020-10-01 15:55                                                   ` Ergus
2020-09-30 17:08                                       ` Stefan Monnier
2020-10-01 14:11                                     ` Jean Louis
2020-10-01 16:01                                       ` Ergus
2020-10-01 16:44                                         ` Pankaj Jangid
2020-10-01 16:53                                           ` Ergus
2020-10-01 17:29                                             ` Yuri Khan
2020-10-02  3:00                                               ` Pankaj Jangid
2020-10-02  7:30                                             ` Michael Albinus
2020-10-02  7:35                                               ` Eli Zaretskii
2020-10-02 10:01                                               ` Pankaj Jangid
2020-10-02 11:33                                               ` Ergus
2020-10-02 12:13                                                 ` Michael Albinus
2020-10-04 17:54                                           ` Question collaborative editing - Wikipedia reference Jean Louis
2020-10-04 18:45                                             ` Caio Henrique
2020-10-04 19:48                                               ` Jean Louis
2020-10-04 23:59                                                 ` Qiantan Hong
2020-10-05  0:05                                                   ` Qiantan Hong
2020-10-05  1:08                                                     ` Karl Fogel
2020-10-05  4:40                                                     ` Karl Fogel
2020-10-05  5:48                                                       ` Jean Louis
2020-10-05  6:18                                                         ` Qiantan Hong
     [not found]                                                           ` <EC602765-9F1A-4269-9F2E-4F05C50AE1E7@mit.edu>
2020-10-05  8:07                                                             ` crdt.el collaborative real time editing for Emacs Jean Louis
2020-10-05  8:22                                                               ` Qiantan Hong
2020-10-05 14:03                                                                 ` Jean Louis
2020-10-05 17:05                                                                   ` Qiantan Hong
2020-10-05 18:17                                                                     ` Jean Louis
2020-10-05 14:11                                                                 ` Jean Louis
2020-10-05  9:39                                                               ` Eli Zaretskii
2020-10-05  8:51                                                           ` Jean Louis
2020-10-05  3:53                                                   ` crdt.el - collaborative " Jean Louis
2020-10-05  4:02                                                   ` Question collaborative editing - Wikipedia reference Jean Louis
2020-10-05  4:11                                                     ` Qiantan Hong
2020-10-05  5:34                                                       ` Jean Louis
2020-10-05  5:58                                                       ` Eli Zaretskii
2020-10-05  6:15                                                     ` Stefan Monnier
2020-10-05  6:51                                                       ` Eli Zaretskii
2020-10-05  7:31                                                         ` Ergus via Emacs development discussions.
2020-10-05  8:44                                                       ` Jean Louis
2020-10-05 13:20                                                         ` Stefan Monnier
2020-10-05 17:20                                                           ` Karl Fogel
2020-10-06  1:03                                                             ` Qiantan Hong
2020-10-06  1:41                                                               ` T.V Raman
2020-10-06  8:52                                                               ` Jean Louis
2020-10-06 17:32                                                               ` Jean Louis
2020-10-20 16:15                                                                 ` Ergus
2020-10-20 17:11                                                                   ` Qiantan Hong
2020-10-20 18:51                                                                     ` Jean Louis
2020-10-26 20:36                                                                       ` Qiantan Hong
2020-10-27 21:54                                                                         ` Mathias Dahl
2020-10-27 22:45                                                                           ` Qiantan Hong
2020-10-29 16:21                                                                             ` Ergus
2020-10-28 16:29                                                                         ` Question collaborative editing - tools to connect Jean Louis
2020-10-28 16:40                                                                           ` Qiantan Hong
2020-10-28 17:13                                                                             ` Question collaborative editing - crdt.el, does it use SSL? Jean Louis
2020-10-28 21:51                                                                               ` Qiantan Hong
2020-10-28 22:36                                                                                 ` Jean Louis
2020-10-28 23:08                                                                                   ` Qiantan Hong
2020-10-29  5:43                                                                                     ` Jean Louis
2020-11-02  9:47                                                                                       ` Robert Pluim
2020-11-02 10:02                                                                                         ` Jean Louis
2020-10-28 17:20                                                                             ` Question collaborative editing - torify emacs Jean Louis
2020-10-28 18:01                                                                               ` Qiantan Hong
2020-10-28 18:56                                                                                 ` Jean Louis
2020-10-29  4:57                                                                             ` Question collaborative editing - tools to connect Richard Stallman
2020-10-31  4:16                                                                           ` Qiantan Hong
2020-10-31  5:33                                                                             ` Jean Louis
2020-10-20 18:21                                                                   ` Jean Louis [this message]
2020-10-06 18:20                                                               ` Question collaborative editing - Wikipedia reference Karl Fogel
2020-10-07  0:00                                                                 ` Qiantan Hong
2020-10-09  1:50                                                                   ` Yuan Fu
2020-10-09  1:58                                                                   ` Yuan Fu
2020-10-09  2:12                                                                     ` Qiantan Hong
2020-10-09  2:42                                                                       ` Yuan Fu
2020-10-09  7:04                                                                         ` Qiantan Hong
2020-10-09  8:36                                                                           ` joakim
2020-10-09 13:33                                                                             ` Joe Corneli
2020-10-09 15:33                                                                               ` Qiantan Hong
2020-10-11 17:49                                                                               ` Qiantan Hong
2020-10-11 18:21                                                                                 ` Eli Zaretskii
2020-10-11 18:26                                                                                   ` Qiantan Hong
2020-10-11 18:56                                                                                     ` Eli Zaretskii
2020-10-11 19:57                                                                                       ` Qiantan Hong
2020-10-12  2:26                                                                                         ` Eli Zaretskii
2020-10-12  3:22                                                                                           ` Qiantan Hong
2020-10-12 14:40                                                                                             ` Eli Zaretskii
2020-10-12 16:53                                                                                               ` Qiantan Hong
2020-10-13 13:31                                                                                                 ` Yuan Fu
2020-10-11 18:40                                                                                 ` Joe Corneli via Emacs development discussions.
2020-10-09 17:46                                                                           ` Jean Louis
2020-10-09 17:50                                                                             ` Qiantan Hong
2020-10-09 20:31                                                                           ` Karl Fogel
2020-10-10 17:09                                                                             ` Qiantan Hong
2020-10-09  7:09                                                                         ` Qiantan Hong
2020-10-05  5:50                                                   ` Eli Zaretskii
2020-10-05  3:10                                               ` Richard Stallman
2020-10-20 16:37                                             ` Aurélien Aptel
2020-10-20 18:41                                               ` Jean Louis
2020-10-26 19:47                                                 ` Eli Zaretskii
2020-10-26 20:26                                                   ` too many Jean Louis
2020-10-28  4:45                                                   ` Question collaborative editing - Wikipedia reference Richard Stallman
2020-10-28 15:08                                                     ` Eli Zaretskii
2020-10-28 16:20                                                       ` Jean Louis
2020-10-28 16:33                                                         ` Eli Zaretskii
2020-10-28 16:59                                                           ` Jean Louis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201020182149.GC6994@t400 \
    --to=bugs@gnu.support \
    --cc=caiohcs0@gmail.com \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=fmfs@posteo.net \
    --cc=kfogel@red-bean.com \
    --cc=monnier@iro.umontreal.ca \
    --cc=npostavs@gmail.com \
    --cc=qhong@mit.edu \
    --cc=spacibba@aol.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).