Development

By-value static member variables & XCode debug builds

Well, this had me baffled for a while. I’ve been beavering away on allowing custom, user-supplied memory allocators in Ogre, hopefully for inclusion in the upcoming 1.6, and I came across a very weird problem in OS X. The wrapper for customising regular allocations (ie new/delete as opposed to STL allocations, those are in a different std::allocator compatible class), looks like this: template <class Alloc><br /> class AllocatedObject<br /> {<br /> protected:<br /> &nbsp;&nbsp;&nbsp; static Alloc smAllocPolicy;

Read more →

Explicit or implicit?

As a developer, there’s an polarity of choice when it comes to frameworks regarding whether you would rather lean towards more compact code where most things are implied, or more verbose code where most things are laid out explicitly - most obviously in the web development sphere. Ruby on Rails is continuing to be a hot property simply because it’s quite elegant and very compact for the functionality it delivers. If you’re making a relatively simple web-based, database-driven application there’s probably no faster way to do it right now - although significant concerns about practical scalability remain, perhaps Ruby 1.

Read more →

OSDN network recovers

For those on this side of the Atlantic and therefore not in bed, many of the OSDN sites were down all morning including Slashdot, Freshmeat and most importantly for me, Sourceforge. Sourceforge occasionally has some downtime, something that some people moan about, but since they provide a ton of bandwidth and facilities for free (except for the optional yearly subscription that I happily pay) I say we can’t complain. However this time, absolutely everything was offline, CVS and Subversion servers, their own cached site, everything.

Read more →

Thoughts on source control systems

I migrated the OGRE CVS repository over to Subversion this weekend, something I’ve resisted in the past due to some problems I’d had when using cvs2svn with our rather old and branch-littered repository. In all honesty, some of the problems were probably self-inflicted since I’d experimented with branch aliases a few years ago which cvs2svn previously didn’t like very much, but luckily the latest version has coped acceptably. For some bizarre reason when imported into Sourceforge the conversion decided to ressurrect a ton of folders & files that had been deleted long ago in CVS, which hadn’t happened when I tested this whole process locally, but all the other files did seem to be correct so some swift purging of the cheeky Lazaruses resolved it.

Read more →

Branch merging with Subversion

Most people who have used a source code management (SCM) system in any serious way will have found the need to create multiple branches of their repository at some point. Some people avoid using branches because they don’t understand them, don’t feel they need them, or because they’re a little afraid of the complexity they might bring - however, branch management is something that all serious developers should be comfortable with. I was reviewing my Subversion branch procedures recently (more on why another time) and since I’ve talked to other developers before who find this sort of stuff daunting, I felt I could probably share some insight on the subject, and tools that I’ve found useful.

Read more →

UAC - Mission Accomplished

It’s official - Vista’s UAC was designed to annoy users. The idea was to piss them off enough that they’d beat on the ISV’s to make them change their software so it didn’t trigger UAC prompts anymore. So that’s at least one feature in Vista that’s a rip-roaring success then. To be fair, it’s a bitter pill that had to be swallowed. Microsoft built OSs for decades that were concentrated on flaunting all their wares to developers with little or no protection; because you know, security just gets in the way and all those rookie developers get upset when things are difficult.

Read more →

Innovation revisited

A few weeks ago I posted a rant about how companies keep way more code to themselves than makes any rational sense, under the pretense of protecting their competitive advantage. I asserted that in a large number of cases, what they’re keeping to themselves is actually exactly what everyone else is also developing internally, and also keeping to themselves in the hope that it’s worth something. Result - a ton of duplicated effort that is worth very little.

Read more →

Open Season &#038; remote working thoughts

Open Season is a podcast about open source issues, weighted towards the practical rather than the philosophical, and as such I tune into it regularly. Some are better than others, but I found the latest Episode 13 quite interesting for a number of reasons. They had an analyst from RedMonk on board this time, which was fascinating - RedMonk are (AFAIK) the only research firm that release their results openly rather than charging a few thousand for detailed papers, so they’re quire interesting.

Read more →

Moving beyond language

When you’re talking with some programmers, particularly younger ones, you can’t help but run into the ‘great language debate’ at some point or another. That is, that many programmers have a language which they feel is superior to all the others, and they’ll put up a ton of resistence should you suggest that they use something else. It happens in other areas too of course - preferred operating systems, databases, apps etc, but as coders the language issue always tends to come up most, closely followed by IDEs.

Read more →

Late to the Flash gamedev party

I never touched Flash coding before this weeked - I’ve never really felt inclined to do so, I generally dislike Flash interfaces on websites and as such I never felt the need to buy expensive tools from MacromediaAdobe to develop in that environment. There was also the fact that forcing someone to install a plugin to view your content always left a bad taste in my mouth. A few things have changed that attitude recently though.

Read more →