Archive for thoughts

This post comes in a little late. I’m sure almost everyone would have heard by now about how the geniuses at VueStar Technologies in Singapore have tried to enforce their patent on any “Web site that uses pictures and graphics to link to another site or Web page”.

While the patent itself only describes the invention as one that “provides a web-page (or web-site) search results list which includes images from the actual web-pages or web-sites identified in a user’s search, or images associated with the actual organisation operating a web-site“,  VueStar CEO Paul Smith’s claim that “if sites want to keep using images as links, they will have to pay his company” seem to me to be overly broad and far too generic to be even considered a valid claim. Then again, IANAL.

The claim by the self-dubbed “pioneers of visual search technology” that they own the technology for image hyperlinks is (excuse the pun) patently ridiculous. Marc Andreesen, inventor of Mosaic, first graphical browser for the World Wide Web, described image hyperlinking in a mailing list post, back on 25 Feb 1993, more than 10 years back. And that’s still more than 7 years before VueStar’s patent application was first submitted in 2000. Surely that constitutes some form of prior art? And we’re not even looking at the fact that this technology has probably been in all web browsers released to the public since then.

As such, there’s been a lot of doubt as to whether or not the patent claim can indeed stand up in the court of law, should it come to that. So far, VueStar has only been sending out letters to companies claiming patent infringement. Since VueStar’s patent claim has the potential to affect almost all corners of the internet (No more image linking! The horror!), it’s also no wonder that the community has also responded in kind to VueStar’s recent moves.

Some parallels are of course being drawn between this episode of litigation warnings (”Pay us or we’ll see you in court!”) and the ODEX case just a while back. While both companies tried to reach monetary settlements first, before even bringing anyone to court (pay first, talk later?), at least ODEX was a proper licensee of the anime series. While I don’t really support ODEX’s actions, it was at least conceivable that downloading anime off the net would hurt their business model. What business model does VueStar have to speak of? A look under the Technology section of VueStar’s website only vaguely describes the notion of “locating web – sites using visual images” while the rest of the page attempts to bolster the company’s claim on the mentioned technology. And besides, the WHOIS record of the domain vuestar.biz shows that it was only registered in December last year. If you ask me, there only seems to be one purpose to the company, and that is the one that it’s in the news for right now. Let’s see if I’m proven wrong.

A check with our local ACRA (Registrar of Companies, for you more traditional folk), shows that the company now widely-known as VueStar Technologies Pte Ltd, was once known as Blue Steel Dragon Pte Ltd. Uh huh. So VueStar itself hasn’t been around for all that long then? Anyways, ACRA doesn’t allow the casual searcher to look at the company information unless one pays for it, so I wasn’t able to find out more. All the same, anyone know why the address listing seems to mention Robinson Road while their website says Coleman Street? I guess unlike filing for patents, consistency isn’t one of their strong points.

So. Should we fear the Blue Steel Dragon lest he incinerates our websites (and bank accounts) with his righteous flame of patent claims? Are all your links belong to them? Maybe not. Sure,  they claim to hold patents in both Singapore and Australia and some say the US, but then again, we know that not all patents, no matter how wide the reach, aren’t really enforceable.

———-

For more patent sillyness, check out PatentlySilly.com, which celebrates the creativity of the human mind (and Patent Office).

Other reports from afield:

Legal Code

I sat for a paper not too long back, on the subject of Business Law (BSP1004A, Legal Environment of Business, for you NUS folk). Pretty much of the syllabus revolved around the various statutes surrounding stuff like Company Law, Contract Law and the Sales of Goods Act (wonderfully descriptive names, don’t you think?).

Anyways, it hit me that there was a certain structure to how statutes were phrased.. a syntax of sorts..

So, hey.. you know, there actually were similarities between the mumble-jumble I was looking at, and the type of text I usually have to work with (program code, that is).

Legal statutes and code are both:

  1. Non-human-readable
  2. Age limit for directors
    153. —(1) Subject to this section but notwithstanding anything in the memorandum or
    articles of the company, no person of or over the age of 70 years shall be appointed or
    act as a director of a public company or of a subsidiary of a public company.
    (2) The office of a director of a public company or of a subsidiary of a public company
    shall become vacant at the conclusion of the annual general meeting commencing next
    after he attains the age of 70 years.
    (3) Any act done by a person as director shall be valid notwithstanding that it is
    afterwards discovered that there was a defect in his appointment or that his
    appointment had terminated by virtue of subsection (2).
    (4) Where the office of a director has become vacant by virtue of subsection (2) no
    provision for the automatic reappointment of retiring directors in default of another
    appointment shall apply in relation to that director.

    – Singapore Companies Act, 4th Schedule, Table A


    /* if --all-symbols is not specified, then symbols outside the text
    * and inittext sections are discarded */
    if (!all_symbols) {
    if ((s->addr < _stext || s->addr > _etext)
    && (s->addr < _sinittext || s->addr > _einittext)
    && (s->addr < _sextratext || s->addr > _eextratext))
    return 0;
    /* Corner case. Discard any symbols with the same value as
    * _etext _einittext or _eextratext; they can move between pass
    * 1 and 2 when the kallsyms data are added. If these symbols
    * move then they may get dropped in pass 2, which breaks the
    * kallsyms rules.
    */
    if ((s->addr == _etext && strcmp((char*)s->sym + offset, "_etext")) ||
    (s->addr == _einittext && strcmp((char*)s->sym + offset, "_einittext")) ||
    (s->addr == _eextratext && strcmp((char*)s->sym + offset, "_eextratext")))
    return 0;
    }

    – kallsyms.c, Linux Kernel, 2.6.24.5-85.fc8

  3. Perfect examples of reduce, reuse and recycle.
  4. Programmers are lazy people who never want to code again whatever that can be reused (or, copied) from somewhere else. In fact, most programming texts extol the virtues of code reusability. To make our lazy butts feel like we’re actually doing something right, programmers have used the time saved to come up with terms to justify the practice. Heard of the DRY Principle? “Efficient code”? Lazy programmers also like to say that they’re “not reinventing the wheel” when they just lift an entire chunk of code from somebody else’s work.

    And as for lawyers? If I remember my lectures right, about half of Singapore’s Penal Code was lifted from the British Penal Code and the the other half from someone else (was it the French? My memory fails me.). I guess that’s efficient.. um.. lawyer-ing?

