Sunday, December 04, 2011

Belle will go to the IRC ball!

My previous post requires some explanation

I've been hanging around in the chatrooms on UKChatterbox a lot recently. Mainly using the Java IRC (Internet Relay Chat) client on the website, but occasionally on my Nokia N8. There are a few IRC clients out there for Symbian phones, but all of them so far have one major failing: they can't use the split screen keyboard introduced in Symbian Anna. So you miss what people are saying as you're typing your reply. Therefore I'm writing my own.

I'm using QT Quick, which makes it easy to write code which conforms to the Symbian Belle look and feel. Belle isn't out yet on my N8, but the component set will run in Anna, and by the time it's ready, I may well be running Belle. Much of the heavy lifting - the posting and translation of IRC messages to the server - is being done by the excellent Communi library, written by JP Nurmi et al.

My plan, such as it is (I've never bothered with any Detailed Design Documents or any of the other overheads of software engineering as I work on my own: it's all in my head), is in three stages:

  1. IRCBoilerplate. This is a simple Windows IRC client whose function is to allow me to get to grips with using the Communi library in a relatively comfortable environment. At the time of writing, it is perfectly usable as an IRC, client, if a little rough and ready. But then, it is boilerplate code. The GitHub repo for IRCBoilerplate is here. It's not the latest version, though.  It is. Why? See below...
  2. SessionWrapper. This is two of the classes from IRCBoilerplate placed in a separate QT Library project, so that they can be shared between IRCBoilerplate and QMLIrc (the working name for the Symbian IRC client. Horrible, isn't it?). Their function is to further decouple the UI (written in QTQuick QML) from the Communi-based backend code. I'm planning to limit the interaction between the two to using Qt signals and slots. I haven't set up a repo for this yet. I have, but SessionWrapper as a separate library is defunct. The reason is that it's too difficult to set up multiple static libraries in Qt. As SessionWrapper is two files, it's easier just to put it in the main project. I've had to adapt it for QMLIrc anyway.
  3. QMLIrc. This is the Qt Quick based IRC client for phones running Symbian Anna and later. All I've done so far is prototyped the UI. See above...
So there you have it. When it's finished, I'll probably end up putting it in the Nokia Store. It'll be free, though. I'm doing it for fun, not profit. 


Saturday, November 19, 2011

Version numbering in Qt isn't such a git.

Warning: This is techy stuff. Those of a delicate persuasion (or those who have a life) should look away now...

Still there? No? I'll carry on anyway. In Qt, there's no out-of-the-box way of automatically identifying the version of a project. This could be useful for debugging purposes, for example. However, if you use source code control, you can achieve it easily.

I use Git as my SCCS, and I have adapted the solution I found on Qt Centre, which uses SVN. My version uses git describe, which outputs a string in the following format:


latest tag-number of commits since tagging-unique identifier of latest commit


The code goes in the .pro file of your Qt project, and is as follows:


# Create a macro from the Git describe command, to use in about boxes.BUILDSTR = '\\"$$system(git describe)\\"'
DEFINES += BUILD=\"$${BUILDSTR}\"

This code inserts the git describe string in a #DEFINE macro called build. Here I've used it in a function to display an about box:


void MainWindow::on_aboutButton_clicked()
{
// Display an About box. This uses the BUILD macro created from the // Git describe string in IRCBoilerplate.pro QString versionString = BUILD;
QString aboutString = "IRC BoilerPlate " + versionString + "\n ©2011 Mark Johnson.\nUses the Communi IRC library by J-P Nurmi et al.";
QMessageBox::about(this, tr("About IRCBoilerplate"), aboutString);
}



What's IRCBoilerplate? I'm writing an IRC client for my phone. IRCBoilerplate is a simple Windows IRC client I'm using to learn the nuances of the IRC protocol.

Thursday, November 17, 2011

I'm not married anymore!

I kinda lost interest in this here blog. I mean, no one was reading it. And I'm lazy.

Anyhow, in the two years since I last posted, I've:


  • Got a job as a Trainee Accountant at a small local firm. I like the work, they like me, and as soon as they're sure I'm free of the wobblies they'll pay to further my training. Wobblies? read on...
  • Passed my AAT.
  • Got separated, and moved back in with Mum and Dad. Hence the wobblies. I'm not talking about it - it's water under the bridge, and this blog's about me now. Besides, I have a lovely girlfriend now, who inspires me. I still see the girls regularly.
  • Not done all that much to the TR7, but I've recently restarted, now that my ex has cleared the garage in her new home where she's kindly allowing me to keep it.
So I'll try again to keep this blog up to date. I'll use it to document the TR7 work as normal, and also my attempts at writing apps for my Nokia smartphone using Qt.

Saturday, June 27, 2009

Black Goo

I've not been looking after this here blog, and so I've decided that I'll make more of an effort to document my TR7 rebuild. The story so far...

(cue Wayne's World-style wibble effect)

I've been repairing the left hand side of the floorpan, where there was some corrosion at both the front and rear edges. This is not good, as the TR7 is a monocoque, so the floor forms part of the structure, as does most of the metalwork, to be truthful. The rear floor area is especially important, as this is close to the area where the trailing arms that hold the rear axle to the chassis bolt in.

So I've been busy - cutting out rusty metal with tinsnips and angle grinder cutting disks, and welding in new metal. I've been using both sheet steel and commercially available repair pieces as appropriate. Once the new steel was welded in, I cleaned up the remaining areas of original metal with a twisted wire cup in my trusty angle grinder, before treating any remaining surface rust with Kurust, which chemically neutralises the rust. The surface rust formed in part because the bituminous sound-deadening panels fitted at the factory were fixed to the floorpan underneath the paint, so I am hoping to prevent this by putting the replacement sound-deadening panels on top of the paint.

At the moment, I have primed the floor, using U-Pol Acid #8 etch primer aerosol and normal grey primer. The next step, which I did this evening, is to seal the seams and welds using U-Pol Tigerseal, which is a polyurethane adhesive sealant which comes in a tube.
Here's the primed front floorpan before Tigersealing:

And here it is afterwards:

Tigerseal is very gloopy, and it's hard to get it looking neat. But it's sealed the edges well, and once it's dry will be ready for paint. Hopefully, I'll get the paint done (as it's completely hidden by carpet and the like, I'm going to use a few coats of satin black) before the TR Drivers weekend at Billing Aquadrome, Northampton next weekend. Like last year, we're dragging out the tent and will be camping all weekend. The car will be there next year, honest...

Monday, June 08, 2009

This is good

Tom Reynolds has written another book. Which is good, because the last one was superb.

What is even better is that because it's published under a Creative Commons licence, it can be downloaded and linked and embedded almost everywhere. So here's my attempt to increase Tom's readership by almost none:



Remember kids - it's available in all good bookshops, several evil supermarkets and a few dodgy websites.

Sunday, June 07, 2009

Tum te tum...

Many sunrises have passed since I last blogged. Not much has happened to tell the truth. I'm a week or so away from my AAT and payroll exams. I think I'm pretty ready.

The jobhunting has stalled, pretty much. I did have a second interview, with a major construction company looking for accounts assistants for a major road project. Needless to say, I didn't get the job. The three people they took on had specific construction industry experience. Fair enough, but it doesn't help me. I do believe that I have made a big mistake looking for a job a year earlier than I had planned. It's coloured my view of my course, and it's made it harder to get motivated to revise. It's strange, because I can do it. There are people out there doing the same course who are in work, and seem to be struggling, or who don't seem to have got it as quickly as I have. It's frustrating.

Thursday, March 05, 2009

I'm nowhere to be seen...

I've just found out that one of my co-students has been writing a blog. I don't see her and her cohorts so much these days - although we're still doing the same course with the same lecturers, I'm doing the other class most of the time (we do two three hour classes a week, each of which is held twice, once during the day and once in the evening. I usually do Tuesday evening and Wednesday morning, and Student Granny does Wednesday afternoon and evening). SG can be quite scathing on her blog, which I read from end to beginning once I discovered it.

Alright. I admit it. I read it to see if she'd said anything about me. So shoot me. But there's zip. I'm not the subject of her wrath, or anything else.

Friday, February 27, 2009

Wahey!

Saw this on FailBlog:

fail owned pwned pictures
see more pwn and owned pictures

Reminds me of a toy we did at McDonald's once. A range of dragons that balanced on a rocky outcrop, except that one of the outcrops looked strangely familiar. It was swiftly withdrawn, but I'm sure Jo Coton took one home...

Wednesday, February 25, 2009

Lies, damned lies and no statistics at all.

Stepdaughter #1 and I were photographed for the AAT Magazine article today. Which was a slightly bizarre experience. How so?

Well, for a start the dress code was 'smart casual'. Now I'm a jeans and t-shirt or work clothes (which with my work history, tend to be some sort of uniform) kinda guy, and so I'm not entirely sure what smart casual is. I therefore took myself to that high class gentlemen's clothing emporium that is Asda, and bought a couple of polo shirts and a pair of chinos. But Mrs MnG told me that I should never wear shirts with horizontal stripes, as they'll make me look fat. So I put on a grey short-sleeved shirt I already had, and took the polo shirts as spares.

We did three sets of photos. The first set took place in one of the computer suites at college. If you've already done AAT Foundation, you'll know that there's no computer element to Intermediate, so SD #1 doesn't even have a Burton College login. No matter, as Johnny the photographer had carefully arranged the computers to show the bright blue Windows XP login screen, with us sat on chairs in the middle. The next few minutes were a montage of Johnny photographing us, getting SD #1 to smile, and running round wiggling mice.

Next up was in the library, where we were photographed in one aisle, whilst Johnny was in the next aisle, poking his well-endowed Nikon through the books. For composition, don't you know...

Finally, we were shot actually studying, or at least pretending to. I was doodling, then pretending to read a text book, when the fire alarm went off. "Just a couple more shots..."

It was fun, and Johnny told us that he'd got some good shots. And hopefully, some accountant somewhere will see my gurning mug, and think "I'll give that man a job." Possibly. Maybe.

Tuesday, February 17, 2009

I'm a media star!

Sort of. Kind of. Darling Stepdaughter #1 and I are to be featured in a forthcoming issue of AAT Magazine, as part of a feature about families studying the AAT. Watch this space...

New life goal


I have a new life goal. I want to find a job which will enable me to get Nokia's iPhone-killing N97. 32GB memory, touch-screen and slide-out keyboard, 5 megapixel camera, GPS, etcetera etcetera...

In other mobile-related news, I have downloaded Shozu, which will enable me to upload photos straight to Facebook. It'll also make it easy to upload pics to Blogger, when I get that bit to work.

A bit of work.

This last week, I've been temping for a building facilities management company. It's not accounts - the closest I come to invoicing is filing them - but the girls in the office are lovely and it's experience of a sort.
Yesterday, I was sorting out the event files for one of the larger clients. What happens is the client emails up with a job - an event - and we assign an engineer, usually one of the resident engineers. The jobs vary, but are usually small - from unblocking toilets to adjusting the aircon. They come in cycles: in summer people are too hot, and in winter too cold. Christmas brings requests for PAT (Portable Appliance Test - an annual electrical test on everything that plugs into the wall) tests on christmas lights and radios.
Some things I've noticed: every job has a priority, and some people's idea of priority is skewed - adjusting the aircon tends to get top (1-2 hours) priority, whereas fixing a flickering light above an epileptic can wait a day or two. The person typing the emails is in love with the word 'within' - a typical job description is 'Within prepayments it is too cold - please check' instead of 'Please check prepayments as it's too cold'.
And spare a thought for poor Amrit. One day he rang in because of a draught above his desk. A couple of days later, he complained of being too hot.

Tuesday, February 10, 2009

It's a crying shame.


Jim Jump can't get into Wetherspoon's with this...


According to the Portsmouth News (and several of the national newspapers), two Royal Marines were turned away from a Wetherspoons pub for not having the right ID. Apparently, military ID isn't valid ID for proving you're over 18, as jobsworth bouncers can only accept driving licences, passports and those PASS card thingumys.

Now, I can see this in landlocked Barnsley, say, but this is Portsmouth, where there have been naval dockyards (and hence sailors - military personnel) for centuries. They all have IDs - although not quite like the one above with names, dates of birth and photos clearly displayed.

So it's with regret (because Wetherspoons do serve decent beer) that I've joined the boycott. Until Wetherspoons apologise publically to squaddies everywhere, then I ain't going in.

Saturday, February 07, 2009

Bus Slogan Generator

I saw this on the Sabre forums.

Here's a couple of my efforts:




Friday, January 30, 2009

TR7 Progress

A wee note about progress on the TR7.
  • LH Door is reskinned, awaiting fitting and tweaking (which I will do once the floor on the LH side is completed). It also needs seam sealing inside.
  • The LH front floor is practically complete. All I need to do is dress the plug welds, and get rid of the remaining surface rust on the interior before giving the bare metal a temporary coat of primer.
  • The quarterlight frame for the LH door needs starting again, as there's some surace rust reappearing. It needs stripping, derusting and repainting.
  • I have enough parts to repair the LH rear floor.
  • I have rebuilt the LH rear drum brake, and have some parts to re-build the RH rear drum brake. I only need to rebuild the brakes enough now to ensure the handbrake works, as I plan to pull the rear axle out. This is so I can turn the car round on my slopy drive so I can fix the floor on the RH side.
  • The bumpers are in the process of being refurbed - they need stripping down, derusting and the plastic parts repainting. I need two new sidelight assemblies - the fixing bolts were seized and broke on both of them, as well as a replacement front centre bumper cover.
That'll do for now...

Thursday, January 29, 2009

Warning: venting in progress.

I'm seriously getting fed up with looking for a job. I know there's a recession going on, but still. It's just that I've had a couple of knockbacks recently, and it's affecting my confidence.

Knockback one was a phone I had on Monday, the day before I had an interview with a local council. Interview cancelled, due to a recruitment freeze. But it was knockback two that had me in tears of frustration. I saw a job on a well-known recruitment agency's email for an AAT Semi Senior in Leicester. Unusually, this job seemed not to require even the six months experience that trainee accounts positions seem to require. (Why is that? Surely someone looking for a new job with only six months experience is showing a lack of commitment?) So I applied, and unusually for me as I'm not a fan of phones, I phoned the agency to show keenness.

The lady on the other end told me that the client had specific requirements, and that even someone commuting from Loughborough (a town halfway between leicester and Derby, where I live) would not be considered, and so he would not even look at my CV. Apparently he's been burned before by people who commute on the sort of salary a junior accounts trainee would earn.

Well, excuse me, but give me some flaming credit. I know that entry-level accounts positions pay jack all, but we're managing on the mix of NHS student nurse bursary and tax credits we get at the moment, so I'm prepared for the low wages for the right job. I can read, and I do know the relative distances between Derby and Leicester, and I'm prepared for that. Here's the thing. If I wasn't prepared for the commute, I wouldn't have applied!

It's the classic lack-of-experience vicious circle. It has been suggested to me that I write to accountants and offer to do some work experience, or volunteer for charity work. I'm a bit leery of the charity work, as I'm half expecting that once I've done some volunteering that the recruitment agencies will turn round and tell me that the experience is 'the wrong sort of experience'. In addition, there's the question of childcare. If I was being paid child care wouldn't be so much of a problem, as we have got an arrangement kind of set up for if and when I do get a job. But I'm not sure I can get childcare for swanning about like a schoolboy doing work experience with no guarantees at the end of it.

By the way, the study is going fine. In Unit 5, we started overhead absorption. To be honest, I've been told that Intermediate is much harder than Foundation, but that's not my experience. I'm finding it all straightforward and logical. And the same goes for Level 3 payroll. There's another rub. I'm understanding this, and able to do the work. Elsewhere in the class, there's students who are working, and they're struggling. I can do this! Give me a job!

And breathe...

Tuesday, December 16, 2008

Shock horror!

I've just seen my daughter in a nativity play at her school! And I was allowed to video it (I wasn't the only one neither).

Thursday, December 04, 2008

Gavin & The Pumpkin

This year was the last ever Calke Abbey Bonfire. My mate Mark James's father was, until he retired this year, the Gatekeeper at Calke Abbey in Ticknall, Derbyshire. For quite a few years now, Mark, another mate Paul, and in later years Paul's dad and brother have been having quite spectacular bonfire parties, with food, and a Hallowe'en themed 'scary walk'.
As it was the last year, I decided to video it this time, pulling out all the stops. Or, at least, as many as I can with my two old Sony Digital8 camcorders. I also have Adobe Premiere Elements, which I will use to edit the stuff when I get a big enough hard drive for my laptop.
But I've been playing with PE, and used it to edit some footage I took on my N73 last year, involving my mate Gavin and his adventures with a pumpkin. Enjoy...

I've got a new Phone!

The contract on my N73 came up for renewal, and as the phone was beginning to get a bit tired - there were a few scratches, the lens cover was getting loose and causing the camera to switch off randomly and the volume down key was broken - I decided on an upgrade.
The main feature for an upgrade for me was built-in GPS. I've been using TomTom 6 on the N73 quite successfully, but the bluetooth GPS receiver with its separate charging lead and the cigarette lighter doubler required meant there was a fair bit of spaghetti round the dash - not good. I did look at the HTC Touch Diamond, but this would have cost me £60 to upgrade to. So I stuck with Nokia, and got myself a 6220 Classic in Plum (they had no black in stock). I also negotiated a drop in tarriff (from Dolphin 35 to Dolphin 25 - fewer minutes but still unlimited texts) and increased my data from evenings and weekends to all day. Bundle in the £7 a month buyback on my old phone (actually my stepson's old phone - he grabbed the N73), and I'm paying less than before. Bargain.
First impressions are extremely positive. The 6220 is slimmer and appreciably lighter than the N73. The screen seems brighter, if slightly smaller, and the keypad seems slightly larger. I've noticed the keys can move a bit if pushed in the wrong direction, so I'll have to watch that. A good thing for me is the deletion of the extra side key to top left instead of near the camera shutter key. This stops it being pressed when putting the phone in the car mount.
The phone seems much slicker in use too. The camera lens cover slide is much, much smaller, and looks more robust. The S60 operating system finally gets a built-in keylock, and the menu transitions look cool. Also cool is the ability to set the standby wallpaper to a slide show. Coolest of all is the message reader, which will read incoming text messages. The built-in Maps application works well, although the UK maps weren't already on the memory card as I expected them to be. Speaking of memory cards, it won't take the same size as the N73, but it comes with a 1GB card, which will do until I can afford an 8 or even 16GB one.
The 6220 also won't take the same hands-free lead as the N73, which means that until I can get a proper Bluetooth car kit in the Astra, I've had to buy wired lead. The 6220 comes with a stereo headset, which is no good in the car. But I have found a clever feature. The 6220 has a 2.5mm jack socket for the headset and TV-out lead, which will also take headphones, using the phone's built-in mic. So I've bought a 2.5-3.5mm jack plug adapter, which means I can use the tape adapter to route the phone's audio through the car stereo. Seems to work fine for Maps and mp3s, and for the odd phone call I take in the car. The camera seems fine, too.

