Practice
Computing Profession Practice

How to Come Up with Great Ideas

Think like an entrepreneur.
Posted
  1. Introduction
  2. What Makes Something Great?
  3. Putting It Into Practice
  4. Author
How to Come Up with Great Ideas, illustration

back to top 

I would love to do a startup, but I don’t have any ideas.

I started my career working in big companies but always dreamed of starting my own. I would read online forums and articles about successful entrepreneurs. I was enamored with the idea of doing a startup. The problem was I didn’t have any ideas.

Fast forward 10 years and I have so many ideas that choosing the right one is the challenge. I am constantly coming up with ideas and opportunities that could turn into a product, or a whole company. There is no shortage of things that I could do.

The key is you have to learn to think like an entrepreneur.

At this point, you might be thinking, “But I am a software engineer and happy in my role; why do I need to think like an entrepreneur?” Even if you don’t see yourself doing a startup with one idea, being able to come up with new ideas (especially good ones!) will make you even better at your current job.

As a programmer, most of your time is probably spent understanding the technical nuances of what you are creating. As you grow in your career and experience, however, you are expected to contribute more than just code.

For example, if you work on a product, you may have the chance to collaborate with its designers to create a new customer experience. When there are bugs or issues, your time is spent diagnosing the symptoms to find root problems and exploring options that may serve as possible solutions. As you build your expertise, you may even create your own modules, systems, or libraries to help solve problems.

There are many instances like these, where being creative and innovative and generating good ideas can help you contribute more to your company, profession, or community.

After working in a few startups, I have learned from people, books, and experience. Here are a few key pointers that may lead you to generate more great ideas.

Pay attention to friction. Whenever something doesn’t work the way you think it should, pay attention and think about why. What could be changed that would make it better? For example, suppose there is a website you like to use, but when visiting the site, you always click on the wrong button. How would you change it? Would you relocate the button?

I think about this a lot when regarding my collection of travel mugs. Each one I buy has a serious flaw: the glass one chipped when I dropped it, the clear plastic one became stained after continued use, or the tops that are easy to open have a tendency to leak. By focusing on the points of friction, you can start thinking about how you would design one that addresses those problems.

Paying attention to how you compensate for missing functionality, or where you get frustrated using an item, will teach you to start focusing on problems that can be solved. As you hone in on these problems over time, you will start to see opportunities that could be turned into new products or even companies.

Back to Top

What Makes Something Great?

When you use products you love, think about the features that delight you. By articulating what you like about a product, you can pick up patterns and gain a better understanding of motivation (which can then be applied to users of future products).

For example, I started using a workout app called Sweat, and I absolutely love it. Why?

  • I like that it keeps me accountable tracking my progress.
      Motivation: I am more likely to work out and stick with the program.
  • I like that it shows a video of how to do each exercise.
      Motivation: I know I am doing things correctly, so I won’t get injured.
  • I like that the workouts are around 30 minutes.
      Motivation: I am busy, so the short duration allows me to fit exercise into my day.

When you understand what motivates users, you can help them reach their goals (easier, better, faster). It can also help you discover methods and patterns that can be applied to your next big idea and help you deliver more value to customers.

Brainstorm. If you want to have great ideas, the first step is to have lots of ideas. In the Ten Faces of Innovation, Tom Kelley writes that when it comes to brainstorming, the focus should be on quantity of ideas rather than quality. This is because sometimes an idea that seems silly or obtuse can spark other ideas and paths of thinking.

One of the best ways to foster creative thinking and ideas is to brainstorm regularly. Choose a topic, and then either by yourself or with a group spend time coming up with ideas around that topic. When I get bored in meetings, sometimes I will spend a few minutes brainstorming or thinking about something that is on my mind.

Listen and observe. Recently I read Walter Isaacson’s biography of Leonardo da Vinci, published in 2017. The book described the notebooks da Vinci kept; what struck me was how observant da Vinci was. He would study details and notice small things from the way hair curled (seen in his artwork), to the way water flowed (applied to his innovations on hydrodynamics), to the way people’s faces change when they smile (seen in the Mona Lisa). By observing the world around him he was able to translate what he saw into new ideas and creations.

