Controlling Facebook Privacy
Facebook has functionality to create friend-lists (groups of friends). Nice thing is, you can use these lists to block certain people from viewing specific parts of your profile.
Start out by creating a bunch of lists:

A few examples are (for every part you would like to control):
- No-Basic-Info
- No-Personal-Info
- No-Photos
- No-See-Friends
- No-Updates
- No-Videos
- No-Wall
If you like, you can go ahead and add people to these groups. Unfortunately, a list has to contain at least 1-person before you can use it.
Next, go to your privacy settings, then click on profile:

Customise one of the options, for example, click on the drop-down associated with Wall-posts:

Now add the list you created to hide wall-posts to the "except these people" section - in this case, "no-wall"

This is an organised way of keeping track of friend-permissions without resorting to deleting people. If you find that you would like to hide your photos from someone, you simply add the person to the friend-list "no-photos".
You could also create a limited profile for your account and by default, add all friends to it. Next, essentially work in reverse by only allowing certain lists of friends to view your profile.
Improving Photoshop CS4/CS5 Performance
Note: This was initially written for Photoshop CS4, but from what I've seen, it also applies to Photoshop CS5.
If you're having performance issues after installing Adobe's latest version of Photoshop, try having a look at these options:
Allocating more memory to Photoshop

- Edit -> Preferences -> Performance to allocate more RAM to Photoshop.
- Don't use too much (over 90% for example), your OS will need RAM too!
- Don't allocate too little.
- Experiment, try 60% and work your way up or down.
Set up a scratch disk
- This is similar to virtual memory.
- Photoshop needs at least 2GB, but more is recommended.
- It's recommended that you set the primary scratch disk to a different hard-disk than the one Windows uses for its virtual memory or paging file.
- To set up your scratch disk options (requires Photoshop-restart): Edit -> Preferences -> Performance
Set up your cache-levels
- Used to redraw high-resolution images faster.
- The levels range from 1-8 (default: 4), the more levels, the more image-caches Photoshop keeps and the slower images load.
- Setting the cache option to 1 disables image caching.
- Setting the cache option to higher than 4 improves performance when working on large images (by redrawing faster).
- If you use many levels (50+), set the cache option lower: 1 or 2
- If you deal with large-dimension images, use a cache option larger than 4
- To set up cache levels (requires Photoshop-restart): Edit -> Preferences -> Performance
Purge Undo, Clipboard, or Histories
- This clears up memory
- Edit -> Purge
Reduce the number of History states
- By reducing the number of history states, you decrease the amount of memory used by Photoshop.
- To set the number of history states: Edit -> Preferences -> Performance
Saving PSD files with the compatibility feature
- This increases the size of the PSD file by saving a flattened version of the image too.
- If you don't need the compatibility, save without it.
- To set up options: Edit -> Preferences -> File Handling
GPU use
- CS4 makes use of your graphics card's GPU, instead of the computer CPU to speed its screen redraw.
- The display card must support OpenGL (with at least 128MB RAM).
- The display driver must support OpenGL 2.0 and Shader Model 3.0.
- Make sure you have the latest drivers for your GPU to improve performance.
Disabling OpenGL

