Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

WIP

  • Loading branch information...
commit 50431ef5a1dd6cb4db7bf124826ce20df0787606 1 parent cd11b8c
@sleeper authored
View
4 css/goliath.css
@@ -11,9 +11,11 @@ a:link,a:visited,a:hover{text-decoration:none;}
.center{margin:auto 0;}
.small{font-size:60%;}
#test{display:-webkit-box;-webkit-box-orient:horizontal;}
-ul.bullet{list-style:none;padding:0;margin:0;}
+ul.bullet{list-style:none;padding:0;margin:0;font-size:120%;}
ul.bullet li{padding-left:1em;text-indent:-0.7em;}
ul.bullet li:before{content:"";}
#bg-sumo{-webkit-background-size:contain;-moz-background-size:contain;-o-background-size:contain;background-size:contain;background:url('../images/artwild1x.jpg') bottom no-repeat,#ffffff;}
#bg-black{background:#000;}
+#bg-aoi{background:#69D2E7;}
.title h1{color:#A7DBD8;}
+#async2{width:500px;height:auto;}
View
2  css/slides.css
@@ -16,7 +16,7 @@ body{font:30px Arial;background:#000;overflow:hidden;-webkit-perspective:1000px;
.centertext{text-align:center;}
header{font:40px 'Cabin',Arial;color:#0054AB;text-shadow:white 0px 2px 0px,rgba(0, 0, 0, 0.2) 0 2px 5px;}
section{font:30px 'Lato','Ubuntu',Arial;font-weight:normal;color:#3f3f3f;text-shadow:white 0px 1px 0px,rgba(0, 0, 0, 0.2) 0 2px 5px;}
-h1,h2{font-size:150%;font-family:'Yanone Kaffeesatz';margin-top:0;}
+h1,h2{font-family:'Yanone Kaffeesatz';margin-top:0;}
.title h1{font-size:500%;text-shadow:black 0 2px 5px;text-align:center;}
.title .author{font-family:'Ubuntu';text-align:right;margin-top:5em;font-style:italic;}
.highlight{display:inline-block;padding:3px 5px;border-radius:5px;color:#fff;background:#f38630;-webkit-text-shadow:0 1px 4px #000000;-moz-text-shadow:0 1px 4px #000000;-o-text-shadow:0 1px 4px #000000;text-shadow:0 1px 4px #000000;}
View
48 goliath.html
@@ -10,6 +10,7 @@
<body>
<div id="content" class="hidden">
<div id="bg-black" class="background"></div>
+ <div id="bg-aoi" class="background"></div>
<div id="bg-sumo" class="background"></div>
@@ -19,7 +20,7 @@
F. Ros @ Riviera.rb
</section>
</div>
- <div class="slide slide-in" data-backgroundid="bg-black">
+ <div class="slide slide-in" data-backgroundid="bg-aoi">
<section class="hcenter">
<div class="slide-in-left">
<img id="me" src="images/fred2.png" alt="Frederick Ros">
@@ -34,6 +35,11 @@
</section>
</div>
+ <div class="slide centercontents">
+ <h1>Traditional web servers</h1>
+ <img alt="IO jam" src="images/io.jpg"/>
+ </div>
+
<div class="slide vcenter">
<h1>The IO issue</h1>
<section>
@@ -47,10 +53,6 @@
</section>
</div>
- <div class="slide centercontents">
- <h1>Traditional web servers</h1>
- <img alt="IO jam" src="images/io.jpg"/>
- </div>
<div class="slide">
<h1>Enters the Reactor</h1>
<section>
@@ -69,11 +71,7 @@
<div class="slide vcenter centertext">
<h1>... and EventMachine</h1>
<section>
- <div class="center">
- <p>Reactor pattern (i.e. event driven)</p>
- <p>+</p>
- <p>Asynchronous code </p>
- </div>
+ <img id="async2" src="images/async2.png" alt="Reactor + Async = Event Machine">
</section>
</div>
<div class="slide">
@@ -91,12 +89,32 @@
</code></pre>
</section>
</div>
+ <div class="slide">
+ <h1>Ruby's Fibers</h1>
+ <section>
+ <ul>
+ <li>Available on MIR 1.9.x</li>
+ <li> ~ Continuations </li>
+ <li> Light-weigth concurrency: cheaper, easier than threads</li>
+ </ul>
+ <pre><code>
+fiber = Fiber.new do
+ Fiber.yield 1
+ 2
+end
+
+puts fiber.resume # => 1
+puts fiber.resume # => 2
+puts fiber.resume # => FiberError: dead fiber called
+ </code></pre>
+ </section>
+ </div>
<div class="slide">
- <h1>EM::Synchrony ?</h1>
+ <h1>EventMachine + Fibers ➪ EM::Synchrony</h1>
<section>
- <div class="small">
- <pre><code>
+ <div>
+ <pre class="small"><code>
EventMachine.run {
page = EventMachine::HttpRequest.new('http://google.com/').get
page.errback { p "Google is down! terminate?" }
@@ -107,8 +125,8 @@
}
}
</code></pre>
- ... + Fibers (on MRI 1.9.x) becomes ...
- <pre><code>
+ <div style="text-align:center;">▼</div>
+ <pre class="small"><code>
EventMachine.synchrony do
page = EventMachine::HttpRequest.new("http://www.google.com").get
about = EventMachine::HttpRequest.new('http://google.com/search?q=eventmachine').get
View
BIN  images/async2.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
10 less/goliath.less
@@ -81,6 +81,7 @@ ul.bullet {
list-style: none;
padding:0;
margin:0;
+ font-size: 120%;
}
ul.bullet li {
@@ -101,7 +102,16 @@ ul.bullet li:before {
background: #000;
}
+#bg-aoi {
+ background: #69D2E7;
+}
+
.title h1 {
color: #A7DBD8;
}
+#async2 {
+ width: 500px;
+ height: auto;
+}
+
View
2  less/slides.less
@@ -162,7 +162,7 @@ section {
}
h1, h2 {
- font-size: 150%;
+/* font-size: 150%;*/
font-family: 'Yanone Kaffeesatz';
margin-top: 0;
}
Please sign in to comment.
Something went wrong with that request. Please try again.