Logical Methods in Computer Science

Logical Methods in Computer Science, a new open-access, online, refereed journal, freely available on the web. And whose name do we see on the editorial board but Swansea’s very own type theory guru (and my personal exam team nemesis) Anton Setzer. Nice.

Dashboard vs. Konfabulator

Via tr, one for the OS X people, and anyone interesting in the hissyfits that computer people sometimes throw: an interesting article comparing and contrasting Dashboard with Konfabulator, and arguing that the broo-ha-ha about Dashboard being a Konfabulator rip off is unfounded.

Thus, Dashboard is clearly an extension of Mac OS X system-level technologies: Web Kit for layout and scripting; Exposé for the Dashboard window layer; and Cocoa for advanced functionality. Dashboard is the result of advanced Mac OS X technology in action.

Konfabulator, on the other hand, was designed from the start with platform portability in mind. (A port to Windows was announced back in December.)

And this next paragraph…

Konfabulator is not a lightweight or small-footprint environment – every Konfabulator widget runs as a separate process, with its own runtime environment in memory. Most Konfabulator widgets use more memory than typical full-blown Mac OS X applications. Not just Konfabulator as a whole – but each widget. Install it, fire up Process Viewer, and see for yourself. (Ironically, the Konfabulator “CPU Portal” widget seems to leak memory.)

… is particularly interesting, and probably explains why Bash’s super-doovy Powerbook has been running less than optimally lately. Throw your Konfabulator into the road darling, it hasn’t got a chance!

Pragmatic Programmers

Don’t Live with Broken Windows, a conversation with Andy Hunt and Dave Thomas, aka The Pragmatic Programmers. They talk about the craftsmanship aspect of programming, and the idea, which I’ve always held close to my heart and been called a niggly unproductive perfectionist for, that small problems (in code) should be fixed and not left to fester, grow, and necessitate kludges and hacks. These guys seem pretty clued in.

Part two of the interview is here.

DRY says that every piece of system knowledge should have one authoritative, unambiguous representation. Every piece of knowledge in the development of something should have a single representation. A system’s knowledge is far broader than just its code. It refers to database schemas, test plans, the build system, even documentation.

Yes!

All via the terribly exciting programming languages weblog, Lambda the Ultimate. Also at Lambda, the beginnings of a programming quotes database, which includes the rather wonderful (to my mind at least) “static typing is to a good programmer what a spell checker is to a good writer“.

Patents we’d like to see destroyed

Electronic Frontier Foundation publishes patent hit list [act].

As part of its Patent Busting Project, the EFF in mid-June began soliciting the public for submissions of patents that were both potentially invalid and used to stifle online innovation. The organization received nearly 200 suggestions, 10 of which it will now formally ask the U.S. Patent and Trademark Office to re-examine.

For example:

2. Clear Channel’s Instant Live patent, which covers technology used to produce instant recordings of live concerts. The media giant recently bought the patent and is now going after artists who choose to give fans CDs of their shows.

I was trying to explain to Bash, just the other day, why Clear Channel are evil – here is the Gimboland entry on the topic made – gulp – three years ago, although Salon seem to be making you jump through hoops if you want to read it – sigh.

Linux iRiver ihp-120 notes

Notes on using an iRiver ihp-120 with Linux.

Whose Linux Is It Anyway?

Whose Linux Is It Anyway?, a Computer Business Review article about some claims that Linus Torvalds effectively nicked the early Linux code from other sources. Nicely, the article brings in the Super Big Gun of Andy Tanenbaum, author of Minix, who basically shrugs and says “it’s a load of nonsense, and the whole thing is highly suspicious”. The article concludes by hinting that Microsoft may be involved…

TouchGraph GroogleBrowser

Via Krag, whose wotever, he assures me, will be back up and running “real soon now”, we have the TouchGraph GoogleBrowser V1.01, which seems to use the Google APIs to make some pretty funky interactive graphs in a Java applet. It seems to use Googles “Similar to…” functionality, which means that the one for gimbo.org.uk doesn’t contain much that I recognise – lots about clocks, it seems. File under “odd but cool”, I guess.

Also cool, assuming your browser supports it, is the StumbleUpon toolbar – random web surfing with peer-recommendations, ratings, etc.

Mac Daddy

Today I wanted to get root on Bash’s Powerbook but didn’t know how. She, ever the clever one, suggested Google. Oh, such an obvious answer, so cliched… But it’s funny because it’s true, and I found my answer at this two year old article on the top ten Mac OS X tips for unix geeks (it’s number two – use the ever groovy sudo). Marvellous.

Moby Dock

Moby Dock, an OS X-like dock for Windows XP/2000 [null]

Best. Laptop. Ever.

So Bash just bought herself a 15 inch Powerbook, and is acting all smug and Mac-user-like. Just wait, however, until she sees this, far superior, product. Best. Laptop. Ever [gamma]

The Mathematics Genealogy Project

The Mathematics Genealogy Project [gamma].

Find any mathematician, his “parent” (i.e. dissertation advisor) and “children” (i.e. students).

I know that one of my colleagues is a ‘grandstudent’ of Turing but although Turing is listed here, my colleague isn’t. :-) I’ll have to remember who it is, find the details, and submit them.

Later: a sharp-eyed student pointed out that it’s Phil Grant, as you can see here.

2007-01-27: today I noticed that two more of my colleagues, Anton Setzer and Ulrich Berger, are grandstudents of Hilbert, in a line going back to Gauss, Dirichlet, Fourier, and Lagrange. Rather impressive.

Teaching

