2002

31Dec2002

Turning Mac-anese.

One of the things I used to dislike most about the Mac was the way that applications stuck around even when you'd closed all their windows. “How annoying” I'd think, as I searched through the Application Switcher to find all the programs I'd started that were still taking up precious resources because I'd never explicitly quit them.

29Dec2002

Gresham Trumps Postel

You can't go ten feet on the Internet without having Jon Postel's Robustness Principle quoted at you. Like most accepted wisdom, it doesn't quite bear close inspection. The problem arises because following the robustness principle does not protect you from people who do not follow it. The results can be quite chaotic.

24Dec2002

YKYBHTLW...

You know you've been hacking too long when you come up with an idea for a silly Science Fiction/Horror short story, in which the universe implements reference-counting, and as soon as the number of `references' (i.e. connections to other people) you maintain reaches zero, you are visited by The Garbage Collector.

18Dec2002

AOL patents IM

Before you scoff about patenting the obvious, try to remember back to just how revolutionary ICQ was, and how quickly everyone flocked to it. ICQ introduced the idea that <em>presence</em> would work over the Internet, not just on closed-gate BBSs and online services.

17Dec2002

Inheritance Taxonomy

An object's interface (try to forget the way Java has co-opted the term for its own ends) is the set of messages to which it will respond. Thus, interface inheritance is the declaration that one class will respond to the same set of messages as another. This is the cornerstone of polymorphism: two objects that respond to a common set of messages (having a common interface) can be substitued for each other at compile- or run-time, allowing for more dynamic and flexible programming.

13Dec2002

What Does Maven Do?

Everybody seems to have glowing praise of Maven at the moment. The problem is, it's not immediately apparent from the site's front page what Maven actually does. On one hand, I really don't have the time to play around with Maven until I grok it. On the other hand, if I did grok it, perhaps it would save me an inordinate amount of time in the future? I don't know.

13Dec2002

Why Hibernate Rocks

Hibernate was brought up to 1.0 in a very short space of time, by two programmers working with one of the most efficient motivations a programmer can have: frustration. If any of you have ever done any significant work with Entity EJBs in Websphere 3.5, you'll know exactly the frustration of which I speak.

10Dec2002

Why Java will not get Macros

There have been calls from some quarters for a fully fledged macro system in Java I think the chance of this escaping academic study and getting into mainstream Java is somewhere close to zero.

09Dec2002

SOAPy Madness

I've only ever written two SOAP applications. The first was &ldquo;Hello World&rdquo;, except it would give back a random quote from the fortune file instead of the boring Hello. The second was truly diabolical...

05Dec2002

JSR 201 analysis

I think my biggest problem with the enhanced for statement is that it's the one thing in JSR-201 that is a step away from the right thing. Once foreach is implemented, the precedent has been set: whenever the lack of blocks causes us to lag behind C#, don't fix the underlying problem, work around it with a variant on what we have already. That leaves me a little cold.

03Dec2002

Code Conventions (final)

The natural mode of any disagreement on the Internet is highly charged rhetoric. It's because we have this invisible audience that may or may not exist, so the instinct is to play to the crowd. This tends to elevate the most trivial discussion into a flamewar of epic proportions, especially with things that are matters of taste that can never be decided through reason (emacs vs vi, Java vs .NET, or code conventions)

02Dec2002

I is NOT for Interface

On Hungarian Notation: I prefer to have code that is easy to read in the general case, and tools that will tell me the supporting information if and when I need it. The information should be available, but not obscuring the code.

29Nov2002

Slashbots...

When looking through the comments on Slashdot stories like this, and seeing the kind of ignorant garbage that gets moderated up, it really helps to keep repeating to myself: &ldquo;They're only kids. They've probably never developed anything longer than a 100 line Perl-script in their lives.&rdquo; But it's so disheartening to see so much ignorance concentrated in such a small place, labeled as the &ldquo;voice of nerd culture&rdquo;.

28Nov2002

Cross-cutting concerns

