2008/02/21

Mac security

Another day, another computer security rant and rebuttal. Here’s a recent piece over at MacUser by Dan Moren.

Now, don’t let it be said that I disagree with the article in general. This is gold:

Okay, if an instant message window pops up on your computer, with a screenname you’ve never seen, asks for your Social Security Number and you give it to them, then frankly you didn’t deserve that identity in the first place.

But I feel Dan goes a little overboard here in his refutal of whatever some jackass is saying:

Mac users need security software, too. Oh, I know: Mac lovers will respond to this statement by puffing up their chests, raising their chins and sniffing, “Ha, my Mac always has been and always will be virus free. I don’t need no stinking security software.”

Who are these people? Where does one find them? Maybe it’s those same people who go to oxygen bars and drink fancy bottled waters and have weekend quail-shooting parties before jetting off to some balmy Caribbean island where they play shuffleboard and laugh about how they don’t need security software.

Okay, sure. The article is good. Make sure to teach the kids not to let in Trojan horsies. And that paragraph above made my giggle a bit. But you know freaking what? My Mac always has been and always will be virus free. I don’t need no stinking security software.

2008/02/20

Hilarity

I don’t do short posts here much. Perhaps I should. I can’t remember whose link I first followed to “Guy in the Hat”, but I’m glad I did:

It’s almost like watching one pseudo-journalist giving another fellatio via email.

It’s funny coz it’s true. But it’s funnier because Gruber deserves it. Well, I think so, anyway.

Oh wait, does that mean I now have to swallow?

2008/02/19

Free dictionaries and "Dict OS X"

It’s really annoying that there are hardly any free and good multilingual dictionaries. Except that there are loads of online ones. I don’t like online services much, mostly due to latency. But also because native clients have the potential to be simply better.

Speaking of which, all the dictionary programs I’ve seen are really ugly. The content available for these programs generally don’t take advantage of the fact that they have an effectively unlimited amount of space to show you as much information as you might happen to want.

Imagine a translation dictionary that gave you conjugations and declensions of every word you asked of it and showed it in use in multiple contexts. (If you wanted that much information, of course.) That’d be, like, really useful for learning a language.

Of course, it’d be harder than transcribing a print dictionary into a searchable computer program. And I’m guessing there’s not that much money to be made from dictionaries at the best of times. But it would make a good free project/labour of love for language geeks.

Well, we gotta live with what we got. And I found it quite a pain to get dictionaries locally installed that can be accessed through a native application in Mac OS X.

Not knowing where to start, OmniDictionary seems pretty ideal to begin with. By all accounts, it’s “easy” to set it up to grab local dictionary content. But Jens Ropers’ DICTataro, recommended by Omni, is down at time of writing, so no luck there. Trying to manually set up a local dictionary server was a dismal failure. The links at dict.org are all rather old (i.e., nothing is actively maintained) and the Java programs listed there simply bailed when I tried to run them.

I finally had some luck with Dict OS X. The 0.1 version number and 2004 release date notwithstanding, at least it works. It comes by default with an English dictionary, and English to Czech and vice versa translation dictionaries. (Instructions for the program itself are all in Czech but luckily self-evident.)

More dictionaries can be downloaded from freedict.org. After downloading, say, the English to French files, there are a few steps to get the dictionary into Dict OS X:

  • Uncompress the eng-fra.dict.dz file. This is most easily done by renaming it to eng-fra.dict.gz and opening the file; Mac OS X’s extraction tool does the job.
  • Delete the compressed file and rename the containing folder to something like “English to French.dictosx” to turn it into a bundle (the name you chose is what appears in Dict OS X’s interface). It should contain the .dict file and a .index file of the same name.
  • Finally, move the newly created bundle to ~/Library/Application Support/Dict OS X/

Phew. And once you’ve gone through the tedium of doing all this, you’ll sadly discover that the dictionary is woefully inadequate:

dictosx.png

That’s right. There’s no gender information for the nouns in this dictionary. It’s better than nothing, at a pinch. But I wonder what it would take to get a free dictionary like this off the ground. Because we certainly need something better.

2008/02/08

‘Yahoo!’: all about the name

Many thoughts around the place on Yahoo!’s probably acquisition by Microsoft for forty billion dollars. I like Gruber’s take.

I think the way to analyse this deal is by looking at what Microsoft gets out of buying Yahoo. Does Yahoo actually provide any products that Microsoft doesn’t? By and large, no: Microsoft has been bleeding money trying to replicate Yahoo’s online presence. Search/portal/community — there’s nothing that Yahoo has in material terms, give or take, that Microsoft doesn’t already (try to) do.

Except for the whole customers thing.

This is more like Google buying YouTube: after trying and failing to complete with the largely more successful product, the easy way out is to buy the mindshare. And you can’t keep the mindshare without retaining the original product.

So Microsoft can ditch its own attempts at creating a Yahoo knock-off and simply reap the rewards of owning the Yahoo name. The seemingly obvious thing to do with the acquisition is to keep the Yahoo stuff that makes money (search, email, Flickr, …), close down the competing areas that Microsoft does better (I guess that’d be the Zimbra thing that people keep mentioning), and watch the cash roll in. Or something like that.

As a non-Yahoo and non-Microsoft devotee, it doesn’t make any difference to me. (Oh, I’m a casual user of del.icio.us, but I had no idea they were owned by Yahoo and I can give it up without losing any sleep.) I hope for the sake of it’s fans that some semblance of Yahoo is left after the merger. Surely things couldn’t turn out as badly as everyone is saying?

2008/02/06

To-Do management: “Things”

The bane of productivity is multi-tasking. Context switching in your brain slows down pretty much everything you think about and can make it impossible to dig deep into the hard problems. That’s why Richard Stallman doesn’t use a web browser and Don Knuth doesn’t even use email.

But multi-tasking is pretty damn addictive. It’s not something that most people have the will-power to give up — nor would they want to. Outsourcing your memory to a computer is an easy step to free up some mental capacity for problem solving.

Now, I’ve never been much of a ‘diary’ person to keep track of things I have to do. Generally my brain’s been good enough for most things. The extent of the project management in my various endeavours has been a flat list of flagged emails in Mail.app. One obvious problem with this is that tasks for which I don’t receive email don’t receive as much attention. And the non-hierachical system I set up makes it easy to lose the one important one you’re looking for in a big list. (For similar reasons, Mail and iCal’s revamped To-Do list in Leopard is not really the answer to my problems.)

This is one of the reasons I’ve never had a very good system for organising my long-term goals. Especially for my PhD, to be honest. However, with my new, ubiquitous, MacBook, I’ve the liberty of exploring software to address this personal deficiency of mine. Judging by the plethora of software that’s emerging in this space, I’m not the only one.

Now, ages ago I once used OmniOutliner to try and keep something of a project management ‘outline’, but it’d didn’t stick so well in my mind; it’s pretty essential that the application that you put all your forward-thinking thoughts into is easy and enjoyable to use. If there’s any mental burden just to get started, it will never survive as a long term commitment. Bearing this in mind, let’s look at the first app that I’m trying out as a candidate to fill that particular gap in my brain: Cultured Code’s “Things”.

First thing’s first: I’m not a fan of the name. It’s about the least Google-able name of any software ever. People are already resorting to calling it ‘Things.app’ just to be able to differentiate it from, well, normal sorts of things. But it’s certainly a name that strikes a chord amongst Mac users because it sounds like a name that Apple itself would use.

They claim this is an alpha-release preview; despite this, the interface is quite polished and the application seems very stable. Having said that, I do hope that some refinement to the interface is made to simplify it some more.

But let’s start off with the good things. The killer feature of this program is being able to set repeating schedules of To-Do items. I’ve been wanting this for as long as I can remember. “Mop the floor” repeat every second Sunday. Chores are the very first thing that I forget/neglect to do when I’m having a Sunday at home. Note, however, that this feature doesn’t exist yet. But I’m predicting that it will be awesome based on their recent comments on the feature.

