[jdev] GAIM-Integrated Filesharing
Euseval at aol.com
Euseval at aol.com
Thu Nov 11 15:36:19 CST 2004
GAIM-Integrated Filesharing
Jail for filesharers is ridiculous. We need to stop it.
The lawsuits aren't enough. The major record labels are literally trying to send people to prison for sharing music, and a new bill in Congress right now would let them. We can't let that happen-- it is a completely, utterly, unacceptable political tactic. We've written a detailed write-up for a simple, new approach to filesharing that could make the major labels' tactics useless. It would let you search, browse, and share files with your friends in your IM program. It would be simple, natural, and completely secure from outside snooping.
The Future of Filesharing
And secure, private filesharing isn't just important for keeping kids out of jail, it's also key to the future of filesharing. The most exciting uses of peer-to-peer technology are still in many ways on the horizon. Content created by individuals, shared by individuals will finally have it's day when the distribution network is perfected. But filesharing, which is the key to making this possible, is being intentionally tainted by the RIAA. Blocking their efforts to destroy the technology is key to taking it to the next level.
Share with friends of friends
Your friends aren't the RIAA. Their friends aren't the RIAA. But just sharing in this small circle you're sharing with hundreds of people. With this software there would be no need to worry about security, so everyone could share their entire library.
Downloads are direct, fast
Anonymous networks like MUTE or Freenet work by passing files around from user to user. The problem is, this gets really slow. But when you're sharing with people you trust, all downloads can happen directly.
Invite friends right from your buddy list
If trusted filesharing isn't integrated with IM, it's just not going to work. Who wants to have to manually exchange IP addresses or encryption keys? Our plan builds trusted filesharing into the ad-free chat client GAIM. That way-- whether you use AIM, MSN, Yahoo, or Jabber--when you start up the first time, all your buddies are right there, and you can invite them into the network.
Secure filesharing for everyone
Making a program that only geeks can use won't cut it. The goal, after all, is to keep people out of jail. What's great about integrating filesharing into an IM client is that the interface will be familiar and non-threatening to everyone. And the interface itself explains the security advantages of the program in simple terms: you share with friends.
Details of the Proposed Software
We propose an extension to the GAIM chat client that lets users do gnutella-style search & download filesharing, where search requests propagate out to trusted buddies, buddies of buddies, etc. This approach has serveral advantages. First, people will be more altruistic sharing with friends and won't be as worried about RIAA/MPAA lawsuits. At the same time, because they can share with friends-of-friends, and friends-of-friends-of-friends, they'll often be searching a very huge library. This software will be just as simple as an IM client, and it will be easy for people to invite friends (so it spreads virally). No other piece of filesharing software is this well positioned to become hugely popular with the average, not-so-knowledgeable, Windows user. As a bonus, it will convert many users to using the open-source and ad-free client GAIM--a good thing in itself. The immediate goal is creating a working version that is extremely simple but very modular and easy to modify or expand upon.
What's so great about IM-integrated, trusted p2p
Trusted p2p is a relatively new thing. Up until now, filesharing has happened on massive open networks, on small darknets where everyone shares with everyone, or on slow, freenet-style networks where files themselves must pass through several users. Trusted p2p is different from all of these: you only share with your friends and friends of your friends, and downloads happen directly between the person who has the file and the person who wants it (so it's fast). This way you share with large, overlapping webs of people, all of whom you have a reason to trust. IM integration is the key to making all the friend-management easy for the user, and to making sure the software gets popular.
Here are some of the many advantages that come out of this project:
Social component makes it much popular, efficient
1. People are more altruistic sharing with friends
2. People more comfortable sharing with friends
3. People leave their IM clients on all the time, and they would leave this on all the time too
4. Spreads virally, because it's very easy to invite buddies --THIS IS HUGE
5. Friends often have similar taste (searches more efficient)
6. Browsing friends' collections of files is more interesting
It's secure
People only share with friends. The software urges people to only share with friends they've met face to face. Obviously, some people might not do this, and it might be possible for enforcers to insinuate their way in. But individuals who care about security can get their friends to care about security too. The system ends up being much more secure as a result.
It's good for F/OSS software
1. Everyone should already be using GAIM
2. This will get a lot more people using GAIM (the "network effect" from this critical mass is important for features like file transfer and voice conference where there isn't interoperability with proprietary clients).
3. The more people use apps that also work on the linux platform, the more comfy they are switching to linux.
The Goal for 1.0
The goal is simple. We need a version that
1. works for simple, search and download filesharing
2. capitalizes on the familiarity of the IM interface
3. is easy to set up
4. encourages practices that lead to security
5. virally builds its user base
6. is a strong enough foundation to add advanced features and to support the rapid development necessary to adapt to changing conditions.
Simple, search and download filesharing
The feature set just needs to compare to the average filesharing client.
Features:
1. search & download
2. download works when one user is firewalled
3. download all files contained in folder (like in Soulseek, a good social tool to encourage full-album sharing)
4. user browse (you can browse files on a tree'd list of buddies)
Probably the best way to do this is for all buddies to determine their own IP addresses and then send them to each other, and handle all the searching outside of the IM network.
Familiar Interface
The IM interface is super-familiar to tons of people. The simpler we can make this, the less intimidating the program will be.
* easy one-time setup (see below)
* there's a simple button that says "search friends' files" or "search"
* opens up a tab just like when you talk to a new user.
* text-entry field becomes "search" field, chat window becomes list of search results
* click to download
* transfers tab opens by default. when closed, a button appears to show it again.
* right clicking on a user gives the option "share files with user" if they are known to be using the client, and "invite" if they are not.
As you can see, we've added filesharing functionality without increasing the complexity of the interface.
Easy set up
* first time user clicks "search" button.
1. window explains how the software works (share with friends)
2. software creates group of buddies.
3. shows list of buddies and user can decide who to invite
4. user can easily invite buddies to group during normal operation (right click on buddy lists "invite" option)
o buddy gets sent a link to download the program
o invitee instantly gets joined to users' buddy list once they sign on, and vice versa.
5. user picks folders to share.
Security
The software urges people to not invite buddies that they did not know on a medium-term, face-to-face basis. You could also allow certain people to share your files without letting their friends share your files.
update checker - software will prompt user to update it when new versions are available so users won't get stuck with an insecure or broken version.
Spreads virally
Integration with IM will make it extremely easy for this software to spread in popularity.
* user can easily invite buddies to group during normal operation (right click on buddy lists "invite" option)
* buddy gets sent a link to download the program
* invitee instantly gets joined to users' buddy list once they sign on, and vice versa.
Possible future features
* Firewalls
o software coaches people on how to get around firewalls
o people can optionally set their computer to be a proxy for firewalled friends.
* all communication that happens through IM can be coded in normal English
* multi-source downloads
* drop box functionality where users can have drop boxes and friends can push content to their buddies' drop boxes.
* content feeds - allow users to subscribe to feeds, where files come in from trusted friends-of-friends (sort of like a trusted bittorrent).
* request list - allow people to broadcast requested files to friends and friends of friends. A requested CD, for example, could be ripped and then shared.
* integrates with giFT, both ways
o as a daemon - people can use another interface to share across this network.
o as an interface - people can use the IM interface to search (and share, if they want) on gnutella, OpenFT, etc
Make This Software Happen Now
We're in a race to get this done. Think about how you felt when they started suing people. Now think how you're going to feel when they send somebody to jail. We have to stop this from happening. We need two things to get this software made: a fast, skilled lead developer and money to pay her or him. We want to offer a $500 bounty to the programmer that can do this. Help us:
1. Give Money
The sooner you give, the sooner the software will exist for you and everyone else. We are taking donations via PayPal and 100% of what you give will go directly to the programmer. Downhill Battle has a solid track record of getting projects out the door, and we are going to make this happen.
Goal: $500
Raised as of Nov 11, 2pm: $101
(Note: You do not need to create a paypal account to donate with a credit card.)
2. Program It
If you are a programmer and know that you have the time and ability to do this quickly, please send an email to labs|at|downhillbattle.org. Briefly tell us your experience and why you would be a good choice for this project.
The resulting software will be free and open-source, released under the GPL. We will make a sourceforge page and developer mailing list for this project very shortly. Downhill Battle is also in the midst of developing a simplified Bit Torrent client called Blog Torrent. A beta for developers could be released in the next few days.
http://downhillbattle.org/labs/gaim_filesharing_plugin/
More information about the JDev
mailing list