Events

Feed icon 28x28
Logo %281%29 original

GORUCO 2015 Schedule

June 20, 2015

( 13 available presentations )
Vlcsnap 2015 07 03 09h46m30s218 thumb
Rating: Everyone
Viewed 334 times
Recorded at: June 20, 2015
Date Posted: July 3, 2015

What does haggling at a garage sale have to do with load balancing in distributed systems? How does bidding in an art auction relate to cloud service orchestration? Familiarity with the ideas and technologies involved in cloud computing is becoming ever more important for developers. This talk will demonstrate how you can use game theory - the study of strategic decision making - to design more efficient, and innovative, distributed systems.

Vlcsnap 2015 07 03 09h46m35s13 thumb
Rating: Everyone
Viewed 1,214 times
Recorded at: June 20, 2015
Date Posted: July 3, 2015

Understanding performance output can feel like reading tea leaves. It makes sense to a few people, but many of us are left in the dark; overwhelmed and frustrated by the data. On top of that there are a ton of performance tools to choose from; StackProf, RubyProf, AllocationTracer. Where do you even start? While working on speeding up integration tests in Rails source, I learned that the key to improving the performance of Ruby code is having a baseline, not relying on one profiler and understanding the advantages and limitations of your tools. By utilizing these methods, integration tests are now 3 times faster than they were in Rails 4.2.0, with more improvements being made every day. In this talk we will not only look at how to read performance output, but when and how to use the right profilers for the job. We'll discuss a variety of methods and techniques for benchmarking and profiling so you can get the most out of any performance tool.

Vlcsnap 2015 07 03 09h46m39s52 thumb
Rating: Everyone
Viewed 304 times
Recorded at: June 20, 2015
Date Posted: July 3, 2015

The Amazon Echo recently debuted and made a big splash with its incredibly accurate voice recognition, capable of hearing and transliterating commands from 20-30 feet away. Home automation enthusiasts and hackers alike wondered if it would be possible to intercept commands from the device and trigger custom actions. While device traffic is encrypted, the device pushes commands to a history page in a web application. Using Watir WebDriver, which normally is used for feature testing, we've created a proxy that can be run on a Raspberry Pi as well as a modular Ruby framework based on Sinatra to run custom commands, allowing us to control the Hue wireless lighting system, Nest, and even request an Uber!

Vlcsnap 2015 07 03 09h46m42s84 thumb
Rating: Everyone
Viewed 286 times
Recorded at: June 20, 2015
Date Posted: July 3, 2015

Whenever something has gone seriously wrong for me in production caching has been at the root of it. Live Q&A with Julian Assange almost brought the site down? Caching fail. Servers can't cope with traffic about a new woolly rat? Caching fail. Half the site is showing sorry pages? Caching fail. This talk will use these disasters to explain why the simplest caching is always the best.

Vlcsnap 2015 07 03 09h47m03s43 thumb
Rating: Everyone
Viewed 256 times
Recorded at: June 20, 2015
Date Posted: July 3, 2015

Vlcsnap 2015 07 03 09h47m07s77 thumb
Rating: Everyone
Viewed 178 times
Recorded at: June 20, 2015
Date Posted: July 3, 2015

In the 1980's, Nintendo had plans for making a knitting add-on to the NES, with an interface that resembled Mariopaint, but with patterned mittens, sweaters, and scarves as output. Sadly, this product never saw the light of day. Devastated upon hearing this and dreaming about what could have been, a group of engineers (who knew nothing about machine knitting) set out to hack a knitting machine from the 1980's to be computer-controlled, using a tutorial from adafruit as a starting point. Hear about our struggles and triumphs, which ranged from learning to replace knitting machine needles and conduct basic repairs, to emulating a floppy drive and hacking together a custom cable cable to send our own patterns to the machine, to writing our own yarn printer API in ruby/sinatra and printing our first doge meme in yarn. And watch us (LIVE!) as we send images and knit requests to our yarn server, and behold as it knits ugly sweaters from those images!

