Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. To open, or not to open (the source): that is the question

To open, or not to open (the source): that is the question

Scheduled Pinned Locked Moved The Lounge
questioncsharpsalescareer
27 Posts 21 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Snowman58

    I agree with Robert Surtees. If the source code is mission critical to the customer, then set up an escrow holder (I have used an attorney's office, jointly selected and paid for up front for a period of 10 years. I think it cost us $500 each. The customer could only access it if we went out of business.) Otherwise, never release the source code unless it is a code addin tool.

    Melting Away www.innovative--concepts.com

    L Offline
    L Offline
    Luc Pattyn
    wrote on last edited by
    #9

    Member 4723455 wrote:

    The customer could only access it if we went out of business.

    I like the escrow idea, however how does that suit the customer when in the future you might still be in business but not be able or willing to help them out for whatever reason? :)

    Luc Pattyn [Forum Guidelines] [My Articles]


    - before you ask a question here, search CodeProject, then Google - the quality and detail of your question reflects on the effectiveness of the help you are likely to get - use the code block button (PRE tags) to preserve formatting when showing multi-line code snippets


    S 1 Reply Last reply
    0
    • L Luc Pattyn

      Member 4723455 wrote:

      The customer could only access it if we went out of business.

      I like the escrow idea, however how does that suit the customer when in the future you might still be in business but not be able or willing to help them out for whatever reason? :)

      Luc Pattyn [Forum Guidelines] [My Articles]


      - before you ask a question here, search CodeProject, then Google - the quality and detail of your question reflects on the effectiveness of the help you are likely to get - use the code block button (PRE tags) to preserve formatting when showing multi-line code snippets


      S Offline
      S Offline
      Snowman58
      wrote on last edited by
      #10

      Why would you hold back if you were not interested in the code anymore? If I recall correctly our contract had words to the effect that if we were unable or unwilling to maintain the code (under contract) the customer could take the code. We could set the fee for the maintenance so the customer could not force release by simply refusing to pay a reasonable fee. Any disagreement over what was reasonable went to an arbitrator. This was a large contract for a foreign military customer, but it should work with any customer that considers the source code to be mission critical.

      Melting Away www.innovative--concepts.com

      L L 2 Replies Last reply
      0
      • S Snowman58

        Why would you hold back if you were not interested in the code anymore? If I recall correctly our contract had words to the effect that if we were unable or unwilling to maintain the code (under contract) the customer could take the code. We could set the fee for the maintenance so the customer could not force release by simply refusing to pay a reasonable fee. Any disagreement over what was reasonable went to an arbitrator. This was a large contract for a foreign military customer, but it should work with any customer that considers the source code to be mission critical.

        Melting Away www.innovative--concepts.com

        L Offline
        L Offline
        Lost User
        wrote on last edited by
        #11

        Member 4723455 wrote:

        Why would you hold back if you were not interested in the code anymore?

        From the customer's point of view, that's not the question. The question is "what if they hold back the code?". A smart customer won't rely on someones goodwill down the road. Cheers, Drew.

        S 1 Reply Last reply
        0
        • L Lost User

          Member 4723455 wrote:

          Why would you hold back if you were not interested in the code anymore?

          From the customer's point of view, that's not the question. The question is "what if they hold back the code?". A smart customer won't rely on someones goodwill down the road. Cheers, Drew.

          S Offline
          S Offline
          Snowman58
          wrote on last edited by
          #12

          Drew Stainton wrote:

          The question is "what if they hold back the code?". A smart customer won't rely on someones goodwill down the road

          That's why there was an arbitration clause. If we refused to maintain the code and refused to release it to them, they could take it to arbitration. So he was covered. An issue that we never resolved was the question of an export license for the code, but that was out of our hands so we just required that they got a license if it came to that point.

          Melting Away www.innovative--concepts.com

          1 Reply Last reply
          0
          • S Snowman58

            Why would you hold back if you were not interested in the code anymore? If I recall correctly our contract had words to the effect that if we were unable or unwilling to maintain the code (under contract) the customer could take the code. We could set the fee for the maintenance so the customer could not force release by simply refusing to pay a reasonable fee. Any disagreement over what was reasonable went to an arbitrator. This was a large contract for a foreign military customer, but it should work with any customer that considers the source code to be mission critical.

            Melting Away www.innovative--concepts.com

            L Offline
            L Offline
            Luc Pattyn
            wrote on last edited by
            #13

            OK, that makes perfect sense, since there is an elaborate contract behind it. I had been looking for a very simple contract+escrow before, to be used for very small projects. I found it difficult to make it really meaningful without a lot of legalese. :)

            Luc Pattyn [Forum Guidelines] [My Articles]


            - before you ask a question here, search CodeProject, then Google - the quality and detail of your question reflects on the effectiveness of the help you are likely to get - use the code block button (PRE tags) to preserve formatting when showing multi-line code snippets


            S 1 Reply Last reply
            0
            • C Clickok

              I'm developing a large personalized project in C# that will give a good return in cash. I will need to stop ALL my projects and get this job. My only concern now is about the source code. I'm thinking if my customer ask the source, what I will answer? 1) Not! It's mine, take out your dirty hands of mine source code! 2) Yes, but to be prepared to pay 300% of the normal price... 3) Sure! Take it! You will not understand one half of line of code. 4) Sure, but sign this NDA 5) [insert your custom opinion here] Thanks!


              For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.(John 3:16) :badger:

              P Offline
              P Offline
              PIEBALDconsult
              wrote on last edited by
              #14

              1, but feel free to post the non-application-specific parts here. Reviewing the bottom-most parts should be enough to get a feel for the quality of the upper parts.

              1 Reply Last reply
              0
              • L Luc Pattyn

                OK, that makes perfect sense, since there is an elaborate contract behind it. I had been looking for a very simple contract+escrow before, to be used for very small projects. I found it difficult to make it really meaningful without a lot of legalese. :)

                Luc Pattyn [Forum Guidelines] [My Articles]


                - before you ask a question here, search CodeProject, then Google - the quality and detail of your question reflects on the effectiveness of the help you are likely to get - use the code block button (PRE tags) to preserve formatting when showing multi-line code snippets


                S Offline
                S Offline
                Snowman58
                wrote on last edited by
                #15

                The contract language is pretty straight forward and probably simpler than my explanation. The harder part is finding an escrow holder acceptable to both sides. This was complicated due to dealing with a foreign customer. We looked at using a bank, various third parties, holding it in the US Embassy etc. The lawyers were the best solution for us, but not really a cheap solution. Hopefully you can think of a more workable escrow holder. In the end, both of us lost interest in the software after a couple years because it was embedded and worked. They never changed the product, so there was never a reason to mess with it.

                Melting Away www.innovative--concepts.com

                L 1 Reply Last reply
                0
                • C Clickok

                  I'm developing a large personalized project in C# that will give a good return in cash. I will need to stop ALL my projects and get this job. My only concern now is about the source code. I'm thinking if my customer ask the source, what I will answer? 1) Not! It's mine, take out your dirty hands of mine source code! 2) Yes, but to be prepared to pay 300% of the normal price... 3) Sure! Take it! You will not understand one half of line of code. 4) Sure, but sign this NDA 5) [insert your custom opinion here] Thanks!


                  For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.(John 3:16) :badger:

                  J Offline
                  J Offline
                  Joan M
                  wrote on last edited by
                  #16

                  - Increase the cost if they want it. - If they only want the source just in case you leaves the market... and they want to be protected against it, place the code inside a bank or similar (I would go for a more legal place), and then let them pay the maintenance of having the code there. In the contract you should write that they will be able to get the code if you are not anymore an active enterprise or if you don't want to help them (this must be legally demonstrated, of course...). Hope this helps.

                  [www.tamelectromecanica.com][www.tam.cat]

                  A 1 Reply Last reply
                  0
                  • R Robert Surtees
                    1. source escrow. Not recommending, just putting out another option. It depends on the customer and the type of project, neither of which you have provided any information about. From a customer's point of view, buying a mission critical piece of software from a single source that could get hit by a bus at any moment would be a non starter for example.
                    A Offline
                    A Offline
                    Anna Jayne Metcalfe
                    wrote on last edited by
                    #17

                    Definitely.

                    Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"

                    1 Reply Last reply
                    0
                    • J Joan M

                      - Increase the cost if they want it. - If they only want the source just in case you leaves the market... and they want to be protected against it, place the code inside a bank or similar (I would go for a more legal place), and then let them pay the maintenance of having the code there. In the contract you should write that they will be able to get the code if you are not anymore an active enterprise or if you don't want to help them (this must be legally demonstrated, of course...). Hope this helps.

                      [www.tamelectromecanica.com][www.tam.cat]

                      A Offline
                      A Offline
                      apocsantoz
                      wrote on last edited by
                      #18

                      Honestly I dont agree at all to give the code to the customer. If the customer whants the source let he pay a bit more, but be shure that the source is somehow protected, use a smart way of having your code hard to understand by other coder. When i have to release the source for a cliente i usualy remove every coment of the source, and make it as hard as possible to understand even if the compiled version is not the same as the source one, cause the compiled version is maded with the comments and well structured but is for my use and my use only. Customers have rights but so do coders...and all the programmers I know, most of them dont give the source at all.

                      J B 2 Replies Last reply
                      0
                      • A apocsantoz

                        Honestly I dont agree at all to give the code to the customer. If the customer whants the source let he pay a bit more, but be shure that the source is somehow protected, use a smart way of having your code hard to understand by other coder. When i have to release the source for a cliente i usualy remove every coment of the source, and make it as hard as possible to understand even if the compiled version is not the same as the source one, cause the compiled version is maded with the comments and well structured but is for my use and my use only. Customers have rights but so do coders...and all the programmers I know, most of them dont give the source at all.

                        J Offline
                        J Offline
                        Joan M
                        wrote on last edited by
                        #19

                        Yes, completely agreed... In my case, sometimes I make special things that are worldwide patented (not software patents) but of course the involved software is part of the know-how of my company. Some times, but the customer tells us: "what if your company disappears?" Then I understand that somebody that has paid a great amount of money wants some kind of protection... our software is installed into electronic devices that can be harmed/destroyed... of course in a normal software that can be reinstalled this is not an issue, but in my case I must go to the company to make the installation and each installation means to upload again the source code. In that case is when we use the bank solution... We keep everything and the customer pays a small monthly fee to feel safe at an eventual problem in our company. I don't like to give the source... I've never done it and I don't want to do it. If for any reason the code must be given, then at least it must be paid and its price must be high.

                        [www.tamelectromecanica.com][www.tam.cat]

                        1 Reply Last reply
                        0
                        • C Clickok

                          I'm developing a large personalized project in C# that will give a good return in cash. I will need to stop ALL my projects and get this job. My only concern now is about the source code. I'm thinking if my customer ask the source, what I will answer? 1) Not! It's mine, take out your dirty hands of mine source code! 2) Yes, but to be prepared to pay 300% of the normal price... 3) Sure! Take it! You will not understand one half of line of code. 4) Sure, but sign this NDA 5) [insert your custom opinion here] Thanks!


                          For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.(John 3:16) :badger:

                          B Offline
                          B Offline
                          Behzad Sedighzadeh
                          wrote on last edited by
                          #20

                          hi, here in IRAN,we choose the second choice.It is accepted as a rule among all participants of a contract ( developer,buyer etc.)

                          Behzad

                          1 Reply Last reply
                          0
                          • A apocsantoz

                            Honestly I dont agree at all to give the code to the customer. If the customer whants the source let he pay a bit more, but be shure that the source is somehow protected, use a smart way of having your code hard to understand by other coder. When i have to release the source for a cliente i usualy remove every coment of the source, and make it as hard as possible to understand even if the compiled version is not the same as the source one, cause the compiled version is maded with the comments and well structured but is for my use and my use only. Customers have rights but so do coders...and all the programmers I know, most of them dont give the source at all.

                            B Offline
                            B Offline
                            Bob1000
                            wrote on last edited by
                            #21

                            Think if you are going to allow source access either as an extra cost or via an escrow its an agreed commercial transaction, removing comments or making it harder for the customer to use the source is pointless and just reflects badly on your work. Have used libraries with source code in the past and its been most useful when the originators no longer exist. Have also supplied products with source code - the key is trust, a good contract and a sensible price!

                            1 Reply Last reply
                            0
                            • C Clickok

                              I'm developing a large personalized project in C# that will give a good return in cash. I will need to stop ALL my projects and get this job. My only concern now is about the source code. I'm thinking if my customer ask the source, what I will answer? 1) Not! It's mine, take out your dirty hands of mine source code! 2) Yes, but to be prepared to pay 300% of the normal price... 3) Sure! Take it! You will not understand one half of line of code. 4) Sure, but sign this NDA 5) [insert your custom opinion here] Thanks!


                              For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.(John 3:16) :badger:

                              M Offline
                              M Offline
                              Marc Clifton
                              wrote on last edited by
                              #22

                              Are you obfuscating the EXE so they can't simply use reflector? If not, you're all but giving them the source code anyways. Marc

                              Will work for food. Interacx

                              1 Reply Last reply
                              0
                              • S Snowman58

                                The contract language is pretty straight forward and probably simpler than my explanation. The harder part is finding an escrow holder acceptable to both sides. This was complicated due to dealing with a foreign customer. We looked at using a bank, various third parties, holding it in the US Embassy etc. The lawyers were the best solution for us, but not really a cheap solution. Hopefully you can think of a more workable escrow holder. In the end, both of us lost interest in the software after a couple years because it was embedded and worked. They never changed the product, so there was never a reason to mess with it.

                                Melting Away www.innovative--concepts.com

                                L Offline
                                L Offline
                                Luc Pattyn
                                wrote on last edited by
                                #23

                                I'm considering encrypting the software and provide it to the customer, then having the notary office to hold the key and draft an official document as to how and when to release the encryption key. :)

                                Luc Pattyn [Forum Guidelines] [My Articles]


                                - before you ask a question here, search CodeProject, then Google - the quality and detail of your question reflects on the effectiveness of the help you are likely to get - use the code block button (PRE tags) to preserve formatting when showing multi-line code snippets


                                1 Reply Last reply
                                0
                                • C Clickok

                                  I'm developing a large personalized project in C# that will give a good return in cash. I will need to stop ALL my projects and get this job. My only concern now is about the source code. I'm thinking if my customer ask the source, what I will answer? 1) Not! It's mine, take out your dirty hands of mine source code! 2) Yes, but to be prepared to pay 300% of the normal price... 3) Sure! Take it! You will not understand one half of line of code. 4) Sure, but sign this NDA 5) [insert your custom opinion here] Thanks!


                                  For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.(John 3:16) :badger:

                                  M Offline
                                  M Offline
                                  Marc Firth
                                  wrote on last edited by
                                  #24

                                  How About: "No we do not give out source, but if you wish to have custom changes made, these are available at a price of x (depending on agreed work)" Or alternatively, build an api they can use to do some of their wanted extras and flog this as an "enterprise version". That's what Goldmine appear to have done (though I've not used it myself - I'm just looking at it now for a possible client).

                                  Neonlight

                                  1 Reply Last reply
                                  0
                                  • R Robert Surtees
                                    1. source escrow. Not recommending, just putting out another option. It depends on the customer and the type of project, neither of which you have provided any information about. From a customer's point of view, buying a mission critical piece of software from a single source that could get hit by a bus at any moment would be a non starter for example.
                                    R Offline
                                    R Offline
                                    Richard Jones
                                    wrote on last edited by
                                    #25

                                    Yes, we had a vendor go bankrupt the month after signing. Glad I wasn't involved in that one.

                                    Cheetah. Ferret. Gonads. What more can I say? - Pete O'Hanlon

                                    1 Reply Last reply
                                    0
                                    • C Clickok

                                      I'm developing a large personalized project in C# that will give a good return in cash. I will need to stop ALL my projects and get this job. My only concern now is about the source code. I'm thinking if my customer ask the source, what I will answer? 1) Not! It's mine, take out your dirty hands of mine source code! 2) Yes, but to be prepared to pay 300% of the normal price... 3) Sure! Take it! You will not understand one half of line of code. 4) Sure, but sign this NDA 5) [insert your custom opinion here] Thanks!


                                      For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.(John 3:16) :badger:

                                      F Offline
                                      F Offline
                                      Fahad Sadah
                                      wrote on last edited by
                                      #26

                                      2+4+5 (5 being escrow) if it's mission critical to them. Otherwise, 1.

                                      1 Reply Last reply
                                      0
                                      • C Clickok

                                        I'm developing a large personalized project in C# that will give a good return in cash. I will need to stop ALL my projects and get this job. My only concern now is about the source code. I'm thinking if my customer ask the source, what I will answer? 1) Not! It's mine, take out your dirty hands of mine source code! 2) Yes, but to be prepared to pay 300% of the normal price... 3) Sure! Take it! You will not understand one half of line of code. 4) Sure, but sign this NDA 5) [insert your custom opinion here] Thanks!


                                        For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.(John 3:16) :badger:

                                        M Offline
                                        M Offline
                                        Moreno Airoldi
                                        wrote on last edited by
                                        #27
                                        1. Not! It's mine, take out your dirty hands of mine source code! I think this is safer for most cases. And I consider it mandatory if the source code contains some highly re-usable components or some highly specialized algorithm and such, since it's hard to define a price for those: the customer would just by-pass you using them. 2) Yes, but to be prepared to pay 300% of the normal price... If the customer is higly motivated to get the source code. In this case, the final price should depend on how much they can benefit from source code. For example, if I develop some software which is embedded in a machine made by the customer, and they will be manufacturing many of those, I will usually either make them pay for each single license or sell them the source code at a price that repays me for the licenses I won't sell. Hope this can be of some help. :)

                                        2+2=5 for very large amounts of 2 (always loved that one hehe!)

                                        1 Reply Last reply
                                        0
                                        Reply
                                        • Reply as topic
                                        Log in to reply
                                        • Oldest to Newest
                                        • Newest to Oldest
                                        • Most Votes


                                        • Login

                                        • Don't have an account? Register

                                        • Login or register to search.
                                        • First post
                                          Last post
                                        0
                                        • Categories
                                        • Recent
                                        • Tags
                                        • Popular
                                        • World
                                        • Users
                                        • Groups