Archive for the ‘Web’ Category

Golf Sale

Monday, March 1st, 2010

A really touching short film (4 minutes 56 seconds) about a fella who holds a golf sale sign on London’s busy Oxford Street.

According to London’s Time Out magazine:

The ‘Golf Sale’ board guys, however, are already starting to disappear and, from September [2007], will be refused licences. “They are just more visual clutter; we don’t think they add anything to the ambience of the West End.”

Fail Whale

Monday, December 7th, 2009

Twitter is over capacity

There’s a sight you don’t see as often as you used to, the infamous Twitter Fail Whale.

Is Twitter down is incorrectly reporting: No. (But then it depends on what it’s doing to determine that answer. The Fail Whale is showing so there’s something being served from the Twitter servers.)

Down for everyone or just me is reporting “It’s not just you! http://twitter.com looks down from here.”

Now, I wouldn’t mind quite so much, except that earlier this evening I was locked out of my Twitter account for attempting to connect too often with ‘the wrong password’.

Even though it was the correct password. Even though I’d just reset my password. Even though I’d just successfully logged into Twitter in Firefox with my new, correct password — the new, correct password that was replacing the old, also correct password.

Despite all that Twitter still wouldn’t let me login in Google Chrome. Or TweetDeck. Or Facebook. Which was odd because I was already logged in in Firefox. How can I be both locked out and logged in at the same time? Come on Twitter, sort it out!

(Speaking of which: why is Facebook so unbelievably difficult to use when you’re trying to locate the settings to switch off the Twitter application so that it doesn’t keep attempting to login to Twitter with the wrong password?)

I guess I’ll have to wait until the morning to see if the lock has been removed and I can successfully login once again.

How frustrating…

Update: 23:45

At last! I’m in again. Although TweetDeck is now fluctuating the Twitter status between “Internal Server Error”, “There is a problem – don’t panic” and “All Good”.

Dealing with spam

Tuesday, October 13th, 2009

Junk E-mail folder

There’s a really interesting article in this month’s PC Plus magazine about the war against spam which gave me the impetus to try to do something about those annoying spam messages that appear in my inbox with my email address in the ‘from’ field, like this:

123greetings.com [gareth@garethjmsaunders.co.uk]

Anti-spam software

I use Cloudmark Desktop, a spam blocking add-in for Microsoft Outlook 2007. It’s unobtrusive and pretty reliable, eliminating about 99% of all spam that gets delivered to my inbox. (In the last 4 days I’ve received 166 junk mail messages.)

But it has been those last 1% of messages that have been really annoying me these last few weeks, the ones that have been sent out to look as though they have come from my email account.

So I did a bit of investigating and have discovered a way that I can also send those messages to the Junk E-mail folder while retaining those emails that have genuinely been sent my myself (test emails or those that I’ve CC-ed or BCC-ed to myself for archiving purposes).

Outlook rules

Like most email clients Outlook allows you to define rules (sometimes known as filters).

Rules help you manage your e-mail messages by performing actions on messages that match a specific set of conditions. After you create a rule, Microsoft Outlook applies the rule when a message arrives in your Inbox or when you send a message.

1. Rules and Alerts…

In Outlook 2007 you can access the rules wizard by going to Tools > Rules and Alerts…

Outlook rules

Not surprisingly, this brings up the Rules and Alerts window:

Rules and Alerts

2. Email headers

And now for the science bit… It occurred to me that I needed to create a rule that did two things:

  1. Flag any emails that have my email address in the sender’s address.
  2. Check to see if I really did send those or not.

So within any message supposedly sent from myself I needed to look for some kind of unique value that could prove to Outlook that I really did send those emails. For that information I turned to the email headers.

In Outlook 2007 these are located on the Options panel, by clicking the tiny arrow at the bottom right of the panel:

Viewing Internet headers in Outlook 2007

As well as the information that you can immediately read within an email there is a lot of hidden data, known as ‘headers’, also transferred with each email; information such as where the email message was sent from, its return path (where the email should be sent if the recipient presses “Reply”).

Here’s an example from a random item of spam I received yesterday:


