Skip to content

Justin's Linklog Posts

Interesting/bizarre recent spam

Spam: some good crazy spam recently — firstly, some Seventh Day Adventist lunacy:

THE PAPACY IS THE ANTICHRIST THAT IS TRYING TO CHANGE THE LAW OF GOD. DANIEL 7:25

THIS IS THE LAST WARNING.
THE LAW OF GOD IS ETERNAL BECAUSE GOD IS ETERNAL 14:12. MT. 5:17 SATURDAY SEVENTH DAY IS THE TRUE LORD’S DAY. EXO. 20.8-11 SUNDAY IS A FALSE PAGAN DAY. IT IS NOT IN THE BIBLE. IT WAS USED TO WORSHIP SATAN

It runs on in that vein for quite a while. Interestingly, most of the text from there on in is ‘gappy’ — in other words, the spammer has inserted spaces between each character of a word — even inside link addresses. As a result, they no longer work. oops!

And a new one to me — natural-disaster spam (via Mark Pilkington):

THIS IS AN OFFICIAL WARNING!
fngva uvtt chloez

A huge 300 ft. high ocean wave is moving towards your continent. Your and many other cities are in a real danger.
Approximate wave moving speed is 700 km/h.
cmoym eaaa yypbzz

Please read more about this catastrophe here: (link)

We are strongly urging you to evacuate yourself and your family as soon as possible,
even though you may live far away from your city. The tsunami will reach the continent in approximately FOUR hours.

venbz nwvw exepmi
YOU HAVE BEEN WARNED!

I’ve removed the link, btw — the site it links to contains a bunch of nasty malware-installing IE-bug exploits. In case you were wondering: you can tell it’s genuine because it says IT’S AN OFFICIAL WARNING at the top.

(ObSpamComment: note — this here’s a good example of why spam is unsolicited bulk email, not unsolicited commercial email; neither are selling anything. one’s religious craziness, the other one’s trying to r00t your machine.)

Moving House

Life: I’m moving house — I’ve just filled about 20 boxes, now to get moving them! Sadly, there’s no wifi in range of my new house, so the upshot is I may be offline for a few days. Boo.

Fun Times Ahead with Nathan Myhrvold

Patents: Newsweek: Factory of the Future?:

The dino’s ferociously bared teeth hint at elements of Intellectual Ventures’ bold business plan. Myhrvold and his partner, former Microsoft chief software architect Edward Jung, have created the quintessential company for the 21st century. It doesn’t actually make anything … Only patent attorneys populate the quiet hallways. …

Sources familiar with Myhrvold’s strategy say that he has raised $350 million from some of the largest companies in high tech: Microsoft, Intel, Sony, Nokia and Apple. Google and eBay also recently invested. With this large bankroll, the company is out buying existing patents in droves. (Myhrvold won’t comment on these activities, but sources say he has already purchased about 1,000 patents.) The strategy is to set up a sort of patent marketplace. Patent owners get money upfront for the dusty ideas sitting on their shelves, the investors get the rights to use the ideas without being sued and Myhrvold gets to rent those same ideas to other companies that need them to continue creating products. …

“We’re concerned that these giant pools of patent rights are going to prevent entrepreneurs from entering markets, as opposed to being used to promote innovation,” says one worried Silicon Valley venture capitalist.

Now that’s scary…

JFK Reloaded

Games: OK, JFK Reloaded is very, very wierd.

Read the insanely detailed FAQ and boggle at the author’s obsessive research and fetishistic recreation of the events at Dealey Plaza, November 22nd 1963.

Quite worrying, to be honest!

EFF’s clueless spam filtering white paper

Spam: The EFF are a great organisation — damn, I even helped set up an organisation based on its goals in Ireland, back in the day! But this white paper is shockingly clueless.

(Note: this posting has been updated. Original left intact, but there’s an update below worth noting.)

For example:

Spam Assassin, a popular program that does ad hoc pattern matching, assigns ‘points’ to various features of an email to determine whether it is spam. … One of the major problems with this system is that messages from certain countries — like China, for example — can be blocked purely on the basis of where they come from and what language they’re in. The implications for free speech here are very troubling indeed: … thus anti-spam technology unintentionally works as a political censorship mechanism.

SpamAssassin does not give points for country of origin, or language the message arrives in, unless the user explicitly either (a) adds rules from an external source, or (b) modifies the ‘ok_languages’ setting in their configuration, from the default, to specify that they do not want to receive messages in particular languages. No country- or language-blocking happens by default. This is by design.

It’s a shame that the authors felt the need to outright fabricate a danger, here.

The white paper features more broad generalisations about ‘spam filters’, mostly using unsubstantiated friend-of-a-friend stories, without detailed data. And I do know that there have been cases of MoveOn.org, at least, being a source of UBE, in the past — so it’s not valid to claim that this is all a ‘free speech’ issue; political UBE is still spam.

They need to realise there’s a lot of very smart, very reasonable anti-spammers out there, and most of us agree with the rest of their goals, except for their spam position. This is hurting them.

Still, it appears they’re finally getting a clue about requiring subscription requests be confirmed using closed-loop opt-in, so that’s good. More political newsletters, and political campaigns, need to get this clue — just because it’s political speech does not mean it’s not spam. (I have several thousand political spams in my spam folder — most from that German anti-immigration virus from earlier this year.)

Note that Rod is unsure if they’re practicing what they preach…

Update: Annalee Newitz has been in touch, and pointed out that the white paper in fact says ‘mails … can be blocked’, rather than ‘are blocked’ based on country of origin. In other words, it’s purely a matter of this being possible, rather than the default, and that administrators apply these customisations.

