My Resolution Guidelines

So here’s the obligatory New Year’s Resolution post. I’m not going to tell you what my resolutions are, or what yours should be, but I have been mulling over some guiding principles for quite a while. These aren’t resolutions, per se. But they are guideposts I try to keep in mind personally when thinking about my resolutions, or in fact, whenever I’m taking any action.

So here you go, my four principles. These are all in the form of “X is greater than Y”. In each case, this does not mean that X is holy and Y is evil. It just means that when all else is equal, I would prefer to give preference to X over Y.

1. Creation is greater than Consumption.

If I have a chance to create something versus consume something that someone else has created, I like to focus on creating. Whether this means writing a blog post or tutorial, making a video, publishing some open source experiments, building an app or game, going down into the shop and doing some wood or metal working or even doing some home improvements, creating something either for myself or for someone else will always be priority for me.

This doesn’t mean that consumption is bad. Nothing wrong with some Netflix and chill. I do some casual gaming on Steam, etc. and I’m even thinking of getting a more decent gaming rig this year to try a few more serious games. But personally, I need to keep in mind that games and popular media can be traps.

Yeah, sometimes I find myself at the end of an evening, having done nothing more than surfing imgur, reddit, YouTube and my RSS feed all night. It doesn’t feel very good. Other nights, I pull myself away from the computer after working on some long post or open source library all evening, with my head full of plans on where to go with it next. The latter is far more fulfilling. To me. Personally.

2. Enlightenment is greater than Entertainment.

Whenever I create something that has nothing but entertainment value, I feel empty. I have a side site called Art From Code where I just post algorithmically generated images and occasionally animations. Every once in a while, I get back into it for a little bit. But it never lasts very long because it’s just me saying, “Look at this cool thing I made.” And maybe some other people come along and say, “Hey, I like that cool thing you made.” And it ends there. That’s really boring for me.

I guess that’s why artists like to go on and on about their visions and inspirations for various pieces. I’m convinced that a lot of that stuff is dreamed up after the pieces are complete, but I understand the sentiment to explain what’s behind a particular work. That’s why I prefer to do stuff with open source. Even with computer-generated art, I like to share the code that created the image. It’s not some pseudo-intellectual artist’s statement about a dream I had, it’s literally what I did that brought that image about.

Hopefully, by sharing that, someone else will have some similar idea pop into their head and they can go riff on it and do some creation of their own.

Of course, I often go further than just sharing the code, and wind up writing tutorials or books or doing videos or talks on how I did things. And nothing beats the feeling of someone emailing to thank me for some bit of info I passed on, with a link to some project they were able to do because of that. It always makes my day.

3. Advice is greater than Authority.

So many articles and tutorials are designed, I think, not so much to teach, but to build up the egos of the authors. You know the ones I’m talking about:

“Everything you know about ____ is wrong!”

“The right way to ____.”

“10 things you should be doing in ____.”

“You’re doing ____ all wrong.”

A lot of these are outright clickbait, designed to create controversy. Others are from people who have learned some stuff about some stuff and have taken it upon themselves to instruct the world on the right way to do that stuff. Apparently, by speaking like an authority, you become an authority. At least in your own mind. And often in the minds of those coming newly to a subject.

I’m not perfect, but I intentionally try to avoid such a tone whenever I’m writing an article or tutorial. I actually do word searches for words like “should” before publishing an article. It’s a word that often indicates that I’ve slipped into authoritarian mode. I’m not saying I forbid the use of the word in my writing, I just look extra close when I do find myself using it.

Now, obviously, there are times when you are explaining some process to an audience and there is a common pitfall you want to warn them about. Say there’s a situation where strategy A is going to cause them a big headache and strategy B is a much better solution. You could write:

“Don’t use strategy A! It’s wrong. Strategy B is the right way to do this.”

But now you’ve just stuck the reader with a fixed idea that strategy A is bad and strategy B is good, with no real understanding of why. They’ll probably go off and repeat this to others, with just as much authority. And just as little explanation. Alternately, you might want to write:

“You could use strategy A here, but if you do that, here’s what you’re going to run into… [explain the pitfalls] Instead, you might want to look at strategy B, which has these advantages in this situation… [explain the benefits]”

There are no stone tablets with right and wrong coding practices written on them. Or design practices, or really any other practices in any field. There are different ways of doing just about anything that can be done. Each of those ways will have its benefits and its disadvantages. What we call the “right” way is usually one of the ways where the benefits greatly outweigh the disadvantages. Rather than just dictating “right and wrong”, why not explain the details and let them decide? It’s more work, but I find it much more valuable.

4. Commendation is greater than Condemnation.

Everything I’ve talked about so far has mostly to do with things you create yourself. This last one has more to do with responding to things others are doing or have created.

Another easy way to stroke one’s own ego is to put down something that someone else has done. Apparently, some people feel that if they are able to criticize something, they must be better than that thing they are criticizing. They are able to see the flaws in the product that the author could not see. So we get movie and book reviewers who have never written anything other than movie and book reviews. Software and hardware reviewers who have never built anything real or virtual. And of course, political experts who have never been in charge of anything other than their own life (and have often failed miserably at that).

If you use some software or hardware that has a bug, it’s way too easy to write some scathing review about how the developers are a bunch of idiots. You feel justified. I used to do this all the time. I’m trying to get out of that. I’ve actually found that directly communicating to the developer or company and explaining the issue usually works far better. Not always, but often enough to be a much better first attempt. If I do wind up posting a bad review about anything, I try really hard to not let my emotions get too involved. And I try to remember that there are real people behind the product – developers or creators like me, who are not perfect, but generally aren’t idiots.

Along with this, I’ve made a real effort to commend those things I really like. If I use some software or device or service that I like, I’ll tweet about it, tell people about it, leave a positive review about it. Usually we are only driven to give feedback when something goes wrong and we get pissed off. If something just works the way we expected it to, we go on our happy way without another thought. So I’ve been trying to go back through my purchase histories now and then and do positive reviews for all the things I bought. Particularly for smaller companies, individuals, eBay sellers, etc., whose livelihood depends on positive word of mouth.

I’ll even sometimes send a personal note to the seller/creator if I particularly liked something I bought or used. I know the effect this has because people often do the same for my books, videos, tutorials, etc. and it always puts me in a good mood when I get one of those notes.

Rewarding positive behavior can be just as powerful as punishing bad. Sometimes a bit of both is needed. But if I had to focus on one, it would be the former.


There is a lot of negativity in the world. It’s tempting to fight back at bad things with more negativity. But if we do that we just have negative on top of negative. Someone somewhere needs to do something positive once in a while. All of the above are focused on adding some positivity back into the world, lifting others up in the hopes that they’ll do the same for me now and then.

Have a great new year!


  1. Pingback:My Resolution Guidelines – Javascript World

  2. Keith, if I say I’m obsessed with your work your approach of doing things and with your books. That will be true. This bit-101 blog always worked as a treasure chest for me. If you simply wrote your resolutions, honestly speaking I forgot them may be max in a week. But this going to be with me for many many upcoming years of my life. I’m so much grateful to you for always helping us out with out of the box approach. Thank you.

    Happy 2❤ 18.


Leave a Comment

Required fields are marked *.