The SaaS products we used in 2013

A while back I wrote a post about some of the tools we use, and I thought an updated list of all the SaaS products we use to run our business might be a nice way to end the year.

We spent just over $12,000 on hosted software in 2013, not counting our Engine Yard server hosting. While this money is a real expense, I find it to be worth every single penny and can't imagine running this business without these great tools. Hopefully there's something in here that you'll find useful too.

Developer Tools

Code ClimateIf I were give out a SaaS product of the year it would probably go to Code Climate. Derek wrote a fantastic blog post about how we use Code Climate so I won't repeat it here. It's difficult to overstate how big of an impact it's had on our team.

GithubWe use github to host most of our code repositories. It's pretty popular and you probably don't need an explanation from us as to what it is.

BeanstalkWe also use beanstalk to host some of our repositories - primarily for the fantastic deployment tools that come with it. Note, if you just need deployment tools, check out dploy.io. It's made by the same fine folks over at Wildbit.

PostmarkOur chosen provider for the transactional email delivery of all our products as well as all of our client projects. Easy to use, with a lovely interface, and built by the team at Wildbit.

Twilo and TropoTwilio and Tropo are pretty big competitors. We use them both to send and receive SMS messages for our products and customer projects alike.

FormstackWhenever we need a form that we don't want to build ourself, we use Formstack. I did a full write up of Formstack a couple years ago that's still pretty relevant.

ChartbeatIf one of our apps has a problem or a spike in users, chartbeat alerts us to this reality. 

SemaphoreHosted Continuous Integration testing for Rails applications. It links up to your Github account and runs your automated tests with every commit.

AirbrakeWhen a user of any product we build gets an error, we're alerted of the error by Airbrake. It's a great way to fix issues fast and we've even had times where we've emailed a customer to tell them we noticed they ran into an error and that it had been fixed before they even had time to email us. 

Project Management and Team Communication

BasecampThe first SaaS product I ever purchased. We still use it every day to manage our projects, communicate as a team, and work with our clients. The iOS app sets a new standard for what business apps can do on the iPhone and the web app is a joy to use. With Jason Zimdars at the helm it's never been better.

Blossom - Blossom is a card based application similar to Trello and other Agile/Kanban type tools, but it's simpler and sort of feels like a 37signals inspired product. We loved the clarity it gave us as to who was working on what, and what development state a feature was in. But we regularly struggled keeping the two in sync. If we only worked on one internal product we may very well have moved to Blossom entirely, but it's file storage and conversation features just aren't powerful enough for what we need considering the number of projects we have.

Hipchat - For group chat needs we left Campfire this year and moved to Hipchat. We like being able to quickly have one on one communications, the ability so set a status, and the desktop and mobile apps are superior than Campfire's. I should note though: there is a very real increase in interruptions with hipchat over campfire and I often consider moving back to Campfire. As of now it's a net win being on Hipchat but it's not without it's tradeoffs.

Google HangoutsWe use Google Hangouts constantly. Whether interviewing job candidates, having team discussions, or just wanting to have a conversation while feeling more connected we use google hangouts.

Sales and Marketing

BiteSize PRThis app is really more of a service powered by humans who look out for reporters who want to interview experts in a particular field. When they find a good fit they write up a pitch that you can approve which gets sent from your email. Super useful and it's how I got profiled in the Chicago Tribune.

ToutWe use tout to send a lot of emails but still sound human. Tout allows you to templatize emails that you send often so you don't have to rewrite the same things over and over again, while still allowing you to customize pieces to individual recipients.

HighriseWe use Highrise to store all customer contact information, email communications, notes and tasks for customer follow-ups.

IntercomIntercom allows you to see how people who try out your software are interacting with your product. It allows you to see who is the most active, least active, likely to convert, etc. You can also use it to message people who meet certain criteria and a host of other things. We probably only use a fraction of it's power but we still find it super useful.

LuckyOrangeA type of analytics tool, Luck Orange lets you watch how users are interacting with the marketing pages on your site so you can see how people are using it, what's working and what isn't.

Heap Analytics and KissMetricsWe used both in 2013 - neither to the extent we should. Hopefully we'll get our analytics act together in 2014 and I'll be able to share something more intelligent here next year.

SquarespaceWe started building a ton of websites for ourselves on Squarespace this year. The Tula blog, Project Idealism and the Tula documentation site are all powered by Squarespace. It's powerful, easy to use, and can be used as a website, blog or e-commerce store. I'm not exaggerating by saying that we turned down tens of thousands of dollars in revenue this year by pointing people to Squarespace because it would serve them better than a custom made website. If you need a website, check them out.