ime after time on projects, though, a set of requirements end up written on cards that do not fit. They are the round peg to the User Story's square hole. These requirements are: security, usability, performance, and logging (especially audit logs). These are generally shoved in the catch-all category of Non-Functional Requirements.

26Nov2002

Deconstructing Buffy

The paper looks at both the internal structure of the diegetic universe of BUFFY, and considers the T.V. as a 'symptomatic' product of the current later capitalist culturo-political conjuncture. In particular, as the subtitle indicates, the paper uses a consideration of BUFFY to raise questions concerning where we might stand today vis-a-vis the enlightenment project of opposing all things spectral and vampyric in the name of rendering social and political life transparent to reason

25Nov2002

Gartner in one easy paragraph

"You've got to understand that most of the input into Gartner is from briefings arranged by the marketing departments of companies that are paying them to listen to their briefings. Basically, Garter sits at the apex of the hype food-chain; they consume pure hype and produce little sh&amp;t-pellets of hype that is[sic] as dense as neutronium." - Marcus J. Ranum, on firewall-wizards.

21Nov2002

When your only tool is a hammer...

Weblogs are fun, and interesting, and a very neat way of exchanging timely information in a decentralised environment. But they have some significant weaknesses that make them unsuitable for the task of providing a repository of academic research.

20Nov2002

Rabbit-proof fence

Our intelligence services are getting exactly the same amount of information, they've just lowered their clipping levels below the point of usefulness as a result of the blame we placed on them for not warning us before the attacks in New York or Kuta. We should consider these warnings to be a failure condition, proof that our alarm is still unable to discriminate between a rumoured attack and a real plan.

18Nov2002

iPulse

iPulse is pretty cool. It's a system monitor for OS X that can display CPU, disk, memory and network usage (and the time) all in a compact radial layout.

16Nov2002

Usability tip: Game sites

When I go to the &lsquo;Official Site&rsquo; for a computer game, there's a good chance that I already have the game, and am looking to see if there are any patches available. Put that information, or a link to it, on the front page. Even if there are no patches, link to a page that says there are no patches.

15Nov2002

Kudos

And tonight Linux showed me how much it deserved my respect. I damaged its root filesystem beyond recognition and it didn't crash. It still hasn't crashed. I looked in directories with corrupt descriptors, files that made absolutely no sense, and Linux didn't panic on me, it just reported what it could see to the best of its ability.

15Nov2002

Oh God....

I have utterly destroyed the partition table on my primary hard drive. I have no backups. Don't drink and su.

15Nov2002

Egress Filtering

Egress filtering is a good idea, and every router should implement it as a matter of course. Sadly, a lot of them don't, and it's one of those things where even if you have egress filtering working fine across your border, you're not safe unless everyone else is doing it too.

14Nov2002

The Top Seven Things Wrong with the Internet

The Internet is in serious need of an upgrade in a number of areas. Some of these problems already have fixes, they're just not being rolled out because it's considered too hard, or there are large vested interests in maintaining the status quo. (This was originally going to be a top ten, but I ran out of writing time during my lunch hour. I may amend the list later.)

13Nov2002

Falling Down the Stairs

The game is called Porrasturvat, a word the author vaguely translates to English as &lsquo;Stair Dismount&rsquo;. It's a physics simulation, the physics in question being just how much damage you can do to somebody when you push them down a flight of stairs. It's more than a little scary how much enjoyment one can get out of the simplest cruelties.

11Nov2002

Copy-Protected CDs

The day a CD comes out that I want, but that only exists in a copy-protected form, is the day I return to the p2p networks. I bet you any money I'll find the whole album there. If an industry believes that its oligopoly is an excuse to treat customers like criminals, then I will quite happily satisfy their presumption.

29Oct2002

How not to run a company

Every incoming mail was being silently redirected to the director's inbox. By the next staff meeting, he had a list of all the distribution- and mailing-lists we were to get off now. Needless to say, that's about when I started looking for a new job.