Second up, the workflow of the program has been exceptionally well design; adding and deleting To-Do items and projects is as easy, often, as hitting the space bar. There’s also a system-wide heads-up display from which you can add a To-Do whenever. And did I mention that the program is very attractive? Fluid to use and handsome looks makes an app that you like to spend time, or ‘nest’, in. So far so good.

Now the application gets a little complex to describe in words. To-Do items themselves can be arranged in terms of their focus: today, next, later, and postponed. This is a good breakdown, I feel. Granular enough to segregate the items that don’t belong together, but coarse enough that you don’t lose items in categories that are too fine.

This is the first layer of metadata that can be assigned to To-Do items. The second layer of metadata that “Things” gives are: projects and areas. A project is something to be completed that requires many To-Do items. An area (of expertise) is the broad categories that your projects fall into. I might be using “Things” to track my both PhD and Typesetting work, which each have various projects attached to them.

Here’s the kicker: each project can only belong to a single area of expertise, and yet in the organisation of the application, projects and areas are treated roughly as orthogonal. Take a look:

things-dupl.png

In the sidebar there’s a list of projects in an ungrouped list. In the main window, the same information is presented but this time divided into categories.

In my opinion, this duplication of information reveals an underlying flaw in the interface of the program. Projects should exist as sub-categories of Areas, which would help keep the projects logically separate in the sidebar and eliminate the redundancy — while simplifying the interface.

In brief, here is the current design in full ASCII glory:

ORGANISE
  ▾Projects
    WSPR 
    Thesis
    Experiments
    LM fonts
  ▾Areas
    Web
    Chores
    PhD
    Typesetting

And here is my proposed design:

AREAS
  ▾Web
    WSPR
  •Chores
  ▾PhD
    Thesis
    Experiments
  ▾Typesetting
    LM fonts

This efficiency of the list is only slightly improved, but the duplication of information in the main window is no longer necessary. Fewer equivalent ways to view data equals less confusion.

One of the reasons this interface should be simplified is because there’s a third layer of metadata that can be applied to all of these To-Do items: Tags. These provide an arbitrarily extensible way to group To-Do items into smaller and smaller sub-groups, if you so desire.

Tags allows you to filter items into arbitrarily granular (and non-exclusive) categories. A GTD-type approach is suggested to use tags for contexts like Home/Work/Phone/Whatever. (I’m not a GTD kind of guy, by the way.) Alternatively, it might be impractical to list every single Ruby script or LaTeX package you maintain as an individual project; tags allow you to do this without cluttering the interface of the main window.

I can’t do the tags feature justice with words, but suffice it to say that tags in “Things” are Done Right. And they will stay completely out of your way if you’d prefer to keep things simple. This is extremely important in hooking people in with a simple-seeming application that hides its power in its flexibility.

My only other complaint after a short time of using “Things” is the button bar at the bottom of the main window. I loathe buttons I can’t get rid of, even more if they’ve got labels that I can’t even hide. (For example, now that I’ve assigned Control+Space to quick-add To-Do items I guarantee I’ll never click that button ever again.) I think it’s very important to have scalable interfaces, where in this case the scalable refers to being able to hide away the complexity of unnecessary features after you’ve learned the shortcuts or decided to mentally pass on that particularly feature of the application.

To wrap up this mini-review, I’m optimistic about things. No, sorry. I’m optimistic about “Things”. Time will tell if the application is sticky enough for me to nest in it over time and create the extension of my brain that is really the goal of this sort of program. I think it will be. I’m hoping that with feedback from the community before the ‘v1.0’ release, things will only get better. Oh, sorry again. “Things” will only get better.

2008/01/30

Internet Explorer 8

With all the brou-ha-ha around Internet Explorer 8, I thought I’d add a couple of words to the debate.

Read James Bennet’s excellent summary (thanks for the link, Daring Fireball) for all the gory details. In short, IE8 makes a bit of a mess all over the web because it requires a metadata flag to tell it to render documents according to proper web standards.

That is, documents that have been written for IE6 and below that use the wrong box model will still look okay, and new sites that are developed correctly according to the standards require a special flag to render equivalently in Safari, Firefox and IE8. But without the flag, Safari and Firefox will still render them fine, only IE8 will do things wrong.

So, who wants a special “Microsoft fucked up” flag on every single page developed from now to eternity? Well, things look like that won’t be the case if IE8 renders HTML5 according to the standards no matter what. In which case this is all a storm in a teacup and the problem will disappear in the next couple of years as HTML5 becomes dominant. (Poor old XHTML.)

But if that’s not the case (that backwards compatibility precludes this standards-HTML5 mode) then Microsoft should just make a clean break and create a new web browser from scratch. I’m serious! Call it “MS Browser” or whatever and use all the code from IE8 that’s actual correct as far as standards are concerned. Then people that require IE can continue using that, which will be frozen forever. But home users can start afresh with a browser that can and will continue to support standards and doesn’t have to deal with backwards incompatibility kludges.

That’s a much cleaner solution, in my eyes, and moves Microsoft away from the perhaps tainted “IE” name. But it’ll never happen. Because no-one listens to me:)

2008/01/28

New MacBook New Life

Well, I finally did it. After ruminating for possibly years on getting an iMac and then realising that I needed a primary machine in two locations, I’ve now sprung for a MacBook. Not, in the end, a MacBook Air; more on that later.

The buying periods for seasoned Mac fans deserves some words. While most people will just up and buy a new computer whenever they need one, following a computer company as obsessively as some of us follow Apple (well, we need some way to fill the void) attunes one to the ebbs and flows of product releases.

For many months, I was going to buy “the first iMac released after Leopard”; not only do I get the new operating system gratis, as it were, I’d also be buying the latest and greatest — obviously to maximise the performance/cost ratio as well as the advantages gained from subsequent generations of hardware. (While some will advise never to buy first-generation products, I’m not so leery about exercising warranty options; if you’re the unlucky type, then the hardware will break on you no matter what. And vice versa.)

But as time went by I realised that I was slowly starting to detest my working environment at uni. Windows PC and all that. The new McAfee anti-virus that literally slowed everything down by minutes to load was the last straw. And I thought how nice it would be to work on my PhD on a computer I actually enjoyed using. Loving your tools, and all that. With the Core 2 Duo, any Mac I bought would improve the speed of multitasking and at at worst remain about the same for simulation time in numerical software like Mathematica and Matlab. Buying a notebook would allow me to work on my PhD — which should be my primary purpose right about now — in comfort and even on weekends.

With a desktop at home, the chance of me doing real work on it would be essentially zero. With a notebook for my uni work, I could bring it home out of hours. Now, I’m not necessarily saying that I’m going to be enjoying doing some number crunching on Saturday mornings; the sort of time I shall save will be the workflow improvements that I’d otherwise be doing during the weekday. It’s not good time management to spend a few days making sure that the figures and diagrams I’m producing match the fonts of my thesis. But I can’t ignore those sorts of details, so I’d have the spend the time somewhere.

In the end, a MacBook just made sense. So, then the waiting game became “wait for Leopard and then see how we go”. By the time Leopard was released I was waiting for my tax return and the MacBook was due for an update; but by the time the latest of the MacBooks was released, there were rumours of Apple’s then-secret MacBook Air. After waiting so long on the MacBook, another couple of months wasn’t going to make much difference. And I had deadlines that I didn’t want to push back for accommodating a radically new computer in my life.

Finally (and I do mean finally — the wait had been interminable by this stage) Apple released their MacBook Air and I almost bought one within hours of watching the announcement. What’s not to like? With 60% of the weight of a standard MacBook, it falls into the category of light enough not to worry about. And I love the idea of soldered RAM. Seriously. I just added 4GB of RAM to my MacBook, the maximum possible, for AU$160; that’s less that 10% of the price of the machine. And that’s a huge amount of RAM. The days of swappable RAM in consumer machines are numbered. The upside is cleaner design and cheaper computers.