Payment Processing

RecurlyWe use recurly to process all payments that are made for our software products. I like that we aren't reliant on a single gateway for processing payments. They had a major incident this year where they basically locked themselves out from accessing credit card data stored on their systems. The way they handled it made me like them even more. We started using them before Stripe came out and I like them a lot - but if we were starting over today I'm not sure I'd choose them over Stripe.

StripeStripe powers all the credit card payments we conduct inside Tula Software. They are fantastic, and if you need to accept credit cards for anything you should check them out.

SquareSquare allows you to process credit cards with your phone. It's magic. Everyone should have a Square account.

General Business and Miscellaneous

LessAccountingThere are a ton of options for accounting software. We chose LessAccounting because it's easy to use, and the founders are super nice guys who are active in the developer community.

TickWe use tick to track our time, make sure we're hitting budgets and provide clients with detailed history of what we were working on and when we were working on it. 

TgethrTgethr is a group email application that makes it very easy to create a group email address and add people to it. Whenever I need some lightweight way to communicate with a small group of people I use Tgethr.

FreshdeskWe use freshdesk to handle all our customer support requests that come in for Tula. It's very easy to use, integrates very nicely with email, and has helped us provide great support for our Tula customers.

DropboxWe started using Dropbox more than ever this year. (And then basecamp went and built a super nice Google Docs integration so we might be moving in that direction in 2014.)

TeuxDeuxA super simple todo list that doesn't cost much money at all. 

SimplecastWe use simplecast to publish the Project Idealism podcast. I LOVE IT. It's super easy to use and makes creating and publishing a podcast as easy as writing a blog post. If you've ever thought about starting a podcast but didn't know where to start, look no further than Simplecast. 

SaaS is the new rent

When I look at this list, it reinforces my belief that SaaS is the new rent. For every one of these tools I can explain why we use them, why they are worth what they cost and how they help our team to be more efficient. 

I love each and every one of these products because they make our team and our company better.

To all of you - thanks for the great products you put out in the world - our 2013 wouldn't have been as great without you.

Taking time to disconnect

The Chicago Tribune has a digital section called 'Blue Sky Innovation' where they talk about work, business and entrepreneurship in the new economy. They did a story about people who take time to disconnect, and happened to find me as a good fit to profile for their article. Maybe the saddest, funniest, most true thing ever written about me:

He attends yoga about three times a week, finding the moves similar to stretches he did when he was a diver in college. He found himself welcoming the hour of disconnection and realized it was the only time he was away from glowing screens.

Design moves down the stack

The purpose of design, is to solve problems. Yet when most people think of design, we still think in terms of visuals, not functionality.

It's easy to do this because a lot of the time, those who have solved usability problems in an elegant way, have also worked hard to create visually beautifully interfaces. But it would be a mistake to think that function is born from beauty.

I do think though that we can say beauty is indeed born from function.

One of the things I've noticed about the people and companies I admire the most, are that they treat design as much as a programming/functional/build problem as much as they do as a visual problem.

When I say design moves down the stack, I mean this in both small and large ways. 'The stack' can mean anything from a programming framework, to a computer network, to an electrical grid.

Some examples that come to mind:

In each of these examples, we see design moving further and further down the stack, and I can only see this trend accelerating.

What this means in terms of impact, I would imagine, is that design and engineering will become so closely intertwined that it will be almost impossible to separate the two. And even if you could, there wouldn't be much value in doing so.

What I particularly like about looking at design in this way though is that it can help identify opportunities and hurdles alike, which can in turn be used as a guide.

Take Comcast as an example, a company we all love to hate. One of the things they could be doing, is trying to figure out how to make their own hardware obsolete. Their design could move down the stack by allowing you to subscribe to their service just by downloading an iOS app.

Interestingly, Netflix is now competing with Comcast (and HBO, Showtime, etc.) by moving their design down an entirely different stack. Not a technology stack - which they already have - but a content stack. They now make their own TV shows.

The other nice thing that comes with thinking about design in this way is that it opens up opportunities for all of us, even people who might not consider themselves a 'designer'.

Because we all have our own world-views and sets of problems, we can all find design direction by looking down the stack.

Proximity

 I'm the first person that will talk (or yell) about how insane it is that so many people aren't leveraging the power of the internet to build internet products and companies.

Our small team builds, maintains and sells a product used by independent yoga studios across the world, we've helped numerous startups launch their ideas, and we've implemented software solutions for billion dollar companies that have eliminated legacy systems with modern software.

