Re: OT: lines of code (was Re: [dwm] jr-patchset up to date)

From: Anselm R. Garbe <arg_AT_10kloc.org>
Date: Thu, 31 Aug 2006 08:37:13 +0200

On Wed, Aug 30, 2006 at 06:49:22PM +0300, Ville Koskinen wrote:
> On Wed, 30 Aug 2006 12:34:55 +0000 (GMT)
> David Tweed <tweed314_AT_yahoo.co.uk> wrote:
>
> > One difficulty I have with emphasising minimising the lines of
> > code is that it tempts people to design functions which `work
> > given that we know other functions f1() and f2() happen to
> > produce certain things in a certain way',
>
> Isn't that called Programming by Contract? (Yes, a lame joke.)
>
> > That's why I'm more interested in programs that do one well-defined
> > thing rather than lots of vaguely related things. To be fair, I think
> > this is the sort of thing Anselm is getting at with `shortest
> > program'.
>
> I would rather call it "functional minimalism", although of course I
> can only guess at Anselm's motives.
>
> - Functional: it does everything it is supposed to do
> - Minimalism: it does everything in the shortest way possible and with
> the least amount of bling-bling [0]
> - Functional Minimalism: it does everything it is supposed to do in the
> shortest way possible and with the least amount of bling-bling, but it
> is not minimalist simply for the sake of being minimalist; it also works
>
> I've been using this term privately for some time, so I don't know how
> established it is. Wikipedia does have an article about Computing
> Minimalism [1], and there are of course many programming books
> dedicated to the subject. What you described (small, individual
> programs that do one thing well) is the centerpiece of the Unix
> philosophy [2], too. Also, a famous quote from Albert Einstein (I've
> seen a couple of variations, but this is the most common on):
>
> "Everything should be as simple as possible, but no simpler."
>
> Not to step on anyone's feet, but I think something like the above
> definition could work better than simple 10KLOC, although one can (and
> should) give 10KLOC as an example of how to achieve the goal with
> larger programs!
>
> The term Functional Minimalism seems to in use at least in architecture
> and (furniture) design [3].
>
> [0] bling-bling is a slang term, meaning eye candy, useless "features",
> the like
> [1] http://en.wikipedia.org/wiki/Computing_Minimalism
> [2] http://www.faqs.org/docs/artu/
> [3] http://www.google.com/search?q=functional+minimalism

I can agree on this.

Regards,

-- 
 Anselm R. Garbe  ><><  www.ebrag.de  ><><  GPG key: 0D73F361
Received on Thu Aug 31 2006 - 08:37:13 UTC

This archive was generated by hypermail 2.2.0 : Sun Jul 13 2008 - 14:30:45 UTC