Yesterday saw a triple-whammy of sugary Apple gaming goodness: Steam for Mac was released, meaning all the games you own on Steam that are ported to the Mac can also be played there, free. Torchlight was a day-1 release on the service, meaning Ogre (and therefore code written by me) was among the very first on the service. Portal became free (for Mac and PC) Wow. A great day for Mac gaming.
Our rampantly consumerist world has many facets, pros and cons to it, but one thing has so far been perceived as a universal constant - the quest for the ‘next big thing’. That one product, or class of product, that every man, woman and small furry creature from Alpha Centauri wants to get their hands on. In the technology world, analysts have long since been riding the gravy train of purporting to be able to peer sagely into this murky future in order to extract those world-changing gems that everyone would be invested in.
For 18 months I’ve been told by a succession of doctors and physios that I didn’t have anything structurally wrong with my spine and that my bouts of back pain were simply ‘standard non-specific back pain’ - ie muscle problems that I should just take NSAIDs for and exercise more. I’d been a bit skeptical because the problems were occasionally quite extreme and seemed to be always centred on one particular location (the joint just at the bottom of my ribcage), but after getting many opinions and one set of x-rays I went along with it.
When I was evaluating Mercurial, I touched briefly on Mercurial Queues (MQ), but at the time felt that they were probably a little more complicated than I needed. After all, one of the things I liked about Mercurial was that it all felt rather straightforward and intuitive, while MQ seemed downright confusing. However, I’ve just discovered a really powerful use case that has meant I’m now committed to using MQ for my every day workflow.
I’ve had requests to post the OS & browser stats for the OGRE site, which I didn’t include in my previous demographics post, so here we go. A caveat to start off with - as a programmer-oriented site our users are obviously a little different in their choice of tech to the population at large! Operating Systems Not really a surprise there, Windows dominates the landscape, with Linux and OS X pulling up the rear.
Almost exactly three years ago, I posted an analysis of the traffic on ogre3d.org and the rough country breakdown of our users, which is always fascinating to me. I hadn’t actually been collecting web stats on the site for about a year (the previous set-up was lost when I had to recreate the server in a hurry, and somehow reinstating it never seemed to rise to the top of my TODO list), but a month ago I finally got around to adding Google Analytics to the site.
Trends - or as I would call them, rampant fads populated by people looking to leverage the best buzzwords to get VCs to throw money at them - come and go. The one constant is the claim that is so awesome that will universally and irreversibly replace , to the extent that if you’re using or producing , you are irretrievably lame, and complete strangers will point at you in the street and laugh at your horribly backward ways.
I recently finished Mass Effect 2 - I was reserving my judgement until the end because Mass Effect 1, while great, failed in a few areas to deliver a KOTOR-beating experience that reviewers had attributed to it. ME2 was looking very promising, but I couldn’t realistically call it until I was done. Now, I can safely say that KOTOR has finally been matched, and in some ways surpassed. The main thing that I griped about in my Mass Effect review was that the characters were far too vanilla and predictable.
Writing good documentation is hard. While I happen to think that API references generated from source code can be extremely useful, they’re only part of the story, and eventually everyone needs to write something more substantial for their software. You can get away with writing HTML directly, and separately using a word processor to write PDFs for so long, but eventually you need a proper tool chain with the following characteristics:
When I came to write the OGRE manual many, many years ago, I went with Texinfo - it seemed a good idea at the time, and ticked most of the boxes above. The syntax is often a bit esoteric, and the tools used to generate output frequently a bit flaky (texi2html has caused me many headaches over the years thanks to poorly documented breaking changes), but it worked most of the time.
I’ve been meaning to replace this tool chain with something else for new projects for a while, and DocBook sprung to mind since it’s the ‘new standard’ for technical documentation. It’s quite popular with open source projects now and it’s the preferred format for many publishers such as O’Reilly. In the short term, I want to write some developer instructions for OGRE for our future Mercurial setup, but in the long term, I’d really like a good documentation tool chain for all sorts of other purposes, and Texinfo feels increasingly unsatisfactory these days.
Having spent some time this week establishing a new working tool chain, and encountering & resolving a number of issues along the way, I thought I’d share my setup with you.