Hacker News new | ask | show | jobs
by influx 4920 days ago
I use Twisted and love it. What really helped me was reading the source code instead of trying to decipher the documentation. The code is really readable and things started clicking once I made that investment.
2 comments

If you don't mind - what did you build with it? Was Twisted the only suitable library - what about Tornado?

I'm curious because Twisted has been around for ages and seems to be in active development but I've never talked to anyone who actually uses it.

It is my understanding that Spotify is (or at least was, when I saw their presentation), pretty much a Giant Twisted App with some C++ for parts that were too slow.

Lucasfilm, justin.tv, Launchpad and TweetDeck are some of the larger names you may have heard of. A bunch of smaller startups do too.

If you've been doing XMPP you've probably used a Twisted server (it's either that or ejabberd, mostly) at some point.

If you want Tornado, why not use Cyclone? It's a port (to Twisted) of Tornado; you get to write webby parts just like tornado's and you get the benefit of all of Twisted when you need it.

FWIW, I did the Twisted Help Desk and co-hosted the Twisted tutorial two years in a row now at EuroPython, and two years in a row that tutorial has had to move to a bigger room. Asking around showed a large portion of people were there because there place of work was either using or considering using Twisted. I never cease to be surprised by the stories I hear of people using Twisted to great success for pretty nifty applications.

I've used twisted in a quite a few production projects. One of them was for the management interface of a wireless switch. The best part about twisted is that it comes with about two dozen client and server implementations for various standard protocols. At another one of my previous gigs, we were using Cyclone (the twisted port of Tornado) for a document management system. Eventually, the customers wanted the ability to upload documents via (S)FTP using the same credentials their users used for the web based system. With I was able to code something up in about an hours time. I believe it wouldn't have been that easy if we weren't using twisted.
Unfortunately, I think my employer's NDA prevents me from talking about most of what I've developed. I will say that one of the projects I used combined IRC, SMTP, and HTTP together in one server. Twisted made that incredibly easy to write, and be performant. AFAIK, Tornado is HTTP only at this point.
> What really helped me was reading the source code instead of trying to decipher the documentation.

That's an awful excuse. People rely on libraries in order to do their jobs. A "worse" library with better documentation helps more people.