- If you experience really poor performance, you might want to try experimenting with turning OpenGL off all-together.
- Edit -> Preferences -> Performance -> Untick OpenGL
Minimize palette preview thumbnails
- Each layer has a preview-thumbnail, minimize the size of these to save memory
- To minimize (or turn off) palette thumbnails, select Palette Options from the palette menu.
- For Thumbnail Size, select the smallest thumbnail size or select None, then click OK.
Bigger Tiles plug-in
- Disabled by default.
- Located in the Optional Plug-ins folder on your application DVD folder.
- Enable only if you have more than 1GB RAM.
- Copy to your extensions folder to enable.
- When enabled, Photoshop redraws more data at a time because each tile is larger, and each tile is drawn, complete, at one time.
- That is, Photoshop takes less time to redraw fewer tiles that are larger than it takes to redraw more tiles that are smaller.
- If you spend most of your time painting or rapidly tweaking controls in filters or panels and watching the feedback, then Bigger Tiles won't help you.
- If you spend your time watching progress bars, Bigger Tiles can improve performance.
Performing WordPress upgrades (Linux)
Note: Remember to always refer to the official upgrade guide. This is by no means official, but it has worked for me. I've tried to keep it as short and easy as possible.
Another Note: WordPress 2.7 comes out on November 10th. It will have an automatic updater module - so you probably won't have to worry about this kind of thing again after that!
Versions tested with:
- 2.6.3
- 2.6.2
- 2.6.1
- 2.6.0
Obtain the path to your wordpress installation, we'll assume it's
1 | /home/user/www/blog |
Safety first. Always.
So make a backup of your WordPress installation folder:
1 | cp -rp /home/user/www/blog /home/user/www/blog.backup |
Next, you'll want to make a backup of your MySQL database associated with it.
Refer to my Simple MySQL backup script to see how to do it.
You're good to go now - you'll be able to revert any changes you've made if you have to. (And that's a nice fuzzy feeling)
Let's get busy:
- Make an update directory to copy new files from
- Get latest WordPress zip file
- Unzip
1 2 3 4 | mkdir /home/user/www/blog/update cd /home/user/www/blog/update wget http://wordpress.org/latest.zip unzip latest.zip |
Just to keep things clear, we have 2 directories at this point:
New files:
/home/user/www/blog/update/wordpress
Original files:
/home/user/www/blog
Delete your old wp-includes and wp-admin directories (I rename them here, which has the same effect).
1 2 3 4 5 | mv wp-includes wp-includes.old mv wp-admin wp-admin.old mkdir wp-includes mkdir wp-admin |
Copy over the new files (NOTE that I haven't used the '-rp' flag for the last copy command):
1 2 3 4 5 | cp -rp /home/user/www/blog/update/wordpress/wp-includes/* ./wp-includes/ cp -rp /home/user/www/blog/update/wordpress/wp-admin/* ./wp-admin/ cp -rp /home/user/www/blog/update/wordpress/wp-content/* ./wp-content/ cp /home/user/www/blog/update/wordpress/*.php ./ |
Log-in to your admin-page. If WordPress needs to perform a database upgrade, it will do it for you.
Check that all your plugins are enabled and in proper working condition.
Optional: After you've tested everything and you're happy with the upgrade, you should delete all the extra files:
1 2 3 4 | rm -r /home/user/www/blog/wp-includes.old/ rm -r /home/user/www/blog/wp-admin.old/ rm -r /home/user/www/blog/update/ rm -r /home/user/www/blog.backup/ |
Firefox 3.1b1 Pre + TraceMonkey

Just downloaded the latest BETA release from Mozilla (codenamed "Minefield" - scary) and to my (pleasant) surprise, it comes with an optional TraceMonkey engine.
For you that don't know what TraceMonkey is, it's an optimization added to SpiderMonkey. Sounds like a lot of monkeys. But it offers between 20 and 40 times faster Javascript speeds.
To enable TraceMonkey:
- Go to the about:config page, and click on the button to get past the warning message
- Enter jit in the field
- Enable both entries to true. (javascript.options.jit.chrome and javascript.options.jit.content)
Firefox now gets an 84/100 for the Acid 3 test (Google Chrome scores a 78/100)
I ran a quick javascript-speed-test between Google Chrome and this new version of Firefox*.
- Google Chrome finished the test in 160ms. Impressive.
- Firefox comes in close at 205ms
- Internet Explorer 7 finished in 1008ms. I'm pretty sure IE8 beta does better than that though.
* your mileage may vary
Workaround: Mozilla release Shiretoko; messes up my extensions

Mozilla released Firefox 3.1 alpha 2 which adds some interesting new features.
- An improvement on the Acid 3 test, now scoring 83/100.
- Internal tab-switching (using CTRL-TAB)
- Initial support for web worker threads, which improves Javascript support for certain scenarios.
Great! Only problem is - most of my add-ons stopped working.
Annoying - chances are, if the add-on was supported in Firefox 3.0, it might just work in 3.1a2.
So... to bypass the add-on compatibility-check:
- On Windows XP, navigate to C:\documents and settings\[username]\application data\Mozilla\Firefox\profiles\[random folder]\extensions
- On Windows Vista, navigate to C:\Users\[name]\AppData\Roaming\Mozilla\Firefox\Profiles\lmqbc2av.default\extensions
- If you can't find the folder, try a file-search for install.rdf
- Each folder in the above-location is associated to a Firefox extension.
- Open a folder and edit the install.rdf file.
- the install.rdf file is really an XML file - look for "maxversion". I changed the value to "3.1.*"
Note: There might be another (cleaner) way of getting around this problem. The about:config page used to have an extensions.checkCompatibility variable which could be set to ignore these, but it has been taken out in this release.
Note 2: I've tried this out with the Delicious, StumbleUpon, Better Gmail, and Firebug extensions and have had no problems, but I can't guarantee that it will work for you.
Note 3: This hack will most likely work for lots of up-coming releases of firefox.
Note 4: I would probably activate each one of the add-ons one-by-one just to see everything works properly. If it crashes the browser, you can just revert/undo the changes you made and wait until a new version of the add-on comes out.
I love browser-wars.
Smart Menu-Hover
When making a navigational menu or button of some sort, you might have an image for the normal state (a:link), the hover (a:hover), the active state (a:active) and even one for the visited state (a:visited). Usually, you would have an image load for each one like this:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | #nav a:link { background-image:url(menu.jpg); } #nav a:visited { background-image:url(menu.jpg); } #nav a:hover { background-image:url(menu_hover.jpg); } #nav a:active { background-image:url(menu_active.jpg); } |
The browser would only load these images when these states have been activated. This would mean that the first time a user moves his mouse over the menu it wouldn't show anything different from the a:link background-image until the a:hover image loads.
There's a simple trick to get around this. Say you have a menu image like the this, you might want the first part to be the a:link and the 2nd part below it would be the a:hover background-image.
![]() |
In your CSS, you would use only 1 image (like the one one above). However, you would use a different background-position for each state:
1 2 3 4 5 6 7 8 9 10 11 12 13 | #nav a:link { background-image:url(menu.jpg); background-position:0px 0px; /*Use first part*/ } ... #nav a:active { background-image:url(menu.jpg); background-position:0px -98px; /*Use 2nd part*/ } |
![]() |
The -98px in the CSS comes from the dimensions of the image. This means that the image is loaded when the page is loaded, and thus, it also means that there is no loading for the other link states.
This method can be extended to work with the visited and active states too.
Photoshop: The split-toning effect
You might have seen this effect:
![]() |
It has become pretty easy to do in something like Adobe Lightroom. But - if you're interested in the manual process, here's one way of doing it:
- Convert an image to B&W using your preferred method (desaturate or channel-mixer or other)
- Duplicate layer (CTRL-J), use smart-sharpening filter (optional)
- Flatten (SHIFT-CTRL-E)
- Add a Colour Balance layer adjustment, select SHADOWS -> Move the yellow-blue sllider to the right. Move the cyan-red slider to the left.
- Add another colour balance layer adjustment, select HIGHLIGHTS -> Move the cyan-red slider to the right this time. Move the yellow-blue slider to the left.
- Select the blending options for the current layer-adjustment. In the blend-if section, select 'blue' from the drop-down
- Move the left slider first to about 60, then press ALT and drag it to about 200 till you have the effect you want.
- Flatten image
- You can reduce the saturation on it at this stage and you can also use the burn tool to emphasize shadows