Tuesday, December 02, 2008

Ein ganzes Jahr

So it's been a whole year since I posted. Sorry, just haven't been arsed. A quick recap:

  • Passed AAT Foundation and Payroll (with an A!). Now on AAT Intermediate and Level 3 Payroll, which takes some juggling as two of the classes clash.
  • I've been looking for a job since the summer, but with not much success. I have had a few interviews (where they said I interviewed well, but the job still went to someone with more experience), and I have had a four-week stint temping in an office, which was really good. I'm stuck in the no experience vicious cycle, which will take time and persistence to cure.
  • Mrs MnG has started on her student nursing.
  • The TR7 is moving s-l-o-w-l-y. I've mostly got the LH front floor in, and I have all the parts to do the LH rear floor. Trouble is, I've not much time to work in. I have got hold of a big gas cylinder, though.
  • We bought a big family tent, a Vango Colorado 800DLX, and we used it at the TR Drivers Club national weekend in July, and the Suzuki Owners Club AGM in Ashbourne in August. We're not in the SOC, but my in-laws are, so they let us camp, and we took the little ones to a nearby agricultural show.
I've found out how I can send pics and posts to this blog from my phone (both by email and by MMS) so you might see more on here. I've also linked Facebook to the blog, so new postings go on as Facebook notes.