で 前の記事 オープンソースプロジェクトの開発にかかる費用を見積もりました。 今、私たちはどこでお金を手に入れたり、人々に無料で仕事をさせたり、リソースを寄付したりするのかを見ていきます
資金調達モデルを見つける際に考慮すべき重要な要素
資金調達モデルを選択するときは、さまざまな要因を考慮する必要があります。
関心
最初に考慮すべきことは、プロジェクトが引き起こす関心です。 おそらく、DebianベースのXNUMX万番目のディストリビューションに自発的に貢献する人は誰もいないでしょう。SystemDを使用しないDevuanなどの特徴的な機能がない限り、その費用ははるかに少なくなります。 対照的に、LineageOSまたはUbuntu Touch(GoogleのAndroidの代替品は、開発者やスポンサーから妥当なレベルのサポートを受けています。
私が興味を持って話すとき、私は単にエンドユーザーに言及しているのではありません。 知られているものよりもはるかに侵入不可能な暗号化システムを想像した場合、企業はあなたが彼らのお金を受け入れるので戦うでしょう。
複雑
オフィススイートよりもXNUMXつのこと(たとえば、音楽を再生する)だけを実行するアプリケーションを開発することは同じではありません。 複数の作図オプションを含むワードプロセッサ、数百のアニメーションを含むプレゼンテーション、およびすべての一般的な数式を含むスプレッドシートを備えています。 そしてもちろん、最も人気のある形式を読み取って保存することもできます。
また、Gimpのような単一の目的(画像操作)のために作成されたアプリケーションもありますが、 それらは、専門知識を含む非常に特定の数式の知識を必要とします。
Plataforma
クラウドサービスが普及するにつれ、これは重要性を失っている問題ですが、それでも非常に最新のものです。
Linuxの税計算アプリケーションは、企業やボランティアのスポンサーはもちろんのこと、プロジェクトの一部になりたいと考えているボランティア開発者からはあまり関心を引かないでしょう。 一方、コマーシャルに似た高品質のゲームの場合にそれを手に入れることができれば。
同様に、Android用のアプリにはUbuntuTouch用のアプリよりも多くの可能性があります。
ユーザーインターフェイス
Linux、Windows、Mac用のアプリケーションを開発する場合は、ユーザーインターフェイスを他のアプリケーションと融合させるか、すべてのバリアントに同じインターフェイスを提供するかを決定する必要があります。 Linuxでのみ必要な場合は、デスクトップごとに同じ決定を行う必要があります。
デスクトップ用の特定のアプリケーションを作成することを選択した場合、開発時間を短縮できるという利点があります。興味深い場合は、デスクトップの一部として採用され、より多くの開発者と資金を得ることができます。
プログラミング言語
プロジェクトを作成するためのプログラミング言語が豊富に用意されています。 PythonやC ++のようなものは長い間存在していて、それをよく知っている開発者の大規模なコミュニティがあります。 DartやGoのような他のものは比較的新しいものですが、より現代的であるため、現在のアプリケーション開発パラダイムによりよく適応します。コンポーネントはすでに開発されています。
プロジェクトコンポーネント
選択したプログラミング言語とプロジェクトの目的に応じて、時間を節約できる一連のライブラリと、機能を拡張しやすいアプリケーションプログラミングインターフェイス(API)の選択を見つけることができます。それらを外部サービスに接続します。 一般に、ライブラリ(少なくともオープンソースプログラミング言語では)は無料ですが、APIの場合、ライブラリは無料での使用を制限するか、アプリケーションを使用するユーザーごとに金額を支払う必要があります。
流通経路
Linuxディストリビューションのパッケージマネージャーに加えて、直接ダウンロード、SnapストアとFlatPakストア、およびAppimageパッケージのオプションもあります。 Snapはアプリ内支払いを含める機能を提供しますが、ElementaryOSのようなディストリビューションにはソフトウェアを販売できるアプリストアがあります。 AndroidとiOSの公式ストアは、開発者に課す虐待的な条件について疑問視されていますが、Microsoftは、Windows11向けの製品の作成に関心のある人に寛大な条件を提供しています。