DIY digital spirit level

A simply digital spirit level using a LIS302DL accelerometer from nkcelectronics coupled with a seeeduino for processing and a 2x16 character LCD display for output.

Sketch is available for your convenience. Note the Sketch includes an extra feature: PWM backlight on pin3.




RIP DSE, Greetings Futurlec

Dicksmith Electronics is dead to me now. Dead as a door nail, dead just like Tandy.

When I was growing up, Tandy and DSE were the two places I went to get my electronic parts and information. The Engineer's Mini Notebook series and Getting Started in Electronics sold at Tandy were treasure troves of tips, tricks, and insights. The best thing was of course I could buy nearly any component mention in the book at either DSE or Tandy.

Those days are no longer. Tandy degenerated into a specialised consumer electronics retailer long ago, and now DSE has suffered the same fate. Take for example my wasted journey to Burwood DSE: I had searched on DSE's website for some pin headers, and was inform Burwood store had them in stock. 30 minutes later I was there, and lo and behold: they no longer have an electronics section. Only a few years ago I would frequent Burwood DSE because they were the only component retailer I could reach with relative easy by public transport. Now there is nothing but the shiny and vacuous desert of electronic bling.

How the mighty have fallen.

Currently Futurlec is my supplier of choice. Not only do they have reasonable prices, they also have a fantastic range of components, boards and hardware, a better range than Jaycar with a easier to use website too.

I am torn to use Futurlec - Jaycar has been an excellent business in encouraging the next generation to get into electronics, and I really want to support them. But their website leaves much to be desired, and their range in recent years has been slowly been invaded by consumer electronic bling. Will Jaycar fall like Tandy and DSE before it? Maybe if they stayed out of the hands of the Woolworths...




2x16 character LCD displays

2x16 character LCD displays can be tricky beasts. I got mine working today with my seeeduino (an arduino compatible board with more awesome), and really wished I had known that:

  1. The contrast pin needs to be in the same power network as the power and ground pins. The contrast pin at 0v provides highest contrast, which means you can probably just ground it normally.

  2. The timing between LCD driver power up and commencement of device programming appears to be important. I had the LCD power independently, and this gave me garbage on screen. When the LCD shared the same power supply as the seeeduino everything worked perfectly.




Safety fail

Apparently only the hosts need safety screens




Dear Steve Conroy,

You can’t be serious.

You wants to filter all Internet connections now, without the option of opting out?! You want every Australian to be on a list so you can see who is “naughty” and who isn’t?!

You can’t be serious.

You wants to filter all illegal material on the Internet?!

You can’t be serious.

How on earth do you propose to classify the contents of more than 181,000,000 websites (Sept. 2008, Netcraft)!? Assuming a government worker can classify a site as illegal or legal in 1 minute, that person will have to work non-stop every day for 344 years to classify 181,000,000 websites.

You can’t be serious.

How on earth do you propose to even filter that many sites without rendering the Internet useless?!  

You can’t be serious.

How can we be sure the site blocked really is illegal, when we can’t access it!? How do you stop the system from abused? How do you correct the system’s mistakes? Why isn’t any of these described in detail?!

You can’t be serious.

How on earth are you planning on preventing people from circumventing your flitters using encryption?!

You can’t be serious.

Get a fucking clue Steve Conroy. The Internet doesn’t work like that. You have a background in the broadcast industry, and the Internet is nothing like it. You should leave technical decisions to people who know what they are talking about and stop pissing off every Internet literate Australian.




For shame Dr Hearnden

"...Why should small business take a hit for a public health measure?" -- Dr Hearnden

I am amazed a doctor of all people would utter such capitalistic remark.How can a doctor question whether or not it is in the business' interest to improve public health?

Businesses derive their income from the public, and a healthy public is more capable of providing income to businesses. The only businesses which benefit from an ailing public are medical clinics. This leads to me to think Dr Hearnden belongs to a special class of doctors who prefers to make money from treatments rather than from cures. In other words, putting profit before his patients.




Some people are going to hate me for this

But you can get the current function's name by using:


Seems to work alright for debugging purposes. See the link embedded in the title for the origins and 3 other methods.




Electronics, it gets the heart pumping

There is it, the new current limited H-bridge for my team's SUMO entry. Put it together this afternoon, and will be mounted on a piece of perspex (which I forgot to bring home) and then mounted on the robot.


  • Numbered of times chickened out of short circuit test: 4

  • BPM while testing: 100 (estimate)

  • Short circuit current: 8A