And we do this with a team of people across four states, three countries, and two continents.

The notion that you can't do great things when you're not in the same location as the people you're working with is simply wrong, and getting me to believe otherwise would require me to think that I am living my entire life in an imaginary world.

But nothing is free. And as with everything, there are tradeoffs.

Because the internet is so powerful, and because it enables so much, we can forget about how important proximity is. 

We can in fact lean too much on the internet.

Being on a hangout with someone is not the same as giving them a hug. Sharing emoji in a chat room is not the same as laughing over drinks. And reading an email about a concern someone has is not the same as hearing their voice crack in person as they share their fears.

The past few months I've been reminded that getting together with the people that are important to you, in person, is critical to maintaining healthy relationships.

Our team recently had a retreat in Wisconsin where for the first time most of us got together in one place. It was a pivotal moment for us.

One of our programmers who lives in Europe came to the states for 3 months over the summer, and there's no doubt that our relationship is stronger because we were able to spend time together.

I just came back from a visit with an important customer in California and while we work together very well remotely, there are just some challenges that are easier to tackle when you're in the same room together.

The internet is wonderful. That I am able to run an entire business from a laptop, and that anyone who works with us can work from anywhere in the world that they want, whenever they want, is something that I am grateful for on a daily basis.

I truly believe we are living in magical times. 

But it's important to recognize that when it comes to human relationships, the internet *facilitates* connection. It isn't connection itself.

Proximity matters.

Software is not bricks

I've had a number of conversations lately with people who are building web products to either support an existing business, or to start a new business entirely. These conversations take place with existing clients, prospective clients, friends and family members. 

We make software, so we have these conversations frequently. But it seems now more than ever everyone has an idea for an app.

One theme that keeps coming up is that people will often compare a software project to some sort of other 'real world' project that they can relate to. This makes sense, because by relating their idea to something they have experience with it helps them to understand the process of building something.

Indeed, we'll often use brick and mortar analogies saying something like "we'll definitely want to clean that up later, but you don't start hanging the paintings before you put up the drywall" if we're explaining why it's not quite time to work on a new icon.

But there are very real and important ways to understand how 'software is not bricks'. If you're thinking of building an application of any kind, I think these are some good things to keep in mind.

Most People have a frame of reference for the cost of bricks, but not for software

Just about everyone pays a monthly rent or mortgage on a home. We also tend to have a general understanding that the city in which you live has an impact on your home. We know that a home in San Francisco is more expensive than Iowa or Nebraska. Because of this, we have a built in frame of reference for how much things cost. 

The exact opposite is true with software.

Most people interact only with software that has had tens of millions of dollars worth of design and development effort put into it, and most people have never used the first version of a beta product. Their frame of reference for how software should work are Facebook, Twitter, Square, iOS, and maybe something like Salesforce and some productivity suite from Microsoft. 

The kicker is that just about no one goes to Facebook and thinks to themselves, 'wow this is some nice software, I bet it cost a fortune to make.' But if you walked into a 4 bedroom single family house in San Francisco that looked over the golden gate bridge you would know it took some real money to purchase. 

The industry helps perpetuate this with stories of 'kids in hoodies' hacking all night and then selling it for a couple million dollars. The difficult work that comes for years after is treated like a footnote.

Value is based primarily on the number of people that use your product

If you spend a million dollars building an office complex and you don't rent it out to anyone, it still has some intrinsic value. It's highly unlikely that the value of the building will reach zero. Likewise, putting 100 people in a small apartment will do nothing to improve the value of the apartment.

Again, software is the opposite.

 You could spend a million dollars having the best development team in the world writing the cleanest code with the perfect design that you imagined. But if no one is using it, or if it's not solving a real problem or providing real entertainment value, then it really doesn't matter how much time or money you spent building the software. A million dollar investment in software could in fact be worth close to nothing.

Of course there's an opportunity here which is that if you can work like crazy to solve real problems and get users, the simple fact that you have customers can help you overcome a lot of other issues, even if your product isn't as robust as you want it to be.

Limitations on software are less obvious

If you were building a house and suddenly decided it might be sweet to have a swimming pool on the roof, you have a built in understanding that this change would require significant effort to accomplish. With software, the limitations are so much less obvious that you have to constrain yourself because you can do just about anything. 

It's possible to do so much, that you can actually do too much.

Software is not bricks

It's not a good or a bad thing that software is not bricks. But if you're thinking of starting a project make sure you're aware that both the risks and rewards are inherently different from those in the physical world, and this reality can work with you or against you.

Build wisely.