my favourite FORTRAN program reads:
REALITY, SANITY, and ME
STOP
END
— Anonymous comment. (Had to figure out how to indent Fortran to verify this one.)
Today, just out of interest, I decided to download the video lectures which accompany MIT’s famous Scheme-based SICP course. I used the torrents. The first one came down at about 800 kilobytes a second. Subsequent lectures are arriving at 7k/sec, with fewer peers. My conclusion is that one SICP lecture is all you need to drive you straight back to Python, but I’m hoping to be proven wrong.
(Of course, MIT themselves took 30 years…)

Q: How do you make a cross city tunnel?
A: Sneak up behind it and kick it in the arse!
(I had something here before about duplicating access, closing free roads, setting high tolls and going broke, but it wasn't as snappy.)
I'm very encouraged by the reaction of the majority of the public to the flaws in the Australian government's Internet censorship plan, which has received widespread ridicule in the local and overseas press.
I enjoyed this cheap shot by the Associated Press, covering an interview with the Minister responsible, Stephen Conroy (full article):
"It is possible to support a blacklist and support free speech," Conroy said. He did not explain how.
If you're interested in following along, I recommend the (obviously biased) site somebodythinkofthechildren.com.
To start with, the conversation should be about 95% silence. Give the impression that you don't have to talk. Chatting is for the timid. You don't need it. Convey the absolute minimum amount of information necessary, as an afterthought. "Just a trim, please," you might say, for example. After five minutes of silence, he will perhaps respond with "shall I trim the sideburns?" and you can respond with something like "yes please."
Give the conversation time to develop. This requires the utmost delicacy. Think "deer in headlights" more than "Nescafé ad". With the proper timing, you should be hitting the conversational high points after a quarter of an hour, talking about male pattern baldness, how to attract the ladies, your computer science thesis -- and the minutes will just fly by.

sex naked dildos sex sex oral sex cum facials blowjobs hard-core bondage fisting upskirts incest golden showers gang bangs scat vaginas penises sex defecating sexual sexual censorship censorship censorship censoring censor
Coffee beans costs about $10 for 250 grams. That's 4 cents a gram. Apparently one shot of coffee is about 7 grams of ground beans, so the average shot is about 28 cents worth of coffee.
Really expensive Earl Grey tea from T2 costs $22 for 250 grams, or 8.8 cents a gram. But you only need 2 grams per cup of tea, so a cup of delicious tea costs only 18 cents.
Conclusion: drink tea!
(Numbers obtained from the Internet and Kevin, a self-confessed coffee addict.)
Here’s a lawyer trying to define “love”, specifically his illicit love for someone else’s girlfriend, in Happiness Reminders by Rachel Haley Himmelheber, published in McSweeney’s 18.
There is a dictionary on the lawyer’s bookshelf.
Love suggests — but fails to confirm — a feeling more intense and less susceptible to control than that associated with the other weak words of this group. Affection is a more unvarying feeling of warm regard for another person, so maybe it’s just better to say, “Honey, I effect you and I affect you.” Devotion is dedication and attachment to a person or thing; contrasted with love, it implies a more selfless and often a less carbonated, effervescent feeling; it’s just not as fun. Fondness, in its most common modern sense, is a rather strong liking for a person or thing. Infatuation is extravagant attraction or attachment to a person or thing, usually short in duration and indicative of folly or sexually faulty judgement.
The lawyer tries to compare the definition of love with his feelings for the girlfriend. He is not sure he feels “intense affectionate concern” for the girlfriend; she is quite strong and does not command concern. She is an independent thinker. They do not ever discuss how they feel or just who they think they are.
Catie is going for a job interview but she refused to prepare by reading the entirety of Russell’s History of Western Philosophy, as I suggested, on the grounds that she had better things to do. So I decided to read it for her, starting on page 589 with these limericks. They summarise an argument by George Berkeley for the existence of God, which only makes sense if you know that Berkeley thought that material objects only existed when being perceived by something:
There was a young man who said, 'God
Must think it exceedingly odd
If he finds that this tree
Continues to be
When there's no one about in the Quad.'
REPLY:
Dear Sir:
Your astonishment's odd:
I am always about in the Quad.
And that's why the tree
Will continue to be,
Since observed by
Yours faithfully,
GOD.
— Ronald Knox
I quite like the way this reduces God’s role to that of existential gardener.
In that kind of theatre, what the playwright does is to dole out, just dribble out, information. At the beginning of the evening, he has a large… bladder, shall we say, of information, and at the end of the evening the audience has the contents of… this could turn into quite a distasteful subject…— Tom Stoppard on the playwright’s art, though he prefixed it with “Don’t take any notice of what I’m going to say because I don’t know what I’m talking about”. (link)

Skimble, my family's cat, was euthanised this morning after a pre-existing condition took a turn for the worse. He was 18.
When we bought him the woman in the pet shop told me that in her opinion he was the smartest there. We soon had reason to doubt her judgement, however, when we discovered his method for asking to be let inside. Obviously deciding that meowing was for lesser creatures, Skimble's preferred technique was to charge full-pelt at the front door and bash into it with his skull, generating a dull "boom" that could be heard throughout the house.
When inside, he gravitated to laps, completely oblivious to any pre-existing lap contents. I have many memories of sitting at my desk, typing, with a lap full of cat and his jackhammer-level purring filling the room. He never liked strangers, so it always made me smile to visit my mum's house and realise he still recognised me -- not bad for an old cat.
He is missed by Robyn, Charles, and me.
A couple of people have pointed out Dante's Inferno: the video game, since I was vaguely thinking about making a game based around Inferno as well. However, there are some subtle differences between the game as it currently stands, and the poem. Here's a quick guide for telling the difference between The Divine Comedy, three poems published by Dante Alighieri in the 14th Century, and Dante's Inferno: the video game:
Poem: Dante, an essentially good man, finds that he has strayed from the correct path -- he has become too worldly, accepting God in name only. As a sinner, he cannot repent and go directly back on the path of righteousness: He must first recognise, and then renounce, his sin. As part of this process, he is led through Hell, Purgatory, and finally to Heaven. The journey is both real and metaphorical: to recognise his own sin he must understand and accept God's punishment of the sins of others. The poem is intensely political, reflecting the tumultuous politics of Italy at the time -- Dante encounters historical figures and his political enemies at every level of Hell. Dante's logical and emotional reaction to these tortured souls is critical to his progression, both physically and spiritually.
Game: You're a guy and you get to stab things with a cross. Every so often you encounter a boss and you have to kill him in order to free lost souls so they can return to Purgatory.
As a game based on the poems, I think it's going to suck. Inferno is really only incidentally about Hell: it's a landscape which mirrors the condition of Dante's soul rather than a tangible place. Neither the author nor his guide commits any act of violence and, in fact, Dante cannot interact with the souls, as he is corporeal and they are not. It's obvious (I did it) to look at Inferno and see game-like concepts: there are nine circles, each one themed; there are various boss-like characters; the world is nicely filled with thousands of non-speaking NPCs plus a handful of more detailed characters; and it's set in Hell, which means there is a rich and accessible cultural heritage to draw from. But if you put all that together, you don't get Inferno, you get Doom, or God of War, or whatever. These are great games, but they're not Inferno, they're genero-Western-culture mashups. It's not even like someone could claim that they were re-using Dante's imagery, because he didn't come up with most of it. His genius was in re-using it to tell his story.
Anyway, I could be wrong and, to be fair, it's far too early to tell. There are lots of themes in the poem which are still relevant today (such as that of making best use of your time on Earth), but some which only make sense in a religious context (such as "human reason can only take us so far and to go further requires God's grace") -- which, I suspect, EA won't be keen to put in a mass-market game.
Sorry to go all Roger Ebert (ref) on this, but I had the same sort of idea about Inferno to start with: cool! Each level reflects a sin, there are lots of different monsters, awesome theme for a game! Then I actually read the book.
Internet filtering
Thank you for your correspondence concerning internet service provider (ISP) filtering. I appreciate your interest in this important issue.
I am aware that the issue of ISP filtering has attracted criticism from people who are concerned that it will lead to censorship of the internet.
Freedom of speech is fundamentally important in a democratic society. For many years however, most Australians have accepted that there is some material which is not acceptable, particularly for children.
The genesis of this is in civil society where social conflict is governed by the imposition of rules that restrain citizens from harming one another and society as a whole accepts that the public interest requires that those rules are enforced.
The Minister conflates protecting children from objectionable material and protecting adults from illegal material. I think this is because more people agree that keeping porn and hate speech away from children is a good idea. Fewer people agree that these things should be kept away from adults. Keep this in mind as you read the rest of the form letter. A large proportion of the focus is on child pornography, because blocking child porn is an "easy sell". Unfortunately the scope of Australia's filtering plan is a lot broader than this.
It's also worth noting that preventing children from seeing potentially-objectionable but legal material can be performed just as well by client-side filtering tools.
This is why we have the National Classification Scheme (the Scheme) for classifying films, computer games, and publications. Under the Scheme, it is illegal to distribute, sell or make available for hire material that is classified Refused Classification (RC).
The Minister does not mention that the list of items which have been refused classification is public knowledge, but the list of censored Internet sites is not. You can see the list of films here (click "include adult and RC content" and then select "RC content" from the dropdown). It is important to be able to see what is being censored, to facilitate debate on the topic. With the current filtering proposal, we do not know what will be censored, and we can't find out.
The internet is already subject to regulation which prevents ISPs or other internet content providers from hosting prohibited content as defined under the Broadcasting Services Act 1992 within Australia. Prohibited content is determined by reference to the Scheme. We also have strong criminal laws aimed at preventing people from possessing or distributing material relating to child sexual abuse, including over the internet.
The Australian Government recognises that the internet is an essential tool for all Australian children through which they can exchange information, be entertained, socialise and do school work and research. The ability to use online tools effectively provides both a skill for life and the means to acquire new skills.
I am happy with the Government's current regulations and do not wish to see them either removed or augmented.
Cyber-safety commitment
The Government has committed $125.8 million over the next four years to a comprehensive range of cyber-safety measures, including law enforcement, filtering and education. Measures include:
- Expansion of the Australian Federal Police (AFP) Child Protection Operations Team - funding to detect and investigate online child sex exploitation;
- Commonwealth Director of Public Prosecutions - funding to help deal with the increased activity resulting from the work of the AFP to ensure that prosecutions are handled quickly;
- ISP-level filtering - funding to develop and implement ISP filtering, including undertaking a real world 'live' pilot;
- Education activities - funding to the Australian Communications and Media Authority (ACMA) to implement a comprehensive range of education activities;
- Websites / Online helpline - funding to ACMA to improve current government cyber-safety website resources and to make them easier for parents to use, and to provide up-to-date information. ACMA will also develop a children’s cyber-safety website to provide information specifically for children, and improve the online helpline to provide a quick and easy way for children to report online incidents that cause them concern;
- Consultative Working Group - funding for an expanded Consultative Working Group. This group will consider the broad range of cyber-safety issues and advise the Government, to ensure properly developed and targeted policy initiatives;
- Youth Advisory Group - funding for a Youth Advisory Group which will provide advice to the Consultative Working Group on cyber-safety issues from a young person’s perspective; and
- Research - funding for ongoing research into the changing digital environment to identify issues and target future policy and funding.
This seems like a fine set of initiatives, apart from the ISP-level filtering initiative, which is what I wrote to the Minister about.
International cooperation in regard to online safety is crucial. The Government is pursuing an international agenda for collaborative action on cyber-safety. Progress on this was made through my recent engagement at the Organisation for Economic Cooperation and Development (OECD) forum in Seoul in June 2008. The Seoul Declaration for the Future
of the Internet Economy states that participating economies agree to 'Ensure a trusted Internet-based environment which offers protection to individuals, especially minors and other vulnerable groups'.
The Minister is of course aware that ensuring a trusted Internet-based environment and ISP-level filtering are completely unrelated concepts. Read the Soul Declaration for the Future of the Internet Economy here.
Education
The above initiatives will tackle the issue of cyber-safety from a number of directions. More importantly, this approach is based on the key role parents and carers have in the online safety of children, and provides them with the necessary information to assist with this task.
In particular, ACMA’s Outreach program has been expanded to provide additional general cyber-safety awareness presentations to teachers, parents and students which highlight the key issues and strategies to minimise potential online risks. The program will also include professional development on online safety issues for existing and trainee school teachers.
Note that this education program, which sounds like a good idea, is completely unrelated to the issue of ISP-level filtering, which is what I wrote to the Minister about.
ISP filtering
A part of the Government’s plan is to examine the introduction of ISP-level filtering. The Government’s policy will be developed through an informed and considered approach, including industry consultation and close examination of overseas models to assess their suitability for Australia.
The Minister does not address issue of client-side filtering. Note that Australia has had free client-side filtering available since 2005 (it was introduced by the Howard government). It has had extremely small take-up, which indicates a lack of public interest or a lack of public education.
Filtering technologies have been adopted by ISPs in a number of countries including the United Kingdom, Sweden, Norway and Finland, predominantly to filter child pornography. In these countries ISP filtering has not affected internet performance to a noticeable level.
The Minster does not mention that in the UK and Finland, this filtering is voluntary. This omission is reprehensible.
Laboratory trial and live pilot
ACMA has completed a laboratory trial of a sample of the available ISP filtering technologies. The trial looked specifically at the effect of a range of filter products on network performance, effectiveness in identifying and blocking illegal content, scope to filter non-web traffic and the ability to customise the filter to the requirements of different end-users.
The laboratory trial indicated that ISP filtering products have developed in their performance and effectiveness since they were last assessed in 2005. The Government is now proceeding with a 'live; pilot which will provide valuable information on the effectiveness and efficiency of filters installed in a ‘real world’ ISP network. The live pilot is proceeding in close consultation with the internet industry.
The ACMA report is here, but unfortunately I can't make any comment on it right now because, hilariously, the ACMA Web site is down.
The Government is committed to working closely with the internet industry to address the concerns of network degradation, over and under blocking, circumvention and costs. These concerns will be carefully considered during the pilot and will further inform the Government’s cyber-safety policy.
It is difficult to see how a "live pilot" which does not involve actual customers and which is based on a list which may or may not actually be the same as the list which is used should this scheme be implemented could adequately address issues of over- and under-blocking. There is no information on how these issues will actually be addressed during the live pilot. I suspect the reason is because the Minister is lying about addressing these issues during the live pilot.
The Department of Broadband, Communications and the Digital Economy (the Department) has prepared material on a list of Frequently Asked Questions (FAQs) regarding ISP filtering. This list is available on the Department’s website at www.dbcde.gov.au/cybersafetyplan.
These FAQs will be updated regularly to provide you with the most up to date information on ISP filtering issues.
ACMA Blacklist
The existing ACMA blacklist is a list of internet web pages which are defined as 'prohibited' under Australian legislation. The list has been in place since 2000 and currently contains around 1300 URLs.
ACMA has also negotiated agreement with the UK Internet Watch Foundation (IWF) facilitating access to the IWF’s list of child abuse image URLs.
ACMA is also working with the Australian Federal Police to arrange access to the USA National Centre for Missing and Exploited Children list of child abuse image websites.
ACMA's justification for keeping this list secret is that linking to prohibited material is illegal. Apparently there is no justification for keeping the larger, opt-in list secret.
In consultations with ISPs, concerns have been raised that filtering a blacklist beyond 10 000 URLs may raise network performance issues, depending on the configuration of the filter. The pilot will therefore seek to also test network performance against a test list of 10 000 URLs.
This paragraph doesn't make sense, as apparently ISPs are concerned by the technical challenges of a list containing more than 10000 URLs, but the Government is requiring that they test with a list of exactly 10000 URLs. Minor point, but I had hoped they would at least get their form letters right.
This will be a closed network test and will not involve actual customers. The list of 10 000 sites will be developed by the technical organisation assisting the Department on the pilot, which has access to lists of this size. As this test is only being performed to test the impact on network performance against a list of this size, and actual customers are not involved, the make-up of the list is not an issue.
As discussed above, it is impossible to address issues of over- and under-blocking when "the make-up of the list is not an issue".
The ACMA blacklist is developed by complaints by the public about online content to the ACMA hotline. ACMA does not arbitrarily assess and classify content. Online content is assessed in accordance with the National Classification Scheme. The Scheme was established by the Classification (Publications, Films and Computer Games) Act 1995.
Content which is the subject of a complaint is assessed by ACMA and in some instances referred to the National Classification Board for classification.
The ACMA complaints process has been established by the Australian Parliament through the Broadcasting Services Act 1992. If content is found to be prohibited and is hosted in Australia (i.e. located on a computer or server in Australia), ACMA will direct the content provider to remove or prevent access to the content. If content is found to be prohibited and is hosted overseas, ACMA must add the material to its blacklist.
There is apparently no way for a member of the public to request than the ACMA remove a site from its list.
ACMA officers and Classification Board members applying the Scheme are highly trained and apply criteria set out in the Scheme’s legislative framework. Further, decisions made by the Classification Board can be reviewed by the Classification Review Board.
The scope of the definition of prohibited content in legislation cannot be expanded without changes to legislation being passed by Parliament.
Thank you for your interest in this matter. I hope this information will be of use.
Yours sincerely
Stephen Conroy
Minister for Broadband,
Communications and the Digital Economy
This is highly specialised information :) but if you need it, you need it.
First, the mount line to use, to mount the first partition on the disk:
mount -t ext3 -o loop,offset=5120 hda.img /mnt/
Why 5120? QEmu raw disk images are literal hard drive images with no extra information. QEmu presents these images as having 10 sectors per track. With 512-byte sectors, this means that a cylinder is 5120 bytes long. Partitions should start on a cylinder boundary, and we can’t use 0 because that’s where the MBR is. So the first partition is 5120 bytes in. (This means at least 4608 bytes of every disk is wasted space and a great place to hide virus code, if you are evil and live in 1988 when this type of virus was still viable.)
To double-check: the first thing in the ext2 superblock (which ext3 also uses) is the total number of inodes (ref). So find the number of inodes on your partition (mkfs.ext3 tells you) and search for that on your disk image. The first superblock is 1024 bytes into the filesystem (it’s right after the boot block), so subtract 1024 from the number you get.
If you want to mount a QCOW image rather than a raw image, that’s an entirely different magic number.