X-POP3-From: surveyingxq@rossiter.com
Return-path: <surveyingxq @rossiter.com>
Envelope-to: gareth@garethjmsaunders.co.uk
Delivery-date: Mon, 12 Oct 2009 13:17:47 +0100
Received: from laubervilliers-000-11-22-33.w444-555.abo.wanadoo.fr ([123.145.156.178]:25793 helo=SpeedTouch.LAN)
by server.mymailhost.co.uk with esmtp (Exim 4.54)
id 1MxJqT-0000Xc-4O
for gareth@garethjmsaunders.co.uk; Mon, 12 Oct 2009 13:17:46 +0100
Received: from 123.145.156.178 by mail.rossiter.com; Mon, 12 Oct 2009 14:17:43 +0100
Message-ID: <000d01ca4b36$00064ad0$6400a8c0@surveyingxq>
From: "123greetings.com" <gareth @garethjmsaunders.co.uk>
To: </gareth><gareth @garethjmsaunders.co.uk>
Subject: You've received a postcard
Date: Mon, 12 Oct 2009 14:17:43 +0100
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="----=_NextPart_000_0006_01CA4B36.00064AD0"
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2900.2180
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180</gareth></surveyingxq>

I can immediately identify a number of values here that prove to me that I didn’t send this email:

  1. The return-path is wrong. It’s not set to my email address.
  2. The HELO value is also wrong — “HELO” is the SMTP command that the sending machine uses to identify itself to the receiving machine — it should be set to the network name of my PC, which for arguments’ sake we’ll call ‘GARETH-PC’.
  3. The X-Mailer value is also wrong. I don’t use Microsoft Outlook Express.
  4. I also noticed that this email didn’t have an Organization set in the headers. Now I know that I have set the organization information in my email account, so that’s another value I can check for.

So against any of these four items I can check any message that has been supposedly sent to me and determine whether I really have sent it or not.

3. My rules

So I have built up my rule piece by piece to read:

Apply this rule after the message arrives
with gareth@garethjmsaunders.co.uk in the sender’s address
move it to the Junk E-mail folder
except if the message header contains ‘helo=GARETH-PC’ or ‘my_alternative_isp.com’ or ‘Organization: My organization name’

And that’s it. Remarkably, it seems to work quite effectively. In the last few days that I’ve been using it I’ve had only 1 spam message left in my inbox. Everything else has been suitably and efficiently whisked away to the Junk E-mail folder. Long may that continue.

What is a browser?

Wednesday, July 15th, 2009

This is something I come across quite often in my job, when I ask people what browser they use. A lot of people genuinely don’t know. The most recent answers I had were: “Windows?” and “I’ve got Office, is that it?”

What is a browser?

For those who’re unsure, a browser — or a Web browser — is the program you use to view Web pages.

It’s likely what you’re using right now to read this blog (apart from you geeks using an RSS feed reader … but that’s a whole other ballpark of worms that I’m not going to get into right now!).

Right now, why not go to the Help option on your toolbar and click on the About option. That’ll tell you the browser that you’re using (or whatever other application you’re reading this from!).

Mine says that I’m using Mozilla Firefox 3.5. Go me!

Browser icons
Image from Webappers

Most people using Windows will have some version of Microsoft Internet Explorer installed by default; but not after October if you buy a new PC with Windows 7 installed. But there are loads of other ‘flavours’ of browser:

Each browser claims to do things better than the next: load pages quicker, run code faster, adhere to Web standards better. I certainly recommend you check out some of those other browsers. Why not start with those 4 above?

Keep calm and carry on

Wednesday, June 10th, 2009

Keep calm and carry on

The BBC on their Magazine website in February asked if this was “the greatest motivational poster ever”.

Apparently, 2,500,000 copies were printed but weren’t distributed; at least not widely.

The Keep Calm and Carry On “motivational poster” was created in 1939 at the outbreak of World War II as a last case scenario to be used in the event of the Nazis succeeding in invading the UK.

It’s the stuff of good old, stiff-upper-lip British resolve. Keeping the chin up in the face of adversity.

Updated for web developers

Which got me thinking. This would be a perfect companion to .net magazine’s Bring Down IE 6 campaign.

Bring down IE6

The premise is simple: Internet Explorer 6 is antiquated, doesn’t support key web standards, and should be phased out.

But what if it’s not? What if Internet Explorer 6 carries on being supported for years and years to come. What if companies, and schools and universities don’t drop it for something better, something newer? What do we do then?

Well, that’s where my new A4 poster comes in:

Keep calm and debug IE6

We just keep calm and carry on!

Download


Creative Commons Licence

Creative Commons License
Keep Calm and Debug IE6 by Gareth J M Saunders is licensed under a Creative Commons Attribution 2.5 UK: Scotland License.
Based on a work at blog.garethjmsaunders.co.uk.

Review of GTD Agenda

Friday, April 10th, 2009

Gtdagenda.com

Back in October I got an email from Dan Baluta from Gtdagenda.com asking if I’d take a look his web application.

Of course, I was delighted to … but then a few things got in the way (I came down with a bug, and then Reuben and Joshua arrived, and then I got shingles, and then I didn’t sleep for a few months!).

Finally, this week, I’ve managed to have a good poke around the application and get to grips with much of what it does. Here are my initial impressions.

Getting Things Done

As the name might suggest Gtdagenda.com is based on David Allen’s Getting Things Done (GTD) method of productivity.

In the words of David Allen himself:

… the subtle effectiveness of GTD lies in its radically common sense notion that with a complete and current inventory of all your commitments, organized and reviewed in a systematic way, you can focus clearly, view your world from optimal angles and make trusted choices about what to do (and not do) at any moment.

GTD embodies an easy, step-by-step and highly efficient method for achieving this relaxed, productive state.

It includes:

  • Capturing anything and everything that has your attention
  • Defining actionable things discretely into outcomes and concrete next steps
  • Organizing reminders and information in the most streamlined way, in appropriate categories, based on how and when you need to access them
  • Keeping current and “on your game” with appropriately frequent reviews of the six horizons of your commitments (purpose, vision, goals, areas of focus, projects, and actions)

GTD core

As such, Gtdagenda.com has four main tabs which are at the heart of the application:

  1. Goals
    Record your primary areas of responsibility, assign them to categories (e.g. work or personal)

  2. Projects
    Define your projects, assign them to related goals and give them a priority (1-5).

  3. Tasks
    List the tasks required to carry our your projects, tell the application which project they belong to, and what its Context is (these are defined elsewhere).

  4. Next Actions
    Lists the tasks that you’ve assigned as Next Actions — ideally you’ll have one task per project classed as a next action, as projects move forward one task at a time. Next Actions can be emailed to you on a daily basis, which is quite neat.

Additional features

Besides the core four tabs that are at the heart of GTD Agenda there are three further sections:

  1. Checklists
    I love this utility: define things that you need to do often (e.g. exercise or update your blog) and then check them off when you do them. (See screenshot below.)

  2. Schedules
    Schedule daily or weekly activities; these can be linked to projects.

  3. Calendar
    It’s a calendar!

Checklist and graph
Screenshot from the checklist screen

I was about to write that there were four further sections, because above the Checklists, Schedules and Calendar options there’s a button for “Contacts”. I expected that this would have allowed me to record key contacts related to projects or tasks but it appears instead to allow you to send invitations to friends. But it doesn’t explain exactly what the invitation is for.

The official tour

For more details, including more screenshots, check out the Some of the things Gtdagenda can help you with page.

As an aside, it’s a shame that this page isn’t linked to once you’re logged into GTD Agenda. It might be more useful than the existing Help page, which would be better labelled “Support”.

Prices

There are three price plans for GTD Agenda: Free, Basic and Premium. As you’d expect the more you pay the more features you receive.

Features Free Basic Premium
Goals 3 30 Unlimited
Projects 5 50 Unlimited
Contexts 5 50 Unlimited
Tasks Unlimited Unlimited Unlimited
Price Free $39.45 / year $69.95 / year

My impressions

Ease of use

On the whole I found GTD Agenda pretty easy to use, but that’s because I’m already pretty familiar with the GTD methodology. I wonder how easy someone less familiar would find it, particularly as the Help option is more than sparce. I had to log out and check out the guided tour pages to find out more about some of the features.

As a test I took a few of my actual Goals, Projects and Tasks and entered them into GTD Agenda. It only took me a few minutes and the results were pretty decent. Clicking on “Move domain hosting” project gave me a good overview of the project (start date, related goal, number of tasks, progress and notes).

Goals

While I found it easy to add new goals I couldn’t work out why GTD Agenda had immediately categorised two of my goals as “Completed”. Sure enough they had no projects assigned to them, but neither did two other goals and they were classed as Active. I wasn’t sure if I was simply misunderstanding the model that it was using, other if this was a bug.