In addition, she notes that the conclusions recommend that ISPs and administrators of spam blocking systems allow end users to control their own filtering settings, saying ‘If a user wants to block all mail from China, great. If a sysadmin does it for a bunch of users without permission, then that is a problem in our opinion.’

So I agree with that. Misdirected outrage hereby turned off ;)

(Mind you, I still think they need to work more with the reasonable anti-spammers… and fix that unconfirmed sign-up that Rod mentioned, if it’s really still unconfirmed!)

ApacheCon, and cranes falling into the sea

Trips: So I’m just back from ApacheCon 2004, which took place in the lovely Alexis Park building site ;)

Good fun was had — very interesting to meet all the faces behind the names from various mailing lists and blogs, and get the inside track on how the ASF really works… there’s quite a lot you don’t get to understand from the outside, or even from being a committer. So, a useful trip.

Most of the talks were, naturally, very web-oriented — we’ll have to see what we can do about that, next time around! One useful tidbit: I didn’t realise, but found out at the conference, that the ASF ConCom are very generous with paying speakers’ expenses. So maybe next time I’ll join the speaker line-up, too.

A major goal, one we achieved, was an impromptu SpamAssassin developer summit, 5 days sitting down together hammering on bugs and plans, with 4 of the main developers present (myself, Daniel, Theo and Michael). Pretty much achieved, although there were some thorny bugs to deal with… one interesting factor is that we may now be moving towards emulating the Apache httpd’s preforking model to deal with a memory/performance issue we’re seeing in 3.0.x.

Finally — this sequence of photos has been cropping up all over the internets. When I saw it, I immediately thought it looked a lot like Ireland — and Roundstone, Co. Galway, in particular. Sure enough, it appears it is! I guess the Connemara landscape of Roundstone’s bay is pretty memorable, after all…

patents4innovation.org

Patents: Patents4Innovation is a new site set up by several European multinational companies to lobby for the legalisation of software patenting in Europe.

Their FAQ is good for a laugh, including an answer that basically says that the Patent Office needs to do a better job, and another which states that opponents of software patents have been unable to demonstrate any ‘convincing’ evidence of swpats causing economic harm (despite the FTC and PriceWaterhouseCoopers reports, which are pretty high-profile organisations).

But the best quote — in fact, the only quote — appears on their Testimonials and Quotes page. Here is in full:

“… successful and profitable high-tech enterprises seem to be characterised by holding patents and copyrights. These instruments might reduce the vulnerability of firms with respect to competition and equip them with a more favourable market position.”

Source: the “Observatory of European SMEs 2002 / No 6: High-tech SMEs in Europe”, commissioned by the European Commission

(My emphasis.) Of course, there’s nothing worse than having to compete on a level playing field. ;)

(Thanks to Christian Beauprez for spotting that!)

New Scientist’s psychic website

Web: The lovely C sent me a link of note — it’s the eglu, ‘the world’s most stylish and innovative chicken house and is the perfect way to keep chickens as pets’. (She has a thing about keeping chickens.)

So I was all set to link to that on NoMoreSocks.newscientist.com, New Scientist’s nifty new xmas-pressies site; but — get this: it will not load in Firefox 1.0PR, 1.0, or Konqueror at all — in fact, using telnet, the site doesn’t actually respond to requests on port 80 from my linux desktop.

The only browser it seems to work with is MS Internet Explorer in VMWare, presumably using MSIE’s psychic powers to contact it without going through TCP/IP.

Mysteriously, it can be lynxed from my server in Ireland, but similarly doesn’t work for C’s Firefox installation on her desktop. How wierd!

One Really Stupid Feature

Usability: So, I’ve just found out about a useless feature of my microwave oven the hard way. The microwave’s manual notes:

Demo Mode

The Demo Mode is ideal for learning how to use the microwave oven. When set, functions can be entered without actually turning on the magnetron. The microwave oven light will come on, the fan will run and, if on, the turntable will rotate.

To Turn On/Off: The microwave oven and Timer must be off. Touch and hold TIMER SET.OFF for 5 seconds until 2 tones sound and ‘d’ appears on the display. Repeat to turn off and remove ‘d’ from the display.

Great! How useful! What a friendly UI! A tiny ‘d’ that indicates that, although your microwave looks like it’s cooking away, it’s actually doing nothing.

If you ever want to prank a friend with a Whirlpool oven, I’d recommend this one ;)

Global Guerrillas

Politics: Global Guerrillas: ‘Networked organizations, infrastructure disruption, and the emerging marketplace of violence. An open notebook on the epochal war of the 21st Century.’

This stuff is scary — and I think it’s right; the author thinks Bin Laden sees the US as an over-stretched 1980’s Russia, vulnerable to economic collapse; his last communique talks about what he calls the ‘bleed-until-bankruptcy plan’.

Bruce Sterling says ‘You ever read my 80s novel ISLANDS IN THE NET? The one with a sinister, imaginary book of military strategy in it called THE LAWRENCE DOCTRINE AND POSTINDUSTRIAL INSURGENCY? Well, this blog feels a lot like I imagined that book would have felt. Kinda floods the mind with creepily subversive 21st century insight.’

Definitely worth reading.

‘Stubberfield’ falls victim to first felony anti-spam conviction

Spam: 2 found guilty in first felony spam conviction: ‘LEESBURG, Va. – A brother and sister who sent unsolicited junk e-mail to millions of America Online customers were convicted Wednesday in the nation’s first felony prosecution of distributors of spam.’

Jeremy D. Jaynes, 30, (aka. Gaven Stubberfield) and Jessica DeGroot, 28, convicted to nine years in prison and a $7,500 fine respectively.