But the MacBook Air didn’t quite cut it for me as a main machine right now. On top of the $400 excess for the design, I’d likely need an external DVD drive which made the thing even more expensive, and the compromises for that price point just didn’t add up for me right now (probably with the CPU being the biggest factor). But I’m gunning for the MacBook Air to become the MacBook as soon as possible and it’s definitely my “favourite” machine in Apple’s lineup. I hope in the future they release an even smaller machine that uses a widescreen display the width of the old 12 inch PowerBook. While I don’t mind the size of the 13 inch MacBooks, I am more taken by the more diminutive PowerBooks of yore. The slightly smaller screen totally justifies the rather dramatic reduction in size of the notebook, in my opinion. I’d like to think that the reason the MacBook Air isn’t that size is that Apple’s engineers simply couldn’t shrink things that much. That’s a rather self-serving opinion, however.


(By the way, guess what? Even my Dad knew about the MacBook Air shortly after its announcement. Now that’s something for Apple marketing, I’d say.)


So here I am with a fancy new computer with all my music, my typesetting, my code, my data. I’ve got a new-found respect for software like OmniWeb that just didn’t cut it any more on older hardware. iCal is now useable and I can organise my life in it. Mail.app has a convenient ToDo list that might get me to finish all of my unfinished projects. I’ve got large displays at home and at work so Mac OS X has room to breathe; something it totally deserves.

There’s a feeling of association that you have with a computer that fits your needs and responds to your commands that really shouldn’t be lacking from any computing experience. When web apps start being faster than desktop apps, you know there’s a problem. When you sigh when sitting down in front of Windows every day to have to deal with all of its idiosyncrasies, that’s not a positive environment for work.

It sounds silly, but when I sit down in front of my new MacBook, I start to feel at one with this extension of my brain that is before me. There’s a long way to go in getting computing just right, but I feel that we’re starting to home in on what that is.

‘Children of Húrin’ by Tolkien (2007)

I imagine that Peter Jackson’s epic telling re-stimulated interest in J.R.R. Tolkien’s The Lord of the Rings. I’d be interested to see the numbers. What I think many people don’t realise is that the story depicted in there is a small part of the tale imagined by Tolkien over his long years.

The backstory of ages past forms a greater story than The Lord of the Rings itself, albeit told in less detail. Tolkien spent his entire life drafting fragments of stories and poems of this history, much of which has been posthumously published by his third son, Christopher Tolkien. The most recent, and most ambitious, of these is The Children of Húrin.

Small reflections of this greater tale can be seen in brief moments in The Lord of the Rings, such as:

For of Beren and Lúthien was born Dior Thingol’s heir; and of him Ewing the White whom Eärendil wedded, he that sailed his ship out of the mists of the world into the seas of heaven with the Silmaril on his brow. And of Eärendil came the Kings of Númenor, that is Westernesse.

The story of Beren and Lúthien is referred to in the Lord of the Rings due to the parallels between the relationship of Aragorn and Arwen. The Children of Húrin takes place in a similar time and covers a separate branch of the family.

Unlike previous works such as The Silmarilion and Unfinished Tales, which are a collection of short works that read more like history books, The Children of Húrin is a complete narrative seamlessly composed from a vast array of reference material. The result is a story that is dark and sombre where the Lord of the Rings is hopeful and sometimes even light-hearted.

For those who have read The Lord of the Rings and would like to continue reading works in the same vein, Children of Húrin can be recommended without reservation. It’s a great loss that Tolkien could not bring more of his works to completion, as the stories that survive are tantalising glimpses into the great imagination that he possessed and the entire worlds that existed in his head. We can but be thankful that his son has been able to construct such a collection of works out of the material left behind.

2008/01/23

Can't see past the pinstripes

The evolution of pinstripes in Mac OS X has been quite a ride. Remember when things looked like this? (Extracted from a screenshot at GUIdeBook.)

pinstripes.png

Some people thought this looked a little bit over the top. In hindsight, yes, that is a bit visually noisy. As time went by, Apple continued to tone down the pinstripes until they were almost entirely gone in Mac OS X 10.4, remaining only very faintly in the menu bar and in the title bar of background windows.

I would much have preferred them over the years to keep the pinstripes and keep the brushed metal away, but there you go. The brushed metal never bothered me too much aside from the occasional niggle.

With Mac OS X 10.5, the pinstripes in the menu bar have been replaced with transparency, and haven’t we had fun complaining about that, too? For what it’s worth, I’m also not a transparent menu bar–hater. At least they didn’t make it a brushed metal menu bar at any stage.

But wait! If you look hard there are indeed pinstripes in Leopard. And they’re unlike any pinstripes you’ve ever seen — well, except the ones you seen in real life:

vpinstripes.png

Squint, and you’ll see ‘em. Here, this might help; they’re pretty subtle:

vpins-zoom.png

Vertical slimming lines in an otherwise unadorned window. And they’re lighter than the window. Quite unexpected. I’ve only seen them here in iCal, too. Do I like them? Well, I guess I’d rather not have them there. Noticing them did prompt this entire post, after all. But were they to be replaced with yet more gradient fills, I’d be more upset, I think. Too many gradients just kills me.

So there you have it. An insignificant graphical frill that will probably be never again seen in any Apple product, but one with enough back-story to make it worth mentioning. Perhaps.

Period Space Space

Typographically speaking, typing two spaces after a period ending a sentence is the wrong thing to do.

Extra space after a sentence was popular around the 19th Century, but these days it is no longer in fashion. By default LaTeX still adds the extra space, and you can turn it off with \frenchspacing. Don’t forget TeX’s typesetting was inspired by early 20th Century textbooks and you can understand why the extra space is the default.

But let’s get this clear: this extra space was used to help justify the lines of type without overly increasing the space between words inside the sentences themselves. That is to say: the extra space was not exactly two spaces wide. For some sentences it was more, sometimes less. (In some old books the extra space can be grotesquely large to my eyes.)

When typewriters came along, they needed all of the readability improvements they could get. Using a double space after the period works well to separate sentences that would otherwise run into each other visually. But proportional text doesn’t have the same problems.

Even if you wanted to add extra space after your sentences, it should be the job of the typesetting program to do this for you. Just like you shouldn’t hit Return twice in Word to separate paragraphs (if you know what you’re doing), you shouldn’t hit Space twice to separate sentences.

The only acceptable time I can concede that the double space is appropriate is for markup reasons. LaTeX does not support this, but a typesetting program that only added extra space in conjunction with the double space would be a little more elegant in cases where a period doesn’t end the sentence (e.g., after an abbreviation). I’m not a big fan of LaTeX’s syntax in this instance: cf.\@ previous, where the \@ suppresses the extra space that would normally be inserted. Luckily TeX is clever enough to assume that a period following an uppercase letter will generally not be ending a sentence, and suppresses the extra space automatically.

Phew.

Let’s just make life easy for ourselves and use \frenchspacing.

2008/01/22

Combining Quick Look & texbin

Mac OS X 10.5 has a handy technology called “Quick Look” that allows you to preview documents in a floating window without actually opening them up in a dedicated program. Ideal when you want to briefly check on the contents of something while you’re in the middle of another task.

Modern TeX distributions come with a convenient program texdoc for quickly finding documentation for LaTeX packages and so on. It’s nice to use Quick Look as the viewer for texdoc–found files, as I often open up package documenation just to check the syntax or spelling of some obscure command. Here’s a shell script to do this:

#!/bin/sh
qlmanage -p `texdoc -l $1 | grep -e '.*' -m 1` &> /dev/null &

Save it somewhere in your path in a file called, say, teq and you’ll be able to write teq pdfpages to called up the pdfpages documentation in a floating window. Nice.

2008/01/16

With money to spend: MacBook ±Air?

A year ago I wanted to buy an iMac. Long story short: I changed my mind. Primarily because I became frustrated with using a Windows computer at uni and wanted a notebook to replace both my home and work machines. Towards that end, I’ve got big (enough) displays in both locations that I’m okay with the ergonomics situation. Disk space is also fine as long as my music is kept on an external hard drive.

Now the MacBook has been recently updated, and today brings the announcement of Apple’s new ‘MacBook Air’. This marks the beginning of the end for the current form-factor MacBook; it’s only a matter of time before it’s replaced by its svelte brother. So it’s time to buy; my 867MHz PowerBook is so flaky these days to be largely unusable for anything serious. I don’t want a MacBook Pro because (a) they’re expensive, and (b) they’re large; if I’m lugging the thing on my half hour walk to and from uni every day, the smaller the better. So the MacBook Air looks like a good idea from that respect. And it’s small. I like small! (To throw in an empirical point of argument.)