28Oct2002

So 2001...

If you look really closely at the icon for Omni Outliner files, it's a rendition of &lsquo;All Your Base&rsquo;

28Oct2002

Personal Space

One of the surest ways to get on my nerves very, very quickly, is to touch me. I have this very strong sense of personal space, and strangers touching me just makes me cringe.

22Oct2002

favicon.ico

Just to show off my complete lack of artistic skill, both The Fishbowl and my livejournal have a k-rad favicon.ico.

21Oct2002

HTTP Conditional Get for RSS Hackers

The people who invented HTTP came up with something even better. HTTP allows you to say to a server in a single query: &ldquo;If this document has changed since I last looked at it, give me the new version. If it hasn't just tell me it hasn't changed and give me nothing.&rdquo

20Oct2002

Golden Rule of Open Source

The number one rule for starting an Open Source project. Never, ever, ever start the project without having working code that people can compile, run and play with. If you don't, you'll never develop anything.

20Oct2002

Password Recovery Practices

After a thread on the webappsec mailing list, I spent some of yesterday coming up with a guide to password recovery techniques for public web applications. Available as a PDF.

19Oct2002

The Manual

The Manual (How to have a number one the easy way) by the KLF: "Other than achieving a number one hit single we offer you nothing else. There will be no endless wealth. fame will flicker and fade and sex will still be a problem."

18Oct2002

The Problem with HTML

This really sums up the situation with HTML as far as the W3C is concerned. HTML4 is dead. XHTML1 was just a transition from a monolithic SGML format to a modular XML format. The as-yet-unfinished XHTML2 is the only way forward for the standardized web. Thus, any improvements we might want to make to the specification must end up in, and conform to the goals of, XHTML2. But how long do we have to wait for XHTML2, and what if we don't want to use it when it gets here?

17Oct2002

My life

The found something I'd forgotten about. Once upon a time, back in 1998 or so, I had a list of things that I wanted on my homepage. On it was &ldquo;A life. Preferably in a metallic blue, or maybe dark green.&rdquo; Soon after, Lonita sent me this.

17Oct2002

The Mixerman Diaries

In The Daily Adventures of Mixerman, a sound engineer keeps a diary of his life making an album, the names being changed to protect the guilty.

17Oct2002

Links for Hire

Dear Sun. I also have no scruples. If you pay for me to fly to San Francisco, I will blog whatever the hell you want me to.

16Oct2002

Writing: The Best of The Worst

An international literary parody contest, the competition honors the memory if not the reputation of Victorian novelist Edward George Earl Bulwer-Lytton (1803-1873). The goal of the contest is childishly simple: entrants are challenged to submit bad opening sentences to imaginary novels. Although best known for The Last Days of Pompeii (1834) and the phrase, "the pen is mightier than the sword," Bulwer-Lytton opened his novel Paul Clifford (1830) with the immortal words that the "Peanuts" beagle Snoopy plagiarized for years, "It was a dark and stormy night."

15Oct2002

What were you doing in 1993?

I spent most of the year hanging around with people who I knew from school but didn't particularly like, because at least it avoided the hassle of trying to meet new people. Big mistake. Other interesting things that happened that year mostly involved me being thrown out of the University tavern for being underage, and having my eyebrow shaved off at someone else's 18th birthday party.

13Oct2002

Strained Tag Soup

The tools aren't there yet, of course. The standards don't support everything we want to do, and the browsers don't support all the standards that do exist. We've got years to go yet, but that doesn't mean we shouldn't be moving in the direction of semantically correct web-pages.

11Oct2002

The Price Curve

Dave Johnson asks what's wrong with the price/quality curve of software. I reply that most expensive software requires expensive customisation, so a few hours extra installation time isn't really a serious business issue.

11Oct2002

The problem with monopoly

I recently discovered a bug in Internet Explorer version 6 that causes random type in my weblog's sidebar to disappear. In a competetive environment, this would be IE's problem. In the real world, it's mine.

