क्या अन्य ग्राहकों की परियोजनाओं में कोड का पुन: उपयोग करना कानूनी है?


22

मैं मोबाइल एप्लिकेशन के लिए एक स्वतंत्र सॉफ़्टवेयर डेवलपर के रूप में काम कर रहा हूं। एक ग्राहक मुझसे मोबाइल ऐप विकसित करने के लिए कहता है। इसलिए फिलहाल मैं इस परियोजना के लिए प्रस्ताव लिखने के लिए समय और प्रयास की गणना कर रहा हूं।

एप्लिकेशन को केवल एक निश्चित समय के लिए उपयोग किया जाएगा क्योंकि यह एक निश्चित घटना से संबंधित है उसके बाद यदि बेकार हो जाएगा। लेकिन ऐप की आधार कार्यक्षमता अन्य ग्राहकों के लिए पुन: प्रयोज्य होगी जो अपने ईवेंट के लिए एक समान ऐप चाहते हैं।

फिलहाल मैं सोच रहा हूं कि क्या ग्राहक के लिए ऐप विकसित करना ठीक है, उसे अपने ग्राहक के ऐप के लिए स्रोत कोड के विकास और पुन: उपयोग का भुगतान करने दें?

तो मेरे लिए इस परिदृश्य से निपटने का सबसे अच्छा तरीका क्या होगा?

  • एप्लिकेशन का स्रोत कोड किसके पास है?
  • क्या मुझे ग्राहक को स्रोत कोड देना होगा जैसा कि उन्होंने विकास के लिए भुगतान किया था?
  • अगर मुझे करना है, तो क्या मैं अभी भी इसकी एक प्रति रख सकता हूं और बाद में इसका पुन: उपयोग कर सकता हूं?
  • क्या मुझे कोड का पुन: उपयोग करने के लिए ग्राहक से पूछना होगा?
  • क्या मुझे यहां किसी तरह के लाइसेंसिंग मॉडल के साथ काम करना है। और पहले ग्राहक को केवल विकास के एक निश्चित हिस्से का भुगतान करने दें ताकि मैं बिना किसी चिंता के कोड का पुन: उपयोग कर सकूं?

मुझे उम्मीद है कि मैंने अपनी स्थिति स्पष्ट कर दी है। मैं तुम्हारे उत्तर की प्रतीक्षा कर रहा हूं।


क्या आपने अभी तक ग्राहक के साथ एक औपचारिक अनुबंध स्थापित किया है?
थॉमस ओवेन्स

नहीं, फिलहाल मैं प्लानिंग के दौर में हूं। अब तक मैंने केवल ग्राहकों से आवश्यकताओं के बारे में बात की है।
फ्लो

5
@Flo - एक अनुबंध लिखें जो इन सभी चिंताओं को संबोधित करता है। डिफ़ॉल्ट रूप से कॉपीराइट लेखक के रूप में आपके पास जाता है। बेशक अगर आप एक अनुबंध के लिए सहमत हैं जो कहता है अन्यथा वह आप पर है।
रामहाउंड

8
आपको प्रोग्रामर के एक समूह के अनुमानों पर भरोसा करने के बजाय एक वकील से परामर्श करना चाहिए, जो आपकी स्थिति और आपके स्थानीय कानूनों का विवरण नहीं जानता है।
पॉल टॉम्बलिन

जवाबों:


26

परियोजना शुरू करने से पहले आपको यह तय करना चाहिए कि कौन कोड का स्वामित्व बनाए रखेगा।

यदि वे खुशी से आपको स्वामित्व रखने की अनुमति देते हैं तो आप अन्य परियोजनाओं में इसका उपयोग करने के लिए ठीक हैं। अगर वे स्वामित्व लेना चाहते हैं तो यह एक समझौता बिंदु है।


6
किसी सौदे का सुझाव देना आपके हित में हो सकता है जिसमें आप कोड का पुन: उपयोग कर सकते हैं, लेकिन अपने ग्राहक के प्रतिस्पर्धियों के लिए परियोजनाओं में नहीं। यह उनके दृष्टिकोण से अधिक स्वादिष्ट लगता है।
एमिलियो एम बुमचार

4
यदि वे आपत्ति करते हैं तो सामान्य विकल्प 2 कोट्स को उद्धृत करना है। 1 यदि मैं मौजूदा कोड और पुस्तकालयों का पुन: उपयोग कर सकता हूं और 2. एक राशि 10x जितनी अगर मुझे इस परियोजना के लिए केवल स्क्रैच से सब कुछ फिर से बनाना होगा। व्यवहार में आप "मानक कोड और पुस्तकालयों का पुन: उपयोग" करने के बारे में थोड़ा सा ध्यान रखते हैं और केवल खुद को कवर करने के लिए और कोई भी नोटिस या परवाह नहीं करता है।
मार्टिन बेकेट