The only problem is the performance/price trade-off. For approximately AU$400 less, I can buy a MacBook. And the processor will be about half as fast again over the ’Air, all else being about equal. But even my uni computer is only a 2.4GHz Pentium 4. The two cores and greater efficiency of the Core 2 Duo means I won’t be down-trading much at all on the performance I need to run Matlab and Mathematica.

So I’m leaning greatly towards the MacBook Air. I’ll give it a day of deliberation before I make my decision.

P.S. Why is it ‘MacBook Air’ but ‘iPod touch’? (Note the capitalisation of the qualifier.)

2008/01/01

2008

Here lies a new day, a new week, a new year. I don’t know what’s going to happen next, although I’ve got some plans. By the end of the year I could be in a different country. I will be called “Doctor”. I will hold my head high, and my future will be trodden with a steady step. I will help others around me and I will not judge. Friendships will be strengthened and new friendships made. My time will be well spent and I will not regret the idle moments. Happy 2008!

2007/12/31

‘The Beginner's Guide to Winning the Nobel Prize’ by Peter Doherty

To take a break from some rather involving fiction novels, I picked up ‘The Beginner’s Guide to Winning the Nobel Prize’ where it had been laying dormant for a year or so on my bookshelf. Not exactly the kind of book that I’d buy for myself, but no an unwelcome present, either.

Peter Doherty won a Nobel Prize for some work in immunology, and this book is a pastiche including his recollections of the prize, a summary of his work itself, general thoughts about science in the future, the conflict between religion and science, and some general tips on how to win a Nobel Prize yourself. I’ve probably missed some in there. The book is interesting and thoughtful, but not too insightful.

On of his comments that resonated with me was in the conclusion of his section of religion vs. science:

What greater betrayal can there be of God’s good grace, or the continuity of our species and all life, than to embrace polarised attitudes of mind and practices that compromise the lives and opportunities of the generations that are to come?

It’s a statement that I have a hard time believing that anyone, religious or otherwise, could disagree with, and it’s a tidy summation of a morality for everyone.

‘Shantaram’ by Gregory David Roberts

I haven’t read such a page-turner as Shantaram in a long time. I read the whole thing in about 2 or 3 weeks (including a day out of good reading time for Blink). Considering it’s 900-odd pages long, that’s pretty good for me; admittedly, it’s been a slow end to the year.

Shantaram is a fictional story heavily inspired by a hugely pivotal part of the author’s life. To summarise the gist of the story, Gregory David Roberts escaped from a Melbourne jail while serving a twenty year sentence and ended up India, where, alone and unknown, his past life was slowly stripped from him and he began a journey towards another life. There is a sometimes disconcerting contrast between the voice of the author and the actions of the character of the book. It can be a bit of a shock to read about gouging people’s eyes out after the author’s personal reflections on love and loneliness.

The fictionalisation of the story is part of what makes this book such an interesting read, but it’s the personal side that brings home the more philosophical moments. In broad brush strokes, this is obviously a novel that paints the picture of Roberts’ life at the time. His true story is amazing, and the life-changing effects on him are unmistakable (and indeed, emphasised in the book). Having worked with with Bombay mafia, however, he’s obviously writing fiction for the general detail of the story. Suspension of disbelief here gives the novel its immediate appeal, I think. Obviously the story itself is integral to the book. Without the personal side to buoy the narrative, however, the plot would probably be a little too neat and tidy, and yet in the end of it all the plot ends abruptly and finishes nowhere.

This is a book that, in softcover, has pages thin enough to make casual page turning harder than usual. From the author’s point of view, splitting the book in two probably makes no sense at all, because it’s the spread of experience that he’s working from to write the story and finishing it earlier would leave his emotional development unfinished.

Now, I can’t say that Roberts’ writing is perfect; I found he was occasionally over-enthusiastically profound; for example,

The truth is that, no matter what kind of game you find yourself in, no matter how good or bad the luck, you can change your life completely with a single thought or a single act of love.

But I forgive him due to his sincerity. After his experiences he’s allowed the exuberance.

2007/12/19

‘Blink’ by Malcolm Gladwell

I bought a book today that’s a gift for my cousin. But I read it first because, well, I had to ensure that the Christmas present was a good one, right? This is the second time that I’ve read a book cover-to-cover in a single day and there really is something to be said for it. Edgar Allen Poe discussed the point once when talking about his short stories: everything that needs to be said is able to be digested as a whole. (Obviously he used more words that I.)

Don’t get me wrong; for many novels it’s an absurd idea to sit down and read until you’re done. But, for me, it worked for Perfume and today it worked for Malcolm Gladwell’s nonfiction Blink.

Malcolm Gladwell is a writer, and a journalist in the best sense of the word. His work I’ve read in The New Yorker has been well-researched and entertaining without exception, although I’ve only read a handful of his articles so far. I’m somewhat dismayed to just have discovered an extensive archive that I fear may take up a lot of my time in the near future.

He is also an excellent speaker. At TED he talked about pasta sauce and the way choice and like isn’t as clear-cut as it seems. And at the New Yorker 2012 conference he talked about genius and the difference between the geniuses of today geniuses and those yesteryear. Both talks give a good insight into his intelligence, his wealth of knowledge, and his style of collecting and reporting information.

This is his second book. I haven’t read his first, The Tipping Point, but I will one day. (In fact, I’ll do a lot more reading in general, if my insatiable appetite for sleep ever slackens and my indelible desire to procrastinate dissipates.) Blink discusses, from a dizzying number of viewpoints, the ways in which our brains work in the seconds before conscious processing kicks in. “Blink, and you’ll miss it”. I won’t try and replicate his examples or spoil the more surprising results; suffice it to say that when an expert tells you their opinion on something after seemingly a split second’s though, it’s worth trusting. On the other hand, to overcome our own gut reactions to things that we judge too quickly takes a lot of training — and in many cases is impossible. Our state of mind can influence our perception — no surprises there, I guess — but to such a degree that we should never take our own opinion of things too seriously.

Blink is an engrossing read by a writer who deserves his fame. Gladwell’s compilation of a slew of seemingly unrelated stories creates a compelling spiderweb of evidence to convince me, at least, that there’s a hell of a lot more going on in my brain than I give it credit for on a day-to-day basis. The most sobering part: think too much about something and you’ll destroy your opinion of it. Hmmm. I guess what I said above should now be reconsidered!

2007/12/07

Medicine

I’ve never been attracted by medicine as a science or profession. But I’ve become interested in the field recently, in a vague sort of way, because, well, I know I’m going to get sick one day. Everyone dies, right?

Disregarding outlandish (but hopeful and tempting) theories involving nanobots to replace our organs (Ray Kurzweil), and even an “anti-aging singularity”, after which the rate at which we can prolong people’s lives exceeds their actual deterioration due to ageing (Aubrey de Grey), there’s still huge amounts of progress still to be made in the field. This point is made so very clearly in an article in the New Yorker, “The Checklist”, discussing the huge improvements that can be made in intensive care simply by following checklists when performing tasks, rather than relying on memory and experience:

In the Keystone Initiative’s first eighteen months, the hospitals saved an estimated hundred and seventy-five million dollars in costs and more than fifteen hundred lives. The successes have been sustained for almost four years—all because of a stupid little checklist.

Boggles the mind, really. It’s sweating the details like these that will be keeping us alive longer on average. For something even more amazing, again via the New Yorker, check out this speech on Regenerative Medicine. It’s now possible to grow bladders from scratch (from a sample) and implant them in the patient whose original requires replacing; kidneys are almost there as well (the bladder is the easiest because it’s hollow). This had just reached the implementation stage now. And this is the stuff that can be done without stem cells. Fifty years ago, we couldn’t even transplant organs.

I don’t have a clue how these people do it. And I’ll no doubt never learn. But I can’t wait to live to see where we end up.

