Oh Bugger

Why is it that when I’m away from the computer I can formulate hundreds of blog entries in my head but the second I sit down to write anything, it all pours away? Buggery. I guess with the lack of anything inspirational or witty to say I should probably update you all on what’s going on around here…

Things are finally starting to calm down. My course module is finished, and I’m waiting on the results. I have a feeling that due to ‘external pressure’ (i.e. juggling work work, home work and a baby) I’ll have failed this one, but I’m hoping that I’ve scraped enough to qualify for the free re-sit.

Isabel is growing in so many ways, but it’s so subtle it’s hard to describe it. For example, the other day she was waving a book at me so I said “bring me the book” … and she did! And that sounds so mundane and ordinary written down, but it means she’s taking in and understanding more and more. I hadn’t given it much thought when I said the sentence… normally I’d just pick her and the book up in those situations so it was very spur of the moment. Anyway, she recognises so many things now. She identifies body parts, knows certain words like ‘car’, ‘cat’ etc. She will “blow” her nose if you offer a tissue or muslin and say ‘nose’. She walks if she’s not thinking about it, but as soon as she realises what she’s doing she sits down or starts crawling. I’m missing out so many things here but there’s only so much time in the day and I can’t gush about her all night :)

No work until Tues 4th Jan now, which is a nice break, albeit just building up to a big deadline when I go back. I’d been working on a big big WordPress project which has introduced me to plugin building (I’ve only ever done basic widgety stuff before). This of course is endearing me to WordPress, which is never a good thing… it’s only ever lead to trouble before and I do love Habari. Sigh.

The cats are mostly a pain in my ass for one reason or another, but that’s not entirely their fault. Isabel loves them, though. I shall get around to taking pictures of them at some point. Crumble has grown, although I couldn’t really see it until I started looking at some of the pictures from mid-year.

I guess at some point I should considering writing a “things that happened this year” post, but thinking back it was fairly quiet and uneventful compared to previous. We didn’t move. Nobody killed anyone. We gained a cat. The baby grew some. I think that’s about it? Oops, guess there’s no need to write that post now then. I wonder what 2011 will bring…

WordPress Plugin Development

Although I’ve used WordPress on and off for years, the closest I usually get to plugin development is custom widgets. This is not through lack of willing, but rather that everything I’ve wanted is already out there and I’m too lazy busy to reinvent the wheel.

However, one of our work clients has put in a request for an interesting addition to their site which is currently not really satisfied by any decent/up-to-date plugins. Part of the project involves extending the user-side of WordPress with full profiles, account history etc. It’s very “web 2.0” (now there’s a buzzword I’ve not heard in a while).

The advantage of this, beyond increasing my WordPress knowledge and experience, is that it’s given me the inspiration/kick up the arse needed to turn my free PHP mail form into a WordPress plugin!

Cloth Nappies: 6 Months On

Some of you may recall that back in June I worked out the cost of disposable nappies: how much we’d spent in the first 6 months and how much we’d spend if we carried on using them. I played around with some different types of cloth nappies and quickly considered myself converted.

Although I’ve spent about £200 on cloth nappies — which is more than the predicted 6 month cost of disposables — we have a stash of around 20 Bumgenius v3s, 3 FuzziBunz one-size for night-use (the fleece inner allows moisture to quickly ‘drain’ into the inserts and then dries for a more comfortable baby), and an ’emergency’ drawer of terries and OneLife for between washes (2 per week) if needed. Unlike disposables, however, these nappies are ‘birth to potty’, which means they should last until Isabel is ready to potty train (which could be another 2-3 years away). Of course, they can also be saved for possible future bab[y/ies]…

Considering how big a cynic I was about the whole cloth nappy deal, I am definitely a big convert. The savings over time will be in the hundreds, and it’s been so easy to fit a few nappy washes into our domestic ‘routine’ that I don’t consider them to have a time-cost at all. They look adorable too! :D

This morning I have ordered a trial pack of BumGenius v4s and a couple more FuzziBunz (because they were a) pretty and b) on sale) from Fill Your Pants. The prices for both were the cheapest I could find when I searched, and I managed to get an extra discount of 10% off by reviewing an existing product. (BARGAIN!) The advantage of trialling the v4s is that you get a wet bag with the nappies which I need for when Isabel starts nursery. I’ve just had a mail to say these have been despatched already, too.

