オープンソースに切り替える9つの理由

この記事では、あらゆる規模の企業がオープンソース技術に切り替えるべきいくつかの理由を指摘したいと思います。 開発者だけでなく、ビジネス(顧客)にとっても有益な瞬間を示すようにします。 これはソフトウェアの最終製品に関するものではなく、Webサーバー、プロキシ、データベースなどのプラットフォームに関するものです。したがって、この記事は非公式であり、数字やグラフはありません。 ただし、以下のリンクでそれらを見つけることができます。 英語のリソースでオープンソース製品を使用することの利点についての議論をよく見ますが、私たちの国ではまだオープンソース製品を恐れています。



それを使用するかどうかを決定する完全な研究はありません。 たとえば、の引数のみが指定されます。 ただし、あなたは反対の議論をよく知っています。 アイテムごとに反例を見つけることができますが、ポイントは統計にあり、リンクで見つけることができます。 ただし、私の意見では、これらの引数はWebアプリケーションに最適です。

順番に始めましょう:



オープンソースアプリケーションの欠陥が少ない



これには、セキュリティ上の欠陥(エクスプロイト機能)も含まれます。 これはなぜですか? 多くの開発者がオープンソースプロジェクトに取り組んでいます。 したがって、欠陥は非常に迅速に検出および除去されます。

客観的な証拠が好きな人は、たとえば、Coverityのオープンソース製品とプロプライエタリ製品のバグ数を比較する記事www.techrepublic.com/article/open-source-vs-proprietaryをご覧ください

その結果:



安全性



かつて、オープンソースはプロプライエタリ製品のセキュリティを失うと考えられていました。 クローズドエンドベンダーは、この引数をよく使用します。 しかし、多くの独立した研究により、現在のオープンソースソフトウェアは平均して、プロプライエタリより安全であることが示されています。

これには多くの要因が関連しています。 たとえば、多くのセキュリティ問題は、コードを直接観察することによってのみ検出できます。 オープンソースコミュニティの参加者はこのような穴を見つけて修正しますが、プロプライエタリソフトウェアではこのような欠陥は何年も見過ごされる可能性があります。

まあ、一般的に-あなたが誰にもあなたのコードを見せないという事実は、それがより良く書かれることはありません。



愛好家はオープンソースプロジェクトに取り組んでいます



ソースコードプロジェクトに携わるプログラマーは、彼らがやっていることのように。 非常に頻繁に、彼らは仕事でこれらのプロジェクトを使用します。 ここではすべてが明確だと思います。 ここから、実際には、以下に説明する他の多くの利点が続きます。



怠け者はオープンソースで作業する



「プログラマーは働く」という意味です。 「プログラマー」==「怠け者」。 事実、本当に怠け者のプログラマーは、自分の作業をより簡単に、より速くする機会を常に見つけます。

世界中で、誰もがルーチンを常に除外できることを長い間理解しています。 あなたがプログラマーであり、日常的な仕事をしているなら、それについて考えてください。あなたは何か間違ったことをしているのです。

世界中のWeb開発者が、タスク実行(さようなら、Windows)にコンソールアプローチを選択し、足場、スクリプトを使用する理由です。

ロシアの専門家の間では、何らかの理由で、コンソールは敬意を払われていませんが、無駄です-これが禅と生産性への道です。

たとえば、Meteor.jsプラットフォーム(http://meteor.com)にアプリケーションをデプロイする方法は?



$ curl https://install.meteor.com | /bin/sh $ meteor create myapp $ cd myapp $ meteor
      
      





それだけです! データベースがサーバー上ですでに回転している、動作中のアプリケーションがあります。 1つの簡単な動きで、インターネット上でアプリケーションを公開できます。



  $ meteor deploy myapp.meteor.com
      
      





ここで問題は、最も単純なJava EEアプリケーションをデプロイする方法ですか? 妥当性の文脈における悪い例ですが、それでもです。 Oracle ADFデプロイメントを例にとると、非常に残酷です。 まず、コンソールではできません(マウスに手を引っ張ります!? ほとんどの場合、Eclipse、Idea、またはNetbeansをダウンロードしてインストールする必要があります。 次に、Tomcat、Glassfish、WebLogic、またはそこにあるサーブレットコンテナに使用するその他のものをダウンロードしてインストールする必要があります。 IDEを起動し、小さなマウスをクリックすると、運が良ければすべてがすぐに開始されます!

現時点では、meteor.jsの開発者は既に機能的なアプリケーションを作成しています(http://www.smashingmagazine.com/2013/06/13/build-app-45-minutes-meteor)。



コミュニティサポート



多くの場合、トップマネジメントは、サポート契約を利用できるため、独自の製品を選択します。 「私たちは...とパートナーシップ契約を結んでいます!」というスタイルの感嘆符を繰り返し聞いています。 しかし、このバックボーンには問題があるでしょう、私たちは何をしますか?」

実際、大規模な主流プロジェクトの周りには大きなコミュニティがあり、常に問題の解決を支援する準備ができていますが、契約があるにもかかわらず、Oracleなどのサポートリクエストは数か月間解決されない場合があります。

コミュニティは、あなたと同じ開発者で構成されており、おそらく誰かが遭遇したのと同じ問題を抱えています。

とにかく、オープンソースの場合、プログラマーは常に次の段落で説明するように、問題を自分で解決する機会を常に持っています。



プロジェクトの開発に貢献する機会



プロプライエタリなソフトウェアとは異なり、オープンソースプロジェクトに自分で変更を加えることができます。 もちろん、これはビジネスの議論ではありません(「他の人のプロジェクトの開発に時間を費やす必要があるのはなぜですか?」)。 しかし、専門家自身にとって、これは非常に便利で楽しい経験です。 さらに、前述したように、欠陥をブロックする問題は、この場合、はるかに速く解決できます。



より速い開発速度



製品の市場投入までの時間(Time To Market、 en.wikipedia.org / wiki / Time_to_market )ははるかに短く、ポイント2と3から直接続きます。



安い



コメントはありません。

さらに、プロプライエタリな製品は、インフラストラクチャの規模に比例して継続的にお金を引き出します。



迅速に適応する能力



現在、技術は急速に変化し、発展しています。 オープンソースプロジェクトは、プロプライエタリソフトウェアよりも変化に適応する傾向があります。



チョイス



アフィリエイト契約ではなく、解決したい問題に基づいてプラットフォームを選択してください。 ここにプラットフォームの全範囲があり、あなたは誰のリリース計画にも依存していません。



このテーマについて読むと便利です。




All Articles