Nine years — wow, that’s a serious conviction for spamming… Virginia clearly takes this very seriously, as the home of AOL. Let’s see if this causes any of the remaining spammers to think twice.

Four More Wars

Politics: Disaster. I can’t believe it.

NoSoftwarePatents.com, and Michel Rocard appointed to draw up EP swpat response

Patents: I haven’t been blogging much, as I’ve got the damn flu. I thought I was clear after a minor bout, then it came back around again for another run… urgh. Now I’m all hot, confused, achy, and (due to it affecting my ears and therefore sense of balance) clumsy. Damn you, influenza virus! :(

But there’s some good news — NoSoftwarePatents.com has opened, with a nice, clean, clear website full of excellent content. Not only does it cover the usual list of basics, with good examples like FFII’s web-shop example, it goes into more detail about parallels; here’s a great one:

Patents on software are just as wrong as expanding the patent system to literature. With patents on story elements, no movie could be published without having to firstly check whether there is any general idea in the storyline that someone patented during the last 20 years. Here’s an example: At first sight, Dirty Dancing and Titanic are two very distinct movies. However, if there were patents on story elements, then the makers of Dirty Dancing could have sued the studio of Titanic. Both movies have a scene in which a poor boy takes a rich girl from a party of her social peers to a dancing party of his group, and she enjoys it. Dirty Dancing came out only nine years before Titanic, so any patent would still have been in force. No one knows whether James Cameron had that Dirty Dancing scene in mind as he wrote the Titanic script. Maybe Cameron never saw Dirty Dancing but the patent (if it existed) could be used against him anyway.

That’s exactly the right parallel to make! Software patents cover the tens to hundreds of little algorithms you need to put together to make a software product, and comparing an algorithm in a software product to a scene concept in a movie, illustrates that nicely.

Each page has a little quote from heavy-hitters like Bill Gates, Oracle, Deutsche Bank, PriceWaterhouseCoopers, etc., coming out against swpats. There’s also a section dealing with the disinformation that the other side has been putting out.

Next time you need to send a URL over to educate someone about this issue, this is the one to reach for.

Some news on the EU Software Patents Directive — IDA eGovernment News reports that ‘the formal approval of the draft Directive on the patentability of computer-implemented inventions by the EU Competitiveness Council has been postponed due to translation delays’, and notes that ‘on 6/10/2004, the Parliament’s Internal Market Committee selected former French Prime Minister Michel Rocard to draw up its response.’ It goes on:

Unsurprisingly, the appointment of Mr Rocard — an outspoken adversary of software patents — was welcomed by opponents of the proposed directive and criticised by its supporters. That Michel Rocard is taking over the dossier reflects the fact that the wider economic, infrastructural and social implications for Europe are now seen more clearly. Also, in the Council a learning process has begun, and it will be supported by the Parliament’s move, Mr Holger Blasum of the Foundation for a Free Information Infrastructure told journalists. On the oher hand, Francisco Mingorance of the Business Software Alliance pointed out that Mr Rocard hasn’t shown any sympathy to the directive in the past. We can only hope he will be sufficiently open to the view of persons and groups which have a different opinion, he said.

Well, that sounds like good news to me ;)

Why implanted ID chips are bad for privacy

Security: The RFID vendors are clearly on a roll, with all manner of uses being proposed. The most recent story is that VeriChip plans to implant them subdermally in hospital patients.

The company line is that it’s privacy-safe, since it doesn’t expose health records per se — just the patient’s ID number. However, that’s missing the point, in my opinion.

RFID chips will broadcast their ID whenever they are within range of a compatible scanner, and the range (in this case) is several feet — although the story notes that their readers used to track farmed salmon work from 10-12 feet, and the Schmoo Group guys I met last month had no doubts that a high-powered directional antenna like their wi-fi sniper rifle could extend that. There’s no encryption, or handshaking, in these chips, it sounds like.

There’s no mention if the chip is removed after you leave hospital; some comments about the idea behind this is that it may help if you’re involved in an accident, and want your info available to healthcare users, in which case you’d have the chip implanted and broadcasting at other times, in other places, as well.

So, if you’ve got one of these implanted, it’ll broadcast a unique code to readers in range at all times. If an attacker can scan while you’re nearby, and picks up that code, they know that it’s you, and you only. They only have to match that ID code to a visual identification once, and henceforth you can be tracked by that ID code.

There’s a possibility that they’ll fix this, by upping the CPU power and incorporating some decent public-key encryption — but then you need a PKI big enough to track every implanted citizen in the entire country, and the costs will go up and up. I’d find that doubtful. (Mind you, they seem to assume that having a centralized secure database of medical records is a fait accompli in most of the articles anyway, so…)

Cambodians Eager to Dine on Rats (fwd)

Funny: AFP: Cambodians Eager to Dine on Rats:

‘At first I just cooked them for my family to eat, but guests who tried them said they were tasty, so I started selling a few fried rats to the villagers,’ he said. Business boomed so he devoted his menu to them.

‘ We only eat the small rats — we dare not eat the big ones because they have too much hair.’

Big in Laos, too — although I don’t think I’ve heard of sit-down restaurants selling them. When I was travelling in Laos, one of the first tips I heard from other travellers was, ‘if you see something that looks like a fried rat — it is‘. urrgh.

(BTW, there’s actually good reasons not to eat rat-meat; wild rats and mice are truly filthy animals, vectors of all sorts of nasty diseases.)

Selves and Others now publishing RSS feeds

News: Selves and Others is a site that cropped up a couple of months ago, tracking the output of many of the left’s strongest voices, for example:

