Devious Command Line

I’ve made an ajax/json/php command line thing. Doesn’t do much…yet. It does have a few easter eggs though. See what you can find.

Devious Command Line

Edit 2011-06-03:
Devious Command Line is now in its third iteration and has been expanded significantly. More on this soon.

Posted in Uncategorized | 2 Comments

Why expansion board slot covers are important.

When you remove a PCI/PCI-E/AGP card from your machine you might not bother putting a cover over the gaping whole you now have in your machine. Why would you? It’s not like you’re going to be throwing things into it? Here’s why you should.

If you don’t you might unplug your headphones from the back of the computer and, instead of stowing the cable away somewhere safe, you might just drop it in order to connect the speaker cable.

Now, if you’re unlucky – like me – that headphone cable might fall through the gap in the back of the computer, on to your graphics card where it might connect two piece of metal which were not designed to be connected in such a way. If this happens your computer may well shut itself down, making your heart descend like the sound of the fans.

Now, if you’re lucky – as I was – you can remove the cable, press the power button and everything will work perfectly. However if you’re unlucky….well….bad luck.

Posted in Uncategorized | Tagged | 1 Comment


I have an appointment with the Dentist at 2:30 today. Hah!

Posted in Uncategorized | Leave a comment

Objects in Javascipt

You can make objects in JavaScript. Here’s some code that does just that in a couple of different ways.

The Way of the Object Literal:
Using object literals uses the smallest amount of characters. (Thanks Nick!)

// Create an object variable called "jake"
var jake = {
    age: 26,
    height: "6Ft",
    start_coding: function () {
        this.typing = true;
        this.thinking = true;
// Attempt to duplicate object
var dave = jake
// Call a method
// Jake is now coding.

Rather then duplicating the object the code above creates two references to the same object. Jake and Dave are now two names for the same thing.

The Middle Way:
This way, you create a blank object and then assign new parameters and methods to it. To create a new version of the object you would have to make a copy of an existing one.

// Create a new object
jake = new Object();
// Assign some properties
jake.age = 26;
jake.height = "6Ft";
// Create a method
jake.start_coding = function(){
    this.typing = true;
    this.thinking = true;
// Attempt to duplicate the object
var dave = jake
// Call a method
// Jake is now coding.

As in the previous example Jake and Dave are now both names for the same object.

The Way of the Object Constructor:
An object constructor is used to describe a class of objects, similar to how other languages implement objects/classes. First you design your class by making a constructor function, then it is used to construct each instance of your object. Methods are added by defining a function outside of the constructor and then linking the two together (see line 5).

// Define the object by creating a constructor function
function person = (name, age){ = name;
    this.age   = age;
    this.start_coding = write_code; // link the method to the object
// Define a method
function write_code(){
    this.thinking = true;
    this.typing = true;
// Create two new people
var jake = new person('jake', 26);
var dave = new person('dave', 25);
// Call a function
// Jake will now be coding. Dave won't be.

As you can see, in this last example I can create two fresh objects of the same class using a constructor.

Note: I’ve just realised that it’s been a while since I’ve actually posted any code. I’ve been too busy slagging of Microsoft and Filemaker. Sorry about that.

Posted in Uncategorized | Tagged , , | 2 Comments

WordPress for Android and other apps.

I am writing this from the comfort of my mobile phone. I’ve iust downloaded the WordPress app so I thought I’d test it. I doubt I’ll use it much as most of the things I post on here are based on code which I copy and paste – I won’t be doing that on my phone.

I’ve found a couple of other good apps last night:

Winamp – I used Winamp on pc for years until it got a bit bloated. Now there’s Winamp for Android which is worthy of the Winamp title. Better than the built in android music app. Comes with a couple of different widgets too.

Wikidroid – Pretty much turns your phone into the Hitchhikers Guide to the Galaxy, without the voice of Peter Jones reading out the articles. It does have voice search though. Not even The Guide had that.

MeeboIM– a multi-protocol chat client. Supports MSN, Yahoo!, GTalk and others. Did support Facebook but that seems to be temporarily broken.

Posted in Uncategorized | Tagged , , , , , | Leave a comment

Disk Cleanup

I’m not sure whether I should use Disk Cleanup or not. It says:

You can use Disk Cleanup to free up to *-,)0.(./0++)0,) KB of disk space on C:.

Is that a good thing? Do I want +-,)0.(./0++)0,) KB of disk space?

I guess there must be something wrong with my temporary internet files. Apparently they’re *-,)0.(./. I’m not sure how big that is, or even if / is a unit. Oh dear.

Edit: I hope it’s not Zalgo. From what I hear he’s a bit of a troublemaker.

Posted in Uncategorized | Tagged , , , | Leave a comment

Magic 8-Ball

Chimpbot now has a Magic 8-Ball installed. It works, too…well, it does so far. Paradoxically if it works perfectly now then it won’t soon. Here are the first few responses that I got for my first test:

Q: Does this work?
A: Signs point to yes.
Q: Really?
A: Most likely.
Q: Are you sure?
A: Outlook not so good.
Q: Will it break soon?
A: Without a doubt.

Posted in Uncategorized | Tagged , , | 1 Comment