あなたの特定の質問に関して、私は「より経験豊富」だと思います。私は、Java や ASP が登場する前の Web デザインの初期に、ColdFusion によく似たオープン ソースの Web アプリケーション言語とテンプレート システムを共同開発しました。興味があれば、まだhttp://www.steelblue.com/で見ることができます。開発当時の会社では今でも使われていますが、他では考えられません。
私が見つけたのは、あなたがすでに十分につながっていて、人々があなたのしていることを見ているのでない限り、あなたのオープンソースコードを人々に使ってもらうことは、あなたのクローズドソースプログラムを誰かに売るのと同じくらい難しいということです. あなたは自分のプロジェクトを支持する必要があり、競合他社とは一線を画す、ある種のユニークな販売提案が必要です。
だから、それは求められていないアドバイスです。以下は、あなたが持っていた質問に対するいくつかの具体的な回答です... もちろん、すべて純粋に私の意見です.
入れたい機能がない限り、コードを書き直すことはありません。その機能は、特定のプラットフォームまたはコンパイラとの互換性である可能性があります。新しい db データ型やよりスマートなインデックスなどをサポートするためかもしれません。アプリケーションにさらに本格的な作業を加える場合は、次の反復で現実的に達成できることのロードマップと、サイクルの最後にアプリケーションを「最も優れた」ものにするための選択について考えてください。
特定の目的で使用できるようになったらすぐに、コードをリリースします。2つの理由。まず、そのために今欲しい人がいるかもしれません。利用できない場合は、別のものを使用します。また、オープン ソースの場合は、プロジェクトに貢献する可能性があります。第二に、コードをどれだけの人が使いたいかを知るのは早ければ早いほどよい。予想以上に人気があり、開発を続けることに興奮するか、または....あなたのウェブページにアクセスして、あなたが持っているものを見る人さえいないことに気付くでしょう。どちらの場合でも、新しいリリースを計画するときに考慮できるように、人々があなたのプロジェクトに本当に何を求めているかを遅かれ早かれ知ることをお勧めします。
「霧に忘れられた」について。ほとんどのプロジェクトはそうだと思います。がっかりしたくはありませんが、ウィキペディアを見ると、5 つの C++ ORM ツールがあり、言及されるほど人気があり、それらはすべてオープン ソースでした。上で述べたように、自分のアイデアを人々に売り込めない限り、人々は実績のある別のオープン ソース ソリューションを採用することになります。誰かが彼らよりもあなたを選ぶには、次の 3 つのことが起こる必要があります。2. 彼らはあなたのプロジェクトの Web サイトを見つけ、あなたのコードの優位性を示します。3. 彼らはあなたのコードを十分に信頼して試してみます。
一方、これを長期にわたって続けて開発を続けたい場合は、時間の経過とともに問題が解決しやすくなります。最終的に、プロジェクトはすべての基本をカバーし、他のソリューションにはない新しい機能の開発を開始できます。また、アクティブな開発に長く携わっているほど、プロジェクトはより信頼できるように見えます。最後に、ニッチでより多くの経験を積むことができます。今から 2 年後には、あなたの努力がプロジェクトの改善に最も影響を与える場所を明確に示すことができるようになります。
最終的な考え: もしあなたがそれを楽しんでいて、そこから学んでいて、食卓に食べ物を置いておくのに邪魔にならないなら、それはあなたの時間を有効に使っている.
幸運を!
-アル