10Oct2002

Slashdot gets trolled

&ldquo;I have come up with a new form of encryption that's better than a one-time pad. Should I patent it?&rdquo; Or, &ldquo;Dear Slashdot editors. April 1 was six months ago.&rdquo;

09Oct2002

The Option List from Hell

<p>Exhibit A, your honour. An options list from a website's registration form containing <em>341</em> different salutations, including &ldquo;Honourable Judge&rdquo;, &ldquo;Senator&rdquo;, &ldquo;Dpty. Commissioner&rdquo;, &ldquo;Kepala&rdquo; and &ldquo;YB Dato' Paduka Bijaya Di Raja&rdquo;, but shamefully missing &lsquo;Mademoiselle&rsquo;.</p>

09Oct2002

YKYBHTLW...

You know you've been hacking too long when somebody says &ldquo;Axis of evil&rdquo;, and you think &ldquo;Hey, <a href="http://xml.apache.org/axis/">SOAP</a> isn't that bad...&rdquo;

09Oct2002

The Joy of HTML

I just looked at my weblog homepage in Netscape 4.78 for Linux. If you get the chance, you should try it, it's really funky. It looks like William Burroughs cut my page up and pasted it together in random blocks.

09Oct2002

Worse is Evolvable?

Clay Shirky and Mark Pilgrim revisit the territory of Richard Gabriel's classic essay; <cite>The rise of &ldquo;Worse is Better&rdquo;</cite>

07Oct2002

The Move

Charles sacrifices his Google prestige in order to get a more distinctive domain name, and better weblogging software.

01Oct2002

Why do J2EE Appservers Cost So Much?

From Bryan Dollery on the Extreme Programming mailing list: &ldquo;If business leaders were interested in money then they'd use JBoss overWebSphere or WebLogic. The three products are, for most uses, identical -but JBoss is free while Web* can cost around $50,000 per processor. If money is that important, why do these products sell?&rdquo;

24Sept2002

Mini-Pattern: Error Codes

You want to make it as easy as possible for a client writer to inform the user of abnormal conditions. The easier it is to write a client, the more likely your service will be quickly adopted. Therefore, present error messages both as an easily machine-parsed code, and as a textual description.

23Sept2002

IDEs: focus on the basics

Too much of the marketing of development environments seems to ignore the fact that the thing coders spend the majority of their time doing is either writing code, or thinking about writing code. &ldquo;Just fill in this wizard, and you've deployed your very own web service&rdquo; does not impress me much when all the service does is say &ldquo;Hello World&rdquo;

09Sept2002

Being Skinned

One of the User Interface fads that emerged in the 1990's was &lsquo;skinnability&rsquo;, the ability to customise the appearance of an application right down to its controls and window decorations. Skinning continues to be a big hit amongst computer users who can now make their entire computer look like their favourite cartoon, but it presents a challenge to User Interface designers.

04Sept2002

The Grief Industry

The way the media treated the first anniversary of the World Trade Centre attacks makes me sick to the stomach. It's grief as entertainment. the line blurred between sickening reality, and the vicarious hit of constructed drama.

04Sept2002

The StringBuffer Myth

My stock reply (with bytecodes to prove it) to anyone who tells me I should use the StringBuffer instead of String concatenation in Java.

30Aug2002

Signs Sucked. A movie review.

Signs sucked. It was a typical M Knight Shamayalan movie, All the characters were unbelievable and totally impossible to identify with, and the pacing was way off. (SPOILER)

23Aug2002

Gnome Swapping

There was a story on the news about people stealing garden gnomes. Now call me a wild-eyed anarchist, but I think this is a good thing for gnomes and people alike. No gnome should be left unturned

23Aug2002

A Better Java Learning Environment

I've taught a number of &ldquo;Introduction to Java&rdquo; courses, and I've always felt that they approach the problem the wrong way, with methods that are more suited to the teaching of procedural than object-oriented programming. So I came up with an idea of how to do it better... and discovered someone else had beat me to it.

