Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"
 
PerlMonks  

Re: Re: Good Programming is Better

by MungeMeister (Scribe)
on Jan 12, 2002 at 03:26 UTC ( [id://138179]=note: print w/replies, xml ) Need Help??


in reply to Re: Good Programming is Better
in thread Good Programming is Better

I've had several of these happy events. With my current project, I chose at the beginning to use Object-Oriented Perl, mostly just to learn it, but it also seemed to fit. I've had some training in OO and in Design Patterns, but have never implemented anything with it.

What a nice surprise when changes that would have taken days now take minutes!

However, I know that my code could use some improvement. You can always make it more flexible, faster, give it better error handling, etc. I believe that admitting that fact alone makes you a better programmer!

There is definite satisfaction in finding you've written "good code"...

On a tangent... The company I work for has a large development project running using Extreme Programming (XP). It stresses good programming, but from a slightly different angle. Here's just a part:

Break your goal into small piecs

Work in pairs

Design your test cases (be thorough) first

Write your code

Test your code

In many cases, later you will find that you could write that method better, faster, etc. With XP, you can now rewrite the method, and you already have the test cases to verify that you didn't break it.

Moral: You can always write better code. If you know from the beginning your going to rewrite it, then plan for it.

Also, programming in pairs reduces bugs, and tends to lead to better design because you have more "brain power" (we hope anyway!).

For an article on XP, and a link to a web site all about it, click here. Brian

Log In?
Username:
Password:

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

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

    No recent polls found