Shell scripts in 20 pages [gamma].

Right, that’s enough gammatron-catchup for one afternoon, it’s time I did some marking.

No rootkits on me, apparently…

chkrootkit – check your local Linux machine for root kits [gamma]. Gladly, it claims I’m clean.

Ghostscript PDF writer tips

Ghostscript PDF writer tips. For ages now, I haven’t been able to convert Postscript to PDF using ps2pdf on my box because the pages were coming out the wrong size, and I couldn’t find out how to fix it in the documentation. This page has brought back my happiness, and now I can produce lovely PDF notes, exams, handouts, and papers natively on my dekstop box without bloody logging into another box every time I want to make the PDF. It’s pure joy, it really is.

Hard to believe I only got 55% on this geek test [bash], isn’t it? (Warning: somewhat broken in Opera under Linux, alas.)

Planet Knuth

Wow… For perhaps the first time, I’ve just learnt something from a first-year report I’m marking. Apparently, Donald Knuth has a planet named after him. Yes indeed, ladies and gentlemen, we hereby present, Planet Knuth.

mutt and imap

How to use IMAP email with mutt – yes, it really is that easy. Nice.

Speed test

NDO Bandwidth Speed test, which might be of interest to my brother Mike, who’s got that pleased look on his face ‘cos he’s just got ADSL installed. :-)

ssh tunnels for fun and profit

Kewl, I just set up my first ssh tunnel, after reading this article. Very handy.

Tetris is NP-Hard

I got slightly distracted by the October 2002 Gimboland archive, and came across something which might be of interest to my students, or even my colleagues: Tetris is NP-Hard. Here’s the accompanying paper from MIT. For the uninitiated, here’s an explanation of NP-Hard, not that you might be any wiser after reading it.

Nokia prefers Python to Perl for smartphone scripting.

Nokia prefers Python to Perl for smartphone scripting.

Curator – nifty looking python for image galleries

Curator – some nifty looking python for image gallery creation. Possibly something for me to look at when I finally get round to getting my galleries working again, which I’d love to do in time to put up some wedding pix, but don’t see happening due to workload… :-/

Curator is a powerful [python] script that allows one to generate [static] web page image galleries [with "tracks"] with the intent of displaying photographic images on the Web, or for a CD-ROM presentation or archiving.

Switching gentoo runlevels at boot

Back when I used to run Debian, it was very often very useful to be able to boot to a different runlevel from the default. In particular, when there were problems, it was great to boot to level S (single user, a minimal boot) and start fixing things.

Runlevels in Gentoo, which I’m using now, are handled differently (also because you generally use grub instead of lilo), and I didn’t know how to do this.

Happily, this gentoo forum thread holds the answer (hidden away amongst the dreck), which is that you can add “softlevel=<whatever>” to the kernel boot options when in the grub menu. So “softlevel=single” seems to do the trick.

Hurrah.

Pricelessware

Use Windows? Like groovy small programs that do useful things? Then check out Pricelessware and tinyapps.org [gamma]. In fact, tinyapps.org also has Palm software – note ye well, young Basheera (eg this and this).

IT Industry shift away from Microsoft?

Here’s an Inquirer article claiming that the IT industry is starting to shift away from Microsoft, taking the point of view that we’re at or approaching a “tipping point” [bash]. I’m not sure I buy it – I’ve spent so long waiting for this to happen and it never seems to, but what the heck, the article has some interesting aspects, so I thought I’d share. :-)

Get your pies for the great pie fight

http://3.14159265358979323846264338327950288419716939937510582097.org/ [bash]

Mac OS X for hackers

What is Mac OS X? – a hacker-friendly answer [null].

Full of natty bits like the following:

It is worth noting that pressing T while your Mac powers on would boot it into what’s called the FireWire Target Disk Mode. Essentially, your Mac becomes a fancy external FireWire disk drive.

XNU’s Mach component is based on Mach 3.0, although it’s not used as a microkernel.

Python round-up

Checking out the Daily Python-URL for the first time in ages, I immediately see the following interesting items: MMA for autogenerating MIDI accompaniment files; lython, a LISP front-end for python, and finally, an ickle bit of python to calculate sunrise times (what, no sunset?). Good to see the Python world is rolling on without me…

Python implementation of Dijkstra’s shortest path algorithm

Python implementation of Dijkstra’s algorithm for shortest paths – got to be grokked. Also see Guido’s essay on the subject.

GvR interview

An interview with Guido van Rossum, creator of python.

Guido speaks: Unifying types and classes

Guido speaks: Unifying types and classes in Python 2.2. Related pages by Andrew Kuchling: What’s New in Python 2.2 and Python Warts.

Interview with GvR

Here’s an interview with Guido van Rossum, creator of Python… Fairly disappointing in terms of content, I thought, but a couple of interesting comments. He mentions a Python catalog a la CPAN, which would definitely be a good thing.

A comment from a Slashdot reader (in the discussion attached to the article) which I wholeheartedly agree with:

Unless your code is for you and only you, readability is perhaps the single most important feature of your code.

That’s just so true… A counterargument which immediately springs to mind is that correctness is the most important feature, but thinking about it, I think readability really is more important. I mean, you are, inevitably, at some point, going to write code which is not correct. When that happens, you or someone else has to correct it – and if it’s easy to discern what’s going on, that’s bound to happen quicker, and which a greater chance of success.

Another take: Knuth has said (eg here) that computer programming is not (or should not be) just about communicating your intentions to the computer – it’s also about communicating your intentions to other human beings (including yourself). If you subscribe to that, then readability is king.

« less retro