### Re: (Open|Net)BSD local root exploit

```
On Mon, 18 Jun 2001, Jonathan Peterson wrote:

However, after playing Baldurs Gate 2 all weekend, I'm obliged to say that
really if you have a priceless artifact that you don't want found, the
trick is to give to a peasant, because no adventurer is going to go round
killing every peasant in the land to find the one with the treasure. See

That is unless you're Herod. Then Herod, when he saw that he had been
tricked by the wise men, was in a furious rage, and he sent and killed all
the male children in Bethlehem and in all that region who were two years
old or under, according to the time which he had ascertained from the wise
men.

I say we take off and nuke the entire site from orbit. That's the only
way to be sure.

Later.

Mark.

--
s''  Mark Fowler London.pm   Bath.pm
http://www.twoshortplanks.com/  [EMAIL PROTECTED]
';use Term'Cap;\$t=Tgetent Term'Cap{};print\$t-Tputs(cl);for\$w(split/  +/
){for(0..30){\$|=print\$t-Tgoto(cm,\$_,\$y). \$w;select\$k,\$k,\$k,.03}\$y+=2}

```

### Re: Training anyone ?

```
On Wed, 13 Jun 2001, Lucy McWilliam wrote:

Beer good.

Beer Foamy.

--
s''  Mark Fowler London.pm   Bath.pm
http://www.twoshortplanks.com/  [EMAIL PROTECTED]
';use Term'Cap;\$t=Tgetent Term'Cap{};print\$t-Tputs(cl);for\$w(split/  +/
){for(0..30){\$|=print\$t-Tgoto(cm,\$_,\$y). \$w;select\$k,\$k,\$k,.03}\$y+=2}

```

### Re: rewind elector

```
On Fri, 8 Jun 2001, jo walsh wrote:

gah, i feel old and sleepy

As does anyone who got home at 4am ;-)

so nothing changes, but it was nice to realise that in the company of
perlmongers.

Yey.  Thanks dave it was much fun, and I only inaproperatly fell asleep
three times... Interesting ride home in the minicab with the driver not
knowing where brick  lane or highbury corner was...and me much leafing
through his A-Z and attempting not to notice him getting flashed by speed
cameras

Now all I've got to do is actually get up, tear myself away from the three
tvs (showing breakfast, bbc text, sky news and gmtv) and internet
connection the gareth seems to have set my front room and get to work.

Thanks again Davewas great.

--
s''  Mark Fowler London.pm   Bath.pm
http://www.twoshortplanks.com/  [EMAIL PROTECTED]
';use Term'Cap;\$t=Tgetent Term'Cap{};print\$t-Tputs(cl);for\$w(split/  +/
){for(0..30){\$|=print\$t-Tgoto(cm,\$_,\$y). \$w;select\$k,\$k,\$k,.03}\$y+=2}

```

### Re: old pictures

```
On Wed, 6 Jun 2001, Lucy McWilliam wrote:

On Sun, 3 Jun 2001, Greg McCarroll wrote:

just looking at some old pictures of london.pm meetings and YAPC::Europe
and i came across the classic, London.pm drinking in a hair dressing salon,

Why oh why?

Infact, more to the point, where is this?  I seem to be in shot, though I
have no recollection of any hair dressing salons.  And I wasn't that drunk
at YAPC::E (unfortunately)

--
s''  Mark Fowler London.pm   Bath.pm
http://www.twoshortplanks.com/  [EMAIL PROTECTED]
';use Term'Cap;\$t=Tgetent Term'Cap{};print\$t-Tputs(cl);for\$w(split/  +/
){for(0..30){\$|=print\$t-Tgoto(cm,\$_,\$y). \$w;select\$k,\$k,\$k,.03}\$y+=2}

```

### Re: Hang the Java programmers

```
On Mon, 4 Jun 2001, Jonathan Peterson wrote:

But then I'm not a real programmer.

You eat quiche?

--
s''  Mark Fowler London.pm   Bath.pm
http://www.twoshortplanks.com/  [EMAIL PROTECTED]
';use Term'Cap;\$t=Tgetent Term'Cap{};print\$t-Tputs(cl);for\$w(split/  +/
){for(0..30){\$|=print\$t-Tgoto(cm,\$_,\$y). \$w;select\$k,\$k,\$k,.03}\$y+=2}

```

### Re: Windows Perl - how?

```
On Thu, 31 May 2001, Roger Burton West wrote:

It makes a certain amount of sense. Rather than having to distribute an
installer program with every package, have a standard installer program

Copying files, of course, is _much_ too difficult.

Hmm..all working now (well, apart from GD crashing every time I try and
write out a JPEG - but that's another converstation)

I supose the real question is

a) Why don't activestate mirror the latest installer on their site, or..

From my point of view I clicked on the 'activeperl' link on their front
page and was simply offered a load of files that I had no idea how to

Grr.

Mark. (back to coding under 'nix)

--
s''  Mark Fowler London.pm   Bath.pm
http://www.twoshortplanks.com/  [EMAIL PROTECTED]
';use Term'Cap;\$t=Tgetent Term'Cap{};print\$t-Tputs(cl);for\$w(split/  +/
){for(0..30){\$|=print\$t-Tgoto(cm,\$_,\$y). \$w;select\$k,\$k,\$k,.03}\$y+=2}

```

### Re: Slow disks under linux

```
On Thu, 31 May 2001, Paul Makepeace wrote:

OK, getting more esoteric now -- is anyone running dual monitors? I
finally got my G450 running with KDE2 but the window manager doesn't add
decoration to the windows on the 2ndary monitor, i.e. I can't move
windows and they don't get mouse focus.

Are you using xinerama (i.e. so your monitors are spliced together into
one display?)  E (still 0.15.5...) runs fine with this[1] on my G400 and
XFree86 4.0 (with dem beta drivers)

Later.

Mark.

[1] Actually sometimes it moves a windows I'm resizing on my secondary
monitor onto my first, but that's only once in a very blue moon.

--
s''  Mark Fowler London.pm   Bath.pm
http://www.twoshortplanks.com/  [EMAIL PROTECTED]
';use Term'Cap;\$t=Tgetent Term'Cap{};print\$t-Tputs(cl);for\$w(split/  +/
){for(0..30){\$|=print\$t-Tgoto(cm,\$_,\$y). \$w;select\$k,\$k,\$k,.03}\$y+=2}

```

### Re: Slow disks under linux

```
On Thu, 31 May 2001, Paul Makepeace wrote:

I have,

Section ServerLayout Identifier Default Layout Screen Primary
Screen Secondary LeftOf Primary InputDevice Generic Keyboard
InputDevice Configured Mouse EndSection

Look, look, bad Text::Autoformat setup.  I suck.  Anyway..

And I have

Section ServerLayout
Identifier  another layout
Screen  Primary
Screen  Secondary RightOf Primary
InputDevice Mouse1 CorePointer
InputDevice Keyboard1 CoreKeyboard
EndSection

You really only have to change LeftOf and RightOf to switch the monitors
around (which I did last time I moved desk as I went from having one
monitor to the left of the primary console monitor to having one monitor
to the right.)

You can't do that in Windows.  Ha.

--
s''  Mark Fowler London.pm   Bath.pm
http://www.twoshortplanks.com/  [EMAIL PROTECTED]
';use Term'Cap;\$t=Tgetent Term'Cap{};print\$t-Tputs(cl);for\$w(split/  +/
){for(0..30){\$|=print\$t-Tgoto(cm,\$_,\$y). \$w;select\$k,\$k,\$k,.03}\$y+=2}

```

### RE: [PUB] Possible candidate

```
On Wed, 30 May 2001, Cross David - dcross wrote:

Maybe I should have said a pint to the first person WHO WASN'T IN THE
PUB LAST NIGHT LEARNING ALL ABOUT THE HISTORY to explain the name.

Okay. I was sitting on my sofa last night.

The right to wear Doggett's Coat and Badge is the prize in a rowing race
held yearly since 1715 between London Bridge and Cadogan Pier, Chelsea
in London. It was initiated by Thomas Doggett to commemorate the
coronation of George I. The badge is silver and shows the white horse of
Hannover. The race is now held in July.

Later.

Mark.

--
s'' Mark Fowler Technology Developer Profero Ltd http://www.profero.com/
[EMAIL PROTECTED] 020 7700 9960 ';use Term'Cap;\$t=Tgetent
Term'Cap{};print\$t-Tputs(cl);for\$w(split/ +/
){for(0..30){\$|=print\$t-Tgoto(cm,\$_,\$y). \$w;select\$k,\$k,\$k,.03}\$y+=2}

```

