I agree and disagree.

Yes, code should be written as well as possible.  However the reality of
deadlines often will dictate how much time we can sped refactoring things.
If I come across an evil design flaw that can be fixed QUICK with a (well
commented) hack or MIGHT get fixed with a change to the engine design that
will take me 2+ days to implement (and maybe more if it breaks other
things)...well...when does this code get handed over to the client?  In 6
months? Okay, I'll refactor it now.  Tomorrow? Then it's the quick/hack
option, no doubt.

How much time, and how often we can refactor code often depends on the
situation.  Myself being a contractor, I keep a lot of my own canned
libraries around and refactor them when I can, as I know they'll be reused
over and over.  But if I'm on a deadline, I will go with "make it WORK now,
and make it COOL when time permits later".

When these situations pop up, I make sure to comment it with either "HACK!"
or "NRETODO" so I can do a quick search later and find the places where we
had to make shortcuts (and hopefully fix them in version 2.0).

2 cents.
-nolan



On 10/27/07, Sean Corfield <[EMAIL PROTECTED]> wrote:
>
>
> On 10/27/07, Sam Larbi <[EMAIL PROTECTED]> wrote:
> > On 10/27/07, Barry Beattie <[EMAIL PROTECTED]> wrote:
> > > I used to be but I'm taking a more pragmatic approach now-a-days.
> > > Sending code into the big bad world, never to see it again, and having
> > > my reputation rest on it's success or otherwise. Get it right, get it
> > > out.
> > I'm not sure what you mean by that.  Could you explain? (I know its off
> > topic from your original post, which is why I changed the subject, but
> I'm
> > interested nevertheless).
>
> Without wishing to speak for Barry, I suspect he means that continuous
> improvement is a luxury you can afford when you will be working on the
> code throughout its lifetime. If you have just one shot to write code
> and release it to a client - and you won't get a chance to improve it
> after that - it had better be good, out of the gate!
>
> I agree. Code I write for myself and my startup (and to some extent
> for open source projects where I'll continue to be involved), I write
> fast and then refactor. Code I write for clients gets refactored
> during my time on the project but I aim to have it be as good as
> possible before I have to give it up.
>
> Make sense?
> --
> Sean A Corfield -- (904) 302-SEAN
> An Architect's View -- http://corfield.org/
>
> "If you're not annoying somebody, you're not really alive."
> -- Margaret Atwood
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"CFCDev" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/cfcdev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to