10Aug2002

Picking Locks

By this moment, the door is swinging shut. That's when the mental image hits me. My front-door keys, sitting spread out by the keyboard on my computer desk. And I know, I <em>know</em> without having to check my pocket, that they're still there.

04Apr2002

Web Design: Link Colours

Jakob Nielsen tells us that when designing a webpage, we should always keep the browser default link-style: blue underlined text. Of course, nobody does this because in the context of a lot of pages, blue underlined text is pretty ugly. Anyway, here's my rules of thumb for links.

24Mar2002

How to get published

There's this thing commonly called the "slush pile". It's where your manuscript will end up if you mail it to a publisher. Manuscripts in the slush pile get read by a young recruit at the publishing house, straight out of college, whose job it is to look at the tens of thousands of unsolicited manuscripts, and recommend any good ones to someone higher up in the food chain. Common practice is for them to read the first four pages, or maybe the first chapter.

23Mar2002

iPod Review

It's tiny. The picture doesn't do it justice, because it's out of proportion with my head, and just makes my hand look really big. Remember my Nokia 8820 phone? It's the same height and depth, and only about a third wider. I'm pretty sure the instructions at Apple would have been "Make it the size of a pack of cigarettes".

12Mar2002

Pacing as Meditation

You can put your feet on automatic pilot, and your brain goes into this strange mode where some part is devoted to navigation and making sure you don't walk into anything (cars, people, lamp-posts, trees), and the rest is free to think about anything you want. But the part that's doing the navigating seems to be the same part that gets in the way when you're just sitting down.

04Mar2002

Blogging and Employment Prospects

When Dejanews came out, there was trend in certain parts of the tech sector to do a Dejanews search on a potential employee. Some of these searches were benign - to quote from memory one online friend, "Their posts in comp.software.xyz would give me a good idea of how much they know." On the other hand, the potential prejudice if someone found your posts to alt.lifestyles.furry, or the fact you used to troll alt.usage.english could be rather career-limiting.

03Mar2002

Uncle Wally

I can only remember meeting "Uncle Wally" once. We were visiting England for my cousin's wedding, and I must have been eleven. He had a big fancy house and a swimming pool. He was nice. I played the first few bars of Pachabel's Canon in D on his grand piano, but couldn't play any more because I hadn't learned it yet. He died on December 26, 2000.

15Feb2002

The Blogger Manifesto

<p>Chris Pirillo posted <a href="http://chris.pirillo.com/archives/week_2002_02_03.html#000380">The Blogger's Manifesto</a> recently. I take issue with the fact that many bloggers and online journallers think that they are in some way above criticism&mdash;believing that just because readers choose to read a particular site, they should ignore those things disagree with while reading.

12Feb2002

XSLT is the Spawn of Satan

OK. Now wouldn't it be cool if the language itself was valid XML? Why? Because... er.. because then you'd be able to make an XSLT document that takes another XSLT document and converts it into XSLT! Wouldn't that be cool? Er, yeah, sure.

12Feb2002

What's Wrong with OPML

OPML is the &ldquo;Outline Processing Markup Language&rdquo;, an XML document format from Userland for the storage of outlines. Unfortunately, I find the whole thing rather clunky and hard to use.

05Feb2002

Hacking Radio Part 1: Docspotting

I tried to start programming in <a href="http://radio.userland.com">Radio</a> today. I didn't get particularly far, basically because it was so difficult to find out how any of it worked

17Jan2002

Oops!

A plaque intended to honor black actor James Earl Jones at a Florida celebration of the life of Martin Luther King instead paid tribute to James Earl Ray, the man who killed the black civil rights leader, officials said Wednesday

07Jan2002

DVD Pet Peeves

The selling point of the DVD is the movie that's on it, and when it comes to that, there's no competition - if I want to buy Crouching Tiger, Hidden Dragon, I can't say "No, I'll buy the one where you don't have a minute of sword-fighting to watch just to get from the main menu to the sound menu"