オープンソースプロジェクトのすべての行を少し異なる方法で書き直し、クローズドソースプロジェクトで使用することは可能ですか?


122

iPhoneプロジェクトでの使用を検討しているGPLまたはLGPLのコードがいくつかあります。

そのコード(JavaScript)を取得し、iPhoneで使用するために別の言語に書き換えた場合、それは法的問題になりますか?

理論的には、起こったプロセスは、プロジェクトの各行を経て、それが何をしているかを学んだ後、新しい言語でアイデアを再実装したことです。

私には、これは何かを実装する方法を学ぶようなもので、元のライセンスとは別に再実装するように思えます。したがって、アルゴリズムをコピーしただけで、おそらく元のプロジェクト以外のどこかから学んだはずです。

ライセンスは特定の実装またはアルゴリズムもカバーしていますか?

編集-----

このトピックが良い会話を生み出すのを見て本当にうれしいです。プロジェクトをもう少し支援するために、関連するコードは何らかのオーディオ分析を行います。私はこのタスクに着手する準備ができていましたが、学習したり実装したりするのは簡単ではないと思います(私はFFTアルゴリズムを実装できるレベルにあり、これを超えて行くつもりでした)LOCが低いスクリプトなので、ストレートポートを作成するのが難しいとは思いませんでした。

私は、ポートをリリースしてアプリケーションで使用するというアイデアが本当に好きです。私はそれに関して何の問題も見ていません、そしてそれはコミュニティに何かを返すための素晴らしい方法でしょう。

私は道徳的な問題を議論したくないという行を追加するつもりでしたが、それが少し議論を引き起こしたように思われるので、私は非常にうれしかったです。

学ぶためにオープンソースコードを使用することについて、まだ少し奇妙に感じます。これは、オープンソースプロジェクトから学んだものをクローズドソースプロジェクトで使用することは許可されないということですか?そして、ライセンスの違反とみなされないようにするには、実装がどれくらい後または異なる必要がありますか?マーキー!

編集2 --------

フォローアップの質問


27
「オープンソースプログラムからアルゴリズムを学び、アルゴリズムを再実装した場合、ライセンスに違反しましたか?」という別の質問の一番下になりたいと思います。私はこれを道徳的な観点ではなく、法的観点から求めています。しかし、道徳的な観点からさえ、それは学習の合法的な形式ではないのでしょうか?オープンソースプロジェクトから収集した学習を使用することはできませんか?これは、GPL自体のポイントに反するようですか?
クリスバリー

8
@optician問題は、それを行ごとに翻訳したいということです。これは明らかに、人間の言語間の翻訳のように、派生した作品になります。アイデア自体は著作権によって保護されておらず、代わりに特許によって保護されている場合があります。しかし、注意してください、IANAL。
スターブルー

3
コメント者:コメントは明確な説明を求めるためのものであり、詳細な議論のためのものではありません。解決策がある場合は、答えを残してください。ソリューションが既に投稿されている場合は、投票してください。他の人とこの質問について話し合いたい場合は、チャットを使用してください。詳細については、FAQを参照してください

2
@optician Stack Exchangeシステムはディスカッションボードではありません。各投稿は時間とともに方向を変えるトピックです。別の質問がある場合は、別の質問をしてください。それ以外の場合は、受け取った回答が元の問題に完全に対応していない場合は、質問を編集して明確にしてください。

2
この質問は法律上の問題であるため、トピック外としてこの質問を終了することに投票しています。
ロバートハーヴェイ

回答:


257

私は弁護士ではありません。これは法的助言ではありません。

とはいえ、アプリケーションのすべての行を取得し、著作権法を回避することを唯一の目的としてそれをわずかに変更することは、明らかに、もっともらしい防御のない派生作品を作成することです。あなたが法廷に引きずり込まれた場合、最も高価な裁判官とju審員でさえ間違いなくあなたに反対するでしょう。

