Posts
-
Three Takeaways from Scaling 101
A few weeks ago, I had the chance to catch For the Win’s panel on scaling teams. Scaling 101: How to Grow Your Team Without Losing Your Culture was a panel consisting of leaders from engineering, HR, and recruiting discussing lessons learned from scaling teams at Meetup, Managed by Q, and others. The panel covered recruiting, interviewing, and onboarding in a tight hour. Here are the three lessons I took away from the panel.
-
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.