Collaborative Software For Pair Programming? 302
DavidMatuszek writes "I will be teaching Java again this Fall. Students work in pairs, but unfortunately (after the first hour) typically not physically together. I would like to find collaborative software that is (1) dead simple to use, because that's not what the course is about, and (2) free. Google Docs would do, but students will be sharing code — plain text — not RTF or HTML or Word files. Is there such software for plain text?"
Complicated Solutions Exist, So Dumb Them Down (Score:2, Interesting)
I suggest this because it's
If collaborating while writing code isn't natural to them, you should be pushing it. I'm not sure what server resources you have at your disposal. What if they have a lot of files? What if you need different permissions for each pair? I would say set up a SVN server but for each pair? And there goes complexity although I found TortoiseSVN to be very simple. It's great experience for them to work with a source control system though.
So what you should do is write a guide (or better yet, have an grad student write a guide) telling them how to share directories between each other and only each other.
If these are going to be one file projects (likely) and you don't care if everyone can see/modify everyone else's project (unlikely) why not make a Wiki with ground rules? Just put your code up on you and your partner's page and the whole history is right there.
Your other option is to go to a higher level course or your department and ask for a solution. You're in a computer science department and you're looking for a particular solution that isn't out there. Everything is too complex: cvs, git, svn, etc. So write up some basic requirements and give it to a class of grad students or someone looking for a research program. I'm thinking like a dumbed down interface to git is all that is needed to be developed. You know, like some really simple java application that points to your local directory and then server and then updates, commits or a few other basic commands? And open source it when you're done coding it
Etherpad (Score:5, Interesting)
My first assignment for your students would be .. (Score:4, Interesting)
. . . to do some research, and choose for themselves whatever suits their needs best.
If they make a good choice, they will be all smiles. If they make a bad choice, they will have learned something that they will encounter again in their careers.
Adobe Buzzword (Score:1, Interesting)
adobe buzzword
simple to use
can export it any format
Re:Just Plain Stupid (Score:3, Interesting)
Actually yes. Modern music is almost always collaborative. Sculpture is often done with more than one person. And modern theater is pretty much gotten to the point where you frequently have multiple collaborators (not to mention musical theater which has been paired pretty much since its inception).
I find that some people are not compatible with paired programming, but when it works it can be amazing. My old boss and I would write code for entire days without getting up once. Not particularly healthy, but ridiculously productive.
Re:Use subversion either hosted or your own server (Score:3, Interesting)
> I think that you're answering a different question than what the
> submitter asked.
Well, I could be, sorry if I am.
Subversion allow you to enter comment for every change you make and these comments won't go in the source code.
For the voice/text chat part, we usually just use messenger or something similar.
Also, I think this would be a great opportunity for the students to learn how to use a real-life tool instead of something they are less likely to reuse in the future.
But as you said, maybe this is not what David is looking for but I answered to the best of my knowledge ;-))
Only ssh interface. Nothing else, period. (Score:1, Interesting)
Today there's little technical reason to offer any other interface into a UNIX host than ssh. If they need some other interface, they can setup a tunnel.
FTP, telnet should be actively DISABLED. WinSCP team, shame on you for adding FTP into your otherwise fine program.
The number of "developers" I've seen who thought FTP was require when ssh was available is staggering.
Re:Just cancel pair programming (Score:3, Interesting)
I am SO glad that this stupid idea did not exist when I started learning programming.
If it had, I probably would have quit the class.
I just happen to learn better alone, just me and the machine.
I don't want to have to win a debate with another person before trying something, I just want to try it...now.
...BTW...now that I know what I'm doing, I work VERY well as a member of a team.
Re:Good grief (Score:3, Interesting)
Not that it's what this is about, as someone else has already pointed out, but getting the brighter students teaching the slower ones benefits both groups. Being able to communicate things which are obvious to you to people for whom they aren't obvious is a valuable skill.
Re:Use subversion either hosted or your own server (Score:3, Interesting)
Even if they're smart enough to hand both logins to one person and that person fakes doing work as his partner, the IP addresses would give it away if they cheated.
If the students used Remote Desktop, nobody would know. I'm posting this during my lunch break at work, but you wouldn't know it from the IP address...