比較として:相互運用性のために何かを書き換える必要がある企業は、通常、ソースを理解し、ポートを作成するためにさまざまな人々を雇います(「クリーンルーム実装」)。作業。あなたが提案するのは正反対です。


25
私はあなたに+10を与えることができたらいいのに…
マージャンヴェネマ

5
それは、法廷に持ち込まれた「場合」です。
QueueHammer

5
ソフトウェアがまったく成功した場合、おそらくどこかの時点で法廷に持ち込まれることになるでしょう。
ジャスティンC

4
@optician:オリジナルを実際に再作成するのにどれだけ近いかに依存しますが、それはあなたが答える弁護士を必要とするような質問です。
デビッドソーンリー

5
@DavidStone後方にあります。論理アルゴリズムとコード内のアルゴリズムの特定の表現は法的に分離されていることを理解する必要があります。表現のみが著作権で保護されています。再実装を行うグループは、アルゴリズムの元の表現とは接触せず(論理アルゴリズムに関する社内文書のみを参照)、書かれた表現は元の表現とは異なる可能性が高いため、可能性は非常に低い著作権を侵害します。ただし、論理アルゴリズムは元のアルゴリズムと同一であるため、特許に容易に違反する可能性があります。
アプシラー

72

ハーバードロースクールの著作権の基本のベッツィーローゼンブラットによると:

著作権侵害とは何ですか?

特定の防御を条件として、作者以外の誰かが作者の許可なしに以下を行うことは著作権侵害です。

  1. 作品をコピーまたは複製する
  2. 元の作品から派生した新しい作品を作成する(たとえば、作品を新しい言語に翻訳する、画像をコピーして歪める、または作品を新しい表現媒体に移す)
  3. 作品または作品のコピーを初めて販売または譲渡する(ただし、著者がそうすると、アイテムを販売または譲渡する権利が新しい所有者に譲渡されます。これは「最初の」セール」のドクトリン:著作権所有者が作品またはそのコピーを販売または配布した後、受取人または購入者は自分が申し立てたものを好きなように行うことができます。)17 USC§109(a)。
  4. 著作権所有者の許可なしに、作品を公に公開または表示すること(この権利は視覚芸術には適用されません)。17 USC§106。17 USC 106Aで定義されているように、著作者の「人格権」を侵害することも著作権侵害です。人格権はこの場所で議論されています。

上記の項目2に違反しているように見えます。

ただし、ここでは用語が大事だと思います。「そのコード(javascript)を受け取って、iPhoneで使用するために別の言語で書き直した場合、それは法的な問題になりますか?」(エンファシス鉱山)。何かを書き換えることは、コピーすることと異なる場合があります。たとえば、モナリザを見て、自分のスタジオに行って、覚えているものをペイントした場合、あなたはオリジナルをどのように感じたかを表現したオリジナル作品を作成しているように思えます。ただし、スタジオにモナリザのコピーがあり、覚えているものではなく、コピーを描いた場合、間違いなくコピーしていると思います。

同様に、MS Wordを使用する場合、そしておそらくコードの一部を見て、機能的な類似性を持つ独自のワードプロセッサを作成する場合でも、 &feel」は著作権で保護されていません。(もちろん、これは特許については何も言っていません。)

おそらく弁護士に尋ねるべきです(私はそうではないので)。

私個人の意見では、「ポート」は派生物であるため、同じライセンスで移植されたコードをリリースする必要があります。


1
それを証明する問題もあります。Wordのソースコードを見てから、独自のワードプロセッサを作成した場合は、何もコピーしていないことを証明するのに苦労することになります。
gbjbaanb

6
@gbjbaanb:ほとんどの国であなたしたことを証明するのマイクロソフトの責任です。マイクロソフトがあなたを訴えた場合、大企業にあなたを無料で連れて行ってもらうことができない限り、あなたは台無しにされるので、それは重要ではありません。:-)そして、あなたは、Wordのソースコードへのアクセスを持っていた場合、オッズは、あなたがすでにあなたはとにかくそれに対抗するためには何も書き込まないだろう...と言って何かを締結し、かなり良いです
TJクラウダー