This is basically 2 MOSFET H-bridge each powered by a LM138/LM338K rigged with 150/150K for R1 and R2 respectively, providing ~13.5V.




A relatively pain free Linux/OS X VNC setup

Ever since I got my 2nd monitor, I been using VNC to work on my laptop. Leopard's inbuilt VNC server isn't really VNC compliant, and has many issues when used with a normal VNC client. I have found Vine server to be an excellent replacement. The client side is a little interesting. RealVNC didn't work too well for me, in that often the screen would stop responding, or it would not receive key events. The best setup I have found is to use tightvnc with the following Vine server settings:

  • Devices

    • Keyboard Layout: US

    • Keyboard Events: User Session Events

The client and server will happily share the clipboard if you enable it. Settings are accessed via F8 in the client, and via Preferences in the server. The client is smart enough to synchronise clipboards only when it loses focus - which would be you switching away to say, paste a url into firefox. All in all it is a fairly painless experience.




iwconfig not setting essid?

If iwconfig wlan0 essid blah is seemingly not working when connecting to a open wireless network, then try

  1. iwconfig wlan0 essid blah

  2. iwconfig wlan0 key open

  3. iwconfig wlan0 enc off

The above seems to work for me by turning off encryption. It would appear with encryption enabled, iwconfig won't work for a open network because of some magic or other. If it still doesn't work, then try stick the above in your /etc/network/interfaces and prefix the commands with "wireless-", like so:

allow-hotplug wlan0

iface wlan0 inet dhcp

wireless-essid blah

wireless-key open

wireless-enc off

Hope this help some people, it drove me nuts!




grub, xfs, debian

Running grub-install with a XFS partition will likely fail - there is a reason lilo is used when XFS is root! The issue is grub-install creates the stage files in /boot/grub, which grub then expects to find when it accesses the disk directly using its own file system drivers. For most file systems sync is sufficient to force this to be true, but not with XFS - unless grubs's XFS drivers replays the journal, grub won't find the files. The detailed why of this is covered in this thread. To get around this, one needs to effectively replace sync with mount -r -o remount /; mount -w -o remount /. A quick a nasty way to get grub going with XFS partition is as follows:

  • init 1 # need single user mode to be able to remount root

  • cp /usr/sbin/grub-install /tmp # make a copy of grub-install to butcher

  • vim /tmp/grub-install

  • # now butcher grub-install as follows:

  • # 1. find the line that says "Sync to prevent GRUB from not finding stage files

  • # 2. deleted everything after sync

  • # 3. add exit 0 after sync for good measures

  • /tmp/grub-install # invoke our amputated grub-install to just produce the stage files

  • mount -r -o remount / # flush everything by mount as read only

  • mount -w -o remount / # remount since grub needs it to be rw

  • grub # invoke the grub shell

  • root (hdx,y) # manually specify the disk x partition y where /boot/grub/* is located

  • setup (hdx) # install grub into the disk x's MBR. DO NOT specify a partition number, XFS's sector 0 is NOT reserved for boot loaders!!

  • quit # exit grub

  • reboot # should work now




R18+, do want

Perhaps I am naive, but I expect those people in Government to have some resemblance of intelligence and be able to apply this very useful thing called logic. Michael Atkinson obviously isn't one such person. His recent reply to the demand for R18+ classification for Electronic Games [1] demonstrates a lack of intellect and foresight.

Firstly, Michael Atkinson can not see how have R18+ classification would a) stop parents from making bad choices and b) stop children getting hold of a game for their friend of sibling. Lets address these one at a time. Point a): MA15+ doesn't send a strong enough message to parents. If you are allowing children to purchase these games in the company of a parent or adult guardian, you are not sending a clear strong message that such games are not for children, at all. R18+ classification is a very strong message: these are prohibited to children, and it is illegal to make it available to them. Even the minimally functional or responsible parent will not purchase pornography for their children, and even the most apathetic cashier will not sell R18+ material to a minor. R18+ classification, if it existed, would an unmistakable message: DO NOT SELL OR EXPOSE TO MINORS.

Point b) can’t be any simpler. No cashier who wants to get paid, and no business which wants to stay in business, will sell to a child. If a child can not get hold of a R18+ game, it makes it impossible for said minor to get hold of it for their friends of siblings.