2007/12/03

Tolkien in a chocolate review?!?

Blogs. I hate the word. But I do love the medium. Seriously, think for a sec: where else can you read something anywhere nearly comparable? Don’t get me started on newspapers. (Well, in Australia they’re mostly tabloids in disguise, anyway.) Magazines work as is in they’re interesting and stuff, but you’ll never read the raw, unadulterated opinion of some guy just smashing away at his keyboard (or some girl, well, tinkering at hers).

Take Brian Tiemann, who’s the subject of this piece. Don’t ask me who he is. I don’t even know why I read what he writes on a regular basis. He’s entertaining almost all of the time. I guess that’s about it. He often writes about things I like. For example, he’s just started reviewing some varieties of dark chocolate. (Which is truly my favourite.) And here’s a little piece of what he has to say about a particular brand:

The chocolate doesn’t really melt, it sort of collapses like a Jenga tower into a heap of rubble on the tongue, which you then have to sweep out of the way like the ruins of a decrepit Vegas casino redolent of pipe smoke and loveless sex.

You don’t get self-indulgent, brilliant, evocations like that in a serious publication. Followed but one sentence later with:

Just a mouthful of wreckage that you’re eventually glad is gone, and a cloud of something gray and gassy, indistinct and vaguely sinister, floating over the whole scene, looking towards the West, only to be dissipated by a firm breeze from over the Sea

Imagine the brilliance of using a Tolkien metaphor to describe the aftertaste of poor chocolate. Would that ever work in a piece written for, you know, money? You’d have editors going “oh, no-one will follow that; it’s too many words, anyway”. And while they’d be right, they’d be depriving me of a moment’s joy at the end of a tedious day.

2007/12/01

“Theatre” by W. Somerset Maugham

A couple of years ago my father mentioned “The Razor’s Edge” by W. Somerset Maugham as one of his favourite books. His recommendation was, of course, good — I’m quite taken by that book. Well, since I liked that one so, time to get another. I picked up a bunch of Maugham books in hardcover at a secondhand bookstore and just finished the first of those last night.

“Theatre” is an odd book. Most of the way through, to be honest, I wasn’t particularly enamoured by it. It lacked the style and gravitas of Razor’s Edge that I so enjoyed; indeed, three paragraphs into the novel comes the phrase:

With the experienced actress’s instinct to fit the gesture to the word, by a movement of her neat hand she indicated the room through which she had just passed.

This is the kind of writing I abhor; not because of the old-fashioned wordy style (which does take a little getting used to — Maugham wrote many many books back in the early–mid 1900s). Rather, it’s the explicitness of the description that gets my goat. It’s probably the easiest way to spot the terrible writing in books like “Di Vinci Code” — everything is spelled out in excruciatingly unnecessary detail. (Note it's the ‘unnecessary’ there that's key word; I do like books that have lots of words.)

But Maugham isn’t a bad writer. As the novel progressed, it turned out that these passages reflected an inner dialogue of the main character, an ‘actress’ (that word’s not politically correct these days) who is self-centred and shallow; while we do empathise with her emotions, the writing style is almost a parody of her self-view and re-inforces her vapid interpretation of the world.

As the book progresses, we are slowly treated to some outside interpretation of who this woman is, and their points of view jars or even contradicts with what we’ve learnt through her eyes. So to dismiss this book early would be a mistake, because it’s only over time that the writing style reveals itself as a device to give insight on the character followed by the story. By the very end, her own plot lines (in her world) have been satisfactorily resolved while the insight on her character has completed its descent from grace to emptiness. Or is it us all who are empty and meaningless?

2007/11/21

‘On crappy reviews’

Simone Manganelli writes on crappy reviews at Technological Supernova.

I’d like to deconstruct [Andy Ihnatko’s Zune 2 review] to point out how typical this is of mainstream technology publications.

It’s good stuff; it captures exactly the sentiment I hold for the majority of reviews and general ‘tech info’ I read around the place. My writing certainly doesn’t stand up next to that of a journalist proper, so I’m one to talk, but all I really want to see is a story. A myriad of details out of context don’t help me form an impression of the device through the eyes of the reviewer. I want to know what you liked about it, or didn’t, and why — under the proviso that you’re well-versed enough in the field of whatever you’re reviewing that your ‘whys’ can be considered half-way considered and, even, objective.

It’s not fair to Andy to use his piece as an example; he’s certainly amusing at best. Don’t even get me started on the people who spread half-truths and pessimism around simply to get the rebuttals. Rebuttals equals page views, you see.

Can we get a moratorium on further useless technology articles? Please?

I wish.

Obviously the solution is to avoid reading reviews from people and places that you’ve previously discounted. And only read the people you know to provide the good stuff, information-wise. News will travel through almost all sources so you don’t need to subscribe to the mainstream ones in the first place unless you really want the firehose of information.

The real trick is to find someone who aggregates current affairs (of any kind) so that you’re only presented with material that passes through their quality filter (under the assumption that were you to perform a similar task, your lists would largely overlap). Sadly, such people are few and far between.

But really, the solution is just to ignore the crap. Seriously — there’s too much else to do :)

2007/10/27

I wish I had an Apple TV

About a year ago Apple pre-announced a product that is now called the Apple TV. It simply provides an interface through your TV to the media that exists on your computer. Movies and music on your computer can be displayed on your TV. Your computer doesn’t need to be hooked up right next to the TV with that adapter that you always lose.

When it was initially announced, I loved the idea of this product. I listen to my music through an Airport Express, which streams music playing in iTunes from my computer to my stereo. I buy my music predominantly through iTunes and the whole system works very well. Extending that metaphor to video is natural. What makes video on the Apple TV better than music is serialised TV shows through the iTunes Store. You buy the whole series and they’re transparently downloaded to your computer the day they’re broadcast on TV.

No hassle with ads or having to schedule TV at an exact time every week. A TiVo does this too (but we can’t get it in Australia) but, crucially, a TiVo can’t record what isn’t shown on TV. This also means back catalogues, currently the domain of DVD sales. Bittorrent will give you all this and more, but it’s illegal and not as easy to use as iTunes. (Remember, I’m talking about the Apple TV as a product to market to people.)

To summarise how the Apple TV fits in with Apple’s product lineup, it’s essentially a ways to consume content from the iTunes Store. If you rip your DVDs onto your computer, that’s fine too but the raison d’etre is to make people buy series and movies through iTunes.

The kicker of all this is that I don’t have an Apple TV. For one reason only: it doesn’t have a composite video output. That’s the yellow cable in the red/yellow/white trio that used to be the standard for most video/audio connections. My TV is pretty damn big and old, and it only supports composite video. So that rules me out from the get go. How many other people are in the same situation? I guess according to Apple’s market research, not that many.

I’ve seen slews of requests for more features for the Apple TV. They’re all pretty similar to the recent article “Apple TV future” at Apple Pulse. Recording and DVD drive, so they say. That’ll make people stand up and buy this thing. Bollocks. I want an Apple TV so I can avoid regular broadcast TV and eventually ditch my DVD collection.

I don’t think something like the Apple TV will be a big seller for a long time. How many Airport Express units were sold on the basis of their wireless music streaming? Over the next five years I think there is a market to be created, however. Don’t forget that the iPod took that long to become a monster, after all.

The Apple TV in conjunction with the iTunes Store is a platform with great potential (either one on their own requires an equivalent to the other). I’d be happy to align my allegiances to any other company that was doing the same sort of thing, too. I’ve got a soft spot for Apple, though, and there’s no other big company that is approaching it like they are (as far as I know). It’s a travesty that many of the content owners aren’t going along for the ride, but I desperately hope that this is just a matter of time.

Revisiting code

Michael Mccracken said it first:

Once you get a piece of code to the point where you believe it works - it’s passing its tests - go back over it and edit it. That is, go back and edit it for clarity, flow, and style. Just as if it were an essay.

Les Orchard at 0xDECAFBAD (love that site name) said it better:

Ugly code kills motivation and comprehension

