The Flawed Logic of “Move Fast and Break Things” by Matthew Cordasco

One of the most popular startup quotes is “move fast and break things.”Inspired by Facebook’s hugely successful growth and development philosophy, is a reminder of the importance of speed in modern business.

Why?

Ilya Pozin, advisor of Coplex and founder of Pluto.tv had this to say,

“...The need for speed in launching a startup has little to do with being the first to market, and everything to do with having the necessary resources. New entrepreneurs spend so much time trying to get everything perfect that they run out of money.”

Source.

Speed gets your product in front of customers, and it generates real, live feedback from users. It lets you move fast, in other words—which has a host of benefits for both you and your users.

Zuckerberg Changed His Mind

Mark Zuckerberg, founder and chief executive officer of Facebook Inc., speaks at the TechCrunch Disrupt SF 2013 conference in San Francisco, California, U.S., on Wednesday, Sept. 11, 2013. Zuckerberg, who has been pushing for a revision of U.S. immigration law, plans to meet with the top four Republicans in the House next week in Washington. Photographer: David Paul Morris/Bloomberg via Getty Images
Mark Zuckerberg, founder and chief executive officer of Facebook Inc., speaks at the TechCrunch Disrupt SF 2013 conference in San Francisco, California, U.S., on Wednesday, Sept. 11, 2013. Zuckerberg, who has been pushing for a revision of U.S. immigration law, plans to meet with the top four Republicans in the House next week in Washington. Photographer: David Paul Morris/Bloomberg via Getty Images

For all its advantages, there’s a major downside to “move fast and break things.”

Bugs.

In fact, in 2014, Mark Zuckerberg said this about his famous saying:

“We used to have this famous mantra [of move fast and break things]... the idea here is that as developers, moving quickly is so important that we were even willing to tolerate a few bugs in order to do it...

What we realized over time is that it wasn't helping us to move faster because we had to slow down to fix these bugs and it wasn't improving our speed.”

Source

When you move fast, you risk delivering a poor-quality product. Worse, you risk developing a reputation for delivering low-quality work.

Bugs Destroy Your Reputation

link

Do you know what happens when you release buggy software?

That’s from a of a simple iOS calendar app. If you fail your customers they will be unforgiving.

Poor reviews cost software companies dearly. And that’s true whether you make an iPhone app or enterprise software.

54% of chief executives rate customer referrals as their best leads, showing the importance of giving your existing users and customers an enjoyable, bug-free experience.

When users are happy with your product, they’re more likely to refer their friends. This is key to anyone making and selling software, no matter the customer base.

Hardware bugs are even more dangerous. Just look at the Samsung Note devices that are catching on fire—a hardware bug that’s going to cost Samsung a cool $1 billion to fix through its recall.

That kind of bug would bankrupt all but the biggest companies. Certainly, most startups would not survive a crisis of that magnitude.

How to Find the Right Mix of Speed and Quality

Speed and quality, then, are your two objectives when building and releasing new software.

Speed gets your product in front of customers faster; quality slows you down, but it’s critical if you want people to actually adopt and use your product. How can you find the right a balance between speed and quality?

By understanding when to move fast (and allowing a few bugs), and when you need to slow down and ensure a high-quality release.

Go for Speed When...

Here are a few ways you can (should) move fast.

1. Clearly-labeled beta features or products

If you have a new feature you’d like to test with users, there’s nothing stopping you from releasing it.

Your job is to set expectations. If you let users know the new feature is something you’re testing, they won’t be upset if it has a few bugs.

Just be sure you aren’t releasing a feature that simply doesn’t work. Even a “beta” label won’t save your reputation if you launch an unusable product.

2. Pricing packages and marketing campaigns

There are an endless variety of changes you can make to your marketing campaigns and pricing options.

Have sales, offer incentives, create ads and targeted sales funnels. Then watch the numbers.

Keep what works; discard what doesn’t. When you’ve got something that works, break it again and see if you can beat your numbers with something new.

Go for Quality When… (Learn from Apple’s Giant Mistake)

maps

Sometimes you really do need to focus on quality.

Apple learned this the hard way when it released Apple Maps in 2012, a app that worked—but had a host of problems.

The outcry was so strong, Tim Cook was forced to write an apology in an open letter on Apple’s website, saying, “We are extremely sorry for the frustration this has caused our customers and we are doing everything we can to make Maps better.”

As the Apple Maps fiasco shows, launching buggy software can have a tremendous negative impact on your brand.

There are two times when you should be focused on quality, not speed:

1. When you’re changing your core product

Your core product is the center of how you deliver value as a company. If you make a change, it needs to work flawlessly.

No amount of marketing or new feature releases can save you if your core product is broken.

2. Anything you intend to market heavily