3
मार्टिन बेकेट को +1। किसी भी प्रोजेक्ट में आपके पास दो कोडबेस होने चाहिए; वैश्विक एप्लिकेशन के साथ कोड वाले "सामान्य" पुस्तकालयों का एक सेट, जिसे आप अपने ग्राहकों को "लाइसेंस" देते हैं, और "कस्टम" कोड जिसे आपका ग्राहक वास्तव में पूरा करने पर स्वयं का होगा। आप अनुबंध में निर्धारित कर सकते हैं कि इस परियोजना की आवश्यकताओं के जवाब में नई सुविधाओं के साथ "सामान्य" पुस्तकालयों का विकास अभी भी बिल योग्य है। आपको क्लाइंट केस-बाय-केस के साथ बातचीत करनी होगी जो "सामान्य" के रूप में योग्य है; ग्राहक एक कोडबेस चाहते हैं जो आपके लाइसेंस कोड पर पूरी तरह निर्भर न हो।
कीथ्स

6

चूंकि आपके पास अभी तक कोई अनुबंध नहीं है, इसलिए अंतिम अनुबंध पर हस्ताक्षर करने से पहले आपको ग्राहक के साथ इन मुद्दों पर काम करना होगा। मेरी समझ से, यह तब होगा जब ग्राहक समय और लागत पर आपके अनुमानों से सहमत है, इसलिए यह कुछ ऐसा है जिसे आपको आवश्यकताओं के साथ-साथ अब ग्राहक के साथ चर्चा करने के बारे में सोचना चाहिए। ये ऐसी चीजें हैं जो अक्सर ऐसे दस्तावेज़ में शामिल होती हैं। क्या शामिल है आपको और उत्पाद के लिए भुगतान करने वाले व्यक्ति दोनों के लिए सहमत होना चाहिए, हालांकि व्यक्ति या संगठन के आधार पर, आपको वह सब कुछ नहीं मिल सकता है जो आप चाहते हैं।

यदि आपको अनुबंध लिखने में बहुत अधिक अनुभव नहीं है, या यदि आपके पास बहुत विशिष्ट प्रश्न हैं, तो पूछने के लिए सबसे अच्छा व्यक्ति एक वकील होगा जो अनुबंध और व्यवसाय कानून में माहिर होगा - उन्हें पता होगा कि आपने जो लिखा है, उसमें क्या होगा? कोर्ट में समस्या होनी चाहिए। आप बाद में समस्याओं के कारण अपने अनुबंध में गलती नहीं करना चाहेंगे।


7
+1 मैं यह भी जोड़ना चाहूंगा कि कानूनी परामर्श प्राप्त करना या अपना पहला अनुबंध लिखने में मदद करना एक अच्छा विचार है ताकि आप इसे सही तरीके से प्राप्त कर सकें। आम तौर पर तब अधिकांश सौदे बहुत समान होते हैं इसलिए अपने अनुबंधों के लिए अपने पुराने अनुबंधों को एक टेम्पलेट के रूप में उपयोग करना बहुत आसान होता है जिसे आप बाद में नए ग्राहकों के लिए लिखते हैं।
maple_shaft

4

अब तक के उत्तर उत्कृष्ट रहे हैं। मैं पूरी सलाह से सहमत हूं:

  • एक वकील से पूछें
  • हर बार जब आप किसी के साथ काम करते हैं तो एक अनुबंध बनाएं
  • अपने वकील के साथ काम करना जारी रखें
  • फायदा!

इस स्थिति में, आप पहले से ही जानते हैं कि "ऐप की आधार कार्यक्षमता अन्य ग्राहकों के लिए पुन: प्रयोज्य होगी", और वास्तव में मुझे यकीन है कि आप (और अन्य) पहले से ही ऐसी स्थितियों का अनुभव कर चुके हैं जिनमें आप कुछ बुनियादी कार्यक्षमता या रूपरेखा जानते हैं - हो वे वेब, मोबाइल, डेस्कटॉप, या अन्यथा - पुन: उपयोग करने जा रहे हैं। मेरा वास्तव में मतलब है कि हम कुछ ऐसे कार्यों का पुन: उपयोग क्यों नहीं करेंगे जिन्हें हम जानते हैं कि हम काम करते हैं, और हम परिचित हैं? हम शायद यह सब हर समय करते हैं।