### Re: Buffy moves to London to do Eastenders

```
On Mon, 28 May 2001, Redvers Davies wrote:

Well, not quite... but nearly:

http://www.bbc.co.uk/eastenders/features/exclusive.shtml

There seems to be something wrong with this URL...where's the

Later

Mark

--
s''  Mark FowlerTechnology Developer Profero Ltd
http://www.profero.com/  [EMAIL PROTECTED] 020 7700 9960
';use Term'Cap;\$t=Tgetent Term'Cap{};print\$t-Tputs(cl);for\$w(split/  +/
){for(0..30){\$|=print\$t-Tgoto(cm,\$_,\$y). \$w;select\$k,\$k,\$k,.03}\$y+=2}

```

### Re: [Announce] Hackspoitation film fest

```
On Thu, 24 May 2001, Greg McCarroll wrote:

and i can't buy it, because its still on boring old VHS

- Greg 'DVD' McCarroll

It *was* released on DVD (in the US, but we don't care about that, do
we boys and girls) but this was a while back, and it's now out of stock
(everywhere.)

I think this might be the one film I'd be prepared to have a copy on VHS
and on DVD.

Hmmm.

Mark.

--
Spontaneity has its time and place.
- The Sure Thing

```

### Re: Election Manifestos

```
On Thu, 24 May 2001, Richard Clamp wrote:

On Thu, May 24, 2001 at 09:13:12AM +0100, Robert Shiels wrote:
Typical quotes from Simon this week:

Ah, he'd be fine if it weren't for those fucking mood swings.

You see, this is why we don't need to make a london-perl-mongers movie.
If we did, it's just turn out like SPACED.

Later.

Mark.

```

### Re: Election Manifestos

```
On Thu, 24 May 2001, Simon Wistow wrote:

Have no problem with them making money out of it it was just that it was
ripped off and not released under the GPL and/or the changes sent back
to us.

They don't have to under the artistic licence.  However, they do have to
duplicate all of the original copyright notices and associated
disclaimers. which they did not do; Credit where credit is due.

Anyway, in the end IIRC the response was 'fuck it' let's have another beer
and think up some more madcap schemes.

Which brings us back around nicely to NMS and how we're going to licence
that stuff.  I think Leon will agree with me here that we should just
simply go for the 'do what the hell you want' licence.  If someone else
'steals' our code and makes a commercial library out of it, then so be it.

quote person=me
Oh sod this discussion for a lark, I'm off to write some free software...
/quote

Later.

Mark.

--
This is my signature.  There are many like it, but this is mine.

Disclaimer: I'm not a lawyer and am speaking on my behalf and my behalf
alone.  I didn't do it, nobody saw me do it, you can't prove anything

```

### Re: [Announce] Hackspoitation film fest

```
On 24 May 2001, Dave Hodgkinson wrote:

Simon Wistow [EMAIL PROTECTED] writes:

I also have D.A.R.Y.L (Data Analyising Robot Youth Lifeform) but I
thinkt hat's pushing it a bit.

If that counts, then Weird Science counts too!

That's more geeksploitation or nerdsplotitation...

Later.

Mark.

--
Do you realize that it is snowing in my room, goddammit!
- Chet, Weird Science

```

### Re: Email Style (was: Re: Election Manifestos)

```
On Thu, 24 May 2001, Leon Brocard wrote:

Paul Makepeace sent the following bits through the ether:

Have you integrated into a mail server (module, procmail, whatever)

.muttrc: set editor=/home/acme/bin/autoformat %s; xemacs -nw %s

Leon

in PINE

S SETUP - C Config

display-filters: ~mark/bin/autoformat

where autoformat is simply

perl

#!/usr/bin/perl
use strict;
use Text::Autoformat;

\$_ = ;

if (/^Subject/)
{
print;
print while ();
exit;
}

# slurp in text and process
my \$foo = \$_;
\$foo .= \$_ while ();
\$_ = autoformat(\$foo, {all = 1});

# begon disclaimers
s/The information contained in this communication.*//si;

print;

/perl

Later

Mark

--
My other mail program has a .muttrc

```

### Re: [Announce] Hackspoitation film fest

```

The sure thing

Ooh. Not seen that one. Is it any good? And that's Anthony TopGun,
Northern Exposure, ER Edwards to you.

Any good, any good? It's only my all time favourite film of all time[1].

Where frat movie meets romantic comedy, on a road trip. Quite a few good
one liners. John Cusack being John Cusack very well. Zuniga being
Zuniga, also very well.

Later.

Mark.

[1] Not sure why. It just is.

--
I didn't sleep with you, I slept in a bed you happened to be in!
- The Sure Thing

```

### RE: Election Manifestos

```
On Wed, 23 May 2001, Cross David - dcross wrote:

I've had another idea tho'. Why don't we install acmemail on Penderel and
suggest that people with braindead mail clients use that?

This, of course, presupposes that acmemail passes everyone's definition of a
decent mail client. And if it doesn't, we can just slap the authors until it
does :)

Oi, what did I ever do to you.  Slap Leon around as much as you want, but
leave me out of it.

Later.

Mark.

(who suggests that someone writes a script that will accept mail, fixxor
the threading into a proper format and sends it on, security allowing...)

```

### Re: Election Manifestos

```
On Wed, 23 May 2001, Simon Cozens wrote:

On Wed, May 23, 2001 at 11:17:14AM +0100, Simon Wistow wrote:
But Mail::Cclient is also unbeleivably powerful. Lying round on my HD
there's a Mail::Cclient::Simple which amkes everything much easier but
it's one of many projects I've never got round to finishing. Why
reinvent the wheel by rolling my own or using 5 or 6 different modules
when one will do.

Because it doesn't exist? :) OTOH, Mail::Cclient does do NNTP as well, which
would be a boost, because WING is meant to be the Web IMAP and NNTP Gateway.

Mail::Cclient was (not sure if it is still) a bitch to install.  Requires
c headers from IMAP libraries.  How likely is it that you have these
(still) lying around on your client machine[1]?

Most people opt for something that they can get to install easily[2]
rather than something more powerful.  If I can't just write a bundle for
cpan then it's probably not worth the bother...

Oh, let's just add it to the list of things to do once we've done NMS, the
new website for london.pm.org and conferences are out of the way...

Later.

Mark.

[1] Rhetorical question, not flame bait.
[2] in under 2 hours

--
My other mail has a signature

```

### Re: [gnat@frii.com: Damian Conway's Exegesis 2]

```
On Wed, 16 May 2001, Greg McCarroll wrote:

I don't think Perl 6 can be a tremendous leap forward, not because
of RFC's along the lines of `Perl must stay Perl', but because
the next leap forward is VisualPerl which will be as much about
IDE as core language. Now lets not get hung up on the IDE bit
of that statement, its more about how people build programs
than the interface they use, the IDE merely focuses them towards
a certain methodology of building software.

Greg, I was wondering if you've used Glade with Perl.  I think it's
everything that VisualBasic is.  It allows you very simple access to the
vast range of really complex components and provides very simple access to
the code both via generated 'only edit me if you know what you're doing'
code and 'ignore the rest of the program and just write what you

This of course comes with all the advantages and disadvantages of such an
approach.  It's very easy and quick to build a GUI that functions well and
stops you making so many GUI bloopers, but it's a very fixed approach that
doesn't lend itself to too much dynamic GUI creation.

Later.

Mark.

--
perl is my itch
(Simon, did you recently do an advertising campaign for divorce laywers?)

```

### Re: TPC Quiz Team

```
On Thu, 17 May 2001, Cross David - dcross wrote:

I need three volunteers to join me in the london.pm team for Jon Orwant's
Internet Quiz at The Perl Conference.

Does it have questions on Buffy and drinking competitions?

Later

Mark.

--
The use of the beer glass image in association with the Perl language
is a trademark of the London Perl Mongers.

```

### Log::Agent

```
Has anyone used Log::Agent, or for that matter any of the other logging
modules?

I'm just looking for a consistent way to do logging.  I've got a wheel
that I reinvented, but it's a very simple one (no tyre or inner tube yet)
and before I make any improvements I was just wondering if it was time to
switch to one of the established brand of wheel manufactures.

Recommendations anyone?

(look, a perl question)

Later.

Mark.

```

### Re: Perl training

```
On Mon, 14 May 2001, Martin Ling wrote:

On Mon, May 14, 2001 at 12:27:20PM +0100, Chris Ball wrote:

OoOoOoh, Red Snapper! Very tasty!

/obscure_quoting

Heh. It's *so* good, and has even managed to remain obscure. This is
probably because you can't get it anywhere any more, of course...

It's not that obscure, though admitadly you can't get hold of it anymore.

Anyone who finds me a copy gets to drink from the firehose.

Later.

Mark.

```

### Politikal Disskusion

```
Hmm.

Leon once complained that I always read everything and then post and
unknowingly summed up the point everyone was trying to make by simply
rephrasing and clarifying a few issues (in the real world they call this
'plagiarism'.)  He said this was a problem, because he always ended up
linking to me rather than people who came up with original ideas.

However, for the political discussion, I think I can sum up and point out
that we oddly enough have seen to made our usual points...

* All Operating Systems Suck in various ways (Democracy, Dictatorship)
* All Distributions Suck in various ways (Labour, The Conservatives)
* All Licensing Systems Suck As They All End Up Having Restricting
Addenda As Well As Trying To Promote What They're About (The Left, The
Right, etc)
* All Content Management Systems Suck (Parties, Media, other vectors for
and systems for change)
* Throwing Money at Something Doesn't Help If You Don't Have The Good
Programmers And/Or Good Management Systems (The NHS, Schools)

Later.

Mark.

--
These are my views, not my company's.  You may copy these views and
alter them under the same licence as perl itself.

```

### New Mongers' Script Archive Update

```
I am posting an update of what's going on with this to the list because,
erm, dave told me to.

Right, this is what has happened/will happen:

At the technical meeting it was decided that we need a developers site;
This site should be used primarily to disseminate information about the
state of each part of the NMS Archive Project.

The proposed format for this site is that for each of the sections will
have a page that will have

a) a short description of the section
b) a summary of the current state of affairs
c) a list of *current* files
d) a weblog of the recent changes
e) a pumpking

The sections will be

* the website itself
* the unix install
* the windows install
* the mac install
* one for each script

The front page will have, in addition to a link to each of the pages, a
quick summary of the state of affairs of the project and a collection of
the most recent entries from all the weblogs

The technology to do all of this will be quick and dirty.  The reasoning
for this is simple:

1) Let's do it quickly, and we can refactor later.

2) The code we're using isn't that complicated and something like CVS
would probably be an overkill.  Likewise for a proper bugzilla
system.

3) All changes should be go through the pumpking for each of the
individual sections so this shouldn't be a problem

People that have agreed to be pumpkings so far:

Mark Fowler (that's me) agreed to be website pumpking
Simon Batistoni agreed to be windows install pumpking.
Paul Mison agreed to be mac install pumpking

If you agreed to write a script, you're pumpking for that (note that
pumpkings can hand the responsibility to other people if they want)

The developers website is working now, and it's just a matter of slapping
in the code for listing files, editing the weblogs, and um the sections.
Shouldn't take that long then ;-)

The trial website should be up in the next week or so[1] and I'll post

Later.

Mark.

NRN.

[1] Damn nice weather making me want to sit in the sun.

--
dammit jim I'm a doctor not a signature line

```

### Re: Monitors

```
On Fri, 11 May 2001, Dominic Mitchell wrote:

How many things do you have on top of your monitor?

Hmm.  I usually have a technic lego bike (thanks secret santa.)  Also
floating around in my geek sphere at the moment is:

- A wind up clockwork chick (as in 'chicken,' not as in 'woman')
- Coffee Mug (extra large)  Empty Caffinated Mints boxes.
- A Beach ball
- A copy of 'e' and the 'bofh' books
- Various O'Reilly books (mostly blue) and a Manning Book (the other one
is on the main bookshelf)
- A SPACED DVD, A copy of the 'Worms World Party' computer game.
- A large card that has 'Horror' printed on one side and 'Beauty' on the
other.
- Simpsons' daily desk calendar
- One arm of my chair (that I removed because it was annoying me and now
use as a book holder)
- Palms (multiple,) Laptop, flash memory and other computer
hardware items (such as a PCMICA network card that I borrowed off of
leon and then never returned.)

At home on top of my monitor is a Mars Bar that I was presented for
'putting up the most from another perl monger while they were in another
country' (I don't eat chocolate.)

Later.

Mark.

```

### Re: Bah!

```
On Thu, 10 May 2001, David Cantrell wrote:

thinks has anyone done TeX goodness with Template Toolkit?

See the latest post to the TT mailing list:

http://www.template-toolkit.org/pipermail/templates/2001-May/000931.html

Later.

Mark.

```

### RE: sing if you're happy that way

```
On Tue, 8 May 2001, Lucy McWilliam wrote:

L.
Never argue with a biologist.

Why not?  Not that I ever would, you understand...just wondering what the
exact precedent for this is?

--
mark wrote this

Disclaimer: The above statement is not intended to be legally binding

```

### Re: Not Matt's Scripts

```
On 30 Apr 2001, Dave Hodgkinson wrote:

I've got someone needing a form to mail script. Where's ours[0]?

According to my records, Dave C was doing it.

Dave?

Later.

Mark.

--
mark typed this

```

### Re: MySQL - Oracle wrapper/compat. libs

```
On Fri, 27 Apr 2001, Robin Szemeti wrote:
On Fri, 27 Apr 2001, someone who Robin's attrib to fscked up wrote:

[side note: I did just see a bizarre thread in macosx-dev where
one guy claimed his FFT code was executing faster in Java than C
because its interpreter used runtime info to optimize it. Search on
'informal benchmarks']

uh huh .. but he's a Java programmer .. his C could be *REALLY* bad ;) ..
favourite Java quote 'If javas garbage collector is damn good, how come
the whole thing doesn't delete itself upon execution?'

Don't see why this isn't possible.  The idea is that you factor out *all*
really unlikely cases (how you know this is based on past performance) and
catch them all with some simple test.  Then you (more expensively, but who
cares since this happens only once in a blue moon) deal with it and work
out exactly what was the problem.

Another example, you could use a processor level exception to catch those
pesky divide by zero errors (which is very expensive if it fires, but much
much cheaper each time round than explictly checking it.)  The advantage is
that a compiler doesn't have this information lying around - you can't
tell from the code how often cases come up;  You need to profile at run
time as you go.

Sorry if this is all babble.  I haven't had much sleep.

Later.

Mark.

--
who *still* hasn't got round to getting a new .signature

```

### Re: MySQL - Oracle wrapper/compat. libs

```
On Wed, 25 Apr 2001, David Cantrell wrote:

Trouble is, they all have non-standard extensions, which are *really* handy
and which you *will* use if you don't know any better.  For example, MySQL
has AUTO_INCREMENT fields which are dead useful for id fields; the closest
Oracle equivalent would be using a sequence.

Why you say don't know better, what should I use instead of this.  Is
there any sensible way to do this in bog standard SQL that won't have a
massive perfomance hit on mysql?

Later.

Mark.

--
mark still hasn't replaced his sig.

```

### Template Toolkit and XPath notes

```
Have been uploaded to london.pm.org.  And by jove, with a ickle bit of
httpd.conf bashing they even render out okay.  Shame about the spelling
mistakes though.

http://london.pm.org/~mark/ttxpath/

Later.

Mark.

```

### Re: Mutagenic modules: online slides

```
On Fri, 20 Apr 2001, Robin Houston wrote:

On Thu, Apr 19, 2001 at 11:57:01PM +0100, Simon Cozens wrote:

Funny. You've come across the same idea I did.
http://simon-cozens.org/pg.pdf

Having now read your paper, I think that in some ways it's the
*opposite* idea; or at least a complementary one.

You want to take arbitrary languages, and execute them as if they
were Perl. I want to take Perl and execute it as if it were an
arbitrary language :-)

Here be dragons.

Later.

Mark.

P.S. You might want to have a look at File::Remote (as this 'overrides'
open and changes it's meaning.)  Oh and
http://www.mail-archive.com/london-pm%40lists.dircon.co.uk/msg03442.html

--
ENOSIGSIGONOTHERMACHINE

```

### RE: Mutagenic modules: online slides

```
On Fri, 20 Apr 2001, dcross - David Cross wrote:
Mark Fowler wrote on the 20th April:

On Fri, 20 Apr 2001, Robin Houston wrote:

You want to take arbitrary languages, and execute them as if they
were Perl. I want to take Perl and execute it as if it were an
arbitrary language :-)

Here be dragons.

"You can't just make up any old shit and expect the computer to know what
you mean, retardo!"

It's more like DWRM programming (do what robin means.)

