HBase Tutorial: 5 Tips For Low Memory EC2 Stability

Bryan Beaudreault

When running on EC2, you often can't win when it comes to instance types. One of the more cost-effective types available is the c1.xlarge. It has enough CPU to handle compactions, a decent amount of disk, and high network I/O. However, we've found that the relatively low memory of 7GB on the c1.xlarge often leads to stability issues in highly concurrent HBase clusters. While there are other more expensive options, this HBase tutorial will help you make the most of your c1.xlarge RegionServers.


Mesos, HubSpot, and the Singularity

Thomas Petr

Apache Mesos is one of the core pieces of infrastructure that helps HubSpot developers deploy 300 times a day. In this talk, Tom Petr (@tpetr) explains HubSpot's deployment infrastructure and the benefits that Mesos provides. Specifically, he showcases two open source projects: Singularity, a home-grown Mesos framework, and Baragon, an API for manipulating load balancers.

Customer-Driven Product Development: How Signals Handles Customer Support

Matt Bilotti

As the Signals team works toward an increasingly tighter product-market fit, we've taken a somewhat different approach when it comes to support. Operating at a low .01 tickets per user, we’ve used customer-driven product development in the early stages of Signals. While the fundamentals of this approach aren't radically new, it does speak to how you can create a beautiful product experience, faster, by keeping your entire team plugged in with your customers.

Working with shaded Guice

Ian Marlier

HubSpot's Product team writes much of our backend code in Java, with Google Guice providing depedency injection. We've created modules to handle most common tasks, modules which we can access with no more than an @Inject annotation.  

Recently, though, we've been working with Elasticsearch, and have run into an issue reusing our existing modules.  Elasticsearch also uses Guice, but it uses a shaded version; instead of importing com.google.inject.*, it imports org.elasticsearch.common.inject.*.  When evaluating dependencies for injection, Elasticsearch requires modules that extend org.elasticsearch.common.inject.AbstractModule, instead of com.google.inject.AbstractModule.  As our existing modules extend com.google.inject.AbstractModule, Elasticsearch isn't able to use them directly.

Sharing the Load: Where to Go for Help as a New Product Manager

Angela DeFranco

You just got asked to Product Manage a sweet new piece of software, and you're pumped! And why shouldn't you be? Product management is one of the most rewarding, challenging, and, at times, exhilarating jobs a person can get. But it is also one of the most difficult ones.

Using CocoaPods to Modularize a Big iOS App

Anthony Roldan

Selecting the right architecture for your mobile app is a pretty big deal. It will shape your daily workflow, frame the problems you face, and can be a huge asset or huge liability.