यह आपके लिए काम नहीं कर सकता है, लेकिन यह मेरे लिए वर्षों से काम कर रहा है:

  • आपके द्वारा उपयोग की जाने वाली किसी भी चीज़ की विकास लागत का पुन: उपयोग करें, स्वामित्व को बनाए रखें, और इसे अपने ग्राहकों को लाइसेंस दें। कोई भी बाहरी धन इस प्रक्रिया में हाथ नहीं बदलता है, ताकि स्वामित्व स्पष्ट रहे।

उस स्थिति में, एक वकील की मदद से, आप यह स्पष्ट कर सकते हैं कि आपके ग्राहक उस आधार कार्यक्षमता के शीर्ष पर निर्मित हर चीज के लिए भुगतान कर रहे हैं, जो आप प्रदान करते हैं, वे उस अनुकूलन के मालिक हैं, लेकिन आधार नहीं है, और आप मुक्त रहना चाहते हैं एक समान तरीके से दूसरों के लिए विकसित करना।

यदि ग्राहक उपयोग की विशिष्टता की मांग करता है, तो आप इसे उस कीमत पर पेश कर सकते हैं जो आपको भविष्य में किसी और को बेचने के लिए समय, प्रयास और अक्षमता के लिए भुगतान करता है।

नकारात्मक पक्ष यह है कि आप मुफ्त में कुछ विकसित कर रहे हैं। आपको निश्चित होना चाहिए कि यह पुन: प्रयोज्य होगा, और अन्य लोग आपको भुगतान करेंगे, अन्यथा यह एक बुरा जुआ है। लेकिन अगर आप कुछ समय के लिए एक स्वतंत्र डेवलपर बनने की योजना बनाते हैं, और एक ग्राहक आधार रखते हैं - या कम से कम चाहते हैं - यह सोच की यह पंक्ति लंबे समय तक विचार करने के लिए कुछ हो सकती है।

और एक वकील से बात करो!


3

एप्लिकेशन का स्रोत कोड किसके पास है? क्या मुझे ग्राहक को स्रोत कोड देना होगा जैसा कि उन्होंने विकास के लिए भुगतान किया था?

यह अनुबंध पर निर्भर करता है। सामान्य तौर पर, आपको ग्राहक से इस बारे में पूछना चाहिए कि विशिष्टता के रूप में क्या जाना जाता है । उदाहरण के लिए, आप विशेष विकास के लिए बहुत अधिक शुल्क ले सकते हैं (और फिर ग्राहक कोड का मालिक होगा); वैकल्पिक रूप से आप उन्हें बता सकते हैं कि ग्राहक को कम भुगतान करना होगा लेकिन आप कानूनी रूप से स्रोत के मालिक हैं। आप ग्राहकों को सॉफ़्टवेयर के बाइनरी-केवल संस्करण की आपूर्ति / स्थापित कर सकते हैं ताकि ग्राहक को संशोधनों के लिए आपके पास आना पड़े।

अगर मुझे करना है, तो क्या मैं अभी भी इसकी एक प्रति रख सकता हूं और बाद में इसका पुन: उपयोग कर सकता हूं? क्या मुझे कोड का पुन: उपयोग करने के लिए ग्राहक से पूछना होगा?

आम तौर पर, कॉपी रखना गैरकानूनी / अनैतिक नहीं है। जब ग्राहक अधिक विकास पूछता है तो आप इसका उपयोग कर सकते हैं। हालाँकि, कोड (किसी और को) वितरित करना यदि सौदा अनन्य था, सही नहीं है।

क्या मुझे यहां किसी तरह के लाइसेंसिंग मॉडल के साथ काम करना है। और पहले ग्राहक को केवल विकास के एक निश्चित हिस्से का भुगतान करने दें ताकि मैं बिना किसी चिंता के कोड का पुन: उपयोग कर सकूं?

न केवल कोड के पुन: उपयोग के दृष्टिकोण से, अन्यथा, लाइसेंसिंग प्रक्रिया ग्राहक की सभी वस्तुओं और आपकी चिंताओं को परिभाषित करने के लिए होनी चाहिए। इसलिए यदि आपको सौदा एक तरफा है तो भी आपको लाइसेंस देना चाहिए। साथ ही, आपको उसी ग्राहक के लिए बाद में भविष्य के विकास के प्रावधान शामिल करने चाहिए।


1
-1, ऐसा कोई कारण नहीं है कि आप स्रोत कोड वितरित नहीं कर सकते हैं भले ही आप इसके मालिक हों।
user606723

