Your current filters are…
Django is a high-level web development framework designed for rapid development of database-backed web sites. This tutorial is designed to introduce developers to Django and to give a taste of how Django development usually “feels”. My main goal is to give a holistic impression of Django’s abilities and style: by the end, attendees should be able to decide if Django’s a good fit for them.
A high-level outline:
Since Chloe works with any language, we’ll start off by showing how to integrate it with Java, Ruby, and Python apps. Next we’ll look at the various use cases of the realtime web and see how Chloe’s API will support you in all of them. We’ll then go into the performance and security characteristics of Chloe. Finally, we’ll talk about the operations side of Chloe. By the time you leave, you’ll know how to deploy, monitor, and most importantly, use Chloe like a pro.
by Jeff Lindsay
Concurrency is hard! At least, it seems hard. You might feel that unless you take up Erlang, you’ll never be able to express distributed systems in an easy way. I’ll let you in on a secret: the magic of Erlang, and Go, and any other language with good concurrency primitives can also be found in a library called ZeroMQ, which can be used in any language. It’s especially powerful and expressive when combined with an evented programming environment like Node.js, EventMachine, or Twisted.
I’ll let you in on another secret: there is a better way to do evented async programming than having callbacks all over the place, making your program read backwards and making your mind melt. By combining the reactor pattern of async frameworks with green threads, you get something that, so far, only exists in Python as two libraries called Gevent and Eventlet. These give you the advantages of I/O based evented programming, but without the ugly callbacks. Plus, most Python libraries are likely to work, unlike the completely incompatible and reimplemented world of Twisted or EventMachine in Ruby. Your Python code ends up feeling as powerful as Go code.
By combining these two technologies, you have a powerful toolkit for easily throwing together distributed systems in a “normal” language. Although we’ll focus on Gevent and ZeroMQ in Python, the lessons of this talk apply to any language. We’ll dive in and further explain these two technologies and then explore them together in action.
18th–20th September 2011