Twisted Introduction

Update: Aug 22nd, 2010
  1. Julius
    Dec 10th, 2009 at 07:17
    Reply | Quote | #1

    the index link on this page:

    http://krondo.com/blog/?p=1825

    links back to your main page, and not to the index.

    great tutorial btw :)

    • dave
      Dec 10th, 2009 at 19:40
      Reply | Quote | #2

      Ah, wordpress cut-n-paste gets me again! Thanks :)

  2. rt
    Mar 24th, 2010 at 08:34
    Reply | Quote | #3

    Hi, Dave. Do you mind if i’l translate this twisted intro to russian and publish it?

    • dave
      Mar 24th, 2010 at 20:00
      Reply | Quote | #4

      I don’t mind at all, be my guest! Be sure to send me the link :)

      • rt
        Mar 25th, 2010 at 10:05
        Reply | Quote | #5

        Thank you! I will!

  3. Ed
    Apr 7th, 2010 at 23:19
    Reply | Quote | #6

    Hello Dave,
    I find your intro on Twisted to be the best I have found to date, clear and covers important details that support a real understanding of Twisted. I would like to ask if in the future you have any plans for other Twisted tutorials. Just for an example tutorial; as the intro above couldn’t cover some deep areas of Twisted, I was thinking a multiple part (over time) tutorial that each covers say different abstractions. I would love to support you and the work you do in making Twisted a learning joy for me, a first time. Please let me know if any money I can send that will help.

    Ed.

    • dave
      Apr 7th, 2010 at 23:33
      Reply | Quote | #7

      Hey Ed, thanks for the kind words! I appreciate your offer, but I’m happy to make this tutorial a labor of love. I plan to have a few more parts in this series and then take a break for a while. It’s hard work :) I’m not sure whether I’m going to write more Twisted tutorials after that, but if you make it through the end of mine, then I think you’ll be well prepared to dive into the main documentation of Twisted itself. Also, Jp Calderone has a lengthy series that goes into the details of the Twisted Web framework over here.

  4. Ed
    Apr 8th, 2010 at 05:28
    Reply | Quote | #8

    Thanks Dave, just thinking such work a labor of love …wow.
    I did look over the link you gave, and like it. Dave you take care, and I look forward to the parts you plan to add here, as I’m learning Twisted to build a larger tool set in python and your tutorial has been a great help in that direction.

    Ed.

  5. Ed
    Apr 12th, 2010 at 20:52

    Hello, I understand this is not an interactive tutorial, if I may ask a question please. I find in part 5 something that I wish to understand; the word “buildFactory” has had me scratch my head because I can’t seem to find it mentioned anywhere I have looked as portocol interfaces and others, along with the tutorial pages 4 and 6. Also, have not found a reference to it on web searches I have done too. Where do I find it or do I just lack some background in Twisted I need.

    Ed.
    Thank you.

    • dave
      Apr 12th, 2010 at 21:07

      Hey Ed, you found a typo! That should have been buildProtocol. I’ve fixed the text of Part 5, thanks for the close reading!

  6. Ed
    Apr 12th, 2010 at 21:38

    Dave,

    thank you for the help.

    Ed.

  7. Jo
    Apr 22nd, 2010 at 04:33

    Great intro!

    Would be nice, if you could release the whole serie as a pdf.

    Jo.

    • dave
      Apr 22nd, 2010 at 18:29

      Thanks! Once I finish the series, I’ll look into possibilities there.

  8. Shigeru
    Jun 3rd, 2010 at 07:37

    Thanks Dave for your excellent work!
    I’m working on translating this series into Japanese. I’ve finished around part5.
    Is it okay to keep publishing them in my space?
    http://skitazaki.appspot.com/translation/twisted-intro-ja/index.html

    • dave
      Jun 3rd, 2010 at 18:47

      Absolutely! I put a link to your site on the index page above. Thanks for doing that.

    • dave
      Jun 3rd, 2010 at 19:21

      Also, could you tell me your full name, so I can mention you with the link?

      • Shigeru
        Jun 3rd, 2010 at 20:02

        Thank you very much. My name is Shigeru Kitazaki.

  9. timgluz
    Jul 9th, 2010 at 06:40

    Hi!

    Thanks for hard work, i read all articles and my head-ache is gone :D
    Even twisted book,that i lent from library of uni, was too hard to understand at the beginning, but no more…

    Btw, if anyone want pdf format – you can download it from my google docs: https://docs.google.com/fileview?id=1kKQM0G6CvqU3BZKG9pyc2h37oZpdUjC7vG9JWA0Bk9ba42e5ZpKyZpp8T2dc&hl=en&authkey=CJThyr8L

    And at the moment i’m working on estonian translation.

    • dave
      Jul 9th, 2010 at 18:36

      Glad it was helpful for you! And thanks for the pdf, can you tell me how to go about doing that?
      Send me the link to your translation and I’ll put it on the main index page.

  10. jitendra
    Jul 14th, 2010 at 02:39

    Hi timgluz,
    can you tell how to download your pdf…it is asking for username/passwd when I click on the above link.

    thanx

  11. bino
    Aug 31st, 2010 at 08:20

    Dear Dave
    I’m sure your writeup is a great source of knowledge.

    But caused by the lame of my brain, I fail to understand how to adopt it to my problem.

    I need to write application that :
    1. Have to services in it:
    1.a. a TCP server (just like a basic echo server)
    1.b. an XMPP-Client/bot
    2. Every msg come from XMPP-server, will wrote to StdOut (it’ll be extended inthe future)
    3. Every msg received by TCP-server part, will be forwarded by the xmpp-client to XMPP-server.

    I post my code at pastebin:
    1. echobot.py : http://pastebin.com/Mn4bRvCb
    2. echobot.tac : http://pastebin.com/BgjMKiMC
    3. the occured error : http://pastebin.com/6Rdge4L5

    Kindly please give me any enlightment.

    Sincerely
    -bino-

    • dave
      Aug 31st, 2010 at 19:02

      Hey bino, I might not have time to look into your example to closely. But the traceback just looks like you are using an undefined name.
      I’m not too familiar with wokkel, but perhaps you mean self.send()?

  12. Laurens Van Houtven
    Sep 2nd, 2010 at 15:45

    I think your tutorials are really awesome, and I love how you’re consistently putting so much work into this while remaining responsive and approachable.

    This was *long* overdue, but the official documentation page now links back to you:

    http://twistedmatrix.com/trac/wiki/Documentation

    I couldn’t figure out if marketing your tutorials as good-for-newbies or not was doing you a disservice or not; I’m just mainly using them as a pointer for newbies who are willing to learn. If you disagree with the wording, please feel free to e-mail me about it.

    • dave
      Sep 2nd, 2010 at 18:39

      Thank you, I appreciate the kind words! I am specifically aiming this tutorial for people who are new to Twisted and, more importantly, new to asynchronous programming. So your description is apt.