May 30th, 2009
My laptop is a second-hand X31 Thinkpad.
They’re an extremely durable and reliable device in my opinion. I love that it’s light-ish at 1.6 kilos but doesn’t compromise on the keyboard size. I actually purchased it just before the Netbook craze kicked into gear in 2007. Sometimes I wish it was lighter but I’ve read enough complaints from people regarding the keyboard problems on Netbooks that I’m happy.
I run Ubuntu on the laptop and it’s getting better with a couple of gripes. Originally in 7.10 there were some fan and wireless problems but now 9.04 has everything working except two parts broke that I’ll detail here.
- The external sound controls are no longer responding. Annoying but not too bad. I haven’t researched what has changed but I will update this post when I find out.
- A more pressing problem was a small change in the xorg.conf file. The result was a bizarre, sluggish effect on the entire interface of laptop that was worst when minimizing windows and scrolling a page in Firefox. By sluggish I actually mean unusable
The omission was (under the device section):
Option “AccelMethod” “XAA”
The responsiveness is back to normal with that inclusion.
I personally don’t need Compiz on my laptop (a waste of battery I find) so here’s my current xorg.conf file for anyone that’s interested.
Tags: laptop, ubuntu
Posted in Leisure | No Comments »
May 27th, 2009
I gave a presentation this morning as apart of my Principles of Programming Languages subject on how the basic prototype inheritance in JavaScript can be achieved:
It was restricted to 5 minutes (bah! nothing!) and I practised about 5-7 times to make sure it fit - which it did. I found the most useful segment to illustrate the prototype inheritance chain was via the diagram (second last slide).
The best source I’ve found so far is Douglas Crockford (wrote ‘JavaScript: The Good Parts’). Here he discusses prototypal inheritance.
Due to the 5 minutes constraint I couldn’t deal with Crockford’s beget method or any other techniques or applications of the prototype object. Still the presentation I gave enlightened people I believe.
Tags: example, javascript, Programming
Posted in Programming, University | No Comments »
April 27th, 2009
Here’s a few lists of customisations I use in Firefox.
For web development:
- Firebug - All round awesome web development tool. Allows for on-the-fly alterations to CSS, the HTML DOM. Inserting break points into JavaScript, viewing any existing JSON objects in memory and providing a JavaScript interpreter for debugging.
- YSlow - Useful web profiler that adds itself to Firebug. Provides recommendations on how to optimise web pages as well.
- Web Developer Toolbar - I prefer Firebug overall but Web Developer has a few extra features like resizing the window for different screen resolutions.
- NoScript - Easy approach to enabling and disabling separate JavaScript files on a website.
My favourites:
- Compact Menu - Allows you to get rid of the regular ‘File’ menu in Firefox and provides either a small ‘Globe’ icon or the simply the word ‘Menu’ that’ll drop down and provide the regular Firefox menu when clicked. Saves a lot of screen real estate for the user.
- Fission - Turns the address bar into a loading indicator by representing how far loaded the page as a coloured bar spreading across the address. Similar to Safari’s address bar loading system.
- Download Status Bar - Does away with the regular ‘Download Window’ of yesteryear and provides information on the status of downloads on the regular Firefox window via a pop-up status bar.
An essential (but detrimental to this blog’s revenue!) add-on:
- AdBlock - Automatically hides (doesn’t even waste bandwidth on) adverts according to automagically maintained universal regular expressions.
Note: The ordering of the add-ons is not meant to indicate my preference or importance I place on them
Tags: addons, firefox
Posted in Leisure | 1 Comment »
April 25th, 2009
Finally cleaned up my desk at home. Plus I borrowed my brother’s spare LCD.
Very nice having the additional screen real estate. Can’t wait to buy larger dual widescreens in the future. 30″ monitors anyone?

Tags: home
Posted in Programming | 4 Comments »
February 17th, 2009
After developing an intensive JavaScript website in Firefox and testing with other browsers, including IE8 in compatibility mode I discovered IE8’s compatibility mode doesn’t simulate IE7’s JS.
Hence a JS bug was bringing all of IE7’s JS processing to a halt even on the initial page load.
A first step I recommend is temporarily deactivating any JS compressors you may have enabled as pathing problems can crop up from using them and cause issues for IE7.
Beyond that I discovered the major snag resulted in this error from Visual Studio:
Expected identifier, string or number
Unfortunately that doesn’t give too much information but I was discovering it in my callback functions within my jQuery. It turns out IE7 has a particular issue with the syntax of JSON:
$(".box").animate({
height: "100%",
opacity: "1.0",
}, 600, function() {
alert("test!");
});
While the above appears to be valid there is a deceptively simple issue that IE7 chokes on. The comma on the end of the third line. While most browsers recognise the empty slot after the opacity variable of the JSON array being passed into the animate function - IE7 gets really confused and starts complaining about the next semi-colon in your code (in this case part of the callback function).
Just an interesting issue that other browsers don’t care about but IE7 is really bamboozled by
Tags: IE, javascript, jQuery
Posted in Programming | No Comments »