3
「ここ」と書く代わりに、著者の名前を「Betsy Rosenblatt、Harvard Law School」とする方がよいでしょう。
ニコライReuschling

3
@Nicolai Reuschling:笑:)
スコットホイットロック

4
@TRiG:「なぜそれがおかしいと思うのかわかりません。」-おそらく、それはあなたがアイロニーの感覚を持っていないためです。;)
スコットホイットロック

55

私は弁護士ではありません。これは法律上の助言ではありません。もしあなたが何らかの疑わしい仕事で私が言うことに頼るなら、(1)あなたは馬鹿です、そして(2)私はすべての責任を放棄します。これは私が知っているように見える人々から長年にわたって聞いたり読んだりしたものです。

裁判官は「理論上」のゲームをプレイしません。彼らは、論理分析の観点からおそらく受け入れられるが、明白な意図と裁判官が過去に支配した方法に反する、法律をひねる方法を作る人々を好まない。あなたの解釈を擁護する法廷に巻き込まれる可能性がある場合、法律についてあまり賢くならないようにしてください。

小説を撮り、それから映画を作成したり、別の言語に翻訳したりすることは二次的作品を生み出し、それらはあなたが話しているよりもはるかに大きな変化であり、はるかに大きな創造性を必要とすることは一般的に受け入れられています。それらを例として見てください。裁判官は確かになります。

米国では、あなたが話しているよりも緩やかにプログラムをコピーすることが侵害と判断された場合があります。米国では、それらが先例として使用されることを期待してください。

言い換えれば、誰かが面倒を見た場合に違法であると判断されることに基づいて営利企業を開始することになります。良い考えではありません。

さらに、著作権の考え方に敬意を払っていたり、著者が出版物を管理している可能性がある場合は、偽善的です。ソースコードは、特定の条件下で使用できるようになりました。あなたは法律と著者の明確な意図に違反しています。

現在、アルゴリズムは著作権で保護されていません。米国では、裁判所はアイデアを著作権で保護することは不可能であり、通常は著作権で保護されているもので、何かを表現する唯一の方法は著作権で保護されていません。したがって、アルゴリズムを確実に使用できます。

著作権を保護するアルゴリズムをコピーする方法があります。「クリーンルーム」アプローチでは、1人またはグループがソースコードを調査し、アルゴリズムの説明を(実装の詳細を可能な限り少なくして)作成します。グループは、元のソースを参照せずに新しいコードを書き込みます。近くに行けば行くほど、安全になります。

また、ここに質問を投稿することにより、著作権を侵害する可能性のある意図を、だれかが法的権利を持っている場合に遡ることができる形式で公開していることを検討することもできます。民事事件、またはこれが刑事事件であることが判明した場合の明白な警察調査)。


18
+1「また、ここに質問を投稿することで、著作権を侵害する可能性のある意図を公表したことを考慮したいかもしれません」。

6
+1「クリーンルーム」アプローチの場合-私はいつもそれがどのように機能するのか疑問に思っていました。
DMan

私は状況について著者フォーラムに投稿したばかりで、ここに結果を投稿します。
クリスバリー

アルゴリズムはアイデアであり、プログラムはアイデアではありませんか?または、プログラムはどのようにアルゴリズムのコレクションではありませんか?
スクーター

16

なぜあなたは単にあなたのポートをオープンソースにして、プロジェクトの残りをクローズドソースにしないのですか?

私の別の答えを引用するは:

オープンソースはコミュニティであるため機能します。相互的だからです。オープンソースコードを書くことでお金を得ることはありません。オープンソースコードを消費することでお金を得ることができます。では、なぜオープンソースコードを書くのですか?何かを返すために。