Well, one feature they were missing was RSS feeds, allowing users to track new articles by a specific author as they’re published. They’ve just added it; the good old orange XML button now appears on each author’s page. Excellent!

Playing US games on a European PlayStation 2

Games: when I moved from Ireland to the US, I brought along my PS2; I hadn’t had it that long, and I wasn’t going to leave it behind (despite many offers to give it a good home ;).

Of course, Sony include plenty of trade-restrictive features in the PS2; European games won’t play on a US PS2, and vice versa. So until now, I’ve been playing the few games I brought along from Europe, with the help of a YPbPr VGA converter, allowing the PS2 to display on a VGA monitor, and a transformer to transform 110V US current to 220V.

But that was before the superb japanese craziness of Katamari Damacy came along, and with GTA: San Andreas due out next month, something had to be done.

So — after a little shopping, I found the solution — rather than get into serious stuff like soldering, I got this — the Slide Card. It’s a 1.5-inch long piece of plastic, with a carefully placed notch. It requires one piece of PS2 modification — you first of all have to remove the front of the CD panel. This just requires popping out one screw and a couple of clips, painless. You can then leave it off — it’s purely cosmetic — or stick it back on if you really want to, at a future date.

Then, when you want to play an import game, the protocol goes like this:

  • put in the Slide Card boot DVD, power on the PS2
  • wait for the Swap Magic splash screen
  • insert the little plastic Slide Card, and slowly drag it left-to-right until it hits a piece of plastic internally
  • use it to pull out the CD tray, place the import DVD into the tray, and push it back in
  • use the Slide Card again, grabbing a little internal peg part with the notch in the card, and dragging the card right-to-left to load the CD into place.
  • hit ‘X’ on the PS2 controller, and the game boots!

So, this is a nifty solution; it basically works around the disc-replacement logic in the PS2, without any soldering or hackery required. And I’ve successfully used it after a night at the bar on several occasions, so that’s the true test of how twiddly it is ;)

Unfortunately, by now I’ve probably spent nearly as much on hardware to play US PS2 games with a European PS2, as I would have if I’d just bought a US PS2. But hey…

Indymedia cross-border takedown reaches Slashdot

Web: The slashdot story. The comments contain a massive amount of noise, but there are some highlights…

Some details of the backend; it appears Indymedia need more mirrors, and the imc-tech list and #tech channel are the best contact locations to get in touch. The comment also notes that the Mir CMS used by most IMCs generates static HTML — which is a good thing! I hereby withdraw my kvetching about server-side dynamic scripting in that case ;)

The techie who ‘had the contract with Rackspace’ comments, and provides a link to his weblog, which contains copies of the trouble tickets.

He also notes that the possible illegal posting was a newswire submission — therefore not ‘published’ per se, just uploaded in the same way an unmoderated-up slashdot comment is.

And finally — he notes that the EFF are offering to represent himself and Indymedia pro bono. Yay EFF!

The Electronic Frontier Foundation (EFF) is currently assisting Indymedia investigate possible responses to the seizure of its information. More than 20 Indymedia-related websites, along with Indymedia’s online radio, were hosted on the servers, which were dedicated machines provided by Rackspace.

‘This seizure has grave implications for free speech and privacy. The Constitution does not permit the government unilaterally to cut off the speech of an independent media outlet, especially without providing a reason or even allowing Indymedia the information necessary to contest the seizure,’ said EFF Staff Attorney Kurt Opsahl.

This is great news. Top-secret takedowns are not a good thing, especially when they span three national borders…

More on the Indymedia shutdown

Law: t r u t h o u t quotes this press release from Rackspace:

In the present matter regarding Indymedia, Rackspace Managed Hosting, a U.S. based company with offices in London, is acting in compliance with a court order pursuant to a Mutual Legal Assistance Treaty (MLAT), which establishes procedures for countries to assist each other in investigations such as international terrorism, kidnapping and money laundering. Rackspace responded to a Commissioner’s subpoena, duly issued under Title 28, United States Code, Section 1782 in an investigation that did not arise in the United States. Rackspace is acting as a good corporate citizen and is cooperating with international law enforcement authorities. The court prohibits Rackspace from commenting further on this matter.

(my emphasis.) I wonder which of those 3 Indymedia is supposed to have been infringing? It’s pretty clear how Rackspace feel about this situation, I think.

It seems MLATs have been used before to shut down Indymedia sites in the US; this cryptome mirror of Montreal IMC pages documents one such case. Here’s a summary from a quoted email there:

Heres a quite interesting story on the power of mlats and what we will have to look forward to with the COE treaty :

A cop car was broken into in Quebec and a security doc relating to measures for the Free Trade Area of the Americas summit protests was stolen and posted in the net in Seattle. At the behest of the RCMP, a magistrate judge issued an order to grab the records from a Seattle web site called the ‘independent media center’ using the US/CAN mlat. They were then visited by the FBI/Secret Service. They then had a gag order on this for several days before it was released today.

Great precedent. I wonder if when my car gets broken into again, I can use the cybercrime treaty to find my stereo again…

And snippets from the IMC press release of the time:

On the evening of Saturday, April 21, a day which saw tens of thousands demonstrate against the FTAA in the streets of Quebec City, the Independent Media Center in Seattle was served with a sealed court order by two FBI agents and an agent of the US Secret Service. The terms of the sealed order prevented IMC volunteers from publicizing its contents; volunteers immediately began discussions with legal counsel to amend the order. This morning, April 27, Magistrate Judge Monica Benton issued an amended order, freeing us to discuss the situation without the threat of being held in contempt.

