По сути, я новичок в сетевом программировании на Python, поэтому я пошел в онлайн-учебник, чтобы узнать об этом. Используя то, чему научили в этом руководстве (создание сокета, подключение к портам и т. Д.), Я изменил код так, что создал программу, в которой два компьютера могут отправлять сообщения друг другу.
Если бы я подал заявку на работу и показал это моим интервьюерам, был бы код для нее технически моим? Справедливо сказать, что я не так сильно изменил код; Однако что, если, например, я превратил ее в нечто вроде игры в крестики-нолики, в которой два пользователя играют друг с другом с разных компьютеров, будет ли тогда мой код? Я просто не хочу выглядеть как плагиатор, поэтому и спрашиваю.
personal-projects
Брэд Гай
источник
источник
Ответы:
Нет.
Но вы можете утверждать, что вы изменили код так, что создали программу, в которой два компьютера могут отправлять сообщения друг другу. Или вы можете утверждать, что вы превратили ее в нечто вроде игры в крестики-нолики, в которой два пользователя играют друг с другом с разных компьютеров.
Просто правдиво представляйте объем работы, который вы вложили в него. Вы не можете претендовать на право собственности на какой-либо проект в Интернете, если другие сделали часть работы.
источник
Я бы пошел с классической линией «это зависит» .
Как вы уже сказали, что вы не сильно изменили его, я полностью на стороне Робертса. Это не твой проект.
Но с другой стороны: нам, разработчикам, нравится обсуждать, исследовать и иногда копировать для наших проектов. Возиться с кодом других людей довольно часто. Если вы сильно измените его, приложите некоторые усилия, предоставив новые функции или другой подход к проблеме, то это ваш код.
Просто придерживайтесь истины о количестве работы, которую вы действительно сделали самостоятельно, и я уверен, что никто не назовет вас плагиатором.
источник
Если то, что вы сделали, это изменило чей-то код, чтобы сделать то, что вы хотели, то было бы нечестно утверждать, что ваш код «ваш». Скорее, это программа, которую вы создали на основе существующего кода.
Теперь вы, возможно, заметили, что многие программисты используют код других людей. Все время. Библиотеки и API - это, по сути, формализованный способ использования кода, созданного кем-то в вашем собственном проекте. Хотя то, что вы сделали, не то же самое, что использование библиотеки или API, оно имеет тот же эффект.
В случае простой P2P-программы вы можете утверждать, что вы написали приложение для обмена сообщениями, которое использует реализацию простых веб-протоколов других программистов. Вы можете пойти дальше и назвать это своей программой, вы должны просто отдать должное тому, кто написал заимствованные части. И было бы лучше добавить комментарии к коду со ссылкой на источник, чтобы другие могли найти его в случае необходимости.
А в случае с игрой вы написали игру. Вы можете заявить об этом как свой код. Затем эта игра использует набор функций, которые вы получили из другого источника, чтобы включить многопользовательские функции. Опять же, вам, вероятно, следует размещать источник этого кода, по крайней мере, в комментариях к вашему коду. Однако в этой ситуации вы, вероятно, можете сойти с рук, не сообщая об этом явно другим за пределами кода, как вы действительно писали игру.
Многие разработчики полагаются на библиотеки для решения некоторых более сложных проблем, с которыми они сталкиваются. Такие вещи, как сетевые протоколы, графика и сложная математика, используются многими людьми, поэтому есть библиотеки, которые хорошо справляются со всеми этими задачами. Использование такого рода кода не только полностью приемлемо, но и нормально.
Если вы скажете «это клиент для обмена мгновенными сообщениями» или «это видеоигра», никто не удивится, если сетевой код получен от третьей стороны. Только не утверждайте, что вы являетесь единственным автором всех частей кода, и с вами все будет в порядке.
Однако вам следует рассмотреть другую возможность: защищен ли рассматриваемый код какими-либо условиями использования? До этого момента я говорил о коде, который доступен либо без терминов, либо с очень открытыми терминами. Однако, если у автора есть более конкретные термины, следуйте им . Если они только предназначали код для образовательных целей, то использование его в любых других целях не допускается. Они могут накладывать всевозможные ограничения на этот код, поэтому будьте осторожны с тем, как вы его используете.
источник