The Myth of the Muttering Madman is a project in self-realization.

Tuesday, November 20, 2007

Uni is done

Uni is done. Finished. Kaput. Finito. Finis. Totally brilliant feeling. Sat my last exam this morning. Let's hope I pass everything :D I don't want to have to travel back from New Zealand to sit supplementaries!

Monday, November 19, 2007

Amazon Kindle

Reckon you could read Proust or Dostoevsky on this thing?

Financial challenge

How little can I live on in a week for basic living expenses? With increasing salary over the last few years, the amount I live on per week for simple things such as food, daily coffee, transport etc has blown out to well over $250/week. I'd guess that at least $200 of this amount goes to food. I eat out too much, buy too much alcohol (bottles of wine with meals is yummy, but very expensive), and buy too much coffee at the nearest barista.

The challenge is to see how little I can spend on necessary living expenses such as food, travel etc. The new job I'm starting soon will pay all living expenses, so I don't have a motivation to make this as small as possible. Instead I'll see how little I can spend on other things like holiday travel on the weekends (in NZ yeah!) and other day to day expenses. It's unrealistic to do this for a prolonged period of time, so I'll just start at a week and see how many weeks I want to do this for.

This starts tomorrow so I'll post the first set of results in a week.

1 day to go

This time tomorrow I will have sat my last exam for my undergraduate degree. I'll finally have finished my Bachelor of Science (Major Comp. Sci, Minor Physics). Qualified for a life of learning (not that anyone needs a degree for that!).

Then it's off to New Zealand in a week to take up a contract down there. First time working overseas as well. There are plenty of changes afoot!

Sunday, November 18, 2007

Kevin 0x07

If Rudd wins the Australian federal election next Saturday he'll focus immediately on 5 major policy items, according to an article titled Rudd's winning plan in The Sydney Morning Herald. I want to focus on the 3rd item, and in particular the plan Rudd announced earlier in his campaign about providing every child in highschool with access to their own personal computer at school.

I think every technologist and anyone who is even vaguely interested in our freedom to use technology in the way we see fit, or anyone who is passionate about the technology their kids are using and learning about in school needs to do something to encourage the potentially new Labour government to think seriously about investing in free and open technology.

Software is the heart and soul of the technology we are surrounding ourselves with. iPods, PCs, Media Centre PCs, laptops, handhelds and PDAs, digital cameras, smart phones — all these devices and the services they provide are about the software running them. Free software, which is open by definition, should be looked at seriously for a number of reasons.


  1. Education - Kevin Rudd wants to be known as the "Education Prime Minister". Free software supports education in a fundamental way, in ways that proprietary software can't. Every part of the system in truly "free" software is open to inspection and modification. The tools supplied on top of the system are as good as or better than any other platform — internet browsers, image manipulation programs, sound editing software, word processors, mathematics tools, graphing tools, programming tools, and the list goes on.

  2. Freedom and Openness - freedom is considered a basic inalienable right in most modern societies. Free software supports that right unconditionally. The central focus on this as a major tenet of acceptable computer use results in a flow on effect into other areas of technology use in our society. If we are serious about this right it makes sense we would want to teach our kids about it. Using free and open software in the classroom makes the importance of this right implicit.

  3. Usability and Utility - One laptop per child, the Ubuntu family of Linux distributions and the sheer number of open source programs available on GNU/Linux are all testaments to the increasing usability and utility of the open source platform.

  4. Community - openness fosters community. Vendor lock in and proprietary software wrapped in NDAs and other red tape does not. The right to use your software as you please, understand how it works and modify it to share with your neighbour results in the sharing and furthering of ideas. No single company owns the rights to an idea or implementation of that idea. Effectively the people using the technology have the freedom to modify or extend the idea. These people using technology for a particular purpose form a community. Free software encourages the formation of such groups and empowers them. The one laptop per child project is a great example of this. Children are able to modify any part of the system on their computers they wish to, and redistribute it to their peers. The potential for adapting software in unforeseeable ways like this is incredibly exciting.

  5. Cost - the ongoing cost of free software and the support for that software is very competitive compared to vendor supplied software. The reason for this is that free software creates an open market for support. Vendors don't own this service. Any party wanting to offer support for a free software platform can, and can compete against anyone else in this open market. The end result isn't 30 minute wait times on the phone, it's high quality service.

  6. Security - free software doesn't rely on security through obscurity. Anyone can understand how the technology works, and can point out weak points and suggest or proffer improvements. Security comes to rely on excellent engineering rather than closed source code and lack of information. Linux for example has an excellent track record in security, and in responding to security threats. Other vendors are catching up in that area, but Linux is a shining example of how free and open software works to help improve security rather than diminish it.

  7. Strategic considerations (e.g. vendor neutral) - Free Software is vendor neutral. By definition, investing in free/open software means investing in and building a flexible software platform. No one is contractually bound to use a particular version of software. Companies can upgrade when they see fit. They have the freedom to move to another platform whenever it suits them.

Does the Free Software community know about this policy plan? Write to the Free Software Foundation to make sure they're aware of it. If they can help Labour understand the importance of free software then perhaps this will be looked at seriously. What are the other parties stance on free software? What do the Greens think about it? Write to them and ask.

