Our next meeting will be next Monday, April 1st, from 7:00-9:00pm at
Capital Factory downtown. Our talk will be from Tod
Beardsley the Engineering Manager of the
Metasploit Project on "Offensive Ruby 1.5."
Synopsis
We all know that Ruby is a great prototyping language. It's easy to pick
up and quick to turn out proof of concept code. This facet of the
language makes it ideal for turning out exploit code - small programs
designed to take advantage of security vulnerabilities.
This is an update of Offensive Ruby 1.0, delivered at LSRC6. This
version is broken up into four to five lightning talks (depending on
time), detailing the background, usage, and current state of development
for a handful of security-specific Ruby projects -- not just Metasploit!
It's also intended to encourage the Ruby community (that's you guys) to
jump into this niche development community and discuss what you can do
-- right now -- to advance the state of the art in Ruby-based, open
source security tools.
Bio
Tod Beardsley is the Engineering Manager for the Metasploit Project, the
world-renowned open source penetration testing platform. He has over
twenty years of hands-on security knowledge, reaching back to the
halcyon days of 2400 baud textfile BBSes and in-band telephony
switching. Since then, he has held IT Ops and IT Security positions in
large footprint organizations such as 3Com, Dell, and Westinghouse.
Today, he is passionate (some might say militant) about open source
software development, open source security research, and data
liberation, and can often be found on Freenode IRC as "todb."
Kata
Afterwards, participants will play hacker -- you will be given a target
system on the local network to compromise, and you must use Ruby in some
way to do it.
Beers and socialization practice to follow at a location TBD on Dirty 6th.
Location
Thanks again to Capital Factory for providing
the space for this month’s meeting! You can find them on the 16th floor of the
Austin Centre business tower, downtown at 701 Brazos Street.
We’ll see y’all there!
Mentoring office hours at Cafe Bedouins
A few weeks ago I had the pleasure of helping out at the Rails Girls ATX
workshop. The experience was amazing and exhausting and uplifting and
every other positive adjective I can imagine. For a bit of context,
Rails Girls is an organization whose aim
is to provide tools and a community to women to understand technology and build
their ideas (stolen shamelessly from railsgirls.com).
Afterwards, I felt like we'd given the attendees a great start but that we'd
left them a bit on their own. There wasn't a clear direction on where to go
next or how to keep things rolling. Abravefew began attending our weekly Cafe Bedouins meetup and a plan began to
emerge. Then, just today,
ONE OF OUR OWN asked for mentoring help and that was the last straw.
So, instead of using Cafe Bedouins to work on my projects or socialize, I'm
going to open that time as office hours.
Wanna pair on something?
Need an extra pair of eyes to help debug a ruby installation problem?
Got some questions about Rails or a gem or git or whatever?
Come on down to Houndstooth
Coffee from 8-11 every Tues night and look for the dude in the Phillies cap
and I promise I'll do my best to help. And I don't want to speak for the rest
of austin.rb, but I'd bet good money that I won't be the only person there
willing to lend a helping hand.
February Meeting - Building API Client Gems
Texan Rubyists (and welcome visitors),
Our next meeting will be next Monday, February 4th, from 7:00-9:00pm at
Capital Factory downtown. Our talk will be from Ben Hamill of
Return Path on Building API Client Gems.
Synopsis
There are a lot of great services on the internet, these days. Most commonly,
they’re accessible by making HTTP requests and parsing the responses. But
building requests up, then parsing and reifying the responses can be a pain and,
honestly, isn’t what a service’s consumer developers should be spending their
time doing. So people write and share libraries to handle interfacing with a
remote service. This talk is a collection of lessons learned and opinions formed
based on writing one such gem. We’ll talk about how to decide what kind of API
gem you’re writing, why you should separate your API access logic, some of the
things to consider about documentation, and several other topics.
Bio
@benhamill
has been playing with Ruby for about five years now and one day plans to have
some kind of idea of what's going on in the world around him. He recently wrote
and released the contextio gem,
and helps maintain a few other libraries. By day, he works at Return Path making
email awesome, and by night does a lot of game playing of all sorts. He's got a
degree in Linguistics and would love to discuss English etymology with you. Ben
is a Pepper.
Kata
After the presentation we’ll be pairing off to work through a brand new
code kata. You’ll definitely want to remember your laptop.
Beers and socialization practice to follow at a location TBD on 6th.
Location
Thanks again to Capital Factory for providing
the space for this month’s meeting! You can find them on the 16th floor of the
Austin Centre business tower, downtown at 701 Brazos Street.
Heroku has deployed millions of web apps. When you’ve run that many
applications, it’s hard not to notice when frameworks and developers do things
wrong, and when they do them right. We’ve taken a look at the most common
patterns and boiled down the best of our advice in to 12 simple factors that can
help you build your next app to be stable, successful, and scaleable. After this
talk you’ll walk away with in depth knowledge of web framework design patterns
and practical examples of how to improve your application code.
Bio
Richard “@schneems” writes Ruby at Heroku at teaches Rails at the University
of Texas. When he isn’t obsessively compulsively playing Starcraft 2 he writes
such gems as Wicked, Sextant, and oPRO. Before working as a
programmer, Richard was a waiter at Outback Steakhouse where he learned the
difference between a bloomin’ onion and an awesome blossom.
Kata
After the presentation we’ll be pairing off to work through a brand new
code kata. You’ll definitely want to remember your laptop.
Beers and socialization practice to follow at a TBD location on 6th.
Location
Thanks again to Capital Factory for providing
the space for this month’s meeting! You can find them on the 16th floor of the
Austin Centre business tower, downtown at 701 Brazos Street.
We’ll see y’all there!
November Meeting - Learning Lua
Synopsis: As a modern developer, it's getting harder to ignore the fact that the Lua programming language has been popping up everywhere. From powering scripting engines in Nmap and Redis to providing a high-level language for multi-platform game development frameworks to being used in embedded systems beyond count, Lua is handling some very interesting use cases.
Where did this language come from? How is it structured? What makes it cool? This month at Austin.rb, we will answer these questions by exploring Lua from the Rubyist's point of view, diving into this small-but-powerful tool and learning enough to get started using and enjoying the language. We'll play with lots of working code along the way, so make sure to bring your laptop!
Bio: Trevor Rosen is an Austin native and longtime Ruby developer who loves tinkering with open-source tech. In his day job, he's lucky enough to work for Rapid7 on Metasploit, where he manages the commercial products development team and works with some of the sharpest developers around, building industry-leading security tools and simulating cyber criminality.
Location: Thanks again to Capital Factory for providing the space for this month's meeting! You can find them in the 16th floor of the Omni Hotel, downtown at 701 Brazos St.
We’ll also be pairing off to work through a
code kata. You’ll definitely want to remember your laptop.
Beers and socialization practice to follow at a TBD location on 6th, sponsored by Rapid7.
October Meeting - iOS development with RubyMotion
Austin Startup Week: The October meeting will be part of Austin
Startup Week. Check out
their site for other great tech events happening in Austin.
Synopsis:RubyMotion has been climbing the charts in both new developers as well as established companies taking it on for their iOS development needs. The speed of development, growing community surrounding it and the ever expanding list of gems developed to supplement RubyMotion makes this alternative to the standard Objective-C method for iOS development a real contender. In this talk, we will see the pros and cons of adopting RubyMotion for your iOS development needs as well as take a walk through the creation of a real RubyMotion application exploring various tools that make development even easier.
Bio: David Brear is a Rails developer at Spiceworks and, as an avid opponent of anything relating to Objective-C, has been dabbling with RubyMotion since it first came on the scene. David splits his time between RubyMotion, Rails projects and fiddling with algorithmic puzzles in Python.
Location: Thanks again to Capital Factory for providing the space for this month's meeting! You can find them in the 16th floor of the Omni Hotel, downtown at 701 Brazos St.
We’ll also be pairing off to work through a
code kata. You’ll definitely want to remember your laptop.
We'll be heading to 6th Street afterwards for socialization practice. See y'all there!
September Meeting - Front-end Web Development with Ruby
Synopsis:
While Ruby came to prominence with Rails as a solution for quickly and elegantly
building full stack web applications, the past couple of years have seen an
explosion of the number of Ruby projects catering to the needs of front-end web
developers specifically. From using Middleman or nanoc to manage the process of
building a static site, to using Compass to bring sanity to our stylesheets, to
building custom gems to simplify JavaScript development workflow, this talk will
cover several scenarios in which developers can bring the ease and simplicity of
Ruby to bear on time-consuming or otherwise frustrating front-end problems. We
will also cover using one of the new Backend as a Service providers to build a
dynamic website entirely on the client side, radically simplifying the process of
deployment.
Matt gave this talk at LSRC last month and it went over quite well
(at least he likes to think so). If you missed it there, be sure to join us this
month to learn how to tame your markup with Ruby!
Bio:
Matt Buck has been bouncing around a number of local Austin startups since he
graduated from UT six years ago. Currently he makes Internets for Mass
Relevance, and he couldn't be happier with how that's
going. If he isn't staring at a lightbox, he's probably enjoying the great
indoors in some other suitably sedentary fashion.
Location:
Thanks again to Capital Factory for providing the space for this month's meeting! You can find them in the 16th floor of the Omni Hotel, downtown at 701 Brazos St.
We'll be heading to B.D. Riley's afterwards for socialization practice.
See y'all there!
July Meeting - HACKATHON!
Sad News
With LSRC right around the corner, we've decided to take this month off and focus on the conference.
I know, I know - I'm sad about it too. But, we do have some happy news to go with the sad!
Happy News!
Instead of the meeting, we're going to participate in Context.IO's awesome overnight hackathon! Drinks, food, open APIs, good friends and late-night hacking - if that doesn't sound like a rad Saturday night, dear reader, I don't know what does.
It starts the evening of 8/11 (directly after LSRC) at the super-sweet Capital Factory space on 7th and Brazos. If you're interested, register up (totes free) and join us.
See y'all there!
July Meeting - Testing Assembly with Ruby
Please see NEW LOCATION!!!
Synopsis:
Writing assembly code is a challenge to even the masters of the art. These days most programmers professionally write assembly only when they must have the most optimal execution speed of a specific routine or create the smallest code possible. Doing so will also typically prevent the application from being portable. On the other hand, some of the more masochistic programmers out there like myself like to write assembly code every once in a while just for the fun of it.
One of the biggest problems with writing assembly code is the readability and maintainability of it. Almost every instruction written can have very specific or very subtle meaning. Even with code comments on every line and a paragraph explaining what a particular section does, it can still be extremely difficult to remember exactly why a particular section was coded in a certain way. This talk is about bringing one of the best techniques about Ruby that has made it so successful, to what some people might call its antithesis; writing in assembly. Automated testing has allowed Ruby to proliferate with very high code quality and maintainability.
Writing tests for assembly code in Ruby is now easy and fun for the whole family.
Bio:
Ethan Waldo has been writing in Ruby and the framework that must not be named for many years now. Although most of his extra curricular time is occupied by a 6 month old, he also likes to experiment with other languages excluding java and python currently. Whenever free time presents itself Ethan also likes playing his PRS SC 58 or the latest blockbuster video game.
Thanks Capital Factory for sponsoring this months meeting with food and space!
As is our custom... we will head to B.D. Riley's for socialization practice afterwards!
June Meeting - Making Gems
Synopsis:
If you've used Ruby, you've probably used a gem or two. Ruby's gem system has worked out pretty well as a way to share code with other people or between your own projects.
But how to actually make a gem is not quite widely known. It's not that the process is actually difficult. It's just the documentation isn't so clear. Many different methods have popped up over the years for making gems, and we'll take a look at a few of them. We'll also look at how to make a gem with native code bindings.
Bio:
Ethan is a professional software developer of 7 years and has been working with Ruby for 5 of them. He currently works at GameSalad and runs Big-Oh Studios doing iOS development and some consulting gigs on the side. Ethan enjoys spending time with his family, playing guitar, and is a candidate for US Congress in Williamson and Bell Counties.
Sponsor: GameSalad will be the sponsors for Cospace. They are an Austin based game tool company to allow you to make games without programming. They have a mac version and the newly released Windows version. You can publish your game on mac, iphone, ipad, android and html5 from the same project.
Customarily, after our meeting, we’ll head over to Sherlock’s Baker Street Pub for refreshments and conversation.
We’ll see y’all there!
May Meeting - Saving Energy with Ruby and Friends by Michael May
Happily, CabForward will be sponsoring our
April meeting. They are a Ruby on Rails design, development and
training company located in beautiful Austin, Texas.
After the presentation we’ll be pairing off to work through a brand new
code kata. You’ll definitely want to remember your laptop.
Here’s Michael's talk synopsis:
Data centers use lots of energy. Unfortunately, large amounts of this
are wasted by servers not doing any useful work. Power Smart Labs is an
early stage startup that makes software to reduce data center energy
usage. In this talk I will be showing off our technology stack.
Along the way we will encounter things such as: Sinatra vs. Rails, using
Active Record with Sinatra, executing time-based jobs with Ruby, and
optimizing optimization algorithms.
Customarily, after our meeting, we’ll head over to Sherlock’s Baker Street Pub for refreshments and conversation.
We’ll see y’all there!
April Meeting - SNMP Device Emulation & Ruby with Brian Gugliemetti
Fellow Rubyists,
Our next meeting will be on the new and improved second Wednesday of the
month: April 11, from 7:30-9:30 at Cospace.
Our talk will be from Brian Gugliemetti of
Spiceworks, who is going to regale us mightily with tales of SNMP
Virtualization with Ruby. It may or may not create entirely new neuronal
pathways in your gray matter.
Happily, Spiceworks will be sponsoring our
April meeting. They do great things for IT with Ruby right here in our very
own Austin, Texas.
After the presentation we’ll be pairing off to work through a brand new
code kata. You’ll definitely want to remember your laptop.
Here’s Brian’s talk synopsis:
One of problems with writing code that manages a group of devices is having
a wide variety of devices to test against. Even if one has budget, space
quickly becomes an issue. Spiceworks wrote a SNMP device emulator to use for
both product support and regression testing. The emulator allows Spiceworks to
use a single server to create multiple virtual SNMP devices from
user-submitted SNMP walks to resolve support issues. Learn how to use Ruby to
dynamically manage multiple ethernet aliases and services on a single machine.
Customarily, after our meeting, we’ll head over to Sherlock’s Baker Street Pub for refreshments and conversation.
We’ll see y’all there!
February Meeting - Charles Lowell & Ruby CI With Jenkins
Good news! Our next meeting will be on Tuesday Feb 21 from
7:30-9:30 at Cospace. Charles Lowell
is gonna ROCK OUR FREAKIN' MINDS WITH HIS CRAZY JENKINS KNOWLEDGE! WOOOOOO!
We're also completely stoked that The Frontside
is sponsoring our February meeting - if your backside is strong but your
frontside is weak, call The Frontside today!
After the presentation we'll be pairing off to work through a brand new code kata. Be sure to bring your laptop!
And straight from the Charles' mouth about his talk:
Over ten years after Martin Fowler first coined the term, continuous
integration isn't something controversial. Like testing, it might not be
something we always do, but it is something we almost always know we
should. How then, do we as Rubyists turn this inclination into practice?
Enter Jenkins, the highest power CI server out there.
In this short talk, I'll compare Jenkins to some other CI solutions
before showing you some great ways you can use it to supercharge both
the development AND deployment of your Ruby projects. Finally, I will
demonstrate how you can extend the Jenkins CI server (which is written
in Java) with nothing Ruby code.
If you aren't getting the most out of your CI tools, or you aren't
using a CI tool at all, then it is important that you attend!
Implementing a proper CI is a game changer to the way you and your team
develop software.
Charles Lowell is a founder and UX
developer at The Frontside in Austin, Texas where
he slings code for money and spends way too much of his free time
contributing to open source projects such as The Ruby Racer and Jenkins.
Ruby is a passion, but he always makes sure to pack his toothbrush and
JavaScript wherever he goes.
See y'all there!
January Meeting - Matthew Swain & Intoduction to Chef
Good news! Our next meeting will be on Tuesday January 17 from
7:30-9:30 at Cospace. We're excited to
have Matthew Swain give us an
introduction to keeping our environment dependencies managed using Ruby
with Chef. We're also
excited to announce that our January meeting will be sponsored by
OtherInbox! Afterwards we will head for drinks at Sherlock's Baker Street Pub.
After the presentation we'll be pairing off to work through a brand new code kata. Be sure to bring your laptop!
Anyway, let's hear more about Matthew's talk, eh?
Today's applications can be quite complex with many external dependencies. In addition to our ruby environments, often we find ourselves setting up a patchwork of tools like memcached, node, mysql, redis, cassandra, mongo, and nginx. Keeping our development and production environments up to date can be quite the chore. Thankfully, we can automate the process with Chef.
Chef is a ruby framework that can ease the burden of managing all of our applications' dependencies. Whether we're dealing with a development workstation, a single application server, or hundreds of EC2 slices; Chef makes it easy to keep everything under control. In this talk I'll cover the basics of the framework, including how to get in installed and configured to get you cooking quickly.
Hey there, this is Mattt. I'm breaking from my standard persona as the 3rd-person voice of Austin.RB to speak personally for a bit.
Come January, I will be moving to San Francisco to start my new job at Heroku. As such, I will be unable to continue my role of organizing and running Austin.RB month-to-month.
But Austin.RB won't be going anywhere—not even close.
It is as remarkable and wonderful as it is totally unsurprising the way that our community has already stepped forward after mentioning my move at the last meeting. I am thrilled to say that of the 10 scheduled meetings for 2012, the first half of them are already accounted for. My sincere thanks go out to Tim Tyrrell, Mando Escamilla, Brad Fults, Robert Rasmussen, Nola Stowe, and Rob Mack for volunteering to head up those meetings. I have the fullest confidence that each of you will do an amazing job (and to be honest, I'm really bummed that I'll be missing those, now).
It's been my distinct pleasure to build Austin.RB with all of you, together. I think we finally hit our stride in the last couple meetings, and I'm genuinely excited to see where you take things over the coming months.
There is something truly wonderful and unique about this community, down here in the heart of Texas. For 2 years, Austin has been my home. So much of being able to call this place home has come from the friendships I've made with y'all. Thank you.
— Mattt
November Meeting - Trevor Rosen & Making Dashboards with Redis
Good news! Our next meeting will be on Tuesday November 15 from 7:30-9:30 at Cospace. We're excited to have Trevor Rosen presenting a "code-along adventure" about creating dashboards with Redis. We're also excited to announce that our November meeting will be sponsored by Spiceworks! They'll also be buying drinks at Sherlock's Baker Street Pub after the meeting.
And since it was so successful last time, we'll be pairing off to work through a brand new code kata. Be sure to bring your laptop!
Anyway, let's hear more about Trevor's talk, eh?
By now, most people have had to make some kind of dashboard. They present some interesting challenges.
We will be imagining that the fictional business of Rufus' Pig Foot Emporium has hired us to create a dashboard for their flagship OinkBot Global Pork Statistical Service™, because it gives us an opportunity to create a lightweight gem making use of Redis. We'll put together a library called RedisCacheable to add Redis-backed caching behavior to arbitrary Ruby classes in an organized and direct way.
Along the way, we'll have a practical look at/touch on:
• Redis, an excellent and simple data store
• Some metaprogramming techniques used for mixins
• Basics of gem structure and construction:
• Using Bundler to make gem stubs
• Creating config objects available in base classes
• The virtues of namespaces
• Test-driven development with RSpec
Trevor Rosen is a software developer and Austin native whose meandering journey of coding and interactive design has taken him through politics, advertising, consulting, and several startups. As a developer working full-time on Metasploit, he's thrilled to spend his days with some of the best hackers on the planet, helping to keep you from getting pwned.
See y'all there!
Oh, and thanks for your patience as we try to figure out a consistent meeting time--we'll have that figured out soon.
October Meeting - Top Down/Bottom up
tl;dr Our next meeting will be on Monday October 17 from 7:30-9:30 at Cospace. Be sure to bring your laptop!
The theme for October's meeting, "Top Down/Bottom Up", comes courtesy of this month's speaker Chris Continanza. His talk will show us how to build a Heroku Add-On--and we'll get to that in just a moment--but first I'd like to talk about this theme in the context of Austin.RB.
Getting back to those roots, I'm excited to announce a change in venue and format. For our October meeting, we'll be meeting at Cospace. I fell in love with this venue at the last Friday Night Hacks; it's more intimate than the "conference talk" setup, and that's perfect for the new format.
In the first hour, we'll be flexing our coding chops as we pair up to work through a code kata. I think there's immense value in the focus of katas, as well as the experience of working with someone (especially for the first time).
And--as mentioned previously--in the second hour, we'll have the distinct pleasure of welcoming back Austin's prodigal son, Chris Continanza of Heroku. Here's a look at what's in store:
In this talk we'll take a look at how to build a Heroku Add-On from the top down and bottom up. We'll start by going over the general design and strategy of how an add-on works. We will then see how the the kensa gem allows you to test a local add-on you can develop in any language, like Ruby. Bring your laptop and you'll walk away with a working prototype in Sinatra.
Chris Continanza is a member of the Heroku Add-ons team and loves a good pull request.
If you haven't been to an Austin.RB in a while, now would be a great time to check back. This will surely be an evening to remember. I hope to see everyone there.
September Meeting - Drinkup
Rather than our regularly-scheduled meeting, we'll be meeting at Ginger Man tonight, starting at 8PM. There's a lot to talk about, what with RubyConf around the corner, as well as the future of Austin.RB as a group, and what that should look like.
It'll be real. Hope to see you there.
July Meeting - Gem Show-and-Tell
In these dog days of summer, at the peak of conference season, with heated deadlines for Fall project releases, let's relax this month. July's meeting of Austin.RB will be a "Show-and-Tell" of all of the cool gems you've come across recently. Come up and share your experiences with your new favorite library, framework, script, or what have you. Nothing fancy—just ~5 minutes, fireside-chat -style.
June Meeting - Ruby Implementation Showdown! Brian Ford on Rubinius & Mattt Thompson on MacRuby
Our June meeting of Austin.RB is June 16. As always, we'll be meeting at Norris Conference Center, and talks will start around 7PM.
You'll definitely want to make it for this one, since it's going to be all about the new and exciting things happening in Ruby implementations. It's a showdown, folks! Brian Ford of Engine Yard will be joining us to talk about Rubinius, and Mattt Thompson will be giving a tell-all about MacRuby.
And if that weren't enough, Engine Yard will be sponsoring socialization practice afterwards at Sherlock's Baker Street Pub. Come on out and let EY Buy UA Drank (shawty).
Anyway, you want some talk abstracts? You got it, chief!
Rubinius is a completely new implementation of Ruby featuring a custom virtual machine, garbage collector, and JIT compiler, and true multi-threaded concurrency. The Rubinius core library is written in Ruby with supporting primitives from the VM. The bytecode compiler is also written in Ruby. Rubinius is bring the past 30 years of dynamic language implementation to Ruby using modern technology like the LLVM project. I'll take a dive into the architecture and goals of Rubinius. I'm interested in hearing about Ruby pain points and what Rubinius can do to help.
MacRuby is another implementation of Ruby, built on top of the Objective-C runtime and JIT compiler. It harnesses Grand Central Dispatch to take advantage of multi-core CPUs and GPUs to offer unparalleled multi-threaded concurrency performance (get it?). But performance is just the beginning: with MacRuby, you have full access to some pretty amazing Apple Frameworks, like Foundation, CoreAudio, and Accelerate. And the best part? You get all of this and still get to program Ruby. Think of this as your introduction to Cocoa, without the dangerous square-bracket edges of Objective-C.
See y'all there!
May Meeting - Charles Lowell "The Ruby Racer: embedding V8 Javascript interpreter into Ruby" & Bill Doughty "Typhoeus: idiomatic parallel HTTP request execution"
Charles will talk about The Ruby Racer, a slick gem that lets you embed Javascript in Ruby in elegant fashion:
Have you ever had to implement the same validation logic twice: once in JavaScript for the browser and once in Ruby for the server? Has there ever been a JavaScript library like handlebars.js that you'd love to use server side, but can't because well... it's in JavaScript and not Ruby? Or perhaps a time or two you've been tempted to eval() some anonymous Ruby code, but you didn't dare because it's an unspeakably dangerous thing to do?
The solutions to these and many other problems are suddenly and elegantly within your grasp when you've got the power of a JavaScript interpreter right there with you in your ruby process.
Sound crazy? difficult? It's easier than you might think. This talk will focus on The Ruby Racer: a gem that brings the superb V8 interpteter to Ruby. We'll see how to call JavaScript functions directly from Ruby; how to call Ruby methods directly from JavaScript; how to extend Ruby classes with JavaScript; how to extend your JavaScript objects with Ruby, and a slew of other ways of managing their interaction that will bend your mind
Typhoeus leverages a standard Unix tool (curl) to overcome one area where Ruby is inherently deficient (concurrency) within a specific application context: HTTP client networking. What's more, it does so in an idiomatic way. In short, Typhoeus provides a great example of how to effectively leverage a ubiquitous yet powerful native library in a transparent and Ruby-friendly way.
Thanks again to everyone who came out last month! Really hope y'all will be able to come out this time. And to all of you RailsConf folks, safe travels and see you in June.
Update (4/21): Our speaker tonight has cancelled, so we'll be doing Lighting Talks instead. Got a favorite Ruby project of the moment? Come up and tell us about it. Just 5 minutes, no biggie. It'll be a blast--can't wait to see what everyone presents on!