クローズドソースのプログラミング言語は生き残ることができますか?[閉まっている]


12

友人がプログラミング言語を書いています。SGMLを連想させる構文を持っています。彼はそのためのインタプリタとIDEを書きました。彼と彼の同僚は社内でサーバーサイド言語として使用しています。また、コマンドラインツールを作成するためにも使用できます。

彼は、人々がそれを使用するためのライセンスを購入することを期待して、それを一般に公開したいと考えています。彼は、言語の実装を表現するコードを自分自身に保持したいと考えています。その中にはかなりの知的財産が縛られているからです。

私は彼に、クローズドソースのプログラミング言語の時代は終わったと言い続けています。「すべての主要言語を見てください。大半はオープンソースです。社外の人に自分の作ったものに注意を払ってもらいたいのなら、あなたもオープンソースにしなければなりません。」

彼に良いアドバイスをしていますか、それともあなたが支払う独自の言語の余地がありますか?

デンは、「...言語がどのようにクローズドソースになり得るかを説明してもらえますか?」と尋ねました。

「@Denあなたは良い点を言います。私の友人が避けたいのは、MicrosoftがJavaに似た言語を作成し、J ++と呼んで、そのJava性についてSunと訴訟を起こす状況です。 。実装によってビジネスが停止する可能性のある会社によって、構文およびプログラミング手法がハイジャックされるのをどのように保護しますか?」


あなたは彼に良いアドバイスを与えています。
バジルStarynkevitch 14

14
クローズドソースの問題ではなく、お金の問題です-プログラミング言語にお金を払う人はいません。
ファラプ14

8
言語がお金に見合うだけの十分なものであれば、人々は喜んで支払います。言語は、特に無料の代替品と比較して、金額に見合うほど十分ではないに違いない。
user253751 14

1
あなたの友人が実際の言語を著作権で保護できるとは思いません。SASに関するEU判決をご覧ください
コリンピカード14

7
「プログラミング言語にお金を払う人はいません」-特殊な業界やユースケースを除きます。頭に浮かぶのはWolfram(wolfram.com/language)です。有料言語のリストは、コストに見合う他のユースケースを強調します。
フライハイト14

回答:


10

答えは「はい」と「いいえ」です。それは潜在的な顧客の商業的動機と言語の属性とそれが解決する問題に依存します。

いいえ、個人または小さなチームによって作成された別の汎用コンピューティング言語は必要ありません。Perl、Python、Ruby、Java、およびJavascriptが作成されたとき、満たすべき空白があり、独自の言語は高価であり、参入障壁は低かった。Rebolは有料で開始され、現在は無料です。C#とGoを見て、多かれ少なかれ自由な言語であっても、それが今どれほど難しいか、チームがどれほど大きいかを見てください。

しかし、はい、世界は特定の役割の全範囲を満たすためにニッチな言語をひどく必要としており、それらのために十分に支払うでしょう。あなたも私もそれらのほとんどを聞いたことがないので、例を引用することはできませんが、それらは非常に特殊な状況で日常的に使用されており、クリエイターのためにお金を稼いでいます。問題を解決すると、報酬が支払われます。

それで、あなたの友人がお金を稼ぐために、彼は3つのうちの1つ以上を必要とします。

  1. 彼の言語が利用可能な最善のソリューションである識別可能な技術的ニッチであり、できれば競合他社を減速させるためのかなり高い障壁を備えている。
  2. 自分の言語が解決できる問題と、解決するために支払う能力がある特定可能な顧客セグメント。
  3. 事前に記述された一連のコード、ドキュメント、チュートリアル、スキルにより、お客様はすぐに作業を開始し、すぐに問題の解決を開始できます。

中小企業に依存することで言及された問題は、プログラミング言語に固有のものではなく、商業的な手段で簡単に解決できます。

開示:私は、多くの人々がソフトウェアビジネスを構築するのを支援した商用プログラミング言語システム(Powerflex)の著者です。インターネットウィンドウが開くと、そのウィンドウは閉じました。


20

言語は、オープンソースでもクローズドソースでもありません。たとえば、G ++はオープンソースであり、MSVC ++はクローズソースです。ISO C ++はどちらでもなく、非フリーで非独占的な標準です。

友だちは、オープンソースの非最適化実装をリリースし、派手な最適化コンパイラを販売できます。興味深い知的財産は、簡単な実装には必要ありません。

このモデルで動作する既存の言語はPHP / Zend Serverです


17

彼の言語は、十分な人々がお金を払うような何かをしますか?

ビジネスモデルが機能するかどうかを決定するのは、それだけです。ライセンスコストを気にしないほど十分に大きなユーザーの市場がありますか?この言語は、顧客がそれなしでは生きていけないデバイスや標準をサポートしていますか?この言語を使用するだけで、最高の優秀なプログラマーを雇い、生産性を大幅に向上させることができ、経営者はそのトレードオフを理解できますか?

