Digital UK Design Blog

I had an issue today when installing pytrainer. It wanted to install some extra python packages but it couldn’t.

The reason was that I had python2.5 v2.5.2-2ubuntu5 installed but the extra packages depended on an older version – 2.5.2-2ubuntu4.1.

I don’t know how I had ended up such a knot, but the ubuntu5 packages I had seemed like they had been obsoleted from hardy-proposed which is clearly one of my sources lists. Ho hum.

Downgrading through the GUI wasn’t intuitive, I tried to ‘force version’ but that seemed to have no effect.

The answer lies in the command line, and is explained by this forum post.

Aptitude lets you specify a version parameter over the command line, so I used sudo aptitude install python2.5=2.5.2-2ubuntu4.1 to install the older version. This then resolved what other packages needed downgrading, gave me a summary, and did the business.

I run Windows Vista on dual boot. My inclination is to get rid of it altogether, but I paid for a license thanks to the Microsoft Tax when I bought the machine and sometimes vendors (Garmin for example) only support Windows.

I gave Windows Vista 12GB with virtually no applications and it’s used it all up. It refuses to install Vista SP1 because there isn’t enough room.

Rubbish.

Enter GParted – the Gnome Partition Editor. It is included with the Ubuntu install CD which doubles as a live CD (just select the ‘try Ubuntu without changing my system’ option when you boot the CD). Boot from the CD, run GParted, drag your partitions around and let it do its thing. A few hours of disk crunching later you have successfully resized your ext3 and NTFS partitions.

Impressive stuff this free and open source software.

Incidentally, I should say that I’m a bit grumpy that Vista needs more than 12GB just to exist and with virtually no software installed. That really sucks.

I need to do a bit more flag waving for Ubuntu Linux. I have said it before, and I will say it again:

Ditch Microsoft Windows.

Download Ubuntu for free, don’t pay the Microsoft tax.

Anyway, my most recent wonderfulism was when I was sharing printers. A few years ago I was using Fedora Linux on a machine upstairs. Vicky was using Windows XP downstairs and wanted to use the printer that was connected upstairs.

Frankly this was always a pain in the arse.

It didn’t “Just Work” â„¢. Windows hated the printer. I had to edit config files by hand on the Linux machine.

A few weeks ago I re-installed the operating system, overwriting it with Ubuntu because I’m desperately trying to sell my old machine (shameless plug!).

I was dreading setting the printer sharing backup – but I needn’t have worried. About a dozen clicks later, on both Linux and Windows and lo’ it was all working.

If you want to share your printer with Windows, do this:

https://help.ubuntu.com/community/NetworkPrintingFromWinXP

I should say by the way that I’m not sure whether this is because Ubuntu is ace, or just because Linux has moved on somewhat in recent years. I suspect the latter, it would certainly be unwise to draw conclusions about Fedora based on this as it would not be a fair test!

I saw an interesting article today pointing out a couple of overlooked vulnerabilities with data truncation in MySQL. It’s more of a bug in due to how you handle the event in application than in the database, but it’s a vulnerability none the less.

MySQL won’t be the only affected RDBMS (I know, MySQL really is an RDBMS … just) – off the top of my head I guess that Microsoft SQL Server would have the same behaviour with ANSI_PADDING OFF, and with some versions of ADO I recall that these warnings don’t appear in say your ASP application.

It’s also a good reminder that out of the box the following query (note the trailing whitespace) will return ’1′ – which may be counter-intuitive if you don’t remember.

SELECT CASE WHEN 'B'
               = 'B ' THEN 1 ELSE 0 END;

I feel a bit dim for not having this drilled into my tiny mind already. Thankfully I validate data against column lengths by default… I prefer not to trim data on the way in as mangling user input in subtle ways like that can lead to irritating behaviour from the user’s point of view, and perhaps other bugs.

Rules concerning the use of Apostrophes in written EnglishLet me start with a confession – I’m very bad at English! I got a double-D at school and still struggle to understand the meaning of the words VERB, NOUN and ADJECTIVE. Squid would be first in line to correct me on my spelling mistakes or my bad grammar. So you could possibly forgive me for the misuse of apostrophes in sentences.

I work in the web industry, I design on a dynamic canvas which is never set in stone, so once the quality assurance people have gone through one of my websites and very eagerly pointed out my obvious mistakes they can be corrected in a matter of moments. Professionals that work in print, a journalist writing for a newspaper or a designer piecing together their latest snazzy brochure, face the stomach stomping realisation that any mistakes they miss, which subsequently get printed can’t be so easily correctly.

Apostrophes, and the use of, always spark a debate in my studio, so not knowing the in’s and out’s of their proper use I decided to Google for it. Below is a nice reference to help all those who face the confusing matter of how properly to use the dreaded apostrophe.