Secondly, Michael Atkinson believes introducing R18+ classification will increase the amount of inappropriate material for sale, and this will mean increased exposure of children to such material, since more of such material is for sale. What Michael Atkinson fails to realise is that introducing R18+ classification increases the volume of inappropriate material only very very slightly, while allowing the current volume of slightly less inappropriate material, namely games with MA15+ classification, to be reclassified as R18+ and thus have their exposure to children significantly reduced. Further, MA15+ restrictions only apply at the point of sale - it places no restrictions on whether the game must be played in the presence of an adult. R18+ classification will make it illegal to for a child to buy and play games considered inappropriate. In not having a R18+ classification for games, the Australian public is being done a disservice whereby the most restrictive classification is trivially circumvented.

Michael Atkinson then touts statistics like 79% of Australian house holds have a gaming device, and 62% of these Australians say classification of games has no influence on their buying decision. Seemingly solid statistics against introducing R18+ classification, except it is never mentioned which of these households have children under 15 - a household where all members are over 15 would care little for the classification of games they purchase. Further, given the current classification scheme’s weak delineation of games, it is not surprising that people ignore them.

The “violent games make violent children” card is of coursed played too. This is of course true - to say children is not affected by violent media would be a blatantly lie. However, the effect of violent video games compared to violence in television and magazines is not provably more or less. Michael Atkinson’s concerns are valid, but they are no more or less than concerns of any parent when it comes to violence in the media. If it is the basis on which Michael Atkinson voting against installing a R18+ classification, then I trust he is equally hard at work at removing R18+ classification for all other media as well.

Michael Atkinson then gives several examples of games that would supposedly be available under R18+ classification featuring strong themes of drug use and abuse. Ignoring the fact that thus far he has been arguing video games are bad because they lead to violence, there are two problems with this assertion. One is how Michael Atkinson knows these games will be classified under R18+ classification, when no such classification yet exists; and two, why we can’t demand the games be modified to fit R18+ or alternatively refuse classification of such games. Michael Atkinson suffers from the common fallacy that R18+ classification equates “anything goes” This is demonstrably false, as films have X18+ classification, and some films are still refused classification. Having R18+ classification does not rob us of the power to refuse classification for inappropriate games - in fact it only gives us more power to restrict exposure of such games to a greater degree than current classification scheme allows. This is especially true when Michael Atkinson says “What the present law does is to keep the most extreme material off the shelves” - R18+ classification will still allow the law to keep the most extreme material off the shelves.

There are several more flawed arguments in Michael Atkinson’s letter. One is the argument that if games can be made into MA15+, then obviously there is no need for R18+ classification. This is akin to saying that just because any film, television show, or magazine can be modified to be rated G, there is no need for anything over G. Another is the argument that film classification is different to video game classification because the age of moviegoers can be regulated. This is a blatant lie. The age of moviegoers is as well regulated as the age of video game purchasers, and just as ineffective. The only time when age of moviegoers is “well regulated” is when the film carries a R18+ classification. Michael Atkinson further differentiates film and games because “Access to electronic games, once in the home, cannot be policed and therefore games are easily accessible to children”. At this point I don’t know whether or not he is being serious - film classification extends to films on DVDs and on TV, where access in the home also cannot be policed.

Michael Atkinson expresses dissatisfaction with the current scheme - “I do not consider that allowing a child to play an MA15+ game is reasonable given the content set out in the National Classification Code...in South Australia effectively that does not prevent such a classification being purchased for the child or with the parent’s (or guardian’s) permission. It also does not stop a child from borrowing a game from another person or family member” What is stunning about this admission is that this is a problem which is helped by introducing a R18+ classification and reclassifying the more extreme MA15+ games as R18+ games. It would prevent such games from being purchased for a child, and it would make it illegal to lend or expose such a game to a child, say by allowing them to watch while you play. Even more amazingly, Michael Atkinson says he will “consider the merit in preventing MA15+ games to under 15 year olds, even with guardian or parental permission or assistance”. If he added another 3 years, he would effectively be considering R18+ classification to games.

Michael Atkinson in short presents no coherent or solid argument against R18+ classification for games. Despite his claim his decision was not conservatism for the sake of conservatism, it is precisely that - there is no more conservative argument than censorship “protecting the children”, and in this case, the children and vulnerable adults, whoever they are..




Cost of leadership

There is a lot of complaining over the Federal Government’s various schemes to reduce our carbon emission. Some of these are valid concerns, yet others are nothing more than short-sighted yapping of the unwashed. Here is a typical example of such a thing:

“if Australia cuts or carbon emissions by 50% it will not make any difference either as we contribute 1% and China and India are growing at a rate of 10% per year. They produce more Carbon in a day then we produce in a year. So why are we going to destroy our economy exactly again?”

This typified the majority opinion in my encounters with the Australian public online and off. It shows a marked lack of foresight and more than a little scare mongering. Firstly, our economy is hardly going to be destroyed because of emission trading. The European Union Emission Trading Scheme (EU-ETS) was implemented in 1st of January 2005 with the then 15 countries of EU as participants. Today 23 EU [1] members are participating in EU ETS. Do you really think the number of participants of EU-ETS would increase if emission trading destroyed economies?

So why should we implement emission trading when China, India, and the rest of South-East Asia (SE Asia) account for so much of the world’s carbon emission? The answer is two fold. First is the fact we are a First World country, an Enlightened Society, a World Leader. If we don’t do what we can do cut back on carbon emission, then how can we expect developing countries like China and India to do so? Secondly, countries like China and India have such large manufacturing bases because of us. First World citizens demand and consume products which are produced in factories based on South-East Asia. It is our demands which creates industries in in SE Asia, our demand that China and India account for such large percentage of global carbon emissions. United States of America emits more carbon dioxide per capita than any other nation, followed by Saudi Arabia and you guessed it, Australia [2]. In other words, Australians are the world 3rd largest carbon dioxide emitters. So when you combined add two and two together, it becomes absurd to suggest we simultaneously demand cheap products from countries like China and India and that they cut back on carbon emissions, while we do nothing ourselves.

The Kyoto protocol is often branded as a toothless tiger because of lack of political will. Yet when political will is exercised, the masses complain about the cost. Wake up people of Australia - only First World countries like ours can afford to exercise political will on such a scale and on this subject. As consumers we are the ultimate cause of carbon emissions, and as a world leader we need to be the ones who take the first step. Emission trading will cost us - see it as the cost of leadership, the cost of doing something proactive to ensure our future on this planet. If we balk at the cost, then we are in no position to ask China or India to cut back on their carbon emissions and absorb the resulting losses.



unoffical libfg repository

I have set up an unofficial git respository for libfg patches and new swig generated python interface, as Gavin Baker (the author) appears to be busy with other things. This is a maintance only repository as far as libfg goes - I don't plan on adding any more features (since all the ones I need are there already). I will however work to produce a more pythonic interface to libfg, as the swig generated interface is a straight port of C api into Python.

Currently the repository contains the following fixes and enhancements:

  • RGB565 and RGB555 patch by Adalbert Prokop

  • fg_new_compatible_frame patch by echoline

  • mmap fix by me

  • swig generated Python interface by me

If you have a patch against libfg, please post it at the libfg project's page first, and then to me if Gavin does not respond. I do not intend to take over development of libfg, and it is my hope Gavin will in the future make this obselete/redundant.




Evolution of a circuit layout

Half way mark to a 4 channel motion controller. Version 3 of the layout seems to work well and was relatively easy to duplicate by eye. In fact I hardly used the schematic at all.

The new lead free solder (1mm) I am using is much too thick for my liking, I ended up using more solder than I normally would, and made some unintentional bridges which caused problems. That and one of the diodes were wired in reverse.

I really need to find some sub millimeter lead free solder - no one seems to stock them here in Australia :-|



Another holiday, another webapp

Thats right, another webapp! This time using google's app engine, so feel free to abuse it, somewhat :P

Rank'em is its name, and it basically lets you create a collection of Things then allow other people to rank each Thing against each other, producing an overall ranking of Things.

Have fun and let me know what can be done better.




Sports isn’t the only thing we are good at

From the website:

“StarStuff is ABC NewsRadio's flagship Astronomy, Cosmology, Space and Science program. “

It is hosted by Stuart Gary and it is the only public program on TV or radio which is dedicated to science.

And it is about to be axed to make way for a 30 minute program about sport.

Now as Australians we are justifiably proud of our sporting prowess, but with more than 700 hours of programming on radio and TV already dedicated to sports, do we really need to replace a 30 minute show about science so we can find out more about sports?!

This country is bemoaning the lack of skilled workers and slumping enrolment in engineering and science , wringing its hands about the “brain drain” where our best and brightest go overseas to work - and here we are replacing the only dedicated science program available freely to the public with a sports program.