これらのいずれかまたは同等のものが該当する場合、ビジネスモデルはおそらく機能します。そうでなければ、おそらくそうはなりません。遅かれ早かれ、誰かがより安価な代替品への切り替えを伴うコスト削減策を思い付くでしょう。


3
いい質問ですが、新しい言語であるため、これらの質問の大部分は否定的に答えなければなりません。若者が仕事に就こうとしているようなものです。若すぎて仕事をすることができない場合に、どのように経験を積むという要件を満たしますか。
bugmagnet 14

1
あなたの答えは非常に多くの賛成票を受け取ったので、言語がどのようにクローズドソースになり得るかを説明してください。
デン

@Den良い点を挙げます。私の友人が避けたいのは、MicrosoftがJavaに似た言語を作成し、それをJ ++と呼んで、そのJava性についてSunと訴訟を起こす状況だと思います。実装によってビジネスが停止する可能性のある会社によって、構文およびプログラミング手法がハイジャックされるのをどのように保護しますか?
bugmagnet 14

14

いいえ、小さな会社が販売している独自の実装で新しい言語を使用する余地はないと思います。

第1に、開発者には他の多くの無料の(少なくとも「ビール」として、そしてしばしば「スピーチ」として)言語実装があり、彼らは(高価な)言語を試そうとはしません。

第二に、言語実装を提供している小さな会社が破産した場合、マネージャーはすぐに異議を唱えます。この議論は、おそらく誰もが言語実装を購入することを禁止するでしょう!

対照的に、顧客がフリーソフトウェア言語の実装を大まかに評価することができ、それを書いた元の会社が破産した場合、別のプロバイダーへのサービスを常に処理できます。

クライアントの観点からは、新しい言語を採用するコストは実装のライセンスではなく、それを使用するために必要なスキルにあります。

そして、ほとんど使用されていない多くのフリーソフトウェア言語の実装があります。


5
それらはより大きなパッケージの一部ですが、Matlab、Maple、MathematicaおよびUnrealScriptを使用するためにお金を払っています。
トリリアン14

7
しかし、これらは小さな未知の会社からのものではなく、それらを販売する会社は前世紀に始まりました。
バジルStarynkevitch 14

3
@Trillian:また、チューリングが完了しているにもかかわらず、あなたが言及した言語は汎用言語ではなく、特定のプラットフォーム、最初の数学およびグラフ作成プラットフォームで使用するために特別に作成され、ゲームエンジンは最後になりました。これらのプラットフォームは、これらの言語を価値のあるものにし、プラットフォームの機能を必要とする人々のために新しい言語を学ぶ面倒をもたらしました。おそらく、彼らは言語だけでなくプラットフォーム全体を販売しています。
ライライアン

5

言語をクローズソースにすることはできません。そのコンパイラとランタイムライブラリは、クローズドソースにすることができます。ただし、言語の正式な文法は秘密として保持し、法的に保護(NDAなど)して使用料を徴収することができます。

あなたの友人は、言語がとても新しくて斬新なものである場合、知的財産または特許を主張することができます。私自身は、これが努力する価値があるかどうかに疑念を抱いています。

最近では、クローズドソースのアプローチと同じ効果を達成するためにどれだけ骨の折れる作業が行われようとも、ほとんどの企業は公に利用可能なテクノロジーを最初に選択します。次に、オーバーヘッドが非常に大きい場合、業界標準のソリューションである、標準化された独自言語(Matlabなど)に進み、十分な浸透とサポートが得られます。

社内言語は通常DSL(ドメイン固有言語)として構築されており、最近では他の誰かのDSLを購入してそれを適応させるよりも労力が少なくなっています。また、DSLは問題領域に非常に固有です。

さて、あなたの友人が彼の言語を収益化することを思いとどまらせないでください。これを行う方法はあります-大規模な既成企業に販売するか、一部の投資家にアイデアを購入させて投資することですが、アプローチの主な問題は、開発問題を調査せずにソリューションを開発したことです。そして、それがどのような問題ではありません、彼は問題を考えて、それが何で彼の潜在的な顧客が問題を考えます。だから彼は外に出て、彼の解決策の詳細を明かさずにこれらの仲間と話をし、それらの人たちに支払いをしてもらうことができた。


4
「言語の正式な文法は秘密として保持することができます」-誰もその文法を知らなくても言語を使用できるでしょうか?
el.pescado

2
@ el.pascado:この言語を使用したい人がNDAに署名するようにすることで、それはうんざりしますが、一部の無知なマネージャーはそれを良い考えだと思うかもしれません。
ライライアン

3