The original order, also issued by Judge Benton, directed the IMC to supply the FBI with ‘all user connection logs’ for April 20 and 21st from a web server occupying an IP address which the Secret Service believed belonged to the IMC. The order stated that this was part of an ‘ongoing criminal investigation’ into acts that could constitute violations of Canadian law, specifically theft and mischief. IMC legal counsel David Sobel, of the Electronic Privacy Information Center, comments: ‘As the U.S. Supreme Court has recognized, the First Amendment protects the right to communicate anonymously with the press and for political purposes. An order compelling the disclosure of information identifying an indiscriminately large number of users of a website devoted to political discourse raises very serious constitutional issues. To provide the same protection to the press and anonymous sources in the Internet world as with more traditional media, the Government must be severely limited in its ability to demand their Internet identity–their ‘Internet Protocol addresses.’ A federal statute already requires that such efforts against the press be approved by the Attorney General, and only where essential and after alternatives have been exhausted. There is no suggestion that these standards were met here.

The sealed court order also directed the IMC not to disclose ‘the existence of this Application or Order, or the existence of this investigation, unless or until ordered by this court.’ Such a prior restraint on a media organization goes to the heart of the First Amendment. Ironically, the Seattle Post-Intelligencer learned about the existence of the order from ‘federal sources,’ suggesting that the purpose of the gag order was simply to allow the government to spin the issue its way.

The order did not specify what acts were being investigated, and the Secret Service agent acknowledged that the IMC itself was not suspected of criminal activity. No violation of US law was alleged.

Of course, cryptome is still chugging away as it always has been; simple HTML and no server-side dynamic scripting, means easy offshore mirroring ;)

How to turn a stale project site into a useful Wiki

Web: Almost every project and organisation has, at some stage, bemoaned having stale data on their website, and wished there was a better way to keep it up to date; or wished their FAQ was more complete; or wished they had the time to HTML-ize all their know-how and get it up there.

Well, here’s what we did in SpamAssassin to deal with this problem. (Seeing as I’ve talked about this three times in the past month, I’ll write it up here so I can just point at the URL next time!)

First off, we experimented with having the site checked into CVS, FAQ-o-matic, and the Python FAQ software (which was pretty good). All were OK, but very specific in format, using the traditional question-answer FAQ layout — that’s good for FAQs, but not so good for a lot of other stuff — and keeping it updated was still limited to a small group, therefore the info got stale again.

So we moved to a Wiki. Here’s my tips for Wiki-izing your website so that the end results are better than what went in.

Use good wiki software: unusable software will be a pain to use, and the info will still go stale. We used Moin Moin – http://moin.sourceforge.net/ – partly because I like Python (it’s nearly perl! ;), it can produce RSS, and it was pretty easy to install.

Don’t worry: people won’t vandalise it (much). It turns out that vandalism and people throwing up crappy info isn’t a serious problem at all. You should increase the barrier, in the following ways:

Require user accounts: set the security policy so that a user account must be set up before editing is possible. This means you won’t get wiki-spammed, and also has the side effect of imposing a pretty big barrier to casual vandals.

Send changes to a list: set all changes to be mailed to a mailing list as diffs. This is the most important tip. If you already have a mailing list with the knowledgeable part of the community on it, use that list — because they’re the ones who’ll be able to recognise if erroneous info is put up, and will be annoyed about this enough to bother fixing it. There’s a bonus side-effect of this; even if some people didn’t like the wiki to start with, they’ll eventually be needled into using it by wanting to fix stuff they perceive as wrong. And then they get sucked in ;)

Use diff for the mailed changes: Moin by default will only send out change messages saying ‘something changed on this page!’. That’s not good enough, unfortunately — you want to mail out what the new text looks like, and highlight exactly where the change happened. Moin can do this nicely, with this patch, which adds a mail_commits_address, where all diffs on every page are sent, using the normal diff mechanism.

Ensure the wiki software can revert quickly: If someone does make a bad change, Moin supports one-click reversion of the page to what it was beforehand. That’s great for dealing with spam, or clueless vandalism.

Keep one or two static pages: If you’re worried about some script kiddie thinking that defacing a wiki makes them look cool, then keep one or two of the primary user-facing pages as static data. For example, take a look at the link-bar at the top of http://spamassassin.apache.org/ ; five of the ten links are to static pages, the other five are now wiki-ized. In particular, our front page and our downloads page are both static, but our docs are predominantly Wiki’d.

Publicize Mozex: most techie groups will have techie users, and we hate using browser text-boxes to edit text. Mozex — http://mozex.mozdev.org/ — saves the day here — it’s a godsend.

Shepherd new changes: in the early stages, you want one or two people who tidy up changes from Wiki newbies, as they go in. They need to keep it looking pretty, and perform Refactoring of stuff that could be laid out better or should become multiple pages. Eventually, others will get the hang of that (and do a much better job than you do ;).

That’s the lot. Most of these are to, essentially, migrate aspects of your already-existing and already-working community into this new outlet. In our experience, it’s worked really well — our Wiki is now the most reliable source of info about SpamAssassin, and is extensive and up-to-date.

Indymedia server drives seized

Politics: Indymedia’s hard drives in Rackspace UK seized by FBI order, seemingly as a ‘courtesy’ to Swiss police. There’s several morals to be learned:

  • Rackspace UK are happy to roll over for the US feds;
  • it appears the action was taken using powers granted under the USA-Patriot Act;
  • hosting in Europe is not safe from bad US laws.

However, the UK site is back on the air, and reportedly they’re recovering nicely; ‘All this goes to prove that Indymedia is decentralised enough (but not perfectly) to survive an attack and that as a cooperative international network, we rock!’