Australians are not just great sportsmen, we are great doctors, engineers, and scientists too. But if you were to read the news, watch TV or listen to the radio, you would be hard pressed to find evidence of this.

As a nation we need engineers and scientists working in this country to progress into the future. To do this we need to inspire children to be interested in science. We need to get the public interested in science and make it OK to be interested in science. The most effective way to do this is to make make science accessible. StarStuff does this all by its lonesome in the sporting crazed landscape of public programming.

So please please please the Powers That Be, at the very least save StarStuff. Expanding it wouldn’t hurt either.




Personification of Programming languages 2

An follow up on the last round of language personifications, this time contributed by brett.


The crazy party girl you meet at Uni; she's easy to get along with at the beginning; she reminds you of other girls you've known before and hey, its a bit of fun; you're only young once. But after knowing her a few months the cracks begin to show; she's pretty inconsistent and while she tries to do favours for you and help you out, she ends up making it more complicated than it needed to be. The whole time you're with her, you have this sneaking suspicion that maybe you'd be better off with Perl, even if she's harder to speak to.


The late bloomer; in high school she was pretty dorky; she couldn't do very much and while she might have spent time in different social circles, she could never really fit in. But now the puppy fat has dropped away and she's revealed herself to be one hell of a girl. She can do things you never would have expected a few years ago and suddenly she's the life of the party, appearing in places you never would have expected and doing things that make your jaw drop.


The fat chick you picked up at that party, only because you were drunk and horny. You'd never tell your friends about it, but it got the job done, so to speak.


Your first girlfriend in highschool. You were so nervous you didn't even end up kissing.

Many thanks again to brett for sharing these with us :-D




Dark ages all over again

Take the article linked to in the topic, and replace "paedophiles" with "witches":

Victorians rally for more public info on witches

Posted 5 hours 28 minutes ago

More transparency: hundreds rallied in Melbourne today. (AAP Image: Simon Mossman)

Hundreds of people rallied in Melbourne today, calling for the Victorian government to give the public more details about witches who have been released from jail.

The Crime Victims Support Association wants the government to set up a public register, that will show how many convicted witches live in a particular suburb or town.

Spokesman Noel McNamara says similar systems work well overseas.

And he says under the current Victorian system, children may be in danger.

"This way, just let them go out, they can be living next door to kindergartens they can be living next door to you," he said.

"We just think it's wrong the way it's doing."

He says he wants the Government to come up with a map that shows where witches live.

"We don't want to know their names, we just want to know where they are, what areas, to give the people a fighting chance to look after their children down around the swings and schools and mainly to protect the children," he said.

Its the god damn dark ages all over again. Please people, think of the consequences! It is very easy to be convicted of "kiddy fiddling", very hard to prove yourself innocent - it should not be a death sentence. While they are not asking for names, it would be very easy to deduce who is in fact the person being mapped. Such a map will also sow distrust into communities everywhere. Do we really want witch hunts and vigilante justice group active in our society?

If you believe pedophiles can not redeem themselves and can never be trusted, then push for life sentence for the crime. Otherwise allow them the chance to better themselves and become a useful member of society.






Tim Blair is a moron

Why would Keating (who has accomplished one or two things despite his educational handicap, such as becoming the prime minister of Australia) envy academics, massive faculties of whom by and large accomplish nothing and who these days aren't even allowed to feel up first year students?

Says a man in the 21st century. Grow the fuck up.

Think of it this way. At school, the slow kids were made to attend additional remedial classes. The super-slow repeated entire years.

What, then, are we to make of people who require four extra years of education beyond high school before they're ready to face the world?

These people require four extra years of education beyond high school before facing the world because their profession demands it. Unlike Tim Blair who does a piss poor job of forming an opinion, and whose job has no real world consequence other than exposing him for the idiot that he is, these people have real world responsibilities like how to build a bridge that doesn't fail. It may come as a surprise to Tim that there are harder jobs in the world then being a 3rd rate opinion columnist.

Take it a step further. What of those who remain at our institutes of remedial learning for their whole adult lives?

Those people who remain academics are laying the foundations for the next generation and for our future, unlike Tim Blair who is destined to balther his feculent rhetoric forever and ever.

I am not going to bother with the rest of the article - it is full of drivel and and Time Blair's usual self-righteous arrogance of how much better he is. Get an education you moron.




{} I <3 thee

