Twisted Introduction
This multi-part series I am working on introduces Asynchronous Programming and the Twisted networking framework.
- In Which We Begin at the Beginning
- Slow Poetry and the Apocalypse
- Our Eye-beams Begin to Twist
- Twisted Poetry
- Twistier Poetry
- And Then We Took It Higher
- An Interlude, Deferred
- Deferred Poetry
- A Second Interlude, Deferred
- Poetry Transformed
- Your Poetry is Served
- A Poetry Transformation Server
- Deferred All The Way Down
- When a Deferred Isn’t
- Tested Poetry
- Twisted Daemonologie
- Just Another Way to Spell “Callback”
- Deferreds En Masse
This introduction is being translated into other languages:
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
Ah, wordpress cut-n-paste gets me again! Thanks
Hi, Dave. Do you mind if i’l translate this twisted intro to russian and publish it?
I don’t mind at all, be my guest! Be sure to send me the link
Thank you! I will!
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.
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.
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.
Good luck with your tool set!
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.
Hey Ed, you found a typo! That should have been
buildProtocol. I’ve fixed the text of Part 5, thanks for the close reading!Dave,
thank you for the help.
Ed.
Great intro!
Would be nice, if you could release the whole serie as a pdf.
Jo.
Thanks! Once I finish the series, I’ll look into possibilities there.
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
Absolutely! I put a link to your site on the index page above. Thanks for doing that.
Also, could you tell me your full name, so I can mention you with the link?
Thank you very much. My name is Shigeru Kitazaki.
Nice to meet you, Shigeru
Hi!
Thanks for hard work, i read all articles and my head-ache is gone
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.
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.
Hi timgluz,
can you tell how to download your pdf…it is asking for username/passwd when I click on the above link.
thanx
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-
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()?
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.
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.