There’s a curious tension between the “it works; ship it” mentality and those that say “this code isn’t perfect; it isn’t ready”. I don’t have a background in computer science, so the code that I ship tends to be the “it works” variety; over the months and years I’ll see ways to do things better (often through bugs cropping up that shouldn’t have happened in the first place) and the code base improves piecewise.

But one thing I have noticed is that if I write really nice documentation (of both the user interface and the code itself) I’m more inclined to go back in and start messing around with little tune-ups. LaTeX’s docstrip is ideal for this because you can freely mix up code and documentation (and even present the code asynchronously). Some of my time might be wasted by choosing the font that my code is presented in, and nicely explaining my algorithms with carefully typeset figures and tables but the up-shot is that it makes things a lot more accessible for someone to edit in the future. And that includes me.

(Oh, when I say that I don’t mean it’s a good idea to program in LaTeX; it’s rather hideous, actually. But docstrip doesn’t have to be used for LaTeX programming and one day I’ll experiment with writing other code with it.)

2007/10/23

Technical libraries for technical times

I hope that libraries of technical information are going to be unrecognisable in the future. And I hope that information is going to become globalised and centralised. This post marks the first solid thoughts I’ve been able to put together on some ideas I’ve been vaguely musing over in the last few months, I guess. The themes of these ideas are about how we are taught and how we learn and how we research. Obviously, my viewpoint is going to be very biased to my experiences, but I hope that my ideas here can eventually be generalised.

There are several projects around the place to create open centres of learning, an initiative that I strongly support. Unfortunately, the problem so far seems to be that it’s an incredible task to put even a semester’s worth of learning material together, and few people are creating content for these websites. Examples are Wikiversity, Wikibooks, The Open University and Connexions. Browsing through these websites reveals extraordinary nuggets of information completely out of context, and shows how very far we have to go before it’s possible to access learning materials for an entire discipline like Mechanical Engineering (to use something I’m familiar with).

(Note that these projects vary compared to Google Books or OpenLibrary or even pioneer Project Gutenberg, which all simply collect books without linking them together nor providing facilities to create new or edit current books. Both kinds of project have their place.)

But there’s more to the problem than getting a thousand engineers to write a thousand books and calling it a day. When we say we want open content, that’s not enough. The content has be written for a purpose and needs to be written differently depending what it’s being written for. If we could imagine the ideal case where everything we wanted to know was linked though a giant library, how would we be using that library? I break it down into three categories: learning, reference, and research.

The similarities between learning and reference is much greater than between reference and research. (Indeed, I’m not even sure about the “research” layer at this stage. More on that later.) Much of their content could even overlap. But whereas a reference book will be explicit and terse, a learning book will have analogies and examples and tutorials and may very well skip the detail that makes a reference book what it is (dry and boring — no, I jest).

But remember that we’re no longer talking about books any more. This information would exist in “blobs” in the library to be chained together in whichever order made sense for the application. Control theory is widely applicable over at least mechanical, electrical, and chemical engineering, but the teaching methods between them can often vary considerably. Similarly for the more fundamental maths that underpins the more rigourous engineering subjects.

And this chaining, I feel, is one of the fundamental advantages of a central store of information. Places like Wikiversity might have modules that are related to each other, but the best they can hope for is a cross-reference to link them together. It’s impossible to reduce science into such small pieces of “things to know” that they can be placed in a linear fashion and be absorbed all at once. There are branches, dead-ends, intersections, and circular loops that defy any canonical reference. For different applications, different references need to be written. By chaining blobs together, not only can material be re-used efficiently, but consistent terminology can be used across all scientific disciplines.

Greater abstractions can only be built on top of steady foundations, and as more and more becomes known about the world we’re approaching the limits of what we can learn in the four or five years we’re given as graduate researchers. And this is a where that “research layer” I spoke of earlier comes in. Every new research student, guided or not, will follow a literature trail in the subject of their thesis. Their evolving bibliographic database is a representation of the “information space” their have mapped by the research they’ve managed to find, and they’ll proceed to carve out their own little niche in that space.

I’ve observed in my own research that my literature search is never complete. And it’s obvious reading others’ papers that theirs never is either when you find similar papers published years apart. Sometimes all I want to do is catalogue as much research as I can find, and this is where the seeds come from for an idea of a framework for documenting ongoing progress. Why should two researchers working on opposite sides of the world have to replicate each other’s journeys into finding work in their field that’s been done years before?

I’d like to see “literature review” as a giant web of cross-references which differs from a reference library in that old work won’t be forgotten, exactly, just hidden away behind the newer work that encompasses it. When a new research book is written, it can cover years of work in a field for which those papers are now, in a sense, obsolete. This resource would allow “forward linking” for random papers that you stumble across so that you can easily follow what research might have come out from that work. And if none — is there scope for more research?


All of these ideas have been glummed together over the last while as I’ve had time to tack them together. The concepts are muddy in my head and I’m not even sure how feasible this project is. Perhaps it’s impossible. Probably it’s impossible, at least today. I’ve got many more ideas and details in my head but I’ll let them ferment for a little longer.

2007/09/30

iPhone complaints complaints & Microsoft's platforms

Back in January I wrote a few things about perceived criticisms of Apple’s then-unreleased iPhone. As an aside, at the time I wrote:

I’m predicting that when this thing’s released, or thereabouts, Dashcode will be able to create restricted widgets for it. (By “restricted” I’m saying no Cocoa.)

And I was clearly wrong on that part (I don’t even count Apple’s “web app” development platform as falling into my prediction above, despite having the same spirit).

I’m no longer running tracking software on this website to see how many people read what I write, but that piece has obviously been my most popular, with occasional comments even to this day. They fall between in tone between offensive statements that I can’t really understand to people with valid things to say (and thanks for that, to those who’ve written).

Today’s comment deserves a reply:

Yawn.

This doesn’t even come CLOSE to what the Windows mobile devices are capable of.

This is true, and yet, the iPhone is way more popular now than a Windows mobile device has ever been. And the Windows mobile platform has been around for years.

In the same way that their tablet computer never really took off, I think Microsoft’s problem is that they build feature-rich, flexible platforms but by the same token never have a compelling hardware/”killer app” reason to really engage their customers.

Tablet computers, by rights, should be taking the world by storm right about now. The hardware is mature and we’re in a pretty sweet spot right now with fast and cool processors from Intel, that also yield excellent battery life (compared to past models). Looking in the near-term future, new display technology (LED backlighting and OLED displays) and flash-based storage will provide significant advantages over what is available today.

Microsoft has seemingly performed miracles with its handwriting recognition software, and being able to sketch out diagrams — and other free form input — where-ever the need takes you is obviously the major advantage that pen+paper or chalk has over a traditional laptop. And yet, no-one’s buying them? How are the sales figures? How are the prices? (I guess that’s the most important question.) It makes me wistful, because I really would like a tablet myself but I’m obviously not going to buy a Windows computer.

Personally, without having used one, I’d guess that Microsoft haven’t gone far enough to develop an interface to general computer use that really takes advantage of the fact that you’ve got a huge touchscreen to connect with the data in front of you. It’s not like Windows is that great to use anyway (cheap shot) but there’s untapped potential there.

Coming back full circle, as with the iPod vs. various PlaysForSure-based media players, it’s not about the features but about the interface. This point has been made by various Mac-biased writers for months now, so I’m adding nothing to what’s already been said.

And finally, going back to that original comment: yes, if you’re happy with the Windows mobile platform, it’s hard to argue. Expandable storage, a legitimate 3rd party software development community, more more more features — it’s not for the everyman but it sure could be for some.

2007/09/29

Why typography?

When I try and explain to people that my hobby is typesetting or typography, it’s rather hard to justify. Especially to engineers who might not appreciate the æsthetic reasons in the first place. (I kid.)

Now, I’m not going to attempt such a justification now besides saying that my primary reason is that it helps people. But being interested in typography in the first place comes from some part of my, ahem, soul that tries to cling to the idea that perfection should be achieved where possible simply for the sake of doing so — and the subsequent benefits will be evident.

