Begin main content
The issue I'm interested in is:

  • Apple is only providing Java 1.4 and newer for Intel Mac's. Fair enough.
  • NeoOffice/J has components that rely on Java 1.3
  • It's not easy to port between Java versions
  • Java is closed-source so it's not possible for the public to port Java 1.3 to Intel Macs (as opposed to Perl, Python or Ruby - other portable languages that need a native runtime)
  • Java: Write many times, run in a few places™

12:52 AM, 17 Jan 2006 by Mark Aufflick Permalink | Comments (0)

You gotta love Paul Otellini

Apparently it was Apple's idea to have Paul Otellini appear in the bunny suit during Steve Jobs' recent keynote address. I really admire that he can be the CEO of such a globally serious company and still be able to enjoy some self-deprecating humour.

I've long been a fan of Paul's work and this just confirms that he's a good bloke. Who would have thought that Intel could be a company that we would grow to love. I don't think the world yet realises how much of a coup this is - having Apple move to Intel - but Paul Otellini sure does.

Update: Of course the fact that Intel now sponsorBMW/Sauber F1 just makes me happier that I'm allowed to love them now!

06:00 PM, 16 Jan 2006 by Mark Aufflick Permalink | Comments (0)

Cool Tunes []

Listen to your favourite tunes while enjoying cold beverages and hanging out with your friends.

Your ipod plugs in, it holds 8 cans of drink, INSTANT PARTY!.

From the mad people at

01:08 AM, 16 Jan 2006 by Mark Aufflick Permalink | Comments (0)

mozex + cygwin to edit Firefox textareas in X11 emacs

I may be a bit extreme, but if anyone else wants to do this, it's remarkably easy.

Assuming you already use emacs under cygwin, first make a batch file to abstract the wierdness. I use the dtemacs wrapper for gnuserv, but you can substitute any cygwin X11 editor in for dtemacs below (or xterm -e 'ed' if you are so inclined).


@echo off

SET RUN="C:\Program Files\Cygwin\bin\run" -p /usr/X11R6/bin

%RUN% bash -wait -c "/usr/local/bin/dtemacs `/bin/cygpath -u '%1'`"

The call to cygpath in the backticks converts the path supplied by mozex from something like c:\temp\asdfhasdfjh into /cygdrive/c/temp/asdfasdfdsf that emacs can understand.

Then install mozex into Firefox. Mozex works fine under firefox 1.0 and later, but you can't seem to access the config gui anywhere. You can, however, easily add the following lines to your prefs.js:

user_pref("mozex.command.textarea", "C:\\Progra~1\\Cygwin\\usr\\local\\bin\\dtemacs.bat %t");
user_pref("mozex.general.tmpdir", "c:\\temp");

Adjust the above as per your cygwin directory and note that you have to use the 8.3 form of pathname in the mozex userpref.

Now I can edit twiki pages in X11 emacs via my windows firefox - smashing!

Update: The above link for mozex now directs you to a new development version of mozex that has a preferences UI that works with Firefox 1.5. I haven't tried upgrading my Windows Firefox yet, but it works a treat on MacOS X. It has even fixed the issue where you had to click in the textarea to update the content :)

09:33 PM, 15 Jan 2006 by Mark Aufflick Permalink | Comments (0)

RSS feeds now with full content

Due to popular demand (from Lars), I have hacked my ancient blog software to provide the full conent of the blog in the feed. It should be formatted reasonably since the content is being run through ns_adp_parse, but please let me know if you notice any anomolies.

11:45 PM, 12 Jan 2006 by Mark Aufflick Permalink | Comments (0)

RSS feeds now with full content

Due to popular demand (from Lars), I have hacked my ancient blog software to provide the full conent of the blog in the feed. It should be formatted reasonably since the content is being run through ns_adp_parse, but please let me know if you notice any anomolies.

11:45 PM, 12 Jan 2006 by Mark Aufflick Permalink | Comments (0)

The Dosfish that sails upon the Pea Sea

(I happened across this on Sun Solaris Humor who in turn happened across it in a 1995 rec.humor.funny post that in turn happened across it on the NANET Comedy Conference).

Long ago, in the days when all disks flopped in the breeze and the writing of words was on a star, the Blue Giant dug for the people the Pea Sea. But he needed a creature who could sail the waters, and would need for support but few rams.

So the Gatekeeper, who was said to be both micro and soft, fashioned a Dosfish, who was small and spry, and could swim the narrow sixteen-bit channel. But the Dosfish was not bright, and could be taught few new tricks. His alphabet had no A's, B's, or Q's, but a mere 640 K's, and the size of his file cabinet was limited by his own fat.

At first the people loved the Dosfish, for he was the only one who could swim the Pea Sea. But the people soon grew tired of commanding his line, and complained that he could be neither dragged nor dropped. "Forsooth," they cried. "the Dosfish can only do one job at a time, and of names, he knows only eight and three." And many of them left the Pea Sea for good, and went off in search of the Magic Apple.

