avatar tianjara.net | blog icon Andrew Harvey's Blog

Entries from May 2009.

NT Government Refuses To Allow Republication of Hansard
28th May 2009

It's sad but I'm not surprised. Not only does this reinforce that the Government does not want you republishing what they say in Parliament sessions (as per their copyright statement on their web site), but they are not even willing to grant specific rights to specific groups for specific intentions.

From http://tickets.openaustralia.org/browse/OA-237,

from Katherine Szuminska <kat[at]openaustralia.org> to steve.stokes[at]nt.gov.au date 6 May 2009 22:18 subject Hansard Copyright request NT mailed-by openaustralia.org Hi Steve I am writing to you from OpenAustralia in your capacity as the contact for the NT Parliamentary Hansard as per http://www.nt.gov.au/lant/hansard/hansard.shtml We are a group of volunteers who run a website, http://www.openaustralia.org which republishes the Hansard from Federal Parliament in a user friendly searchable format. We also support email alerts and rss feeds by keyword. In future, as well as the Senate and the House of Representatives, we're also intending to republish the State and Territory Parliament Hansards in the same format, making it even easier for all Australians to have access to their elected Representatives and be easily informed of Parliamentary proceedings at all levels. Specifically in this case we'd like to republish the NT Parliamentary Hansard at www.openaustralia.org ---------------------------------------------------------------------------------------------------------------------------------------- On 27 May 2009, at 15:56, Steve Stokes wrote: Hi Katherine, Please note that authority has been given for you to link only to our Hansard & Legislation page or more specifically the Parliamentary Record databases on that page as per the Hansard link below. Unfortunately, authorisation has not been given to republish Northern Territory debates in another format. Should you require any further information, please feel free to contact me. Regards, Steven Stokes Table Office Manager Chamber Support Ph: (08) 8946 1447
Tags: copyright, politics.
Bye Bye UNSW Email
28th May 2009

No time to discuss the ethical dilemmas or my opinion but I've worked out why my UNSW email stopped working. In short UNSW no longer provides students with email accounts. They mealy provide an address (@student.unsw.edu.au) that will redirect any mail to an email address of your choice. No webmail, no POP access, no IMAP access, who knows if they actually store any emails at all. An if you want to send mail from your UNSW email well you cannot if you are not at uni and I don't even know if you can at uni. But you would need to have access to a computer with a mail program (so don't bother with the library) and try their SMTP outgoing mail server, I haven't tested this. Sure you can fake your mail to be sent by your unimail address but this is quite pointless.

All is not lost, CSE students get a CSE email so I can send mail from that account.

Oh and what about zmail you say? Its just a prepackaged Microsoft email thing. ie. its just like all your other service based emails like Gmail, Yahoo Mail, Hotmail. You just tell the uni servers to forward your mail to Microsoft. All the outgoing and POP/IMAP servers are in the outlook.com and exchangelabs.com and hotmail.com domains (bye bye internet quota, yes the uni now has to (presumably) pay more $$$).

I don't like this. I'll post more after the session is over.

No tags
SENG4921 - Lec 10 - Censorship, Internet content classification, ISP-level filtering and the interests of young people
23rd May 2009

The SENG4921 week 10 lecture was "Censorship, Internet content classification, ISP-level filtering and the interests of young people" by David Vaile. The Cyber Law Centre has some materials on the governments current censorship proposal at http://cyberlawcentre.org/censorship/.

This is not an article by me on the topic, rather my notes that I took from the lecture.

Lobbying Efforts


One of the main criticisms of the proposal is the lack of transparency. Vaile painted a nice picture of this. The classification board is where decisions about film ratings are made. Their decisions are public and they are subject to review. Under the proposal the decisions are secret. Consider this, if you have the job of classifying material and only the minister and PM know your decisions you are much more likely to make stricter decisions. If you classify something as blacklisted then people don't know its blacklisted so are less likely to complain that its blacklisted. Also if your boss (the minister) happens to be bias towards one end of the scale, then you would be more likely to make decisions on that end of the scale not necessarily where the line should be drawn. This may happen if there is no public scrutiny and no review process. Sure you cannot say for sure what an individual who has been assigned to classify sites will do, but this is the image I got from Vaile's talk.

Tag System

I first came across this when reading Lessig's Code 2.0. Instead of trying to filter the internet on the ISP level or running some kind of taxpayer funded attempt to classify the interent, put the onus on the web site owner. It would be very easy (and I'm sure such systems already exist) to add some extra HTML content at the top of an HTML page that would contain some metadata about the classification of the site. Perhaps MA if there is lots of violence references, or X for pornography. Then you could have laws in place that say if you distribute certain materials that contain, blah blah and blah, then you must adhere to these metadata tags.