Vlcsnap 2015 07 03 09h46m49s158 thumb
Rating: Everyone
Viewed 1,473 times
Recorded at: June 20, 2015
Date Posted: July 3, 2015

With Rails 5, Turbolinks is getting a nice upgrade, with new features like partial replacement and a progress bar with a public API. This talk will demonstrate how Rails 5 Turbolinks can achieve sub-100ms UI response times, and demonstrate some tools to help you get there.

Vlcsnap 2015 07 03 09h46m59s1 thumb
Rating: Everyone
Viewed 911 times
Recorded at: June 20, 2015
Date Posted: July 3, 2015

As much as we love Ruby, when you need to be really close to the metal, you have no choice but to use JavaScript. This is why I developed the javascript gem to help you harness the raw power of your machines. In this talk, we will examine the Ruby tricks and black magic hidden behind this ludicrous invention. Along the way, we will learn about how Ruby internally deal with variable lookups, method calls, scoping and bindings. Together, we will push the limits of the Ruby language, taking it to places Matz never ever envisioned!

Vlcsnap 2015 07 03 09h46m53s196 thumb
Rating: Everyone
Viewed 383 times
Recorded at: June 20, 2015
Date Posted: July 3, 2015

Event Sourcing is powerful way to think about domain objects and transaction processing. Rather than persisting an object in it's current state, event sourcing instead writes an immutable log of deltas (domain events) to the database. from this set of events, an object's state is derived, at any point in the past, simply by replaying the event history sequentially. Event sourcing is a deceptively radical idea which challenges our contemporary notions about transaction processing, while also being a mature pattern with a long history. This talk will take a look at how event processing is used across a spectrum of use cases, including database engines and financial systems, to Google Docs hacks.

Vlcsnap 2015 07 03 09h47m10s112 thumb
Rating: Everyone
Viewed 257 times
Recorded at: June 20, 2015
Date Posted: July 3, 2015

HAL, Skynet, KITT… we've always been intrigued by artificial intelligence, but have you ever stopped to considered the un-artificial? Most developers are familiar with the basics of AI: how do you make a computer, an algorithm, a system learn something? How do you model real world problems in such a way that an artificial mind can process them? What most don't realize though is that the same principles can be applied to people. This talk looks at some of the theories behind how machines learn versus how people learn, and maps it to real life examples of how specifically our users learn their way around interfaces and how designers and developers apply learning methodologies in their day-to-day actions.

Vlcsnap 2015 07 03 09h47m14s149 thumb
Rating: Everyone
Viewed 324 times
Recorded at: June 20, 2015
Date Posted: July 3, 2015

The learning curve to becoming a great developer is incredibly steep, especially when starting with no background knowledge. And it's not a smooth ride, either - trying to learn tools, concepts, syntax, and best practices simultaneously will inevitably result in hiccups along the way. As a DevBootcamp alumnus, Rachel knows what it's like to go from zero to developer in a very short time frame and the challenges that journey can present. Now as an instructor at the Turing School of Software and Design, she draws on her years of experience in the classroom to employ strategies that allow her students just the right balance between hand-holding and struggling. In this talk, Rachel will share tips to help people who are just getting started with programming overcome common struggles while also sharing proven teaching techniques that will help more experienced developers become effective mentors.

Vlcsnap 2015 07 03 09h47m19s198 thumb
Rating: Everyone
Viewed 338 times
Recorded at: June 20, 2015
Date Posted: July 3, 2015

Drives fail, databases crash, fibers get cut and unindexed queries hit production. Do you know how your application reacts to those events? Are they covered by tests? What about the failures you haven't even thought of? To avoid cascading failures applications must adopt general patterns to defend against misbehaving dependencies, including themselves. This talk covers the resiliency techniques Shopify has successfully put into production at scale, and how we write tests to ensure we don't reintroduce single points of failure. You'll walk away from this talk equipped with the tools to make your applications resilient and to better sleep at night.

Vlcsnap 2015 07 03 09h47m23s243 thumb
Rating: Everyone
Viewed 566 times
Recorded at:
Date Posted: July 3, 2015