More than ping pong and pizza

At too many companies, “culture” is an HR issue. How do we make our employees happy?

This misses the point. Culture is a strategic advantage (or disadvantage). Think about it: every one of the company’s products and services are created by its employees, and they are operating in the milieu that is the company’s culture.

Executives that dismiss culture as an HR issue are ignoring the one lasting strategic advantage they can have. If you build the right culture, your employees will build the right products and deliver the right services – products and services that the executive team couldn’t have imagined.

Focus focus focus

I’m a big fan of things that kick ass therefore I’m a big fan of focus.

In almost anything you do, more focus is better. Try to get as focused as you can on doing something really really well. This is pretty hard when you’re talking about yourself, but easier when you’re talking about a company, and much easier when you’re talking about designing an application.

By focusing on one thing, you can really make it awesome. Don’t think Minimum Viable Product. Think Minimum Lovable Product. You want your customers to love your product. That’s rarely accomplished through additional features – it’s accomplished through one key feature, perfectly executed.

When you’re entering a competitive market, it’s unlikely you’ll be able to do everything better than the established players. By focusing on doing one thing much better, you can clearly differentiate.

You have limited time and resources to get a product to market. You want it to market as fast as possible, for as cheap as possible. This is the idea behind the MVP: building less means spending less. But, leave some time in for polishing. Never launch with something that’s not polished: you want to be known for quality not crap. You’ll be tempted to use that extra time to add more features or change it around, but don’t!

Building a brand is like getting fit

Everyone wants to be fit, but few are willing to put in the work.

Over the past decade, I’ve spent a lot of time working out and talking with renowned trainer Nate Miyake. We talk about a variety of stuff, but often end up in the same spot: doing anything well takes time, effort, and discipline.

If you want to get fit, you don’t just wake up one day and decide that today you’ll get fit. Sure, you can buy some Spanx, but they’ll only take you so far. Instead, you have to set goals that work for you, and make the small decisions everyday that help you achieve those goals.

It’s the same thing with branding.

Many times, I’ve spoken to people who think building a brand is just a matter of hiring someone to give them a logo. That’s like buying Spanx – it’s a temporary, uncomfortable solution, and won’t stand up to scrutiny.

Instead, building a brand is a long term process, which requires careful planning and goal setting, plenty of preparation, and ongoing discipline and action.

You don’t get fit by walking into the gym one day, randomly lifting a few weights using poor form, and walking slowly on a treadmill for 15 minutes. But that’s what many people think with regard to their brand.

So how do you get fit?

  1. Set goals that are personally resonant and realistic. Do you want to run a marathon, climb a mountain, or just get to a reasonable level of fitness?
  2. Develop a strategy that includes overall diet and workout plans.
  3. Prepare by getting the things together that you’ll need. This may include things like buying running shoes, workout gear, and getting a gym membership.
  4. Execute! This is the easy part, but also the hardest part. There are no short cuts, no secrets. It’s just discipline and hard work.

This is similar to branding:

  1. Define who you want to be in a way that’s resonant with employees and realistic. In some ways, this the hardest part – and the most valuable part – of the entire process.
  2. Develop the foundations for building that – how you’ll look and how you’ll talk about it. Develop a plan for getting it out there.
  3. Prepare to meet the world by extending it to different mediums – your website, videos, etc.
  4. Execute! This is beyond simply making things look good. This means following up on the decisions everyday that reinforce who you said you’d be.

When it comes to getting fit, most people tend to prefer to skip to step three and stop there: I’ll go by a pair of running shoes – that’ll do it! In the same way, many companies prefer to skip to step three of branding and stop there: we need a new website, and that’ll change our brand! And it doesn’t, and they wonder why.

Some useful tools

Here are some useful tools: – for automated testing – broken link testing – mount remote drives (SFTP, etc)locally – MySQL management (SequelPro is better) – Download website HTML (useful for backing up marketing sites)


“Agile” may not mean what you think it means

I was first introduced to “Agile” processes back in 2000, during the first dot com. I was working on a web project, we were trying to get it to market quickly, before the bottom completely fell out, and the engineering contractor suggested trying it. It was a relatively new concept, and a good one. It made sense, and I figured that it would a naturally become the dominant way to run projects.

So I’m constantly surprised that fifteen years later, people are still throwing around the term “agile” like it’s a new thing, and not really getting what it actually means.

So here you go:

According to the dictionary, agile means “able to move quickly and easily.”

In our context – software development – agile means a design and development process that allows a project to adapt to changing markets and business requirements. It’s typically characterized by division of tasks into short phases and frequent reassessment of plans.

In a fast-evolving market (most markets these days), a company can’t identify a need, then take two years to develop a product to meet that need. By the end of the project, the market will have changed and the product will have become obsolete. An agile process may get an initial project to market faster, but it will also allow the company to track the changing market through the duration of the project.

What it doesn’t mean:

  • Faster
  • Cheaper
  • Ad-hoc
  • Disorganized
  • Unplanned


People don’t actually  actually use these terms. They use “agile” as a substitute word. A firm says “we’re agile,” and they mean, “we don’t really have a process for that and make it up on the fly” and a client thinks, “great, this project will be fast and cheap.”

This is not agile! This is ad-hoc and crappy.

Thoughts on things, uncollected and poorly written