So yeah, there you go. Though the nice thing about code is that syntax highlighting makes code almost readable.

See?

Unfortunately our poor lawyer friends still have to contend with pages upon pages of monochrome text, on *gasp* paper. And no “Find” function either.

Oh, here’s a thought: Someone should really create a text-editor for lawyers. You know, one that’ll be able to syntax highlight legal code, say, plaintiffs in green, defendents in red, statutes in yellow, quotes in purple.. you know.. things like that.

Save our lawyers’ sanity.

—-

Now, that was random.

“Guilty”, says the jury.

Hans Reiser, creator of the open source Reiserfs filesystem used on Linux systems, was arrested on 10 October 2006, charged with murdering his Russian wife, Nina Reiser. After a trial spanning six months, the jury in the Reiser murder trial has apparently found him guilty of murder in the first degree. This verdict was reached despite the fact that, apart from loads of circumstantial evidence, there has hardly been any physical evidence uncovered. (Check out Wired.com’s coverage of the Hans Reiser trial)

Excerpts from the quotes from juror No. 7, Vince Dunn, as they appeared in a Wired.com article:

I was looking at his eyes, he was faking it.

After a while, we started to see how arrogant he was, how little sympathy he had for his wife

When asked when he thought Reiser had killed his wife, Dunn said,

I think he choked her and at some point and stabbed her. That’s a big question.

Hans Reiser has a black belt in judo, which includes choking in its repertoire of moves. I’m pretty sure anyone with a black belt in judo could potentially kill with choke-holds alone, so why resort to messy stabbing?

Reading the reports of the Reiser trial, I have to agree that his actions and the surrounding circumstances do indeed seem suspicious. Nina’s blood on the car seat and a pillar of his home, the discarded front passenger seat of his car, his apparent paranoia — definitely difficult to explain, despite Reiser’s attempts at the ‘geek defense‘. However, I did think that for a murder charge, the prosecution had to prove beyond reasonable doubt, that the crime had been committed. Personally, I still have doubts about the Reiser case.

Nina’s body was never found. I’m not sure how the prosecution could be so sure that a murder had been committed, when there’s no proof that the suspected victim is even dead. There are no witnesses, no body, no murder weapon. Just an apparently strong motive (Nina was apparently having an affair with Reiser’s friend, and Reiser suspected her of embezzling money from his company, Namesys.) and many testimonies that Nina was a loving mother and would never leave her children to flee back to Russia as Reiser claims.

Strangely enough, prosecutor Paul Hora claims that “there isn’t a shred, a speck of evidence that this woman is alive“, he hasn’t shown any conclusive evidence that she’s dead either. Sure she’s missing, but apparently, people do go missing in this world without necessarily being dead.

Stranger still, is how the jury was not allowed to hear testimony of how Sean Sturgeon, Reiser’s former best friend and with whom Nina Reiser was said to have had an affair, had confessed to killing eight other people — though those killings were unrelated to the case. One would have thought that someone with a history of murder might be key to a murder case, especially when the alleged victim had broken up with him earlier in the year.

I use Linux and I’m a fan of open source software, but to be sure, I’m no Reiser apologist. I just don’t think it’s been proved beyond reasonable doubt that Reiser is guilty of premeditated (first degree) murder.

Suspicious? Yes. Guilty? I’m not so sure.

Xcerion. Pfft.

Guess what I found in my inbox today?

For a moment, that kind of made my day. I mean, I’ve been waiting almost a year for this mail to arrive. No kidding. I applied for the beta after reading GigaOm’s post about Xcerion’s Internet OS, XIOS (now apparently renamed icloud). That was on 1 April last year.

So. I receive the mail today to say that my beta account has been activated. Go me! I head on over to activate my account, invite a few friends.. and what do I see?

So much for beta testing. I guess April Fool’s came a year late for Xcerion. I’d have thought developing for a (relatively more) standards compliant browser like Firefox for something as Web-centric as an Internet OS might be something of a priority. Apparently I thought wrong.

Re-reading the article from GigaOm, I realise that “Xcerion counted Lou Perazzoli, a former Microsoft distinguished engineer and one of key architect of Windows NT, and John Connors, former Microsoft chief financial officer was an investor.

Oh. I guess that makes sense.

HA. HA. HA.

——–

Well, yeah, I know it’s a beta and all, and we can’t expect everything to be perfect. But seriously, to develop only for IE? I would’ve thought it’s usually the other way around: developing first for compliant browsers, then mangling customising for IE. Xcerion must know something we don’t.

Still, I’m hoping they’ll buck up and come up with Firefox support soon, so people without access to IE can still give it a go.

Code.WTF()

It’s just so true!

Unfortunately..

<rant>

I so identify with the second situation now.

Ever tried wading through hundreds of lines of uncommented code?

I’ve got this project, see? I need to build on it to add features, see? I need some documentation to understand how it works, see?

Comments in the code would help, which unfortunately, I don’t see. =(

And as far as I can tell, the code looks, tastes and feels more like spaghetti than Papa Alfredo’s favourite pasta.

To the coder before me: Dude, WTF?

</rant>