Skip to content

{ Category Archives } comp. sci.

Startups as the Future of Technology

It’s very fashionable in geek circles to attack Paul Graham at the moment, particularly after his essay You Weren’t Meant to Have a Boss. I’ve been reading his essays for a few years now and I’ve wavered between agreement and an undefinable sense of unease. Now I believe I can finally pin this down.

The central point of Graham’s Boss [...]

What is this Property?

I’m not a mathematician, just a computer scientist with an interest in maths, so please excuse the simplifications and inaccurarcies in this. I’m going to describe this with some rigour, but I’m bound to get things slightly wrong, please bear with me.

In maths, a function is defined as a relation between the members of two sets, S and R, [...]

The Ultimate Development Environment

An enormous claim, I know. But this is not about processes, tools or working conditions. This is about something quite different.

Shrew is progressing, it now sports an s-expr to XML evaluator; I’m reading RESTful Web Services to gain a better idea of how it should expose resources. And I’m also working through The Seasoned Schemer. And therein lies the most [...]

Girl Geek Dinner 0

The first Girl Geek Dinner, Sydney was held on Thursday, at Chinta Ria. For those of you who haven’t heard of this: women working in computing/IT get together, have dinner, discuss technical topics and generally network. Damana has been organising this over the last month and a half or so. While the events are intended for women, each woman can [...]

Prototypes and Real Applications

There is an essay, The Art of Lisp & Writing by Richard Gabriel. It’s long, but like all of Gabriel’s essays it is worth reading if you’re interested in exploring alternative views of the act of writing programs.

I am simply not qualified to do justice to Gabriel’s central point. Simply note, it was Brooks of The Mythical Man Month, that bible of [...]

One Computer

Thomas Watson from IBM said that he could foresee a need for perhaps five computers worldwide, and we now know that that figure was wrong, because he overestimated by four. – Clay Shirky

There is only one computer in the world now, and that computer is the World Wide Web. Developers must [...]

Currying

As a lazy functional language Haskell has to provide automatic currying of all functions. But once you’ve tried to use a functional language that doesn’t automatically curry you realise this isn’t just an implementation detail, it’s a useful technique for concisely implementing programs.

but before describing how currying helps, what is it? Currying is a concept from the analysis of mathematical [...]

Local Editing

I was never entirely happy with using the Blogger editing box in a web browser for an entire, long post. It’s in a browser, where the slightest click or accidental action could cause the post to be lost. Plus, all my blog posts are now stored on Google’s server. Call me old-fashioned, but I like my work to be [...]

I Don’t Get Jeff Atwood

I read quite a few blogs, on different topics, but there is (obviously) a whole bunch of computing ones in there. I read some of the big name ones, like Joel on Software and The Old New Thing, as well as some that could possibly be regarded as second-tier in the blagosphere like Intertwingly and Steve Yegge.

But one big name blog I [...]

Method Dispatch and Scheme

As I work on Shrew and attempt to learn more about Scheme, I’ve been doing some reading. And in one of my books I had one of those ‘Aha!’ moments where I really saw the benefit in the Scheme way of doing things.

In object-oriented languages there are two approaches to dispatching methods.

Message Passing: Objects are regarded as actors. Method call is treated as sending [...]