From MichaelRunningWolf at att.net Wed Dec 4 01:48:18 2002
From: MichaelRunningWolf at att.net (Michael R. Wolf)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: SOHO XP -- past status and future proposal
Message-ID:
The first meeting of the SOHO XP discussion group went very well. We
had good Indian food, then retired to my SOHO (Small Office, Home
Office -- it's both) to hammer out a metaphor for an algorithm as a
pair-wise exercise on a whiteboard. We were ready to cut to some
prototype code when a USPS COB (close-of-business) deadline rearranged
our priorities. I'm claiming success: I had fun, learned something,
and got to know a fellow SPUGer better.
And I'm making a new proposal.
Dominus (a.k.a. MJD) has been running a Perl Quiz of the Week for
about 2 months. I've enjoyed participating, and would encourage
others to do so. In fact, I'm going to suggest that we make a SPUG
SOHO XP event of it.
TMTOWTQI - There's more than one way to QOTW it. :-}
I see this as a complementary event to the monthly SPUG meetings.
Big possible upside gain:
- We get to play with each other.
- We get to learn from each other.
- We get to work with a different kind of problem.
Little possible downside loss:
- Small time investment.
- The code is disposable.
- Nobody's depending on the code.
- We're not making long-term commitments to our partners.
The International Olympic Committee is adding new sports; perhaps
OSCON could add a new event for those of us who are too handicapped
(for some definition of handicapped) to play Perl Golf, though I don't
quite like the ring of "Perl Special Olympics". Perhaps "Perl New
Games", an allusion to a form of non-competetive games.
Check out http://perl.plover.com/qotw/ for more information.
Tim seems to have found that food-Perl-drink is a good sequence, so
I'm gonna follow the basic recipe by sandwiching Perl in between major
eating breaks. (These don't have to be pricey, just ice-breakers, if
you will.) If you're interested, reply to the list with a preference.
I'll coordinate the groupings.
%preference = (
Friday_afternoon => [lunch, QOTW, happy_hour],
Friday_evening => [happy_hour, QOTW, dinner],
Saturday_morning => [breakfast, QOTW, coffee]
);
And if you really are interested in working on this together, I'd
suggest that you don't do any *work* (though casual reading and
thinking's probably OK) on this weeks' quiz (coming out Wednesday)
until we get together. It's not a race, so starting early actually
disrupts a balanced pairing.
--
Michael R. Wolf
All mammals learn by playing!
MichaelRunningWolf@att.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From tim at consultix-inc.com Wed Dec 4 02:46:22 2002
From: tim at consultix-inc.com (SPUG-list-owner)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: SOHO XP -- past status and future proposal
In-Reply-To:
References:
Message-ID: <20021204004622.A27282@timji.consultix-inc.com>
On Tue, Dec 03, 2002 at 11:48:18PM -0800, Michael R. Wolf wrote:
> Tim seems to have found that food-Perl-drink is a good sequence, so
> I'm gonna follow the basic recipe by sandwiching Perl in between major
> eating breaks. (These don't have to be pricey, just ice-breakers, if
> you will.) If you're interested, reply to the list with a preference.
> I'll coordinate the groupings.
>
> %preference = (
> Friday_afternoon => [lunch, QOTW, happy_hour],
> Friday_evening => [happy_hour, QOTW, dinner],
> Saturday_morning => [breakfast, QOTW, coffee]
> );
Cool idea!
I'd like to participate, but I won't be available this week
(that's the first meeting, right?)
For future weeks, I'd prefer Friday lunch,
but I could possibly show up at any of those times,
if my schedule permits.
-Tim (the food-Perl-drink guy!)
======================================================
| Tim Maher, Ph.D. tim@timmaher.org |
| JAWCAR ("Just Another White Camel Award Recipient" |
| SPUG Founder & Leader spug@seattleperl.org |
| Seattle Perl Users Group www.seattleperl.org |
======================================================
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From jaygray at scn.org Wed Dec 4 18:04:36 2002
From: jaygray at scn.org (Jay Gray)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: SOHO XP -- past status and future proposal
In-Reply-To: <20021204004622.A27282@timji.consultix-inc.com>
Message-ID:
Saturday morning would be best for me.
I believe there is not a quiz this week. The solution for the
rounding-numbers quiz referred to a 'frost simulator', and I looked
at the 'frost' expert quiz (http://perl.plover.com/qotw/e/007) and
it is interesting and doable, if you can visualize the problem
(no pun intended).
After that, the solution is not hard (though a really good solution
will be much more elegant than a brute-force approach). A good
project for a couple hour's entertainment, I'd think.
What about 9 AM, 10 AM, noon Dec 7th for breakfast, Perl, coffee?
Cheers!
Jay Gray
(206) 669-9691
On Wed, 4 Dec 2002, SPUG-list-owner wrote:
> On Tue, Dec 03, 2002 at 11:48:18PM -0800, Michael R. Wolf wrote:
> > Tim seems to have found that food-Perl-drink is a good sequence, so
> > I'm gonna follow the basic recipe by sandwiching Perl in between major
> > eating breaks. (These don't have to be pricey, just ice-breakers, if
> > you will.) If you're interested, reply to the list with a preference.
> > I'll coordinate the groupings.
> >
> > %preference = (
> > Friday_afternoon => [lunch, QOTW, happy_hour],
> > Friday_evening => [happy_hour, QOTW, dinner],
> > Saturday_morning => [breakfast, QOTW, coffee]
> > );
>
> Cool idea!
>
> I'd like to participate, but I won't be available this week
> (that's the first meeting, right?)
>
> For future weeks, I'd prefer Friday lunch,
> but I could possibly show up at any of those times,
> if my schedule permits.
>
> -Tim (the food-Perl-drink guy!)
>
> ======================================================
> | Tim Maher, Ph.D. tim@timmaher.org |
> | JAWCAR ("Just Another White Camel Award Recipient" |
> | SPUG Founder & Leader spug@seattleperl.org |
> | Seattle Perl Users Group www.seattleperl.org |
> ======================================================
>
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
> Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
> Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
> For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
> Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
>
>
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From lists at dansanderson.com Wed Dec 4 20:11:38 2002
From: lists at dansanderson.com (Dan Sanderson)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: SOHO XP -- past status and future proposal
In-Reply-To:
Message-ID:
FWIW, the frost simulator was indeed a fun couple of hours, and the ways
in which my lousy little solution was less than ideal, compared to other
posted solutions, were instructive and interesting (to me :). It was fun
to do by myself, but I can imagine it being a good pair experience.
Others obviously had fun generating pretty graphical output, too.
Satisfying for a snowless Seattle...
-- Dan
On Wed, 4 Dec 2002, Jay Gray wrote:
> Saturday morning would be best for me.
>
> I believe there is not a quiz this week. The solution for the
> rounding-numbers quiz referred to a 'frost simulator', and I looked
> at the 'frost' expert quiz (http://perl.plover.com/qotw/e/007) and
> it is interesting and doable, if you can visualize the problem
> (no pun intended).
>
> After that, the solution is not hard (though a really good solution
> will be much more elegant than a brute-force approach). A good
> project for a couple hour's entertainment, I'd think.
>
> What about 9 AM, 10 AM, noon Dec 7th for breakfast, Perl, coffee?
>
> Cheers!
> Jay Gray
> (206) 669-9691
>
>
> On Wed, 4 Dec 2002, SPUG-list-owner wrote:
>
> > On Tue, Dec 03, 2002 at 11:48:18PM -0800, Michael R. Wolf wrote:
> > > Tim seems to have found that food-Perl-drink is a good sequence, so
> > > I'm gonna follow the basic recipe by sandwiching Perl in between major
> > > eating breaks. (These don't have to be pricey, just ice-breakers, if
> > > you will.) If you're interested, reply to the list with a preference.
> > > I'll coordinate the groupings.
> > >
> > > %preference = (
> > > Friday_afternoon => [lunch, QOTW, happy_hour],
> > > Friday_evening => [happy_hour, QOTW, dinner],
> > > Saturday_morning => [breakfast, QOTW, coffee]
> > > );
> >
> > Cool idea!
> >
> > I'd like to participate, but I won't be available this week
> > (that's the first meeting, right?)
> >
> > For future weeks, I'd prefer Friday lunch,
> > but I could possibly show up at any of those times,
> > if my schedule permits.
> >
> > -Tim (the food-Perl-drink guy!)
> >
> > ======================================================
> > | Tim Maher, Ph.D. tim@timmaher.org |
> > | JAWCAR ("Just Another White Camel Award Recipient" |
> > | SPUG Founder & Leader spug@seattleperl.org |
> > | Seattle Perl Users Group www.seattleperl.org |
> > ======================================================
> >
> > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> > POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
> > Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
> > Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
> > For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
> > Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
> >
> >
>
>
>
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
> Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
> Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
> For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
> Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
>
>
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From MichaelRunningWolf at att.net Fri Dec 6 03:48:40 2002
From: MichaelRunningWolf at att.net (Michael R. Wolf)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: SOHO XP QOTQ this Saturday evening
Message-ID:
I'll hold the Perl QOTW pair-wise get-together this Saturday. I know
there isn't a QOTW this week, so we'll have to do some "QOTW Classics"
from weeks gone by (there have only been 7 so far).
I feel like a suregoin, except I'm doing it in the wrong order:
- do one
- observe one
- assist in one
Let me know if you join in on Saturday, December 7 at 5ish. Once I
get a count, I'll pick a food-Perl-drink venue.
--
Michael R. Wolf
All mammals learn by playing!
MichaelRunningWolf@att.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From pate at eylerfamily.org Fri Dec 6 11:13:10 2002
From: pate at eylerfamily.org (Pat Eyler)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: SOHO XP alternative
In-Reply-To:
Message-ID:
I really like the idea of informal SOHO XP get-togethers as they've been
tossed about here on the spug list, but I'm not in a position to make the
evening session that have come up thus far. Instead of whining about it,
I thought I'd toss out an alternative.
I take the Sounder[1] in and out Seattle every day. I'd love to pair up
with someone to work on random Perl and/or Ruby stuff during this time. I
get on the train in Kent, so we're looking at a ~30 min stretch twice a
day ... not a lot, but enough of a window to make several small steps at a
time.
If anyone is interested in this, please let me know and we can coordinate
schedules.
-pate
[1] The sounder provides decent seating and power ... we might even draw
some interested observers (and a chance to talk about Perl, Ruby, and/or
XP).
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From tim at consultix-inc.com Fri Dec 6 17:55:36 2002
From: tim at consultix-inc.com (SPUG-list-owner)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: Joe's Message
Message-ID: <20021206155536.A5049@timji.consultix-inc.com>
People!
Please try to remember your [s]ubscribed-to address, and post only
from that one.
Joe doesn't know his, and I haven't been able to figure it out for him.
He might want to [s]ubscribe again under the address he's posting from.
I've attached his message.
-Tim
======================================================
| Tim Maher, Ph.D. tim@timmaher.org |
| JAWCAR ("Just Another White Camel Award Recipient" |
| SPUG Founder & Leader spug@seattleperl.org |
| Seattle Perl Users Group www.seattleperl.org |
======================================================
----- Forwarded message from owner-spug-list@pm.org -----
From: owner-spug-list@pm.org
Date: Fri, 6 Dec 2002 15:31:03 -0600
X-Authentication-Warning: mail.pm.org: majordomo set sender to owner-spug-list@pm.org using -f
To: spug-list-approval@pm.org
Subject: BOUNCE spug-list@pm.org: Non-member submission from [Joe Devlin ]
X-UIDL: alb"!4\6!!_^4!!@BQ!!
X-Spam-Status: No, hits=1.7 required=4.5
tests=NO_REAL_NAME,SPAM_PHRASE_00_01,SUBJECT_IS_LIST,
X_AUTH_WARNING
version=2.43
X-Spam-Level: *
>From tim@consultix-inc.com Fri Dec 6 15:31:00 2002
Received: from cache.zipcon.net (cache.zipcon.net [209.221.136.11])
by mail.pm.org (8.11.6/8.11.6) with SMTP id gB6LUx727270
for ; Fri, 6 Dec 2002 15:30:59 -0600
Received: (qmail 12127 invoked by uid 99); 6 Dec 2002 21:32:11 -0000
Date: 6 Dec 2002 13:32:11 -0800
To: spug-list@pm.org, UNEXPECTED_DATA_AFTER_ADDRESS@.SYNTAX-ERROR
Subject: Datimenu.pm peer review of the namespace
Message-ID: <1039210331.3df1175bf0259@secure.zipcon.net>
Date: Fri, 06 Dec 2002 13:32:11 -0800 (PST)
From: Joe Devlin
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
User-Agent: IMP/PHP IMAP webmail program 2.2.8
I am asking for peer review of the namespace and function
compared to what might already be available.
In response to Brian Ingersons discussion of releasing modules
I dusted off the documentation for a module that I use for
creating date and time pop up select menus in html pages.
Find the module and documentation here
http://www.stadiumdistrict.com/DTC/Tutorials/Datimenu/slide1.html
To find out more about being a module contributor I started by
reading: http://www.cpan.org/modules/04pause.html which suggests
talking to other people and searching the long module list before
registering the namespace. It also recommends not duplicating the
work of other people or adding the code functionality to a module
that already exits.
I know that when we wrote this module it was because I could not find
a module on CPAN to fit my needs. I need to reconfirm that it
is unique.
Before releasing this module to CPAN I am sure it will need some
improvements.
Again, I am asking for peer review of the namespace and function
compared to what might already be available.
Sincerely,
Joe Devlin
Devlin Technical Consutling
----- End forwarded message -----
--
-Tim
*----------------------------------------------------------------------------*
| Tim Maher, CEO, CONSULTIX (206) 781-UNIX; (866) DOC-PERL; (866) DOC-LINUX |
| Ph.D. & JAWCAR ("Just Another White Camel Award Recipient") |
| tim@consultix-inc.com teachmeunix.com teachmeperl.com teachmelinux.net |
| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
| CLASSES: Hashes and Arrays in Perl: 12/5; Minimal Perl Programming: 12/6 |
*----------------------------------------------------------------------------*
----- End forwarded message -----
--
-Tim
*----------------------------------------------------------------------------*
| Tim Maher, CEO, CONSULTIX (206) 781-UNIX; (866) DOC-PERL; (866) DOC-LINUX |
| Ph.D. & JAWCAR ("Just Another White Camel Award Recipient") |
| tim@consultix-inc.com teachmeunix.com teachmeperl.com teachmelinux.net |
| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
| CLASSES: Hashes and Arrays in Perl: 12/5; Minimal Perl Programming: 12/6 |
*----------------------------------------------------------------------------*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From MichaelRunningWolf at att.net Sat Dec 7 14:55:56 2002
From: MichaelRunningWolf at att.net (Michael R. Wolf)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: SPUG XP QOTW
Message-ID:
Details on this week's (tonight) SPUG eXtreme Programming Quiz Of The
Week food-perl-drink schedule are below. Kickoff during dinner at
6:00. Details follow. Please RSVP by phone or email so that I can
reserve the correct size table. Right now I've heard from about 3
folks.
What to bring:
computing materials (laptop, cables, PC cards)
thinking materials (paper, markers, reference books, CD's)
entertainment (music, juggling balls, hula hoops)
What I'll have:
printed copies of all regular and expert quizes
Unanswered questions:
Is wireless internet necessary? If so, we can go to Starbucks.
If not, we can use my wired DSL at my apartment.
Where to go after we've conquered the quiz? Ballard's got lots of
opportunities, from sittin on the dock of the (Salmon) Bay to
coffee, beer, and music spots. We'll decide that when it's time.
If you have any other questions, please call me (land: 206/782-8377 or
cell: 732/809-3613). I'll have the cell phone with me if you get
lost, or want to join us late.
%spug_xp_qotw = {
food => [$china_star_buffet,
"December 7, 2002 6:00 p.m."],
Perl => internet_required(@participants) ? $starbuck_s : $michael_s,
drink => undef
};
$china_star_buffet = <
Message-ID: <005d01c29ee3$10736d00$2588ddd1@aciwin>
Joe, there's also a book Writing Perl Modules for CPAN
http://www.apress.com/book/bookDisplay.html?bID=14
Richard Anderson
richard@richard-anderson.org
www.richard-anderson.org
inm4taw
----- Original Message -----
From: "SPUG-list-owner"
To:
Sent: Friday, December 06, 2002 3:55 PM
Subject: SPUG: Joe's Message
> People!
>
> Please try to remember your [s]ubscribed-to address, and post only
> from that one.
>
> Joe doesn't know his, and I haven't been able to figure it out for him.
> He might want to [s]ubscribe again under the address he's posting from.
>
> I've attached his message.
>
> -Tim
> ======================================================
> | Tim Maher, Ph.D. tim@timmaher.org |
> | JAWCAR ("Just Another White Camel Award Recipient" |
> | SPUG Founder & Leader spug@seattleperl.org |
> | Seattle Perl Users Group www.seattleperl.org |
> ======================================================
> ----- Forwarded message from owner-spug-list@pm.org -----
>
> From: owner-spug-list@pm.org
> Date: Fri, 6 Dec 2002 15:31:03 -0600
> X-Authentication-Warning: mail.pm.org: majordomo set sender to
owner-spug-list@pm.org using -f
> To: spug-list-approval@pm.org
> Subject: BOUNCE spug-list@pm.org: Non-member submission from [Joe
Devlin ]
> X-UIDL: alb"!4\6!!_^4!!@BQ!!
> X-Spam-Status: No, hits=1.7 required=4.5
> tests=NO_REAL_NAME,SPAM_PHRASE_00_01,SUBJECT_IS_LIST,
> X_AUTH_WARNING
> version=2.43
> X-Spam-Level: *
>
> >From tim@consultix-inc.com Fri Dec 6 15:31:00 2002
> Received: from cache.zipcon.net (cache.zipcon.net [209.221.136.11])
> by mail.pm.org (8.11.6/8.11.6) with SMTP id gB6LUx727270
> for ; Fri, 6 Dec 2002 15:30:59 -0600
> Received: (qmail 12127 invoked by uid 99); 6 Dec 2002 21:32:11 -0000
> Date: 6 Dec 2002 13:32:11 -0800
> To: spug-list@pm.org, UNEXPECTED_DATA_AFTER_ADDRESS@.SYNTAX-ERROR
> Subject: Datimenu.pm peer review of the namespace
> Message-ID: <1039210331.3df1175bf0259@secure.zipcon.net>
> Date: Fri, 06 Dec 2002 13:32:11 -0800 (PST)
> From: Joe Devlin
> MIME-Version: 1.0
> Content-Type: text/plain; charset=ISO-8859-1
> Content-Transfer-Encoding: 8bit
> User-Agent: IMP/PHP IMAP webmail program 2.2.8
>
> I am asking for peer review of the namespace and function
> compared to what might already be available.
>
> In response to Brian Ingersons discussion of releasing modules
> I dusted off the documentation for a module that I use for
> creating date and time pop up select menus in html pages.
>
> Find the module and documentation here
> http://www.stadiumdistrict.com/DTC/Tutorials/Datimenu/slide1.html
>
> To find out more about being a module contributor I started by
> reading: http://www.cpan.org/modules/04pause.html which suggests
> talking to other people and searching the long module list before
> registering the namespace. It also recommends not duplicating the
> work of other people or adding the code functionality to a module
> that already exits.
>
> I know that when we wrote this module it was because I could not find
> a module on CPAN to fit my needs. I need to reconfirm that it
> is unique.
>
> Before releasing this module to CPAN I am sure it will need some
> improvements.
>
> Again, I am asking for peer review of the namespace and function
> compared to what might already be available.
>
>
> Sincerely,
> Joe Devlin
> Devlin Technical Consutling
>
> ----- End forwarded message -----
>
> --
> -Tim
>
*---------------------------------------------------------------------------
-*
> | Tim Maher, CEO, CONSULTIX (206) 781-UNIX; (866) DOC-PERL; (866)
DOC-LINUX |
> | Ph.D. & JAWCAR ("Just Another White Camel Award Recipient")
|
> | tim@consultix-inc.com teachmeunix.com teachmeperl.com
teachmelinux.net |
>
| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
> | CLASSES: Hashes and Arrays in Perl: 12/5; Minimal Perl Programming:
12/6 |
>
*---------------------------------------------------------------------------
-*
>
> ----- End forwarded message -----
>
> --
> -Tim
>
*---------------------------------------------------------------------------
-*
> | Tim Maher, CEO, CONSULTIX (206) 781-UNIX; (866) DOC-PERL; (866)
DOC-LINUX |
> | Ph.D. & JAWCAR ("Just Another White Camel Award Recipient")
|
> | tim@consultix-inc.com teachmeunix.com teachmeperl.com
teachmelinux.net |
>
| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
> | CLASSES: Hashes and Arrays in Perl: 12/5; Minimal Perl Programming:
12/6 |
>
*---------------------------------------------------------------------------
-*
>
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
> Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
> Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
> For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
> Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
>
>
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From sthoenna at efn.org Sun Dec 8 17:49:23 2002
From: sthoenna at efn.org (Allen Scott-Thoennes)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: Re: Datimenu.pm peer review of the namespace
In-Reply-To: <005d01c29ee3$10736d00$2588ddd1@aciwin>
Message-ID:
> > I am asking for peer review of the namespace and function
> > compared to what might already be available.
> >
> > In response to Brian Ingersons discussion of releasing modules
> > I dusted off the documentation for a module that I use for
> > creating date and time pop up select menus in html pages.
> >
> > Find the module and documentation here
> > http://www.stadiumdistrict.com/DTC/Tutorials/Datimenu/slide1.html
> >
> > To find out more about being a module contributor I started by
> > reading: http://www.cpan.org/modules/04pause.html which suggests
> > talking to other people and searching the long module list before
> > registering the namespace. It also recommends not duplicating the
> > work of other people or adding the code functionality to a module
> > that already exits.
> >
> > I know that when we wrote this module it was because I could not find
> > a module on CPAN to fit my needs. I need to reconfirm that it
> > is unique.
> >
> > Before releasing this module to CPAN I am sure it will need some
> > improvements.
> >
> > Again, I am asking for peer review of the namespace and function
> > compared to what might already be available.
I seem to recall seeing something like this before, but can't
remember where...
I'd run it past the datetime@perl.org list, which reaches the
authors of many of the date/time modules.
WRT namespace, I don't think this belongs in the top level.
Perhaps Date::Menu::Html or some permutation thereof?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From MichaelRunningWolf at att.net Tue Dec 10 16:39:39 2002
From: MichaelRunningWolf at att.net (Michael R. Wolf)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: array(bio) meeting announcement -- XML: The Future Language of Biology
Message-ID:
The array(bio) group meeting is *tonight* at 7:00. See full details at
http://www.arraybio.org/about/arraybio_meeting.htm
I've cut/pasted the details here.
December 10, 2002
7:00 p.m. - 9:00 p.m.
Lake Washington Rowing Club
910 N. Northlake Way
Seattle, WA 98103
"XML: The Future Language of Biology" Matthew T Zeigler, IBM Life Sciences
XML (Extensible Markup Language) is the universal format for
structured documents and data on the web. Several leading
organizations such as European Bioinformatics Institute, LION
Biosciences (NetGenics), Rosetta Biosoftware have proposed new
standards for defining biological information for use with
XML. Matt will help us understand the current status these
standards and discuss future biological applications based on XML.
About Matt
Matthew Ziegler, B.A, M.S., University of Colorado, Boulder in
Molecular, Cellular and Developmental Biology Focus is in Human
Genetics (Family Based and Association Studies), Plant Genetics
(Arabidopsis, Tobacco and Corn), Cell Biology, Confocal
Microscopy, Molecular Biology (Sequencing, Cloning), Positional
Cloning, Alternative Fuels resulting from Biomass conversion,
Relational databases and scientific schema development, Perl,
shell scripting, UNIX, Linux System Administration, Software used:
GeneHunter, CriMap, SAGE/SIBPAL, PedCheck, Mega2, BLAST, FASTA,
MZEF, msa, clustalW, SimWalk, DISEQ.
array(bio) is grateful for the support of the following organizations:
IBM
Info.Resource, Inc.
Washington Biotechnology and Biomedical Association
Washington Software Alliance
Please note that there is no charge to attend array(bio) meetings.
For more information, please contact:
Rob Arnold
3rd Mountain
Phone: 425.369.0107
E-mail: roba@3rdmountain.com
Copyright 1996-2002 Info.Resource, Inc., Seattle, WA,
USA. 800.709.8907. All rights reserved.
Privacy Policy . Advisory Board . Terms of Use . Advertising
arraybio.org is part of a national network of biotechnology and life
science related "trade association" based web sites published by
Info.Resource in support of the life science industry, patient
associations and life science education in the state of Washington.
--
Michael R. Wolf
All mammals learn by playing!
MichaelRunningWolf@att.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From asimjalis at acm.org Tue Dec 10 17:02:40 2002
From: asimjalis at acm.org (Asim Jalis)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: array(bio) meeting announcement -- XML: The Future Language of Biology
In-Reply-To:
References:
Message-ID: <20021210230240.GA5260@wokkil.pair.com>
On Tue, Dec 10, 2002 at 02:39:39PM -0800, Michael R. Wolf wrote:
> "XML: The Future Language of Biology" Matthew T Zeigler, IBM
> Life Sciences
If XML was so great our genetic code would be written in it.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From MichaelRunningWolf at att.net Tue Dec 10 17:20:42 2002
From: MichaelRunningWolf at att.net (Michael R. Wolf)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: Seattle-SAGE meeting announcement -- Practical XML (or Using Buzzwords To Improve Productivity)
Message-ID:
Seems like this is the week for XML..... The Seattle SAGE (The System
Administrators Guild) is *also* talking about XML. Find full details
at http://www.seattle-sage.org/. I've pasted a copy of my email
announcement below.
Michael Wolf
===============================================================
System
Administrators
The next Seattle SAGE meeting is Thursday, December 12th, 2002 at 7pm.
The UW Rosen/McWilliam Building facility is a secured building. So a
SAGE member will be at the Republican Street entrance until 7:15
P.M. to open the door for meeting attendees. After that a phone
number will be posted on the door for the SAGE meeting specifically.
There is an "internal extensions only phone" at the Republican Street
entrance to allow you to call building extensions. The posted phone
number will be monitored until at least 7:45 P.M. However, please make
every effort to arrive by 7 P.M.
Directions can be found at:
http://www.seattle-sage.org/directions.html
---
Next meeting: Thursday December 12th, 2002 at 7:00 PM
Topic: "Practical XML
(or Using Buzzwords To Improve Productivity)"
Presenter: Jeremy Mates
Location: Rosen (McWilliam) Building
960 Republican St, Seattle, WA 98109
(Corner of Terry & Republican)
2nd floor LOUNGE
Directions: http://www.seattle-sage.org/directions.html
Web Site: http://www.seattle-sage.org/
---
Talk Abstract:
Overview of and practical uses for XML. Various XML standards and
tools are covered, including XSLT, a language for transforming
XML. Two real-world uses of XML are suveyed: as content for a website
and for giving presentations.
---
Short Bio:
Jeremy Mates is a systems administrator for the department of Genome
Sciences at the University of Washington. Primary responsibilities
include developing and supporting the network, Mac OS, mail, printing,
unix, and web services in the department.
---
This is FREE and open to the public and a wonderful opportunity.
The Seattle SAGE Group (SSG) is a local group for systems & network
administrators in the Seattle and Pacific northwest areas (North
Western Washington). We are a local chapter of SAGE, but SAGE / USENIX
membership is not a requirement. We sponsor a regular monthly meeting
open to the public on the second Thursday if each month at 7 p.m.
Check out our Web site for more information:
http://www.seattle-sage.org/
--
Scott McDermott
Executive Vice President
Hero Network LLC
http://www.heronetwork.com/
--
Michael R. Wolf
All mammals learn by playing!
MichaelRunningWolf@att.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From m3047 at inwa.net Tue Dec 10 20:42:09 2002
From: m3047 at inwa.net (Fred Morris)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: SGML the past language of.. Was: XML: The Future Language of Biology
Message-ID:
SGML has been the standard language for retroactively describing large
bodies of government data which I am not inclined to call out for ohhh... a
decade or so?
Not surprising, really, that what with this current state of paranoiac
creep that this country is in, and the CDC, and Poindexter, and whatnot,
that commercial companies won't be cashing in on XML without really telling
it like it is.
None of this invalidates the reality of XML, or that generally speaking
having a standard format for describing data is a Good Thing, really, but
you ought to know about its origins.. or at least know enough to ask. The
bureaucracy which usually goes along with it is a large part of the
process.
Indeed, accurately characterizing and specifying metadata is the issue.
Just saying everybody should go along is... well... Why is it that the cart
before the horse doesn't work? Ducks fly fine, seems to me.
IG. FWIW.
--
Fred Morris
m3047@inwa.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From tim at consultix-inc.com Wed Dec 11 00:14:22 2002
From: tim at consultix-inc.com (SPUG-list-owner)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: array(bio) meeting announcement -- XML: The Future Language of Biology
In-Reply-To: <20021210230240.GA5260@wokkil.pair.com>
References: <20021210230240.GA5260@wokkil.pair.com>
Message-ID: <20021210221422.B19564@timji.consultix-inc.com>
On Tue, Dec 10, 2002 at 06:02:40PM -0500, Asim Jalis wrote:
> On Tue, Dec 10, 2002 at 02:39:39PM -0800, Michael R. Wolf wrote:
> > "XML: The Future Language of Biology" Matthew T Zeigler, IBM
> > Life Sciences
>
> If XML was so great our genetic code would be written in it.
Excellent retort! I second that emotion.
-Tim
*----------------------------------------------------------------------------*
| Tim Maher, CEO, CONSULTIX (206) 781-UNIX; (866) DOC-PERL; (866) DOC-LINUX |
| Ph.D. & JAWCAR ("Just Another White Camel Award Recipient") |
| tim@consultix-inc.com teachmeunix.com teachmeperl.com teachmelinux.net |
*----------------------------------------------------------------------------*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From me at donshanks.com Wed Dec 11 13:40:15 2002
From: me at donshanks.com (Don Shanks)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: array(bio) meeting announcement -- XML: The Future Language of Biology
In-Reply-To: <20021210230240.GA5260@wokkil.pair.com>
Message-ID: <001501c2a14d$21a10670$9f01010a@telgar>
Are you sure that it's not?
-----Original Message-----
From: owner-spug-list@pm.org [mailto:owner-spug-list@pm.org] On Behalf
Of Asim Jalis
Sent: Tuesday, 10 December, 2002 15:03
To: Michael R. Wolf
Cc: spug-list@pm.org
Subject: Re: SPUG: array(bio) meeting announcement -- XML: The Future
Language of Biology
On Tue, Dec 10, 2002 at 02:39:39PM -0800, Michael R. Wolf wrote:
> "XML: The Future Language of Biology" Matthew T Zeigler, IBM Life
> Sciences
If XML was so great our genetic code would be written in it.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your
Email-address For daily traffic, use spug-list for LIST ; for weekly,
spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From me at donshanks.com Wed Dec 11 13:46:55 2002
From: me at donshanks.com (Don Shanks)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: array(bio) meeting announcement -- XML: The Future Language of Biology
In-Reply-To: <20021210230240.GA5260@wokkil.pair.com>
Message-ID: <001601c2a14e$123c54e0$9f01010a@telgar>
See http://www.dna.ac.uk/xml/dna_xml.html
-----Original Message-----
From: owner-spug-list@pm.org [mailto:owner-spug-list@pm.org] On Behalf
Of Asim Jalis
Sent: Tuesday, 10 December, 2002 15:03
To: Michael R. Wolf
Cc: spug-list@pm.org
Subject: Re: SPUG: array(bio) meeting announcement -- XML: The Future
Language of Biology
On Tue, Dec 10, 2002 at 02:39:39PM -0800, Michael R. Wolf wrote:
> "XML: The Future Language of Biology" Matthew T Zeigler, IBM Life
> Sciences
If XML was so great our genetic code would be written in it.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your
Email-address For daily traffic, use spug-list for LIST ; for weekly,
spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From ingy at ttul.org Wed Dec 11 14:19:53 2002
From: ingy at ttul.org (Brian Ingerson)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: array(bio) meeting announcement -- XML: The Future Language of Biology
In-Reply-To: <001501c2a14d$21a10670$9f01010a@telgar>; from me@donshanks.com on Wed, Dec 11, 2002 at 11:40:15AM -0800
References: <20021210230240.GA5260@wokkil.pair.com> <001501c2a14d$21a10670$9f01010a@telgar>
Message-ID: <20021211121953.A25613@ttul.org>
On 11/12/02 11:40 -0800, Don Shanks wrote:
> Are you sure that it's not?
I am quite sure, as the pointy brackets would invariably be too
destructive on the cellular structure. God actually prefers YAML for
this purpose. Whitespace scoping is much more conducive to biological
processes. In layman's terms, "It's softer".
Cheers, Brian
>
> -----Original Message-----
> From: owner-spug-list@pm.org [mailto:owner-spug-list@pm.org] On Behalf
> Of Asim Jalis
> Sent: Tuesday, 10 December, 2002 15:03
> To: Michael R. Wolf
> Cc: spug-list@pm.org
> Subject: Re: SPUG: array(bio) meeting announcement -- XML: The Future
> Language of Biology
>
>
> On Tue, Dec 10, 2002 at 02:39:39PM -0800, Michael R. Wolf wrote:
> > "XML: The Future Language of Biology" Matthew T Zeigler, IBM Life
> > Sciences
>
> If XML was so great our genetic code would be written in it.
>
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> -
> POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
> Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
> Replace ACTION by subscribe or unsubscribe, EMAIL by your
> Email-address For daily traffic, use spug-list for LIST ; for weekly,
> spug-list-digest
> Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
>
>
>
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
> Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
> Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
> For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
> Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From asimjalis at acm.org Wed Dec 11 14:29:26 2002
From: asimjalis at acm.org (Asim Jalis)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: array(bio) meeting announcement -- XML: The Future Language of Biology
In-Reply-To: <001501c2a14d$21a10670$9f01010a@telgar>
References: <20021210230240.GA5260@wokkil.pair.com> <001501c2a14d$21a10670$9f01010a@telgar>
Message-ID: <20021211202926.GC80186@wokkil.pair.com>
If I wanted to write some quick and dirty throwaway code that was
going to be write-only and write-once I'd probably use Perl. So
parsing my hair follicles last night it came as no surprise to me
to notice: "#!/usr/local/bin/perl".
Asim
On Wed, Dec 11, 2002 at 11:40:15AM -0800, Don Shanks wrote:
> Are you sure that it's not?
>
> -----Original Message-----
> From: owner-spug-list@pm.org [mailto:owner-spug-list@pm.org] On Behalf
> Of Asim Jalis
> Sent: Tuesday, 10 December, 2002 15:03
> To: Michael R. Wolf
> Cc: spug-list@pm.org
> Subject: Re: SPUG: array(bio) meeting announcement -- XML: The Future
> Language of Biology
>
>
> On Tue, Dec 10, 2002 at 02:39:39PM -0800, Michael R. Wolf wrote:
> > "XML: The Future Language of Biology" Matthew T Zeigler, IBM Life
> > Sciences
>
> If XML was so great our genetic code would be written in it.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From kalistibot at yahoo.com Fri Dec 13 16:25:06 2002
From: kalistibot at yahoo.com (Aaron Paul)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: array(bio) meeting announcement -- XML: The Future Language of Biology
In-Reply-To: <20021211202926.GC80186@wokkil.pair.com>
Message-ID: <20021213222506.56278.qmail@web20906.mail.yahoo.com>
I'm not sure this is off topic, but I couldn't resist
pointing out that you may indeed use perl to calculate
the answers and perform your works, but as a way to
store or transmit data, as in the data in your hair
follicle, well, we saw xml and we said that it was
good.
The great thing is that you wouldn't have to write an
entirely different suite of programs for each type of
cell or organism. You'd see in the metadata that this
is type tissue n of organism y and call a ready made
function without having to write different code to
parse each type of data. I guess dna does this
without metadata, but instead substituting very
tedious mathematic complications.
--- Asim Jalis wrote:
> If I wanted to write some quick and dirty throwaway
> code that was
> going to be write-only and write-once I'd probably
> use Perl. So
> parsing my hair follicles last night it came as no
> surprise to me
> to notice: "#!/usr/local/bin/perl".
>
> Asim
>
> On Wed, Dec 11, 2002 at 11:40:15AM -0800, Don Shanks
> wrote:
> > Are you sure that it's not?
> >
> > -----Original Message-----
> > From: owner-spug-list@pm.org
> [mailto:owner-spug-list@pm.org] On Behalf
> > Of Asim Jalis
> > Sent: Tuesday, 10 December, 2002 15:03
> > To: Michael R. Wolf
> > Cc: spug-list@pm.org
> > Subject: Re: SPUG: array(bio) meeting announcement
> -- XML: The Future
> > Language of Biology
> >
> >
> > On Tue, Dec 10, 2002 at 02:39:39PM -0800, Michael
> R. Wolf wrote:
> > > "XML: The Future Language of Biology" Matthew T
> Zeigler, IBM Life
> > > Sciences
> >
> > If XML was so great our genetic code would be
> written in it.
>
> - - - - - - - - - - - - - - - - - - - - - - - - - -
> - - - - - - - - - - -
> POST TO: spug-list@pm.org PROBLEMS:
> owner-spug-list@pm.org
> Subscriptions; Email to majordomo@pm.org:
> ACTION LIST EMAIL
> Replace ACTION by subscribe or unsubscribe, EMAIL
> by your Email-address
> For daily traffic, use spug-list for LIST ; for
> weekly, spug-list-digest
> Seattle Perl Users Group (SPUG) Home Page:
> http://seattleperl.org
>
__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From MichaelRunningWolf at att.net Fri Dec 13 13:47:04 2002
From: MichaelRunningWolf at att.net (Michael R. Wolf)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: SGML the past language of..
In-Reply-To:
References:
Message-ID:
m3047@inwa.net (Fred Morris) writes:
> SGML has been
[...]
> commercial companies won't be cashing in on XML without really
> telling it like it is.
What do you mean "really telling it like it is"? How is it?
> None of this invalidates
[...]
> but you ought to know about its origins.. or at least know enough to
> ask.
OK, I'll bite. How is it? What are its origins? I don't see the
dark side you appear to be pointing to.
> The bureaucracy which usually goes along with it is a large part of
> the process.
Agreed. You mention the down side, Bureaucracy. I'll hilight the
flip side. Perl is as interesting to me for the culture as it is for
the technology. To quote Larry's wife (sorry, I forgot her name) when
I asked her about language and culture (specifically Perl), she
replied (as a linguist, and right-hand partner of Larry, and
therefore, very much, a pillar in the design of Perl6) "you can't
separate language from culture".
> Why is it that the cart before the horse doesn't work? Ducks fly
> fine, seems to me.
Is this some "center of force vs. center of resistance" analogy, or
have I missed the Flying Walinda duck-horse cart act?
--
Michael R. Wolf
All mammals learn by playing!
MichaelRunningWolf@att.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From tim at consultix-inc.com Fri Dec 13 18:01:12 2002
From: tim at consultix-inc.com (Tim Maher)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: 12/17: "High-Tech Nomad" Steve Roberts
Message-ID: <20021213160112.A7840@timji.consultix-inc.com>
SPUGsters,
Here's the announcement for our pre-Christmas meeting, next Tuesday.
Given that this will be a talk of general high-tech interest and not
one specific to Perl, please feel free to re-post to other possibly
interested groups.
======================================================
| Tim Maher, Ph.D. tim@timmaher.org |
| JAWCAR ("Just Another White Camel Award Recipient" |
| SPUG Founder & Leader spug@seattleperl.org |
| Seattle Perl Users Group www.seattleperl.org |
======================================================
December 2002 Seattle Perl Users Group Meeting
-----------------------------------------------------
Speaker: Steve Roberts, Nomadic Research Labs
wordy@microship.com
Time: Tuesday, December 19, 2002 7-9pm
Location: SAFECO bldg, Brooklyn St. and NE 45th St.
Cost: Admission is free and open to the general public.
Info: http://seattleperl.org/
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Steve Roberts is a hacker, inventor, author, nomad, and popular
public speaker, who invented the engineering discipline he calls
"technomadics". You may have seen him on TV, read about him in
the press, or seen photos of his custom high-tech bicycles and ships.
His first headline-grabbing project was his recumbent bicycle
"Winnebiko," on which he spent 3.5 years covering 17,000 miles around
America. A later 580-pound model with a 105 speed transmission and
an on-board network that included an early SPARC was called BEHEMOTH
(for Big Electronic Human-Energized Machine... Only Too Heavy).
He then turned to shipbuilding, and has spent the past decade
developing a pair of amphibian pedal/solar/sail micro-trimarans with
extensive on-board embedded systems and communications capability.
These "Microships" will be the basis of his next adventure,
a 15,000-mile circumnavigation of the Eastern USA along with a
whole flotilla of nomadlings (forming an ad hoc floating network
of wireless boatlets).
Needless to say, all the equipment involved in these projects
costs a lot of money, so Steve had to assemble a network of over
100 corporate donors for funding (which is a major accomplishment
in itself)!
In this talk, Steve will tell us about his latest inventions,
and how Open Source software, including Perl, is used in them.
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Contact Info:
Steven K. Roberts, N4RVE Nomadic Research Labs
Microship Website: http://www.microship.com
Current location: Camano Island, WA
The Microship live page carries a new photo and short text update
almost every day: http://www.microship.com/latestnews/live.html
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Pre- and Post- Meeting Activities
---------------------------------
The pre-meeting dinner will be at the Cedars restaurant, at 50th
St. and Brooklyn, in the University District, near the Safeco
building where the meeting will take place. The phone number is
527-5247. If you're planning to be there, please post a message
to the list with your expected arrival time (5:30-5:45pm is
recommended).
As usual, those seeking liquid input before (and/or after) the
meeting are invited to congregate at the nearby Finn MacCool's
tavern, at 4217 University Ave. North, (206) 675-0885. (But if
somebody has a *specific recommendation* for an alternative location
that's more conducive to conversation, please let me know, and
we'll consider trying it out.)
See the web-site for more details.
======================================================
| Tim Maher, Ph.D. tim@timmaher.org |
| JAWCAR ("Just Another White Camel Award Recipient" |
| SPUG Founder & Leader spug@seattleperl.org |
| Seattle Perl Users Group www.seattleperl.org |
======================================================
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From tim at consultix-inc.com Fri Dec 13 19:39:32 2002
From: tim at consultix-inc.com (Tim Maher)
Date: Wed Aug 4 00:09:18 2004
Subject: SPUG: 12/17 Talk: Ned Joining Steve
Message-ID: <20021213173932.B8266@timji.consultix-inc.com>
News Flash: Steve Roberts will be joined in Tuesday's presentation
by Ned Konz, lead software guru on the Microship project. Ned is the
author of three CPAN modules, is part of the core Squeak community,
and has extensive experience with embedded systems. He is working on
the ad hoc network design for the Microship project as well as a
variety of other projects, and will be there to provide a technically
chewy counterpoint to Steve's hand-waving exuberance and bizarre road
anecdotes.
======================================================
| Tim Maher, Ph.D. tim@timmaher.org |
| JAWCAR ("Just Another White Camel Award Recipient" |
| SPUG Founder & Leader spug@seattleperl.org |
| Seattle Perl Users Group www.seattleperl.org |
======================================================
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From m3047 at inwa.net Fri Dec 13 21:33:05 2002
From: m3047 at inwa.net (Fred Morris)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: SGML the past language of..
Message-ID:
Michael Wolf writes:
>m3047@inwa.net (Fred Morris) writes:
>
>> SGML has been
>[...]
>> commercial companies won't be cashing in on XML without really
>> telling it like it is.
>
>What do you mean "really telling it like it is"? How is it?
How it is, is that XML is an offshoot of SGML.
SGML has been utilized for some time now in mechanical systems design and
documentation. Additionally, there are large government-sponsored research
and development activities, and in some cases deployments, which have gone
on in parallel but overlapped; working groups have gotten together to
define basically XML, the common metadata, to describe and integrate these
domains of knowledge.
It's a management issue. There's a records management issue which plays
large in this, too. Some of this information is very sensitive. Some of it
some people would like to see destroyed; other people would like to see it
preserved; often, the motivations are entirely disjoint.
In any case, most of this is happening out of the public eye. But a great
deal of work has been done on it, at public expense.
What I mean by "cashing in" is largely monetizing. You may or may not be
aware of a recent MITRE Corporation study on "FOSS" which put Microsoft in
a snit. Come on Michael, you've been in this racket long enough to see all
of the bad patents, and the attempts to sell us what we already paid for as
taxpayers, and the recycled concepts and technologies sold as "new". This
applies not only to the technology for manipulating the data, but to the
data as well. Why are these entities working so diligently to describe
common metadata? Because it makes the information more valuable, and more
accessible.
>> None of this invalidates
>[...]
>> but you ought to know about its origins.. or at least know enough to
>> ask.
>
>OK, I'll bite. How is it? What are its origins? I don't see the
>dark side you appear to be pointing to.
Well it is "dark"; I'll grant you that. If you mean "sinister", I never
claimed that. "Monetization" is oftentimes odious, when new "rights" are
created in something which abrogate other established rights. This doesn't
apply just to the technologies for managing data, but to the data itself;
and "valuable and accessible" may mean that that value and accessibility
accrues to the common good, or it may be that that enhanced access is
concentrated among a select few and more accessible and valuable to them.
Now, it's not all monetization. Records management is an interesting
discipline in its applications, although the stuff of it is as dry as tax
law. One of the more intriguing aspects of records management is retention
guidelines: the notion that you have to preserve records for a certain
period of time, and that all of the records have to be destroyed when that
period of time expires. This is an important notion in a litigous society
such as ours, as if you can prove that you have and adhere to good records
management practices you're not likely to find all of your information
systems sequestered and a gaggle of auditors looking at every scrap of
paper in your organization as a result of a discovery motion predicated on
your sloppy records management practices: if there's nothing to find,
there's no reason to look. And, you're not not likely to find yourself
liable simply for destroying the records in accordance with your
established records management guidelines.
I'm looking at this in a much larger context, I suppose, than mapping of
the human genome. It's fine and good for people to develop tools to
manipulate a large body of information; but should part of that be enough
of a sense of social responsibility to ask whether it is foreseeable that
the tools developed will be utilized for purposes far beyond your own
little playpen? Given the large expenditure of effort which has gone into
records management in an XML-like argot, isn't it likely that those tools
will be applied to new domains, and isn't it the whole point of XML-like
definitions to make it easy to do so?
With better records management, might we have a better idea exactly what's
bubbling in those tanks at Hanford? Perhaps. But would we have ever learned
about the Green Runs? Would we ever have learned about the syphilis
experiments on poor black men? The conflict-of-interest cancer treatment
scandal at The Hutch? Would we have learned as much as we have about Enron?
I don't know the answers; I'm asking. The genome project has a downside,
including but not limited to the possibility that analyzing individuals'
genetic code will be the phrenology of the 21st century, or how about
tailored bioweapons, and my greater question parallels the whole genome
issue, I suppose: are people thinking about the greater ramifications of
the information analysis and management tools they're creating? Nor am I
entirely convinced that all of these tools are being created afresh, as
fruits of the genome project; and are people thinking "where did this come
from, and why"? Everybody knows that the technology which makes the
Internet go was instigated by the Department of Defense as a research
project into survivable networks, and that this technology was deployed by
government agencies in order to (surprise!) share and manage information
and information processing resources.
>> The bureaucracy which usually goes along with it is a large part of
>> the process.
>
>Agreed. You mention the down side, Bureaucracy.
I didn't see "bureaucracy" as inherently a "down side". I do think it is
worth asking: is bureaucracy a downside? What kind of bureaucracy is it?
Can we have a bureaucracy which has an upside? Can we discover things about
our bureaucracy by examining the fruits of its labors? Will we and do we
have the freedom and access and ability to do so?
The "bureaucracy", or at least the government, created the Internet. Why?
>I'll hilight the
>flip side. Perl is as interesting to me for the culture as it is for
>the technology. To quote Larry's wife (sorry, I forgot her name) when
>I asked her about language and culture (specifically Perl), she
>replied (as a linguist, and right-hand partner of Larry, and
>therefore, very much, a pillar in the design of Perl6) "you can't
>separate language from culture".
>
That makes it true? That makes it more than a factoid? Does one determine
the other?
Granted, there are a lot of interesting characters in the Perl culture. ;-)
But is it really because of Perl, or because of Ingy's leather pants?
If the bureaucracy uses Perl, then is it a Perl culture?
>
>> Why is it that the cart before the horse doesn't work? Ducks fly
>> fine, seems to me.
>
>Is this some "center of force vs. center of resistance" analogy, or
>have I missed the Flying Walinda duck-horse cart act?
I apologize, that was obtuse. I assert that this notion that XML "comes
first" or is "new" is a canard. But I was pointing out that canards fly
just fine that way, and that sometimes it is easier to push a cart uphill
than to pull it (it also maneuvers better, at the loss of some directional
stability).
Just be aware of what you're doing, is all. XML may not be "better", it may
just be what the bureaucracy already understands. I count myself as
profoundly underwhelmed, and my experience with gene jockeys is that
they're probably more interested in your knowledge of primers and dimers
than regular expressions.
--
Fred Morris
m3047@inwa.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From tim at consultix-inc.com Fri Dec 13 23:02:56 2002
From: tim at consultix-inc.com (Tim Maher)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Re: 2nd-Best Perl Publisher?
In-Reply-To: <15866.45574.960352.529051@gnat-tibook.local.>
References: <20021213170034.A8085@timji.consultix-inc.com> <15866.45574.960352.529051@gnat-tibook.local.>
Message-ID: <20021213210256.A8848@timji.consultix-inc.com>
On Fri, Dec 13, 2002 at 09:22:30PM -0700, Nathan Torkington wrote:
> > Am I leaving out any important criteria?
>
> Danny had a good list of other criteria.
I agree; and it's the kind of stuff I might have thought of
*eventually*, but undoubtedly too late in the game. Thanks, Danny!
> Ask to keep the copyright in
> your name (no good reason, it just feels better that way). Make sure
> the rights revert when it goes out of print (and check for weasel
> words about what "out of print" means--I personally would put in
> something like "sells less than 10 printed copies a month for three
> consecutive months").
Interesting advice! And I especially like the "operational
definition" of what out-of-print means.
> Talk to authors who have written for the
> publisher and see what their experiences were like.
I've tried this, but most have experience with only one publisher,
and for that reason aren't capable of making comparisons. Hence my
appeal to this "Elite Fraternity of Perl Educators" for additional
input! 8-}
And so far, nobody's commented on my inqury regarding "help with
diagrams".
As a course developer with way too much experience, I'm acutely aware
of the tremendously higher cost (in time) of preparing good graphics
versus "painting word pictures". But graphics are often distinctly
superior in getting certain kinds of points across. So I'm curious
if publishers currently provide artistic resources to their authors.
I'm guessing they don't, judging from the conspicuous absence of
a single diagram in the Camel or the Cookbook, but thought I'd
ask anyway.
-Tim
*----------------------------------------------------------------------------*
| Tim Maher, CEO, CONSULTIX (206) 781-UNIX; (866) DOC-PERL; (866) DOC-LINUX |
| Ph.D. & JAWCAR ("Just Another White Camel Award Recipient") |
| tim@consultix-inc.com teachmeunix.com teachmeperl.com teachmelinux.net |
*-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+*
| Providing Intensive, Hands-on, Instructor-led Software Training since '86! |
*----------------------------------------------------------------------------*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From tim at consultix-inc.com Fri Dec 13 23:35:49 2002
From: tim at consultix-inc.com (Tim Maher)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: 2nd::Best::Publisher -- CROSSTALK!
Message-ID: <20021213213549.A9051@timji.consultix-inc.com>
Sorry for inadvertently CC'ing spug-list when I meant to CC a different
one; nevermind!
-Tim
*----------------------------------------------------------------------------*
| Tim Maher, CEO, CONSULTIX (206) 781-UNIX; (866) DOC-PERL; (866) DOC-LINUX |
| Ph.D. & JAWCAR ("Just Another White Camel Award Recipient") |
| tim@consultix-inc.com teachmeunix.com teachmeperl.com teachmelinux.net |
*-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+*
| Providing Intensive, Hands-on, Instructor-led Software Training since '86! |
*----------------------------------------------------------------------------*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From m3047 at inwa.net Sat Dec 14 11:37:41 2002
From: m3047 at inwa.net (Fred Morris)
Date: Wed Aug 4 00:09:19 2004
Subject: DTDs vs TMTOWTDI Was: Re: SPUG: SGML the past language of..
Message-ID:
DTDs are the antithesis of TMTOWTDI. That is a question which can be
examined in the context of "Perl culture".
In responding to Michael I got a little off-track. Matching quantity for
quantity, I thought I'd take another crack at what I think is really the
core issue. I suppose now I need to either apologize for posting this
essay, or for making that cryptic remark in the first place. :-\
There's interesting stuff going on in practically every field of science,
and there's plenty of stuff that's gone on that's plenty interesting as
well. But biotech isn't special in this regard. If there's something
interesting going on, if somebody goes to some meeting and they learn
something interesting and they want to post a field report, I think that's
great.
I've worked for Immunex, Targeted Genetics, Corixa and NeoRx. As a field
engineer for a document management systems vendor I visited, among other
places, Amgen, Genentech and Isis Pharmaceuticals. I've had some even more
unremarkable assignments, jobs and job interviews in other industries over
the years. I've learned all kinds of things that were interesting and that
have little or nothing to do with software engineering, oftentimes the most
interesting stuff is anecdotal and has little to do with the problem at
hand.
When I say "..biotech isn't special.." I mean sic in vitro sic in vivo (or
perhaps in this case the other way around). I've seen well-run operations
and some which are not so well-run.
There are some interesting problems to solve. A lot of math and
interpolation. "Random" three-letter sequences which are anything but (an
interesting challenge in requirements specification). Whiz-bangy software
for figuring out which primers to use, and how not to get dimers; graphical
tools for molecular modeling and visualization. Large patent and genetic
sequence databases.
The hot room, where all of the counters are: Do you put gloves on when you
go in to use a keyboard, or do you take them off? Everything in the room is
presumed "hot". That means that if you put on gloves, they need to be
treated as "hot"; therefore, they go into the radioactive waste stream.
It's all risk management. The levels of radioactivity are extremely low in
any case, you're dealing with live critters and too much ionizing radiation
is going to introduce an unacceptable amount of noise into the metabolic
equation. Plus they swab the room, and for that matter the building, every
so often. You're the bean counter, you decide: do people put on gloves, or
do they take them off? You have to go into the hot room: do you trust your
colleagues to follow the rules or not?
Memo tacked to the bulletin board somewhere: "..remind you to remove gloves
when greeting visitors..". I generally stood aside and let someone who
worked in any particular lab open the door.
Michael Crichton has a medical degree. Sulphur: it doesn't stay where you
put it. Many labs (most of these entities have more than one lab) are run
in charismatic as opposed to bureaucratic fashion. As someone once remarked
talking about why some of his colleagues could get recombinant yeast to
grow, and others couldn't: "just because you have a PhD in Biology doesn't
mean you can bake bread."
You may find yourself implementing that sophisticated algorithm using
Excel. A lot of these people sit down at a computer and it's pure voodoo;
just because you've got a PhD doesn't mean you understand a computer virus.
It doesn't work in the lab, but somehow if they try something on a computer
and it doesn't work they figure if they try it again exactly the same way
they'll get a different result.
It's just like any other industry: some people are engineers, and some of
them are gene jockeys. They just have some toys to play with which maybe
make it all a little more serious if you screw up. I don't mind
environments like that. Of all of the environments which I've worked in,
those which had cool toys and where the personnel were diligent and adhered
to some appropriate engineering standards have been my favorites. In such
cases, bureaucracy has generally been a good thing.
I'm generally in favor of bureaucracy ascending over charisma when life or
safety is an issue... or even when it simply costs $10000/hour when the
line is down or the boat doesn't leave. In fact an engineering orientation
is for me the determining factor in where I want to work, not the
particular industry. I don't trust charisma.
In the context of this struggle between charisma and bureaucracy, DTDs are
one attempt to supplant charisma with bureaucracy. (You don't think this
sort of definitional struggle really goes on? Look at the politics of
growth factors and chalones.)
One of the reasons people who are in "hard" engineering disciplines get so
snitty about people talking about "software engineering" is, I think, that
they generally don't see a whole lot of engineering going on. This isn't
just the practitioners, it can be the expectations of the people whose
problems we're trying to solve: their approach to the lab may be
professional, but their approach to their information processing tools can
be amateurish and consequently they don't expect us to behave as engineers
in our professional domain. Be that as it may, "There's More Than One Way
To Do It" isn't going to test well when some jury is trying to apportion
liability.
There is a "Perl culture" question in all of this:
DTDs are an effort to define exactly one way to do something. How do you
rationalize "There's More Than One Way To Do It" with a concerted effort to
define exactly one way to do something? Are they using Perl because
"There's More Than One Way To Do It", or for the same reason that I do,
that it's relatively stable and well-supported and I can make it behave in
a predictable and well-defined fashion? Are they really interested in XML
because it's "new"?
I wrote:
>>[...]
>How it is, is that XML is an offshoot of SGML.
>
>SGML has been utilized for some time now in mechanical systems design and
>documentation. Additionally, there are large government-sponsored research
>and development activities, and in some cases deployments, which have gone
>on in parallel but overlapped; working groups have gotten together to
>define basically XML, the common metadata, to describe and integrate these
>domains of knowledge.
>
>It's a management issue.
>[...]
>One of the more intriguing aspects of records management is retention
>guidelines
>[...]
>I didn't see "bureaucracy" as inherently a "down side".
>[...]
>Granted, there are a lot of interesting characters in the Perl culture. ;-)
>But is it really because of Perl, or because of Ingy's leather pants?
>
>If the bureaucracy uses Perl, then is it a Perl culture?
>[...]
>XML may not be "better", it may
>just be what the bureaucracy already understands.
--
Fred Morris
m3047@inwa.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From tim at consultix-inc.com Sat Dec 14 19:09:35 2002
From: tim at consultix-inc.com (Tim Maher)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Wish list for SPUG 2003?
Message-ID: <20021214170935.A12195@timji.consultix-inc.com>
SPUGsters,
Well, 2002 is nearly over, so it's time to start thinking
about what we want to do with SPUG in 2003.
So please post your comments on the following topics,
which occur to me, and any others you might want to discuss.
* Presentation Topics for Meetings *
+ What Perl-related topics are you interested in hearing
about?
+ And for each of those topics, do you know someone who
might be willing to make a presentation on that topic?
* Regular Features at Meetings *
+ Besides the prepared talk(s), should we have any other
regular features at our meetings? Like "Lightning Talks",
"Current Events", "Book Reviews", "Pop Quizzes",
"Best of PerlMonks", etc.?
* Services of SPUG *
+ Should we be providing any additional services or
programs (beyond the meetings, Beginners Nights, mailing list,
and job-postings) to our members or the community?
If so, what?
* Communal Projects *
+ Brian "Ingy" Ingerson once made a valiant effort to get
some collective source-code development going in SPUG,
but then he went into exile in Canada (shortly after embracing
Python and Ruby, if memory serves; Suspicious!), and the effort
ground to a halt. Should we try to get this kind of activity
going again?
* Community Building *
+ Should we be doing something to help us get to know each
other better
======================================================
| Tim Maher, Ph.D. tim@timmaher.org |
| JAWCAR ("Just Another White Camel Award Recipient" |
| SPUG Founder & Leader spug@seattleperl.org |
| Seattle Perl Users Group www.seattleperl.org |
======================================================
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From tim at consultix-inc.com Sat Dec 14 19:20:21 2002
From: tim at consultix-inc.com (Tim Maher)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: SPUG Report Card, 2002
Message-ID: <20021214172021.A12246@timji.consultix-inc.com>
How did you like SPUG in 2002?
What worked well (e.g., our experimentation with "Lighting Talks"),
and our usual representative sample of SuperStar presenters), and what
didn't work so well (e.g., the initial transition to a closed list)?
What activities, services, etc., would you like to see created, continued,
or curtailed in 2003?
"It's your SPUG", so please take a moment to provide feedback and help
make it even better in the future.
-Tim
P.S. I've just taken some photos of the White Camel award, and will
be putting them on the web-site soon (seattleperl.org). It's a very
high-tech, hard to photograph, Plexiglas triangular trophy with
low visual-contrast engraving. And you probably were imagining
a cuddly Steiff dromedary, right? 8-}
======================================================
| Tim Maher, Ph.D. tim@timmaher.org |
| JAWCAR ("Just Another White Camel Award Recipient" |
| SPUG Founder & Leader spug@seattleperl.org |
| Seattle Perl Users Group www.seattleperl.org |
======================================================
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From andrew at sweger.net Sat Dec 14 21:50:58 2002
From: andrew at sweger.net (Andrew Sweger)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Wish list for SPUG 2003?
In-Reply-To: <20021214170935.A12195@timji.consultix-inc.com>
Message-ID:
On Sat, 14 Dec 2002, Tim Maher wrote:
> * Community Building *
> + Should we be doing something to help us get to know each
> other better
"I don't know half of you half as well as I should like; and I like less
than half of you half as well as you deserve."
See y'all Tuesday night! =]
--
Andrew B. Sweger -- The great thing about multitasking is that several
things can go wrong at once.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From tim at consultix-inc.com Sun Dec 15 15:39:03 2002
From: tim at consultix-inc.com (SPUG-list-owner)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Re: SPUG Report Card, 2002
In-Reply-To: <20021214172021.A12246@timji.consultix-inc.com>
References: <20021214172021.A12246@timji.consultix-inc.com>
Message-ID: <20021215133903.A14683@timji.consultix-inc.com>
On Sat, Dec 14, 2002 at 05:20:21PM -0800, Tim Maher wrote:
> How did you like SPUG in 2002?
To help jog your memory, details on all the meetings are
still available at seattleperl.org; just click on January
in the navigation section at the top, and scroll through
the year from there.
In other news, I've got a picture of the "White Camel
Award" I was given for my SPUGly activities now on the website;
click on it for a larger image.
======================================================
| Tim Maher, Ph.D. tim@timmaher.org |
| JAWCAR ("Just Another White Camel Award Recipient" |
| SPUG Founder & Leader spug@seattleperl.org |
| Seattle Perl Users Group www.seattleperl.org |
======================================================
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From tim at consultix-inc.com Tue Dec 17 12:23:03 2002
From: tim at consultix-inc.com (Tim Maher)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: "High Tech Nomad" meeting tonight
Message-ID: <20021217102303.A21173@timji.consultix-inc.com>
December 2002 Seattle Perl Users Group Meeting
-----------------------------------------------------
Speaker: Steve Roberts, Nomadic Research Labs
wordy@microship.com
Time: Tuesday, December 19, 2002 7-9pm
Location: SAFECO bldg, Brooklyn St. and NE 45th St.
Cost: Admission is free and open to the general public.
Info: http://seattleperl.org/
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Steve Roberts is a hacker, inventor, author, nomad, and popular
public speaker, who invented the engineering discipline he calls
"technomadics". You may have seen him on TV, read about him in
the press, or seen photos of his custom high-tech bicycles and ships.
His first headline-grabbing project was his recumbent bicycle
"Winnebiko," on which he spent 3.5 years covering 17,000 miles around
America. A later 580-pound model with a 105 speed transmission and
an on-board network that included an early SPARC was called BEHEMOTH
(for Big Electronic Human-Energized Machine... Only Too Heavy).
He then turned to shipbuilding, and has spent the past decade
developing a pair of amphibian pedal/solar/sail micro-trimarans with
extensive on-board embedded systems and communications capability.
These "Microships" will be the basis of his next adventure,
a 15,000-mile circumnavigation of the Eastern USA along with a
whole flotilla of nomadlings (forming an ad hoc floating network
of wireless boatlets).
Needless to say, all the equipment involved in these projects
costs a lot of money, so Steve had to assemble a network of over
100 corporate donors for funding (which is a major accomplishment
in itself)!
In this talk, Steve will tell us about his latest inventions,
and how Open Source software, including Perl, is used in them.
He'll be joined by Ned Konz, lead software guru on the Microship
project. Ned is the author of three CPAN modules, is part of
the core Squeak community, and has extensive experience with
embedded systems. He is working on the ad hoc network design
for the Microship project as well as a variety of other projects,
and will be there to provide a technically chewy counterpoint to
Steve's hand-waving exuberance and bizarre road anecdotes.
======================================================
| Tim Maher, Ph.D. tim@timmaher.org |
| JAWCAR ("Just Another White Camel Award Recipient" |
| SPUG Founder & Leader spug@seattleperl.org |
| Seattle Perl Users Group www.seattleperl.org |
======================================================
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Contact Info:
Steven K. Roberts, N4RVE Nomadic Research Labs
Microship Website: http://www.microship.com
Current location: Camano Island, WA
The Microship live page carries a new photo and short text update
almost every day: http://www.microship.com/latestnews/live.html
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Pre- and Post- Meeting Activities
---------------------------------
The pre-meeting dinner will be at the Cedars restaurant, at 50th
St. and Brooklyn, in the University District, near the Safeco
building where the meeting will take place. The phone number is
527-5247. If you're planning to be there, please post a message
to the list with your expected arrival time (5:30-5:45pm is
recommended).
As usual, those seeking liquid input before (and/or after) the
meeting are invited to congregate at the nearby Finn MacCool's
tavern, at 4217 University Ave. North, (206) 675-0885. (But if
somebody has a *specific recommendation* for an alternative location
that's more conducive to conversation, please let me know, and
we'll consider trying it out.)
See the web-site for more details.
======================================================
| Tim Maher, Ph.D. tim@timmaher.org |
| JAWCAR ("Just Another White Camel Award Recipient" |
| SPUG Founder & Leader spug@seattleperl.org |
| Seattle Perl Users Group www.seattleperl.org |
======================================================
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From tim at consultix-inc.com Tue Dec 17 15:11:48 2002
From: tim at consultix-inc.com (SPUG-list-owner)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: "High Tech Nomad" meeting tonight
In-Reply-To: <20021217102303.A21173@timji.consultix-inc.com>
References: <20021217102303.A21173@timji.consultix-inc.com>
Message-ID: <20021217131148.A22023@timji.consultix-inc.com>
>
> Pre- and Post- Meeting Activities
> ---------------------------------
> The pre-meeting dinner will be at the Cedars restaurant, at 50th
> St. and Brooklyn, in the University District, near the Safeco
> building where the meeting will take place. The phone number is
> 527-5247. If you're planning to be there, please post a message
> to the list with your expected arrival time (5:30-5:45pm is
> recommended).
I'll be at the Cedars by 5:30; anybody care to join me? (Steve
and Ned are expected to show up too.)
Let me know if you're coming, so I can make an appropriate reservation.
-Tim
*----------------------------------------------------------------------------*
| Tim Maher, CEO, CONSULTIX (206) 781-UNIX; (866) DOC-PERL; (866) DOC-LINUX |
| Ph.D. & JAWCAR ("Just Another White Camel Award Recipient") |
| tim@consultix-inc.com teachmeunix.com teachmeperl.com teachmelinux.net |
*-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+*
| Providing Intensive, Hands-on, Instructor-led Software Training since '86! |
*----------------------------------------------------------------------------*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From pdarley at kinesis-cem.com Wed Dec 18 19:43:38 2002
From: pdarley at kinesis-cem.com (Peter Darley)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Stupid Exporter Question
Message-ID:
Friends,
I've got a question about how the export_to_level bit of Exporter works.
The question is:
I've been building an application for the last two years, and my main
package is getting very big. I have a file, Tools.pm, that has over 170
[s]ubs in it, and it's getting unwieldy, to put it mildly. I would like to
break it out into a Tools::whatever namespace, but I would like to still be
able to use Tools and have it export all the [s]ubs from the different
[s]ub-packages. It looks like export_to_level can do this, but I'll be
jiggered if I can figure out how to use it. Any suggestions would be most
appreciated.
Thanks,
Peter Darley
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From jonathan.souza at usg.sms.siemens.com Wed Dec 18 21:49:06 2002
From: jonathan.souza at usg.sms.siemens.com (Souza Jonathan)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: VEXED "Barbarian needs food badly" Scalar inside Hash problem
Message-ID:
I have a vexing problemo. First I have done this before in other programs, but can't get it to work here. I want to use a variable inside a hash.
Here is my code snippet it is a segment out of a larger package. My problem in in SetupEnvVariables.
package monitor;
#----------
#Method Name: SetupEnvVariables
#Purpose: Modify system environment variables
#Parameters: None
#Calls: Win32::AdminMisc::SetEnvVar && Win32::AdminMisc::DelEnvVar
#Sets: None
#Returns: 1 if completed || undef if error
#----------
sub SetupEnvVariables
{
my ($self) = @_;
my ($machine_name, $env_value);
#MAKE ANY CHANGES TO THE ENVIRONMENTAL VARIABLES
$machine_name = $self->{WHOAMI}{MACHINE_NAME};
print "MN: $machine_name\n"; #prints SP2007 which is correct
#print Dumper($self->{MACHINES}); #dumps correctly
print "Hours: $self->{MACHINES}{$machine_name}{HOURS_TO_RUN}\n"; #error says "Use of uninitialized value in string.."
print "Hours2: $self->{MACHINES}{SP2007}{HOURS_TO_RUN}\n"; #prints correctly -some integer value.
if (exists $self->{MACHINES}{$machine_name}{ENV_VARIABLES}) #always doesn't exist because $machine_name is not being
{
#blah blah
}
#etc....
}
#----------
#Method Name: New
#Purpose: Constructor
#Parameters: None
#Calls: Configure
#Sets: Creates default hash and reference to objects methods
#Returns: Object reference
#----------
sub New
{
my ($class) = @_;
my $self = {
'WHOAMI' => {},
'MACHINES' => {},
};
bless $self, $class;
print "In New\n";
$self->Configure();
return $self;
} #End New
#----------
#Method Name: Configure
#Purpose: Read any configuration files
#Parameters: None
#Calls: Automation::Read_ConfigXML
#Sets: $self->{WHOAMI}{MACHINE_NAME} & $self->{WHOAMI}{XML_FILE}
#Returns: 1 Completed || undef errors
#----------
sub Configure
{
my ($self) = @_;
my ($key, $value, $open);
print "IN CONFIGURE\n";
#Read WhoAmI.txt
if (!($open = open (FH, "<", "WhoAmI.txt")))
{
sleep (20);
if (!($open = open (FH, "<", "WhoAmI.txt")))
{
print "Failed to open WhoAmI.txt\n";
return undef;
}
}
if ($open)
{
while ()
{
($key, $value) = split /=/;
$self->{WHOAMI}{$key} = $value;
}
close FH;
my $auto = Automation->New();
$auto->Read_ConfigXML($self->{WHOAMI}{XML_FILE}, $self->{MACHINES});
#print Dumper($self->{MACHINES}); #dumps correctly
undef $auto;
return 1;
}
return undef; #should never hit this
} #End Configure
#########################
package main;
use strict;
my $monitor = Monitor->New();
$monitor->SetupEnvVariables();
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.pm.org/archives/spug-list/attachments/20021218/219199d7/attachment.htm
From doug at beaver.net Thu Dec 19 00:04:40 2002
From: doug at beaver.net (Doug Beaver)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Stupid Exporter Question
In-Reply-To: ; from pdarley@kinesis-cem.com on Wed, Dec 18, 2002 at 05:43:38PM -0800
References:
Message-ID: <20021219010440.A77632@beaver.net>
On Wed, Dec 18, 2002 at 05:43:38PM -0800, Peter Darley wrote:
> I've been building an application for the last two years, and my main
> package is getting very big. I have a file, Tools.pm, that has over
> 170 [s]ubs in it, and it's getting unwieldy, to put it mildly. I
> would like to break it out into a Tools::whatever namespace, but I
> would like to still be able to use Tools and have it export all the
> [s]ubs from the different [s]ub-packages. It looks like
> export_to_level can do this, but I'll be jiggered if I can figure out
> how to use it. Any suggestions would be most appreciated.
hi peter, did you read the perldoc for Exporter? it has an example of
this, although it's not that clear...
i'm guessing that you want Tools.pm to just have use statements for all
your submodules. that would look like:
package Tools;
use strict;
use Tools::Dir;
1;
package Tools::Dir;
use strict;
use Exporter;
our @EXPORT = qw/tool_dir/;
our @ISA = qw/Exporter/;
sub import {
__PACKAGE__->export_to_level(2, @_);
}
sub tool_dir { print "in tool_dir!\n" }
1;
now when you "use Tools;", tool_dir will automatically be exported into
main::. you could add %EXPORT_TAGS support to Tools.pm so that it only
grabbed certain submodules for different functionality sets. or you
could just export the whole kitchen sink, whatever you like.
doug
--
Space Ghost: Moltar, I have a giant brain that is able to reduce any
complex machine into a simple yes or no answer.
Moltar: Okay, but that's not the cd burner...
Space Ghost: Moltar! Yes!
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From pdarley at kinesis-cem.com Thu Dec 19 08:23:17 2002
From: pdarley at kinesis-cem.com (Peter Darley)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: VEXED "Barbarian needs food badly" Scalar inside Hash problem
In-Reply-To:
Message-ID:
VEXED "Barbarian needs food badly" Scalar inside Hash problemSouza,
Just a shot in the dark, but you might have some extra trailing
characters in WhoAmI.txt, like a trailing space or a trailing \r or \n, that
is preventing the name to match what's in the hash, but would still look
correct when you printed it.
Thanks,
Peter Darley
-----Original Message-----
From: owner-spug-list@pm.org [mailto:owner-spug-list@pm.org]On Behalf Of
Souza Jonathan
Sent: Wednesday, December 18, 2002 7:49 PM
To: SPUG
Subject: SPUG: VEXED "Barbarian needs food badly" Scalar inside Hash
problem
I have a vexing problemo. First I have done this before in other
programs, but can't get it to work here. I want to use a variable inside a
hash.
Here is my code snippet it is a segment out of a larger package. My
problem in in SetupEnvVariables.
package monitor;
#----------
#Method Name: SetupEnvVariables
#Purpose: Modify system environment variables
#Parameters: None
#Calls: Win32::AdminMisc::SetEnvVar && Win32::AdminMisc::DelEnvVar
#Sets: None
#Returns: 1 if completed || undef if error
#----------
sub SetupEnvVariables
{
my ($self) = @_;
my ($machine_name, $env_value);
#MAKE ANY CHANGES TO THE ENVIRONMENTAL VARIABLES
$machine_name = $self->{WHOAMI}{MACHINE_NAME};
print "MN: $machine_name\n";
#prints SP2007 which is correct
#print Dumper($self->{MACHINES}); #dumps
correctly
print "Hours: $self->{MACHINES}{$machine_name}{HOURS_TO_RUN}\n"; #error
says "Use of uninitialized value in string.."
print "Hours2: $self->{MACHINES}{SP2007}{HOURS_TO_RUN}\n"; #prints
correctly -some integer value.
if (exists $self->{MACHINES}{$machine_name}{ENV_VARIABLES})
#always doesn't exist because $machine_name is not being
{
#blah blah
}
#etc....
}
#----------
#Method Name: New
#Purpose: Constructor
#Parameters: None
#Calls: Configure
#Sets: Creates default hash and reference to objects methods
#Returns: Object reference
#----------
sub New
{
my ($class) = @_;
my $self = {
'WHOAMI' => {},
'MACHINES' => {},
};
bless $self, $class;
print "In New\n";
$self->Configure();
return $self;
} #End New
#----------
#Method Name: Configure
#Purpose: Read any configuration files
#Parameters: None
#Calls: Automation::Read_ConfigXML
#Sets: $self->{WHOAMI}{MACHINE_NAME} & $self->{WHOAMI}{XML_FILE}
#Returns: 1 Completed || undef errors
#----------
sub Configure
{
my ($self) = @_;
my ($key, $value, $open);
print "IN CONFIGURE\n";
#Read WhoAmI.txt
if (!($open = open (FH, "<", "WhoAmI.txt")))
{
sleep (20);
if (!($open = open (FH, "<", "WhoAmI.txt")))
{
print "Failed to open WhoAmI.txt\n";
return undef;
}
}
if ($open)
{
while ()
{
($key, $value) = split /=/;
$self->{WHOAMI}{$key} = $value;
}
close FH;
my $auto = Automation->New();
$auto->Read_ConfigXML($self->{WHOAMI}{XML_FILE},
$self->{MACHINES});
#print Dumper($self->{MACHINES}); #dumps correctly
undef $auto;
return 1;
}
return undef; #should never hit this
} #End Configure
#########################
package main;
use strict;
my $monitor = Monitor->New();
$monitor->SetupEnvVariables();
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.pm.org/archives/spug-list/attachments/20021219/098adb43/attachment.htm
From m3047 at inwa.net Thu Dec 19 08:17:19 2002
From: m3047 at inwa.net (Fred Morris)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: My two perl gizmos (CPAN module paralysis)
Message-ID:
Very briefly, here are short synopses of the two modules which I have
contemplated submitting to CPAN. I know that left to my own devices, that
will never happen.
Both of these modules are utilized in a working application which gets
daily use.
Maybe this'll encourage others to share theirs, and we can get together and
at least get the peer review issue out of the way (there are a number of
impediments standing between me and CPAN, peer review is only one). Or,
maybe somebody will be interested enough to say "hey, I could use that!".
Be aware, neither of them is packaged for distribution at the moment
although anyone who's competent with Perl should have no problem getting
them to work; they do have POD.
A CANONICALIZED STRING CONSTANT RESOLVER
Problem:
Generally speaking, localization. This means for languages, but also for
different parts of an application, or different applications of reusable
parts.
Utility:
I find it useful, but mostly I just think it's cool. The overhead for this
might be somewhat large in a occasionally-used Perl script, but with
mod_perl a persistent hash is constructed of particular fully-qualified
names which have already been resolved.
Synopsis:
The constants are all retrieved with a function call which takes as a
parameter a key which will resolve to a constant (or filter, I lied).
So, you define something like
Success => { 'string', 'Done!' }
You reference it in different places as
$cliches->cliche( 'SomeModule.Frotzify.Success' )
$cliches->cliche( 'ThisModule.Frappe.Success' )
You may decide that when you Frappe you want a different message or when
you Stir in SomeModule the same thing is needed, and so you define
overloads (overrides?):
Frappe.Success => { 'string', 'Cheers!' }
SomeModule.Stir.Success => { 'string', 'Mixed!' }
EMBEDDED SQL IN AN HTML REPORT TEMPLATE
Problem:
You need to make a web page which displays the result of a SQL query. You'd
use PHP for this, except you can't bring yourself to embed server code (an
application artifact) in a web page (presentation artifact). Obviously the
SQL is needed, but is anything else? No.
Utility:
Very. I've already stolen it from my app and used it elsewhere on other
projects. You end up with an HTML template which any web page editor will
load (there's an alternate syntax for the SQL statement due to vagaries in
the various WYSIWYG tools, and I would do the same for the liststart and
listend markers if I was packaging this for public consumption).
I looked around CPAN for something this elegant and didn't find it. I even
looked around with Google. Did I reinvent the wheel?
Synopsis:
You need to wrap it in some CGI code which validates parameters and access,
if you're paranoid like me. Then you create a template like the following
(which is an actual, real, live, working example; report, username and
magic are artifacts of my own paranoia handled with some pre and post
processing, and are not part of the module):
Contacts by Name
Copyright (c) 2002 by Fred Morris, 6739 3rd
NW Seattle WA 98117; e-mail: m3047@inwa.net; telephone: 206.297.6344.
All rights reserved.
rev. date: 14-Jul-2002
rev. by: Fred Morris
I ask you, is there anything in this page which isn't necessary to the
presentation of this particular web page (presuming that you're willing to
grant that SQL is self-documenting, and therefore has virtue)?
Furthermore, the SQL statement does not end up in the page actually
delivered to the (ab)user, avoiding an obvious vulnerability. Every time I
look at the module, I'm amazed at how short the code really is... the power
of Perl! The actual guts of it is 186 lines, including white space and
comments; the POD and whatnot makes it about 450 lines.
--
Fred Morris
m3047@inwa.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From pdarley at kinesis-cem.com Thu Dec 19 09:24:27 2002
From: pdarley at kinesis-cem.com (Peter Darley)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Stupid Exporter Question
In-Reply-To: <20021219010440.A77632@beaver.net>
Message-ID:
Well, I thought I had it working, but it fails under mod_perl. Is this
because of mod_perl's messing with package names? I couldn't find any
information on this failure on the web, so if anyone has any further
suggestions I would appreciate it.
Thanks,
Peter Darley
-----Original Message-----
From: Doug Beaver [mailto:doug@beaver.net]
Sent: Wednesday, December 18, 2002 10:05 PM
To: Peter Darley
Cc: SPUG
Subject: Re: SPUG: Stupid Exporter Question
On Wed, Dec 18, 2002 at 05:43:38PM -0800, Peter Darley wrote:
> I've been building an application for the last two years, and my main
> package is getting very big. I have a file, Tools.pm, that has over
> 170 [s]ubs in it, and it's getting unwieldy, to put it mildly. I
> would like to break it out into a Tools::whatever namespace, but I
> would like to still be able to use Tools and have it export all the
> [s]ubs from the different [s]ub-packages. It looks like
> export_to_level can do this, but I'll be jiggered if I can figure out
> how to use it. Any suggestions would be most appreciated.
hi peter, did you read the perldoc for Exporter? it has an example of
this, although it's not that clear...
i'm guessing that you want Tools.pm to just have use statements for all
your submodules. that would look like:
package Tools;
use strict;
use Tools::Dir;
1;
package Tools::Dir;
use strict;
use Exporter;
our @EXPORT = qw/tool_dir/;
our @ISA = qw/Exporter/;
sub import {
__PACKAGE__->export_to_level(2, @_);
}
sub tool_dir { print "in tool_dir!\n" }
1;
now when you "use Tools;", tool_dir will automatically be exported into
main::. you could add %EXPORT_TAGS support to Tools.pm so that it only
grabbed certain submodules for different functionality sets. or you
could just export the whole kitchen sink, whatever you like.
doug
--
Space Ghost: Moltar, I have a giant brain that is able to reduce any
complex machine into a simple yes or no answer.
Moltar: Okay, but that's not the cd burner...
Space Ghost: Moltar! Yes!
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From jgardn at alumni.washington.edu Thu Dec 19 11:08:20 2002
From: jgardn at alumni.washington.edu (Jonathan Gardner)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: My two perl gizmos (CPAN module paralysis)
In-Reply-To:
References:
Message-ID: <200212190908.20937.jgardn@alumni.washington.edu>
On Thursday 19 December 2002 06:17 am, Fred Morris wrote:
> Very briefly, here are short synopses of the two modules which I have
> contemplated submitting to CPAN. I know that left to my own devices, that
> will never happen.
>
> Both of these modules are utilized in a working application which gets
> daily use.
>
> Maybe this'll encourage others to share theirs, and we can get together and
> at least get the peer review issue out of the way (there are a number of
> impediments standing between me and CPAN, peer review is only one). Or,
> maybe somebody will be interested enough to say "hey, I could use that!".
> Be aware, neither of them is packaged for distribution at the moment
> although anyone who's competent with Perl should have no problem getting
> them to work; they do have POD.
>
>
> A CANONICALIZED STRING CONSTANT RESOLVER
>
> Problem:
>
> Generally speaking, localization. This means for languages, but also for
> different parts of an application, or different applications of reusable
> parts.
>
> Utility:
>
> I find it useful, but mostly I just think it's cool. The overhead for this
> might be somewhat large in a occasionally-used Perl script, but with
> mod_perl a persistent hash is constructed of particular fully-qualified
> names which have already been resolved.
>
> Synopsis:
>
> The constants are all retrieved with a function call which takes as a
> parameter a key which will resolve to a constant (or filter, I lied).
>
> So, you define something like
>
> Success => { 'string', 'Done!' }
>
> You reference it in different places as
>
> $cliches->cliche( 'SomeModule.Frotzify.Success' )
> $cliches->cliche( 'ThisModule.Frappe.Success' )
>
> You may decide that when you Frappe you want a different message or when
> you Stir in SomeModule the same thing is needed, and so you define
> overloads (overrides?):
>
> Frappe.Success => { 'string', 'Cheers!' }
> SomeModule.Stir.Success => { 'string', 'Mixed!' }
>
The only thing weird about what I see is that you might as well define
"$Success" and let namespaces do the rest for you. For instance, you can do:
$main::Success = "Done!";
$Frappe::Success = "Cheers!";
$SomeModule::Stir::Success = "Mixed!";
And just use "$Success" in the appropriate place.
As far as a way to do translations efficiently and well... Qt is a C++ widget
library for Windows and X. It is probably the best platform to program for
localization and translation.
Qt uses a function called tr() (which unfortunately is a builtin in perl). You
pass in the string, and then define localization later. If we changed the
name to trn():
$cliches->cliche(trn("Done!"));
Later on, you can ask the module that defined trn() what string were used in
your program. With a list of all of your strings, you can translate it to a
different language or localization, put that into a file, and tell the module
to use that localization.
The problem is that you want to use a finite number of strings. For instance:
trn("Hello, $first_name")
is never going to get translated except for a finite number of $first_name.
The way to work around that is to do something like:
sprintf(trn("Hello, \%s!"), $first_name)
or something more ingenious, which probably exists in perl already.
Anyway, it's a couple of pennies, if that.
--
Jonathan Gardner
jgardn@alumni.washington.edu
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From jonathan.souza at usg.sms.siemens.com Thu Dec 19 14:32:32 2002
From: jonathan.souza at usg.sms.siemens.com (Souza Jonathan)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: $foo->{$merry_christmas} && $I_hate_eol
Message-ID:
Thanks I was going crazy, SPUG is better than vallium.
-----Original Message-----
From: sthoenna@efn.org [mailto:sthoenna@efn.org]
Sent: Thursday, December 19, 2002 10:05 AM
To: spug-list@pm.org
Cc: Souza Jonathan
Subject: Re: SPUG: VEXED "Barbarian needs food badly" Scalar inside Hash problem
On Wed, 18 Dec 2002 19:49:06 -0800, jonathan.souza@usg.sms.siemens.com wrote:
> while ()
> {
> ($key, $value) = split /=/;
> $self->{WHOAMI}{$key} = $value;
> }
> close FH;
It looks like that will leave newlines on the end of each $value, so
your $self->{WHOAMI}{MACHINE_NAME} is probably "SP2007\n" (as Peter Darley
suggested).
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.pm.org/archives/spug-list/attachments/20021219/93bff2ad/attachment.htm
From thane_w at fastmail.fm Thu Dec 19 14:59:34 2002
From: thane_w at fastmail.fm (Thane Williams)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Wish list for SPUG 2003?
In-Reply-To: <20021214170935.A12195@timji.consultix-inc.com>
References: <20021214170935.A12195@timji.consultix-inc.com>
Message-ID: <20021219205934.2E43841E40@server2.fastmail.fm>
> * Communal Projects *
> + Brian "Ingy" Ingerson once made a valiant effort to get
> some collective source-code development going in SPUG,
> but then he went into exile in Canada (shortly after embracing
> Python and Ruby, if memory serves; Suspicious!), and the effort
> ground to a halt. Should we try to get this kind of activity
> going again?
Speaking as a rank newbie in SPUG, to Perl, and as a programmer, I'd be
interested in this. I'd love the chance to work with some pros on some
actual code development.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From jaygray at scn.org Thu Dec 19 14:30:14 2002
From: jaygray at scn.org (Jay Gray)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: VEXED "Barbarian needs food badly" Scalar inside Hash problem
In-Reply-To:
Message-ID:
Jonathan,
It works for me. You may see condensed code + output after my sig.
I suggest two things:
1. try
print "MN: '$machine_name'\n";
to see if this is a trailing white-space issue...
2. If that doesn't work, reply to me only && we can bash
the bug && post the final bug fix back to spug-list
-- Jay Gray
package main;
use Data::Dumper;
$self->{WHOAMI}{MACHINE_NAME} = "SP2007";
$self->{MACHINES}{SP2007}{HOURS_TO_RUN} = 42;
$self->{MACHINES}{SP2007}{ENV_VARIABLES} = "foo bar bash";
SetupEnvVariables($self);
exit;
sub SetupEnvVariables
{
my ($self) = @_;
my ($machine_name, $env_value);
#MAKE ANY CHANGES TO THE ENVIRONMENTAL VARIABLES
$machine_name = $self->{WHOAMI}{MACHINE_NAME};
print "MN: $machine_name\n"; # prints SP2007 which is correct
print Data::Dumper->Dump([ $self->{MACHINES} ],
[qw($self->{MACHINES})]);
print "Hours: $self->{MACHINES}{$machine_name}{HOURS_TO_RUN}\n";
# works for me (Jay)
if (exists $self->{MACHINES}{$machine_name}{ENV_VARIABLES})
{ print "Env vars: found\n" }
else { print "Env vars: NOT FOUND!\n"; }
return;
}
#
# OUTPUT
#
MN: SP2007
$self->{MACHINES} = {
'SP2007' => {
'ENV_VARIABLES' => 'foo bar bash',
'HOURS_TO_RUN' => 42
}
};
Hours: 42
Env vars: found
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From MichaelRunningWolf at att.net Fri Dec 20 17:04:25 2002
From: MichaelRunningWolf at att.net (Michael R. Wolf)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Perl Users Using Perl (or XP QOTW expands)
Message-ID:
The XP QOTW experiment proved to be a success, so I'm going to expand
it to a fortnightly "Perl Users using Perl" playshop.
Looking back at what worked, and what needs improvement, I have the
following observations:
* XP is not critical to the purpose of the playshop. (I like XP,
want to learn more, and to practice more, but it's not critical to
this playshop.)
* Ditto for QOTW.
* Three hours is a good chunk of time.
* Pre-session food or drink is good for schedule synchronization and
ice breaking.
* Pair-wise programming works. I both learned and taught something
in each playshop.
* Creativity and learning are mazimized by playing with a
non-critical piece of code.
The real purpose of the get-together is for Perl Users (SPUG's middle
name) to (pardon the Perl syntax) "use Perl;". When I realized this,
I did a big "Duh!!". XP is just one methodology; QOTW is just one
project. I expect that folks will bring many methodologies and
projects to future playshops.
Watch this board for upcoming time/date/location announcements for
"Perl Users Using Perl Playshop" announcements.
If you have suggestions for times/locations/projects, please post a
follow-up or send reply in the next few days. I'll fold 'em into the
first announcement late next week.
--
Michael R. Wolf
All mammals learn by playing!
MichaelRunningWolf@att.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From tim at consultix-inc.com Sat Dec 21 15:29:42 2002
From: tim at consultix-inc.com (Tim Maher)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Super-Sale on Damian's Jan. Classes!
Message-ID: <20021221132942.A8663@timji.consultix-inc.com>
Subject: Super-Sale on Damian's Jan. Seattle Classes
Dr. Damian Conway, our favorite Visiting Instructor here at
Consultix, is interested in teaching some Seattle classes in
mid-January. But before he commits to doing so, we need to know if
enough people will register to make these class offerings economically
feasible.
As you're undoubtedly aware, mid-January is only a few weeks away,
and we're now just about to enter the holiday season, so it might
be an uphill battle to put all this together on such short notice.
This being the case, we need to get your attention right away,
and quickly determine if we can get our required minimum enrollment
for these classes.
To this end, we're temporarily offering training by this top speaker
at the previously unheard of price of only $225 per day!
That price will last until 12/27 or until we run out of discounted
seats, whichever comes first, so you'll want to register and
arrange payment (by charge-card only) as soon as you can to lock
in your discount.
NOTE: If the online registration program at
http://teachmeperl.com/cgibin/register.cgi shows you the
discounted rate (of $225 X #days), it's still available.
All Consultix class offerings for 1Q 2003 are listed below, along
with more information about "The Damian". I hope many of you can take
advantage of this unique opportunity to receive training from him!
--------------------------------------------------------------
SCHEDULE OF CONSULTIX PUBLIC CLASSES
JANUARY 2003
--------------------------------------------------------------
CLASSES BY: DR. DAMIAN CONWAY
Title Dates Site
Practical Extraction and Reporting 1/13-14 Seattle
(aka "Data Munging")
Understanding Regexes 1/15 Kirkland
Fundamental Parsing for Bioinformatics 1/15-16 Kirkland
(includes above Regexes class)
Intermediate Object Oriented Perl 1/17 Kirkland
NOTE: "Munging" and "Regexes" have 1/2 day of material in common.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CLASSES BY: DR. TIM MAHER
TITLE DATES SITE
Minimal Perl 1/27 Kirkland
UNIX Fundamentals 1/28-31 Kirkland
Perl Programming 2/10-12 Kirkland
Using and Creating Perl Modules 2/13-14 Kirkland
----------------------------------------------------------------
WHO'S DAMIAN CONWAY?
Australia's Dr. Damian Conway is one of the foremost experts on the
Perl 5 language, and the co-designer (with Larry Wall) of the upcoming
Perl 6.
He's also a prolific contributor of sophisticated freely-available
Perl modules to the CPAN, one of the most popular speakers on the
Perl conference circuit (http://teachmeperl.com/tsc_review.html),
and a renowned presenter of entertaining and enlightening corporate
classes (see http://teachmeperl.com/damian_evals.html).
As if all that weren't enough, he's the only person in history to
win three Larry Wall awards for the tremendous contributions of his
CPAN modules to the Perl community!
WHAT DID PREVIOUS ATTENDEES SAY ABOUT HIS CLASSES?
* Damian is the most engaging and motivated instructor I've had the
pleasure of seeing.
* Very knowledgeable as well as congenial and animated. Made the
subject quite fun and very enticing.
* Highest class of instruction I've had since graduate school in
the 1970's!
* Awesome presentation. Instructor has thorough knowledge of
subject, obviously. Very good speaker.
* I would tell anyone who could take this course ("Adv. OO
Perl") with Damian to take it - hands down. Wish there was a
part 2 and 3!
* Not only was his material excellent, but also his ability to
speak. Dr. Conway is a true pleasure to listen to. He has a real
flair for getting complex thoughts across.
CONSULTIX ON-LINE RESOURCES
General Information:
http://www.consultix-inc.com
On-Site Training:
http://www.consultix-inc.com/on-site.html
Course Listings:
Perl, http://teachmeperl.com/perllist.html
UNIX/Shell, http://teachmeunix.com/unixlist.html
Registration and Pricing: http://www.consultix-inc.com/reg.html
Instructor Evaluations: http://www.consultix-inc.com/evals.html
Course Evaluations: http://www.consultix-inc.com/course_evals.html
*----------------------------------------------------------------------------*
| Tim Maher, CEO, CONSULTIX (206) 781-UNIX; (866) DOC-PERL; (866) DOC-LINUX |
| Ph.D. & JAWCAR ("Just Another White Camel Award Recipient") |
| tim@consultix-inc.com teachmeunix.com teachmeperl.com teachmelinux.net |
*----------------------------------------------------------------------------*
----- End forwarded message -----
--
-Tim
*----------------------------------------------------------------------------*
| Tim Maher, CEO, CONSULTIX (206) 781-UNIX; (866) DOC-PERL; (866) DOC-LINUX |
| Ph.D. & JAWCAR ("Just Another White Camel Award Recipient") |
| tim@consultix-inc.com teachmeunix.com teachmeperl.com teachmelinux.net |
*-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+*
| Providing Intensive, Hands-on, Instructor-led Software Training since '86! |
*----------------------------------------------------------------------------*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From MichaelRunningWolf at att.net Sun Dec 22 00:44:25 2002
From: MichaelRunningWolf at att.net (Michael R. Wolf)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: multi-lingual Hello, World!
Message-ID:
Hey language junkies. Hello World in 204 languages. How many do you
recognize?
http://www2.latech.edu/~acm/HelloWorld.shtml
--
Michael R. Wolf
All mammals learn by playing!
MichaelRunningWolf@att.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From blueovalfun at yahoo.com Thu Dec 26 14:53:17 2002
From: blueovalfun at yahoo.com (Andrew Reid)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Sort an array question
Message-ID: <20021226205317.13292.qmail@web20810.mail.yahoo.com>
Greetings,
While attempting to gain more meaninful employment, I
happened upon this question from a prospective
provider of opportunity. "Sort an array
alphabetically without using the Perl sort command."
This was provided by someone not familiar with Perl
but other languages and all work was shown on a white
board. I think I did OK, there were a few holes in
the code, and I decided to really give it a shot.
This works and is very close to what I provided on the
spot.
If any of you have some free time and thoughts, I'd
appreciate them! Tell me what you think.
Here is my program.
#!/usr/bin/perl -w
$arrayCnt = 0;
$passCnt = 0;
$elementCnt = 0;
@array1 = qw(e c g h z r t a i h j l p b d r q x v a);
@array2 = sort(@array1);
foreach (@array1) {$arrayCnt++;}
print "This is the array Count [$arrayCnt]\n";
while (defined @array1) {
$startPnt = $array1[$passCnt];
$lowValue = $startPnt;
if ($arrayCnt <= $passCnt) {
print "My sort list [@array1]\n";
print "A Check Sort [@array2]";
exit;
}
print "The array as found in loop $passCnt
\t[@array1]\n";
print "The Start point value \t** $startPnt **\t \n";
foreach (@array1) {
if ($elementCnt < $passCnt){
print "Element Value [ $_ ]\t";
print "Element Count [$elementCnt]\t Pass
Count [$passCnt]\n";
shift;
} elsif (($_ lt $lowValue) || ($_ eq
$lowValue)){
print "Comparing $_ to $lowValue
[Element #$elementCnt]\t";
$lowValue = $_;
print "Low value [$lowValue]\n";
$lowElement = $elementCnt;
}
$elementCnt++;
} #end of foreach
if ($startPnt ne $lowValue) {
print "This was the low value [$lowValue] and
low element [$lowElement]\n";
push(@array1,$startPnt);
print ("splice()
",splice(@array1,$lowElement,1), "\n");
$array1[$passCnt] = $lowValue;
$passCnt++;
} else {$passCnt++;}
} #end of while
__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From spug at ifokr.org Thu Dec 26 16:27:17 2002
From: spug at ifokr.org (Brian Hatch)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Sort an array question
In-Reply-To: <20021226205317.13292.qmail@web20810.mail.yahoo.com>
References: <20021226205317.13292.qmail@web20810.mail.yahoo.com>
Message-ID: <20021226222717.GH13238@ifokr.org>
> While attempting to gain more meaninful employment, I
> happened upon this question from a prospective
> provider of opportunity. "Sort an array
> alphabetically without using the Perl sort command."
> This was provided by someone not familiar with Perl
> but other languages and all work was shown on a white
> board. I think I did OK, there were a few holes in
> the code, and I decided to really give it a shot.
> This works and is very close to what I provided on the
> spot.
>
> If any of you have some free time and thoughts, I'd
> appreciate them! Tell me what you think.
Though you could certainly code up a bubble/insertion/quick sort
or such, how 'bout
#!/usr/bin/perl -w
use IPC::Open2;
use strict;
my @array1 = qw(e c g h z r t a i h j l p b d r q x v a);
open2(*R, *W, "sort") or die "Can't run sort!":
print W join "\n", @array1;
close W;
chomp(@array2 = );
print "Sorted version: @array2";
After all, TMTOWTDI.
--
Brian Hatch Each generation has
Systems and it's signaure disease.
Security Engineer The Black Plague.
http://www.ifokr.org/bri/ Cholera. Ebola. AIDS.
Windows 2000.
Every message PGP signed
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 240 bytes
Desc: not available
Url : http://mail.pm.org/archives/spug-list/attachments/20021226/fec1bff1/attachment.bin
From blueovalfun at yahoo.com Thu Dec 26 17:09:30 2002
From: blueovalfun at yahoo.com (Andrew Reid)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Sort an array question
In-Reply-To: <20021226222717.GH13238@ifokr.org>
Message-ID: <20021226230930.4380.qmail@web20808.mail.yahoo.com>
Brian,
Cool, Thanks! I'll look into this. I've never used
IPC module before. Seems like a good place to check.
I didn't do the best job setting this up, I gave this
problem as it was presented to me. One of the
stipulations as I started working on it at the board
was that everything be sorted in a single array.
"Without creating a new memory space" is what the guy
said if I remember correctly.
I'll look at IPC, thanks again.
--- Brian Hatch wrote:
>
>
> > While attempting to gain more meaninful
> employment, I
> > happened upon this question from a prospective
> > provider of opportunity. "Sort an array
> > alphabetically without using the Perl sort
> command."
> > This was provided by someone not familiar with
> Perl
> > but other languages and all work was shown on a
> white
> > board. I think I did OK, there were a few holes
> in
> > the code, and I decided to really give it a shot.
> > This works and is very close to what I provided on
> the
> > spot.
> >
> > If any of you have some free time and thoughts,
> I'd
> > appreciate them! Tell me what you think.
>
>
> Though you could certainly code up a
> bubble/insertion/quick sort
> or such, how 'bout
>
>
> #!/usr/bin/perl -w
>
> use IPC::Open2;
> use strict;
>
> my @array1 = qw(e c g h z r t a i h j l p b d r q x
> v a);
>
> open2(*R, *W, "sort") or die "Can't run sort!":
> print W join "\n", @array1;
> close W;
> chomp(@array2 = );
>
> print "Sorted version: @array2";
>
>
> After all, TMTOWTDI.
>
>
>
>
> --
> Brian Hatch Each generation has
> Systems and it's signaure disease.
> Security Engineer The Black Plague.
> http://www.ifokr.org/bri/ Cholera. Ebola. AIDS.
> Windows 2000.
> Every message PGP signed
>
> ATTACHMENT part 2 application/pgp-signature
__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From asimjalis at acm.org Thu Dec 26 18:08:12 2002
From: asimjalis at acm.org (Asim Jalis)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Sort an array question
In-Reply-To: <20021226222717.GH13238@ifokr.org>
References: <20021226205317.13292.qmail@web20810.mail.yahoo.com> <20021226222717.GH13238@ifokr.org>
Message-ID: <20021227000812.GA88048@wokkil.pair.com>
Brian Hatch wrote:
> Andrew Reid wrote:
> > While attempting to gain more meaninful employment, I
> > happened upon this question from a prospective provider of
> > opportunity. "Sort an array alphabetically without using the
> > Perl sort command." This was provided by someone not familiar
> > with Perl but other languages and all work was shown on a
> > white board. I think I did OK, there were a few holes in the
> > code, and I decided to really give it a shot. This works and
> > is very close to what I provided on the spot.
> >
> > If any of you have some free time and thoughts, I'd
> > appreciate them! Tell me what you think.
>
> Though you could certainly code up a bubble/insertion/quick sort
> or such, how 'bout
>
> open2(*R, *W, "sort") or die "Can't run sort!":
Is there a way to use map and grep to do a bubble sort (or
insertion sort) in a functional programming way? Something like:
@sorted_list = map { . . . } [. . . stuff . . . ] @unsorted_list;
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From spug at ifokr.org Thu Dec 26 18:09:25 2002
From: spug at ifokr.org (Brian Hatch)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Sort an array question
In-Reply-To: <20021226230930.4380.qmail@web20808.mail.yahoo.com>
References: <20021226222717.GH13238@ifokr.org> <20021226230930.4380.qmail@web20808.mail.yahoo.com>
Message-ID: <20021227000925.GI13238@ifokr.org>
> Cool, Thanks! I'll look into this. I've never used
> IPC module before. Seems like a good place to check.
IPC == InterProcess Communication.
I cheeted - I piped the array to the 'sort' unix
command, and read the results back in.
> One of the
> stipulations as I started working on it at the board
> was that everything be sorted in a single array.
> "Without creating a new memory space" is what the guy
> said if I remember correctly.
Well, using fork/exec to launch the unix sort command
would certainly violate that requirement. But it is
fun.
A quick sort or bubble sort would fit his requirement,
no doubt. An insertion sort could if you take from one
array and grow a second array if you consider that
there's a net zero change in memory usage, but that's
probably not what he wanted.
--
Brian Hatch "Draal told Zathras what
Systems and to do. So Zathras will do.
Security Engineer Or much, much dying."
http://www.ifokr.org/bri/
Every message PGP signed
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 240 bytes
Desc: not available
Url : http://mail.pm.org/archives/spug-list/attachments/20021226/23c529fc/attachment.bin
From moonbeam at catmanor.com Thu Dec 26 19:46:27 2002
From: moonbeam at catmanor.com (William Julien)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Sort an array question
Message-ID: <200212270146.gBR1kRf06165@catmanor.com>
>From owner-spug-list@mail.pm.org Thu Dec 26 13:06:42 2002
>X-Authentication-Warning: mail.pm.org: majordomo set sender to owner-spug-list@pm.org using -f
>Date: Thu, 26 Dec 2002 12:53:17 -0800 (PST)
>From: Andrew Reid
>Subject: SPUG: Sort an array question
>To: spug-list@pm.org
>MIME-Version: 1.0
>Content-Type: text/plain; charset=us-ascii
>Sender: owner-spug-list@pm.org
>Precedence: bulk
>X-UIDL: Ja8"!Xi_!!J+X!!Ee_"!
>
>Greetings,
>
>While attempting to gain more meaninful employment, I
>happened upon this question from a prospective
>provider of opportunity. "Sort an array
>alphabetically without using the Perl sort command."
>This was provided by someone not familiar with Perl
>but other languages and all work was shown on a white
>board. I think I did OK, there were a few holes in
>the code, and I decided to really give it a shot.
>This works and is very close to what I provided on the
>spot.
>
>If any of you have some free time and thoughts, I'd
>appreciate them! Tell me what you think.
>
>Here is my program.
>
Although basic, this is actually a very interesting problem. There is
more than one way to sort an array. Consider, for example a mixed array
of numbers and characters. The standard perl sort puts a "12" before a
"2". Mixed alpha and numeric elements require special handling. What is
"correct", depends on the expectation of the user (programmer).
I wish you luck in finding new opportunities. To help, I offer a few humble
suggestions and sample code. These are issues of style, religion, and art;
not science.
White space is "good". It enhances the readability of the code.
Divide your code into logical segments. The code below starts with a
comment block with provides "who, what, when, where". This is good
in a corporation when the reader needs to "kill the author". :-)
What follows are a module, variable and initialization sections.
Each major functional unit has a comment.
I comment sections for "what is does", not "how I do it". If
particular lines require explaination, I place them on the right
of the line. I never comment control structures ("end for while").
If the person reading the code can't figure that out, they need to
get a job in the service industry.
I use the "my" scoping block to document the purpose and use of
each variable. Again, this is just my style. There is no wrong way.
Finally, think about ways to simplify and reduce the number of variables.
The line "foreach (@array1) {$arrayCnt++;}" is not necessary since
"$#array1;" provides the same answer (but zero based). General rule of
thumb: When you find your "my" block filling with control variables,
it's time to think if a better way. This is really important when the
program starts getting large.
William Julien
(vi bill)
Sample run:
-->bubble.pl
Original array: e 42 c g h z Man 2 t a 5 i 6 Cat j l 33 12 p b r q x v a
Perl Sort: 12 2 33 42 5 6 Cat Man a a b c e g h i j l p q r t v x z
alt Perl sort: 2 5 6 12 33 42 Cat Man a a b c e g h i j l p q r t v x z
Bubble sorted: 2 5 6 12 33 42 Cat Man a a b c e g h i j l p q r t v x z
Here is the code:
#!/usr/bin/perl -w
#
# Spug sort example
#
# William Julien
# catmanor.com
# 12/26/2002
###
#
# modules
#
use strict;
#
# variable declarations
#
my (@array, # an unsorted array
@sorted, # a sorted array
$i, # loop index
$j, # loop index
$tmp, # a temporary place
);
#
# initialization
#
@array = qw(e 42 c g h z Man 2 t a 5 i 6 Cat j l 33 12 p b r q x v a);
#
# print original, perl sort, and alpha/numeric sort
#
print "Original array:\t@array\n";
@sorted = sort @array;
print "Perl Sort:\t@sorted\n";
@sorted = sort { $tmp = $a . $b;
( $tmp =~ /\D+/ ) ? $a cmp $b : $a <=> $b
} @array ;
print "alt Perl sort:\t@sorted\n";
#
# sort array using a bubble sort
#
for( $i = 0; $i <= $#array; $i++ ) {
for( $j = $i+1; $j <= $#array; $j++ ) {
$tmp = $array[$j] . $array[$i]; # join compare elements
if ( ( $tmp =~ /\D+/ ) ? # use alpha if not numeric
$array[$j] lt $array[$i] : # alpha
$array[$j] < $array[$i] # numeric
) {
$tmp = $array[$j]; # save element
$array[$j] = $array[$i]; # swap
$array[$i] = $tmp; # restore element
}
}
}
#
# print bubble sorted array
#
print "Bubble sorted:\t@array\n";
#
# fin
###
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From tim at consultix-inc.com Fri Dec 27 03:09:23 2002
From: tim at consultix-inc.com (Tim Maher)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Damian Discount extended to 12/31
Message-ID: <20021227010923.A26356@timji.consultix-inc.com>
SPUGsters,
Here's the announcement sent out today to the Consultix customer
mailing list, which has an update on Damian's January classes.
In short, there's still time to score the huge 50% discount if
you act before the year's end.
See http://teachmeperl.com for more details.
-Tim
_____________________________________________________________________
1) Although some thrifty shoppers have wisely registered for Damian
Conway's Perl classes already, including a group on Christmas eve (!),
we still have more promotional seats, so we're extending the discounts
through 12/31.
* Remember, only one of these classes from Damian requires skills
beyond the beginner level, so this is a golden opportunity to
obtain valuable basic training from a uniquely talented and
knowledgeable presenter. (See http://teachmeperl.com/damian_pro.html
for endorsements, and http://teachmeperl.com/janpworkshop.html for
more class details).
2) Friday, 12/27, is the last day to get the EarlyBird pricing on the
January "Minimal Perl" and "UNIX Fundamentals" classes. To qualify,
you must register (http://teachmeperl.com/register.html) *and* provide
charge card details.
TITLE DATES TUITION EarlyBird
Early/Full Deadline
CLASSES BY: DR. DAMIAN CONWAY
Practical Extraction 1/13-14 $450/$900 12/31
and Reporting ("Munging")
Understanding Regexes 1/15 $225/$450 12/31
Parsing for Bioinformatics 1/15-16 $450/$900 12/31
(includes Regexes)
Intermediate OO Perl 1/17 $225/$450 12/31
CLASSES BY: DR. TIM MAHER
Minimal Perl 1/27 $300/$350 12/27
UNIX Fundamentals 1/28-31 $1,320/$1,420 12/27
Perl Programming 2/10-12 $1,025/$1,125 01/10
Using & Creating Modules 2/13-14 $800/$880 01/10
-Tim
*----------------------------------------------------------------------------*
| Tim Maher, CEO, CONSULTIX (206) 781-UNIX; (866) DOC-PERL; (866) DOC-LINUX |
| tim@consultix-inc.com teachmeunix.com teachmeperl.com teachmelinux.net |
*-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+*
| MAHER CLASSES: Minimal Perl: 1/27; UNIX: 1/28; Perl: 2/10; Modules: 2/13; |
| DAMIAN CLASSES: Munging: 1/13; Regexes: 1/15; BioInfo: 1/15; OOP: 1/17; |
*----------------------------------------------------------------------------*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From MichaelRunningWolf at att.net Fri Dec 27 04:43:31 2002
From: MichaelRunningWolf at att.net (Michael R. Wolf)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Sort an array question
In-Reply-To: <200212270146.gBR1kRf06165@catmanor.com>
References: <200212270146.gBR1kRf06165@catmanor.com>
Message-ID:
William Julien writes:
[...]
> $tmp = $array[$j]; # save element
> $array[$j] = $array[$i]; # swap
> $array[$i] = $tmp; # restore element
Or, use a slice to do 3 steps in one, without need for a $tmp:
@array[$i, $j] = @array[$j, $i];
This was one of the first really cool shadows of the bigger Perl
animal that made me realize it's a complex beast. It does DWIM!!!
--
Michael R. Wolf
All mammals learn by playing!
MichaelRunningWolf@att.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From MichaelRunningWolf at att.net Fri Dec 27 05:58:02 2002
From: MichaelRunningWolf at att.net (Michael R. Wolf)
Date: Wed Aug 4 00:09:19 2004
Subject: DTDs vs TMTOWTDI Was: Re: SPUG: SGML the past language of..
In-Reply-To:
References:
Message-ID:
m3047@inwa.net (Fred Morris) writes:
> DTDs are the antithesis of TMTOWTDI. That is a question which can be
> examined in the context of "Perl culture".
I just got around to reading your discussion of TMTOWTDI vs DTD's
vis-a-vis beurocracy and charisma. Thank you for an interesting
perspective.
I appreciated the point about software engineering being soft-ware
(mushie-ware). Your suggestion of a jury listening to TMTOWTDI
justifications reminds me of my early career at Bell Labs. I was
young, recently degreed and married. I was on the merry-go-round.
The real estate market was going up. Ergo, I built a house. (Wasn't
it my duty to buy high and sell low to supplement the economy?)
Because the housing market was tight, I didn't get the sharpest tool
in the shed. I've got lots of stories about how bad this guy was;
I'll share just a few.
It literally started on day 1 - the footings weren't dug where we
agreed that the house should be. To correct the siting, he hand dug
makeshift footings that were over 1 foot off of level.
The 2.5 inch difference in height between the left and right side of
the garage doors was described as an "elliptical [sic] illusion".
The floor was so far out of level and planar that I created topo maps
for the homeowner warranty folks.
Concrete was poured in the rain just prior to a 20F hard freeze.
And when I noticed that the blueprints (yes, it was a while ago) had
the furnace pipe routed through the kitchen counter, I succeeded in
having it moved, but it got routed into the hallway, obstructing our
ability to move furniture into the upstairs bedrooms.
Horrendous.
Unthinkable.
He had violated standard building practices, built without specs, and
disregarded the customer's request. It was so bad, verifiably bad,
that we won our claim to the HOW (the Homeowner Warranty) insurance
plan.
Now here's the kicker. I was a MTS (Member of Technical Staff) at a
world-class laboratory, known for their software development (Unix
among them, but also all the software that ran the switches that
carried the calls that ran the backbone that carried the messages
that....was the internet). And I was getting paid big bucks.
Now, here's the *real* kicker. I was doing the same thing he was. No
plans. No customer accountability. No standard operating procedures.
(Fred, I know you're going to SEI CMM me on this one!) I had a hard
time reconsiling the fact that I was a high-paid-hack as I pointed a
condemning finger at this not-so-high-paid-hack.
Of course, software is a young craft compared to house construction.
We don't really know what we're doing. All software is really about
exploring the unknown. I know all that. We tell it to each other.
And on many days I believe it.
But on some days, I know that I am (we are) no better than Ralph, the
inept builder. We couldn't make two programs similar enough to even
try to create a cookie-cutter housing development.
Michael
--
Michael R. Wolf
All mammals learn by playing!
MichaelRunningWolf@att.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From andrew at sweger.net Fri Dec 27 08:04:35 2002
From: andrew at sweger.net (Andrew Sweger)
Date: Wed Aug 4 00:09:19 2004
Subject: SPUG: Sort an array question
In-Reply-To: <20021226205317.13292.qmail@web20810.mail.yahoo.com>
Message-ID:
On Thu, 26 Dec 2002, Andrew Reid wrote:
> While attempting to gain more meaninful employment, I
> happened upon this question from a prospective
> provider of opportunity. "Sort an array
> alphabetically without using the Perl sort command."
> [snip]
I realize that you were asking for focus on the details of the
implementation. But I wanted to read between the lines a little and
comment on that. When I extend similar requests to potential seekers of
opportunity, rarely have I been interested in the implementation. In fact,
I avoid questions that require recalling algorithm specifics (I figure
they're in books and modules where they belong). I'm more interested in
how an individual approaches a problem.
Of course, I am assuming a person with sufficient problem solving skills
wouldn't be foolish enough to apply for a position involving computer
programming without that tool in their toolbox. I have been caught by this
assumption on one or two occasions and it is glaringly obvious. And
earlier in my career, I have made the mistake of hiring people that knew a
language pretty well but didn't have problem solving skills. That took a
few months to untangle (because they kept cranking out code).
Granted, there are programming jobs in large organizations where there is
enough engineering infrastructure where a programmer can work from
specifications. You will see more and more of this kind of work outsourced
to other markets unless our economy adjusts.
I might be a dinosaur.
--
Andrew B. Sweger -- The great thing about multitasking is that several
things can go wrong at once.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From pdarley at kinesis-cem.com Fri Dec 27 12:03:29 2002
From: pdarley at kinesis-cem.com (Peter Darley)
Date: Wed Aug 4 00:09:19 2004
Subject: A question of Style, was: SPUG: Sort an array question
In-Reply-To: <200212270146.gBR1kRf06165@catmanor.com>
Message-ID:
William,
Since you address style in your message, let me say that I agree with
everything you said, but by my way of thinking, have left something out.
In my opinion one of the biggest things that promotes readability is the
use of long variable names. Since when I program I spend far more time
sitting and thinking about how I want the program to work than I do actually
typing things in, using short variable names ($i, etc.) seems like
optimizing for speed of typing over ease of programming (readability). That
seems a bit backward to me.
When digging through other peoples code to figure out what I'm doing wrong
when calling it, there's nothing more frustrating that running across
something like the following lines (from Apache::DBI):
my($r, $q) = @_;
my(@s) = qw(
Datasource
Username
);
What's $r or $q? What is the @s array for? How can I call this thing
correctly if I don't know what variables to pass it? I can figure out what
they are, but wouldn't it be better to use a longer, more descriptive
variable name? This problem gets significantly worse in the traditionally
poorly documented internal tools that are often maintained by someone who
didn't write them. When trying to debug old code the last thing you want to
see is a line like.
$i=$Namespace::h || $Namspace::n unless $o;
Just my 2 cents.
Thanks,
Peter Darley
-----Original Message-----
From: owner-spug-list@pm.org [mailto:owner-spug-list@pm.org]On Behalf Of
William Julien
Sent: Thursday, December 26, 2002 5:46 PM
To: blueovalfun@yahoo.com; spug-list@pm.org
Subject: Re: SPUG: Sort an array question
Although basic, this is actually a very interesting problem. There is
more than one way to sort an array. Consider, for example a mixed array
of numbers and characters. The standard perl sort puts a "12" before a
"2". Mixed alpha and numeric elements require special handling. What is
"correct", depends on the expectation of the user (programmer).
I wish you luck in finding new opportunities. To help, I offer a few humble
suggestions and sample code. These are issues of style, religion, and art;
not science.
White space is "good". It enhances the readability of the code.
Divide your code into logical segments. The code below starts with a
comment block with provides "who, what, when, where". This is good
in a corporation when the reader needs to "kill the author". :-)
What follows are a module, variable and initialization sections.
Each major functional unit has a comment.
I comment sections for "what is does", not "how I do it". If
particular lines require explaination, I place them on the right
of the line. I never comment control structures ("end for while").
If the person reading the code can't figure that out, they need to
get a job in the service industry.
I use the "my" scoping block to document the purpose and use of
each variable. Again, this is just my style. There is no wrong way.
Finally, think about ways to simplify and reduce the number of
variables.
The line "foreach (@array1) {$arrayCnt++;}" is not necessary since
"$#array1;" provides the same answer (but zero based). General rule of
thumb: When you find your "my" block filling with control variables,
it's time to think if a better way. This is really important when the
program starts getting large.
William Julien
(vi bill)
Sample run:
-->bubble.pl
Original array: e 42 c g h z Man 2 t a 5 i 6 Cat j l 33 12 p b r q x v a
Perl Sort: 12 2 33 42 5 6 Cat Man a a b c e g h i j l p q r t v x z
alt Perl sort: 2 5 6 12 33 42 Cat Man a a b c e g h i j l p q r t v x z
Bubble sorted: 2 5 6 12 33 42 Cat Man a a b c e g h i j l p q r t v x z
Here is the code:
#!/usr/bin/perl -w
#
# Spug sort example
#
# William Julien
# catmanor.com
# 12/26/2002
###
#
# modules
#
use strict;
#
# variable declarations
#
my (@array, # an unsorted array
@sorted, # a sorted array
$i, # loop index
$j, # loop index
$tmp, # a temporary place
);
#
# initialization
#
@array = qw(e 42 c g h z Man 2 t a 5 i 6 Cat j l 33 12 p b r q x v a);
#
# print original, perl sort, and alpha/numeric sort
#
print "Original array:\t@array\n";
@sorted = sort @array;
print "Perl Sort:\t@sorted\n";
@sorted = sort { $tmp = $a . $b;
( $tmp =~ /\D+/ ) ? $a cmp $b : $a <=> $b
} @array ;
print "alt Perl sort:\t@sorted\n";
#
# sort array using a bubble sort
#
for( $i = 0; $i <= $#array; $i++ ) {
for( $j = $i+1; $j <= $#array; $j++ ) {
$tmp = $array[$j] . $array[$i]; # join compare elements
if ( ( $tmp =~ /\D+/ ) ? # use alpha if not numeric
$array[$j] lt $array[$i] : # alpha
$array[$j] < $array[$i] # numeric
) {
$tmp = $array[$j]; # save element
$array[$j] = $array[$i]; # swap
$array[$i] = $tmp; # restore element
}
}
}
#
# print bubble sorted array
#
print "Bubble sorted:\t@array\n";
#
# fin
###
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From spug at ifokr.org Fri Dec 27 12:35:26 2002
From: spug at ifokr.org (Brian Hatch)
Date: Wed Aug 4 00:09:19 2004
Subject: A question of Style, was: SPUG: Sort an array question
In-Reply-To:
References: <200212270146.gBR1kRf06165@catmanor.com>
Message-ID: <20021227183526.GX13238@ifokr.org>
> In my opinion one of the biggest things that promotes readability is the
> use of long variable names. Since when I program I spend far more time
> sitting and thinking about how I want the program to work than I do actually
> typing things in, using short variable names ($i, etc.) seems like
> optimizing for speed of typing over ease of programming (readability). That
> seems a bit backward to me.
This is true in general, but there are many cases where a short
name is a good choice. $i or $j are commonly used to indicate
'index into an array', and that's just what was used in the example
for( $i = 0; $i <= $#array; $i++ ) {
for( $j = $i+1; $j <= $#array; $j++ ) {
$tmp = $array[$j] . $array[$i]; # join compare elements
You could call them 'index1' and 'index2' but that actually makes
the code less readable, as the name takes up too much space
to make it harder to read the 'jist' of things - comparing
values inside @array.
I have no problem with short names when they have a very short
life expectancy. For example I'd have written the above as
for my $i ( 0 .. $#array) {
for my $j ( $i+1 .. $#array) {
$tmp = $array[$j] . $array[$i]; # join compare elements
Why? $i and $j are scoped only inside this block. No short names
should be globally scoped - makes it too hard to remember what
they're used for. (It's also more readable than the traditional
3-part for loop. Yes, the above is actually a foreach loop,
but I am too lazy to type the four extra characters if perl
doesn't care.)
--
Brian Hatch "That was the law, as set down by Valen.
Systems and Three castes: worker, religious, warrior.
Security Engineer They build, you pray, we fight."
http://www.ifokr.org/bri/
Every message PGP signed
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 240 bytes
Desc: not available
Url : http://mail.pm.org/archives/spug-list/attachments/20021227/47944dd3/attachment.bin
From joneil at cobaltgroup.com Fri Dec 27 12:40:56 2002
From: joneil at cobaltgroup.com (O'neil, Jerome)
Date: Wed Aug 4 00:09:19 2004
Subject: A question of Style, was: SPUG: Sort an array question
Message-ID:
> In my opinion one of the biggest things that promotes readability is
> the use of long variable names.
I'd agree so long as s/long/useful/g.
Few things annoy me more than finding
$the_variable_that_controls_the_widget_controlled_by_my_other_thingamabob =
1;
Studly-cap it, and I'll jump off the nearest bridge.
Readability is the #1 sign of a polished and mature coder, but for the most
part, if I'm *using* Other People's Code, rather than *maintaining* it, I'd
much rather have a volume of perldoc than anything else.
As far as the sorting problem, I'd have a totally different answer.
"If you are using Perl and you want to sort, but not with the highly useful
sort function, you have architecture and managerial problems. No amount of
code will help you."
I hate employment "tests."
-Jerome
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.pm.org/archives/spug-list/attachments/20021227/37754e87/attachment.htm
From pdarley at kinesis-cem.com Fri Dec 27 13:31:49 2002
From: pdarley at kinesis-cem.com (Peter Darley)
Date: Wed Aug 4 00:09:19 2004
Subject: A question of Style, was: SPUG: Sort an array question
In-Reply-To: <20021227183526.GX13238@ifokr.org>
Message-ID:
Brian,
I disagree with this. I think that index1 and index2 are preferable to i
and j. For one thing, i and j may be commonly used by 90% of people to
represent indexes to arrays, but why not include something that is going to
be immediately obvious to the other 10% that have some different convention
that they use?
The algorithm could be described as "Step through the array in order and
compare the working value with the values in the array that occur after it,
switching them if the compared value is lower than the working value", which
leads us to the variable names of $Working and $Compare. Why not do
something like:
for my $Working ( 0 .. $#Array) {
for my $Compare ( $Working + 1 .. $#Array) {
$Temp = $Array[$Compare] . $array[$Working]; # join compare elements
With operators where order makes a difference (like the . operator) it has
an even bigger impact on readability, because instead of having "some
element of an array . some other element of an array" we have "element of
the array that we're comparing . element of the array that we're working
with". I think this adds a lot to the readability.
I've changed the variables to initial caps, since it helps them stand out
from all the lower case reserved words. This is entirely individual
preference.
Anyway, as y'all can probably tell, this is a pet peeve of mine. I've put
out my opinion and so I'll drop it now. :)
Thanks,
Peter Darley
-----Original Message-----
From: owner-spug-list@pm.org [mailto:owner-spug-list@pm.org]On Behalf Of
Brian Hatch
Sent: Friday, December 27, 2002 10:35 AM
To: Peter Darley
Cc: William Julien; blueovalfun@yahoo.com; spug-list@pm.org
Subject: Re: A question of Style, was: SPUG: Sort an array question
> In my opinion one of the biggest things that promotes readability is the
> use of long variable names. Since when I program I spend far more time
> sitting and thinking about how I want the program to work than I do
actually
> typing things in, using short variable names ($i, etc.) seems like
> optimizing for speed of typing over ease of programming (readability).
That
> seems a bit backward to me.
This is true in general, but there are many cases where a short
name is a good choice. $i or $j are commonly used to indicate
'index into an array', and that's just what was used in the example
for( $i = 0; $i <= $#array; $i++ ) {
for( $j = $i+1; $j <= $#array; $j++ ) {
$tmp = $array[$j] . $array[$i]; # join compare elements
You could call them 'index1' and 'index2' but that actually makes
the code less readable, as the name takes up too much space
to make it harder to read the 'jist' of things - comparing
values inside @array.
I have no problem with short names when they have a very short
life expectancy. For example I'd have written the above as
for my $i ( 0 .. $#array) {
for my $j ( $i+1 .. $#array) {
$tmp = $array[$j] . $array[$i]; # join compare elements
Why? $i and $j are scoped only inside this block. No short names
should be globally scoped - makes it too hard to remember what
they're used for. (It's also more readable than the traditional
3-part for loop. Yes, the above is actually a foreach loop,
but I am too lazy to type the four extra characters if perl
doesn't care.)
--
Brian Hatch "That was the law, as set down by Valen.
Systems and Three castes: worker, religious, warrior.
Security Engineer They build, you pray, we fight."
http://www.ifokr.org/bri/
Every message PGP signed
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From tnight at pobox.com Fri Dec 27 13:46:40 2002
From: tnight at pobox.com (Terry Nightingale)
Date: Wed Aug 4 00:09:19 2004
Subject: A question of Style, was: SPUG: Sort an array question
In-Reply-To:
References:
Message-ID: <3E0CAE20.5000308@pobox.com>
I'm usually not very vocal on SPUG, but since the topic has turned to
coding style, I'll chime in with my $0.02:
Seeing as how Larry Wall is both a brilliant engineer and a linguist,
the "There's More Than One Way To Do It" aspect of Perl is, in my
opinion, no accident. Because of TMTOWTDI, we can act like writers or
speakers, and choose the most appropriate way to do it for our intended
audience.
When writing a short one-off system administration script, for example,
feel free to use one-character variable names and obscure idioms in the
name of getting something done as quickly as possible. Just be sure you
recognize when code is truly "one-off", and not the foundation of a
larger system.
Much more often, your audience is "the maintenance programmer who
inherits this code." When writing to this audience, optimize for
readability. Use descriptive (but not verbose) variable names, and
comment the intent (not the mechanics) of your code. Comments are most
valuable when they capture the relevant information from the "sitting
and thinking" process that Peter describes. Comments should be clear,
concise, and to the point.
When writing code intended to be maintainable, try to keep these
questions in the back of your mind:
What would a maintainer understand most quickly and most easily?
Another way to say it: How can I save time and frustration on the part
of the maintainer? For example, you might choose a simpler, more
obvious way of doing something over the elegant and perhaps more obscure
method that's "cool" or demonstrates your programming prowess.
Where in my code would a maintainer not understand why I wrote it this
way? Comment these sections, telling why the chosen approach was
chosen. Was it done for better performance? Was there a data security
concern? Did you copy the code from the Foo::Bar module on CPAN because
it just plain worked and saved you the time of reimplementing the same
algorithm? Knowing such things really helps as a maintenance programmer.
Well, I think that's at least two cents worth. Happy Holidays, everyone.
Peter Darley wrote:
> William,
> Since you address style in your message, let me say that I agree with
> everything you said, but by my way of thinking, have left something out.
> In my opinion one of the biggest things that promotes readability is the
> use of long variable names. Since when I program I spend far more time
> sitting and thinking about how I want the program to work than I do actually
> typing things in, using short variable names ($i, etc.) seems like
> optimizing for speed of typing over ease of programming (readability). That
> seems a bit backward to me.
> When digging through other peoples code to figure out what I'm doing wrong
> when calling it, there's nothing more frustrating that running across
> something like the following lines (from Apache::DBI):
>
> my($r, $q) = @_;
> my(@s) = qw(
Datasource
Username
);
>
> What's $r or $q? What is the @s array for? How can I call this thing
> correctly if I don't know what variables to pass it? I can figure out what
> they are, but wouldn't it be better to use a longer, more descriptive
> variable name? This problem gets significantly worse in the traditionally
> poorly documented internal tools that are often maintained by someone who
> didn't write them. When trying to debug old code the last thing you want to
> see is a line like.
>
> $i=$Namespace::h || $Namspace::n unless $o;
>
> Just my 2 cents.
> Thanks,
> Peter Darley
>
> -----Original Message-----
> From: owner-spug-list@pm.org [mailto:owner-spug-list@pm.org]On Behalf Of
> William Julien
> Sent: Thursday, December 26, 2002 5:46 PM
> To: blueovalfun@yahoo.com; spug-list@pm.org
> Subject: Re: SPUG: Sort an array question
>
> Although basic, this is actually a very interesting problem. There is
> more than one way to sort an array. Consider, for example a mixed array
> of numbers and characters. The standard perl sort puts a "12" before a
> "2". Mixed alpha and numeric elements require special handling. What is
> "correct", depends on the expectation of the user (programmer).
>
> I wish you luck in finding new opportunities. To help, I offer a few humble
> suggestions and sample code. These are issues of style, religion, and art;
> not science.
>
> White space is "good". It enhances the readability of the code.
>
> Divide your code into logical segments. The code below starts with a
> comment block with provides "who, what, when, where". This is good
> in a corporation when the reader needs to "kill the author". :-)
> What follows are a module, variable and initialization sections.
> Each major functional unit has a comment.
>
> I comment sections for "what is does", not "how I do it". If
> particular lines require explaination, I place them on the right
> of the line. I never comment control structures ("end for while").
> If the person reading the code can't figure that out, they need to
> get a job in the service industry.
>
> I use the "my" scoping block to document the purpose and use of
> each variable. Again, this is just my style. There is no wrong way.
>
> Finally, think about ways to simplify and reduce the number of
> variables.
> The line "foreach (@array1) {$arrayCnt++;}" is not necessary since
> "$#array1;" provides the same answer (but zero based). General rule of
> thumb: When you find your "my" block filling with control variables,
> it's time to think if a better way. This is really important when the
> program starts getting large.
>
> William Julien
> (vi bill)
>
> Sample run:
>
> -->bubble.pl
> Original array: e 42 c g h z Man 2 t a 5 i 6 Cat j l 33 12 p b r q x v a
> Perl Sort: 12 2 33 42 5 6 Cat Man a a b c e g h i j l p q r t v x z
> alt Perl sort: 2 5 6 12 33 42 Cat Man a a b c e g h i j l p q r t v x z
> Bubble sorted: 2 5 6 12 33 42 Cat Man a a b c e g h i j l p q r t v x z
>
> Here is the code:
>
> #!/usr/bin/perl -w
> #
> # Spug sort example
> #
> # William Julien
> # catmanor.com
> # 12/26/2002
> ###
>
> #
> # modules
> #
> use strict;
>
> #
> # variable declarations
> #
> my (@array, # an unsorted array
> @sorted, # a sorted array
> $i, # loop index
> $j, # loop index
> $tmp, # a temporary place
> );
>
> #
> # initialization
> #
> @array = qw(e 42 c g h z Man 2 t a 5 i 6 Cat j l 33 12 p b r q x v a);
>
> #
> # print original, perl sort, and alpha/numeric sort
> #
> print "Original array:\t@array\n";
> @sorted = sort @array;
> print "Perl Sort:\t@sorted\n";
> @sorted = sort { $tmp = $a . $b;
> ( $tmp =~ /\D+/ ) ? $a cmp $b : $a <=> $b
> } @array ;
> print "alt Perl sort:\t@sorted\n";
>
> #
> # sort array using a bubble sort
> #
> for( $i = 0; $i <= $#array; $i++ ) {
> for( $j = $i+1; $j <= $#array; $j++ ) {
> $tmp = $array[$j] . $array[$i]; # join compare elements
> if ( ( $tmp =~ /\D+/ ) ? # use alpha if not numeric
> $array[$j] lt $array[$i] : # alpha
> $array[$j] < $array[$i] # numeric
> ) {
> $tmp = $array[$j]; # save element
> $array[$j] = $array[$i]; # swap
> $array[$i] = $tmp; # restore element
> }
> }
> }
>
> #
> # print bubble sorted array
> #
> print "Bubble sorted:\t@array\n";
>
> #
> # fin
> ###
>
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
> Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
> Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
> For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
> Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
>
>
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
> Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
> Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
> For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
> Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
>
>
--
Terry Nightingale
Web Developer, Philosopher, Geek
"In theory, there is no difference between theory and practice. But, in
practice, there is." -- Jan L.A. van de Snepscheut
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From spug at ifokr.org Fri Dec 27 14:14:04 2002
From: spug at ifokr.org (Brian Hatch)
Date: Wed Aug 4 00:09:19 2004
Subject: A question of Style, was: SPUG: Sort an array question
In-Reply-To:
References: <20021227183526.GX13238@ifokr.org>
Message-ID: <20021227201404.GY13238@ifokr.org>
> for my $Working ( 0 .. $#Array) {
> for my $Compare ( $Working + 1 .. $#Array) {
> $Temp = $Array[$Compare] . $array[$Working];
Wait - one of the arrays is working, and the other is broken?
Although I'd argue $i and $j, I'd certainly pick $index1
and $index2 over something like working/compare where I'm
more confused by having variable names that don't indicate
what they are (indexes into an array) and that, in this
case, have alternative names that can remove any mnemonic
benifits.
> I've changed the variables to initial caps, since it helps them stand out
> from all the lower case reserved words. This is entirely individual
> preference.
Everyone has an angle on capitilization vs not. Consistancy in
this regard is 90% of the game.
> Anyway, as y'all can probably tell, this is a pet peeve of mine. I've put
> out my opinion and so I'll drop it now. :)
Ok, I'll shut up too then.
--
Brian Hatch If a turtle doesn't
Systems and have a shell, is it
Security Engineer homeless or naked?
http://www.ifokr.org/bri/
Every message PGP signed
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 240 bytes
Desc: not available
Url : http://mail.pm.org/archives/spug-list/attachments/20021227/011d5d6f/attachment.bin
From spug at ifokr.org Fri Dec 27 14:26:12 2002
From: spug at ifokr.org (Brian Hatch)
Date: Wed Aug 4 00:09:19 2004
Subject: A question of Style, was: SPUG: Sort an array question
In-Reply-To: <3E0CAE20.5000308@pobox.com>
References: <3E0CAE20.5000308@pobox.com>
Message-ID: <20021227202612.GC13238@ifokr.org>
> Much more often, your audience is "the maintenance programmer who
> inherits this code." When writing to this audience, optimize for
> readability. Use descriptive (but not verbose) variable names, and
> comment the intent (not the mechanics) of your code. Comments are most
> valuable when they capture the relevant information from the "sitting
> and thinking" process that Peter describes. Comments should be clear,
> concise, and to the point.
If you write code that will be inherited by other netizens (say some
CPAN code) then a clear ability for others to understand is damned
important.
If you are writing code that is only used by your employer, then
increased obfuscation can lead to a good situation called "job security".
;-)
--
Brian Hatch They assigned blank.
Systems and So I read about blank.
Security Engineer So now my mind is filled
http://www.ifokr.org/bri/ with blank.
--bree
Every message PGP signed
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 240 bytes
Desc: not available
Url : http://mail.pm.org/archives/spug-list/attachments/20021227/d8121e2a/attachment.bin
From bill at celestial.com Sat Dec 28 11:46:34 2002
From: bill at celestial.com (Bill Campbell)
Date: Wed Aug 4 00:09:20 2004
Subject: A question of Style, was: SPUG: Sort an array question
In-Reply-To: <3E0CAE20.5000308@pobox.com>; from tnight@pobox.com on Fri, Dec 27, 2002 at 11:46:40AM -0800
References: <3E0CAE20.5000308@pobox.com>
Message-ID: <20021228094633.A20815@barryg.mi.celestial.com>
On Fri, Dec 27, 2002 at 11:46:40AM -0800, Terry Nightingale wrote:
>I'm usually not very vocal on SPUG, but since the topic has turned to
>coding style, I'll chime in with my $0.02:
...
>When writing a short one-off system administration script, for example,
>feel free to use one-character variable names and obscure idioms in the
>name of getting something done as quickly as possible. Just be sure you
>recognize when code is truly "one-off", and not the foundation of a
>larger system.
I have a problem with this for two reasons. First it's amazing how many
times one-off programs end up used much more frequently than expected.
Second, I think it's important to build good programming habits (and I type
80+ words per minute :-).
As for the argument on index variables in tight loops, I tend to agree with
the folks who recommend, $i, $j, $k, etc. since that's the common
nomenclature used in mathematics.
On a historical note, I think this is why the original IBM FORTRAN
compilers had all integer variables starting with the letters [I-N] with
everything else being floating point (except for Bendix Radio's Mishewaka
FORTRAN where all variables were floating point, ``DO'' loops allowed
fractional increments, and ``DO'' loop tests were at the beginning not the
end as on IBM FORTRAN).
>Much more often, your audience is "the maintenance programmer who
>inherits this code." When writing to this audience, optimize for
>readability. Use descriptive (but not verbose) variable names, and
>comment the intent (not the mechanics) of your code. Comments are most
>valuable when they capture the relevant information from the "sitting
>and thinking" process that Peter describes. Comments should be clear,
>concise, and to the point.
The ``Maintenance Programmer'' may well be me, and I need to be able to
figure out what I was doing when I wrote the code originally so meaningful
variable names, and internal comments make this job much easier.
Bill
--
INTERNET: bill@Celestial.COM Bill Campbell; Celestial Systems, Inc.
UUCP: camco!bill PO Box 820; 6641 E. Mercer Way
FAX: (206) 232-9186 Mercer Island, WA 98040-0820; (206) 236-1676
URL: http://www.celestial.com/
``Microsoft IIS has more holes than a wheel of Swiss Cheese after a shotgun
blast'' -- John Dvorak
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From glyph at mac.com Sat Dec 28 14:06:05 2002
From: glyph at mac.com (Geoffrey & Kristin Grosenbach)
Date: Wed Aug 4 00:09:20 2004
Subject: A question of Style, was: SPUG: Sort an array question
In-Reply-To: <20021227202612.GC13238@ifokr.org>
Message-ID:
On Friday, December 27, 2002, at 12:26 PM, Brian Hatch wrote:
>
> If you are writing code that is only used by your employer, then
> increased obfuscation can lead to a good situation called "job
> security".
*cold chill creeps up the back of my neck*
In the Tao of Programming it is written:
"Though a program be but three lines long, someday it will have to be
maintained."
I've spent the last month rewriting a whole Perl-based system because it
was so obfuscated. (Okay, it was also failing to fulfill the purposes
for which it was originally written, but obfuscation was one of the
reasons for the rewrite). The people before me had either left with
short notice, or were fired. I'm not hoping to lose my job, but I do
hope to leave a better system for those who follow by documenting and
using readable code (which often uses short variable names, but with
comments).
And what about POD? I'm surprised at how many Perl programmers I meet
who don't know anything about POD (maybe I should volunteer to give a
lightning talk on my favorite ways to use POD). It may not be as
automatic as JavaDoc or some other in-code documentation systems, but
it's built into the Perl interpreter and there are a lot of translators
that can work with it.
A friend of mine says:
"A good programmer can recognize well-written code from 50 feet away."
(He must have really good eyesight).
Geoff
http://www.GeoffreyGrosenbach.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From spug at ifokr.org Sat Dec 28 15:38:22 2002
From: spug at ifokr.org (Brian Hatch)
Date: Wed Aug 4 00:09:20 2004
Subject: A question of Style, was: SPUG: Sort an array question
In-Reply-To:
References: <20021227202612.GC13238@ifokr.org>
Message-ID: <20021228213822.GA10084@ifokr.org>
> On Friday, December 27, 2002, at 12:26 PM, Brian Hatch wrote:
> >
> >If you are writing code that is only used by your employer, then
> >increased obfuscation can lead to a good situation called "job
> >security".
>
> *cold chill creeps up the back of my neck*
That was written as a joke, of course...
> A friend of mine says:
>
> "A good programmer can recognize well-written code from 50 feet away."
Actually, I think even non programmers can tell the difference. A
good combination of well chosen variable names, clean indentation,
and comments should be readable by anyone in any higher level
language. Certainly, good vs bad can be distinguished by anyone,
even if it's not entirely obvious what it does. (Regexps for example
are hard for those who don't know them, but using [:alpha:] is
easier for anyone to read than [a-zA-Z] for example.)
--
Brian Hatch "Gates' Law: Every 18
Systems and months, the speed of
Security Engineer software halves. "
http://www.ifokr.org/bri/
Every message PGP signed
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 240 bytes
Desc: not available
Url : http://mail.pm.org/archives/spug-list/attachments/20021228/32b013af/attachment.bin
From ced at carios2.ca.boeing.com Sat Dec 28 16:38:46 2002
From: ced at carios2.ca.boeing.com (ced@carios2.ca.boeing.com)
Date: Wed Aug 4 00:09:20 2004
Subject: A question of Style, was: SPUG: Sort an array question
Message-ID: <200212282238.OAA28798@carios2.ca.boeing.com>
> (Regexps for example are hard for those who don't know them,
> but using [:alpha:] is easier for anyone to read than [a-zA-Z]
> for example.)
Good point. IMO, the underutilized /x modifier leaps out too, eg,
$regex = qr{ ^\[(..)/(...)/(....): # capture initial date: [29/Aug/2002
.{13}(\d+) # skip 13 char's to conn='number'
\s # single space must follow
(?:op=(\d+))? # capture op='number' if there
(.*) # capture the rest of the line
}x;
instead of:
$regex = qr{^\[(..)/(...)/(....).{13}(\d+)\s(?:op=(\d+))?(.*)};
rgds,
--
Charles DeRykus
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list@pm.org PROBLEMS: owner-spug-list@pm.org
Subscriptions; Email to majordomo@pm.org: ACTION LIST EMAIL
Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
For daily traffic, use spug-list for LIST ; for weekly, spug-list-digest
Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org
From MichaelRunningWolf at att.net Fri Dec 27 15:02:32 2002
From: MichaelRunningWolf at att.net (Michael R. Wolf)
Date: Wed Aug 4 00:09:20 2004
Subject: A question of Style, was: SPUG: Sort an array question
In-Reply-To:
References:
Message-ID:
"Peter Darley" writes:
> William,
>
> Since you address style in your message, let me say that I
> agree with everything you said, but by my way of thinking, have left
> something out. In my opinion one of the biggest things that
> promotes readability is the use of long variable names.
I heartily agree! It's probably my most important style point.
Here's how I reason it. I'm going to type the variable *once*, but
probably read it 20 times while debugging, then another few times in a
few months as I maintain it. Six months from now I'll have my brain
completely tapped out trying to remember (or reverse engineer) the
algorithm. I can use all the hints I can get, and since I wrote the
code, I give myself all the hints I can.
> Since when I program I spend far more time sitting and thinking
> about
You said "thinking about". I'm in agreement, but use the term
"reading it", since that's how I think. I like having crutches that
allow me to have information in the world rather than in my head.
Programming is mostly about thinking. I give the maintenance
programmer (usually me) all the thinking aids I can.
[...]
> my($r, $q) = @_;
> my(@s) = qw(