Rumor has it that you can't write concurrent programs in Ruby. People once believed that the world was flat and we all know how that turned out. Between the native threads introduced in MRI 1.9 and the JVM threading available to JRuby, Ruby is now a valid platform for concurrent applications. What we've been missing--until now--are the advanced concurrency tools available to other languages like Clojure, Scala, Erlang, and Go. In this session we'll talk about the specific challenges faced when writing concurrent applications; we'll explore modern concurrency techniques such as agents, futures, promises, reactors, and supervisors; and we'll use various open source tools to craft safe, reliable, and efficient concurrent code. We'll write most of our code using the Concurrent Ruby gem but we'll also explore EventMachine and Celluloid.
Jerry has given this talk (https://github.com/jdantonio/concurrent-ruby-presentation) at both RubyConf and Cascadia Ruby. He is also scheduled to give it again at CodeMash but would like to share the talk with us before then.
The format of our meetup will be as follows:
6:00pm meet each other and socialize. Food an beverages will be provided.
6:00-7:00 A kata will be posted and space provided for pairing with others on a code kata. More on this will be posted the evening of the meetup. Kata space will be separated from presentation space so those who wish to continue with the kata can do so.
7:00pm Jerry will begin his presentation