# Ruby Bench Intros

**URL:** <https://community.miniprofiler.com/t/ruby-bench-intros/185>\
**Category:** Ruby Bench\
**Created:** [December 11, 2013, 10:30pm UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185 "2013-12-11T22:30:45Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![sam](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/sam/32/377_2.png) [@sam](https://community.miniprofiler.com/u/sam)\
**Post date:** [December 11, 2013, 10:30pm UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/1 "2013-12-11T22:30:45Z")

</div>

If you would like to help out with the Ruby Bench project, please reply here:

1. Who are you?
2. What would you like to work on?
3. How much time can you dedicate to the project?

---

<div class="post-metadata">

**Author:** ![sam](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/sam/32/377_2.png) [@sam](https://community.miniprofiler.com/u/sam)\
**Post date:** [December 11, 2013, 10:32pm UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/2 "2013-12-11T22:32:49Z")

</div>

I’ll start,

Sam Saffron, my blog is at [http://samsaffron.com/](http://samsaffron.com/) , I have always been passionate about all things performance.

I am very tight on time, can help coordinate stuff and assist with some raw scripts and vision.

I have about 2-4 hours max a week I can dedicate to this project.

---

<div class="post-metadata">

**Author:** ![dmathieu](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/dmathieu/32/972_2.png) [@dmathieu](https://community.miniprofiler.com/u/dmathieu)\
**Post date:** [December 12, 2013, 8:27am UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/3 "2013-12-12T08:27:10Z")

</div>

Hi,

[Damien Mathieu](https://github.com/dmathieu). I don’t have much experience in advanced performance tools.  
But I would definitely give a hand on the UI and integration part of things.

The amount of time I can dedicate can vary a lot, let’s say it would be between 2 and 7 hours a week.

---

<div class="post-metadata">

**Author:** ![rwjblue](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/rwjblue/32/982_2.png) [@rwjblue](https://community.miniprofiler.com/u/rwjblue)\
**Post date:** [December 12, 2013, 1:51pm UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/4 "2013-12-12T13:51:18Z")

</div>

Hey, I’m Robert Jackson. I’ve been a Ruby programmer for quite a while (mostly Rails related projects), and more recently became a member of the Ember Release Management Team.

I am looking to create the same sort of long running benchmark process for the Ember project, and I think that the efforts here will likely be able to assist with that (if nothing more than to inform the process).

I could work on the backend API service to receive the benchmark numbers, the actual data gathering (benchmark script[s]), and the front-end (possibly an Ember UI consuming the API service?).

I can likely dedicate 10-20 hours per week on this project.

Next steps?

---

<div class="post-metadata">

**Author:** ![sam](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/sam/32/377_2.png) [@sam](https://community.miniprofiler.com/u/sam)\
**Post date:** [December 12, 2013, 2:08pm UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/5 "2013-12-12T14:08:17Z")

</div>

> [@rwjblue](#):
>
> Next steps?

A clean API to run benchmarks and collect results. Perhaps we should use docker, to guarantee versioning. I started working on this, but it quickly can become a house of cards.

Repo is here: [https://github.com/SamSaffron/ruby-bench/blob/master/run\_bench.rb](https://github.com/SamSaffron/ruby-bench/blob/master/run_bench.rb)

---

<div class="post-metadata">

**Author:** ![sam](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/sam/32/377_2.png) [@sam](https://community.miniprofiler.com/u/sam)\
**Post date:** [December 12, 2013, 2:09pm UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/6 "2013-12-12T14:09:54Z")

</div>

Regarding UI, we need to decide if we can use one of the existing ones? clone one? build something entirely new? Extend something existing?

---

<div class="post-metadata">

**Author:** ![rwjblue](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/rwjblue/32/982_2.png) [@rwjblue](https://community.miniprofiler.com/u/rwjblue)\
**Post date:** [December 12, 2013, 3:34pm UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/7 "2013-12-12T15:34:13Z")

</div>

Perhaps we could schedule a kickoff call (hangout/skype/etc) to discuss overall vision so that we are all on the same page and we can come up with a plan.

---

<div class="post-metadata">

**Author:** ![sam](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/sam/32/377_2.png) [@sam](https://community.miniprofiler.com/u/sam)\
**Post date:** [December 12, 2013, 8:31pm UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/8 "2013-12-12T20:31:43Z")

</div>

Sure, lets wait a few days for the rest to chime in, call next Tuesday, US morning time, if possible?

---

<div class="post-metadata">

**Author:** ![andypike](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/andypike/32/978_2.png) [@andypike](https://community.miniprofiler.com/u/andypike)\
**Post date:** [December 14, 2013, 8:44pm UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/9 "2013-12-14T20:44:46Z")

</div>

Hi all,

I’m Andy Pike, I’m relatively new to the Ruby community (3-4 years) and come from a .NET background. I’m happy to work on anything but I don’t have a great deal of experience with advanced Ruby topics like performance profiling (totally happy to learn this stuff). My time is hard to predict, some weeks I’ll have loads of time in the evenings to get stuck in but other weeks I’ll have hardly any time. I’m not the right person to take the lead on this one, but happy to support and work on whatever when I can. I’m in the UK and my availability is generally evenings from 8pm.

Cheers

Andy

---

<div class="post-metadata">

**Author:** ![sam](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/sam/32/377_2.png) [@sam](https://community.miniprofiler.com/u/sam)\
**Post date:** [December 16, 2013, 1:54am UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/10 "2013-12-16T01:54:42Z")

</div>

@andypike @rwjblue @dmathieu

Can we do a quick, kick off call on Monday 5PM EST? (it works out to be 9AM my time) My Skype is sam.saffron`<at>`[gmail.com](http://gmail.com) ?

---

<div class="post-metadata">

**Author:** ![mariovisic](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/mariovisic/32/979_2.png) [@mariovisic](https://community.miniprofiler.com/u/mariovisic)\
**Post date:** [December 16, 2013, 3:04am UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/11 "2013-12-16T03:04:51Z")

</div>

Hi everyone

My name is Mario Visic and i’ve been working with both ruby and rails since 2009, I currently work full time on web applications using rails and I live in Melbourne, Australia.

I don’t mind helping out whereever is neccessarily, I’m both a backend and frontend developer. Building a standardized way to run benchmarks and collect results interests me as well as displaying the data in an easy to use way. I’m also really into total end user performance so i’d like for the thing we build to itself be very quick!

I can dedicate around 5 to 10 hours a week to working on the project.

I’ll suppose i’ll speak to you all tomorrow.

Cheers  
Mario

---

<div class="post-metadata">

**Author:** ![dmathieu](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/dmathieu/32/972_2.png) [@dmathieu](https://community.miniprofiler.com/u/dmathieu)\
**Post date:** [December 16, 2013, 8:08am UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/12 "2013-12-16T08:08:58Z")

</div>

@sam: unfortunately, 5pm EST (which is my 11pm) is not going to be possible for me on such short notice ☹

---

<div class="post-metadata">

**Author:** ![sam](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/sam/32/377_2.png) [@sam](https://community.miniprofiler.com/u/sam)\
**Post date:** [December 16, 2013, 9:34am UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/13 "2013-12-16T09:34:23Z")

</div>

No worries, will fill you in after the call.

---

<div class="post-metadata">

**Author:** ![dan\_mcclain](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/dan_mcclain/32/981_2.png) [@dan\_mcclain](https://community.miniprofiler.com/u/dan_mcclain)\
**Post date:** [December 16, 2013, 12:13pm UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/14 "2013-12-16T12:13:22Z")

</div>

Hi All,  
I’m Dan McClain, a partner at DockYard, a Rails and Ember consultancy. I started working with ruby about 3-4 years ago, transitioning to it full time after leaving .Net 2 years ago. I maintain a couple of ActiveRecord related gems, and have started really thinking about performance. I don’t have much profiling experience, but definitely want to change that. I’d be interested in working on both the front end and the data gathering as well. I’d be able to help most on the front end (API and as @rwjblue suggested possible Ember UI) until I get up to speed on benchmarking practices. Most weeks I’d be able to contribute 5 hours, possible more.

I won’t be able to make the call at 5PM today

---

<div class="post-metadata">

**Author:** ![sam](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/sam/32/377_2.png) [@sam](https://community.miniprofiler.com/u/sam)\
**Post date:** [December 16, 2013, 9:43pm UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/15 "2013-12-16T21:43:54Z")

</div>

Perhaps we should schedule a call at a better time, or simply start planning without a call? Herding cats is complicated.

---

<div class="post-metadata">

**Author:** ![rwjblue](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/rwjblue/32/982_2.png) [@rwjblue](https://community.miniprofiler.com/u/rwjblue)\
**Post date:** [December 16, 2013, 9:58pm UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/16 "2013-12-16T21:58:29Z")

</div>

Indeed it is complicated. What we need is a quick breakdown of the steps, and an overall game plan. Doesn’t need to be super detailed yet, though.

I am still game for a call to layout the basic ideas and decide a general path forward…

---

<div class="post-metadata">

**Author:** ![sam](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/sam/32/377_2.png) [@sam](https://community.miniprofiler.com/u/sam)\
**Post date:** [December 16, 2013, 11:02pm UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/17 "2013-12-16T23:02:29Z")

</div>

Basic minutes of call:

@rwjblue @andypike @mariovisic and @sam attended.

- We want to build this on Ruby all the way through, so will not reuse existing PyPy or Go front ends

- Project will be split into 3 parts: UI, API and Runner. Runner will post up json results to the API, UI will talk to the API

- Some suggested an Ember front end for the UI, personally I am happy with whatever the team working on the API decides on be it Ember or traditional. I do want to ensure it is very easy to contribute to the front end.

- I created a home for the project at Github, will add people to the organisation as needed [https://github.com/organizations/ruby-bench](https://github.com/organizations/ruby-bench)

- @andypike and @rwjblue are interested in UI / API. @mariovisic and myself interested in Runner

- We need to define a “language / format” for results posted to the API as a first priority, everything flows from that, @rwjblue to create a topic here to discuss a proposed format

- Timelines are complicated to set at the moment

- Long term goal is isolate performance gains and regressions for a particular bench suite.

- Engine is to be capable of running a suite comparing MRI performance over time, Rails performance over time and so on. When comparing performance overtime environment will be fixed except for the component being tested. So, for example, if testing Rails perf over time one would only change the Rails git repo and keep gems and Ruby versions fixed.

- We need to think of an efficient way to bootstrap environments, I suggested storing historic builds of every version of Ruby to speed up running any historic benches we need.

🙂

---

<div class="post-metadata">

**Author:** ![benweint](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/benweint/32/401_2.png) [@benweint](https://community.miniprofiler.com/u/benweint)\
**Post date:** [December 16, 2013, 11:52pm UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/18 "2013-12-16T23:52:50Z")

</div>

Howdy all! Looks like I’m a bit late, but I’m [Ben Weintraub](http://github.com/benweint "benweint"), relatively new to Ruby (~2.5 years) by way of a mishmash of C, Objective-C, and lots of other stuff. I work at New Relic on the newrelic\_rpm gem, and have set up a system kind of like this internally (though much more limited in scope) for our internal benchmarks. I’m interested in helping to build something better and more general.

I’m specifically interested in helping out with the runner or the API (or both).

I’ve got probably 2-5 hours / week that I can dedicate, though possible more for a spell early next year.

---

<div class="post-metadata">

**Author:** ![dmathieu](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/dmathieu/32/972_2.png) [@dmathieu](https://community.miniprofiler.com/u/dmathieu)\
**Post date:** [December 17, 2013, 8:53am UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/19 "2013-12-17T08:53:06Z")

</div>

That’s an awesome start. Sorry for not being able to make it.  
About bootstrapping the environments, docker has already been mentioned, and I think it’s definitely the way to go to easily get stored and quickly bootable builds.

I could definitely work on setting up this kind of environment.

---

<div class="post-metadata">

**Author:** ![dan\_mcclain](https://sea2.discourse-cdn.com/flex016/user_avatar/community.miniprofiler.com/dan_mcclain/32/981_2.png) [@dan\_mcclain](https://community.miniprofiler.com/u/dan_mcclain)\
**Post date:** [December 17, 2013, 10:27pm UTC](https://community.miniprofiler.com/t/ruby-bench-intros/185/20 "2013-12-17T22:27:37Z")

</div>

I’ll be immediately able to contribute to the front end/API if you are looking to allocate resources. I would be in the runner but i’d need to get up to speed before being able to make super useful contributions

[Next page](https://community.miniprofiler.com/t/ruby-bench-intros/185.md?page=2)