Although many went, far more stayed, because admittance to the Pea Sea was cheap. So the Gateskeeper studied the Magic Apple, and rested awhile in the Parc of Xer-Ox, and he made a Window that could ride on the Dosfish and do its thinking for it. But the Window was slow, and it would break when the Dosfish got confused. So most people contented themselves with the Dosfish.

Now it came to pass that the Blue Giant came upon the Gateskeeper, and spoke thus: "Come, let us make of ourselves something greater than the Dosfish." The Blue Giant seemed like a humbug, so they called the new creature OZ II.

Now Oz II was smarter than the Dosfish, as most things are. It could drag and drop, and could keep files without becoming fat. But the people cared for it not. So the Blue Giant and the Gateskeeper promised another OZ II, to be called Oz II Too, that could swim the fast new 32-bit wide Pea Sea.

Then lo, a strange miracle occurred. Although the Window that rode on the Dosfish was slow, it was pretty, and the third Window was the prettiest of all. And the people began to like the third Window, and to use it. So the Gateskeeper turned to the Blue Giant and said, "Fie on thee, for I need thee not. Keep thy OZ II Too, and I shall make of my Window an Entity that will not need the Dosfish, and will swim in the 32-bit Pea Sea."

Years passed, and the workshops of the Gateskeeper and the Blue Giant were overrun by insects. And the people went on using their Dosfish with a Window; even though the Dosfish would from time to time become confused and die, it could always be revived with three fingers.

Then there came a day when the Blue Giant let forth his OZ II Too onto the world. The Oz II Too was indeed mighty, and awesome, and required a great ram, and the world was changed not a whit. For the people said, "It is indeed great, but we see little application for it." And they were doubtful, because the Blue Giant had met with the Magic Apple, and together they were fashioning a Taligent, and the Taligent was made of objects, and was most pink.

Now the Gateskeeper had grown ambitious, and as he had been ambitious before he grew, he was now more ambitious still. So he protected his Window Entity with great security, and made its net work both in serving and with peers. And the Entity would swim, not only in the Pea Sea, but in the Oceans of Great Risk. "Yea," the Gateskeeper declared, "though my entity will require a greater ram than Oz II Too, it will be more powerful than a world of Eunuchs.

And so the Gateskeeper prepared to unleash his Entity to the world, in all but two cities. For he promised that a greater Window, a greater Entity, and even a greater Dosfish would appear one day in Chicago and Cairo, and it too would be built of objects.

Now the Eunuchs who lived in the Oceans of Great Risk, and who scorned the Pea Sea, began to look upon their world with fear. For the Pea Sea had grown, and great ships were sailing in it, the Entity was about to invade their oceans, and it was rumored that files would be named in letters greater than eight. And the Eunuchs looked upon the Pea Sea, and many of them thought to immigrate.

Within the Oceans of Great Risk were many Sun Worshippers, and they wanted to excel, and make their words perfect, and do their jobs as easy as one-two-three. And what's more, many of them no longer wanted to pay for the Risk. So the Sun Lord went to the Pea Sea, and got himself eighty-sixed.

And taking the next step was He of the NextStep, who had given up building his boxes of black. And he proclaimed loudly that he could help anyone make wondrous soft wares, then admitted meekly that only those who know him could use those wares, and he was made of objects, and required the biggest ram of all.

And the people looked out upon the Pea Sea, and they were sore amazed. And sore confused. And sore sore. And that is why, to this day, Ozes, Entities, and Eunuchs battle on the shores of the Pea Sea, but the people still travel on the simple Dosfish.

10:07 PM, 12 Jan 2006 by Mark Aufflick Permalink | Comments (0)

My agreement with the writings of Joel Spolsky waxes and wanes, but the forward he wrote for a new book "Micro-ISV: From Vision to Reality" (by Bob Walsh) contains two nuggets of incredibly true advice:

Number One. Don't start a business if you can't explain what pain it solves, for whom, and why your product will eliminate this pain, and how the customer will pay to solve this pain. The other day I went to a presentation of six high tech startups and not one of them had a clear idea for what pain they were proposing to solve. I saw a startup that was building a way to set a time to meet your friends for coffee, a startup that wanted you to install a plug-in in your browser to track your every movement online in exchange for being able to delete things from that history, and a startup that wanted you to be able to leave text messages for your friend that were tied to a particular location (so if they ever walked past the same bar they could get a message you had left for them there). What they all had in common was that none of them solved a problem, and all of them were as doomed as a long-tailed cat in a room full of rocking chairs.

Number Two. Don't start a business by yourself. I know, there are lots of successful one-person startups, but there are even more failed one-person startups. If you can't even convince one friend that your idea has merit, um, maybe it doesn't? Besides, it's lonely and depressing and you won't have anyone to bounce ideas off of. And when the going gets tough, which it will, as a one-person operation, you'll just fold up shop. With two people, you'll feel an obligation to your partner to push on through. P.S., cats do not count.