しかし、より実用的な観点から:
移植したコードが非常に有用であるため、利点を維持するために保護する必要があると思われる場合(Appceleratorを使用しているユーザーはすぐに使用できるため、持っていません)遅かれ早かれオープンソースポートになります。それは多くの人々によって維持され、使用され、それによってさらに多くの人々によってテストされ、ターゲット言語によって促進される原則を組み込み、プラットフォーム上の一般的なフレームワークとのより良いインターフェースになるようにさらに洗練されます。遅かれ早かれ、あなたのコードはそれと比較してがらくたのように見えるでしょう。
実際、オープンソーシングは、後流にとどまるチャンスです。それは双方にとって好都合です。運が良ければ、そのコードのメンテナーを獲得し、アプリケーションロジックに集中することもできます。これが実際に製品をユニークにするものです。


1
+1そこにある最高のコードのいくつかはオープンソースです。しかし、GPLコードを商用プロジェクトに追加することは、製品全体をオープンソーシングすることを意味する場合、どのようにハードルになるのかがわかります。
アレックスジャスミン

2
私が理解している限り、Appleのライセンス条項によりiOSアプリでGPLコードは禁止されています。
アンドレイタランソフ

2
さて、Apple ToSの1つの条項はGPLの1つの条項と矛盾しているようです。したがって、禁止されていませんが、互換性がないようです。
-Vatine

1
AppleのToSがGPLと矛盾する場合、著作権を自分で持っていると、Apple ToSと互換性のあるライセンスの下で、GPLの下でも、より多くのライセンスの下でリリースできます。
ピーターB

8

私は弁護士ではありません。テレビで演奏することすらありません。

しかし、ここでの問題は派生物だと思います。新しい作品がGPLまたはLGPLの作品から派生している場合、その作品はGPLまたはLGPLの要件に準拠する必要があります。別の言語で1行ずつ完全に書き直しても、作業は明らかに派生物になります。


はい、しかし、それはあなたがそのアルゴリズムを二度と使用することを許可されないことを意味しますか?別のプロジェクトで実装されているのを見たという事実は、他の学習パスを介して自分でアルゴリズムを思い付く知識があることを証明できない限り、そのアルゴリズムを自分で使用することを禁じていますか?
クリスバリー

4
私も弁護士ではないので、推測しているだけです。別の言語で独自のアルゴリズムの実装を作成した場合、「派生」という言葉は使用しません。GPLは秘密の特許システムとして作成されたとは思わない。
キャプテンセンシブル

1
@Seventh-「Covert Patent System」という用語を商標登録し、コンセプトを特許する必要があります。
メイヨー

2
アルゴリズムには著作権はありません。著作権法の目的のために、アルゴリズムを繰り返すことは実行可能ではありません。重要なのは、プログラムが原文からテキストで派生しているかどうかです。すなわち、変数名、コードのレイアウト等(特許法は、しかしながら、またはアルゴリズムにも適用してもしなくてもよい)を意味する
キリアンFoth

1
ライセンスは、アルゴリズム自体ではなく実装を対象としています。実装を別の言語に移植することは、ハリー・ポッターをスペイン語に移植するのと同じように派生的な作業です。独自の方法でアルゴリズムを自由に実装できます。コピー/貼り付けを推奨せず、実装するアルゴリズムを学習し、独自のバージョンをゼロから作成します。IANAL。
デイブレイガー

5

他の人が言うように、これは二次的著作物である可能性が高いため、「元のライセンスとは別に」行うことを選択した場合、GPL条項に直接違反します。

それが「合法」として滑っていても、明らかに不道徳です。GPLを適用したソフトウェアの作成者は、自由を二次的著作物に拡大するようなライセンスを選択しました。それは良いことでも悪いことでも、それは著者の意図であり、あなたはそれを尊重すべきです。彼らはあなたに条件を変えないことを返すように頼むだけで、あなたにコードを読んで修正し、フォークし、何でも与えました。また、ソフトウェア自体の支払いも期待されていなかった可能性があります。

私はお金が難しいことを知っていますが、この形であなたがあなたのアイデアを描くとき、​​それは盗んでいます。確かに、別のソースからそのアルゴリズムまたは実装の詳細学習できたかもしれません、自分で言ったようには学習しませんでした。

