Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I guess a native Python implementation would be too slow. However, there is a fantastic libtorrent library that has Python bindings and allows to implement a torrent client in Python relatively easily.

BTW, regarding the original article, there is also a MonoTorrent library for .NET. Despite the name it can be compiled by Visual Studio. The original library was abandoned a while ago and seems to be buggy, but I was able to make a very simple .NET client with WinForms UI using this fork: https://github.com/ErtyHackward/monotorrent



The bottleneck is usually network.

The original bittorrent client (before µTorrent) was actually written in Python BTW.


It's not accurate. Widely adopted client before uTorrent was Azureus and it was written in Java.


The very first torrent client written by Bram Cohen (the person who invented bittorrent) was written in Python[1].

I remember it, because 15 years ago that was the only client available. Later people started creating other clients by forking his python code, and eventually rewriting it in different languages.

[1] https://en.wikipedia.org/wiki/BitTorrent_(software)


And no one used it, you know what was before C ? You probably don't because no one used it also after that. Azureus was developed 13 years ago and that was the client that was used... I know because i remember it also. And then they (from bittorrent inc) changed their python version to C++ and called it uTorrent because python was too slow and no one wanted to use it...


Lots of people used the Python client because not everyone wanted to run Java (memory hog) or were on Windows (uTorrent). Azureus had one advantage: first to support the DHT and trackerless operation.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: