Press Room

Press Release: November 17, 2005

Twisted Network Programming Essentials: Event-Driven Network Programming with Python Made Easy

Sebastopol, CA--There are a lot of network tasks that developers may have on their wish lists for projects, but never seriously consider because of the amount of work involved to pull them off--tasks such as giving an application an embedded SSH server for administration, or writing a custom IMAP server. "You might think it would be helpful to write your own IMAP server, but then you look at the IMAP spec and you think about the months it would take just to get your app speaking the IMAP protocol, and you say 'forget it,'" says Abe Fettig, a software developer who specializes in network communication and integration. For Fettig, the answer to this problem was found in Twisted, an open source network-application written in Python. Says Fettig, "With Twisted you can write SSH and IMAP servers, and lots of other things, because all the heavy lifting has been done for you."

According to Fettig, Twisted makes it possible to do what you may have thought impossible. "Twisted is unique in that it offers high-level interfaces for network communications, while being powerful enough that you won't outgrow it. Like Python itself, it hides the nasty low-level details without feeling dumbed down," notes Fettig. The secret then to mastering this powerful programming tool is his new book, Twisted Network Programming Essentials (O'Reilly, US $29.95). One of Twisted's great strengths is its comprehensive support for a wide range of protocols. With Twisted, developers can focus on what they want to do and on the applications they want to deliver, without having to implement the underlying network protocols.

Networked applications are the present and future of programming according to Fettig, and with Twisted, developers can set themselves up for success in these areas. "Developers are building apps that use the web, email, instant messaging, usenet, file sharing, VoIP, etc.," Fettig says. "It's going to become increasingly important for applications to communicate with other services on the Internet and to handle multiple concurrent network connections gracefully. Twisted has the features that you need (even if you don't know you need them yet), and it's flexible enough that you'll be able to adapt quickly. The requirements for Internet apps are going to become increasingly sophisticated as time goes on, so it's good to use a framework that gives you lots of headroom."

In Twisted Network Programming Essentials readers learn how to:

  • Use the twisted.web.client module to access web pages and web services via HTTP
  • Email-enable applications, using Twisted to send and receive email via POP3, IMAP, and SMTP
  • Develop web services using Twisted's support for XML-RPC and SOAP
  • Use the twisted.conch package to write custom SSH servers and clients
  • Secure network applications using the twisted.cred authentication package
  • "I've been using Twisted since 2002 for various projects. During that time, I'd learned that Twisted is chock full of amazing, powerful features, but that there wasn't any way to discover these features other than reading the source code yourself (or, if you were lucky, finding an old post on the mailing list)," says Fettig. "It was a shame that the Twisted developers had done all this great work and made it open source, but that people were having a hard time discovering and using it. So a lot of people, including myself, wanted to see a printed Twisted book."

    Perhaps Matthew "the Glyph" Lefkowitz, creator of Twisted, says it best in his foreword to the book, "As the Twisted project's originator and nominal leader--and as someone who is not being paid for writing this--I can very honestly say that this is a fine book, and it has made me proud of what I've started."

    Additional Resources:

    Twisted Network Programming Essentials
    Abe Fettig
    ISBN: 0-596-10032-9, 213 pages, $29.95 US
    1-800-998-9938; 1-707-827-7000

    About O'Reilly

    For almost 40 years, O’Reilly Media has provided technology and business training, knowledge, and insight to help companies succeed. Our unique network of experts and innovators share their knowledge and expertise through the company’s Safari training and learning platform and at O’Reilly conferences. As a SaaS learning platform, Safari delivers highly topical and comprehensive technology and business learning solutions to millions of users across enterprise, consumer, and university channels. For more information visit

    Return to: O'Reilly Press Room

    Press Contacts

    Media Relations – Corporate & North America

    Fama PR

    Media Relations – Japan

    Fumi Yamakawa
    +81 3-3356-5227

    Media Relations – United Kingdom

    Helen Codling
    +44 (0) 1252 721284