Archive for April, 2009
The Open Source Community and Microsoft do have something in common after all.
I was trying to figure out why firefox doesn’t sit as well on Mac OS as I’d expect — why it feels slightly alien on there (as does thunderbird), and then it occurred to me: firefox, thunderbird, et. al. are, in some ways, more akin to Windows than Mac OS.
I’ll explain (I think I’d better 🙂 ).
Mac OS is pretty complete out of the box. If you’d like to burn an ISO image onto CD, or browse that ISO image, or ssh to another host, or use VNC, or… then it’s all already there, well integrated and working from the start.
Windows isn’t like that — the basic OS lacks a lot of functionality. If you’re going to burn an ISO, or browse one then you’ll need something like Nero. If you’d like to ssh to another machine then you download putty, if you’re going to connect to another machine using VNC then you’ll need that, and so on.
What you end up with is a whole host of extra software, all pretty much working, but all pulling in slightly different directions and all clearly written by different companies with different ideas about the user interface, and differing levels of integration with the whole.
Firefox and friends are also a little like that. The basic functionality is in the application, but all the extra frills are plugins, written by many different people. Many of the plugins are a little quirky, and they all tend to pull in slightly different directions — sometimes interacting badly with each other. It works, but it’s not elegant.
Microsoft and the Open Source Community do this for very different reasons. Microsoft does it to spread their programming effort as thinly as possible (I guess they’d say as efficiently as possible), always concentrating on ‘value’, and never on quality. The Open Source Community do it out of necessity: not everyone can be hacking the central code all the time, it’s just not practical, and the plugin approach enables a huge number of people to work on additional functionality whilst keeping the project manageable.
The world would be a much poorer place without open source software, but there is a price to pay. The plugin approach that open source development engenders leads to some great software (I wouldn’t give up my Squeezeboxes for the world for example, and my squeezeserver is bristling with plugins), but those systems do sometimes feel like they’re all elbows and knees — rather awkward, and somewhat less than elegant.
Reverting to type.
Conscientious criminals pay heed to privacy laws.
There’s a warning printed just above the card slot on our local ATM:
Now I’m familiar with the use of CCTV for detection purposes, but for crime?
It seems the local mafia are taking the trouble to warn us they’re grabbing card information. How thoughtful!
Law abiding criminals. Whatever next — responsible bankers?
Want to use keyboard accelerators to drive dialogues etc. in Mac OS X? Here’s how.
Coming from the Windows to Mac OS, I missed being able to interact with dialog boxes etc. without having to use the mouse. There are times, especially with the MacBook, where clicking on an option is fiddly and error prone (in bed with a cup of tea for example 🙂 ) and it would be much better if I could use the keyboard…
Here’s an example: here I am quitting from Safari. As is often the case, the dialog has reminded me that I don’t actually want to quit as I have multiple tabs, so I want to cancel the operation. Pressing return will close Safari, but how do I select Cancel? (Yes, I know you can press esc to cancel a dialog, but bear with me — the following solution works for all dialog selections and menus, not just Cancel).
The answer is to select All controls in Full keyboard access in Settings->Keyboard & Mouse->Keyboard Shortcuts:
Or, much easier 🙂 , type ctrl+F7.
Now when that dialog pops up it looks different. Notice that Cancel is surrounded by a blue glow — that’s the dialog option that currently has keyboard focus, and pressing the space bar will select it.
Now you can navigate the dialog box using the keyboard: tab and shift-tab change the currently selected option, space selects that option, and return will always select the solid-blue default option.
So in this example, space will cancel the dialog and return will do the default action (close Safari in this case).
So you can now navigate dialog boxes on a MacBook, in bed, armed with a cup of tea — and I hear tell this even works with coffee, at a pinch 🙂