1. Do use free tools and experimentAs well as Q-Action there are loads of free tools and apps out there, both for creating and for reading QR codes. You can download a free reader app to your smartphone, and there are web sites (including Q-Action) where you can generate free QR code images for printing. Note that QR code and 'bar' code or UPC are not the same thing. You need to experiment and test and to think about how you will maintain the codes in future - such as if your web address changes after you have posted 50,000 leaflets.
2. Don't pimp your codeQR codes can contain some redundancy (Q-Action uses the maximum 30%) and some of the shapes are for orientation and calibration. Even the white border is part of the code. If you colour the pixels or the background, or cover them with reflective plastic they may not work, or worse they may work for you in a test environment and not your user in their environment. Remember that cameras do not naturally see the same spectrum that we do.
3. Do think about size and locationIf the user can hold their phone close to your QR tag then 20 mm square should be a safe minimum size. If not, then as a rule of thumb a side of the printed code should measure about one tenth of the viewing distance. Remember also that bending a QR code around a mug or similar will distort it, so you have to stretch the original image just the right amount to make it appear square. If your QR code is a web address then the user will need a mobile phone signal or wi-fi to access the web page. The classic error is to print a small code on a poster the other side of subway tracks in an underground location. QR codes are a way of going from a physical artefact to an on-line experience, so it's no good having a QR code on a web page where it would be easier to have a clickable link. See wtfqrcodes for a laugh at the expense of....others.
4. Do use re-programmable QR codesFree cloud services like YouTube, Flickr, Google Drive, and Dropbox enable you to share editable documents on the web, but take care to use a programmable QR code (like the Q-Action 'Goto' type) because if you change the document its URL will change. You don't want to have to re-print the code each time.
5. Do think about where you are sending the userA mobile phone has a very small screen and limited add-on functionalities such as Flash. It's no good sending the user to a page that is not designed for mobiles. Also, the way people use QR codes is a very 'here and now' medium so your page should give the user something that is relevant to where they are and what they can do at that moment in time. Sending them to your normal home page will only annoy them - it's the QR code equivalent of spam.
It's amazing how many ideas you can come up with if you just think through the fact that QR codes take you to a web page and you can update that web page. Have a go with a couple of Q-Action free pages and see what you can come up with.