Firstly, I am the kind of guy who likes tabs over spaces, because I don't like forcing my particular preferences on to other people. To wax poetic, I like to give other people the freedom of choosing how they want their code indented. This of course brings me into the firing line of python programmers, for whom the 4-spaces-per-indentation-level is equivalent to the Ten Commandments handed down from Mount Sinai. Officially, python doesn't care, but thats like saying officially the Church accepts evolution.

I was editing a working python file written by some one else today, and wanted to convert it to tabs (yes yes, I know all about leaving files as I found them etc. Silence). So I ran unexpand -t 4 on the file. This simply replaces 4 spaces with one tab. This should have given me a working and correct python file though now indented with tabs. Naturally (Moore's law and all) this is not happened. The newly tab-indented file was riddled with errors because the original file was not indented properly so the simple conversion did not work. And as I go about fixing the errors python threw at me, I realised to my horror that information about the structure of the code was corrupted. Because python interprets code structure based on indentation, if your indentation is incorrect, your code is incorrect.

In comparison, a brace using language like C would have made the corrections trivial, because the braces explicitly specify the code structure. Python's argument that everyone indents anyway and thus braces are redundant is flawed - braces are not redundant because braces represent the separation of content from presentation, something that has been hammered into developers. In ignoring this, python has allowed a new class of errors - changing the appearance of code will now change the function of the code. I really can't see how this is a good thing.

If nothing else, python's integration of presentation and content, and thus presentation and program correctness makes it a far less robust language than brace using languages. Less robust in that a mangled python file is unrecoverable unless you actually read the code to figure out its structure, and that incorrectly transcribed python will likely run anyway with no syntactic or runtime errors.

Consider for example, the following code:

for n in names:

If you were transcribing the code and accidentally did not indent bar(n), the code now does something complete different yet no syntax or runtime error will be thrown. Now if the above code used braces, then it would have no effect. And if you forgot the brace, a syntax error will be thrown.

To be fair, python is a lovely language, and I do love it and use it extensively. Whitespace-as-syntax stance appeared at first to be a great idea, and one which now appears to be short sighted and naive. If nothing else, at least an interpreter which disallows incorrect space-indent files, that way tab->space and space->tab conversions would work correctly all the time.

Let me now put on my flame retardant undies, and you can flame away




Earth Hour haters strikes back

Earth Hour was today at 8pm. I turned the lights off, and happily gamed away in the dark. Not many people appreciate the point of Earth Hour, one of them is Tim Blair. I came across his "opinion" page in the paper today. I have to say it is one the more short sighted, idiotic, and crass piece of "journalism" I have ever read.

Tim thinks that lights makes "makes dangerous places safe." That is true, to a point. Flooding an area with light just creates deeper and more numerous shadows for criminals to hide in, and also make their evil doing easier when no one is looking. Earth Hour isn't against lighting, its against the overuse of lighting. Tim Doesn't Get It.

Tim complained that USYD was closing streets so they can turn off the lighting for those streets. He argues that if you can't use those streets safely in the dark, then the lights are essential and shouldn't be turned off, and somehow USYD is sacrificing safety for Earth Hour. The problem with this argument, is that there are a hundred different ways to get from A to B inside USYD. Tim doesn't seem to knows this and we must forgive him - he probably never been to USYD. Now if you have a hundred ways to get from A to B, do you (a) light every single one of them or (b) light the main thoroughfares which most efficiently utilises light? Tim would have us choose (a), while USYD and Earth Hour chose and advocated (b). Tim Doesn't Get It, and we need to forgive him - he is probably scared of the dark still.

Tim asserts that Earth Hour is against progress and freedom. He thinks that Earth Hour is against the technology that lets us have electric lighting, and thus against technological progress. And since Earth Hour is apparently somehow forcing everyone to do its bidding, its freedom. Tim must be a card carrying, foil underwear wearing, paranoid conspiracy theorist to be able to draw conclusions like this. I will just repeat again that Earth Hour isn't against lighting, but against overuse of lighting. Tim Doesn't Get It.

Tim reckons the symbolism of Earth Hour is empty and meaningless. For an apathetic like him, I would say everything is empty and meaningless. The kids who ran past my house yelling at my neighbours to turn their lights off though, well Earth Hour means plenty to them. The point is to raise awareness of the fact that 1. we don't need so many lights to get by 2. night and darkness isn't something to be afraid of. Evolution has taught us the night is dangerous, and light is good. But we are no longer living in the wild amongst tigers and leopards and other fear some creatures. How about we embrace our environment and the beauty of heavens? Over come your fear of the dark Tim, and I checked under your bed: no Swedish nurses, werewolves, Milton Orkopoulos or a prowling moonlight delegation from the Wollongong ALP. Really.

At this point I confess, I am tired of Tim's feculent words. He likens Cate Blanchett's theatre to the Scary Countries (read China and Cuba, apparently Tim is stuck in 80s where these countries are still boggy ean), and then accuses wax companies of setting up Earth Hour so they can sell more wax. You can read his tirade yourself, but don't say I didn't warn you.




eeepc, likes and dislikes


  • nice and small

  • all the hardware works, including sleep/suspend

  • runs debian based OS by default

  • can run an external monitor at decent resolution


  • uses fastinit which only boots into single user mode, so user "user" is always logged in. Endless frustration playing with X11 startup in vain to get a multiuser login screen
  • when kmixer shows a speaker with a cross on top, it means built in speakers will be used. When it is a speaker with no cross on top, it means headphone jack will be used. Talk about counter-intuitive.

  • keyboard truly sucks




esd and esdrec under OS X Leopard

If you try to use esdrec under OS X, you will find it will simply exit with the following printed to stdout:

usage: program_name [address][:port]

The reason for this is because libesd checks for ipv6 capabilities and if it is present will use it. It prints the above message when it can not connect to the specified host via ipv6. Strangely enough, the default host is "localhost" which is just another name for the ipv4 address of The solution is then to tell esd to bind to ::1 and to tell libesd explicitly to connect to ::1 as well. Thus you need the following:

esd -tcp -bind ::1 &

esdrec -s ::1 | <whatever>




Cyberpunk - get it right damn it

I have been reading the Whole Wide World, and I am finding it difficult. It is not that the plot is boring or the characters uninteresting, it is the mere fact the author gets the technology wrong. It means I can cruise along with the main character, immersed in the world for a few pages, and then bang! A technical mistake strikes you between the eyes and you are left reeling, wondering why the author hates you so.

A good example of this, is when the author writes all the links are returning 404 because the server has been trashed. But 404 is an error code sent by the server!??!#$@$%@#$^@$%& Is it really so difficult for a publisher to get someone who has an ounce of clue to proof read these cyberpunk novels before hand?

Errors like these are excused in movie because of the medium, but in books I really really can't accept them with the same zen like calm and detachment and allows me to enjoy movie riddled with 3D graphics and large text boxes saying "ACCESS DENIED". So please for the love of god and the cyberpunk genre, get a clue about the subculture and technologies behind the Internet before setting a story in it. The cyberpunk genre deserves as much attention to detail as historical fiction and hard science fiction (diamond hard, like Schild's Ladder by Greg Egan), so please give its due and allow readers like myself enjoy a smooth satisfying ride.