道徳があなたに関係ないなら、あなたがしていること(またはやろうとしていること)の灰色の合法性を考えると、元の作者が著作権侵害のためにAppleに連絡する可能性が非常に高いことを覚えておいてください。これまでのところ、AppleはGPLを侵害しているそのようなソフトウェアを迅速に削除しました。別の可能性は訴訟です。

もし私があなただったら、自分の作品をGPL化する(それはそれほど悪いことではありません!)か、他の方法で知識を得ることを検討します。


GPL(wordpress app?)のアプリがあるようです。あなたはアルゴリズムを学ぶためにオープンソースプロジェクトを使うことは大丈夫ではないと言っていますか?
クリスバリー

いいえ、そうではありません。同じ行を別のプログラミング言語に翻訳するというOPのアイデアに言及していました。さて、派生はどこで終わり、元の作業はどこから始まりますか?これは簡単な質問ではありませんが、同じアルゴリズムを変更せずに再実装するだけで派生的な作業になると確信しています。
タマスゼレイ

はい、それは簡単な質問ではありません。また、違法にならないほどの変化がどれだけあるかを知ることも興味深いでしょう。実行可能な名前、空白を変更しますか?特にコードを理解しているため、適切な代替名を作成できる場合は、そのようなものを変更するのは非常に簡単なので、ちょっとばかげています。
クリスバリー

ところで、コードはよくコメントされているので、何をしているのかをピックアップするのは本当に簡単です。
クリスバリー

まあ、ただ常識を使用してください。プログラマーとして、空白と変数名を変更するだけで十分だと思いますか?最終的に(現実的なエッジケースでは)裁判所は合法性について決定するでしょう。
タマスシェレイ

5

誰かのアイデアを盗むのではなく、正しいことをしようとしてはどうですか?コードの作成者にメールを送信し、プロジェクトの一部をプロジェクトの一部から作成できるかどうかを尋ねることができます。多くの人はそれで問題ないでしょう。彼らが問題を抱えていて、法的問題をさておき、コミュニティの専門家としてのあなたの評判を傷つけるのはなぜですか?この質問が多かれ少なかれ「どうしたらいいの?」とは対照的に「どうしたらいいの?」と表現されたという事実。少し面倒です。

要するに、コードを書いた人(または人)聞いてください


2
著者に尋ねられたので、結果をここに投稿します。
クリスバリー

5

私も弁護士ではありません。これが法的問題であるかどうか心配な場合は、おそらくこの質問をして自分で書いてはいけません。

問題に関する私の個人的な意見:

JavaScriptコードを取得して別の言語に書き換えている場合、それはポーティングと呼ばれ、二次的著作物と見なされます。独自のバージョンのソフトウェアを作成し、特定のアルゴリズムがどのように機能するかを学習するための参照としてjavascriptコードを使用している場合は、おそらく大丈夫です。

私は弁護士に尋ねる側で間違いを犯すでしょう。

補遺として、著作権法では、公開されたソースコードを読む以外に基本的にNOTHING [*]を行うことが許可されています。著作権所有者がリリースしたライセンスにより、著作権法で規定されていない特定の追加の権限が許可されます。ライセンスで許可されている以外の方法でコードを使用することは、著作権法で保護されている著作物を作成者の許可なしに使用することと同じです。

[*]フェアユースを除く。


1
GPLであれば、読む以上のことができます。これらの派生物もGPLである限り、派生物を作成できます。
Zhehao真央

そうです。
デイブレイガー

4

いいえ。それは倫理的ではありません。それはほぼ間違いなく違法です。そして、もし私がそれをした誰かから求人アプリをレビューしたなら、それは極端な偏見で丸く提出されるでしょう。


オープンソースプロジェクトから何かを実装する方法を学ぶことは倫理的ではないと言っているのですか?
クリスバリー

4
@Chris:オープンソースプロジェクトから派生した作品を作成し、販売のためにリリースすることは、ライセンスで示されている著者の意図に反して、倫理的ではありません。ライセンスに固執せず、代わりにそれを回避している場合...ええ。
ポールネイサン

