Short term memory loss

I've been thinking about the nature of Microsoft and why they write such crap code. There's been a lot said about their "unique" software processes, but I think there are other factors.

It seems incredible that a company can make so many of the same mistakes, over and over again. A topical example is the I LOVE YOU virus. This isn't a new idea, in fact the same thing happened a few years ago with MS Mail. That's right, a virus that grabbed all the addresses from MS Mail and mailed itself to everyone in your addressbook happened long before Outlook was released.

Another example is the braindead implementation of Windows NT and MS Exchange. Here is an organisation that built a Unix operating system years ago, so why are they making the same design mistakes made by Unix hackers in the 70s?

So why does Microsoft keep remaking mistakes? My theory is the organisation has a built-in memory loss mechanism.

Imagine yourself a programmer working for Microsoft in 1984. You get a few thousand options in the company every few months. These options at least double in value every year. Four years later, it's 1988 and your options vest. You cash out and go to live in a mansion in the Greek Islands and never think about computers again.

This cycle is repeated endlessly as the Microsoft wealth generation engine has continued. The result: nobody technical in Microsoft sticks around longer than 4 years or so. This means memory within the organisation lasts only a few years. From there, the newly recruited programmers know nothing more than Microsoft's latest products.

Mmmm. Bandwidth

I love my cable modem. I spend much of the day listening to Dublab on an 80k stream which is interesting.

Those of you who've heard me rant will know that I think Internet radio is a stupid idea. The reason I like this is that they tend to play my kinda music. The reason I think Internet radio is so silly an idea is proven through this. Judging by the number of people in the chatroom of Dublab, I'm one of very few people actually tuning in.

The future of online audio isn't someone else selecting music for you... The person who managed to convince the record companies of this will make a lot of money.

Hmmm... Blogger eh?

Well all this time I was going to get around to rewriting my random thoughts thingy in PHP3 myself as an exercise in learning. Course life gets too busy for non-work oriented learning. I need to learn it but I'll learn it doing something I get paid for.

So here I am, using someone else's code. Seems pretty cool though, this Blogger thing. Easier, anyway :)

Audio Sync and DXR3 Cards FAQ

Version 1.1 4th November, 2002

Getting audio in sync with the dxr3 card can difficult. The problem is that the video decoding can take a different amount of time than outputting the audio.

To start with, you need to understand how the dxr3 works with mplayer and xine. For MPEG 1 and 2 format video, the MPEG video data is sent directly to the dxr3 card and decoded in hardware. For other formats of video, the video stream is decoded and then re-encoded as MPEG and sent to the card. This means for different types of video you will get different delays in processing so the audio might run more or less ahead of the video.

For this reason you may need to try different methods for different video codec types and formats.


Here are some things to try to get your audio just right so that it doesn't seem like you're watching a badly dubbed kung-fu movie.

  • Make sure you're using the latest combination of dxr3 drivers and video player (xine or mplayer) as constant improvements are being made.
  • Check that it's not the video file itself. Many divx and other files found on the net can have poor sync internally. Make sure you're working with good sources. Try playing it to your computer screen (not through the dxr3) and see if that is in sync.
  • Try all the different audio drivers. I particularly find that the SDL driver can work better, which is odd but works. In mplayer: mplayer -ao
  • If you're using your computer's sound card, try using the dxr3 card's audio output instead. In mplayer: mplayer -ao oss:/dev/em8300_ma-0 (replace "0" with the number of dxr3 card you want to use.)
  • If you're running some audio server like artsd (KDE) or esd (Gnome), try playing without that and talking directly to the sound hardware instead.
  • Your machine might have trouble keeping up, particularly playing non-MPEG video such as divx. Try: In mplayer: mplayer -framedrop
  • Newer versions of MPlayer have some special options for sync with the dxr3. Try this for anything other than mpeg: In mplayer: mplayer -vo dxr3:prebuf:sync -vop lavc=1:29.97

    And for standard mpeg 1 or 2 (including DVDs): -vo dxr3:prebuf:sync

  • Experiment with delays on the audio. You should work with something very dialogue-based to test this. An episode of the West Wing works well. Again, make sure you're using a good video file. In mplayer: mplayer -delay (delay can be a floating point value)


