Category Archives: Programming

Javascript: The Bad Parts

Did you know:

var test = parseInt( 'hello', 10 ); // returns NaN
if ( test === NaN ) {
  alert( 'Well that made sense' );
} else if ( 'number' !== typeof test ) { // Should work, right? NaN means NOT A NUMBER
  alert( 'Should not have to come to this, but still makes sense' );
} else {
  alert( 'WAT' ); // Should have used isNaN()


Reminded me of this:

Say Hello to Meme Indicator

I use Ubuntu full time on all my computers, as you probably know if you read my infrequent posts here or have been unlucky enough to get caught in a conversation about computers with me.

I really like Ubuntu, 1 so naturally I want it to do well. Which will never happen until there’s a more robust ecosystem of user-oriented programs.

I have neither the time nor the skill to really make a dent in that problem, but I did recently put up my first desktop program for Ubuntu on a Launchpad-hosted PPA 2. It’s just a little something to make it easier for me to do something I very much enjoy: use unicode emoticons 3 in text.

meme-indicator-screenshot-2So I built a python application that adds to the system tray an icon with a dropdown menu of text items. Click an item and it’s copied to your clipboard.

It also has a preferences menu where the user can add, edit, or remove any item from the text snippets. Maybe you don’t know people who would provoke a ಠ_ಠ or maybe you never want to (╯°□°)╯︵ ┻━┻. That’s fine. You could add something you find yourself typing occasionally that you wish you could have in your clipboard 4.

Can’t decide what text to put in there? Why not (/) (°,,,°) (/)?

Anyway, if you want to install the program in Ubuntu, add my ppa to your software sources list:

sudo add-apt-repository ppa:johnpbloch/meme-indicator

And then simply install the package, either through the software center or on the command line:

sudo apt-get update
sudo apt-get install meme-indicator


  1. Yes, even Unity
  2. Personal Package Archive
  3. ಠ_ಠ
    (╯°□°)╯︵ ┻━┻
  4. I don’t, know, maybe a terminal command? Or a URL you need to type a lot in messages? There are probably things you could use it for