1
ライセンスを回避しようとはしていませんが(なぜ質問したのですか)、このような問題に関する状況はどうなっていたのでしょうか。派生作品であるのを止める2つの作品間に時間制限または差額はありますか?そうでなければ、オープンソースコードを研究することから学んだ知識を使用できないように思われますか?
クリスバリー

オープンソースコードに基づいたアプリケーションの販売を止めることはできません。実際、オープンソースの定義(オープンソースイニシアチブによって与えられた)は、これを明示的に許可しています。ただし、ライセンスに従う必要があります。これは、OPのジレンマです。App StoreとGPLの条件が矛盾しています。これがここでの問題です。
マーティンVilcans

2

あなたのコードを維持することになった人があなたがどこに住んでいるかを知っている暴力的なサイコパスであるかのように常にコードします。〜マーティン・ゴールディング

私は弁護士ではないので、そのように答えるつもりはありません。その上、他の多くの非弁護士の人々はすでにあなたのアイデアの法的影響についての考えを提供しています。そして、私は道徳/倫理の議論をスキップします。

私があなただったら、開発者としての影響にもっと関心があるでしょう。それは敬意です。特に自尊心。

確かに、私たちは皆、「{specification}のHow d'ya {implementation}?」を探しに行きます。時々それがスタックの起源です、アミライト?それが、私たち全員がここで見つけた方法ですよね?それはあなたが話していることではないので、それは私が話していることではありません。

天才のストローク+英雄的な努力=そもそも開発者コミュニティに提供する価値のある結果を組み合わせて、人々がそれを使用するのに十分なほど気に入っていれば、私はお世辞になります。私は大きな時間になるだろう。John Reisig、またはMark Storyのように。少し私。そして、いくつかのチャンプがやって来て、私の貢献をラインアイテムにしたので、彼らはそれを商用またはネイティブの商用アプリに提供できますか?落ちた。

コードは手書きのようなものです。他の合法開発者が2つを並べて「ちょっと待って...」と言うことができないほど、マッチボックスよりも大幅に大きいアプリを変更することはできません。開発者として、私は私の仲間が、私の同僚、私が尊敬し、その尊敬を切望している人々は、私が誰かのコードをジャックしたことを知るでしょう。私は笑いものになります。いくつかの壮大なコピーパスタスクリプトキディbsです。あなたは本当にあなたの仲間の目に自分自身を委任解除したいですか?ジャッキングコードは、開始するための良い方法です。