Acting as an anthropologist and observing people in their “natural habitat” can help you generate new ideas. Watch the way people do certain things and how they react in different situations. For example, whenever I am at the airport I watch people wheeling around their suitcases—it is amazing how poorly designed some public spaces are, and I always think there are ample opportunities for innovation and improvement.

Be curious and ask lots of questions. Many inventions come out of insights into the way other things work. For example, the Dyson vacuum that uses a cyclone to clean carpets was inspired by a visit to a sawmill that uses a cyclone to whisk away sawdust. When you expose yourself to a wide variety of things, what you learn can translate into other areas. Ideas are sparked from other ideas.

If you are looking for a place to start, think about everyday objects, for example, indoor plumbing, ballpoint pens, radio, Wi-Fi, and so on. Do you know how they really work?

When it comes to your work, don’t just accept things at face value. Take the time to really understand what your compiler is doing, how the operating system works, and even how the network puts it all together. Spend time learning and going deep.

This is really about cultivating a sense of wonder and being curious about the world around you. When you meet people in different occupations, ask them lots of questions: “What are your biggest challenges?” or “What are the most interesting things you have learned in your work?” You can use every day and every conversation as a chance to expand your knowledge.


If you want to have great ideas, the first step is to have lots of ideas.


Embrace more of your ideas. I would be a terrible angel investor. I tend to have a conservative nature, and lots of the ideas I would consider dumb end up being successful (case in point: the Snuggie). As a result, I tend to dismiss many of my ideas. However, great ideas are often grown and inspired from other ideas.

If you have an idea, try discussing it with your peers (particularly the creative ones who get excited and can help you transform it, rather than the closed-minded friends who tend to see only the risks or problems). Brainstorm around it. How would you market the idea? What is its value? How could you transform it into a truly great idea? Even if you don’t end up pursuing it, the exercise can help you think about things differently and build on your creative energy.

Back to Top

Putting It Into Practice

No matter what your profession, learning to think more innovatively and spark new ideas can help you. I have included some points and inspiration that have helped me, but the real key is changing your behavior and taking action. Here are some practical suggestions for fostering more great ideas.

  • Keep a list of your ideas. I like to use Evernote because it syncs with my phone and computer, but any media will do. Just make sure you write things down so you don’t forget.
  • Share your ideas with your friends. This can be a great way to brainstorm, as well as to see different perspectives.
  • Get better at small talk by asking more questions. Learn about other occupations and professions. What insights do they have to offer, and what challenges do they face?
  • Each week learn something new. Carve out time each week to explore a topic you don’t know much about. Investigate how things work and expand your knowledge of the world around you.
  • Read more. It can be fiction or non-fiction, but just spend time learning.
  • Ask more questions. When you don’t understand something, ask. Or keep a list of the things you don’t know, and when you have a spare 15 minutes spend time looking them up and investigating further.

Following this advice could inspire you to create more and expand your knowledge. Remember that all great ideas typically start from other ideas, so the first step you need to take is to start thinking.

I can’t wait to see what you create.

q stamp of ACM Queue Related articles
on queue.acm.org

Fresh Starts
Kate Matsudaira
https://queue.acm.org/detail.cfm?id=2996549

Arrogance in Business Planning
Paul Vixie
https://queue.acm.org/detail.cfm?id=2008216

Sink or Swim, Know When It’s Time to Bail
Gordon Bell
https://queue.acm.org/detail.cfm?id=966806

Back to Top

Join the Discussion (0)

Become a Member or Sign In to Post a Comment

The Latest from CACM

Shape the Future of Computing

ACM encourages its members to take a direct hand in shaping the future of the association. There are more ways than ever to get involved.

Get Involved

Communications of the ACM (CACM) is now a fully Open Access publication.

By opening CACM to the world, we hope to increase engagement among the broader computer science community and encourage non-members to discover the rich resources ACM has to offer.

Learn More