Of course following this advice doesn't guarantee success, but not following it makes it extremely difficult to succeed.

08:37 PM, 11 Jan 2006 by Mark Aufflick Permalink | Comments (0)

How to be a Programmer []

Estimation takes practice. It also takes labor. It takes so much labor it may be a good idea to estimate the time it will take to make the estimate, especially if you are asked to estimate something big.

And a lot of other useful discussion in this essay

11:52 PM, 10 Jan 2006 by Mark Aufflick Permalink | Comments (0)

Emacs Keybindings *everywhere*

Well, world domination might be hard, but at least getting emacs keybindings working (nearly) everywhere doesn't have to be. Let's see how we're going:

  • Well, you can use emacs for starters!
  • Shell - bash uses emacs keybindings
  • Many GNU apps default to emacs keybindings
  • Gnome apps (includes Firefox) used to default to emacs keybindings. These days you need to change your user config to tell all Gnome apps to use emacs keybindings (see this freebsd gnome list message)
  • Windows

      Surprisingly Windows is really easy to convert to emacs keybindings in every application. That's right, you can use emacs keybindings in Microsoft Word!! All you need is XKeymacs. It's very configurable per-application.

    MacOS X

      Conveniently, MacOS doesn't use the control key much, so MacOS X is able to offer emacs keybindings without breaking the standard keybindings in other applications.
    • All Cocoa applications support simple emacs keybindings by default (C-a, C-e, C-k etc.). You can get even more advanced bindings (including multi-key C-x bindings). See here, here and here.
    • Firefox on MacOS X is unfortunately designed to be Mac Friendly, which means if you're a Unix/Emacs person you're left out. It doesn't even support the basic emacs bindings that Mac Cocoa applications do. Fortunately Firefox is such a dynamic runtime it's easy to rectify. See This mozillazine article for simple instructions.
    • And yes, I do use all these operating systems every day (including usually at least two brands of Unix)! I don't have any information on emacs keybindings for either BeOS or AmigaOS ;)

07:30 PM, 10 Jan 2006 by Mark Aufflick Permalink | Comments (0)

Very interesting article - in depth explanation of the C type system. Mostly stuff I already knew, but it is all so much clearer in my head. Excellent read if you're into that sort of stuff!

Cross posted from my feed.

12:27 AM, 06 Jan 2006 by Mark Aufflick Permalink | Comments (0)

This stuff is freakin fantastic. If Motorolla can make Mobile/WiFi/Voip as seamless as they are promising, we might finally have the products we all saw on Beyond 2000!

(For non-Australian readers, Beyond 2000 was a Science/Tech TV show focussing on cool new science and tech. It aired on TV in the late 80s, early 90s. It has recently re-emerged in a similar format: )

01:42 AM, 04 Jan 2006 by Mark Aufflick Permalink | Comments (0)

Get emacs to set your xterm title

I very rarely have an xterm open that's not running emacs (I run my shells inside emacs, except on production logins), so an xterm title of 'xterm' doesn't really help distinguish between windows).

First you need xterm-frobs.el from Noah Friedman's emacs lisp code. Place it in your site-lisp directory or wherever you keep custom lisp.

Then add the following code in whatever block your .emacs executes when you're in an xterm:

(require 'xterm-frobs)
(defun my-set-xterm-title ()
(concat (getenv "HOSTNAME") "- emacs - " (buffer-name))))

(let ((term (getenv "TERM")))
(when (and (not window-system)
(or (string= term "xterm")
(string= term "rxvt")))
(require 'xterm-frobs)
(add-hook 'window-configuration-change-hook 'my-set-xterm-title)
(add-hook 'emacs-startup-hook 'my-set-xterm-title)))

(I came up with this code based on the following urls:

11:31 PM, 03 Jan 2006 by Mark Aufflick Permalink | Comments (0)


Blog Categories

software (41)
..cocoa (23)
  ..heads up 'tunes (5)
..ruby (6)
..lisp (4)
..perl (4)
..openacs (1)
mac (21)
embedded (2)
..microprocessor (2)
  ..avr (1)
electronics (3)
design (1)
photography (26) and white (6)
..A day in Sydney (18)
..The Daily Shoot (6)
food (2)
Book Review (2)


Icon of envelope Request notifications

Syndication Feed


Recent Comments

  1. Mark Aufflick: Re: the go/Inbox go/Sent buttons
  2. Unregistered Visitor: How do make a button to jump to folder
  3. Unregistered Visitor: Note I've updated the gist
  4. Unregistered Visitor: umbrello is now an available port on macPorts
  5. Unregistered Visitor: Updated version on Github
  6. Unregistered Visitor: Modification request.
  7. Unregistered Visitor: Accents and labels with spaces
  8. Unregistered Visitor: Mel Kaye - additional info
  9. Unregistered Visitor: mmh
  10. Mark Aufflick: Thank you