Science, its not part of economics

The Australia 2020 summit is a great idea, but at the same time it goes to show why Australia isn't a great country for developing revolutionary technologies or making breakthroughs in science. There are 10 special interest groups in australia2020, and not one of them dedicated to Science/Technology. Sure it is within the scope of the Economics interest group, but only in the context of keeping and attracting highly skilled people - and throwing more money at them, the economics solution, isn't going to cut it.

This illustrates a fundamental problem within Australia - the economics driven agenda. We are not willing to do science for science's sake, nor develop technology which don't yield economic returns. Our universities are ran like businesses, responding to what business of today want, not what the world of tomorrow demands. As a result, most of what we do is refine current methods and ideas to increase the bottom line. Short term economic gain rules our thinking, blinding us to the shining prospects in the future.

No one body can be blamed for this. It is a fundamental attitude that needs to be changed from the bottom-up. Our government and universities needs to fund projects and courses that are revolutionary, support educators who are willing to explore new ideas and directions, and not merely respond to economics developments around the world, but act decisively to anticipate future trends.

An example of anticipating the future is MIT's Centre for Bits and Atoms. They are not reacting to the digital divide, but anticipating that it will heal itself and acting to anticipate a future where everyone has access to the internet and what it means for personal fabrication. To this end they have facilitated the development of fab-labs where one can make almost anything by manufacturing custom parts in one-off quantities. This is the kind of revolutionary technology Australia needs to nurture and develop in order to become a country to scientists flock.

Until then, we can only hope that those chosen for the economics specialty group realise this also, and push for an Australia whose science and technology centres are places where the future is built, not just places to making better mouse traps.




