見出し画像

成功への道:オープンソースプロジェクトを立ち上げる・推進する方法

 今回のテーマは、「成功への道:オープンソースプロジェクトを立ち上げる・推進する方法」です。私たちの経験や事例をぜひ参考にしていただければ幸いです。では、はじめましょう!


オープンソース文化の規模は?

 オープンソースという言葉、よく耳にしますよね。今ではオープンソース文化が主流となっていると言っても過言ではないでしょう。

 オープンソース運動がどれほどの規模かご存知でしょうか?

 現在、世界中には約20万件のオープンソース・プロジェクトが存在すると言われています。かなりの数ですね。

 2018年のオープンソース開発比較調査(arxiv.orgより)では、77カ国に分布するGitHubのオープンソースプロジェクト5,388件が確認されました。

 その結果、最も多かったのは米国で2,302件(42%)でした。

 アメリカに続いて、中国が 754 プロジェクト、イギリスが 336 プロジェクト、ドイツが 236 プロジェクト、カナダ、そしてフランス、日本、オーストラリア、インド、ブラジル、ノルウェーなどの国々が続いています。

 つまり、オープンソースは国内だけでなく、世界的にも非常に重要な存在なのですね。

オープンソースはなぜ必要?

 でも、なぜオープンソースが重要なのか、その理由は何でしょうか?

 私たちはオープンソースプロジェクトであり、オープンソースが単に無料提供されることを意味するわけではないことを理解しています。逆に、それはまったく異なる意味を持つ可能性もあります。

 オープンソースは、必要で欠かせないツールや最も先進的な技術にアクセスできることを意味しています。

 これらの技術は、その透明性信頼性により、データ保護基準を守るための重要な要素となっています。また、データの独立性を確保するためにも欠かせません。

 オープンソースは、ベンダーロックインに対抗する方法です。

 そしてもちろん、オープンソースはみんなでアイデアを出し合い、革新を進めるためのものです。

 最後に、責任が公平に分配されることで、明確なニーズと明確なマインドによって、機器が共同制作されます。これによって、中央集権と開放性の健全なバランスが保たれるのです。

どのように開発方法を革新しているのか?

 10〜20年前まで、ソフトウェア開発の現場は非公開であり、独りよがりな状況でした。開発者は個室でコードを書き、その一行一行が組織内の上司に承認されるまで待っていました。

 それに対して、オープンソースモデルは、透明性の高い、コミュニティベースのソフトウェア開発を促進します。開発者は、自分のコードを他の人と共有することができるようになりました。その結果、コミュニティは価値あるフィードバック、潜在的な使用例、そして時には実際のコード行を提供し、貢献します。

 ですから、オープンソースモデルはソフトウェアの開発方法に影響を与えることは、驚くことではありませんね。

オープンソースは創造性を広げる

 開発者は、与えられた問題や課題を解決するために創造的で面白い方法を見つけ出そうとしています。自分の心に制限を設けずに、純粋な知的好奇心を目覚めさせることができます。そしてそれは、優れたソリューションを構築する開発者にとっても、そのソリューションを日常生活で活用するユーザーにとっても、良いことです。

 開発者は自分が興味あるプロジェクトを選び、さまざまな分野の開発者と協力して、素晴らしいソリューションを生み出すことができます。

オープンソースは多様性の力を重視する

 チームが様々な視点を持つことは、イノベーションのレベルを向上させ、新しいアイデアを生み出しやすくするかもしれません。

 ソフトウェア開発を例にすると、異なる意見や視点は、製品の真の影響を理解するのに役立ちます。オープンソースのユーザーは、あなたの製品の開発にとって重要な、予想もしていなかったような事例や機能を提供してくれるかもしれません。

オープンソースは、プロジェクトの価値をより理解するのに役立つ

 個人や企業が独自にプロジェクトの真の価値を判断することは難しいかもしれません。しかし、オープンソースの場合、コミュニティの反応はより自然です。もし、あなたのプロジェクトをチェックした人が誰も使いたがらなかったら、それは自分が思っているほど素晴らしいものではないのかもしれません。

 その逆も然りですね。よりポジティブなフィードバックを受け取り、次に進むべきと理解することもできますね。

 コミュニティの意見は、スタートアップ企業が自分たちのアイデアの優れている部分を評価するために役立つものです。同様に、新しい機能を実装しようと考えている開発者や企業にとっても非常に有益なものですね。

