Hello,<div><br></div><div>At Pycon-fr, I presented a 20 min introduction to Twisted. Nothing adventurous, the focus is on education:</div><div><br></div><div>- Twisted use and key concepts,</div><div>- Twisted&#39;s core: the reactor,<br>
- example: a notification client (invent a client/server protocol, implement it with Twisted&#39;s classes, then add notifications to the protocol and to the implementation)</div><div><br></div><div>The example shows two versions of a notification API, a blocking one and a better one based on events. What is an event based API and why it is more adapted in some cases are two basic questions that I tried to make clear, as this is not obvious to many new programmers.</div>
<div><br></div><div>The presentation slides are attached in Open Office impress format (has animations) and in pdf (no animations, an export of the OO version). The animations are not critical to the presentation but helps with clarity. The accompanying speech is not available in english yet, sorry. The license is creative commons.</div>
<div><br></div><meta http-equiv="content-type" content="text/html; charset=utf-8"><div>I am interested in feedbacks and suggestions, if you have any,</div><div><br></div><div>Cheers,</div><div><br></div><div><br></div><div>
<br><div class="gmail_quote">On Fri, Oct 22, 2010 at 6:40 PM, Andrew Francis <span dir="ltr">&lt;<a href="mailto:andrewfr_ice@yahoo.com">andrewfr_ice@yahoo.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Hi Lauren:<br>
<br>
Message: 1<br>
Date: Thu, 21 Oct 2010 23:47:56 +0200<br>
From: Laurens Van Houtven &lt;<a href="mailto:lvh@laurensvh.be">lvh@laurensvh.be</a>&gt;<br>
Subject: [Twisted-Python] PyCon extreme Twisted talk!<br>
To: Twisted general discussion &lt;<a href="mailto:twisted-python@twistedmatrix.com">twisted-python@twistedmatrix.com</a>&gt;<br>
Message-ID:<br>
    &lt;<a href="mailto:AANLkTintU98WZc-u7yeRgvZLNDi5M4EsGYmHW1mhmzjE@mail.gmail.com">AANLkTintU98WZc-u7yeRgvZLNDi5M4EsGYmHW1mhmzjE@mail.gmail.com</a>&gt;<br>
Content-Type: text/plain; charset=&quot;utf-8&quot;<br>
<div class="im"><br>
&gt;Greetings fellow Twisted aficionados!<br>
<br>
<br>
&gt;So, Allen (dash) and I have decided that we were going to co-do the &gt;Twisted Extreme talk at PyCon US 2011. Extreme talks are like talks, &gt;except with less talking and more coding, so preferably something &gt;actionable for an entire 45 minutes! That most likely means many steps: &gt;start small, and then do something more complex.<br>

<br>
</div>I am probably going to submit an extreme talk for PyCon 2011. I&#39;ll either refine the &quot;Prototyping Go&#39;s Select&quot; talk. Or discuss about my work-in-progress about join conditions. Twisted has a simple join in the form of a deferred list.<br>

<br>
Inspired by the Ray Hettinger Monocle post-talk discussion and writing examples with stackless.select(), I thought submitting another extreme talk that would revisit the lost world of Stackless Python/Twisted integration. As we discussed, why not a special reactor that incorporates the Stackless scheduler? Right now, a lot my examples use Twisted for sleep(). Creating a Stackless reactor would hopefully allow me to get rid of stuff like<br>

<br>
This way I can get rid of stuff like:<br>
<br>
l = task.LoopingCall(stackless.schedule)<br>
l.start(.001)<br>
stackless.tasklet(startTwisted)()<br>
stackless.tasklet(santa)(reindeers, elves)<br>
stackless.run()<br>
<br>
and eventually<br>
<br>
def tick(seconds):<br>
    tickCh = stackless.channel()<br>
    reactor.callLater(seconds, tickCh.send, None)<br>
    tickCh.receive()<br>
<br>
what is particularly exciting is talk in the pypy-dev list about incorporating Stackless with the JIT....<br>
<br>
Cheers,<br>
<font color="#888888">Andrew<br>
</font><br>
P.S - I have provided an example of using Stackless and Twisted to solve the Santa Claus Problem<br>
<br>
<br>
      <br>_______________________________________________<br>
Twisted-Python mailing list<br>
<a href="mailto:Twisted-Python@twistedmatrix.com">Twisted-Python@twistedmatrix.com</a><br>
<a href="http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python" target="_blank">http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python</a><br>
<br></blockquote></div><br></div>