All can be explained

1. They are used to denote a missing letter or letters, for example:

I can’t instead of I cannot
I don’t instead of I do not
it’s instead of it is

2. They are used to denote possession, for example:

the dog’s bone
the company’s logo
Jones’s bakery (but Joneses’ bakery if owned by more than one Jones)

… but please note that the possessive form of it does not take an apostrophe any more than ours, yours or hers do

the bone is in its mouth

… however, if there are two or more dogs, companies or Joneses in our example, the apostrophe comes after the ‘s’:
the dogs’ bones
the companies’ logos
Joneses’ bakeries

3. Apostrophes are NEVER ever used to denote plurals! Common examples of such abuse (all seen in real life!) are:

Banana’s for sale which of course should read Bananas for sale
Menu’s printed to order which should read Menus printed to order
MOT’s at this garage which should read MOTs at this garage
1000′s of bargains here! which should read 1000s of bargains here!
New CD’s just in! which should read New CDs just in!
Buy your Xmas tree’s here! which should read Buy your Xmas trees here!

Remember, it's more than just a black mark

May I take this opportunity to thank The Apostrophe Protection Society for protecting the proper use of the apostrophe in the English language. Full credit goes to them and a further, more detailed explanation can be found here.

Everyday I have the great pleasure of working with a wide variety of clients from all area of commerce, and without doubt this same issue arises time and time again that sparks the same debate – I’m talking about resolution! More specifically, I’m referring to what resolution a website should be designed for. The standard today is 1024×768, where in previous years 800×600 would have been the accepted resolution.

Another way of describing this is in size of monitors. In previous years a 15″ monitor was a standard size to buy but nowadays a 17″ monitor would be seen as small, but still acceptable. Now basically speaking the bigger the monitor you have the bigger the resolution you need!

The Debate

Some of our clients want their website designed at a resolution of 800×600, which would typically fit a 15″ screen. Now on a 17″ screen you get wasted space either side of the website, on a 19″ screen the website would only fill half the wide and on bigger screens, well you get my point.

Their argument is that THEY have 15″ screens so anything wider would require them to scroll horizontally, understandably a big no no in web design.

The user stats!

In web design you should design a website that fits most comfortably in the most browsers as possible. To do this we reference user stats to determin the most common resolutions, for this I reference either W3schools.com or Thecounter.com.

W3schools.com stats

Thecounter.com stats

Analyse the results

In 2000 around half of internet users used a 800×600 compared to a quarter at 1024×768.
In 2008 around 7% of users used a 800×600 compared to 75%+ on 1024×768 or more.

Now you see my point! The majority of computer users today have atleast a 1024×768 resolution. Even the BBC has upgraded it’s website to be optimised for 1024×768, which to alot of professionals sets the president and standard on designing for the web.

1024×768 is now the minimum standard!

In my opinion of course, but after nearerly 10 years of designing websites, I’m in a good position to cast my opinion.

Sparking another debate

Does this ring a bell? I hear this more and more…

I want the website to fit vertically in my browser, with no vertical scroll… …I’m using a widescreen 15″ laptop with a resolution of 852×480.

The simple answer is…

No!

This ‘Short History of Graphic Design’ describes individual movements, establishments, events and people who, when all put together, make up the history of graphic design.

A short history of graphic design - Modernism-Bauhaus
Included in this article is:

  1. Industrial Revolution
  2. Art & Crafts-William Morris
  3. Art Nouveau
  4. Expressionism
  5. Modernism-Futurism
  6. Modernism-Bauhaus
  7. Art Deco
  8. Dadaism
  9. Realism
  10. Late Modernism-60′s Psychedelia
  11. Neville Brody

Read the article

Experiments with light and shade.

I found out two things today.

  1. The XSD for this XML:
    <someElement anAttribute="aValue">someValue</someElement>

    goes a little something like this:

    <xs:element name="someElement" type="some-element-def"
                         minOccurs="1" maxOccurs="1" />
    ...
    <xs:complexType name="some-element-def">
    <xs:simpleContent>
    <xs:extension base="xs:integer">
    <xs:attribute name="someAttribute" type="xs:boolean"
                             use="optional" />
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
  2. To get bzr 1.5 running on Ubuntu Hardy Heron add a couple of entries to /etc/apt/sources.list and re-run synaptic.
    deb-src http://ppa.launchpad.net/bzr/ubuntu hardy main
    deb http://ppa.launchpad.net/bzr/ubuntu hardy main
  3. To compile PHP4 with MySQL support other than the archaic bundled 3.x use --with-mysql=/usr

This is a useful guide for beginners to Bash shell scripting: All about Linux: 10 Seconds Guide to Bash Shell Scripting.

Page 4 of 512345

©2006 - 2009 The Floating Frog