オープンソースは、素晴らしいワークモデルを創り出す

 従来のモデルは、企業間の厳しい競争という意味合いが強かったですね。

 しかし、今はコラボレーションやパートナーシップの時代です。もちろん、健全な競争は悪いことではなく、むしろよりクリエイティブになるための方法の一つです。

 私たちは皆、弊社のソフトウェアを通じてユーザーの生活をより快適にするという共通の目標を持っています。

 例えば、上のスライドには、数年前のownCloudのカンファレンスで撮った写真をご覧ください。ownCloudは私たちのパートナーであり、統合ソリューションを利用するお客様により迅速かつ効果的な方法でサービスを提供するために密接に協力しています。

 そのため、現在では多くの開発者や新興企業がオープンソースを選択しています。しかし、そこで疑問が生じます。オープンソースへの移行は成功するために必要な条件のひとつであると言えるでしょうか?残念ながら、そうではありません。そうであれば、あまりにも簡単すぎることになりますよね。

オープンソースはどんな場面でも完璧な解決策ではないし、成功への唯一の鍵でもないよ!

 オープンソースを万能薬や成功への金券のように見る方もいらっしゃいますが、残念ながら、それは真実ではありません。

 オープンソースプロジェクトは、ユーザーの少なさや信頼の不足、大きなマーケットリーダーとの競争など、さまざまな困難に直面することもあります。

 ここで最も大切なのは、自社の製品が本当に役立つものであり、それがどのようにユーザーの問題を解決できるのかを説明することです。なぜその製品を選ぶべきなのか、ユーザーにわかりやすく伝えることが重要です。

オープンソースプロジェクトのリスク

 オープンソースプロジェクトの開発には、他にどのようなリスクがあるのでしょうか? 

知的財産権の問題

 オープンソースは、どこでも利用できる状態を保つことを目指しています。また、オープンソースは、コードの作者に敬意を払うことも重要です。イノベーションを守り、ソフトウェアがその作成チームと関連づけられるようにすることは、大切なことです。

 GitHubのようなプラットフォームは、このような場合に大いなるサポートを提供しています。また、プロジェクトに適したオープンソースライセンスを選択し、他の貢献者がそれをどのように利用するかを明確にする必要性は確かです。

開発チームの排除

 同時に、私たちは仕事を続けられるようにしなければならず、私たちのプロジェクトに基づくサービスを提供し始めた大手ITサービス・プロバイダーが、さらなる開発を支援せずに、開発チームをそのプロセスから排除し、マーケットから放り出すようなことがないようにしなければなりません。これは単なる理論ではなく、残念ながら、毎日起きていることです。

資金提供の有無

 次に重要なのは、そのプロジェクトで収益を上げる意図があるかどうかですね。もしそうなら、開発を続けるためには、どのような方法があるでしょうか。具体的なプロセスを構築したり、適切なチームを探したり、Webサイトに寄付ボタンを設置する必要がありますね。

 ですから、プロジェクトの将来を予め計画しておくことは価値があると思います。

3つの大事なコツ

 基本的に、プロジェクトの成功は、良い品質の製品持続的な開発適切なプロモーションという3つの主要な要素に依存しています。

 オープンソースプロジェクトをより需要の高いものにするためには、3つの側面でバランスを取る必要があります。

 また、世界最高のソリューションを作ったとしても、少なくともある程度の広報活動が必要です。同時に、開発したソフトウェアが高品質であることを確保し、ユーザーを巻き込み、安定して成長し続けることが重要です。