This allows for the browser to filter pages based on their rating. So in school environments where the browser settings are locked down this could work. You could also (probably) do implement a filter at an ISP level (for say a school) that looks at the TCP packets and the HTML data for this rating metadata.

Sure there are many technical problems (particularly the case of you can't add this metadata so easily to non-HTML files) but the system sounds the best to me.


Vaile made a point about the dangers of over-legislating things. For example certain materials (which probably includes child pornography) is illegal to view, so if you happen to accidentally find this material on the internet and you want to report it to the police so they can track down the perpetrator, you are in a conundrum. If you tell the police about it, then you must have viewed the material yourself which is illegal so you may face criminal charges, hence you cannot report it.

This rebinds me of copyright infringement on the internet. You cannot know for sure what you are downloading until after it has downloaded (and even then you can how can you know if this material is illegal to copy or not?). Therefore how you can be charged for downloading copyrighted material is beyond me.

Opt In/Opt Out

What happens if the opt-in list is leaked. People can be criticised much more for opting in compared to opt out where you most likely won't be criticised.

Links (Vaile did not discuss)

Apparently not only does ACMA not like certain materials, they also don't like people posting links to materials that they don't like. But its not just ACMA, this link take down fiasco is a wider problem (think sites that host .torrent files).

So posting a link to a site on the ACMA blacklist will result in an $11,000 fine per day. What if you post the URL but with no <a href... tag? What if you encrypt the URL? What if you encrypt the URL and post the decryption key on a different domain? What if you post a link to a page that contains a link to a page on the blacklist? How many hops will ensure you don't get threats of massive fines? The internet has so many links I'm sure that somehow some .gov.au web site links to an other web site which in turn links to another web site ....... which in turn links to a site on the ACMA blacklist (I haven't the time to find this path though). Is it illegal to tell someone the street address of someone who may be able to provide you with illegal drugs?

The other problem is we are supposed to not post links to certain sites, but ACMA won't publish that list of sites that we cannot post to? So we must instead check our mail every single day in case today is the day that ACMA tells us that we are providing a link and must remove it immediately?

Tags: politics, seng4921.
SENG4921 - Lec 06 - Intellectual Property and software patents
8th May 2009


Patents are a business tool.

I think that is the most important thing I gathered from this lecture by two Freehills attorneys (Stuart Irvine & Ronelle Geldenhuys) about IP and software patents. Lecture slides here.

Monopoly vs. Secrecy. In order to get the monopoly you must give up the secrecy.

Patents protect functionality.

Patents can be used as a sword (legal action to get royalties or force the infringer to stop), shield (dissuade others from infringing), war chest (trade and negotiation).

A patent gives the patent owner an exclusive right to exclude others from exploiting (manufacturing or importing a patented product or using or importing a product made by a patented process) an invention in a particular country.

To enforce a patent, the patent owner must take the infringer to court.

Tests for patentability,

With regards to patenting mathematical algorithms,

"A method of calculating a value c, where c = ex x sin(t)" is not patentable however this is,

"A method of determining the length of a road (L) in metres by applying the formula $latex L = \cos \theta \times N \times g^2$ where $latex \theta$ is the gradient of the road, N is the number of litres of fuel used by a car travelling on the road, and g is the acceleration due to gravity”, According to APO, Manual of Practice and Procedure, Volume 2. Sounds a bit silly to me.

An example,

US Pat. 5356330 (via google) - Apparatus for simulating a "high five"

Self publication prior to filing does class as prior art, meaning you cannot get the patent.

To invalidate a patent you just need to find prior art. That is, find the idea published prior to the filing date of the patent. Lesson here, if you know you don't want to get a patent for something and you want it to remain free to the world publish your idea/concept. Remember you don't need something working in order to patent it. Just detail how it would work (that's easier than getting it to work right?).

US patent 5490216 (or via google) is interesting. Filed in 1993, its a System for software registration. Basically there is a demo mode and a full mode. To get the full mode you need a registration key. Thats the general gitz. I didn't read the whole thing.

There are other examples,

I don't know what to think. They seem trivial, simple and obvious, but they weren't published today. As most people would say, you need to ensure that trivial patents are not granted (problem here is how do you define trivial?), and that the term is not too long (20 years is too long in my opinion).

Patenting of illegal methods in not allowed, though you may patent a things which may be used illegally such as gun (heh, otherwise nothing would be patentable).

Interesting example. A safe design was patented and then a thief used the patents to work out how to break it.



In terms of software, copyrighting software only stops others from using the same implementation as you. They are free to use an alternate implementation to do the exact same thing.

You can copyright compiled machine code.

I have a lot to say about this (creative/computational universe, and the clouds that span derivative works). So much that I'll have to leave it till later.


Registered Designs

Registered designs are interesting. There is a nice brochure from an Australian Law firm here.

A registered design provides a monopoly of a limited duration (max 10 years in Australia) granted by the government to an entity of a "concept" which determines the appearance of a product. I'm a little confused here as I though (its such a shame that the audio recoding from that lecture is corrupt) Geldenhuys said that registered designs are for a specific device. So if you register a design for an electronic device, anyone can use that design for say a paperweight. However in their lecture slides it says that registered designs protect appearance not functionality.

You will all probably recognise AU Registered Design 307210. Currently owned by Apple Inc. and must expire by Nov 23, 2015.

[caption id="attachment_515" align="aligncenter" width="450" caption="AU Registered Design 307210 (http://pericles.ipaustralia.gov.au/adds2/adds.adds_reps_details.paint_large_rep?p_application_details=200515157,307210,1,BB,tmprod,NORMAL)"]AU Registered Design 307210 (http://pericles.ipaustralia.gov.au/adds2/adds.adds_reps_details.paint_large_rep?p_application_details=200515157,307210,1,BB,tmprod,NORMAL)[/caption]

All registered designs must have a "Statement of Newness and Distinctiveness". AU RD 307210 says, "Newness and distinctiveness is claimed in the visual features shown in solid lines in the representations."

Registered designs must be renewed to stay protected. Though they have a max of 10 years, renewal fees get larger near the end of the designs protected life, either Irvine or Geldenhuys then added to this "governments don't like monopolies". Sorry but I strongly disagree with you there. If governments didn't like monopolies they would abolish crown copyright.


I won't say too much here. But here is a sample trade mark "thing"(?).

[caption id="attachment_517" align="aligncenter" width="450" caption="Trade Mark 1111537 (http://pericles.ipaustralia.gov.au/atmoss/Falcon_Details.Print_TM_Details?p_tm_number=1111537&p_ExtDisp=D&p_Detail=DETAILED&p_Search_No=2&p_Lastrecord=FALSE&p_Is_Internal=F)"]TradeMarkDetails_1241779754897[/caption]

Trade Secrets

You don't publish, you just swear everyone to secrecy (contracts). Does not protect against reverse engineering or independent formulation.

Tags: copyright, law, seng4921.
Patent Talk
8th May 2009

I went to a Talk by a Patent Attorney (Stephen Fung) the other day (3rd April 2009) about Patents. It was quite interesting. Here are some notes I made.

A provisional patent can be rubbish, and you can still amend it before you try to get it turned into a full patent. Its used as documentation of the invention at a specific time so that you have evidence and proof that it existed at a specific time.

Patents are a commercial instrument.

Often the venture capitalist will tell the person or company they invest in to file some patents. These people then go to the patent attorney, tell them this is what I've done, just file anything.

An interesting thing about patentable material, using the example of say a compression algorithm, the mathematical foundations are not patentable, but if you incorporate that into say a chip, you can patent that and prevent others from implementing the algorithm into chips of their own.

If you have some new invention that you want to try to patent. You may speak with a patent attorney, go through Technology Transfer (eg. New South Innovations), do the patent yourself, do not disclose until you have filed something.

If you copyright your source code it only protects that "creative expression" of the code. So if someone wrote the exact same program in another programming language then you cannot hinder their distribution of that.

If you patent the underlying algorithm then no one can use of implement that algorithm.

"Patent It Yourself" is apparently a good book.

Tags: law.
SENG4921 - Lec 07 - Legal perspectives on system development - Liability, litigation risk, professional standards, and ethics
8th May 2009

I was looking forward to this talk by David Vaile since his name keeps popping up everywhere I go. So here are some rough notes I took down (and then expanded on some points now). His full slides can be found here.

This slide gives a nice overview.

features-of-the-legal-system(David Vaile. Legal perspectives on system development)

Lawyers can speak for clients (i.e. on their behalf). So you may want to be careful of what they are saying for you.

Cases are often about motivation. Why you did something. Your intent. Its not a whole science. eg. murder/manslaughter. did you intentionally push someone in front of a train, or did you slip and accidentally push them in front of a train. This can make a difference in a trial.

Criminal --> Beyond reasonable doubt. Civil --> Probability. Does not need to be beyond reasonable doubt.

Lawyer's will generally say "with respect I think you are wrong" rather than the direct "you are wrong".

Law exists to regulate. "It won't just work out itself [if we don't have laws]".

Courts can be expensive and risky. Going to court may not always be the best idea.

ASIC, ACCC... can step in sometimes. This strips away the companies advantage (lots of $$'s and lawyers) in a case against an individual.

"If you make something accessible in another country is that publishing in that country?" One court case says yes. I find this surprising. If you publish something on a web server in your country and allow all IP's to access your web pages then another country considers you publishing in that country??? Unfortunately Vaile didn't give the case reference for this (UPDATE: This is the case and here is a list of law journal articles referring to the case. I'll probably make another post once I get a chance to take a closer look at it).

Due to the free trade agreement its now illegal to copy even when allowed if you break the DRM.

Suing your customers --> turns them against your company! This builds a coalition of difference to try to change the law. The turning point is if that coalition is large enough. Could this mean that to win the copyright fight we must get the film studios to sue as many people as possible? I would hope not, and rather hope that people become aware of the current problems on their own accord not through legal action against them.

Litigation risk may change over time. You may do something now that has a low risk of litigation but in a year or so that may change. That minimal risk does not increase your chances of winning the case.

This slide from Vaile's talk is enlightening for me.

different-standards(David Vaile. Legal perspectives on system development)

Mainly because its so easy to fall through the top one that you forget there are layers underneath. Copyright laws is so tough and stupid its hard to convince yourself that you should not break them. You loose faith in the law and begin to not worry about anything. But the law is just one standard. Professional standards and ethics come into play. Let me look at some example cases.


Litigation Risk

'Professional' standards (will your peers & colleagues reject you?)

Ethics (Will your children & friends reject you?)




Yes (probably)

Yes (probably)

Copyright Infringement of a feature film to avoid paying





Copyright Infringement of a feature film to transfer a purchased DVD to a portable device (prior to amendments)


Very Low

No (unlikely)

No (unlikely)

I think its just as important, if not more important to consider the bottom two standards (professional standards and ethics) than the top two (liability and litigation risk). These bottom two are still important even if you can get away with the illegal act.

Privacy. There are two interests here, the individual and the government.

The Individual. "I want to be left alone."


The Government. “What have you got to hide? Tell us.”

When a political party is trying to pass a law public interest/politics may come into play and cause a party to back down on a bill, even if they can get it passed and want it passed.



Upper House



Lower House


House of Representatives

The Australian SPAM act has no private right to sue. Must rely on ACMA. The US CANSPAM act has private rights to sue.

Tags: ethics, law, seng4921.
Setting Up the COMP2121 AVR Board at Home on a Linux Machine
8th May 2009

Just quickly because I need to get back to work, here is how I managed to finally set up a working environment to use the COMP2121 AVR Board at home using linux.

  1. Installed Sun's Virtual Box.
  2. Downloaded and installed Windows 7 Beta (Because its free (as in free beer) and only expires after this course is over)
  3. Under the network settings for the Windows 7 virtual machine, disabled it from the rest of the world (I don't need it here, so save my download for better things that Windows updates). Virtual Box Network Settings
  4. Install AVR Studio.
  5. Install a driver (I used this one http://www.ftdichip.com/Drivers/CDM/CDM%202.04.16.exe) from here http://www.ftdichip.com/Drivers/VCP.htm. Don't need to worry about trusting anything as this virtual will just be used for the AVR board.
  6. In the bottom right hand of the virtual box window enable the "FTDI USB <->UNSW uLab" USB device (when its plugged in).
  7. Run nite.exe with these arguments " -l com3 -f 4 -t 1 -h X:\AVRProj\". You may need to check if its com3 or something else in "Device Manager". Where that last path is the default directory (I set up a shared directory in the VM settings).
Tags: avr, comp2121.
PostgreSQL Very Basic Cheatsheet
5th May 2009

(Wrote this a few weeks ago when I knew nothing. Indented into my brain now. Should have published earlier or just trashed the post as it seems too simple now. So instead I'll update it when I find out some new neat tricks.)

List of databases: $ psql -l

To open one of them, $ psql MyDatabase

To see what is in the database (list of relations), mydb=# \d

To examine a specific table, mydb=# \d TableName

Can execute SQL, mydb=# select * from Table;

Can edit SQL in an editor from within PSQL, mydb=# \e

To quit, mydb=# \q

To load a schema from a file $ psql mydb -f /home/foo/bar

Also from the shell, $ pg_dump -O myDB > file (-O means no ownership information is outputed)

On my server configuration (default for ubuntu) you can restart the PostgreSQL service using, $ sudo /etc/init.d/postgresql-8.3 restart

Tags: comp3311, computing.
COMP3311 - Week 7 Notes
5th May 2009

Its pointless repeating what John put in the lecture slides, so this is just my additions that he mentioned but are not in the slides.


Initial condition is defaulted to NULL. So sometimes you will need to define,

  initcond = '';

This is different to NULL, because,

  null || 'abc' --> null

(where || is append) but

  '' || 'abc' --> 'abc'


$x = 2;
myFunc() {
  global $x;

If we omit the global $x, then any references to $x in myFunc will refer to a new local x, not the first x that is set to 2. To avoid this and force any references to x inside myFunc to refer to the first x that is equal to 2, we need this global $x line.


1. $i = strpos('abc', 'a') --> 0
2. $i = strpos('abc', 'b') --> 1
3. $i = strpos('abc', 'z') --> false

if($i) will only be true in case 2 (false in case 1 and 3). So if we want to test if the second string was at all in the first string we must use,

if($i !== false)

This one will be true in case 1 and 2, but not 3.

Tags: comp3311, computing.

RSS Feed