Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

Re: Stupid Emotional Programmer Attachment, anyone?

by mcogan1966 (Monk)
on Oct 31, 2003 at 19:53 UTC ( #303688=note: print w/replies, xml ) Need Help??

in reply to Stupid Emotional Programmer Attachment, anyone?

In a word, yes.
I've written a few good pieces of code of which I'm very proud. And it's even more sad when you have to give it all away beacuse it's for $client. It's almost like watching a child leave the house (though I wouldn't really know this as I don't have kids). It's hard to justify making a 'copy' of some code that is brilliant, pretty, or otherwise cool in your book, just so that you can keep it with you. Even moreso when $client doesn't like the idea of any copies of said code existing outside of their ownership.
  • Comment on Re: Stupid Emotional Programmer Attachment, anyone?

Replies are listed 'Best First'.
Re: Re: Stupid Emotional Programmer Attachment, anyone?
by QM (Parson) on Oct 31, 2003 at 20:12 UTC
    Copies for yourself are useful for reminding you what you learned, for improving your methods, for historical preservation, and for covering your backside in case of future litigation.

    Quantum Mechanics: The dreams stuff is made of

      But there is sometimes and issue between that and terms of a contract. Espeically when working for $gov_agency. They tend to get a little peeved when code you write for them is 'copied' anywhere else. Even if it's in Java, Perl, or any other 'open source' style language. And even if it's only some core code. That has always been a bit of an issue for me. So I try to keep something aside somewhere I can reference while I'm still working. Some kind of "Book O' Coding Goodness" that I can pull off a shelf while I'm employed there.
        Yes, I agree completely that one can't always keep a copy of one's own code because of a contract.

        Some contracts allow it, some forbid it, some are ambiguous, and some don't mention it.

        I would be interested in keeping copies of 2 kinds of code: one on an operational level, such as whether split, m//, or substr is better given a certain context; and one on a conceptual level, such as how to send high bandwidth data over balanced multiple connections without drawing attention.

        For the former, writing notes to yourself, about something you could easily duplicate given the time and inclination, having almost no relevance to the task you were hired for, seems reasonable on the face of it (though it may or may not pass muster legally). For the latter, you can bet that someone will be curious about your solution, especially if they've paid for a competitive advantage that no longer is.

        But if you can't keep copies of your work to prove what you did (or didn't) do, then it's your word against theirs, and the outcome may depend on who has deeper pockets. Though if your copies "escape", you can end up liable for that.

        In the end it may be better to have a sharp memory and a sharp mind. Anything you've created once, should be easier the second time, right? [This is where certain people would bring up "Eve after Adam" :]

        Quantum Mechanics: The dreams stuff is made of

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (6)
As of 2021-06-15 08:11 GMT
Find Nodes?
    Voting Booth?
    What does the "s" stand for in "perls"? (Whence perls)

    Results (68 votes). Check out past polls.