Apple screws up iTunes zoom box

I am always finding that my iTunes window is too big for the laptop screen, since it usually gets resized on the big monitor. So the resize corner is off the bottom of the screen, and somehow I need to get it back.

Every other app I know lets you hit the zoom button (the green +) to get an (possibly) ideal size.

Not iTunes – you get a stupid little mini-browser if you do that. So maybe I can get the window to resize by moving the window (as in Safari)? Not a chance.

I finally had to read the Shortcut Keys in Help (if all else fails RTFM). It kindly and politely informs me that I should Option-click to get the normal behaviour.

FFS.

Flattr this!

Autocomplete in Safari doesn’t backspace right.

Type a few characters in the address or Google bar; realise you got the last two wrong so do two backspaces – you might have thought you got back to where you were, but you didn’t or maybe you did!

If it did an autocomplete, then the first backspace cancelled the autocomplete, and the second cancelled one character;
If it did not do an autocomplete, then you lost both characters (probably what you wanted).

This just can’t be right – I have to look at the screen to find out what my typing has done.

The number of times I type a search term and press go, only to look up and see that there is an extra character at the front really pisses me off.

Flattr this!

Trying to upload a photo to Facebook

So I have one tiny little photo I want to upload … 20 minutes later I am still looking at a “Select Photo” screen that is flashing away.

It told me that the “recommended” way was to install a plugin – fine, but it didn’t offer me any other ways, so I clicked “OK” instead of “Cancel” – seemed a reasonable choice. After allowing it through my security, I then try again.

So what is it doing now? Either it has failed, or it is trying to index every photo on my hard drives, I guess to be helpful and offer me the choice.

Is there an exit button? Of course not. I need to close the window and try again.

Flattr this!

“Fixing” things

Why would anyone fix a utility as fundamental as “touch”? It wasn’t “broken” so it didn’t need “fixing”.

What was in their minds when they changed the code?

I can just see some clever little oik, wet behind their Linux-like ears finding the “bug”, and being delighted they have found something to spray their piss on, retiring in the warm glow that all those copies of the software will go round the world smelling of them for the rest of time.

What am I on about?

The latest version of RedHat has broken my scripts. I used to be able to do

touch -d 20010000 foo

but now it gives me

touch: invalid date format `20010000′

yes, I know it wasn’t sensible, but it wasn’t “wrong”.

It is now, so because some tosser doesn’t understand the importance of backwards compatibility and legacy, I’m going to have to go round and check every bloody script and “correct” them.

What was the point?

Flattr this!

MacBook Pro neon light

My MacBook Pro has a neon light on the catch. It’s off when the machine is awake with the lid open, and on when the machine is awake with the lid closed (I think!). Some tosser in Apple obviously thought it was a good idea, and probably got a prize for it. But it goes against one of the simplest and perhaps fundamental engineering design principles. If you want to indicate the state of a machine to a user, you do not use something that has a temporal element.

This is why the traffic lights in the US are badly designed, while the UK ones are not. If you are approaching the lights in the US, and you see an amber light, you don’t know whether it is about to turn green or red; in the UK it will be about to turn red. Simple innit? (If it was red and amber it would be about to turn green.)

So if I glance at my little neon light, can I tell if the machine is asleep? No. I need to stand and stare at it for a while, and probably wait for it to go through a couple of pulsing cycles before I am sure (and I needed to do this because Apple screwed up the firmware so the machine didn’t always sleep).

And apart from that, why do I need a bright pulsing light in my hotel room? If I wanted to stay awake I wouldn’t go to bed.

Flattr this!

File types needing extensions.

I’m asked for a document to be Text, PDF or PS. So I fire up vi to make sure I’m not getting any extra formatting stuff in my text file and submit it. I get back a message saying the type is not permitted, as only: “plain text (.txt), Adobe (.pdf), or postscript (.ps)” are allowed. I gave you plain text, you dolt. In fact, I guess I could have given you a tiff image file , as long as it had a txt extension.

Flattr this!

People who can’t be bothered to put the proper URL in things like update details.

For example, Apple. I get a Software Update notification for Quicktime 7.3.1. And it says “For detailed information on this update, please visit this website: http://docs.info.apple.com/article.html?artnum=61798”. So I click on it, and it takes me to a general update page, with links to 81 (eighty-one) update bulletins, one of which is the one I want. Excuse me for living, but the reason I clicked was to find out about the Quicktime 7.3.1 update. No, I didn’t want to know about the “Keynote 2.0.2 update” from 2005 or “Xcode Tools 2.5”. I wanted to know about Quicktime 7.3.1 update. And my time is more important than yours, contrary to anything else you may have thought.

Flattr this!

Progamming languages that don’t do what you expect.

Try this:

<?php
$a1 = “0d2”;
$a2 = “0d3”;
$b1 = “0e2”;
$b2 = “0e3″;

if ($a1 == $a2) print ‘$a1 == $a2’.”n”;
if ($b1 == $b2) print ‘$b1 == $b2’.”n”;
// In fact
if (“0e2” == “0e3″) print ‘”0e2” == “0e3″‘.”n”;

// But
if ($a1 === $a2) print ‘$a1 === $a2’.”n”;
if ($b1 === $b2) print ‘$b1 === $b2’.”n”;
if (“0e2” === “0e3″) print ‘”0e2” === “0e3″‘.”n”;

// I can cope with this behaviour for ==, even though it is strange,
// as php.net says:
// “If you compare two numerical strings, they are compared as integers.”

// However, php.net says
// $a == $b Equal: TRUE if $a is equal to $b.
// $a === $b Identical: TRUE if $a is equal to $b,
// and they are of the same type.

// Demonstrably, whatever type php decides the first argument is,
// it should be the same as the second.
// So === should have the same behaviour as ==
// Agreed? 🙂
// The worry is that the temptation is to use ===,
// but I really think that strcmp is the only true way.
// There must be shedloads of programs out there
// which use == for strcmp on input,
// but would break if the input looked like a small double
// (in case you hadn’t worked out why yet!).
// I think I’ll change my name to “0e1″ 🙂

// And before you ask
if ($a1 != $a2) print ‘$a1 != $a2’.”n”;
if ($b1 != $b2) print ‘$b1 != $b2’.”n”;
if ($a1 !== $a2) print ‘$a1 !== $a2’.”n”;
if ($b1 !== $b2) print ‘$b1 !== $b2’.”n”;

// So at least it is consistent.
?>

Which gives:
$b1 == $b2
“0e2” == “0e3”
$a1 != $a2
$a1 !== $a2
$b1 !== $b2

Flattr this!