Worst. Ever.

Ze Frank is particularily funny today.

Posted in General | Comments Off on Worst. Ever.

Not knowledge

Interesting piece on topic maps, KR and Cyc by Eliot Kimber:

Thus my conclusion that topic maps, by themselves, do not in any really meaningful way “capture knowlege”. They can at best provide identifying objects for concepts, express simple facts about those concepts in relation to each other, and bind those facts to instances of the concepts. But that’s it. This is information. Very useful information and a sophisticated way to capture it, but it is not knowledge.

I think the same applies to RDF, with and without OWL. Or not?

Posted in General, Semantic Web | 4 Comments

Underground animals

This is so fun.

Elephant

(via information aesthetics)

Posted in General | Comments Off on Underground animals

A bunch of introductory links for students doing a thesis in the Semantic Web area (in no particular order).

What would be your picks?

Posted in General, Semantic Web | 8 Comments

On Windows 98

Memories, memories …

I got an Ebay package today and it put me into story writing mood. The content: a used ATX power supply. So here’s a rambling tale about long-dead computers and how I became a Mac zealot, followed by an admission that Windows 98 actually wasn’t as bad as I remember it.

How I got sick of Windows. Back in the olden days of Windows 98, computing was no fun. One day in 2000, during my freshman year at university, after Windows hat fucked up its registry again, I furiously wiped the HDD and reinstalled the beast and swore that this was the last time I had installed Windows.

So I prepared my move to Linux. I practically live in my computer, and I like to live in a place where I know how stuff works, so there was a lot to learn before I could feel comfortable moving to a completely different environment. Also, Linux was still pretty hardcore in back then – no Ubuntu. I started to learn VIM, switched from IE to Opera because it was available on Linux (Mozilla was nowhere near usable back then), and read up on the Unix architecture and dual-boot and stuff, and used the university’s Linux boxes from home over SSH whenever possible. It was exciting, and I witnessed the power of Unix.

But I’m lazy and a coward and never really got around to making the move. I muddled through. Meanwhile, it’s 2003. Hardly surprising, even my greatest care couldn’t prevent the Windows installation from getting slower and hangier and crashier day by day. But, as a CS student and all-around nerd, I depend on it. It became basically impossible to work on the system. Applications would lock up all the time, drag and drop didn’t work any more, plugging USB devices was a gamble. Finally, I had enough. That day, I went out and bought a shiny 12″ Powerbook.

Learning to live in OS X: Over the next six months, I slowly transferred my digital life to the Mac. Email and web browsing went over pretty quickly, as did PHP development and everything Unixy, but word processing and image manipulation and heavy-duty Java development and many other things still happened on the PC. (Ironically, I did reinstall Windows during this time. And, thinking that one new operating system at a time was enough, it was Windows 98 again.)

And then it died. One day in mid-2004, the box just wouldn’t start up any more. It became a brick, nothing moved. Dead power supply, perhaps? This was bad but not a crisis because the life-or-death stuff (email and calendar) happened over on the Mac. It was crunch time and so I decided to fix it next week. But next week became next month. Next month became never. That’s how I stopped using Windows.

Fast forward to 2006. I’ve moved four times, but the beige and blue brick is still with me, sitting in a corner under the window, while the trusty Powerbook got old and underpowered, but it is still my workhorse and delivers reliable service, seven days a week. For all this time, an item “repair old computer” was sitting in somewhere near the bottom of my various to do lists.

Better late than never: Recently I’ve been good at knocking items off the list, and today I got a new power supply which I bought for a fiver on Ebay. And yes, the box still boots up, right into the point of my life where it died back in 2004, with the files I worked on still on the desktop and a bunch of Slashdot tabs open in Opera. Which, for me, is probably as close to experiencing time travel as it will ever get.

Time machine

Some impressions while mousing around:

  • The old box is loud. I seriously don’t know how I could get anything done with that airplane engine running next to me.
  • I still feel right at home in that customized Windows 98. My folders and applications, the steel-grey color scheme, the custom icons and desktop backgrounds, I guess I could pick up work right where I left. And while the lack of anti-aliased fonts hurts my eyes, I still like the look.
  • Windows 98 runs seriously fast on an 1.4 GHz machine. Much more so than OS X Tiger on the 1 GHz Powerbook. Everything starts up instantly, no delays while the beast is swapping, no beach balls.
  • It took about 10 minutes until the first application crashed. (Opera, after dragging an HTML file from the FinderExplorer.)
  • There are games! A really cool collection of my all-time favorites. My career as a gamer essentially ended the day I switched to the Mac, the only thing I’ve played since with any regularity is Tetris (in the form of Quinn).
  • I relied much more on files than email back then. Apparently, every interesting email attachment I’ve ever received was neatly filed away in a person/project based directory system. Today I could never keep up with that, everything just stays in the mail.
  • I was a believer in detailed folder structures for archival back then. My email was filed away into dozens of project-based folders, my file system tree a veritable taxonomy. Today I have much systems and rely mostly on search, both with email (Mail.app) and files (Quicksilver).
  • Did I mention the thing is loud?