Investing 1 billion dollars in such a policy plan isn't just about buying thousands of personal computing devices for all students, it's about investing in a technology ecosystem. It's about building wireless networks, high speed internet connectivity, providing good security, building and customising software platforms for schools and classrooms etc. Free and open software has a place at any level in that system. Get writing and start talking!

Saturday, November 17, 2007

I really should buy an expensive piece of electronic equipment such as a PSP and take it apart and put it back together. That might unblock some weird childhood thing.

Tuesday, November 06, 2007

Fermat's last theorem

Great documentary. So humbling to see the journey Andrew Wiles went on to find the proof of this. 7 years solid work, and then over a year to fix it - only to find a solution even more elegant than that originally devised. Stunning :)

Saturday, November 03, 2007

Evolving interfaces

Is it possible to construct more usable interfaces that evolve over time? What are the conditions of natural selection? "Use" is an obvious criteria. How do you decide if something is more usable programatically? What are the markers that distinguish usability from popularity?

Interfaces naturally evolve over time anyway. They evolve based on feedback, usability testing, and fashionable trends to name just a few. Is it possible to preempt such trends by learning from user behaviour and having a web UI adapt automatically? How far do you take this? Sites that generate lots of traffic have plenty of data to train such an approach. Would there be any surprising results? Would it all just turn into a big jumbled mess?

I'm too lazy to look at the research, and I have *no idea* whatsoever about usability in general. People who actually know something about it - please reply in comments :) Ta muchly.

Tying your shoes and growing up?

Everyone knows as you get older you become more cynical. You take things that once would have enamoured you for hours (like smelling beautiful flowers in the rain, or eating snails), with a literal grain of salt. Part of growing old gracefully is about never losing that fascination and wonder for the simple things in life.

Cut to tying shoelaces. I would argue that learning to tie your shoelaces was a momentous occasion for all of us. Let's face it, it was a kind of sign that we were becoming independent, a precocious portent that we were starting to grow up. Who doesn't remember proudly showing their grandma or aunt that they could tie their shoes by themselves? I remember awkwardly showing my next door neighbours when I was about four, much to their bemusement. I even remember thinking, "Why are you chuckling in your grown-up superiority? Take me seriously god damn it. I can tie my own shoes!"

So this morning I stumbled across the The Turquoise Turtle Shoelace Knot. I was reading one of my favourite blogs, hackety.org, in particular why's latest updates on his "Shoes" graphics and windowing toolkit, and it got a blatant plug (amongst shoe lace tying metaphors and stacks and flows). You really have to check it out. It's a beautiful knot, so beautiful in fact I had to get a pair of shoes and give it a whirl.

How long has it been since you thought about how to tie your shoelaces and felt joy and pride in doing it? Don't just think about it.. give it a go! (Then download and check out why's Shoes stuff. Very cool.)

(Ok, so I'm buzzing on coffee.)

Friday, November 02, 2007

Why haven't I used secure copy 'scp' before? My god.. it makes life so easy when moving files between unix servers on the internet.

I must be a slow learner. I've known about it for ages, but never bothered to use it. From the man page:


scp copies files between hosts on a network. It uses ssh(1) for data
transfer, and uses the same authentication and provides the same security
as ssh(1). Unlike rcp(1), scp will ask for passwords or passphrases if
they are needed for authentication.

Any file name may contain a host and user specification to indicate that
the file is to be copied to/from that host. Copies between two remote
hosts are permitted.

Thursday, November 01, 2007

Last lectures and finishing degrees

I've taken the last couple of days off work to finish uni assignments. I had my last uni lecture yesterday. I have to say I have mixed emotions about possibly attending my last lecture for my undergraduate degree. I've been working on getting this thing on and off since 1996 - astronomy and physics full-time for three years and now four years part-time to study computer science. The prospect of it being over is just starting to hit me I guess.

So the last assignment I've been working on is for a database subject. I've found much of the course fairly uninteresting but this assignment is looking pretty darn cool. The application is interesting.

We were given a paper titled "HOT SAX: Finding the Most Unusual Time Series Subsequence: Algorithms and Applications" by Eamonn Keogh, Jessica Lin and Ada Fu (no that's not a typo, and I've already bored everyone to death with banal jokes :)), and we were asked to implement the algorithm outlined there using postgresql and Java/JDBC. The theory behind this thing is to find time series discords amongst time series data. What's a time series discord? Think anomalies in data over time. Some good examples of where this might be applicable could be finding the exact moment that a ventricle in a heart acts abnormally (the time series data here would be an ECG), or perhaps putting your finger on the exact moment that a valve malfunctions in a space shuttle. The efficacy of the algorithm has been tested in just such situations.

I would have liked to link to a copy of the pdf, but the one hosted by the School of Computer Science and Engineering at UNSW is password protected, and I'm too lazy to upload it somewhere else.

I have the brute force algorithm working (after only a few hours work), and am working on the heuristic approach now. It's a lot of fun to watch it working. It's funny though, I'm not sure I want to finish it. That'd signal the last of my uni assessment for as long as it takes me to go back and do honours/a PhD or study something else :)

Enough ruminating for now. I just wanted to record how I feel about this whole thing.

about me