

Wemux - Set up tmux for party pair programming - netherland
http://thechangelog.com/post/20986196780/wemux-multi-user-terminal-multiplexing-for-party-pair-pr

======
aantix
This is quite amazing and has been badly needed for sometime. The tmux
technical setup prior may have inhibited some developers out there.

The importance of remote pair programming seems to be slowly making its way to
the forefront. I've been toying with the idea of a high level protocol
specifically for pair programming that would support the notification of high
level programming tasks (switching tab, syncing file changes, showing
highlights, cursor movement). This protocol would be light enough that latency
should be a mine issue. It would have to be supported in all major editors
(via a plugin?). This supported would give each remote dev the freedom to work
in their favorite editor with their own key bindings.

Here are some of my additional thoughts on the topic..
<https://gist.github.com/1999816>

------
CoffeeDregs
OT, but: I'm jealous of some people's abilities to come up with such clever
names.

Full-derail: anyone seen any pointers to thinking up such names? Perhaps an
Emacs command or mode? Or am I looking for a shortcut to a hard problem?
Whatever it is, I'd appreciate it in pill-form (capsule please; none of that
nasty tablet stuff).

~~~
technomancy
I always pick my names from obscure fictional characters:
[http://www.reddit.com/r/programming/comments/hus94/the_ruby_...](http://www.reddit.com/r/programming/comments/hus94/the_ruby_world_is_nuts/c1ykx4h)

Just read lots of fiction and keep a scratch pad next to you while you do.

------
ww520
This is very cool.

Off topic. What would be really cool is to have an Emacs buffer that can be
edited by multiple people. Then pair programming can be done within the
editor. Is there such thing?

~~~
heretohelp
> What would be really cool is to have an Emacs buffer that can be edited by
> multiple people. Then pair programming can be done within the editor. Is
> there such thing?

As always with Emacs, been there, coded that:

<http://www.emacswiki.org/emacs/Rudel>

~~~
technomancy
Rudel is nice for working on a single document, but tmux is much nicer for
pair programming since it synchronizes the whole screen rather than buffer by
buffer. That way you don't have to talk through "OK, I'm switching over to
this other file now". Plus it works with things like shells and repls. So I'd
use Rudel more in a collaborative note-taking context than a programming one.

~~~
heretohelp
> but tmux is much nicer

I agree, but I was giving them what they asked for.

------
benji-york
I'm really glad remote pairing is getting such inventive attention lately. I
have, however, been a little disappointed that the mode of collaborating that
I prefer doesn't seem to be well supported.

Many people can't or don't want to grant login access to their local
development machine in order to share a screen/tmux session and using a
mutually accessible machine means leaving behind or laboriously duplicating
the local development experience.

I've used hacks to get what I want
(<https://dev.launchpad.net/yellow/RemoteTerminalBroadcasting>) but I haven't
found anything truly satisfying yet.

------
Skywing
When I see tools like this, I'm jealous of the people who actually get to put
them to good use. I program for a living, but at my current job I would be
shocked if anyone even knew what tmux was ... heck, even SSH. At home I do use
some very "cutting edge" tools, but still can't picture myself being in a
scenario, anytime soon, where Wemux solves a problem of mine. I wish I could
see myself in that scenario, though. So, who uses these tools and are you
hiring? :)

------
gvb
Very neat script. Zolrath (Matt Furden) is a member of HN:
<http://news.ycombinator.com/item?id=3772678>

------
devin
Unfortunately mosh didn't place nice with wemux, but I used it today for
several hours. Rogue mode was nice.

Thanks zolrath.

~~~
Zolrath
Mosh doesn't play nice with wemux specifically or tmux as a whole? Glad you
liked it, in any case! I'd love to hear any comments/questions/suggestions
anyone has, I'd like wemux to be as good as it can be!

~~~
altxwally
This looks great! I tried it with the default settings and could share a
sessions very easily. On the other hand I'm trying to use `wemux rogue` but I
get the following:

    
    
      wemux rogue
      unknown command: rogue
      To see a list of wemux commands enter 'wemux help'...
    

And wemux help does not list `wemux rogue` as one of the options. I installed
it by following the `brew install` process in the README.

~~~
wellle
I had the same issue while testing rogue mode. You need to do the "wemux
rogue" with a user not included in your host_list in your wemux.conf. The
available commands are different for hosts and other users.

------
silasb
Does anyone else have a horrible time getting to thechangelog.com I keep
getting errors that says their server is down :(

------
sktrdie
Doesn't GNU Screen support this out of the box?

~~~
otoburb
I believe GNU Screen supports mirror mode (read-only) and pair mode (one
shared cursor), but rogue mode (two independent cursors, shared terminal) is
the real differentiation from GNU Screen.

Great for remote teams who are heavily command-line based (developers and
deployment folks).

~~~
qznc
Can tmux give two client the same window, but different panes? This means they
can see each others cursor on another part of the window.

------
tkahn6
What theme/plugins are you using in that screenshot?

Edit: Thanks!

~~~
Zolrath
I wrote up a description of how to duplicate that status line at:
<https://github.com/zolrath/wemux/wiki/Status-Line>

Color Theme is <https://github.com/nanotech/jellybeans.vim>