more on H5N1 Bird Flu

Health: A few hours after ( ;) I link-blogged this New Scientist article about a case of the H5N1 avian flu transmitting itself between humans, Boing Boing put up this entry titled ‘Bird Flu risk extremely low’, which concludes that the risk is effectively not worth worrying about.

It’s fundamentally wrong, and is well worth pointing out as a result. As Quinn at ambiguous.org says, it’s not the danger now that’s important here — it’s the potential.

I read New Scientist religiously, so I’ve been following it, and this search on H5N1 gives the perfect illustration of why this is well worth worrying about:

(Now, while it’s worth worrying about, it’s not us end-users who should be doing the worrying. It’s the politicians who need to ensure CDC and the WHO are funded well, the terrible state of vaccine development and production be sorted out, the lack of outbreak monitoring infrastructure be addressed, and research into these strains is funded and given a priority, in case things do go all pear-shaped influenza-wise.)

New fronts for patenting

Patents: Sun files for patents on per-employee software pricing plans (/.). ‘Method for licensing software to an entity, including determining a per-employee cost for the software, determining a number of employees of the entity, and determining a total licensing cost using the number of employees and the per-employee cost, wherein the total licensing cost comprises a software license for all employees of the entity and all customers of the entity.’

But, in my opinion, here’s the good news — this is a patent on a license agreement. In other words, this is a new front for patents — the field of law.

Once the lawyers start running into situations where trivial concepts in their license agreements are patented, you can be sure the situation will start to turn around. ;)

Firefox 1.0PR’s software installation UI

Security: Given the current prevalence of phishing attacks and spyware infestations, designing a good user interface that protects naive users against malware is now more urgent than ever.

Firefox is, of course, widely touted as more secure than MSIE. This is by and large true, due partly to MS’ emphasis in their UIs on one-step ‘easy’ installation and confirmation-dialog reduction (in my opinion) — but also due to the fact that spyware companies don’t yet see Firefox as a target to the same extent.

This changed recently — spyware ‘toolbars’ started to appear for Firefox as well. It was quite a surprise to see a dialog pop up when accessing an otherwise normal-looking (though advertising-heavy) page, using my Linux desktop, prompting me to install some ‘toolbar’ .xpi file!

Firefox 1.0PR now includes code to deal with this. Here’s how it works.

If a site I’m viewing attempts to install an XPI file, I get this prompt:

Note that it’s NOT a dialog. This is pretty handy, because it means that I won’t get annoying dialogs all the time if I do accidentally go to a unscrupulous site; it just appears like the part of the page. In the clueless user case, they may not even notice that they’ve been protected, which reduces the risk that they’ll install the extension anyway.

(However, I would have extended it by using an icon or look-and-feel that indicated that this was a ‘trustworthy’ part of the UI, rather than possibly part of the page.)

If I hit the ‘Edit Options…’ button, I get this:

A simple-enough dialog containing the list of sites permitted to install extensions. update.mozilla.org is in there by default, and I’ve added texturizer.net so I can install from their more extensive list of older extensions. The address of the current site has been dropped in automatically.

To permit the site, I have to hit ‘Allow’, then ‘OK’. So I do that, and hit the ‘install’ link on the webpage again:

And there’s the Software Installation dialog. Note the red Unsigned warning, the proportion of text that is a warning about installing bad stuff (fully half!), and — this is interesting — a greyed-out ‘Install’ button.

The button is on a timer — it becomes clickable after 2 seconds. This, presumably, is to ensure that people read the dialog! Reportedly, users no longer read dialogs, instead hitting OK on every dialog that appears. In my opinion, this is arguably due to ‘the boy who cried wolf’ syndrome: by default, MSIE and older Mozilla versions will ask all sorts of stupid questions about ‘are you sure you want to send stuff on the intarweb?‘ whenever you use Google. If anything is guaranteed to induce dialog fatigue, it’s that feature.

(Update: actually, that’s not the reason. Reportedly, it’s a workaround for a couple of social-engineering attacks, whereby an attacker could persuade the user to type a word ending in ‘Y’, and time the dialog to appear just before ‘Y’ is typed — causing the keyboard shortcut for ‘Yes’ to take effect; or persuade the user to double-click in the right spot, and similarly time the dialog to appear in the right place, in time for the second click. Still, I maintain the measure is useful to deal with the ‘dialog fatigue’ issue too. ;) Thanks to Smyler and Rod for pointing this out.)

I would have gone further:

  • the ‘a software install was blocked’ page element should have an indication that it’s ‘trustworthy content’
  • both dialogs should default to ‘Cancel’, to avoid users deliberately pressing ‘OK’
  • I would possibly require a ‘yes, I read this’ tickbox to be ticked before the software is installed.

Interesting though. This is the way internet-facing UIs are going to have to develop, in my opinion.

Slides from Toorcon 2004

Spam: my slides from the presentation I gave at Toorcon 2004, ‘Spam Forensics: Reverse-Engineering Spammer Tactics’, are now up. Hope they prove enlightening ;)

Back from Toorcon

Travel: Toorcon was great fun! Lots of interesting conversations.

Unfortunately they had a cruddy internet connection, so I’m majorly backlogged, and can’t write about any of it just yet ;)

Bush at the UN

Politics: So I was listening to that this morning. Did I hear correctly? Did Bush really say that one of the good side-effects of Iraq’s invasion, was that there were now hopefully less attacks inside other countries? sure looks like it:

‘Coalition forces now serving in Iraq are confronting the terrorists and foreign fighters so peaceful nations around the world will never have to face them within our own borders.’