Later.

Mark.

--
ESIGSTILLONOTHERCOMPUTER
EUSERTOOLAZYTOUSESCP

```

### Tk::Canvas Rectangles

```
Watching veeg's really cool music program in Tk last night reminded me
that I've got a slight problem with something I was writing with
Tk::Canvas...

If I create a rectangle, how do I go about changing its width and height?

Any ideas?

Mark.

--
ENOSIGSIGSTILLONOTHERSERVER

```

### RE: Tech mtg?

```
On Wed, 18 Apr 2001, Dave Cross wrote:

At 17:08 18/04/2001, jo walsh wrote:

this all gives me a creeping sense of deja type

yeah, i've just looked and realised it says almost exactly the same thing
on the website, except in more detail:
http://london.pm.org/WhatDo.shtml

Did _I_ do that? Whatever happened to my memory? (rhetorical!)

Kind of.  I noticed that you'd cunningly left it in elite web reader mode
with the directions still there from last time, just commented out.  Of
course, as we all read the web by using telnet or (for the advanced) GET
we all saw this an knew what was actually going on.  But I thought I'd
better just alter it an ickle for those damn mozilla/netscape/ie/opera/lynx
users who wern't seeing it.

Hope you don't mind.

Later.

Mark.

(tech support ninja in training)

ESIGONOTHERMACHINE

```

### Re: London.pm List Weekly Summary 2001-04-16

```
On Thu, 19 Apr 2001, Greg McCarroll wrote:

On Thu, 19 Apr 2001, Simon Wistow wrote:

This is the thirteenth of hopefully many weekly summaries of the London
Perl Mongers mailing list. For the week starting 2001-04-16:

*GUNSHOT*

*queue eastenders theme track* ( or dallas if you really want )

voice_over

Tune in next week to find out who shot Simon! Was it a Randal?
Was it the father of his ex-girlfriend? Was it a crazed YAPC::Europe
organiser remembering the aniversary of PIMB fiasco?

/voice_over

Oh don't start that again.  I had enough of that last time round.

Later.

Mark Fowler.

```

### Re: NWS (was Re: Technical Meeting - 19th April)

```
On Tue, 17 Apr 2001, Struan Donald wrote:
* at 17/04 14:00 +0200 Philip Newton said:
Mark Fowler wrote:
3) Write a set of scripts that are all basically the same but have
different #!/usr/bin/perl lines on the top and tell you the
with a bunch of different extensions such as .pl .plx .cgi for
combinations of "operating system" + web server that map scripts to
interpreters by extension and/or directory rather than by shebang line...
surely there should be a better way than this? after all the
combinations involved are quite numerous. is the notion of something
that does :

#!/bin/sh

if [ -e /usr/bin/perl ]; then
exec './bin_perl.pl'
fi

or equivalent too silly? although not sure this sort of thing is possible
on non unix type systems. OTOH would at least cut down the number of
files that the person installing needs to worry about.

I don't particularly see the number of scripts this person is installing
as a problem.  The key concept is that these scripts are designed so that
all then see which one works.  Once they've got this script working the
script should contain instructions on how to modify any of the
other scripts to work with their server.

I don't think what you're suggesting will work at all on windows.  Or pure
mod_perl...

Feel free to disagree, I'm just suggesting ideas here.  Honestly, I'm not
sure what's the best way...

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Technical Meeting - 19th April

```
On Mon, 9 Apr 2001, dcross - David Cross wrote:

As usual I'll aim at having four or five lightning talks and two or three
longer talks.

I could do a lightening talk on playing around with skinning stuff with
Template Toolkit's brand spanking new VIEW directive.  This would be very
quick as we've seen Andy do this kind of thing before in the pre-release
version.  I'd be skinning XML again in my example, but this time I'd be
using XML::XPath...

I'll also be able to give a quick status update on the website for NMS
(probably at the same time as I'll be using it as my example)

Later.

Mark.

(Who thinks this is almost a show 'n' tell situation)

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### RE: the 2nd best london.pm meeting of all time

```
On Fri, 6 Apr 2001, dcross - David Cross wrote:

The stolen wine by the thames at 1am was a particularly nice feature.

Oh \$deity. Are we going to be barred from Vinopolis now?

To clarify: We did actually pay for the wine IIRC, but strictly speaking
we shouldn't have removed it from the resturant.

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Test

```
On Fri, 6 Apr 2001, Merijn Broeren wrote:

# Else use lynx to view it as text
text/html; lynx -dump %s; copiousoutput

Quick question for us non mutt users that may one day consider using
it.  Does this run throgh the shell?  And what's %s in this?  I'm kinda
hoping it's not able to be '; rm -rf ~/*' or worse, if you get my drift

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Backslash

```
Slashdot, and everything else running Slash (i.e. use.perl.org) seem to no
longer be doing XML RSS feeds, but a custom DTD called 'backslash'.  I

I'm currently working on building summaries of sites, and then things
from these summaries.  I was planning to build RSS documents for each of
wondering:

a) What and Why is backslash?
b) Is this better/worse/indifferent?  Should I use it instead?
c) How do I parse it (XML::RSS doesn't work, am I going to have to code
it from hand?)

Dipsy seems to be able to cope with this..

Later.

Mark.

http://slashdot.org/slashdot.xml
http://slashdot.org/backslash.dtd

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Grammar (was: Re: Linux.com Online Chat)

```
On 4 Apr 2001, Dave Hodgkinson wrote:

Dominic Mitchell [EMAIL PROTECTED] writes:

ObPerl: So which is harder to parse?  Perl or English?

Time flies like an arrow
Fruit flies like a banana

Parse that and stay fashionable...

They're both Type 0, though one *could* argue that Perl was really type 1
and the grammar is defined by a really really big C program

Perl is easier to parse simply because all the irregularities are known
and documented.  They're not in English.  In addition to the above
example, consider

"The British Left Waffles on Argentina"

Which requires you to know about the concepts of political persuasion,
waffling as talking at length, usage of 'on' as 'about' etc, or you end
up with some careless people leaving behind breakfast items in a far off
land...

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Linux.com Online Chat

```
On Wed, 4 Apr 2001, dcross - David Cross wrote:

Tue Apr 17th, 2001 (12:00 pm US/Pacific)

In english?

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Grammar (was: Re: Linux.com Online Chat)

```
On Wed, 4 Apr 2001, Simon Cozens wrote:

On Wed, Apr 04, 2001 at 10:31:41AM +0100, Mark Fowler wrote:
Perl is easier to parse simply because all the irregularities are known

and documented.  They're not in English.  In addition to the above
^^
Uhm, where?

The perl source code *is* the documentation.  There is no direct equivalent
for the English language, as it is really whatever we think is the case at
the time - or, more accurately, what the largest number of the intended
audience would understand it to mean.

Perl requires a similar amount of knowledge to parse, although the
knowledge is rather more domain specific - what subs are defined, what globs
are available, what packages are defined, what filehandles are open, and so
on.

Ah, but with perl code there is a definite 'correct' parsing (whatever
/usr/bin/perl does[1]) but with the English language that isn't true.

Later.

Mark.

(Waving hands around in the air as he speaks)

[1] This is that there is only one 'correct' parsing.  This may not be
what you thought you meant, or the coders who coded perl itself thought
you would have meant...but it is what you said.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Grammar (was: Re: Linux.com Online Chat)

```
On Wed, 4 Apr 2001, Simon Cozens wrote:

On Wed, Apr 04, 2001 at 02:10:11PM +0100, Mark Fowler wrote:
Ah, but with perl code there is a definite 'correct' parsing (whatever
/usr/bin/perl does[1]) but with the English language that isn't true.

I'm afraid that's as silly as me declaring that there's only one correct
parsing of English, and that's how *I* parse it.

No it's not that silly ;-)  Maybe it's on the same level of silliness as
the concept of 'the Queen's English' (the idea being that the Queen 'owns'
the language and anyone else has to speak/parse as the queen does) as
you could consider that /usr/bin/perl 'owns' the language and that all
other perl processors better do the same thing as /usr/bin/perl or get
scoffed at down the local for talking funny...

Anyway, we're getting off topic.  I was just saying that the reason we
can parse perl and not English is that though they are both type 0
grammars is that perl is defined by 'what /usr/bin/perl currently
parses' and we have *all* of that written down as the source code (though
not all of it produces expected results) where we don't have a definitive
list of the entire of English because that requires a *huge* degree of
cultural background information.