そして、開発者として、これを考慮してください:それが私のアプリであり、あなたが訴えられることを心配するようにあなたがそれをジャックしたことが分かった場合、私があなたを訴えて地獄を決めると、あなたは現金のスタックを作っていますとにかく私のコードのおかげで、なぜあなたがそれが痛いところにあなたを打つべきではないのでしょうか、多分それを取り戻すのでしょうか?どうやって私が思春期でないか、気性と恐ろしいスキルを持っているかを知りますか?いわば、ウルb0xenのpwn r00 [に移動します。私のアプリをジャッキングすると、私があなたであることが表示されるので(基本:ジャッキでしかできないものを書くことができます)。それは初めてではないでしょう。


2
私はこの答えが本当に好きです。問題は、コードを学習ポイントとして使用し、それを再実装できるかどうかだと思います。200〜LOCのスクリプトだと思うので、それほどトリッキーではありません。私は自分の学習の実例から始めたいと思っていたので、そこから始めるのが理にかなっているように思えました。仮にすべてをpsudoコードで書いてGPLにした場合、私のポートはそれで私を合理的な立場に置くでしょうか?投稿のタイトルは、私が予想していた以上に議論を巻き起こしたと思います。
クリスバリー

日時:議論を巻き起こし、質問の性質を検討してください:専門の開発者は、彼女の心と魂を彼女の工芸品に注ぎたいかどうかを注ぎます。私の時間の何時間も、ソフトウェアの性質は獣であるので、血の汗と涙のバケツ。さらに、私たちの技術は非常に難しいため、オープンソース(jsライブラリ、phpフレームワークなど)への真に優れた貢献があります。 ?したがって、このような質問は、私たち全員が気づいているかどうかにかかわらず、個人的なものです。
-OpenSorceress

つまり、John ReisigやMark Storyのようなオープンソースウィザードと、彼らの気まぐれな子供たちから、私が知っていることのほとんどを学びました。JQueryは私の小さな友達です。CakePHPは私のパンとバターです。これにはまったく問題はありません。したがって、ジャッキングとポーティングの違い。これは、巨人の肩の上に立つということです。
-OpenSorceress

0

派生作品の派生作品の派生作品を作成することはできません... 認識できなくなる可能性がありますが、それは別の問題です。また、任意のテキストから開始し、一連の変更によって任意のテキストを取得することができます(たとえば、最初のテキストを削除し、2番目のテキストを挿入します)。そのため、何かが可能かどうかは重要ではありませんが、実際に起こったかどうかは明らかです(明らかに不可能なことは起こりませんでした)

モラリーな話:(合法的に)到達できるものなら何でも学ぶことは問題ありませんが、情報源を認めるべきです。残りは合法です。

IANAL、しかし、私は何か間違っているとは思わないでしょう:1)オープンソースの実装から学んだ本当に似ている。これらの類似した部分が、両側が同じコーディング慣行に従っており、したがって異なることができないものである場合、これらの部分は著作権保護されません。例えば。クラスに2つのプライベートStringフィールドがあり、ゲッターとセッターがある場合、興味深いのは、このクラスにゲッターとセッターの実装ではなく、2つの読み取り/書き込みプロパティがあることです。


0

各行を個別に書き直す場合、行を「コピー」する場合としない場合があります。

しかし、行の順序付け、全体的な構造化、包含を逐語的にコピーしています。言い換えれば、作品を「全体」にするようなものです。

「この行はここに行く必要があり、この行はそこに行く必要があります」という部分をコピーしています。これは、アルゴリズム全体の大部分です。

さらに、プロジェクトが開始されると、何を含めるか、どのようなことを多かれ少なかれ重要と考えるか、アルゴリズムをどのように構成および構成するかを誰も知りません。この情報は、ある時点で作成および設計する必要があります。しかし、それを「コピー」するので、必要はありません。


例として:

セット{a、b、c、d、e、f}がある場合。

それらの順序付きリスト[f、e、c、b、d、a]を作成できます。順序付けされていないセットには存在しなかった、orderingとして知られる情報をリストに追加したと言わなければなりません。リストのサイズによっては、この情報は非常に具体的でわかりにくい場合があります。


-1

それは他のものと同じです-あなたが学んだ、見た、読んだものを学ぶことはできません...しかし、あなたがコントロールできるのはあなたがそれを使用する方法です...

この問題に関する2つのこと-

  1. ほとんどのライセンスのオープンソースコードの規定と同様に、その上でダイムを作成することは完全にクールであり、「疑似」クローズにすることはクールですが、問題は「クレジット」です。私が購入したMANY、再び((..ブログのURL、使用OSのコード...、など)に与えられた「クレジット」を持っているスクリプトをしかし、問題は、あなたが公然と(隠れていない)誰かの作品にcredsを/賛辞を与えていますさあなたがそうすれば人々は気にしません...多くの場合、人々は彼らが他の場所でそれを手に入れることができることを人々が理解することを恐れて信用を与えません(したがってGPLタイプの規定に違反します)...しかしあなたのコードが公然と(あなたのコードの貢献が閉じられている/開かれているかどうか)-人々は気にしません。

私が開発者として見つけたのは、他の人の努力でお金を稼ぐことを装って、優れた開発者/コーダーを模倣するために、信用を与えずに閉鎖したいということです...

だから私は#2に逃げます...

  1. 「意図」はほとんど(事実上)常にそうです...裁判官の前に立って(あなたが訴えられた、裁判所に連れて来られた、またはそのようなあなたの行動を説明するように言われた)、つぶやくことなく明確に述べることができます問題の位置-コードの「オープンソース」部分を非表示/閉じることを決定した理由、これは問題ではないはずです。

私の2ペンス。:)