安定したソフトウェアをお届けする

 ユーザーはソフトウェアに一定の品質を期待しています。品質とは、ソフトウェアがうまく書かれているかによって決まる重要な要素です。つまり、ソフトウェアを強固にし、使いやすく、理解しやすくするための取り組みが求められています。

 ユーザーにとって、ソフトウェアが安定していることは、不安定な動作やクラッシュを引き起こす可能性のある素晴らしい機能を備えていることよりも重要ですね。

 ですから、お客様が当社製品を問題なくご利用いただけるように、安定したバージョンを提供しています。

アップデートを定期的に行うことが重要

 また、最新であることも重要です。ユーザーは古くなった製品を使いたくなくなるかもしれません。1年以上前に更新されたプロジェクトは、新しいユーザーを惹きつけることはできないでしょう。それは、そのツールがメンテナンスされていないことを示すからです。

 したがって、私たちは定期的にアップデートと修正を行い、リリーススケジュールに従います。また、ユーザーには次に取り組む予定の内容を私たちのロードマップでお知らせします。

ONLYOFFICE Docs v7.5

 最近、ONLYOFFICE Docsの最新バージョン(v7.5)がリリースされました。この最新バージョンでは、PDFの編集機能や自動ハイフネーション、シート内での改ページとトレーサー矢印、スクリーンリーダーなどの便利な機能が追加されました。

開発者向けプラットフォームへの投稿

 さらに開発者プラットフォームでの可視性は、オープンソースプロジェクトにとって非常に重要だと考えられています。

 例えば、ONLYOFFICEはGitHubQiitaSourceForgeGitLabStack Overflowなどに登録されています。

 新しいユーザーを惹きつける一方で、この方法はユーザーから貴重なフィードバックを得るためにも役立ちます。また、ユーザーが直面する可能性のある問題や、新しい機能についての要望も受け付けることができます。

ディストリビューション形式に対応する

 さまざまなパッケージングと配布形式を利用することで、ソフトウェアを多くのユーザーに提供する機会が広がります。

 ONLYOFFICEは、Fedora、Debian、Ubuntu、CentOSなどの多くのLinuxディストリビューション(GNOMEベースのものを含む)のパッケージ形式をサポートしています。

  • DEBやRPM

  • Snap

  • Flatpak

  • AppImage

  • Docker

  • Kubernetes

  • などなど

さまざまなディストロでプレインストール/利用できるように

 さらに、Linuxfx、Linux Mint、Zorin、Deepin、Manjaroなど様々なディストリビューションに、私たちのデスクトップアプリケーションを予めインストールしたり利用できるようにするという違った方向性でも活動しています。

ONLYOFFICE&KylinOS

 このように、2022年10月に中国国産OSである「KylinOS」から互換性証明書をいただきました。さらに、2023年10月にONLYOFFICEのデスクトップアプリはKylinのソフトウェアストアからインストールすることができるようになりました!

 これにより、これらのディストリビューションのユーザーは、いくつかの追加手順なしに私たちのアプリを直接使用することができます。そして、私たちが知っているように、簡単であればあるほど良いというアプローチは、ここでうまく機能しますね。

他のオープンソースプロジェクトとの連携

 もうひとつ大切なのは、他のオープンソースプロジェクトと協力し連携することです。先ほども少し話しましたが、これは必要なことです。こうすることで、さらに価値のあるソリューションをユーザーに提供することができます。

 他の開発者や企業は、私たちのエディタをさまざまなアプリケーションに連携することができます。例えば、ある会社は独自の文書管理システムを使っていて、その中で文書を編集したいと思っていますが、独自の強力なエディタを作成するのは難しいし時間のかかる作業ですよね。ですので、私たちがエディタを提供します。

 また、さまざまなSync&Shareプラットフォームを使用しており、オンラインでの編集や共同作業が必要な場合もあります。ここでも、私たちはエディタを提供します。ユーザーと私たちの双方に利益があるでしょう。

ユーザーの期待に応えるように

 人々はあなたの製品に対して期待していますので、それを忘れないようにしましょう。もし、その期待に応えることができなければ、利用できなくなってしまいますよ。

 ですから、最初からユーザーに対して正直である必要があります。提供できない機能を約束してはいけません。ユーザーがある会社のウェブサイトを開いたとき、その会社が何を提供していて、その製品がユーザーのニーズをどのように満たすことができるかをすぐに理解できるようになります。