What does annoy me though is the compacted list of “My Goals” that appears at the top of every page. I don’t think it helps and it takes up too much valuable screen space.

Tasks vs Next Actions

I find the two tabs for Tasks and Next Actions to be a little cumbersome, I would have preferred one but with more options.

The Tasks tab shows a list of all defined tasks; the Next Actions tab is essentially a filter to display only those tasks that have been defined as the next action to take a particular project forward. I can see why this has been done, but I think that it would have been more efficient to have done this on the Tasks tab.

At the moment within Tasks you can group your list by either priority or project. I would have liked two further options: as I said, show Next Actions, and Group by Context. That’s how I work: within a particular context, e.g. sitting at my desk, I like to see a list of all the tasks that I could do here.

Disappointments

Aesthetics

I remember WordPress before version 1.0. It was nowhere near as slick as the current version (in fact, here’s a screenshot of WordPress 0.7.1, which is the first version that I ever used):

WordPress 0.7.1

So I have hope for GTD Agenda, because I think that its design is the weakest aspect of the application.

Having been using ZenDesk and BaseCamp for a few months GTD Agenda by comparison feels somewhat clunky and a bit retro. The application, in my opinion, could do with the loving attention of a Web designer and information architect.

Even a brief liaison with a CSS Framework would make the world of difference.

Heading

I find the heading “Gtdagenda.com” difficult to read and am disappointed that you can’t click it to take you back to your GTD Agenda Home page. Not least because I instinctively do it time and again.

Layout

How some of the screens are presented too could do with some strategic tweaking, for example, how categories and priorities are displayed. As an example rather than the priorities being listed at the end of each line (see below):

My list of goals

I’d have preferred the use of headings to clearly group Priority 1, Priority 2, etc. I don’t find the “Priority 1 line” useful, not least because the text is 6 pixels high and I’ve got bad eyesight.

Integration with existing systems

I already use a number of tools, desktop, mobile and online, to carry out my GTD-style organisation. I use Microsoft Outlook synchronized with my mobile phone, and also occasionally with a Psion and a Google Calendar (depending on my requirements).

But there was no way for me to import any of that information into GTD Agenda. Everything I wanted to enter into GTD Agenda had to be done manually. And once it was in there, I couldn’t get it out again — there is no obvious way for me to export my data other the calendar as an iCal feed into Outlook 2007.

As such, if you start using GTD Agenda it looks like you’re locked into using it exclusively. And if you don’t have Web access where you are you can’t easily add new tasks, although if you have mobile Web access there is a mobile version: www.gtdagenda.mobi/.

Conclusion

On the whole I like Gtdagenda.com. It has some useful functionality, it’s quick and easy to setup (assuming that you know your way around the GTD method) and has some nice features (email notifications of tasks, iCal feed, checklists), and I like the sidebar featuring a calendar, and lists of contexts and projects.

If I were to give it a score, I’d give it 3/5. It’s not quite polished enough but if some of the minor design flaws were tweaked, the application given a facelift I think and the import/export issue addressed I think GTD Agenda could be a really useful tool, even the free version.

Certainly, if you’re looking for a Web-based tool for managing your life in a GTD-style then certainly consider GTD Agenda, or at least keep an eye on its progress.

Fixing Blueprint CSS 0.7.1

Monday, March 23rd, 2009

Blueprint CSS

Note: Updated Tuesday 24 March 2009 @ 10:00

Blueprint CSS is a CSS framework. The latest version is v.0.8 but a lot of people are still using version 0.7.1, even though there are a number of irregularities in it.

So, this evening I’ve been sifting through the Blueprint CSS version 0.7.1 code and making a few corrections. The bulk of irregularities can be found in the source code (within the /blueprint/src/ folder) and not in the release code (/blueprint/screen.css) but these source files can be very useful so should really be fixed. There is also one error in the ie.css file in both the source and release code.

There may well be other edits, corrections or enhancements that could be made, but these are the obvious ones that I’ve spotted. Note that all line numbers refer to the original, unedited code’s line numbers, i.e. the code in version 0.7.1.

Copy everything

Rather than making changes to the original code, I created a copy of the Blueprint CSS 0.7.1 folder and imaginatively called it Blueprint CSS 0.7.2.