Some AVI files have peculiar problems with audio sync which can be helped with the following options.

Use a non-interleaved AVI parser. Normally, audio and video are interleaved in the avi file, so you can read the file sequentially. For some broken avis, however, you need to read the audio and video stream separately. If you use this option and the file is badly interleaved, playing directly from a cd might be impossible, because your drive has to jump around a lot. In these cases, you have to copy the file to your harddisk first.
In mplayer: mplayer -ni

  • Some AVI files have broken headers and this can be fixed.
    mplayer -nobps
  • The audio can get seriously out of whack and to get it back in sync may require a more extreme correction than the default. Setting the maximum correction to something like three seconds works well.
    mplayer -mc
  • Finally, there are many, especially older avis out there (> 1.5 years) that have really fucked up a/v sync and even don't play right under Windows. If you get in contact with such a file, there's little you can do but look for a better copy.

Maintained by Simon Rumble

Thanks for the input from Michael Hunold.


Many years ago, my mate Martin introduced me to a Japanese tea style called Hojicha. It's made by roasting the leaves and twigs of the tea plant. The roasting gives it a distinctly nutty flavour, and removes most of the caffeine.

My friend Yasuyo from Tokyo stayed with us last week. She brought over a big bag of Hojicha for me. Yum! According to her, it's one of the cheaper teas and it's rude to serve it to a guest due to its cheapness. This one, apparently, is the most expensive one in her local tea shop. It's delicious!