I'm sure there's a point here in replacing all Human - computer speech
interfaces that use English as a command language to making everyone talk
perl, but this topic is getting silly enough.

Beer, Buffy, Beer, Buffy.

Later.

Mark.

(going back to writing HTML for NMS now)

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: [schwern@pobox.com: DNA.pm]

```
On Sun, 1 Apr 2001, Greg McCarroll wrote:

Actually, i'm quite pleased Leon implemented Buffy.pm and took
up the namespace before we started inventing modules for all
of Sunnydale, along the lines of

I was so going to have a Buffy.pm that slayed out of control deamons.  And
of course, it'd need a Giles.pm that kept track of deamons and noticed
when one was using too much CPU/memory, etc.  And a Willow.pm to invoke
new deamons when Buffy.pm had killed them all...

..Oh and a Xander.pm that did absolutly nothing apart from check that
Buffy.pm, Giles.pm and Willow.pm themselves hadn't gone out of control.

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Buffy

```
On Sun, 1 Apr 2001, Leon Brocard wrote:

http://www.astray.com/Buffy/

First diff.  And it's a documentation patch for us pedantic people.

40c40
Buffy - An encryption scheme for Buffy the Vampire Slayer fans
---
Buffy - An encoding scheme for Buffy the Vampire Slayer fans

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Job: I'm looking for one..

```
On Wed, 28 Mar 2001, Paul Makepeace wrote:

On Wed, Mar 28, 2001 at 02:58:36PM +0100, Greg McCarroll wrote:

Also i think the lack of Perl certification, is one of the biggest
problems with Perl work in london,

Are employers there too stupid to read CVs? Or too lazy?

I'm too lazy.  Speaking as someone who has recently spent a while vetting
CVs for people for a job, it's hell.  For a experienced perl programmer
it's easier for me to tell if you've had the experience by what jobs you've
done before.  For a mid range programmer (who may have only worked at one
company before) it's really hard.

CVs are the first step through the door.  I'm just trying to assess if
you're good enough to have in for an interview.  That's where I, and my
boss, and probably my bosses boss will actually make the decision.  A
certification system I could trust would be really helpful.  It would save
so much time trying to get rid of the guy that came in and said 'I don't
use modules, I prefer to write my own code in the script.' et al.

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Still screwing up References: (was Re: Job: I'm looking for one..)

```
On Thu, 29 Mar 2001, Dave Cross wrote:

You're right, the referencing is a bit screwed up. I'll take a look at
it today.

Your webmail CC is screwed up too.  On my mails there's now new line after
the Cc: so I get a line that says

Cc: X-Mailer: foo

which my mail client (PINE) wants to reply to...

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Perl Auto-RPC

```
Code I wrote to do most of what you people are talking about a couple of

This does not work for non-pure perl code.  i.e. XS is a no-no

The idea I was using it for:

a) User presses a button in the web browser

i)  The current directory from the server's point of view
ii) The address of the perl code to configure this site

Both of which have RC5 checksums

c) The perl code is downloaded to configure said site and run  This
starts a Tk widget that can be used to edit config stuff remotely.

The key idea behind this is that you need nothing special on the server
bar ssh and httpd.  And your client need have no special idea of what
it needs to have installed.

Anyway, the code:

use File::Remote;

# then later

# Setting up the @INC trap

# right now we modify @INC so that it will load files from afar
# this stolen from p5p - http://www.perl.com/pub/2001/03/
# p5pdigest/THISWEEK-20010305.html

push @INC, sub
{
my \$foo = shift;
my \$modname = shift;

# this is going through scp - make all :: into /
\$modname =~ s|::|/|;

# combine the paths
my \$filename = \$codepath.\$modname;

# create a \$remote object
my \$remote = File::Remote-new( rsh = '/usr/bin/ssh',
rcp = '/usr/bin/scp',);

my \$fh = new IO::Handle;

# open the thingy as if by magic, returning
# undef if there is a problem
\$remote-open(\$fh, \$filename) or return undef;

return \$fh;
}

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: originality

```
On Tue, 27 Mar 2001, Greg McCarroll wrote:

* Dave Cross ([EMAIL PROTECTED]) wrote:
At Tue, 27 Mar 2001 11:41:05 +0100, Chris Heathcote [EMAIL PROTECTED] wrote:

Sunday morning Perl advocacy at Speaker's Corner

This _really_ should happen.

well then, lets store it up - next time we get a visitor whos up for
it, we will do it, then retire to somewhere for sunday lunch.

Okay, may I suggest the summer?

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: That book

```
L. said:

World domination is ours.  Muahahaha!

Not if we can't come up with a good name for not matt's script archive it
won't be.

Later.

Mark.

(damnit Jim, I'm a Technology Developer, not a Copywriter)

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: That book

```
On Fri, 23 Mar 2001, Matthew Byng-Maddick wrote:

On Fri, 23 Mar 2001, Mark Fowler wrote:
World domination is ours.  Muahahaha!
Not if we can't come up with a good name for not matt's script archive it
won't be.

I don't think we tried "London.pm's Script Archive", did we? :)

Okay, I can live with that.

How at http://london.pm.org/scripts/

Later.

Mark.

(Who will do some HTML this weekend)

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Debuggers (was Re: Perl Training Courses)

```
On 2001, Mar, 22, Thu, Cross, Dave wrote:

Now with added pointy and clickyness.

Dave.

Luddite n 1 : any opponent of technological progress [syn: {Luddite}]
2: one of the 19th century English workman who destroyed labor-saving
machinery that they thought would cause unemployment [syn: {Luddite}]

You're sounding a little too much like a heretic to me Dave...all that
crashing and destroying of stuff ;-)

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: ISO8601 [was] Re: Pointless, Badly-Written Module.

```
On 2001, Mar, 21, Wed Pauley, Marley wrote:

That would work if 'significant' was well defined in relation to names,
but it isn't.  It works with dates because 'significant' has a well
defined meaning in relation to numerical quantities.

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Matt's Scripts Projects

```
On the subject of having zip archives as well as tarballs on the server,
Gareth Harper said:

Winzip (what most windows users these days use to unzip) handlers tar.gz by
default so that may not be neccesary.

Not neccesary from a techical point of view.  Neccesary from a social
point of view (What's this extension!  I don't understand!  What's going
on!  What are all these weird charges from AOL?  etc)

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

```
On Tue, 20 Mar 2001, Dave Cross wrote:

Take a look at this http://search.cpan.org/search?dist=Date-MMDDYY.

Now give me:

a) a two reasons why this module should never have been written, and

1) I'm English.  MMDDYY makes not sense.  Maybe that's just a gripe about
the name.

2) Time::Object rocks.

b) as many flaws as possible in the implementation.

no 'use strict'

should use prototypes to force scalar context on the string passed (but
see below for gripe)

Spliting up the string representation of a time is a bad thing and why not
just use the array format of gmtime/localtime.

no 'my @format'
no 'my \$delem'
no 'my @time_array'

The whole string with delimeters thing is silly and just let people pass
each formating thing in @_ directly.

no 'my @final_date' # but with an undef!

does not die, or return undef, or do anything sensible with an error, just
returns 'Error'.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

```
Oh it's dreadful. We need quality control on CPAN before more of this gets
through.

Hmm.  Karma would workOr sponsorship. 'Larry Wall uses \$modulename,
you should too'

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Dedrat 7.0 and PGP

```
On Sat, 17 Mar 2001, David Cantrell wrote:
On Sat, Mar 17, 2001 at 02:01:11PM +, Robin Szemeti wrote:
On Sat, 17 Mar 2001, someone wrote:

I'm using 7.0, and hating it.  I should never have upgraded.

I am beginning to wonder whether we should have gone that route on the
swerver .. bu still.. too late now.

What I'm really hating is the stuff that broke when I upgraded from 6.2.
Mainly X font stuff, and I rally can't be bothered to dig through the
gazillion different places that X puts stuff so I can fix it.

Hmm.  Both my laptop and desktop are running 6.2 atm.  I find that
whenever I do a helix-gnome update (or whatever they're calling it this
week) it breaks the fonts.  The server works fine, it's just that the
/etc/rc.d/init.d/xfs file is knackered.  Typing xfs  from the command
line still works fine for me, so I'd check that first as it's probably the
same b0rken RPM they both install.

I'm running 6.2 with the following key additions: helix-gnome, perl 5.6,
new apache (with mod_perl), sudo, and the 2.4.2 kernel.  I recently
installed my laptop from scratch and this took me about a day to install
(+ a day fscking around with partition magic and windows.) It Works For
Me(tm) but I'm sure there's a better way.

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Matt's Scripts Projects