Edit #1: /blueprint/src/grid.css

The problem: a number of classes have been omitted. You simply have to do a compare between the code in grid.css and screen.css to see that .pull-6 to .pull-24 are missing from grid.css.

The solution: Replace the following lines of code:

145
146
147
148
149
150
151
152
153
154
155
.pull-1 { margin-left: -40px; }
.pull-2 { margin-left: -80px; }
.pull-3 { margin-left: -120px; }
.pull-4 { margin-left: -160px; }
.pull-5 { margin-left: -200px; }
 
.pull-1, .pull-2, .pull-3,
.pull-4, .pull-5, .pull-5 {
  float:left;
  position:relative;
}

with this code:

145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
.pull-1 {margin-left:-40px;}
.pull-2 {margin-left:-80px;}
.pull-3 {margin-left:-120px;}
.pull-4 {margin-left:-160px;}
.pull-5 {margin-left:-200px;}
.pull-6 {margin-left:-240px;}
.pull-7 {margin-left:-280px;}
.pull-8 {margin-left:-320px;}
.pull-9 {margin-left:-360px;}
.pull-10 {margin-left:-400px;}
.pull-11 {margin-left:-440px;}
.pull-12 {margin-left:-480px;}
.pull-13 {margin-left:-520px;}
.pull-14 {margin-left:-560px;}
.pull-15 {margin-left:-600px;}
.pull-16 {margin-left:-640px;}
.pull-17 {margin-left:-680px;}
.pull-18 {margin-left:-720px;}
.pull-19 {margin-left:-760px;}
.pull-20 {margin-left:-800px;}
.pull-21 {margin-left:-840px;}
.pull-22 {margin-left:-880px;}
.pull-23 {margin-left:-920px;}
.pull-24 {margin-left:-960px;}
 
.pull-1, .pull-2, .pull-3,
.pull-4, .pull-5, .pull-6,
.pull-7, .pull-8, .pull-9,
.pull-10, .pull-11, .pull-12,
.pull-13, .pull-14, .pull-15,
.pull-16, .pull-17, .pull-18,
.pull-19, .pull-20, .pull-21,
.pull-22, .pull-23, .pull-24 {
  float:left;
  position:relative;
 }

Edit #2: /blueprint/src/grid.css

The problem: a number of classes have been omitted. You simply have to do a compare between the code in grid.css and screen.css to see that .push-6 to .push-24 are missing from grid.css.

The solution: Replace the following lines of code:

157
158
159
160
161
162
163
164
165
166
167
.push-1 { margin: 0 -40px 1.5em 40px; }
.push-2 { margin: 0 -80px 1.5em 80px; }
.push-3 { margin: 0 -120px 1.5em 120px; }
.push-4 { margin: 0 -160px 1.5em 160px; }
.push-5 { margin: 0 -200px 1.5em 200px; }
 
.push-0, .push-1, .push-2,
.push-3, .push-4, .push-5 {
  float: right;
	position:relative;
}

with this code:

157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
.push-1 { margin: 0 -40px 1.5em 40px; }
.push-2 { margin: 0 -80px 1.5em 80px; }
.push-3 { margin: 0 -120px 1.5em 120px; }
.push-4 { margin: 0 -160px 1.5em 160px; }
.push-5 { margin: 0 -200px 1.5em 200px; }
.push-6 {margin:0 -240px 1.5em 240px;}
.push-7 {margin:0 -280px 1.5em 280px;}
.push-8 {margin:0 -320px 1.5em 320px;}
.push-9 {margin:0 -360px 1.5em 360px;}
.push-10 {margin:0 -400px 1.5em 400px;}
.push-11 {margin:0 -440px 1.5em 440px;}
.push-12 {margin:0 -480px 1.5em 480px;}
.push-13 {margin:0 -520px 1.5em 520px;}
.push-14 {margin:0 -560px 1.5em 560px;}
.push-15 {margin:0 -600px 1.5em 600px;}
.push-16 {margin:0 -640px 1.5em 640px;}
.push-17 {margin:0 -680px 1.5em 680px;}
.push-18 {margin:0 -720px 1.5em 720px;}
.push-19 {margin:0 -760px 1.5em 760px;}
.push-20 {margin:0 -800px 1.5em 800px;}
.push-21 {margin:0 -840px 1.5em 840px;}
.push-22 {margin:0 -880px 1.5em 880px;}
.push-23 {margin:0 -920px 1.5em 920px;}
.push-24 {margin:0 -960px 1.5em 960px;}
 
