Close
Glad You're Ready. Let's Get Started!

Let us know how we can contact you.

Thank you!

We'll respond shortly.

Stephan Hagemann

Posts By

LABS
Preparing for RailsConf Component-Based Applications Workshop

At this year’s RailsConf I am going to be teaching the workshop: Get started with Component-Based Rails applications! It is a 90 minute session that gets you from 0 to 10 components in 90 minutes. The session is in the Labs track and will be held on day 1, Tuesday, April 21 at 3:50pm.

Read more »

LABS
Merits of strict separation in component-based Rails applications

A response to “Rails 4 Engines” at TaskRabbit

Throughout this post I am using “engine”, “Rails engine”, and “component” interchangeably, using what fits best in a given context.

Earlier this year, Brian Leonard published his blog post Rails 4 Engines on TaskRabbit’s use of engines in their service.

Read more »

LABS
Options for Admin Engines in Component-based Rails Applications

In my recent RailsConf talk I said that I would help out with questions regarding component-based Rails applications (#cbra). A few days ago I got one such question via twitter: How to make a unified admin tool for independent engines?. Here is the gist:

Zac: @shageman starting an app from scratch using #cbra and wondering how to handle a shared admin tool w/ regards to non-shared dependencies

Stephan: @zachallett Are you wanting to build one admin for multiple independent parts?

Read more »

LABS
RubyMine 6 for component-based Ruby and Rails applications

I have previously written about how to use IntelliJ to set up multi-project support in RubyMine. I am happy to say that that hack is no longer necessary. Multi-project support was built into RubyMine 6! It makes component-based Ruby and Rails applications with multiple unbuilt gems and engines even nicer to develop.

Read more »

LABS
A channel-based ring buffer in Go

After Jared’s excellent introduction to Go concurrency and his look at patterns of Go channel usage I would like to share a channel-based ring buffer in Go based on channels that we developed for the Loggregator Server in CloudFoundry (CF).

CloudFoundry’s Loggregator Server

The goal of Loggregator is to allow application developers to tail the logs of their applications when these are running on CF.

Read more »

LABS
Getting "by" with rspec feature specs

If you find that you are making your rspec feature specs longer and longer to cram more coverage in or to prevent the setup costs for more, shorter tests, you will probably have found that it becomes very hard to figure out what’s going on.

Read more »

LABS
Rails autoloading for your gem

We have been developing gems a lot as part of giving more structure to Rails applications: the idea and some techniques. Doing this often sees a Rails application and one or more gems being developed at the same time. This unfortunately breaks Rails autoloading.

Read more »

LABS
Showing and hiding conditional HTML without Javascript

Have you ever filled out an address form that had a checkbox for “my shipping address differs from my mailing address”? When you click that box a conditional form part gets revealed that allows you to enter another address. We had to build something very similar the other day and stumbled on a neat way to make the conditional part show and hide with CSS only.

Read more »

LABS
My must-see list from MWRC 2013

TL;DR

If you watch one talk from Mountain West Ruby 2013, watch Greg Baugues: Devs and Depression.

Talks @ Mountain West Ruby Conference

Mountain West Ruby, was a great conference: lots of content and awesome people. It had one DevOps day and two Ruby days.

Read more »

LABS
GoSpotCheck Is Looking For A Web Application Developer

At Pivotal Labs, one of the services we provide our clients is helping them interview and hire. Pivotal Labs and our clients place a strong emphasis on Agile development and its many aspects: Pair Programming, Test-Driven Development, rapid iterations, and frequent refactoring.

Read more »