良い構成を持ったドキュメントも大事

 良い構成を持ったドキュメントは、成功に重要な要素です。

 良い技術ドキュメントがない場合、新しいユーザーにとって注意喚起のシグナルになることがあります。ツールが簡単に使えないのであれば、ある程度のドキュメントが必要です。ツールの初心者から上級者まで、経験レベルに合わせた情報を提供してください。そうすることで、ソフトウェアのユーザーは何を読めばよいかがわかり、時間の無駄遣いを避けることができます。

 ONLYOFFICEでは、ユーザーにドキュメントを提供するだけでなく、開発者向けのAPIも提供しています。これにより、弊社の製品の機能を公開し、異なるONLYOFFICEコンポーネントと対話するための主要なメソッドを提供し、他の開発者にプログラム的なアクセスを提供しています。これは素晴らしいことだと思います。

ユーザーが製品を使いこなすために

 初めて製品を使う方にも配慮しましょう。製品に詳しい人でも、初めて使用する方は経験が不足しているため、理解しづらいことがあるかもしれません。使い勝手の悪いソフトウェアはあまり好まれないものですね。

 そこで、私たちは、ドキュメントの他に、ハウツー記事、ガイド、ビデオ、デモ、ウェビナー、トレーニングなどを提供しています。

 また、ビデオチュートリアルを通じて、製品の動作を確認できるため、新しいユーザーを惹きつけることができます。さらに、ライブウェビナーやトレーニングでは、質問を受け付ける機会となります。

あなたのコミュニティはあなたの力だ!

 オープンソースプロジェクトにとって欠かせないのは、そのコミュニティです。それは貴社を大いにサポートしてくれることでしょう。

 ONLYOFFICEでは、日々貢献者コミュニティを築いています。コントリビューターの皆さんには、製品のテストや翻訳の手助けをお願いしています。また、便利なプラグインの開発やバグの報告もお待ちしております。もちろん、コントリビューターの皆さんには報酬をお支払いしています。

 また、何かの報酬や新しいアイデアに投票することで、コミュニティに支援をお願いすることもできます。私たちは、コミュニティが大きな力を持っていると考えています。

ユーザーと交流する

 コミュニティのトピックを継続する際には、SNSやフォーラムでユーザーと交流することも大切です。現在、SNSは私たちの日常生活になくてはならない存在ですね。

 フィードバックを得るための役立つ情報です。また、ユーザーが製品について質問がある場合など、サポートを受けることができる別の方法です。

 私たちがよく利用するSNSは、X(旧Twitter)、オープンソースのコミュニティであるFosstodon、私たちのフォーラム、そしてRedditです。

ユーザーの成功事例を紹介する

 プロジェクトを見つけた経緯や利用方法についてユーザーに尋ねるのは、良い考えですね。そうすることで、ソフトウェアの影響を正しく把握し、改善策を見つけることができます。

 これは、利用ケースや成功ストーリーを収集する理由なのです。

 他の人々がこのストーリーを読むことで、あなたのプロジェクトをより理解し、誰かが簡単に試してみることを考えるかもしれません。

 例えば、ONLYOFFICEと日本の鉄飛テクノロジーの「FileBlog with ONLYOFFICE」というケースです。ONLYOFFICE DocsはFileBlogという文書管理システムに統合されています。詳細は公式ブログに掲載されていますので、ぜひご覧ください。

自社のチームを紹介する

 ソフトウェアの重要な点は、単にプロジェクトそのものではなく、その背後にいる人々やチームにも関心を持つことです。そのため、自社のプロジェクトについて話すだけでなく、自分自身や自社のチームについても話せるようにすることが理想的だと考えています。

取材や講演には喜んで応じる

 自社の知識を共有したり、解決策を示したりする機会があれば、その機会を積極的に活かしましょう。そうすれば、人々の目に留まる可能性が高まります。ですから、私たちは、このようなインタビューや講演の機会に積極的に参加しています。

 そして、私達自身もそのような機会を探しています。率先して行動することも重要ですね。

