Posts Tagged ‘Programming’

Git Tutorials

March 11th, 2011 Comments off

Recently I’ve been hacking on some projects that I’ve been thinking of releasing under an open source license. I’d been looking around for places to host the project and was considering sourceforge or google code, I decided to tweet asking if anyone had any opinions on these tools and @HeyChinaski replied suggesting I look into using github.

I’ve use SCM tools as part of my development process for quite a while but, apart from a couple of quick dabbles, have only properly used CVS and Subversion. If I’m going to use git for my project I want to make sure I fully understand how it works and how it should be used, so I went a googling. This post is mainly a collection of useful links to articles I’ve found on my travels. It’s primarily so I don’t lose useful stuff but am sharing it here so they may help other peeps.

Git Project Homepage

The main project homepage for Git.

Git Project Documentation

A load of useful documentation and links to tutorials on the git project homepage.

Git Reference

A site containing quick reference material for using git.

Git Ready

A nice site that has tons of little tips for using and understanding all of Git.

Paul Bouwer’s Blog post series “Git, GitHub and an open source .NET project”.

This is a brilliant series of blog posts that detail how to contribute to open source projects hosted on GitHub. It takes you from how to install and setup Git (windows specific but still plenty of useful information) through to forking a project, committing changes and finally to sending your change to the upstream maintainers for inclusion.

Starting an Open Source Project on GitHub

Very useful beginner blog post describing how to set up a project on GitHub.


Cross compiling for i386 from x64 Ubuntu

January 8th, 2011 Comments off

I’ve recently been playing with making programs using Qt and c++, overall I’ve been very happy with it, it’s a nice clean API and very nice to work with. I do most of my development on either my desktop machine or my laptop, both of these run the 64-bit version of Ubuntu Maverick Meerkat. I also have a Acer Aspire Revo, running Ubuntu Maverick Meerkat but this computer is running the 32-bit version. I wanted to get some of my Qt programs running on the Revo but didn’t want to install all the development packages and compile on there (it’s a little slow for compiling code and the screen on my main machine is nicer :-D), so I set about working out how to cross compile my applications to run on 32 bit linux from 64 bit.

The easiest way to do it seems to be using pbuilder to create a 32 bit chroot environment, install all the development packages in there and then compile there. So how do we go about doing that? Well here’s some simple instructions…

First of all we need to install pbuilder and it’s dependencies so first of all run…

sudo apt-get install pbuilder

Now we want to create the 32 bit chroot environment…

sudo pbuilder create --debootstrapopts --arch --debootstrapopts i386

This takes a while to create and requires the downloading and installing of a number of packages. Once this is complete the chroot environment will be setup. We now want to login to the environment and install the extra packages needed to build our application. By default when you exit pbuilder sets the chroot environment back to how it was when you entered, as we don’t want to have to install these packages every time we go in we add an extra parameter to tell it to save any changes we’ve made when we exit.

sudo pbuilder login --save-after-exec

Now we’re in the chroot environment we’ll install the packages needed for development, I needed a couple of packages from universe so enabled it with…

echo "deb maverick universe" >> /etc/apt/sources.list
apt-get update

As I was playing with building 32bit .deb files for my applications that use qt-webkit and vlc I installed the following packages (along with some extras like subversion, vim and openssh-client for convenience) with apt-get…

apt-get install build-essential autoconf automake autotools-dev dh-make debhelper devscripts fakeroot lintian pbuilder libvlc-dev libqtwebkit-dev vim openssh-client subversion

Once this completed I made a couple of other changes that I wanted to persist between chroot sessions (copying in gpg keys, etc) and then exited the chroot environment with…


This should take a little while as the system compresses the chroot environment so the changes you made persist between sessions. Now whenever you want to go into the chroot to compile just run…

sudo pbuilder login

Incidentally, if you want a good simple tutorial on createing .deb files you wont go wrong looking at this one.

Ruby on Rails

September 17th, 2005 Comments off

Today I decided to have a look at ruby on rails. I had heard a bit about it, how everyone said it was the next revolution in web app programming and how you can write web apps in a
tenth of the time. Obviously these claims seem completely outrageous but turns out there is quite a bit of truth in them!

So whats so great about it? In 30 minutes following a tutorial (see links below) I had managed to make a simple web app with very little code. By doing a lot of reflection magic it manages to keep configuration files down to a minimum (the only one I’ve used so far is to tell ruby how to access the database), you also don’t have to worry about SQL statements it generates all that for you!

So where should you look if you want to have a play with ruby on rails… well theres the link I posted earlier… there’s also 2 tutorials at OnLAMP…

  1. Rolling with Ruby on Rails Part 1
  2. Rolling with Ruby on Rails Part 2

There’s also a couple of good articles at Amy Hoy’s blog….

I’ll post any more links as I come across them…



.NET Debugger

January 27th, 2005 Comments off

While looking for debuggers for SharpDevelop I came across an interesting series of articles on John Shute’s blog, discussing how the .NET debugger works cleverly called “How the .NET debugger works”. This goes through how to create your own debugging functionality and is a very interesting read. The series is made up of 4 articles.

While writing this news item it occured to me the huge problem with linking to external sites. I have no idea how long this information will stay on the blog or whether the blog will stay at the same URL. Because of this I am keeping a copy of these articles (and any other articles I link to) in my gmail account. If the links to these articles stop working just contact me (using the submit news form) and I’ll try and make them available.


Java 3D

November 28th, 2002 Comments off

As part of my revision for my Computer Graphics module, i have been playing with Java3D. I have put a couple of my test programs up onto my site. More advanced ones will be added as i learn Java3D further. They can be found [link removed].


Things continue on…

November 13th, 2001 Comments off

Works going fine and life’s trundling along quite happily! Went to France over the weekend with Matt et famile et ami to do some work on their new house. Needs a bit of work but should be quite fun doing it!

Still haven’t got round to getting those photos. The films been in my camera for about 1 year and i still haven’t finished it!

The NASM IDE has taken a bit of a back burner as I can’t get one of the controls to work under WinXP :(

Goodbye Caroline!

September 7th, 2001 Comments off

Said goodbye to Caroline yesterday *sniff*. She’s off to Australia for 11 months and I’ll be going out there with Jenny for the last month for OzFest2002! She gave me a goodbye present of a huge tigger (which photos of will be appearing on here later). When you press his tummy he talks! cool heh?

Jobs going fine and I’ve started work on an IDE for the NASM assembler, bit of a way off now but i’ll have more news about that later.