.push-1, .push-2, .push-3,
.push-4, .push-5, .push-6,
.push-7, .push-8, .push-9,
.push-10, .push-11, .push-12,
.push-13, .push-14, .push-15,
.push-16, .push-17, .push-18,
.push-19, .push-20, .push-21,
.push-22, .push-23, .push-24 {
  float:right;
  position:relative;
}

Edit #3: /blueprint/src/typography.css

The problem: the .left class has been omitted, which can cause unexpected results.

The solution: Replace the following lines of code:

40
p img { float: left; margin: 1.5em 1.5em 1.5em 0; padding: 0; }

with this code:

40
p img.left { float: left; margin: 1.5em 1.5em 1.5em 0; padding: 0; }

Edit #4: /blueprint/screen.css

The problem: As above, the .left class has been omitted, which can cause unexpected results. Do exactly the same in the release code, i.e.

The solution: Replace the following lines of code:

34
p img { float: left; margin: 1.5em 1.5em 1.5em 0; padding: 0; }

with this code:

34
p img.left { float: left; margin: 1.5em 1.5em 1.5em 0; padding: 0; }

Edit #5: /blueprint/src/typography.css

The problem: the h4 tag has an incorrect height declaration, which breaks things if the h4 line wraps a line. (Thanks to Steve Yorkstone for spotting this one.)

The solution: Replace the following lines of code:

26
h4 { font-size: 1.2em; line-height: 1.25; margin-bottom: 1.25em; height: 1.25em; }

with this code:

26
h4 { font-size: 1.2em; line-height: 1.25; margin-bottom: 1.25em;}

Edit #6: /blueprint/screen.css

The problem: As above, the h4 tag has an incorrect height declaration, which breaks things if the h4 line wraps a line.

The solution: Replace the following lines of code:

29
h4 {font-size:1.2em;line-height:1.25;margin-bottom:1.25em;height:1.25em;}

with this code:

29
h4 {font-size:1.2em;line-height:1.25;margin-bottom:1.25em;}

Edit #7: /blueprint/src/ie.css

The problem: Legacy code from version 0.6 has been left in. It needs to be replaced with the current way of defining the grid, namely a div.span-x for each column.

The solution: Replace the following lines of code:

15
* html .column { overflow-x: hidden; }

with this code:

15
16
17
18
19
20
21
22
23
24
25
26
27
28
* html div.span-1, * html div.span-2,
* html div.span-3, * html div.span-4,
* html div.span-5, * html div.span-6,
* html div.span-7, * html div.span-8,
* html div.span-9, * html div.span-10,
* html div.span-11, * html div.span-12,
* html div.span-13, * html div.span-14,
* html div.span-15, * html div.span-16,
* html div.span-17, * html div.span-18,
* html div.span-19, * html div.span-20,
* html div.span-21, * html div.span-22,
* html div.span-23, * html div.span-24 {
  overflow-x:hidden;
}

Edit #8: /blueprint/ie.css

The problem: As above, legacy code from version 0.6 has been left in. It needs to be replaced with the current way of defining the grid, namely a div.span-x for each column. Do exactly the same with the release code, i.e.:

The solution: Replace the following lines of code:

16
* html .column { overflow-x: hidden; }

with this code:

16
17
18
19
20
21
22
23
24
25
26
27
28
29
* html div.span-1, * html div.span-2,
* html div.span-3, * html div.span-4,
* html div.span-5, * html div.span-6,
* html div.span-7, * html div.span-8,
* html div.span-9, * html div.span-10,
* html div.span-11, * html div.span-12,
* html div.span-13, * html div.span-14,
* html div.span-15, * html div.span-16,
* html div.span-17, * html div.span-18,
* html div.span-19, * html div.span-20,
* html div.span-21, * html div.span-22,
* html div.span-23, * html div.span-24 {
  overflow-x:hidden;
}

Changelog

The last thing I do is update the changelog file to record the edits made, and change the version number in screen.css to 0.7.2 so that I know that this is my updated version.

I hope that helps someone.

Updates to version 0.8

I’ll blog later about things I’ve spotted need fixing in version 0.8.