Alert icon Keyboard navigation enabled.
Alert icon TAB or Shift+TAB to navigate across. Down ↓ to open menu. ESC to close menu.
Alert icon Down ↓ to select section. Right → to activate. Up ↑ / Down ↓ / Tab to traverse all. ESC to exit.
BeyondTrust
Skip to content Use space or enter to skip.

What can we help you find today?

Instant Results
  • Website Results
  • Technical Documentation

Filter Options

Focus your search

Filtering by

Your recent searches:

Contact Us Chat with Sales Get Support
  • English
  • Deutsch
  • français
  • español
  • 한국어
  • português
  • Home
  • Resources
  • Blog
  • Nothing comes for free: Just say no current page
Link copied

Nothing comes for free: Just say no

Oct 20, 2017
Author:
Chris Collingridge
Blog banner default
Nothing comes for free: Just say no
Chris Collingridge

Sometimes when you’re involved in developing software, a developer offers you a feature or an option “for free”. Most typically, this is part of a framework, plugin, or library that offers this functionality anyway: they view it as easier to leave in than to take out.

So, why not? Everyone loves something for free, don’t they?

Paradox of choice

We all like choice. Imagine you need some jam, and you head down to the shop to get some. But when you get there, they only have one flavor and one brand – you’d probably be disappointed, and wishing they had more.

Strangely though, if there is too much choice, most people can’t decide what to pick. A now-famous experiment with jam took place in a grocery store in 2000. On one day, there were six types of jam for people to sample and buy if they wished; on another day, 24 types of jam to sample and buy. Although more people sampled the jam when there were 24 types, people were 10 times as likely to buy when there were only six choices.

By adding more choices to a software product, you increase the mental effort to use that product. Despite first appearances, that option you got for “free” is making your software harder to use.

Death by preferences

Linked to the paradox of choice is an excess of preferences. If there’s more than one way something can work, it’s easy not make a decision and just include it as another preference. Often, this is driven from a lack of clarity about what problems people have and how they can be solved, or a lack of clear vision about what your product is and isn’t for.

Including more preferences outsources these decisions to your users though – and for most users these are decisions they don’t want to make. They just want stuff that works.

If you’re responsible for maintaining that software in the future, more preferences means more testing, more combinations, and more things to go wrong.

Innovation is about leaving things out

Whatever software we’re developing and whoever it’s for, we want to focus on the most important stuff – the stuff that really helps people achieve things in their life and work. This takes an understanding of what they’re trying to achieve – and why – and a focus on helping them solve those problems.

More choices and more deviations from that focus diminish your ability to concentrate on innovative solutions and products.

"People think focus means saying yes to the thing you've got to focus on. But that's not what it means at all. It means saying no to the hundred other good ideas that there are. You have to pick carefully. I'm actually as proud of the things we haven't done as the things I have done. Innovation is saying no to 1,000 things.” Steve Jobs

“…that was music designed by leaving things out – that can be a form of innovation, knowing what to leave out” Brian Eno

Everything competes with everything else

If you’re building great software, you have to be great at saying no. When you’re in charge of deciding what should be in software – whether it’s internal or external – it’s tempting to add something for free, but everything you add competes for attention with everything else you already have (or will ever have in the future).

So when you’re offered that “free” feature or option, think really hard about whether that’s something you really need, and practice just saying no.

Latest Posts
  • Hooked on Identity (Part 2): Abusing OAuth Trust Boundaries in Okta
    Jun 12, 2026 Hooked on Identity (Part 2): Abusing OAuth Trust Boundaries in Okta
    Blog
    7m
  • Hooked on Identity: Abusing SAML Assertion Inline Hooks in Okta
    Jun 9, 2026 Hooked on Identity: Abusing SAML Assertion Inline Hooks in Okta
    Blog
    6m
  • Joining Project Glasswing: Securing the Privilege Backbone of the AI Era
    Jun 8, 2026 Joining Project Glasswing: Securing the Privilege Backbone of the AI Era
    Blog
    5m
  • The Most Common & Most Dangerous Types of Shadow IT
    Jun 5, 2026 The Most Common & Most Dangerous Types of Shadow IT
    Blog
    19m
  • 14 Password Management Best Practices
    May 28, 2026 14 Password Management Best Practices
    Blog
    12m
Related
  • Cisco Breach – A Cautionary Tale of Mismanaged Credentials & Privileged Identities
    Aug 24, 2022 Cisco Breach – A Cautionary Tale of Mismanaged Credentials & Privileged Identities
    Blog
    1m
  • National Cybersecurity Awareness Month - Starting Off Right
    Oct 2, 2018 National Cybersecurity Awareness Month - Starting Off Right
    Blog
    1m
Share this Article
  • Link
Stay up to Date
Get the latest news, ideas, and tactics from BeyondTrust. You may unsubscribe at any time.

Keep up with BeyondTrust

Customer Support Get Started
  • LinkedIn
  • X
  • Facebook
  • Instagram
  • Add BeyondTrust as a preferred source on Google
  • Privacy
  • Security
  • Manage Cookies
  • Do Not Sell My Data
  • WEEE Compliance

Copyright © 2003 — 2026 BeyondTrust Corporation. All rights reserved. Other trademarks identified on this page are owned by their respective owners. BeyondTrust Corporation is not a chartered bank or trust company, or depository institution. It is not authorized to accept deposits or trust accounts and is not licensed or regulated by any state or federal banking authority.

Prefers reduced motion setting detected. Animations will now be reduced as a result.