BitTorrent is not that complicated -- install μTorrent, drop your files into the "Drop to share" box, email the short URL. Chances of the recipient not having a BitTorrent client are small, and it's much simpler than direct IP transfers where you actually have to type cryptic IP addresses and TCP ports. (And if you do away with TCP and transfer directly over IP, congrats, you now have to reinvent a whole protocol of flow control and retransmitting lost packets.)
–
grawityMay 17 '12 at 10:39

@grawity I know that BitTorrent is not that complicated. But way to complicated for a person that isn't as good with PCs. Look at the answer I marked as solution. That's what I call a self-explanatory program. (Except it would be better if it displayed the current IP-adress).
–
ProfpatschMay 17 '12 at 13:10

I've used SSFT, and I'd say that "Enter IP address:" is hardly self-explanatory from an average human's perspective, especially when compared to "Tell your friend to open http://blah/blah in a browser" as shown by uTorrent. Everyone knows http://, but what the hell is an IP address? (Especially because it cannot display the current IP address, as often there is no "the" IP address: most PCs behind a NAT have at least two.)
–
grawityMay 17 '12 at 13:27

The main problem is that most people are behind NAT routers, which make it difficult to initiate an inbound connection. Quite a lot of ISPs don't allow inbound connections; it's a common restriction on mobile devices.

There is also the issue that, for most people, this would be a malware vector quite quickly.

While it does not exactly allow the way you described, I like HFS - HTTP File Server (for Windows, also works in Wine) for exchanging files. Big pro is that only one side needs the server, the other one can use any web browser.

You know, that's exactly the thing I do not want. Why would you need a server to transfer files? It just doesn't make sense...
–
ProfpatschMay 17 '12 at 10:36

@Profpatsch: Because that's how the internet works: clients connect to servers. Whether it is HTTP or "plain IP" as in your original description, your computer would still be running a server which waits for connections from a client.
–
grawityMay 17 '12 at 10:43

1

You need some software anyway, so where is the problem this one has "server" in it's name? The software you described would also have a server component (accepting inbound connections) and would require both sides to use it. So you could also ask why both sides would have to use this software. IMHO this does not make sense.
–
Gurken PapstMay 17 '12 at 10:44

I was put off by the "server" and thought you'd need webspace for it. Now I see that's not true.
–
ProfpatschMay 17 '12 at 11:20