You don't need a great idea

This world has enough great ideas. You need a great implementation.

A tremendous amount of my more introspective/thoughtful brainpower is spent considering great ideas. I think about the ones that are successful; I try to come up with ideas of my own; I repeatedly fail at the latter.

One of my goals as a software developer is to someday design and implement a reasonably useful and well-used open-source API. It doesn’t even matter what for. I want to leave my mark by building something useful that other people can build useful things on top of. Maybe that goal is somewhat daft, but it motivates me and keeps me working to improve my abilities. The skills involved are not something I’m very good at, in part since I’m still in college and short of experience on the matter.1

One of the factors that holds me back is the feeling that I don’t have any great new ideas. Why bother using some API I’ve written, when there are dozens (or even perhaps one or two) out there that do the job already? I can’t supply anything new on the ideas front, so where’s the room for my work?

Let’s draw some parallels to real-life products. Google didn’t invent search; they simply did it better than anyone else. Soylent didn’t invent liquid food, they just made it more nutritious than the crap they feed you in hospitals. Blessings was far from the first terminal GUI library, but it made things significantly easier to use.

Usually, when I’m working with a sub-par piece of software, API, or real-world product, I’m not bothered by the concept of it. I usually like the concept. It’s the implementations that are broken, and that’s where you find room for improvement.

  1. This isn’t my only goal, or even necessarily one of my main ones, but it’s something I feel will be a milestone in my career as a dev. It’s an important stepping-stone in the transitional period from someone who writes code to someone who builds solutions.