Beware the trap of Apple Maps.

Marketing is promise making. It’s setting the expectation for quality in the minds of your users.

If you’re planning an Apple-style launch event (or any type of marketing for a new product or feature), that new product or feature must live up to the hype.

If it doesn’t, your marketing and sales efforts will be wasted—and customers won’t believe your marketing promises the next time.

The QA Shortcut: Speed AND Quality?

We’ve been talking about “testing” and “quality,” which means we need to spend a moment talking about quality assurance (QA).

In development companies, QA is a formal (or sometimes informal) vetting of the software after it’s been created.

In other words, QA testers use the software, then report whether it works correctly or not.

A good QA process knocks out bugs and usability issues.

As we’ve been discussing, a higher-quality product also means more users, happier users, a better experience, a greater time investment in your product, higher retention, and more word-of-mouth advertising.

Traditionally, QA is handled by QA professionals, either in-house or through an outsourced service.

It’s slow and expensive, but for any product or feature you intend to market, it is much better than delivering software that’s full of bugs.

The Crowdtesting Alternative: Fast, Affordable, Highly-Effective QA

There is a way to do QA that is fast, affordable, and highly effective.

It doesn’t require in-house developers to spend a week testing new features. And it doesn’t require an expensive contract with an outsourced QA testing team.

You may have heard the buzz already. It’s called, crowdtesting.

Crowdtesting has several remarkable advantages over traditional QA and excels at expanding the testing capabilities of a team.

Crowdtesting leverages a high quality global workforce of testers, often using real devices in real world scenarios. They are available 24x7 and work in parallel, meaning you can accomplish a tremendous amount of testing in a short period of time.

The best crowdtesting platforms are truly on-demand and can launch tests in real time for a variety of test types such as Explorative Tests, Functional Tests and Usability.

Crowdtesting is more cost effective than traditional methods because it is efficiently on-demand (only pay for resources while you use them) and the compensation for testers is efficient, varying from hourly rates to incentives for bugs.

One of the most popular forms of crowdtesting is an explorative bug hunt. These are generally less structured and involve testers performing functional testing like an end user would experience the product.

Why is it critical to do a bug hunt?

Johanna Rothman, author and consultant had this to say,

“Developers create working product and problems, also called bugs. Teams of people can find and fix problems fast.

If you separate developers and testers, your developers are busy writing new problems. The testers hunt down those problems and report them. Maybe then, the developers will stop creating new problems, and solve those problems with code.”

Here are four more reasons to consider running a bug hunt:

1. You’ll Discover Bugs, Often in Large Numbers

bugs

Before you crowdtest, it’s easy to underestimate how many errors there are in your code.

Data from a 2013 Coverity Scan of more than 450 million lines of code suggests that there are 0.69 bugs per 1,000 lines of software code, on average.

That might sound acceptable, but remember that many bugs aren’t discoverable by the Coverity Scan. Plus, the test itself is a scan of commercial software. Other sources estimate that there might be anywhere from four to 10 bugs per 1,000 lines of code, on average, in most software.

In other words, if you have 10,000 lines of code, you probably have between seven and 100 bugs to find and squish—if you want your software to work properly.

The longer your code, the more likely it is that your software contains undiscovered bugs that can affect its performance, stability, and security.

In a bug hunt, testers will dig into your application to find and report on the bugs that you don’t know about.

You’ll receive a detailed analysis of your software’s defects for your development team to fix.

All of this can be done in just a day or two, allowing you fix the problems before release, but still move fast.

2. You’ll Find Bugs Outside Your Usual QA Testing Scope

Traditional QA testing is ideal for making sure the key features of your application function properly, but it has its limitations.

In traditional QA, most bugs will be found within your software’s key features. Bugs that are outside the scope of your testing are likely to go undiscovered (and unfixed).

Since bug hunting is all about exploring your application, it discovers a greater number of bugs than traditional structured QA testing. This allows you to fix more bugs before release—and deliver higher-quality software as a result.

3. You’ll Discover Bugs from a User’s Perspective

Users are the ultimate judges of our software’s performance. Bug hunting lets you view your software from a user’s perspective, complete with all of its flaws.

From form fields that aren’t user-friendly, security issues that aren’t easy to spot, or interface designs that don’t work the way you thought they would, bug hunting gives you a user’s view of your app’s weaknesses.

As a result, you’ll get an unbiased view of the true strengths (and weaknesses) of your product.

4. It’s FAST

Don’t know where to begin your QA testing process?

If you’re new to software development and don’t have a detailed testing plan, bug hunting lets you discover critical bugs in your software in less time than a structured QA testing process.

Instead of having to prepare test criteria and identify priorities before you start testing, bug hunting identifies major bugs through the hunting process itself.