```
On Mon, 19 Mar 2001, Dave Cross wrote:

* Web page. Need somewhere to point potential users at. Probably two
versions - one for the developers and one for the users. This can be
a subdirectory on london.pm.org.

I don't mind doing this bit of it.  I would quite like the idea of
creating a few web pages for someone other than myself or for work for a
bit, unless anyone's got any objections...

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Matt's Scripts Projects

```
It has occured to us we need a decent name for this.  Discussion on IRC
has concluded that:

a) It shouldn't mention Matt in the title.
b) That is should have a name that appeals to newbies.
c) It should sound at least semi-professional[1].

But apart from that we've been useless

Later.

Mark.

[1] Okay, so I added this one myself, but I think it's a good idea.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: wasn't someone looking for some diagramming - SQL stuff recently?

```
On Fri, 16 Mar 2001, James Powell wrote:

http://freshmeat.net/projects/dia2sql/

I was looking for some tools to create diagrams with but Ooooh! Anyhow,
now all we need is a GraphViz to dia tool ;-).  Which reminds me, how's
things going with your Perl-UML Aaron?

Later.

Mark.
--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### RE: Matt's Scripts

```
Finding out where perl is

parody
Stop, stop, this script archive is not ready yet!  Where are the Hello
world examples?  Where are the detailed instructions?  And why are you
actually working on these scripts yet!
/parody

You're all getting ahead of yourselves.  We need to write a set of
helloWorld scripts that the script user can upload first to find out the
basic facts about their server and check everything is working.

a) You have multiple copys of the script with different shebang lines on
the top.  Only one of these will work and one of the things it'll do is
print our is "The first line of programs you upload to this server should
be #!/blah/perl"

b) It checks your perl version is reasonable.  Actually it probably should
do this before a) in case there are several versions installed.

c) It tests if you've got a borken version of CGI.pm (or CGI.pm at all) by
looking at version numbers, etc.  Same for other modules.

d) It links to an image in the same directory as itself and explains that
if the image isn't viewable then you do not have inplace cgi and the

e) It prints out the time, and GMT time thus highlighting to the user any
problems they might have if this is wrong

f) It prints out a hunk of diagnostic information (e.g. perl version,
module versions, url, etc, etc)

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Matt's Scripts

```
(What do you mean with "not-inplace cgi"?)

Some servers (like my own) are configured to allow you to run perl scripts
anywhere.

Some servers (especially in the paranoid ISP land) are configured to have
a /cgi-bin/ where you have to put files in that will be 'executed'.
Typically you cannot read from these dirs with a web server (you can only
execute the program and read their output.)  This is so that if you have
files and get the script via the webserver no matter what mistakes you
make (e.g. if you accidentlally leave backup files around.)  The main
drawback of this is that you can't serve normal files (like images) from
the same directory.

I call the first 'in place cgi' and the latter 'cgi-bin'

Hope that's clear.

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Matt's Scripts

```
is there an idiot-proof graphical front-end for scp? windows?

On Windows I use pscp which comes from the same people as putty. It
works well, but it doesn't have a pretty graphical front-end.

Yes there is.  http://www.i-tree.org/ixplorer.htm.

I suggest you peeps read http://www.openssh.org/windows.html which lists
alternatives

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Matt's Scripts

```
On Wed, 14 Mar 2001, Greg McCarroll wrote:
* Dave Cross ([EMAIL PROTECTED]) wrote:
At Wed, 14 Mar 2001 14:34:32 + (GMT), Jon Eyre [EMAIL PROTECTED] wrote:

My several users use scp.

is there an idiot-proof graphical front-end for scp? windows
clients? my several users require them, or they'll just continue
using ftp, because it's *easier*...

They won't if you stop running the ftp daemon on the server :)

Rule one of security:
Ensure availability for authorised users

this breaks it ;-)

Do what we do.  Keep everything running, but shove a whopping great
ipchains (or firewall of choice) in the way.  If you want to access it,
ssh tunnel it first.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Matt's Scripts

```
Yes there is.  http://www.i-tree.org/ixplorer.htm.

I've since installed WinSCP, from the list of alternatives on OpenSSH This
is also based on PuTTY and isn't so, well, dodgy as iXplorer.  Forget I
ever mentioned it.

Seems to work well for me.  The interface is clunky (i.e. you have to
press F5 to copy rather than drag and drop) but is still something your
average windows user would have no problems using.

http://winscp.vse.cz/eng/   (we should have just googled for winscp in the
first place)

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: London.pm List Weekly Summary 2001-03-12

```
Leo Lapworth was trying to debug something with Devel::DProf and
couldn't understand why BEGIN was called more than once. Robert Price
and Mark Fowler pointed out that 'use Module LIST' is exactly
equivalent to 'BEGIN { require Module; import Module LIST; }', so the
module was being use-d in multiple places, which is fine:
http://www.mail-archive.com/london-pm%40lists.dircon.co.uk/msg02667.html

Did I?  It's not you know.  You forgot this bit of the perldoc -f use as
well:

If you don't want your namespace altered,
explicitly supply an empty list:

use Module ();

That is exactly equivalent to

BEGIN { require Module }

i.e. that use Module and use Module() are ne.

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: London.pm List Weekly Summary 2001-03-12

```
Content-type: matter-transport/beer-stream

That's not right.  MIMEs do type/format (e.g. image/gif.)  So it'd more
likely be:

Content-type: beer/guinness

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Strange Request

```
and here we get back to the ROPE project as discussed before, where we
could do a standard distribution of Apache/Mod Perl/Perl/Perl modules,
with TT, XML::*, etc.,etc. already there

Might not be a bad idea doing each of these in each of the technologies
anyhow.  It might prove a good way of showing how each of these work.

The biggest problem I have with using these 'branches' of perl is knowing
where to start.  If we had a collection of standard scripts that was
re-written each time in TT, XML::* or whatever, then I (or other clueless
monkeys like me) could work from what they know how to start, where to go,
etc, etc.

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Matt's Scripts

```
Textclock   Mark
Countdown   Mark

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Kevin Smith Film Fest

```
I'll also draw a map at some point

Details at http://www.twoshortplanks.com/simon/filmfest/

In order to try and finish at a vaguely reasonable hour I'm going to
start early. So, my house, 2pm for a 2:30 start on Saturday.

Want us to bring anything?

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

```
Yup, that's right. So to get it to only have the one call, change your
"use" to a require and put it in the BEGIN block.

nitpick number="1"

use fred;

Will also call fred-import(), so you might want to emulate that too.

/nitpick

nitpick number="2" type="lesser"

--
Robert Price - Technical Manager - EMAP Digital Travel  | Tel: 0207 3092711
Priory Court, 30-32 Farringdon Lane, London, EC1R 3AW   | Fax: 0207 3092718

Shouldn't these numbers be formatted 020 7XXX

Later.

Mark.

/nitpick

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Graphical Documentation

```
On Tue, 6 Mar 2001, Marcel Grunauer wrote:

1. Thingys showing SQL tables.

GraphViz::DBI and dbigraph.pl. See the sample database table graph linked
from that page. I'm working on making it more flexible and pretty.

Oooh, ahhh.  Looks really nice.  Now the only problem with this is
that it requires me to actually have created the database.  We're not at
this stage yet (though I will see if I can knock up a diagram of our
current old database schema so we can have some reference.)

Oh, there seems to be something odd with that server set up.  Because
my copy of Gnome-Terminal does url catching I can Ctrl-Click on any url
and it pops up in netscape.  However, being a good url catcher it matches
the '.' at the end of the url (as it should do.)  Now this is really odd,
as 'http://www.codewerk.com./' does not show the same thing as
'http://www.codewerk.com/' (which it should do as
'www.codewerk.com.profero.com' or 'www.codewerk.com.loc0.profero.com'
doesn't exist on our network.) This is most odd.  I've tried it from other
locations (via the wonders of ssh tunnelling) and I get the same thing.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Graphical Documentation

```
ELLO london.pm.org.  Long time no C[1].

I'm needing some programs to produce graphical documentation[2], and as
I'm feeling lazy (which is a good thing, right,) so rather than writing my
own, I thought I'd ask you lot what you thought were the best tools out
there.

I need to produce:

1. Thingys showing SQL tables.
2. Thingys showing OO abstraction

Nethier of these need to be in any particular form.  They just have to
make sense to me.

Ideally, I'd like somehthing that would run on Windows or Linux
(i.e. written in Perl) but you get the idea.