Well, here’s some small consolation for me. A while back Amar at UIScape referenced a research article looking at the effects of “fine typography” (not macro-level typesetting like linewidth and fonts but rather the micro-details like kerning and ligatures) and found that while the reading speed and comprehension and even preference between the two samples were equal, significant effects could be found in other areas:

[P]articipants turned out to frown less, and could therefore be said to have been “happier”, when reading text with the enhanced typography. […] [P]articipants who read text with good typography did perform better on [creative problem solving tasks after they had done the reading].

I find this amazing and it pleases me no end. I hope that more studies like it will corroborate their findings, but for now I can confidently state: “the documents I create will make you happy”.

2007/09/28

My first steps with open source licenses (& LaTeX)

I’ve finally got around to learn a little bit about open source licences the other day. The whole premise seems easy enough: I write this code and don’t put restrictions on it for other peoples’ use. But the devil’s in the details, and there was a lot to get my head around at first. This is a short summary of what I’ve learnt (or, at least, what I think I’ve learnt).

First thing’s first: it’s a Bad Idea to make code public that doesn’t have a licence. You will be legally responsible, theoretically, for any bad things that happen resulting from others using that code. Secondly, it’s Not Possible to release code “into the public domain”, although many people claim to do just that in an attempt to obviate their copyright responsibilities. Copyright is automatically assigned and it’s legally murky ground to attempt to get around that (and varies from country to country in how successful you will be in that attempt).

It’s easy to say “well, my code will never be used by anyone else anyway, so it doesn’t matter if I don’t release it with a copyright licence” but that’s a little short-sighted. It wouldn’t be public if you didn’t think that anyone would find it useful, and if someone wants to re-use what you’ve written, the absence of a licence will prevent them from doing so, even if you’d like them to in principle. Furthermore, the absence of a warranty (again, theoretically) could get you in hot water if things turn out poorly due an error on your part. So free code must be licensed.

The question is then “which licence to use?”. You wouldn’t think this would be such a problem, but there’re heaps to chose from and many of them are quite similar. Making a good choice without knowing the details is more a matter of luck than anything else. Over at Google Code Project Hosting, they’re trying really hard to restrict the number of open source licences around by only offering a small number of choices for the projects they host; a laudable goal. And yet their list is still eight deep. Even if you want people to use your code essentially without restriction, there are three to choose from: the BSD, MIT, & Apache licences. Which to choose even in this simple case? I’ll discuss their differences five paragraphs hence.