I did a few screenshots.

Ah, what a fun trip into the past. Now that the ugly box works again, I just have to figure out an actual use for the thing … Any suggestions?

(Reading over this again, I notice that something’s wrong. I must have bought the PC between 2000 and 2002, and so must have re-installed Windows after my alleged pledge to do it never again, and before getting the Mac. But it’s a good story as it is, and that’s the way I remember it, so I’ll leave it like that.)

Posted in General | 1 Comment

StatCVS v0.2.3 released

StatCVS has been almost dormant for two years. Today (and after much prodding from Dave Gilbert) I’ve packaged a new release.

The most significant new feature is that CVS tags are now shown in all timelines. For example, in the StatCVS report for the project itself you can marvel at the amount of inactivity between the previous release and today’s. More important, the release includes all the bugfixes and small improvements that have accumulated over the last two years.

Posted in General | Tagged | Comments Off on StatCVS v0.2.3 released

“For sale: baby shoes, never used.”

The haunting title’s a six-word short story, attributed to Ernest Hemingway. Catherina Fake asks her readers to write their own, and the results are priceless. My favourites:

Lucky, yes, but my twin wasn’t.

That’s how winter came that year.

The last man on Earth sits in his house. There is a knock at the door. (not six words but still great.)

“Adam, apples are delicious!”
“Uh oh.”

They lived, they suffered, they died.

Walking home, she regained her virginity.

Today, I threw her toothbrush away.

Malkovich! Malkovich Malkovich, Malkovich Malkovich: Malkovich!

(three words is enough) “I’m your dad?”

The fascination comes from what isn’t said in each of these stories.

(via SvN)

Posted in General | Comments Off on “For sale: baby shoes, never used.”

Reports, reports, reports

Microsoft often gets bashed for their clueless interaction design, often unfairly, but they really make it too easy for their detractors. Look at the first screenshot here:

Account Reports – Generate reports about accounts.
Competitor Reports – Generate reports about competitors.
Invoice Reports – Generate reports about invoices.

If I were a Microsoft customer, I’d certainly appreciate the thought and attention to detail that went into this screen.

Posted in General | Comments Off on Reports, reports, reports

Speech synthesis on the OS X command line

The problem was this: My computer would do some heavy lifting (like importing a couple M records into a MySQL database), and I would sit over at another desk (with BastianQ) doing something else.

Now, I got tired of walking over to my machine every five minutes to see if it was done yet. So I wasted a few minutes trying to figure out how to make the Mac beep after it’s finished its command line job, but neither beep nor alert nor sound nor anything else I could think of worked, so I gave up.

A much neater solution came along today, through this Mac Geekery post:

wc -l imdb.nt ; say "ok, what's next?"

The first part is the long-running command. The second part is just coolness.

Apple has announced that the next version of OS X will have much improved speech synthesis. That’s too bad, I dig this weird female robot voice. (In case your computer can play .aiff files: ok.aiff)

(In related geekness, I spent a tenth of a second wondering if say "ok, what's next?" > ok.aiff would work. It should! Turns out not even Unix is perfect.)

Posted in General | 3 Comments

MIN/MAX in SPARQL

Reading through Lee’s new SPARQL FAQ I didn’t really expect to learn anything new, but here we go:

How can I use SPARQL to query maximum/minimum values or other universally quantified criteria?

A combination of the SPARQL OPTIONAL keyword and the bound(...) filter function can be used to mimic some universally quantified queries. As an example, consider this query which finds the minimum price of every book in the underlying default graph:

PREFIX ex: <http://example.org/>
SELECT ?book ?minprice
WHERE {
    ?book a ex:book ; ex:price ?minprice .
    OPTIONAL { 
        ?book ex:price ?otherprice . 
        FILTER( ?otherprice < ?minprice ) .
    } .
    FILTER ( !bound(?otherprice) ) .
}

A hack, but still neat!

Posted in General, Semantic Web | Comments Off on MIN/MAX in SPARQL