Later.

Marks.

[1] Or no Perl, more to the point.  I'm back online.  As for a week
offline: Let us never talk of it again)

[2] This is a 'oh, god this is complicated and I need to see what's going
on' kind of problem not a 'management don't get it' kinda problem

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Off the grid.

```
Right, that's it.  I've had enough.

I'm off the 'net for little over a week - I'm trying an experiment to see
what happens if I don't use a computer for a week.   This is a sanity
recovering exercise.  I'll let you know what happens.

See you at the meetings.  Those of you that I've arranged to do stuff, call

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: t-shirts

```
Perl t-shirt ideas

=pod

Sorry.

* "My other t-shirt has a camel on it"
* "I know perl" "Show me"
* "If you programmed in perl you'd be home by now"
* "You don't have to be mad to program perl, but it helps"
* "95% of cats prefer programming perl over any other language"
* "Perl.  There is no a."
* "mod_perl.  It's not a quake add on.  It's more fun than that"

* "London.pm: we  camels"
* "I want a PONY!", on the back (("PONY"x10)."\n")x40

=head2 joke within a joke (PIMB ref)

* "#! perl is my programming language of choice"
* "#! perl is my itch" (preferably in the same blue, same font)
* "Smack my perl up"
* "Muttley is a Arsehole"  (let's see Randall complain about that)
* "I blame Wistow for *everything*"

* "XP programmers do it in pairs"
* "This is not a credit or debit card"
* "Just another local who happened to be in your holiday photo"
* "If you lived here you'd be like all the other voices"
* Front: "Why?" Back: "Why not?"
* On front and back "humorous slogan on other side"
* "This is a t-shirt.  There are many like it.  But this is mine"
* on the back "Stop following me"

#!/usr/bin/perl

\$shop = undef;
{
local \$shop = {}; \$this = \$shop;
local @people = residents; for (@people) {\$this-{\$_}=\\$PreciousThings;}
}
print HERE \$shop-{You};

\$shop-{You}-touch if defined(\$shop-{You})

=cut

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: t-shirts

```
... I mean .. people will laugh and mock us  how could you ..  it
should be "Muttley is an Arsehole"  .. I dunno, such poor grammar these
days :))

No, just poor typing I'm afraid.

This would only work however if Simon printed and distributed the
T-shirts ;-)

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: DMP

```
Micheal claimed that:

amazon uk have started shipping data munging with perl. I have my
copy.

Indeed they have.  I've got mine now.  They're also shipping the mod_perl
pocket reference.

[% UNLESS office_policy_to_use_amazon %]
[% INCLUDE standard_reasons_not_to_use_amazon_text %]
[% END %]

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: DMP

```
[% UNLESS office_policy_to_use_amazon %]
[% INCLUDE standard_reasons_not_to_use_amazon_text %]
[% END %]

Someone tell Andy, this doesn't seem to be working.  Either that or you
lot felt the need to rehash it all again ;-)

Didn't anyone tell you guys that perl automatically rehashes stuff when it
gets too big to handle anyway...

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Pony and Buffy (was Re: Mailing List Stuff)

```
On Fri, 2 Feb 2001, Michael Stevens wrote:
On Fri, Feb 02, 2001 at 12:34:15PM +, Robin Houston wrote:
what is it with ponys?
I've wondered that too.
Seems to be a #perl obsession...

purl pony
[purl] pony is replyGimme a Pony! Pony! Pony! Pony Pony Pony! Pony Pony
Pony! Pony Pony Pony! Pony Pony Pony! Pony Pony Pony! Pony Pony
Pony! Pony Pony Pony!

Michael

Obviously one good meme deserves another:

- *dipsy* buffy?
*dipsy* trelane: wish i knew
*dipsy* purl knew: buffy is reply I want
BUFFY! Buffy! Buffy! Buffy! Buffy
+Buffy Buffy!  Buffy Buffy Buffy!  Buffy Buffy Buffy!  Buffy Buffy Buffy!

Okay, own up, who was this ;-) ?  And more importantly, who told dipsy to
forget Buffy...

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### OT: Buffy (or not OT, depending on your point of view)

```
So I watched the Buffy film for the first time, and I don't see what
you're all complaining about - or rather I do, but I don't care.

Sure, the first 40 minutes are a bit painful, and the vampires are a bit
daft, but I can see where we're going.  There's even some good banter in
there and some truly excellent backflips by the end - it just takes that
long for Buffy to turn into Buffy (rather than some Cordelia like
creature)

The one thing that gets me is that does anyone remember the trailer for
this film?  I seem to remember this bit where Donald Sutherland throws a
knife at Kirsy Swanson and she catches it between two palms in front
of her head.  Now I didn't see this in the movie.  Does anyone else
remember this?

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Bad programming considered harmless

```
Look at what Sun says Java is not suitable for to get a short list. IIRC
they included stuff such as life support machinery in hospitals, air traffic
control, and nuclear reactors. Space Shuttle or manned-space-flight rocket

I think this is primarily because Java is not a real-time language (as
in specifiable bounded time for each operation) on account of Java
insisting on providing garbage collection which is almost impossible to
do efficiently in real time.

This is primarily because the code that makes up Java hasn't ever been
proven (in a maths sense) to work.  GCC comes with the following
disclaimer too:

this program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

As for the real time nature of garbage collectors, Shevek and I (and some
others) wrote a paper together on this, so I could say a lot here.
Especially about how Perl is much more real time as it can do better at
allocating and deallocating the same bit of memory (as it instantly
knows when memory is free, unlike mark and sweep) and is a lot less likely
to cause page faults.  Of course, reference counting suffers from the
dreaded deep free problem so if you don't program carefully you can very
very easily shoot yourself in the time constraint foot too.

control logic probably should also be bug free.

cue story="the misplaced colon in a Fortran DO loop causing Apollo ??
to crash" /

That's an implementation problem.  Control logic problems are ones like
'The spacecraft doors shall not be able to be opened manually and shall
remain in computer control incase human error causes the inside to be
depressurised' and then not realising that in some situations you need to
be able to open them both (e.g. internal fire, meteor strike, HAL going
nuts)

Most problems are control logic problems.  The computer implementation

Later.

Mark.

P.S. Scary thought: During a transatlantic flight on average cosmic
radiation flips at least one bit of the control systems memory.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Xinerama

```
Question 1.

Can I make a second X server into a second monitor (well, in my case a
third one)  I doubt it, so here's question two

Question 2.

If I can't, is there any easy way to control client placement/move stuff
around in Perl remotely?  I've played with eesh before (I'm runnin E) but
I wondered if there was a better way that talking in some weird way to
do this that isn't so icky.  I forsee many problems with running multiple
copies of X on the same machine.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: irc problems

```
IRC's IP, anyone?

195.82.114.160

london.rhizomatic.net === astray.com
=== twoshortplanks.com
=== huckvale.net

(which is easier to remeber than IP numbers Shirley)

Should really get round to seconding the DNS methinks.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Fwd: [uri@sysarch.com: free copy of data munging with perl]

```
It's starting to sound like I@m the only bugger who _hasn't_ got a copy
of my book yet :(

Fret not, fearless nominal leader.  Mine hasn't arrived yet either.

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: 33 mails

```
grep complained:

how the f*** did you lot send 33 mails to this list between when i
left work and now?

sheesh

Practice?  We learn quickly, o wise teacher.

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Mailing List Archive

```
This is my two pence worth:

1. I stand by everything I've ever said on the the list.  If I didn't
mean it I wouldn't have said it.

2. However, I can see problems with people taking things I've said out of
context.  Pah, so be it.  This is the problem with the world.

3. If I wanted to say something in private, I'd do it off list.  Or on
irc.  Or on one of the private lists I'm a member of.

reading this list and taking advantage of it (using my phone number.)

5. As far as stuff getting back to my employer, well my employer has
benefited from me being on list something chronic.  The knowledge I've
gained, amongst other things, has been highly useful.  P.S. I'm late
for work.  Daryl, if you're reading this then I owe you an extra hour
;-)

So in conclusion, I'm for an open list.  But I don't care enough to object
either way.  joke I think the real question should be, do we munge

Later.

Mark.

P.S. Oi, recruiters.  I'm happy where I work.  Ta.

1984: These are my personal opinions, and do not represent my employer.
--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Mailing List Archive

```
Dave Cross wibbled:

The other week I dug out the original comp.lang.perl.misc post.

I think I have a recording of someone bashing a stick near a big black
rectangle somewhere too...

