Skip to main content

Benjamin Oakes

Photo of Ben Oakes

Hi, I'm Ben Oakes and this is my geek blog. Currently, I'm a Ruby/JavaScript Developer at Liaison. Previously, I was a Developer at Continuity and Hedgeye, a Research Assistant in the Early Social Cognition Lab at Yale University and a student at the University of Iowa. I also organize TechCorridor.io, ICRuby, OpenHack Iowa City, and previously organized NewHaven.rb. I have an amazing wife named Danielle Oakes.

Filtering for the Ruby category. Clear

Sonic Pi – The Live Coding Music Synth for Everyone

by Ben

Sonic Pi
The Live Coding Music Synth for Everyone.

Welcome to the future of music.

Simple enough for computing and music lessons.
Powerful enough for professional musicians.
Free to download with a friendly tutorial.

Learn to code creatively by composing or performing music in an incredible range of styles from classical & jazz to EDM.

Source: Sonic Pi

The goal of these articles is to explore the relationships between music and code, by analyzing and recreating the track Aerodynamic from Daft Punk.

Unlike classical approaches to generate sound on a computer, we are going to generate sound by writing text: instead of adding tracks, instruments, samples… on a timeline, we will see how to express those in code and how to play music.

Source: Aerodynamic · mxs

OSC-over-UDP is just OSC packed data sent over a UDP connection. My first serious encounter with OSC-over-UDP was when I attended strangloop and talked about The Mess We’re In

I bumped into Sam Aaron, the unstoppable force behind Sonic Pi and said that it would be really cool to control Sonic Pi from Erlang. …

Sam told me that to control Sonic Pi all I had to do was send it OSC encoded messages over UDP.

Source: Joe Armstrong – A Badass Way to Connect Programs Togther

chrismccord/render_sync

by Ben

Real-time Rails Partials

Source: chrismccord/render_sync

Module: TSort (Ruby 2.3.3)

by Ben

TSort implements topological sorting using Tarjan’s algorithm for strongly connected components

Source: Module: TSort (Ruby 2.3.3)

Using splats to build up and tear apart arrays in Ruby

by Ben

One of the things that I love about Ruby is the depth of its features. You may use an operator, but do a little digging and you’ll find that you’ve only been scratching the surface of what it’s capable of. The humble splat operator (* and **) is a great example.

You’ve probably used splats for “catch-all” arguments. And that’s all that most people use them for.

This is useful, but you can use splats for a lot more. Let’s dive in!

Source: Using splats to build up and tear apart arrays in Ruby

heapfrag – Heap visualizer for Ruby

by Ben

This is a library for dumping and visualizing your heap in MRI.

Source: heapfrag – Heap visualizer for Ruby

Google Cloud Platform Blog: Ruby on Google App Engine goes beta

by Ben

We’re thrilled to welcome Ruby developers to the Google Cloud Platform, and we’re committed to making further investments to help make you as productive as possible. This is just the start — stay tuned to the blog and our GitHub repositories to catch the next wave of Ruby support on GCP.

Source: Google Cloud Platform Blog: Ruby on Google App Engine goes beta

Arlo Guthrie and the origins of the Collection protocol

by Ben

During the interview he [Dan Ingalls] was asked about the origin of those enumeration methods of the Smalltalk collection classes. Alan Kay had told the interviewer that they had come from a song. At first Dan didn’t remember this but then remembered that there was a song which had a string of words like inject, select, detect etc. As far as I recall, though he didn’t name the song.

Source: Arlo Guthrie and the origins of the Collection protocol

Traveling Ruby: self-contained, portable Ruby binaries

by Ben

Traveling Ruby lets you create self-contained Ruby app packages for Windows, Linux and OS X.

Source: Traveling Ruby: self-contained, portable Ruby binaries

Useing You’re Type’s Good

by Ben

Useing You’re Type’s Good — Destroy All Software Talks

Via Chris Ortman on the TechCorridor.io Slack.

Thursday, 11/6: ICRuby Meetup

by Ben

From my posts on the Meetup event:

Hello Rubyists,

It’s almost the first Thursday of the month again. We’re always interested in having members present Ruby-related topics to the group, so if you’ve been playing with anything cool, please consider presenting! We’re pretty informal, so anything you present doesn’t have to be a “polished” keynote-style presentation; it can be as simple as plugging in your laptop and showing some code you’ve been working on.

If anyone would like to present something, please leave a comment [on the Meetup event].

Best wishes,

Ben

And also, my customary monthly Ruby news roundup:

Some Ruby news from the last month:

  • Ruby 2.1.4 released, along with patchlevel-releases for 2.0.0 and 1.9.3 containing security fixes
  • OSX 10.10 has shipped, with Ruby 2.0.0 as the default (Ruby 1.8.7 was completely removed)
  • Rails 3.2.20, 4.0.11, 4.1.7 released (security fixes) on Oct 30th
  • Last Rails 4.2.0 beta released, release candidates coming soon.
  • Ruboto 1.2.0 released, with support for ART on Android Lollipop (5.0)
  • Raptor — new Ruby web server — coming out this month. Supposed to be high performance.