オープンソースのイベントに参加する

 オープンソースのイベントやカンファレンスは、そのような場所にも適しています。OSCFOSDEMFOSSCOMMCodeconなど、すでに多くのイベントに参加していますが、これは非常に素晴らしい経験です。

 新しい人と出会い、新しいアイデアを得ることができます。また、自分の製品に興味を持ってくれる人がいることは、本当にうれしいことです。

オープンソースの取り組みや組織に参加する

 最後になりますが、私たちはさまざまなオープンソースのイニシアティブや組織にも参加しています。例えば、オープンソースビジネスアライアンスやLinux Foundationなどです。

 私たちは、オープンソースの発展には、お互いの協力が重要だと思っています。

オープンソース ≠ 無料

 オープンソースの製品について、何か無料で、コストのかからないコードの一部だと考えている友人がいるかもしれませんね。しかし、その考えは実際には真実ではないのです。全くそうではありません。

 ユーザーの立場で考えると、ライセンス費用以外にも運用費用やサポート費用がかかる可能性があります。さらに、ソフトウェアが正常に動作し、安全性が保たれ、会社の要件を満たすための予算も必要です。

 これらの費用は最初から予算に含めるべきですが、例えばサポート費用を削減すると、オープンソースのソリューションがプロプライエタリのソリューションよりも高くなる可能性があります。

 ソフトウェアを開発するオープンソースプロジェクトの開発者として、報酬を得る方法はいくつかあります。それは特定の顧客向けのカスタムビルド、アップデートやプロフェッショナルサポートの提供、トレーニング、セキュリティ修正、他のソフトウェアとの統合など、さまざまなコンサルティングサービスです。あなたよりもあなたのプロジェクトについて詳しい人はいませんからね。

ONLYOFFICEの実績

 さて、その結果はどうでしょうか?

 ONLYOFFICEは、チームメンバー間のコミュニケーションを改善するための小規模なプロジェクトから始まりました。そして、今ではパソコンやモバイルデバイス、ローカルネットワーク、パブリッククラウドなどで使用されるユニバーサルなオフィスアプリとして、世界中で1000万人以上の人々に利用されています。

  • Docker Hub上でONLYOFFICE Document Serverは5000万以上のプル

  • 700以上のパートナーシップ(アフィリエイトを含む)

  • 230以上の統合・連携(様々なSync&ShareやDMSプラットフォームとすぐに使える約30の統合と、様々な開発者による200以上のウェブサービスへの組込みを含む)

  • GitHub上の158のレポジトリ

  • 2022年、ONLYOFFICE Docsの3つのメジャーアップデートに加え、修正を加えた6つの中間リリースをしました。

 私たちは本当に満足していますか?間違いなく、そうです。ただし同時に、全力を尽くし、さらに改善し続けるつもりです。

ONLYOFFICEをフォローしよう!

GitHub

もしONLYOFFICEプロジェクトにご興味を持たれたなら、ぜひGitHubの公式ページで詳細をご覧になり、すべてのコンポーネントのソースコードをご確認ください。

Qiita

また、Qiitaで投稿しておりますので、ご興味がありましたらぜひチェックしてください。

X(旧Twitter)

英語、そして日本語のX(旧Twitter)もありますよ!ぜひぜひフォローしてください🙇‍♂️

ONLYOFFICEに貢献しよう!

 さらに、ONLYOFFICEのコミュニティへのご参加とコラボレーションは大歓迎です。皆さまのスキルを活かし、貴重な経験を得るために、さまざまな選択肢を提供いたします。

おわりに

 最後に、成功への道は簡単ではないことをお伝えしたいと思います。

自分にとってのインスピレーションの源や生涯プロジェクトを見つけましょう。自分が得意なものや他の人よりも優れていることを見つけてください。もしすでに生涯プロジェクトが見つかっている場合は、常にそれを改善し、自己の成長を追求しましょう。

 だから、一緒に頑張りましょう!何事も可能ですから!



みんなにも読んでほしいですか?

オススメした記事はフォロワーのタイムラインに表示されます!

Twitterで最新情報を発信しています。 ぜひフォローしてください ♪