Proud! Yet disappointed…

Hello magazine. That is the reason I have just felt a moment of pride for where I work and what I do. Yes I enjoy doing my work, love where I work and when the two combine and a website where I did all the front end and had some influence in the functionality and design (Griff, as normal, was awesome) is a great feeling. Although it would have been nice if it hadn’t taken me getting all the way back to Durham to mention possibly being in Hello magazine, only to find out my mother has a copy with a Gyro ad in it, and I didn’t even know for sure we were in! It was Hello for God’s sake. I have had emails saying we are on fecking petrol pump, so tell us properly when my work shall be in one of the best sellers!! Apart from that rant I am quite proud that a website I built the front end for has been featured in Hello magazine (even without sign off, eh Barnaby!!). I also asked for 4 weeks, not the 2 and a bit I got (with luck) so well done me on getting the job done anyway, God knows I don’t have time to go back and improve it! Unfortunately.

Other news includes that CodeIgnitor is awesome, still. TotSocks are gonna be big, hopefully.

Stephen Fry and Boris Johnson are my heroes and I wish I could be either of them!!

I have also found that Hot Shots: Part Deux has ruined any possible chance of me enjoying either Rambo 2 or 3 without giggling at the slightest hint of a Charlie Sheen joke. Or any other joke in that film, to be fair!!

And finally, in the top of Division 3 (Hackney and Leyton league) clash, Hospital Tavern (my current team) overcame the favourites for the league Highstone FC in a 3-2 victory. What a great result, and it must mean that we can go on to challenge for both the league and the last remaining cup. Although if being picked up on one error in that game means I get dropped for the quarter final cup game, I will be so disappointed, I’m not sure I could handle it!! Here’s to the slim chance of us winning the league!!

Quick Response Codes (QR codes)

Today I went to the Technology for Marketing and Advertising show with little expectations, however I ended up in the Mobile Internet seminar. This is where I found that QR codes (which I had briefly investigated last week for a work pitch) are already usable and being used in the real world (although they are old news in Japan and China I hear – they are even on McDonalds wrappers there).

Example QR code.

The above is an example code – use it and I’ll know when you do because it is a text message to me, telling me how modest (awesome) I am. All automated.

The programmes I installed to test the QR codes on my Windows Mobile Orange SPV E650 (aka the HTC S710) were the i-nigma reader and the Quickmark reader both of which work really well if the QR is large enough (anything over an inch in print was fine – screen worked better but that defeats the object!).

The QR code can include all manner of information – popular uses I have seen include sending direct to mobile web pages, auto dialling phone numbers, short texts and even full sms messages with number and message! If you want your own QR codes you can create them for non-commercial use on the kaywa web site. hey also have an excellent reader on there, just one not compatible with my phone at time of writing.

So I will be pushing for these codes to be used more in my line of work and looking out for them and using them when I see them. Apparently current uses include on “Lost” posters, on the labels of England shirts and The Sun ran a piece on QR codes when they printed a code in the tabloid back in December.

Now I’m off to make QR code t-shirts – and you won’t know what they say unless you’re as cool as me and my phone!QR code

PHP Frameworks, the research

So for part of my development at work, I have been looking at the various PHP frameworks there are around and trying to find something that I can not only use at work, but also use at home for my own sites.

Now I do a little PHP and it is my aim to one day be the front end “that is better than most back enders at back end stuff” coder, but that day is many moons away. In the meantime I have tried and looked at the hype about a few MVC style PHP frameworks.

Symfony

Symfony logo.

This was recommended by Manda Poo, my former colleague. Her new company Blu Halo use this and apparently to superb extent according to their web site, which utilised the framework (Blu Halo). They also use jQuery superbly, but that’s one for another blog. Blu Halo do have a quite excellent web site there. Pretty much a perfect example of what I want to do at Gyro (I’ll be lucky, Virgin Atlantic is a little heavy on my time right now…).

I found Symfony to look a powerful and all round excellent framework. Some massive sites have used the framework, as well as Blu Halo mentioned above, for example Heriot-Watt University, ASDA (press release source) and Shoot magazine (brilliant). I did have a few issues with local development, using the command line PHP interface and getting it to work with WAMP. Incidentally I just found a load of solutions, a little too late unfortunately. I must try harder to work through things next time!

CakePHP

CakePHP logo.

Next was Cake PHP and I found pretty much the same as above, but without a personal recommendation I kept going back to see what I could see about Symfony, hence only spending a little while with Cake PHP. This is quite possible the most useless review of anything ever.