Is this a collective attempt to crash mail archiving bots by posting so
much that they get overloaded and fall over? ;-)

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Technical Meeting Venues

```
On Thu, 25 Jan 2001, Dave Cross wrote:

How do people feel about going back to State51? Does someone want to
contact the ICA?

Hmm.  No one seems to have replied to this[1].  I think the lack of
response seems to indicate that no-one has any objections to either
venue.  I personally thought State51 was very good, but I'm all for
variety in the venue.

What kind of deal were the ICA offering us?

Any other suggestions?

nitpick
Yeah, the web site sez that technical meetings are bi-monthly.  Shouldn't
we change this as they're only monthly (though half way though the month.)
/nitpick

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Technical Meeting Venues

```
[1] ?

Ooops, I know there was something I'd missed off the bottom of the
message.  That'll teach me to watch TV, eat, use irc, and post at the same
time

[1] Unless I've missed it due to the large amount of mail, or someone has
replied off off list.

I have replied to this, off list, because the preferences I expressed were
personal and medical...  ;-)

Fairy Nuff.  Speaking from a personal standpoint, I really enjoy the
technical meetings and think more of them would be really beneficial[2].  I
think they represent a lot of what we are us to and show that we're all
not just talk 'n booze.  Hence I'm anxious to see them succeed.

If not any of the venues discussed then where?  If we need another venue
then someone should look into it[4] asap, and we can see what we can do.

Later.

Mark.

[2] Bath.pm roots showing.  We used to discuss a fair amount of technical
(but not necessary perl related) stuff.  From this, I quickly progressed
into the well rounded perl programmer I am today[3]

[3] How well rounded is a matter of opinion.  Let's just say I wouldn't be
a scratch on what I am now without them.

[4] Which I'd do, but I'm not entirely sure how to go about.  Let's just
say that I've got my cow in the ditch here, and thus would be willing to
look into it if no-one else can come up with better suggestions.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Dream weaver

```
DREAMWEAVER 3.0- Training Dates Now Available!
==
With Dreamweaver being adopted by up to 90% of development companies
worldwide, Focus Group are now providing cost effective, scheduled and
company specific Dreamweaver training, offering Developers the
opportunity to gain extensive skills in  just 2 days.

What's a 'development company' when it's at home?  Also, note that
Developers is being used as a proper noun here (as in, what Focus group
consider a Developer to be)

Later.

Mark.

(Who works in marketing and remembers the phrase about not trying to
bullshit a bullshiter)

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: odd -w effect

```
As I seemed to be destined to be ignored, I'll do what I should have done
and shoult a little louder:

UltraEdit32 is a really good windows editor[1] if you like the way of
Windows.  It does all the right things (in the way that perl does all the
right things) with line endings.  And a lot more (but in a good way, not
in a bloat way)

If you're on Windows and you want to be on Linux then get emacs or
whatever, which do work, but don't bitch about the people using
their metophor of choice not using emacs.  Just bitch at them for
using a shit program (e.g. notepad) and give them a really nice
windows style program (e.g. ultraedit). TMTOWTDI.

Later.

Mark.

[1] It's shareware.  It's actually the last commerical software (excluding
games) I bought.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Mail-To Munging - was Re: Conslutancy

```
Grep ignored with :
Si wibbled at grep :
No. When you reply-all it replies to the sender *AND* the list. So the
sender gets two copies of everything. Which is just fricking irritating
*AND* a waste of bandwidth.

la la la la *has hands over ears* i cant here you, la la la la

Worse than this, the person who you are replying to tends to get their
copy not via the list.  With a slow list server it means the sender gets a
copy *way* before the rest of the group.  This tends to lead to
'tit-for-tat' type discussions that are simply 'broadcast' to the list as
the rest of the list don't even have a hope of keeping up and jumping in -
they're still getting the original message when another six or so have
been sent.  This defeats the whole point of the the list.

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Consultancy company

```
Roger claimed that:

This XP approach seems to require a lot more firmness
in customer relations than I've ever seen - and if that firmness were
present, we wouldn't need XP anyway...

One of the main problems with full disclosure with the client is that it
can only ever work when you've only got one client.  In my job you tend to
be working on more than one project at any given time;  I certainly don't
think I'd like to be the one to tell the client 'sorry this is late, but
there was this unexpected problem with some work we were doing for another
client and it took up all our time'.

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Consultancy company

```
On Mon, 22 Jan 2001, Leon Brocard wrote:
Dave Mee sent the following bits through the ether:
One of the best solutions I've come accross to this problem is to take an
iterative approach to development.

Inded. Look at XP. The whole idea is that at the end of every day /
week you have changed something and can show it to the client
again. This way the client really understands what he really wants.

This even works well if you are working on projects for yourself.  It's a
very good way of maintaining focus and not going off on tangents when
you're programming.

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

```
[1] My first name is actually Christopher, but handily my parents changed

[Oddly enough, same here. I'm Chris Paul ... It's an absolute pain in the
arse. Note to parents: don't do this.]

I know a Andrew Christopher Jackson that's known as Chris.  So it's not
just Christopher that's shunned...

128MB RAM and a K6 is quite enough to run a decently hammered mod_perl site.
You only need more memory if you end up using a large database or doing
something rash like install Oracle. Assuming you're not on an OC-12 backbone
and you're not doing finite element analysis of an F15 jet per form
submission, your IO bottleneck will be the net.

I would think that more RAM is a good idea.  This is because:

1. It's cheap right now
2. We're a varied range of people so will probably want to load a whole
host of modules in mod-perl.  This will probably make our httpd
rather fat and take up a lot of memory - much more if it was a simple
production machine.

Building reliability is probably your best aim: does it have a UPS? does it
have a RAID 1/0 config? Dual PSUs? Tape drive  backup policy? Those things
are way more important than a faster chip or RAM.

Along these lines I'd buy another hard drive.  Having lots of hard drive
space is good for backups - most time data is lost not due to hardware
failure but the directory stucture it's in being trashed through
human/coding error.  Simply back up to another area.

Also if we keep the original drive we can simply backup to that
nightly.  Quicker and easier than tapes - and as we've said any long term
data should really be backed up by individual users anyway, so we need not
worry about things like state51 burning down (well, as far as the server
data is concerned)

For the record, my box, heavly used used by myself, Leon, Simon, Shevek,
and Magnus for 2shortplanks.com / astray.com / huckvale.net / anarres.org
is:

model name  : AMD-K6(tm) 3D processor
stepping: 12
cpu MHz : 501.143806

total:used:free:  shared: buffers:  cached:
Mem:  264376320 208822272 4048 47583232 25063424 128712704
Swap: 542826496 32563200 510263296

(Leon, thanks for the memory)

Filesystem   1k-blocks  Used Available Use% Mounted on
/dev/hda6821340164 816634860   3890812 100% /
/dev/hda115522  3540 11181  24% /boot

(actually, that's a lie - df very broke - it's only 18GB - but you get the
idea)

Later

Mark

(off to see the offspring)

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Feelers for London Open Source Convention

```
Take a look at http://www.bath.ac.uk/~bssnrw/getchart.html for a
differing viewpoint.

bss?  Biological Sciences Staff?  Hmmm.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Access Control Lists and Functions

```
Dieing's probably a bad idea. The idea was for it to set an error stack
so that even if you were using this module you would do stuff like

my \$do = new DO;
\$do-something();
warn ACL::last_error()."\n" if ACL::error();

user x";

Why can't you do this with the standard die semantics?

eval
{
my \$do = new DO;
\$do-something();
}
if (\$@)
{
warn \$@;
}

(will work if both \$@ is a string or a object that is overriden)

Of course if you were using Error.pm you could even use 'try' and 'catch'
as syntatic suger.  See the Error perldoc.

Later.

Mark.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```

### Re: Kung Foo and PIMB

```
Aaron said:

[Where is the kung foo night?]

anyone?

David Hodgkinson wrote:

[PIMB T-Shirts]

Are there any of these left?

New t-shirt idea :

"I know Perl!"
"Show me!"

On the back

use Wutan::Style;

Later.

Mark.

P.S. PINE may be silly, but the multiple reply option rocks.

--
print "\n",map{my\$a="\n"if(length\$_6);' 'x(36-length(\$_)/2)."\$_\n\$a"} (
Name  = 'Mark Fowler',Title = 'Technology Developer'  ,
Firm  = 'Profero Ltd',Web   = 'http://www.profero.com/'   ,
Email = '[EMAIL PROTECTED]',   Phone = '+44 (0) 20 7700 9960'  )

```