Dan Ubilla

A Software Developer's blog focusing on JavaScript, Rails, and CSS.

What Are Your Signals?

I was recently in a one-on-one with a tech lead when we began talking about how his team was doing. His team had recently added one member and lost another, so the chemistry of the team was a topic that was on our minds. He mentioned how he felt the team was coming together, and I found myself asking a question that I’ve been reaching for a lot lately: “What are your signals?”

Angular Testing: Services

Angular services serve as a way for us to store data that will be shared through our various Angular components. Services act as a single-point of truth for our application’s data, and as such they are often reused, sometimes heavily. Ensuring services are well-tested is a crucial part of maintaining a healthy Angular app.

Active Support Presence and the Single Line Method

Ruby and Rails are both built to help us write concise, meaningful code. One pattern I constantly find myself writing is a method that returns one thing, if it exists, or a default value. This can work well upfront, but it takes a little more care if the case gets any more complex. Fortunately, Rails has just the trick to keep the more complex case nice and lean in its ActiveSupport gem.

AngularUI Router and Injecting $state vs $stateParams

AngularUI Router is the de facto routing library in the Angular world. It takes the traditional routing mechanisms, and builds a subtle, but brilliant abstraction upon them. Instead of merely listening for requests at a set of URLs, it creates the concept of a set of states, each one configurable with an optional URL. This abstraction allows for flexibility when refactoring routes, but most interestingly, it creates the concept of a current state and stores key-value parameters of that state. Both the application’s state and state parameters are available for injection with $state and $stateParams respectively, although, as we’ll see, only one is necessary for injection in any given controller.