All-in, money well spent. :)

The World of Jem

What’s going on in the world of Jem lately? Let’s see…

  • I’ve been back at work 3 weeks now. It’s not as bad as I thought it would be. That’s not to say I wouldn’t rather be at home with Isabel, but I am actually enjoying parts of it. I know! Knock me down with a feather! I even get to drink my tea hot and piss in peace. Wish I’d not spent so long stressing about it and enjoyed the last few weeks with Isabel. Of course, this may all change come January when she starts nursery (at the minute my mum is sitting her).
  • Talking of Isabel… she’s now just shy of 13 months old. First molar is breaking through the gum. She’s regularly taking wobbly steps on her own now, although I don’t call it walking so much as stumbling.
  • I’m still taking driving lessons. I’m on # 13 or 14, I think. I’m quite good (naturally) :D I have a few weak spots; I don’t mirror-signal-manoeuvre so much as signal-manoeuvre-oops…mirror! Still, I hope it won’t be long now before I can think about taking my test.
  • When I’m not at work, I’m… well, at work. Working little projects for friends to boost the bank balance pre-Christmas. This is not as easy as I thought it would be, with a littlie bombing around the place. Working from home is more playing/burping/feeding from home.
  • My OU module has taken a back seat, which is worrying because I really can’t afford to waste £200+ by failing. The end of module report is due in a week and I’ve not even read the course materials properly, let alone started writing. I’ve been making it up as I go along for the exams.

Heyho, nearly Christmas :D

Christmas Presents for Men

Am I the only one who struggles to buy Christmas presents for men?

It’s that time of year again (and right up there with birthdays and anniversaries); normally I spend weeks trying to think of the perfect present and still end up buying books, socks and/or smellies. I struggle to think of anything more imaginative.

Karl and I have been together 9 years… by this point I think I’ve given him pretty much everything he needs anyway. Then there’s my brothers, who just grunt at anything I buy (hard to tell from “yeh. great. wow, socks.” whether or not they like what you’ve got them.)

I’m thinking lump of coal in stocking at this stage…

What is Search Engine Optimisation?

As a developer it’s always apparent to me that different people have different ideas about what search engine optimisation (or “SEO”) actually is. The most popular opinion, by far, is that search engine optimisation is a series of ‘magic’ tweaks and secret handshakes to make pages rank higher, resulting in perceived usefulness and more sales. I think that this is a backwards way to look at it myself.

The point of a search engine is to deliver relevant results to the user. User enters a search term, search engine goes through it’s index and delivers the content it thinks is best to User. The search engines want to be seen as the best at delivering the ‘right’ content, so it’s important that only decent content ranks highly (especially as beyond a certain point in the SERPs, users either change their search terms or use another engine).

Throw enough money at a page and you can get it ranked high enough to deliver the much-wanted sales. However, if your outgoing expenditure on SEO or advertising is greater than that of the returned sales, you’re wasting time and money.

In my experience, the key is to turn that around on it’s head, putting yourself in the shoes of the user (or in fact the search engine). Spend time and money on improving the relevance of a page, and the relevance of your site overall, and all of a sudden you’ll find you’re working with the search engines instead of against them. In turn, this improves the experience for the user, which is much more likely to result in the kind of sales (and positive experiences) that clients really want.

Michael K Steals BellaBook, Breaks GPL License

I received a curious email on November 19th. A German CEO was asking me to state that I am, unequivocally, the developer of BellaBook and that BellaBook was free to use under the terms of the GNU General Public License. I almost took offence that such a thing should be questioned, as BellaBook was my ‘flagship’ script. It saw the very beginnings of my dabbling with PHP and bore the brunt of my very first security slip-up. It has been almost a badge of honour for me because, aside from the first cock-ups, it has survived 5+ years on the web with no ‘live’ exploits.