クライアントの1人がColdFusionを使用して主要なアプリケーションを開発することを検討したとき、私はこの議論を自分でしました。個人的には、PHPを使用できる(そして料金を支払わない)ときにCFを使用する(そして料金を支払う)理由を考えることはできません。しかし、CFの背後にはOSS恐怖症を和らげる大企業があり(十分なITマネージャーと取引し、最終的にそれらの一部を実行することになります)、十分な開発者が実際にそれを好むほど十分です。

しかし、キャッチはもちろん、あなたの友人が十分に良いものとその背後にある十分な支援を考え出す必要があるということです。前者は、完全に成熟したオープンソースプラットフォームがすべて揃っている最近の卑劣なトリックではありません。後者は、少なくともAdobeのような規模のパーティの支援を必要とします。

OSSと比較して、CFでさえわずかな市場シェアを持っているという事実は言うまでもありません。

要約すると、あなたの友人が、PHP、Python、友人ビジネスに精通し、市場のより大きくて評判の良いプレーヤーの1つに販売するのに十分なものを思い付くほど素晴らしい場合、答えは「たぶん」です。そうでなければ、それは圧倒的な「ノー」です。


2

この場合、答えは間違いないと思います。持つ新しいによって駆動言語小規模事業体は、重大なバグや行方不明の重要な特徴の高リスクの原因となります。

その言語がプロプライエタリである場合、ユーザーが必要とするペースで言語が必要な方向に進化しなければ、ユーザーとして絶対に台無しになります。言語が無料の場合は、問題にお金や人材を投じることができます(少なくとも大企業の場合はオプションです)。

あなたの友人は、補完的なサービスや製品を販売する方がはるかに良いでしょう。サポート、トレーニング、コンサルティングを提供します。特別にリクエストされた機能の追加に対して支払いを受けます。ツールを提供します(たとえば、一般的なIDEの商用プラグインの形で)。一部のライブラリを商用ライセンスモデルに基づいて提供します(ただし、適切な制限の下にソースが含まれています)。


1

私はあなたの友人を落胆させることを嫌いますが、このツールが生産性の信じられないほど大きな利益をもたらさない限り、彼は最近人々に開発ツールにお金を払うように説得することはありそうにないと思います良い考えを考えながら画面で!!!」)。良くも悪くも、無料ツールの量と質が優れているため、最近では「有料」開発ツールの市場はほとんどありません。(Java、Ruby、Python、Clojureなどの証言言語-EclipseやLightTableなどのIDE-MySQLやPostgreSQLなどのデータベース-リストはどんどん続きます)。この努力で彼に幸運を祈ります。


言語に関しては、あなたはポイントを持っているかもしれません。ただし、有料の開発ツールの市場はまだあります。最後に聞いたのは、MS、Adobe、JetBrainsなどが現金を正確に傷つけているわけではないということです。無料の「ライト」または試用版のどこかに議論があるようです。
cHao 14

1

できる。もしそれが:

  • 良いおよび/または十分に有用
  • それが十分に簡単に適用できる場合
  • あまり高くないなら

実際に-初心者にとっては、最初の2つのアイテムが本当に強く、実際の価値と比較して非常に割引いているはずです。

私はほとんどの人が邪悪なマネージャーに文句を言うのを見て、それに対して多額の金を払うことを好まないでしょう。彼が毎年500ドルを要求し、毎年何百時間もの労働時間を節約できるとしたらどうでしょうか。スマートなマネージャーなら誰でもそれをつかむでしょう。


0

それは、その言語が私(顧客を代表する)がそのためにお金を払っても構わないと思っているほど独創的なものを提供するかどうかにかかっています。

プロジェクトマネージャーとして、次の点を考慮する必要があります。

  • 新しい言語を習得/習得す​​るのにかかる時間。
  • 他の言語と比較した効率の向上(納品までの時間)。そして、それを学ぶ時間を圧倒しますか?
  • この言語は、他の言語ではほとんど解決できない問題を解決しますか?
  • この言語は5年後も引き続きサポートされますか、お客様は別のリクエストを行う必要がありますか?

最初の3つのポイントはすべての言語に適用されます。特に、最初の1つは、新しい言語ごとに克服するのが困難です。

4番目のポイントは、私がサードパーティに依存している言語のように、クローズドソース言語にのみ適用されるものです。これは、5年後に存在するかもしれません。5年前、モバイルアプリは今日ほど大きなものではありませんでしたが、当時の言語は現在の状況に適応し、モバイルアプリも作成できるようになりますか?新しい要件にも適合しますか?顧客にそのような要件がある場合、その言語の開発者に連絡して、アップグレードのリクエストを提出できますか?

これらの質問のいずれかが「いいえ」で答えられた場合、それは世界で最高の言語になる可能性があり、私はそれを使用できません。そして、「余暇」にこの言語を発明し、現在は独身の会社として働いている人がいると聞いた場合、私はそれについて非常に疑いがあり、非常に確固たる約束が得られない限り、その言語を使用しませんそして、この言語は他の人にはできないことを提供します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.