I’ll try Cake again, but not quite yet!

Code Ignitor

CodeIgniter PHP Framework logo.

This has proved to win the competition to be come my current obsession. From seeing the ease of install (upload – that is it!) to the simple database set up and querying I have quite literally got stuck right in. Hopefully over the next few weeks I won’t find any problems with it because it would be heartbreaking.

The best bits I have found in very limited experience of CodeIgniter are that the organisation of the framework is excellent, the way the MVC works and the code helpers are clear, without any experience of them, is brilliant.

I also briefly looked at KohanaPHP, which is based on CodeIgniter and I think it probably is the way forward, if it is as flexible as claimed (which it appears to be). The choice cam down to the fact CodeIgniter had better tutorials and support to unfortunately.

Obviously not being a back end specialist and an especially insecure programmer, I need more input on what might work as a development tool at Gyro. There is always the chance we don’t need one at all, but if we want to be considered a serious digital agency, then we better get in line and use the powerful frameworks. Not that there is anything “wrong” as such with the current set up, but surely better is, erm, better.

I think I will go with CodeIgniter for the back end of my next web site incarnation, but when I get a little more experienced with OOP I reckon I’ll go back to Symfony. Only time will tell.

ASP.NET will never be mentioned in a blog here, expect then, because it smells.

Warning – Philosophical comment below…

Yesterday I thought about what I might have made of myself if I had either staying in the call centres or really pushed to be a teacher. I thought call centre manager would be about right, at LEAST whereby teaching would have been a struggle to get up the ladder. Then I realised what I have already accomplished with only 4 years of web programming experience. Building Xerox, T-Mobile, SportsAid and Tate and Lyle web sites. Even coding Virgin emails most days is a feather in the cap – especially as I seem to be the only email author that can make emails almost perfect in every client, even Lotus Notes 5. The best bit is I will only get better, so I’m not thinking about what I could have done any more, but thinking about what I will do for the Internet and myself in the next 10 years.

The latest from the world of Bee

So quite a bit has been going on lately, I just haven’t been any good at updating this blog. Must do better.

Contents:

  1. Fallen windows
  2. Christmas parties
  3. Sunday league
  4. Chas n Dave

Fallen windows

Probably the most exciting, most inconvenient and most boring thing to happen lately was when our bedroom window fell off its hinges, smashing through Warren and Kathy (our downstairs neighbours) garden furniture on the way! Not only was it in the middle of the night, but it was also bloody cold and windy! So a nice cold night with my bike cover trying to keep out the elements was endured before a visit from a glazer – who couldn’t do anything, despite me suggesting to the landlord that a glazer wouldn’t fix the split frame. So next we had the carpenter round (not Karen) who very kindly gave us a warm plywood window. It has not improved the view unfortunately – but if only we had one in Leytonstone – it might have made that house quieter!

We are still waiting for a new frame, we do have our fingers crossed for a few double glazed windows, but I doubt that is on the cards.

Christmas parties

A couple of Christmas parties have already come and gone, both events organised through work. There was first the Virgin Atlantic client/Gyro party including (but not limited to) rubbish dancing (me), good dancing (everyone else), gin, cocktails, Pete Doherty’s hat, tiaras, Iron Maiden, Mercedes, loss of memory and a hangover. Excellent.

The Gyro staff party was even better than that. Starting with a meet in Balham where I looked a little strange as an English country gent at 2pm, half the digital team slowly arrived. Griff saving my embarrassment by being superbly worse (or better?) dressed as a Morris dancer, alone until the rest joined him at the main party. Next we had the Gryo digital meeting where a few things in the pipeline were revealed, which sound both promising and daunting. Only time will tell on that one.

Chap Bee

I have to admit that from then on, memory lapses were all too common, although I remember Pangaea champagne, double decker bus ride, excellent meat, deserved awards (I’ll get one one day!), another bus ride, gin and tonic, karaoke (Snooker Loopy as standard), not liking George better, hotel room gathering, mini bar gin, tube home (7am), grab footy kit and straight to Sunday league with a small amount of alcohol in my system. By small amount, I mean I was completely hammered. The cold weather sorted me out though, and I got through the game, not even playing badly (we won 4-2, by the way).

Sunday League

We lost to Hightstone, bastards. Beat Wenlock though (as mentioned above!). This essentially still leaves it in our hands, since Highstone lost to Hoxton a few weeks ago. We know it’ll be hard and we will probably have to play like never before to win every remaining game and guarantee the title, but hopefully one or two results will go our way and we can keep the momentum going and finish the league in a promotion spot. Second will do, but Champions sounds so much better.