There are three broad classes of open source licence that can be summed up by three specific “best practice” ones: the GNU General Public Licence (GPL), the Lesser GPL (LGPL), and the Apache Licence. The GPL is probably the most well known and popular free software licence: it requires that the work be distributed with its source code and stipulates that derivative works also follow the GPL. This ensures freedom at all costs, with the expense of flexibility; you’ll never see GPL code turn up inside proprietary products (illegal exceptions notwithstanding.

The LGPL was written to allow proprietary software to use the functionality of GPL-like free software without having to open the entire product. A library with the LGPL licence can be used in a closed product without having to open the source for the whole project. I won’t really consider this class of licence too much here (the Mozilla Public Licence is similar). Suffice it to say that it’s a slightly more liberal license than the GPL for certain types of software.

Finally, the Apache license is a model example of a license that lets you do pretty much anything you like with the code. Not only is the code free, but it can be re-used where-ever you like, under whatever license you like. There’s an obvious tension between a “copyleft” license like the GPL and an Apache-like license: for the former the code is free and will always be free; for the latter, the code is free but someone might take it, improve it, and lock it up — which doesn’t help you any but you do allow it.

I’m in the Apache licence camp more than GPL: I’d prefer my code to be maximally useful to as many people as possible than restrict its use in order to ensure that it will “always be free”. Of course, if everyone used the GPL then that wouldn’t matter, but that’s simply not going to happen. I might change my tune if my coding were more directly useable in commercial products, however. I can certainly see the idealistic appeal of the GPL. (While I’m on the matter, the GPL recently had some major changes made for v3.0, and it’s apparently rather controversial. I don’t understand the whole matter at this stage so I’ll leave the intricacies of this licence for another time.)


If you don’t want to choose the GPL for similar reasons to me, let’s revisit the question “which licence to choose?” and discuss the differences between the various (popular) Apache-like licences. The distinctions are subtle but there are valid reasons for choosing between them. As mentioned, the big three are the BSD, MIT, and Apache licences, where the latter is a later and more formal extension of the ideas in the other two.

The MIT licence is the most simple: you can do whatever you like to the code (distribute, sell, modify, relicense), provided that “The [ … ] copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.” Even the text of the licence itself can be changed.

The BSD licence adds one condition on top: “Neither the name of the [organization] nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.” Sounds sensible to me.

The Apache licence is the one that I’ve been implicitly endorsing when I used it as the “best case” example in the beginning for these “no restriction” free licenses. I’m really taking a cue from Greg Stein of Google who says:

That is one of the reasons that Google chooses the Apache License (2.0) as the default for the software it open-sources. It is permissive like BSD, but (unlike BSD) actually happens to mention the rights under copyright law and gives you a license under those rights. In other words, it actually knows what it is doing unlike some of the other permissive licenses.

(Not necessarily an un-biased comment, I have to admit; he’s also Chairman of the Apache Foundation.) The additional terms in the Apache licence (over BSD & MIT) require changes made in modified works to be prominently marked as such. I like to think of such measures as “enforced politeness” — it’s not like people won’t be doing this in general anyway. I believe that the Apache licence itself cannot be altered, but I don’t actually know for sure.


Finally, the reason I got into all of this is from the various bits and pieces of LaTeX code that I have written. And they’re licensed under the LaTeX Project Public Licence (LPPL), which is different again to those I’ve already discussed above. It’s pretty interesting, and I think it deserves a little attention. (Link disclaimer above: at time of writing some of that Wikipedia page was written by me.)

Because LaTeX code almost always defines a document syntax (it’s a programming language of communication, essentially), it’s pretty important that things don’t change meaning without warning. I want a document that is typeset on my machine to be exactly the same on your machine under reasonably similar circumstances. While LaTeX is free to modify and distribute, they don’t allow people to take the code and alter it without potential users knowing that it’s not canonical. This follows the original licence of TeX itself, probably the earliest piece of free software still in use. (According to Wikipedia, Emacs was first released in 1984; development on TeX started in 1977 but the version most similar to the one we know today was released in 1982.)

To try and formalise TeX’s licence, the LPPL allows modification and distribution only under the proviso that the user is made well aware that they’re using a modification to that work. This is usually done with a change in name, but technically speaking minimal conformance could be achieved (and strongly frowned upon) simply by printing out a message on the console stating that the package you’ve loaded isn’t the original version. A good example is a conference proceedings document class, for which you certainly don’t want someone changing the margins or fonts without calling it something different!

So if only the copyright holder is allowed to make changes to the code without changing the name of the package, what happens if the original author loses interest in or can no longer work on the project? The LPPL also defines the concept of a project “maintainer”, who may make public changes to the work with the authority of the copyright holder. You can become a maintainer of a project either by being bestowed the title or (when the previous maintainer cannot be contacted) by announcing publicly your intent to start maintaining the code; maintainership falls to you after three months if your claim is uncontested.

None of this changes the problem of ensuring backwards compatibility in packages, but it goes a long way to ensure that documents remain portable into the foreseeable future. This is a laudable goal when compared to the philosophy of “closed source” document programs like Word Perfect or Microsoft Word, whose old files are sometimes now unreadable.


Now, in my explanations above I have omitted many specifics in order to try and get the ideas across about the licences I was talking about. Diving too deep into the legalese makes it impossible to get a broad picture of each licence to be able to compare them. Obviously, I am not a lawyer and my terminology could be improved but I hope that I got the gist across. (Also, I hope that I’ve understood it correctly myself!)

I’m using the British spelling for licence and license here (for noun and verb respectively; cf. practice & practise — I remember these rules by the mnemonic “ice is a noun”). When I talk about licences above, I’m referring to their current versions: 3-clause BSD, 2-clause MIT, LPPL v1.3c, Apache v2. One day I might understand the difference between GPL v2 and v3, but not at the moment.

2007/08/18

‘Perfume’ by Patrick Süskind (1986)

I have been receiving suggestions to read Perfume for about ten years now, I reckon. Recently it was published as a Penguin Red Classic and I grabbed a cheap copy to add to my huge list of books to read. I actually managed to fit it in on a flight between Brisbane and Cairns a few weeks ago on my way to the ICSV14 conference. That’s right. It was so damned good I devoured the whole thing in one go. To be fair, I read most of it on the flight and then finished it off when I got to the hostel. As far as I can remember, it’s the longest book (296 pages paperback) I’ve read in one sitting.

I loved this book. And for totally different reasons than I often love books. It didn’t contain any characters that I found particularly likeable nor whom I could even empathise with. And the actions of the characters were never noble nor life-affirming. This isn’t one of those books like ‘Peter Camenzind’ (Hermann Hesse, 1904; my thoughts forthcoming when I re-read it one day) where the life of an everyman unfolds before your eyes and connects you with humanity as their character advances spiritually through life. For example. Despite all of this, there is an uplifting catharsis that arises quite unexpectedly (to me), which is quite unique for the genre that — on the surface — this book appears to fall into.

But the world that Süskind creates is simply amazing, and the construction of the narrative is simple and clever. There are no loose ends and no logical gaps in the story. In short, a ‘perfect’ novel. And while I wish I was the kind of person who could untangle the themes within an elucidate them now, I must be content to bask in them. I guess that’s why I’m trying to write here, so that I learn to express my own reactions to things.

I was talking with Toni the other day about the movie that has recently been made on this book. I haven’t heard a single good reaction about the movie, and I’m fascinated by the fact that the movie was even made. The book spends much of its time in a world that can’t really be shown on film, and so while the superficial ‘action’ of the story could obviously be shown, I’m baffled by how the motivation of essentially the only character could be portrayed. Or how someone could even try and approach the problem. So I would really like to see how the book was adapted.

Now, I just spent a couple of minutes reading the reviews at IMDB and the reactions there seem rather good. So that gives me more motivation to actually check it out. Because I do love movies, after all. Stay tuned.

2007/08/12

‘Places like this’ by Architecture in Helsinki (2007)

I don’t write much about music, because I don’t really know how to put the words together. Many reviews I read assume that the reader is familiar with the music itself, which isn’t necessary what I expect from a review.

I first became a fan of Architecture in Helsinki after being gifted with their debut album, ‘Fingers crossed’, shortly before seeing them live. This must have been 2003, I think. Until recently, their band had nine musicians who all played different instruments to one degree or another. Their first gig I saw in Adelaide had them crammed onto a tiny stage in the Jade Monkey with many more instruments than band members and having hardly space to move let alone swap instruments halfway through songs. They are certainly an eclectic lot. I really don’t know how to describe their music. Lots of energy and lots of instruments almost chaotically thrown together, with vocals primarily provided (often in falsetto) by their lead Cameron and taken over (and stolen) by partner-in-crime Kelly.

Their first album, which was a sweet, smoothly-produced and catchy number, and some time later, their second album ‘In case we die’ was a much bolder expression of their energetic and unusual sound, I guess. That album was less one that you could stick on as background music but captured better who they were as a band.

Around the same time, they toured Europe and America and I’m guessing become a lot more popular. (Well, Sven-S. Porst likes them at least. That’s my one and only data point for popularity outside Australia!) Since then, they lost two of their musicians who had more of a classical instrument bent, and just released a third album, ‘Places like this’. And it’s my favourite album so far. At a touch over 30 minutes I would like it to be a song or two longer. It continues the trend started in ‘In case we die’ of louder, punchier sounds. Cameron is crooning less falsetto and living it up a bit more. The songs are more catchy, the enthusiasm more unbridled, and the album more consistent. With a solid touring history now they’re much more guitar-based in concert and they’ve never been better.

I love you, Architecture in Helsinki.

2007/08/11

Out of practice

When I’m in that state of having nothing to read but not enough motivation to do work, I really need to spend the time writing rather than searching for more reading. For example, I just read in the New Yorker that there olive oil industry is rife with counterfeit oil; it is often cut with sunflower and soya oil (and sometimes treated to mask the flavour of the offending additive) for inevitable greater profits. That makes me wary about oil, I guess. Oh well; in cooking, I can hardly taste the difference anyway.

Now, the New Yorker is great. I bought a paper copy of it in an airport a few weeks ago to gauge whether I prefer it in print to online, and online wins hands down. It’s a whole magazine of current affairs and articles of interest, which can vary from fascinating to completely off-wavelength. Buying the print version gives you a good mix of both. But online, it’s easy to skip the chaff, and this makes it a much more valuable reference. Of course, I’m a huge fan of keeping articles I like in softcopy for future reference, and hardcopy just clutters up a garage in the end.

But undirected reading is hazardous to my time. I’ve hardly got time to do the dishes these days, so why should I spend time reading about how some olive oil isn’t just made from olives? Even worse, RSS readers transform collecting reading material into an imperative task: 45 unread news items! What have I missed? On the other hand, stopping by newyorker.com every week or so can easily be skipped. But my will isn’t strong enough to avoid checking my news in RSS, and I dread avoiding them for a week and coming back with hundreds of items that just might be interesting enough for me sift through the whole lot for.

I’ve cut down a lot recently, you must understand. On a typical day, I’ll only have a few tens, max, of articles to read or links to follow. This takes me less than half an hour, I’d guess, to wade through and discard those that I don’t feel inclined to consume. I haven’t measured it, really.

And back to my first point: I’ve become out of practice in writing here myself, although I have been doing so more on my actual research. (The thesis is very far from complete, however. It’s early days yet. But don’t tell anyone!) The pity is that I really like writing. If I forced myself to write every day, I’d be a lot better at going on at length in an interesting way — and of course my ego thinks I’ve interesting things to say in the first place (although I’d be inclined to disagree on occasion). But my interests can be rather myopic at times, for others at least, and I’d rather not harp on about news that is transitory at best and of dubious interest at worst. (Hey, did you hear there’s new iMacs? They’re cheap and pretty and great! I will probably buy one in a couple of months!)

So here’s to my literary career. Ahem.

2007/05/06

"Kafka on the Shore" by Haruki Murakami (2005)

I was introduced to Murakami by a good friend a few years ago after their return from living in Japan, and Kafka on the Shore is the third of his books that I’ve read. As always, it took me the better part of the novel before I was absorbed by it, and finished the second half in short time. In contrast to A Wild Sheep Chase and Dance, Dance, Dance, which mainly followed a single character, the narrative of Kafka on the Shore is spread over several characters who are equally dominant in the themes of the novel. Broadly speaking, it’s a coming-of-age story as we travel with the characters on their respective journeys. But such a description doesn’t do it justice.

Murakami has captured that style of writing that I associate with J. D. Salinger and F. Scott Fitsgerald, who are credited as his influences. I might not have drawn the connection so strongly if I hadn’t read about that, though. I think it was a quote on the back of one of his novels that said something like that he creates poetry in writing about the mundane, and I’ve never read a better description of his writing. These aren’t the expositions of the intelligentsia who reflect abstractly on the meaning of their life, in the style of say Hermann Hesse (my favourite author ever); rather, Murakami’s work is composed of the small details of his characters’ stories. They don’t strive or battle, they just live, and it’s such a base connection that allows us to empathise and achieve enlightenment with them.

The other hook into Murakami’s work is the incredible surreal environments he places his stories in. From my previous paragraphs, it would be assumed that his novels are set in a reflection of the world we live in, and its familiarity provides us the context for being drawn into their environments. Well, that’s not entirely the case. Murakami’s reality is indeed a reflection of ours, but a wonderfully expanded version of the universe we live in. At the same time, the unremarkable way he presents his surreal worlds make them imminently believable. The gap between his world and ours is totally seamless.

There’s nothing really to say about Murakami that hasn’t been said before. Kafka on the Shore continues his tradition of stories with deceptively simply storylines as we follow his characters through a surreal version of his Japan. Profound experiences are had by all involved. Including the reader.