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

Let us know how we can contact you.

Thank you!

We'll respond shortly.

Jared Carroll

Posts By

LABS
IntelliJ F6-based Refactoring Keyboard Shortcuts on OS X

Use powerful refactoring commands to safely make small and large-scale changes.

Undo any refactoring with command + Z.



Read more »

LABS
Setting up Robolectric in Android Studio 1.1 on OS X

Download Android Studio 1.1

Download and install Android Studio for Mac.

Setup Unit Testing Support in Android Studio

Check Enable Unit Testing support under Gradle Experimental in the Android Studio preferences.

Open up Build Variants and set the Test Artifact to Unit Tests.

Read more »

LABS
Test After in Java: Subclass and Override

On a recent project, my team inherited a large, lightly-tested Java/Spring codebase. As we began to modify the code test-first, we ran into two common obstacles that prevent unit testing in Java:

Class methods Objects instantiating other classes (using the new keyword)

There are libraries that can help, but we wanted to tread lightly, so they weren’t an option.

Read more »

LABS
Trying Out RubyMine 6.0

Last week, JetBrains released RubyMine 6.0. The most significant feature is multi-project support; perfect for component-based Rails architectures. However, in this post, we’ll look at OS X keyboard shortcuts for some of the other new features.



Read more »

LABS
Productive Rails View Development in RubyMine

RubyMine includes several commands to simplify working with Rails views. In this post, we’ll look at OS X keyboard shortcuts for view navigation, creation, and previewing; ERB code generation and refactoring; and HTML code generation and navigation.



Read more »

LABS
Messages Not Types: Exploring Ruby's Conversion Protocols

Duck typing is a style of programming that relies on what an object does, rather than on what it is. Avoiding class dependencies results in highly flexible code. Ruby’s conversion protocols, used throughout the core and standard libraries, are a great example of the power of duck typing.

Read more »

LABS
Next Steps in Go: Code Organization

My first steps in learning Go were simple “scripts”; programs compiled and immediately executed by the go command-line tool. This was a great way to quickly get started; kind of similar to using a REPL. However, I soon wanted to learn how to structure larger programs, create reusable libraries, and use third-party code.

Read more »

LABS
Channels in Go: Beyond the Basics

In our last post, we looked at the basic concurrency building blocks in Go: goroutines and channels. Goroutines are independently executing functions which use channels to communicate. In this post, we’ll take a deeper look at a few other ways of using channels.

Read more »

LABS
A Beginning Look at Concurrency in Go

The Go language includes several unique features, many of which are found in other languages. The most interesting one however, is its support for concurrent programming. Instead of a traditional approach using locks and mutexes, concurrency in Go is based on communicating sequential processes.

Read more »

LABS
Hiding the Details in RubyMine with Code Folding

By selectively hiding and showing sections of code, code folding allows you to focus on what’s relevant, while ignoring irrelevant details. Code folding is also a useful way for quickly getting a high-level overview of a large section of code. RubyMine adds custom folds to the standard list of editor code folding features.

Read more »