Chas n Dave

13-01-2008
100 Club
Oxford St, London

Chas n Dave live in concert.

Chas n Dave

Ticket bought, friends attending, braces yet to be purchased. But they will be.

Chas n Dave. I can’t bloody wait! I’m honestly more excited about this gig than I was for the Foo Fighters, or Cut Chemist n DJ Shadow (not quite got the same ring to it as Chas n Dave) in March. Rockney here I come.

Lotus Notes – how to build the perfect email

Lately work we have had to build numerous email newsletters (e-zines, and sometimes even “eFlyers”?!) with a huge amount of content and very image heavy. The number and frequency of these emails mean a challenging turnaround time and the use of templates of previous email wherever possible.

However the client dropped a massive bomb shell when it was revealed that they (as a large corporate company) use Lotus Notes 5 as their primary email client. This is bad.

Not only does this mean we have to output a huge amount of work but it also means that this work must be absolutely indestructible, unbreakable code.

If you look at the following examples of emails displayed between Lotus Notes and Microsoft Outlook, you can see how perfectly valid and working emails can be slaughtered left, right and center by the Lotus Notes HTML rendering engine.

Sony emails.

Sony email which uses styles quite heavily. While this means that the email will not display as designed in email clients that do not support CSS (Gmail, Notes amongst others) at least it will degrade gracefully.

Hugo Boss emails.

This Hugo Boss email doesn’t use any style for any layout or formatting byut still breaks quite badly.

My preferred method would be that of Sony, or even plain text emails – which a recent .net podcast (episode 19) said most people surveyed would prefer to receive. Unfortunately the limited technical experience of marketing staff that have to sign off these emails mean that we have to make the emails work in Notes if possible, even if the actual recipients receiving the email in Notes is minimal.

There are a number of methods that can be used to make sure you emails display as planned in Lotus Notes and hopefully the trials and tribulations I have endured for the past year can be kept to a minimum for others by following these rules.

  1. NO BACKGROUND IMAGES

    They just don’t work. This doesn’t just apply to Notes, but also includes other well know email clients. This should be a general rule for all HTML email builds.

  2. ALWAYS SET OUT TABLE COLUMNS FIRST

    No matter whether widths are set on the

    tags themselves, it has always helped me to have an empty row right at the start of every single table, with 1px in height spacer images defining the table cell widths.

  3. NEVER EVER USE ROWSPAN

    Now I don’t know why this doesn’t work, but it proved to be a thorn in my design for a long time. I find that the only way to guarantee the reliable display or a table exactly as it should be is to ignore that rowspan even exists and insert tds in every row wherever required.

  4. DON’T SPLIT IMAGES HORIZONTALLY

    If you have a wide image, don’t split it across a row. This often results in extra space for no apparent reason, stretching the table row containing the images. Even if you have distinctly separate images, if you can get away with just using one full row width image then do it. And fight to keep it that way.

    If you absolutely have to split images horizontally, each must be in its own table cell, because even with absolutely no whitespace in the code, Lotus adds a single character space between each image.

  5. USE NO STYLES

    In my emails, I usually set text size at 11px or 12px using a style in my font tags to get around a link and copy size bug in hotmail. However Lotus Notes ignores this, and ALL other styles. So use no margins, padding font declarations, in fact use no styles at all. Go back to the early 90s, when CSS didn’t even exist!

    Since I still like to make sure the link and surrounding copy are the same size in hotmail, I still define font size, however use 13px with a size="2" back up in the font tag (or 10px and size="1").

  6. DO NOT USE P TAGS

    Lotus Notes doesn’t recognise the margins that should apply between p tags, so I find that declaring a font tag then using spacers to separate copy blocks, as follows:

    <font face="arial, verdana, sans-serif" size="2" color="#333333" style="font-size: 13px;">
    Copy paragraph 1.
    <br /><img src="../images/1x1spacer.gif" width="1" height="15" alt="" />
    Copy paragraph 2, and so on throughout.
    <br /><img src="../images/1x1spacer.gif" width="1" height="15" alt="" />
    </font>

I’m sure there are more techniques and ways to make HTML emails work in all email clients, but I find that the above guidelines help me work more efficiently by decreasing the time spent on fixing Lotus Notes issues (especially when Notes development is a requirement), in fact most are so reliable that I have also started using the above rules in all emails. You never know, they might help when it comes to developing emails for Microsoft Outlook 2007, when Word is used for parsing HTML emails.