I came across this article titled Maker’s Schedule, Manager’s Schedule. It makes a very interesting point about the effects of meetings on a Software Developer’s productivity. I have to agree with everything in it. My personal experience is that a meeting completely blows at least half a days development. I need long periods of time to focus on a task, find my zen and really get to grips with solving the problems I am working.
Since I became a team leader, I have tried to avoid organising unnecessary meetings, especially when it is obvious that the team have their minds on what is important to us all, their code.
What do you think? Do you find breaking up your day with meetings means you get less real work done?
I’ve always had a desire to make computer games. It obviously stems from my misspent youth playing Nintendo and getting a serious case of SAD. Sadly, I’ve grown up now and spend my days writing code instead of playing games. I’ve not realised my dreams of becoming a professional games designer but it’s something I’d like to do as a hobby.
I’ve been doing a fair bit of hunting round to find a decent set of tools to get me started. Coding everything from scratch doesn’t really appeal to me so I want something that does all the donkey work of setting up windows, graphics devices, sound and controller input, without being a full blown Game Engine. I also don’t fancy learning another programming language, so ideally it will be a C++ library. It must also be cross-platform as I use both Mac and PC. During my search I’ve looked at SDL, Allegro and Gosu and have decided that Gosu is definitely the way to go.
Gosu is pure object-oriented C++ goodness (Ruby bindings are also available), the API is neat as it is made up of only a small collection of classes. It is primarily for 2D games but it has support for mixing in OpenGL if you are brave enough to do some 3D. It is built on top of the Boost libraries (See my previous post on Installing Boost), so if you need advanced stuff like threads you can get those without too much hassle. It’s also cross-platform as there are binaries for Windows, Mac OS X and Linux. One of the real bonuses is that it is actively being developed and has some fairly comprehensive online documentation.
The getting started guides on the Wiki are great, and walk you through all the basics from installing and setting up a project, to writing a simple game. After I’d got everything installed properly it took me about an hour to code up a really simple Snake game clone from scratch. I’m going to play with it some more and see if I can knock up something a bit more advanced. Next stop Space Invaders!

Two weeks ago I was complaining about the default Akismet Spam Protection that comes installed with Wordpress. It has always been a bit of a pain having to trawl through the spam trap once a week to pick out the odd legitimate comment, so I stopped doing it. After a brief blogging holiday I came back and found a few nice comments rotting away under Spam. I posted a bit of an apology and a complaint and then Keiron suggested I try WP-SpamFree, a Wordpress plugin that he was testing.
It takes a more pro-active approach to spam protection. Rather than act as a simple filter that places spam in the Spam Trap. It completely blocks spam posters and particularly bots from leaving posts. It is really effective at this and means there is no spam to search through at all. Great if you get lots of incoming spam or are just a bit lazy like I am
.
Well I’ve tried it out for two weeks, and I can now give it a hearty recommendation. It has managed to block those dodgy russian comments (Anyone else get these?), spam links, and all the other nasty stuff I was getting, and as far as I can tell there are no false positives. My traffic has increased a bit over the last couple of weeks and this plugin has saved me a bit of work, and a lot of headaches, as spam attempts have gone through the roof. So if you hate having to manage spam comments as much as I do, give it a go.
photo credit: vic15
URL shortening has been around a long time. I’ve been using tinyURL for ages. Recently Twitter switched to using bit.ly as its URL shortening service. I signed up for a bit.ly account the other day and have discovered fun in its statistic tracking. For each short URL it generates, bit.ly provides a page that gives information about the number of clicks, location of the clicker as well as a list of tweets, friendfeed comments and comments from BackType that refer to it.
I am now obsessed with tracking my links and looking at the statistics for other pages. It’s really interesting to see the buzz a page can generate as well as how quickly the clicks are generated. It’s worth signing up and using the sidebar bookmarklet for a bit of real geeky fun.
I’ve been doing a bit of spring cleaning on the site today. One of the things I rarely do is check the comment spam trap. Browsing through it today, I’ve noticed a couple of completely legitimate comments that were incorrectly marked as spam. They are quite old but I decided to approve them. Apologies if one of your comments got caught. I will endeavor to check it as regularly as I can. It seems that Akismet can be a bit overprotective.
On a related note, I’m going to implement a Commenting Policy as Keiron recommends. I’ll put up a page with the complete policy soon, for now refer to Keiron’s Commenting Policy page as I’m going to implement it as it is with maybe a few additions (Hope that’s OK mate?). My only addition is that comments need to be in English, although American and Australian will also be permitted
. Apologies to the massive non-english speaking population of the world, but I can’t moderate content that I don’t understand.
I will post the full policy when I’ve finished with the copy and pasting.
Keiron’s Commenting Policy

Do you want to get the Boost C++ libraries compiled for use with XCode on Mac OS X? I struggled to get it working so I’ve decided to write this mini-guide so I don’t forget. A little word of warning, the installation process requires a bit of command line kung-fu, if you are not comfortable using the terminal then you should read up on that first. This guide is correct at the time of writing using Boost version 1.39.0 on Mac OS 10.5.7. Are you ready? Then let’s go…
- The first thing to do is to download the Boost distribution from the Boost downloads page.
- Unpack the archive somewhere sensible, I’d suggest the desktop. Don’t do it where the absolute folder path will have any spaces in the name e.g. “/users/matt/code/bad folder/”, this will prevent the install script from working later. I found this out the hard way.
- Next open a terminal window and navigate to the Boost root folder you just unpacked, it will be called “boost_1_39_0″ if you are using the current version. If it’s on your desktop you will need to use “cd /users/username/desktop/boost_1_39_0“. We refer to this path in future as the $BOOST_ROOT
- Next run the bootstrap script by typing “./bootstrap.sh“. This configures the install tools for your environment. Check it for error messages, this is where I found out my path was bad.
- If you run the “ls” command you should now have an executable called bjam.
- To compile Boost, type “./bjam architecture=combined” and press enter, this will build Universal (x86 and PowerPC compatible) libraries.
- Make a cup of coffee and wait while the libraries build.
That’s all there is to it. You should end up with a load of .dylib and .a library files at the path $BOOST_ROOT/stage/lib. There’s a more detailed explanation of all this on the Boost Getting Started on Unix Variants page if you get stuck or something goes wrong. Your next job is to configure an XCode project to build with Boost, which is outside the scope of this article. I may do a post on it in the future.
Update, Saturday, 12 December 2009: The latest version of Boost is 1.41 and it installs on Snow Leopard without any problems following the instructions in my guide. Thanks.
Many moons ago I did a Systems Programming course a University. It wasn’t the best run course in the world and it left me completely confused about IP, Sockets, Streams and other related scary Unix technologies that seemed so foreign back in the late 90’s.
Recently my interest in this area has grown and I thought I’d have little look for a decent guide. I came across Beej’s Guide to Network Programming, and I heartily recommend it. If you’re interested in an introduction to BSD socket programming it’s a must read, and it’s also fairly entertaining in a geeky humor kind of way.
If you’re out there, my old System’s Programming tutor, you should definitely read it, you need the help

photo credit: dougbelshaw
If this post on Macrumours is true, I am pleased. I’m due a phone upgrade at the minute and naturally want to upgrade my original 2G iPhone to the new 3GS. All these reports of discolouration and overheating are really putting me off at the moment. Of coarse now I’ve just read about a new complaint, crappy battery life </sigh>.
I’m thinking maybe I should wait a bit for these things to sort themselves out. I don’t want to play early adopter Russian Roulette. What do you think? Is it worth listening to these rumors or are these kinds of reports inevitable when a new high profile piece of kit is released?