Going from software user to software developer

Before learning to code, I was one of those guys who tried to do everything on a computer for free.

I thought to myself,

“It’s just code. It cost them nothing to make it, and nothing to run it. If they can find suckers to pay for it, great, but I bet there’s a way to do it for free.”

And there often is. In fact, as my developer skills grew, so did my ability to do everything for free.

But what I’ve learned is, just because you can do stuff for free, doesn’t mean you should.

This is why we can’t have nice things

Creating software (and particularly, good software), is difficult and takes time. Not only to build, but to update and fix. And at the end of the day, nothing in this world is done reliably or well unless someone is getting paid, in some fashion, to do it.

I spent the first few years of my developer journey building things I thought should exist, but that no one wanted to pay for. Oopsy woopsy. It’s very frustrating to create cool things that you think should exist, and then find they’re just not worth your time to continue building. The open source community must know this pain very, very well.

Ultimately, you lose steam doing this. You don’t have any incentive or time to make the thing, or the experience of using it, very good. And you get angry and resentful. But it’s not really any else’s fault but your own, in the end.

So what’s the solution?

Build things people want to pay for. And when you enjoy using something, pay for it

The more able I am to find free ways to do things on a computer now, the more willing I am to find the person putting the time and effort in to building a good, fun to use solution. And to pay them for it.

This goes for open source developers who have a more polished paid option (like Carrd, and slides.com for revealjs), and even the big ’evil’ guys like Adobe for their PDF stuff like Acrobat.

The irony of software is that in most cases, you’ll spend more on small, disposable, temporary experiences like coffee in a month, than you would supporting good software for a year of unlimited, enjoyable use.

I totally had the same feeling that some people have - that you’re somehow a sucker for paying for it. Having now tried to build this stuff, I don’t anymore.

If you want nice things, you have to pay for nice things.