@ user606723 क्या आप पूरा वाक्य पढ़ेंगे? However, distributing code (to someone else) if the deal was exclusive, is not right.यानी यदि आपने किसी और को वितरित करने वाले ग्राहक के लिए अनन्य कोड विकसित किया है, तो यह उचित नहीं है!
दीपन मेहता

"वैकल्पिक रूप से आप उन्हें बता सकते हैं कि ग्राहक को कम भुगतान करना होगा लेकिन आप कानूनी रूप से स्रोत के मालिक हैं। आप केवल ग्राहक को ही आपूर्ति / स्थापित कर सकते हैं। " <- यह वही है जिसका मैं उल्लेख कर रहा हूं। आप स्रोत कोड को गैर-अनन्य अधिकार दे सकते हैं।
user606723

@ user606723 क्या यह मेरे उत्तर में भी शामिल नहीं है? alternatively you can tell them customer will have to pay less but you are legally owning the source- असहमति की बात क्या है?
दीपन मेहता ३०'१२ १an:०२

1
@DipanMehta: मैं user606723 से सहमत हूं; और आपके नवीनतम संपादन ने समस्या को ठीक नहीं किया है। समस्या यह है कि "[...] वैकल्पिक रूप से आप उन्हें बता सकते हैं कि ग्राहक को कम भुगतान करना होगा लेकिन आप कानूनी रूप से स्रोत के मालिक हैं। आप ग्राहकों को सॉफ्टवेयर के बाइनरी-केवल संस्करण की आपूर्ति / स्थापित कर सकते हैं [...]" यदि आप इसे अभी भी खुद करना चाहते हैं तो यह ध्वनि को ग्राहकों को स्रोत-कोड नहीं दे सकता है। तथ्य यह है कि आप अभी भी स्वामित्व और / या सभी अधिकारों को त्यागने के बिना, विशिष्ट उद्देश्यों के लिए स्रोत-कोड को लाइसेंस दे सकते हैं।
रुख

-1

आप हमेशा अपने कोड अन्य पुस्तकालयों में उपयोग कर सकते हैं, उदाहरण के लिए खुला स्रोत। जाहिर है कि क्लाइंट का उनके ऊपर कॉपीराइट नहीं होगा। विशेष स्थिति में, आप अपने द्वारा लिखे गए पुस्तकालयों का उपयोग कर सकते हैं। ग्राहक अनुकूलन के लिए भुगतान करता है - वह हिस्सा, जो उसके और उसकी व्यावसायिक जरूरतों के लिए बनाया गया है। सब कुछ जो उपयोगकर्ता-विशिष्ट नहीं है और कई परियोजनाओं में उपयोग किया जाना है, वह आपका अपना पुस्तकालय हो सकता है। मुझे वहां कोई समस्या नहीं दिख रही है।

समस्या यह होगी कि यदि आप इंटरफ़ेस या व्यावसायिक तर्क का पुन: उपयोग करते हैं, या किसी अन्य के लिए भी उसी परियोजना को फिर से बेचना। यूटिलिटी कोड एक ऐसी चीज है जिसके बारे में ग्राहक को आमतौर पर जानकारी नहीं होती है और उसकी देखभाल भी नहीं करता है।


1
बेशक, यह सब ग्राहक को बताना होगा।
user606723

1
नहीं, यह नहीं होगा। अपाचे या एमआईटी जैसे लाइसेंस वाणिज्यिक उपयोग की अनुमति देते हैं।
दानूबियन नाविक

-1

अन्य जवाब चीजों की देखरेख कर रहे हैं। मेरा मतलब पूर्ण उत्तर देना नहीं है, बस कुछ बातों को इंगित करना है।

  1. आप अधिकार दे सकते हैं या आप अनन्य अधिकार दे सकते हैं।
  2. यदि आप अनन्य अधिकार देते हैं, तो आप इसे बनाए रख सकते हैं कि समझौते के हिस्से के रूप में, आप गैर-अनन्य अधिकारों को बनाए रखेंगे। (यह आपको व्यक्तिगत रूप से कोड / कार्यक्रम का उपयोग करने की अनुमति देगा)
  3. यहां तक ​​कि अगर आप अनन्य अधिकारों की आपूर्ति नहीं करते हैं, तब भी आप स्रोत कोड का उपयोग करने, संशोधित करने और वितरित करने के लिए गैर-अनन्य अधिकारों की आपूर्ति कर सकते हैं। दो परस्पर अनन्य नहीं हैं।

-1 आपका जवाब किसी भी बिंदु को कवर नहीं करता है जो दूसरों ने पहले नहीं बोला है!
दीपन मेहता
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.