I’m sure the Iraqi civilians will love that. ‘Hey guys, sorry about all the missing limbs, but you’re doing a really good job of being flypaper so we don’t get hurt. Cheers! Have a 15% corporate tax rate!

ToorCon

Conferences: Hey — I’m talking at ToorCon 2004 down in San Diego this weekend! Come along and check it out, if you can.

I’d better hurry up and file my presentation slides pronto ;) The topic is:

Spam Forensics: Reverse-Engineering Spammer Tactics

In this talk, I’ll discuss how the SpamAssassin project has identified reliable signatures indicating that a message is spam, by reverse-engineering spammer tactics from the spam mails themselves. I’ll also discuss several specific features that we have identified, how we found them, and why the spammers add them.

Sitescooper is WorldChanging!

Green: Wow — UC Berkeley’s Lab Notes newsletter this month includes an article noting the benefits to the environment of reading your news on a PDA instead of getting a delivered newspaper. Check this out:

In a new study, UC Berkeley researchers report that receiving your news wirelessly on a PDA instead of delivered to your door requires up to 140 times less carbon dioxide, several orders of magnitude less greenhouse gases, and the consumption of 26 to 67 times less water.

To tease out the truth, Horvath and graduate student Michael Toffel dissected nearly all of the environmentally-relevant processes involved in both wireless news delivery and teleconferencing. In the case of newspapers, the researchers focused on the environmental effects of reading the New York Times in Berkeley, California, from the manufacture of newsprint and ink to the delivery from a nearby printing press to disposal of the newspaper. This data was then compared to such factors as the energy used to manufacture a PDA, including its microprocessor and battery, and the electricity required by wireless and Internet service providers to deliver news content to the device.

Sitescooper is therefore a WorldChanging tool!

The EU software patents battle returns

Patents: Now that the summer break is over, software patents are back on the EU’s agenda. The FFII (via EDRI-gram) reports

On 24 September 2004, the European Council will probably meet to rubber-stamp the ‘political agreement’ achieved on 18 May 2004 on the highly controversial software patents directive (2002/0047 COM-COD).

According to the FFII the text was designed to mislead ministers about its real effects. ‘It consists of many sentences of the form or ‘software is … unpatentable, unless … [condition, which, upon closer scrutiny, turns to be always true]’.’ And, states FFII, ‘It can be said with certainty that only a minority of governments really agrees with what was negotiated, but several governments were misrepresented by their negotiators, who broke intra-ministerial agreements or even violated instructions from their superiors.’

More info:

Lara Doody Smith

Life: Luke writes:

Lean and I were joined by Lara at 6.10pm on Saturday 28th September. Lara is a little (8lb 7oz, so not _that_ little) girl. And she is gorgeous. Of course.

Congrats! I’ll be dropping in on the three of them next week, looking forward to it…

Planetary Backgrounds now using Coral

Web: My Nearly-Live Planetary Desktop Backgrounds site is now using NYU’s Coral Content Distribution Network instead of FreeCache.org. (FreeCache wasn’t caching the files, because they were too small. drat.)

Coral is a ‘decentralized, self-organizing, peer-to-peer web-content distribution network’, using a distributed sloppy hash table and peer-to-peer DNS redirection infrastructure.

At least, apparently. ;) I haven’t read the papers yet, but what I do know is that so far, it seems to be working perfectly — each file is requested exactly once by the CDN servers:

  193.10.133.129 - - [31/Aug/2004:16:50:31 +0100] "GET
  /xplanet/tmp/200408311455.399750/day_clouds_800x600.png
  HTTP/1.1" 200 706936 "-" "CoralWebPrx/0.1 (See
  http://www.scs.cs.nyu.edu/coral/)"

and never requested again. That’s a big saving… nifty!

Linux and small hardware vendors

Linux: Everyone who’s used a non-MS system will have learned — typically the hard way — that not all hardware is equal. Not just in terms of specs, flexibility and power, but also in terms of whether or not it can be used at all.

Most hardware vendors consider their specification and interface documentation to be their crown jewels; giving access to these without a signed NDA is impossible. On the other hand, for free software developers, signing an NDA makes life quite difficult — it can be done, but nobody else can help you maintain it further without signing an NDA, the resulting code may ‘disclose’ too much of the ‘IP’, and so on. In a lot of cases, the vendor isn’t interested in giving access to the specs, even with an NDA — it’s their IP and why isn’t the customer just using Windows?

The end result: lots of hardware with crappy support on non-MS operating systems.

Things aren’t as bad as they used to be, though — since nowadays the high-end hardware is more likely to support standards, and Linux is a top choice on embedded hardware (set-top boxes for example), so it has a much higher profile. But cheap, end-user oriented PCs still wind up with components from vendors who couldn’t be bothered with non-Windows customers, and that can mean using a hacked-up, reverse-engineered driver and hoping it works. (That’s not to denigrate reverse-engineered drivers. some of them work great. But fundamentally, the vendors are making a mistake here.)

So it’s pretty impressive to see that LaCie are now sponsoring development of k3b, the CD/DVD burning application for KDE!

Good timing too, I was about to buy a DVD burner ;)

kgst output to ALSA/Artsd/ESD instead of just OSS

Linux: Here’s a patch that adds support for ALSA/Artsd/ESD output from kgst, the KDE gstreamer middleware used by JuK.

Background: JuK is a great music player app for KDE. However, it hogs
the sound device while running, which means that nothing else gets access to play sound until the app is shut down. This is suboptimal.