Allow only virtual users to login to proftpd

Locate the AuthOrder line in your proftpd.conf and change it to:

AuthOrder mod_auth_file.c




Programming 16F84As with piklab-prog and JDM programmer

Finally got around to using piklab-prog to program my surplus 16F84As. The command line options are a little confusing, so here is what I used:

piklab-prog -d 16F84A -t /dev/ttyS0 -p direct -h 'JDM classic' -c program led_test.hex

For some reason there is a hardware option which doesn't work for me and is not documented in the man page. piklab-prog seems to magically detect that I am using a JDM classic programmer, so all is well :-)




Finally, PIC under Linux made Easy

I have been looking for software to work with my PIC-PG2 programmer under Linux for a while now. Previously I have been using windows and PICPROG which while nice, still involved messing with windows and stuff. The situation back then (around 2006) was bleak - there were no up to-date and actively maintained Linux software for PIC developers. Now there is.

PikLab is a fantastic piece of work which does for Linux what MPLAB does for Windows. Big thanks to Nicolas Hadacek and Alain Gibaud and all contributors for producing a much needed piece of software.




YAITM - Yet Another Incompetent Telecommunications Minister

It seems a competent telecommunications minister is hard to come by in Australia. Our new telecommunications minister, Senator Conroy,recently demonstrated that he does not understand a) the Internet; b) freedom of speech; c) the concept of the slippery slope.

Firstly, Senator Conroy’s lack of understanding of the Internet:

Senator Conroy says it will be mandatory for all internet service providers to provide clean feeds, or ISP filtering, to houses and schools that are free of pornography and inappropriate material. - ABC news, 31/12/2007

I would like Senator Conroy to explain how exactly ISPs are going do the above for sites which feature mixed content, such as many forums and discussion boards, youtube, and many other sites where content is primarily generated by users. If a discussion board is white-listed, what happens when inappropriate content is posted by a rouge party? There is no technically feasible way to block content on a per-page basis because of encryption and the difficulty automatically classifying content. For example, how can software tell the difference human anatomy and pornography? Further, the Internet is not just websites. There are non-http traffic such as IRC, bittorrent, newsnet, p2p, MSN, jabber, etc. How are ISPs expected to policy those?

Secondly, freedom of speech, a concept which the Senator does not appear to comprehend:

"If people equate freedom of speech with watching child pornography, then the Rudd-Labor Government is going to disagree." - Senator Conroy

Here Senator Conroy equates freedom of speech with watching child pornography, then declares that since child pornography is evil, freedom of speech must also evil. This technique is called a Strawman Argument. It is at best a misleading way of arguing a point. Freedom of speech in no way justifies nor sanctions the creation or distribution of child pornography. Freedom of speech is not a free ticket to anarchy. I would have imagined a Senator would know this. In addition, Internet filtering you can opt-out of can not combat child pornography. Those who are going to look at child pornography are either going to a) subvert the system; or b) opt-out of it. Despite the fact Senator Conroy is using child pornography as a justification for censoring the Internet, it will do nothing whatsoever to curtail child pornography.

Finally we come to the slippery slope which Senator Conroy is happy to slide down:

"Labor makes no apologies to those that argue that any regulation of the internet is like going down the Chinese road," - Senator Conroy

If Labor is making no apologies for going down the Chinese road with regards to Internet filtering, what else is Labor not going to make apologies for? Will Labor also make no apologies to those who argue that governments which do not listen to their civil liberty groups’ concerns is heading down the despot road?

The Senator is, despite his failings, a politician. He is not without his tricks. He seeks to placate those of us concerned with our civil liberties both now and in the future by allowing us to opt-out. Except opting-out means our names end up on a list somewhere, a list some people will interpret as a list of naughty-people who look at naughty-things. Further, it creates a state of affairs where the average citizen only has access to parts of the Internet allowed by the Government. In North Korea a similar state of affairs exists, bought on by decades of suppressing free press and communication. It has led to the citizen of North Korea to regard their oppressed and dreary lives in a third world country the height of human civilisation, a paradise on Earth. Are citizens of Australia so trusting of the government that we will accepted censorship without seeing what is being censored first?

All in all, Senator Conroy is Yet Another Incompetent Telecommunications Minister. I wish that just for once the Telecommunications Minister has a degree in engineering. Then perhaps he or she will understand the futility of attempting to censor the Internet.