If you know me, you probably know I like my coffee. These days, I drink one cup of coffee at home in the mornings (stove-top espresso using fairly traded beans


I've long harboured an interest in breadmaking. I eat a lot of the stuff and really appreciate the good stuff. When an old flatmate had a bread maker, I was very very happy. I'd always vaguely considered baking my own, but it always seemed like it would be really hard.

Well last week, thanks to the Nigella book Julie gave me (yes, the Domestic Goddess one -- that must be me), I made my first loaf. It was surprisingly easy and the results were delicious! I've since made a couple of more batches and it's really fun.

Mabye I'm a bit weird, but I do enjoy cooking and bread seems much less difficult to make and experiment with than I initially thought. The kneading by hand part isn't anywhere near as taxing as I thought. Ten minutes of actually quite therapeutic kneading and that's pretty much it. The only hard part is waiting for the dough to rise, which limits the times I can make it.

So now, as soon as I get hold of the ingredients, I'm going to try making some multigrain breads and the like. I think I might need a book just on bread making, particularly with regard to shaping.

One thing I'd like to try to make is sourdough. However I'd be a bit worried having lactic acid-generating bacteria in the house. Could end up contaminating my beer brewing, and I could do without a lactic acid sour beer...

Oh, and Julie, I guess I owe you a loaf of bread. I did say I'd make you something out of the book when you gave it to me.

Sustainable fish consumption?

Recently I've noticed a few guides to the fish you can sustainably eat coming out. There was one for the East coast of Australia recently, though I can't remember the link. This one covers the West coast of the US (via Boing Boing Blog).

Does anyone know of one for those of us eating fish in Europe? Probably be hard to pull together since nearly all fish here is frozen and comes from all over. There seems to be loads of Carribean fish, even. Obviously we must avoid cod, though it may be too late already for them.

One thing I have sworn off recently is scallops. The process of dredging for wild scallops completely destroys the sea floor environment. The farmed variety, like most seafood farming, has major problems with pollution, not to mention the nasty contaminants in the finished product.

It's a tough time to be someone who wants to eat more fish. But there are some things you can do.

Update: Just found this article from The Guardian which seems to supply the info I'm after.

Strawberry Tart Full Recipe

What is it about recipes that the moment I link to them, they disappear off the web? Well fortunately Google kept hold of this one, so I bring you the recipe, with my variations included.

Strawberry Tart

Strawberry Tart

Custard filling

  • 3/4 cup sugar
  • 1/3 cup flour
  • 1/4 teaspoon salt
  • 2 cups whole milk
  • 3 egg yolks, beaten
  • 2 Tablespoons butter
  • 1 teaspoon vanilla
  • 1/8 teaspoon almond extract


  • 1 1/4 cups digestive biscuits, crushed
  • 3 Tablespoons sugar
  • 1/3 cup butter

Fruit topping

  • 2 punnets of strawberries
  • Seedless strawberry or raspberry jam
  • Lemon juice


  1. For the pastry crust: Preheat oven to 180 degrees Celsius.
  2. Combine the crushed digestive biscuits, sugar and butter in medium-sized bowl. Stir until thoroughly blended.
  3. Press the crust mixture into a 10-inch tart pan.
  4. Bake for 8 minutes. Allow the crust to cool completely.
  5. For the filling: In a saucepan combine the sugar, flour and salt. Gradually stir in milk. Cook and stir over medium heat until mixture begins to boil.
  6. Continue cooking for an additional 2 minutes after it begins to boil. Remove from heat.
  7. Stir heaping tablespoon of hot mixture into the yolks, whipping mixture constantly. Repeat until 5 additional heaping spoons of the hot mixture have been added to the yolk mixture, stirring constantly. Immediately return yolk mixture to hot mixture, cook over medium heat for 2 minutes, stirring constantly.
  8. Remove from heat and stir in the butter, vanilla and almond extracts.
  9. Pour pastry cream into a bowl. Place a piece of wax paper or plastic wrap over the surface of the cream (so it does not form a skin) and refrigerate until completely cooled (can refrigerate for up to 3 days).
  10. Assembling tart: Wash and cut the strawberrys in half. Pour the custard into the tart crust and spread around evenly. Arrange the strawberries with the cut side down in the tart in a nice spiral.
  11. Heat a couple of teaspoons of jam with lemon juice until the jam is dissolved. Brush over the strawberries to give a glazed surface.
  12. Serve immediately.

Chocolate self-saucing pudding

This chocolate pudding makes it's own sauce and is delicious with cream or ice cream. The preparation time is about five minutes and the results are awesome. Perfect for a chilly evening when you couldn't be bothered making anything but have the munchies.

The only ingredient that might be a problem to find is self-raising flour. I had a lot of trouble getting the stuff in France and don't know the situation in other countries. Certainly you can get it in Australia, the UK and Ireland. This link is to a recipe to mix your own: it's basically flour and baking soda.

Serves 5


  • 1 metric cup self raising flour
  • 2 tablespoons cocoa
  • 1/2 metric cup brown sugar
  • 1/4 metric cup butter
  • 3/4 metric cup milk
  • 2 teaspoons vanilla


  • 1 tablespoon cocoa
  • 1 metric cup brown sugar
  • 1 3/4 metric cups boiling water


  1. Place all dry ingredients into a mixing bowl and make a well in the middle. Add remaining ingredients and stir until well combined.
  2. Pour into a large greased casserole dish.
  3. Mix cocoa with sugar and sprinkle evenly over the pudding mixture. Pour boiling water over evenly and gently.
  4. Bake at 180 degrees C for 45 mins or until cooked. A delicious sauce will form at the bottom of the pudding.
  5. Serve hot with cream or ice cream.

If you want to get tricky with this recipe after a few goes, you can easily add fresh or tinned raspberries, blueberries, or other fruit, or try choc chips. Keep the other ingredients and sprinkle on top after the sauce just before you put it all in the oven.

Yummy strawberry tart!

Strawberry Tart

I made a delicious strawberry tart on Saturday, pictured here. The recipe I used was this one with the refinement of turning the strawberries the other way and glazing them with a mixture of hot lemon juice and seedless raspberry jam. This recipe specifies "Graham Crackers" for the crust, which are some yankie thing. I used digestive biscuits which worked fine.

The verdict was very much positive. Which is more than can be said for the UK's entry in the Eurovision Song Contest we were watching...