Turns out Mr CEO had actually downloaded BellaBook from a German website, except the script was uploaded under the name “MT-Gästebuch”. He’d been contacted by another developer, one Michael K., purporting to be the developer of the script and asking for 200 euros licensing fees because Mr CEO was using “MT-Gästebuch” on a commercial website.

Michael K. has taken BellaBook in its entirety, deleted the GNU GPL license file and stripped out all references to me, including my copyright notices and all credit to contributors from over the years. Preliminary checks show that he has not even made any significant modifications to the code (apart from translating the text into German).

I sent Mr K. my basic cease & desist on Friday detailing his infringement and my request: that he remove BellaBook within 3 days. I even used the power of twitter and called out for someone fluent in German (thank you adastra) so that I could send the cease and desist in both English and German: no room for misunderstandings then.

It has now been 3 days. 3 days and over 3 hours, to be more precise. Mr K. has made no attempt to remove my script from his website. In fact, the only action is to block my IP from his website. Let’s not beat about the bush here: that isn’t the action of an innocent party. (He’s also blocked several other IPs belonging to people who clicked the link to his website, which I pasted into a private forum.)

I’ve made no profit from BellaBook over the past 5+ years. If anything, it costs me money to host: both in bandwidth and time spent fixing bugs and improving the script. It has been on a “development hiatus” for a while because of the birth of my daughter, but is no less loved. It is my script. My first script. Procedural, yes. Untidy and needing redeveloping, yes. But my script nonetheless. It is therefore beyond laughable (and bloody offensive) that someone else should dare use it as a base to be asking 200 euros licensing fees from an unsuspecting user.

You can read the GPL license for yourself; if you find the part that gives other people permission to remove copyright notices and demand fees, please let me know.

I released BellaBook under the GPL because I wanted people to “make it their own”. I guess Mr K. doesn’t understand metaphors.

Update 19:15: the script has been removed and the offending page redirected to mine. Thank you for commenting, tweeting and sharing this post on facebook my friends :) As the material has been removed, I have taken out the links.

Diving into HTML5

I made use of a spare few minutes this morning by catching up on HTML5. I had, up until now, ignored HTML5. After having burned so much energy on XHTML — “the future of the web” — I was loathe to put energy into something which was going to end up costing me money (time is money, books cost money; it’s all about the money) and, like XHTML, get absolutely nowhere in 5+ years.

I happened upon Dive into HTML5 quite by coincidence and flicked through the first few chapters online. Already, it feels like somebody made HTML all yummy!

The proposed changes to web forms, namely placeholder text and additional input types, have the potential to make front-end web development a) quicker and b) easier. It seems to be opening doors for client-side validation without compromising accessibility (as JavaScript so easily can). What’s more, because of the graceful fallback to type=”text” in browsers behind the times, I don’t even have to wait to start implementing changes.

I can continue coding well-formed, semantically correct HTML as I would for a faux-XHTML page (as I do under a Strict HTML4 doctype anyway) but with juicy extras and an HTML5 doctype. There’s already an HTML5 reset stylesheet to cobble together appropriate display behaviour for new elements if I decide to get adventurous with <nav> etc. (Albeit unsupported — without JavaScript workarounds anyway — in Internet Explorer; no surprise there!)

So, I guess now all I need to do is wait for decent browser support… I won’t hold my breath.

Wonky Wonky

Things might look a bit wonky this morning as I update Habari and modify my theme a little (backend stuff, you won’t really see any changes).

PHP Mail Form Updated

Version 2.1 of my basic free PHP mail form is now live; this has been ‘ported over from my personal domain (jemjabella.co.uk) in an attempt to organise my content (and life!) a little better.

Please feel free to get in touch with feedback.

If you thought the cake was epic

…you should see her actual birthday present:

very hungry caterpillar

It’s 1.2m long. Teehee.

Currently Reading: The Art of SEO

I bought “The Art of SEO” while I was on maternity leave with my daughter, but funnily enough found little time to read it. It turns out babies don’t just lie around sleeping all day… who knew?

Anyway, following my return to work I’ve invested time in compiling a list of books I’ve not read or need to read again to try and get myself back up to date with what is happening in the industry (and to refresh my memory on things I already knew) and The Art of SEO is first on the list. I’ll let you know what I think of it in a few weeks time…