面白いのは、ほとんどの人が「特定のアイデア」を発明したと考えていることです-実際、「アイデア」はおそらく(非常に高い確率で)ナプキン、紙、コーディング、インターネット、ブログの形ですでに放り投げられています。等...

だから、特に他の誰かのOS作品で見たことがあるので、それはあなたにとって新しいかもしれませんが、おそらく彼らがOS作品を派生させた他のOS作品で使用されています...そして最終的にはおそらくオンラインのどこかで使用されています。記載されているライセンス/著作権の問題さえありません...その場合、そのソースからコピーすることができます...修正、変更、削除、追加...コードを正当に取得したことを示すために取得しました)

「コードランド」では特に素晴らしいと思います。特に、「巧妙な」コードがすでに2003年に誰かのマニアックなGoogle検索で書かれていることに気づきました。 #1,239のランク、彼らが大学院にいたときに作ったウェブサイトで、楽しく自由に使える機能を作成しているだけです。:)

ポイントは...信用を与える、問題をスカートませんし、他のすべてが失敗したとき...か疑問がある場合はされて-は、ASK yeesh ...使用権の元OS'rを!when慢になったので、誰かにウィードワッカー、ハサミ、芝刈り機を使うように単純に頼むことはできませんでした。

さて、3ペンスでした...


1
問題は、彼が元のライセンス条項を回避しようとしていることです。
ポールネイサン

-4

男に休憩を与えてください!

  1. 法的苦情が彼に提出された場合、それは誰かが実際にコードにアクセスしてそれを読む必要があることを意味します。ソフトウェアがコンパイルされた場合はどうなりますか?

  2. 彼は事実の瞬間に彼の無知をいつでも呼ぶことができるでしょう。有罪と判断される前に善意を持っているはずではありませんか?

  3. 学習はコピーではありません。既存の作品のインスピレーションを見つけることは、間違いなくコピーすることでもありません。それで、もし彼がソフトウェアからコードのすべての行の機能を学び、それを改善するために結果の原則を使用し、より良く、よりシンプルで、よりリーンなソフトウェアを作ることにしたとしたらどうでしょう。私見をコピーしていません。

それらは私の2セントでした。石を投げる最初の罪のない人への番です...;)


3
#1について:あなたのソースコードが裁判官によって召喚され、あなたが「書き直し」を見るとsheep審員にひっそりと笑うまで。
ジャロッドイラクサ

2
#2の場合:著作権侵害は通常民事問題であるため、法的に「有罪」のようなものはありません。証拠の優位性がOPが侵害していることを示している場合、それだけで十分です。#3の場合:元の質問が言ったことではありません。
デビッドソーンリー

1
(1)ソースコードを見ずに露骨な盗作を見つけるのは難しくありません。その上、私たちは、違法で非常に非倫理的な行為から逃れる方法について人々に助言する習慣はありません。(2)無知な法域非弁明無知は防御ではない)(3)行ごとの書き換えは学習しない。行ごとの書き直しは、間違いなく単なるインスピレーションを見つけることでもありません。それは露骨な盗作であり、単純明快です。ここですべてを再ハッシュするつもりはありませんが、法的な文書やこれをサポートする先例がたくさんあります。
グレッグジャクソン

OK、だからもし行ごとに書き直さなかったが、アルゴリズムを理解し、それを自分のやり方で再実装したなら。すなわち、一人の男のクリーンルーム操作。違いますか?そうでない場合、私はそのためにオープンソースプロジェクトから学ぶことを許可されていませんか?
クリスバリー

4
@Chrisクリーンルーム操作の全体的なポイントは、アルゴリズムを実装する人々が元のソースコードをまったく見たことがないということです。「ワンマンクリーンルーム」などはありません。
アダムリア
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.