The reason it does this is because it plays sound via this chain of components: juk -> kgst -> gstreamer -> sink. Unfortunately, the
kgst component doesn’t allow control over what output sink to use, instead hard-coding the string 'osssink' — the OSS drivers, for traditional Linux /dev/dsp sound. My laptop doesn’t support mixing in the sound hardware, which means I need to use a software mixer. 'osssink' doesn’t support software mixing, instead giving the caller exclusive access to the sound card, and other apps will just have to wait for it to finish.

(As to why JuK doesn’t just play mp3s by running ‘mpg321 name-of-file.mp3’, and let us specify the ‘-o’ switch to use, I wish I knew. (ObOldbieGripe: component-based architectures are full of this kind of needless over-complexity ;)

Anyway, the patch in the bug above lets the user provide an environment variable for a string for kgst to use instead of 'osssink'.

Life Hacks: the magic of flat files

Tech: This is the second entry talking about ‘Life Hacks’. Possibly the best tip I came away from the talk with, is this one:

All geeks have a todo.txt file. They use texteditors (Word, BBEdit, Emacs, Notepad) not Outlook or whathaveyou.

What we keep in our todo is the stuff we want to forget. Geeks say they remember details well, but they forget their spouses’ birthdays and the dry-cleaning. Because it’s not interesting.

It’s the 10-second rule: if you can’t file something in 10 seconds, you won’t do it. Todo.txt involves cut-and-paste, the simplest interface we can imagine.

It’s also the simplest way to find intercomation. EMACS, Moz and Panther have incremental search: when you type a “t” it goes to the first mention of “t”, add “to” and you jump to the first instance of “to”, etc.

Power-users don’t trust complicated apps. Every time power-geeks has had a crash, s/he moves away from it. You can’t trust software unless you’ve written it — and then you’re just more forgiving. Text files are portable (except for CRLF issues) between mac and win and *nix. Geeks will try the Brain, etc, but they want to stay in text.

I was already doing this, having learned the latter lesson ;), but I was making one mistake — I was trying to keep the TODO.txt file small by clearing out old stuff, done stuff, and cut-and-paste snippets of command lines, and by moving things into files in ‘storage’ directories.

That doesn’t work. You think you’ll be able to grep for it later, but you’ll have forgotten what to grep for. You’ll even have forgotten what storage directory you used. The solution is to keep it all in one big file, and use i-search. That really does work.

In fairness, I actually have two files of this type. One is the “real” TODO.txt. But the other is a GPG-encrypted file containing usernames, URLs, passwords, nameservers, VPN settings, etc. I have a feeling this is another common Life Hack idiom, too…

Another great tip in the same vein, from JWZmake an /etc/LOG:

Every machine I admin has a file called /etc/LOG where I keep a script of every system-level change I make (installing software, etc.) I rsync these LOG files around (keeping redundant copies of all of them in several places) so that if/when I need to re-build a server from scratch, it’s just a matter of following the script.

This has been working out great (when I remember to do it. Discipline! ;)

Life Hacks: getting back to the command-line

Tech: So Danny O’Brien’s ‘Life Hacks’ talk is one of the most worthwhile reflections on productivity (and productivity technology) I’ve heard. (Cory Doctorow’s transcript from NotCon 2004, video from ETCon.)

There’s a couple of things I wanted to write about it, so I’ll do them in separate blog entries.

(First off, I’d love to see Ward Cunningham’s ‘cluster files by time’ hack, it sounds very useful. But that’s not what I wanted to write about ;)

People don’t extract stuff from big complex apps using OLE and so on; it’s brittle, and undocumented. Instead they write little command-line scriptlets. Sometimes they do little bits of ‘open this URL in a new window’ OLE-type stuff to use in a pipeline, but that’s about it. And fundamentally, they pipe.

This ties into the post that reminded me to write about it — Diego Doval’s atomflow, which is essentially a small set of command-line apps for Atom storage. Diego notes:

Now, here’s what’s interesting. I have of course been using pipes for years. And yet the power and simplicity of this approach had simply not occurred to me at all. I have been so focused on end-user products for so long that my thoughts naturally move to complex uber-systems that do everything in an integrated way. But that is overkill in this case.

Exactly! He’s not the only one to get that recently — MS and Google are two very high-profile organisations that have picked up the insight; it’s the Egypt way.

There’s fundamentally a breakage point where shrink-wrapped GUI apps cannot do everything you want done, and you have to start developing code yourself — and the best APIs for that, after 30 years, has been the command-line and pipe metaphor.

(Also, complex uber-apps are what people think is needed — however, that’s just a UI scheme that’s prevailing at the moment. Bear in mind that anyone using the web today uses a command line every day. A command line will not necessarily confuse users.)

Tying back into the Life Hacks stuff — one thing that hasn’t yet been done properly as a command-line-and-pipe tool, though, is web-scraping. Right now, if you scrape, you’ve got to do either (a) lots of munging in a single big fat script of your own devising, if you’re lucky using something like WWW::Mechanize (which is excellent!); (b) use a scraping app like sitescooper; or (c) get hacky with a shell script that runs wget and greps bits of output out in a really brittle way.

I’ve been considering a ‘next-generation sitescooper’ a little bit occasionally over the past year, and I think the best way to do it is to split its functionality up into individual scripts/perl modules:

  • one to download files, maintaining a cache, taking likely freshness into account, and dealing with crappy HTTP/HTTPS wierdness like cookies, logins and redirects;
  • one to diff HTML;
  • one to lobotomise (ie. simplify) HTML;
  • one to scrape out the ‘good bits’ using sitescooper-style regions

Tie those into HTML Tidy and XMLStarlet, and you have an excellent command-line scraping framework.

Still haven’t got any time to do all that though. :(