Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re: So you know Perl; but do you know programming?

by Aristotle (Chancellor)
on Jul 04, 2002 at 03:39 UTC ( [id://179387]=note: print w/replies, xml ) Need Help??


in reply to So you know Perl; but do you know programming?

Some further points on top of what Zaxo said:

A minor one: habitually limit splits unless you explicitly want "any number" of results. In this case, you're not interested in anything past the 3rd element, so limit it to 4 columns.

And you're doing too much work. If you do not explicitly want the smallest free UID assigned to the new account, you can roll the entire thing into the first loop that reads the passwd:

my $g_user_id = 200; while (<PWD>) { my ($accountname, $accountid) = (split /:/, $_, 4)[0,2]; die "This account name already exists!\n" if $accountname eq $usern +ame; $g_user_id = $accountid + 1 if $accountid > $g_user_id; } die "Ack, too many UIDs assigned.\n" if $g_user_id > 65535;

Note I removed the chomp since the last record on the line is of no interest anyway.

But, yes, your premise is absolutely correct. I believe you will enjoy the following read: Teach Yourself Programming in Ten Years. It pretty much sums up the entire topic.

Makeshifts last the longest.

Replies are listed 'Best First'.
Re: Re: So you know Perl; but do you know programming?
by Marza (Vicar) on Jul 04, 2002 at 05:33 UTC

    Hmmmmm. I never thought about waste before and you are right I was only interested in two particular fields. Cool tighter code!

    Thanks for the link! That was an interesting article! Hmm can safely say I don't have any "Days" books! ;)

    Thank you! ++ When I get some more votes!

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://179387]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others contemplating the Monastery: (3)
As of 2024-04-19 20:11 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found