Author Archives for Rob
Subversion Malformed URL of Repository Fix
After upgrading to Subversion 1.5 I’ve recently had problems merging between our trunk and another branch.
Firstly, I found I couldn’t do so from the root of the trunk/branch.
So the following would fail:
http://rob.repo.com/trunk -> http://rob.repo.com/branch
I would receive - “Error - Malformed URL of repository”. This was using subversion (via command line) and TortoiseSVN.
However, for some insane [...]
Using FreeNAS
I’ve recently dumped my Ubuntu Server, and installed FreeNAS on my home server.
Ubuntu Server was great, but a little more than I needed. And in comparison, FreeNAS was far easier/quicker to install and setup. Plus I don’t have to go through the hassle of getting Ubuntu to leave the NIC in a wake-able mode (for [...]
POST/GET using TinyGet And Ruby
At Huddle we’ve recently been adding to our JSON RESTful API.
For testing GET/POST requests, and their responses, we did originally use Fiddler2, but it doesn’t support SSL, and it’s awkward to use. We also tried Modify Headers, a Firefox extension, but it was problematic.
The solution we settled on was to use TinyGet (part of the [...]
Hosting multiple SSL sites with IIS6
A simple tip I came across when hosting multiple sites on a server.
It’s easy to assign a new ip address to the adapter, but creating a new ip address per website is a bit much.
I like to, where possible, use host-headers when hosting a website. Host headers across SSL are now supported by IIS6 (in [...]
Chilli Fives
Sunday night is curry night. We always start of with a pint of cider and the local “nasty” pub before moving on to the curry house.
Firstly, what is “Fives”? I found an article on Bar Meister that saves me trying to explain it.
However, instead of the loser seeing off a drink, they have to eat [...]
Linux Mint
Having been an Ubuntu user for a few years now, I decided to try a version of Linux based upon Ubuntu.
The best distribution I came across was Linux Mint. It’s currently based upon Ubuntu 8.04 (Hardy Heron). The main difference is that it (against Ubuntu philosophy) includes non open source packages, such as codecs and [...]
Creating API documentation
We’ve recently been working on our API and came across the problem of writing documentation for the API.
Having looked at a number of solutions I came up with a simple solution using XML comments within C# and the XML generated by the project during compilation. Here are the steps:
For any exposed API methods you write, [...]
Configuring CruiseControl.Net
At Huddle I’ve recently been involved with looking at the build setup that we have in place (also see my article Defining a development tree). I’ve attached the build scripts and Cruise Control config to the blog, but will explain them below.
1. Setting up Cruise Control
Once installed setup the “working” and “artifact” directories where all [...]
Defining a development tree
Having a cleanly designed dev tree can be more important than many developers might at first think. Having looked at not only how I do things, but how Huddle structures their dev tree I decided to do some research into designing the perfect dev tree.
Here were my findings:
Namespaces should follow folder structure. Much like how [...]
Converting AVI’s for the Samsung YP-P2
I watch quite a few movies on my Samsung YP-P2, so am always having to covert the AVI’s I currently have to SVI’s. An SVI is still an AVI, just a different extension name and a few key points, which include not having any b-frames, the video being 480×272 in resolution, and a few other [...]
Overclocking an Intel Core 2 Q6600
I upgraded my desktop pc recently. I bought a new cpu, motherboard, memory and graphics card. With Ubuntu in mind, I went for:
Intel Core 2 Q6600
MSI P35 Neo2
4Gb Corsair TwinX RAM
Gigabyte Silent nVidia 8600GT
Akasa Evo 120 CPU Cooler
Artic Silver 5 Thermal Paste
I overclocked my 2.4Ghz Q6600 to 3.2Ghz quite easily. This was done by setting [...]
D40X shortcomings
I’ve recently been looking at getting a new lens for my Nikon D40X. The problem with the D40X is that it doesn’t contain a motor for auto-focus in the body (like the D80 does). To get around this you have to buy the new range of Nikkor AF-S lenses, but these can often cost quite [...]
Online collaboration
I’ve been at Huddle for a couple of weeks now and am very impressed with how things are going. There’s loads of ideas and things to do that will keep me occupied and interested for a long, long time.
If you’ve not seen Huddle it’s well worth a look. You can set up a free account [...]
Handling CSS and JavaScript using Rewrite Rules in IIS
Recently I’ve been working on improving the caching within the website to improve performance for the user. After reading around, I found the following rules to be valuable.
Cache your CSS and JavaScript forever (set a long, long expiry)
Handle updates by changing the URL of your CSS and JavaScript
When caching “forever” the main problem is if [...]
Incremental backups with rsync
I’ve been using rsync for a while now for doing backups.
I currently run my main pc, and a network pc (acting as a NAS), and use rsync to backup files between each pc. Here’s an example command.
rsync -rvt -pog –delete –progress –itemize-changes –stats "/media/storage/music/" "/media/backup/music/"
-r = recursive (to include sub-folders)
-v = verbose (so it shows [...]
Securely deleting files in Ubuntu
Simply pressing delete on a file or folder won’t remove it from your hard drive. The reference will be removed from the file system but it will still exist on your hard drive until the space it occupies is used and it is overwritten. This can pose a problem as people can recover potentially sensitive [...]
Setting up Ubuntu Hardy Heron
I’ve posted it before, but here’s the install script I use when installing Ubuntu: Firstly open a terminal window
Applications > Accessories > Terminal
And the paste the following in, either by right-clicking and copy/pasting, or by using Ctrl+C and Ctrl+Shift+V (you need to use Shift too when pasting into a terminal window).
# Sources
sudo mv /etc/apt/sources.list [...]


