5

誰かが私に、彼らがやりたいと思っているたくさんの奇抜なことをサポートするために、多くのカスタマイズを備えた youtube クローンを作成するように頼んだとしましょう。

ホワイトラベルまたはオープンソース製品から構築するよりも、ゼロから構築する方が良いかどうかを判断するにはどうすればよいですか?

私の過去の仕事経験のために、私は自分が構築しているものの詳細を知ることができるので、ゼロから構築することに偏っています。これにより、リリース後のサポートとスケーラビリティが向上します。私のチームの誰も経験のない既製のソリューションに取り組むことに抵抗を感じる. 何が得られるのかよくわかりません。それが私がやりたいことをすべて実行するかどうか、それがどれほどよく文書化されているか、そして6か月後に頭を撃つかどうかはわかりません.

使用したことのない既製のソリューションが非常に多くあります。ゼロから構築するのが良いアイデアかどうかを判断する前に、それらすべてをどのように評価すればよいでしょうか?

予算が限られている人のためにこれを構築しているのに、彼らが将来的に私に多くのサポートを期待しているとしたら? (つまり、ソリューションを購入するのは予算に合っているが、その後のサポートについて心配している)

4

10 に答える 10

2

投稿された質問から:

「私の過去の仕事の経験のために、私は自分が構築しているものの詳細を知ることができるので、ゼロから構築することに偏っています。」

気分を害するつもりはありませんが、Not Invented Here 症候群のようです。これは一般に「悪いこと」(tm) と見なされます。一方で、Joel Spolsky は次のようなアドバイスをしてくれます。

「それがコアビジネス機能なら、何があっても自分でやれ」-- ジョエル・スポルスキー

では、奇抜な YouTube クローンを作成することはあなたのコア ビジネスですか?

于 2009-12-09T16:56:12.933 に答える
2

クローンを構築する際には、ゼロから始める方が快適です。なぜなら、あなたは優れた実証済みの例を持っているからです。(究極の仕様!) 既存の製品に合わせて他のシステムを評価/実装しようとすると、基本コードが最終目標に向かって機能しない場合、深刻な頭痛に直面する可能性がはるかに高くなります。また、メンテナンスに関するすべての考慮事項に同意します。

また、システムの評価には時間がかかり、絶対確実ではありません。私はかつて、サードパーティのグリッドを決定するのに 1 か月を費やしましたが、最終的には基本的にサイコロを振るだけでした。1 か月間で 12 個の製品を評価しました。どのくらいの機能に触れることができますか? 5%かな。

于 2009-12-09T16:50:35.740 に答える
1

既製の製品の経験がないということは、誰もそれを経験したことがないという意味ではありません。Web を見回して、ここで質問してください。他の人が特定の製品で良い経験をしたことがあれば、おそらくあなたもそうするでしょう。

そして、保守側では、1 年後に保守を行う人々は元の開発に関与していない可能性があり、コードが社内で作成されたかどうかにかかわらず、それが適切に作成されている限り、彼らには何の違いもありません。

于 2009-12-09T17:00:06.420 に答える
1

納得できるライセンス条項 (たとえば、GPL で作品をリリースする予定がない限り、GPL ではない) を持つオープン ソース プロジェクトを見つけることができた場合は、少なくともそのコードを見て、いくつかの方法についての一般的なアイデアを得る必要があります。同様のプロジェクトが機能しました。次に、オープンソース プロジェクトが、あなたがやりたいことと十分に似ているかどうかを判断する必要があります。もしそうなら、それを構築してください。そうでない場合は、それが与えたアイデアの功績を認め、あちこちからスニペットを借りて、(ほとんど)自分で(ほとんど)ゼロから書きます。

構築する作業がクローズド ソースまたはオープン ソースであるが、非常に複雑で理解したり変更したりすることができない場合は、自分で作成する必要があります。私にとっては、何か問題が発生した場合や、希望どおりに機能しなかった場合に、既製のソリューションを修正できるかどうかにかかっています。

于 2009-12-09T16:49:31.353 に答える
1

質問 #1: このサイトを維持するための長期的な計画は何ですか?

何十年にもわたる構築/購入の決定を振り返ってみると、これは最初に尋ねるべきであった唯一の最も重要な質問です.

于 2009-12-09T16:43:28.040 に答える
0

それはすべて、機能、制約、拡張性、およびコストに帰着します

市販の製品に 3 つすべてが含まれていて、それを作成するのにかかる費用よりも安い場合は、それを購入します。

于 2009-12-09T17:04:09.270 に答える
0

見積もりができない場合は、さらに情報を収集(調査)します。

両方のソリューションのコストと利益を見積もると、プロジェクトをまったく実行しない可能性がある場合でも、決定が下されます。

実際、見積もり/調査には、活用できるすべてのものを見つけることが含まれます。

これがプロジェクトの開始方法です。幸運を!

于 2009-12-09T16:46:55.337 に答える
0

ユーザーが望んでいることの約 90% を実行するパッケージを特定できる場合は、そのパッケージを使用しますが、そのパッケージがサポートしていない 10% をユーザーが喜んで放棄する場合に限ります。実際、ほとんどのユーザーは賢明であり、特にカスタム開発よりもはるかに安価であるため、このオプションに飛びつきます。ただし、ユーザーが自分のニーズに 100% 準拠することを主張する場合は、カスタム開発に進み、それに応じて計画と料金を請求します。

于 2009-12-09T16:53:43.190 に答える
0

重要な要因のリストを決定し、さまざまな詳細レベルで各製品を調べます:D

于 2009-12-09T16:42:25.797 に答える
0

選択肢をもう少し定量化して、決定に役立てることができます。

何を構築する必要があるかについて予備的な見積もりを行い、各パーツの複雑さを評価すると、構築にかかる時間を大まかに見積もることができます。(これには、前もって設計について少し考える必要があります。) 次に、時給で働いている場合は、その労働量を計算し、予期しない問題を考慮して 1/3 増やし、統合する予定のツールまたはパッケージのコスト。

既製の部品はまさにあなたが望むものを実行しますか、それともカスタマイズが必要ですか? カスタマイズの程度は?それはどのくらいかかりますか?あなたの人件費はいくらですか?

そのコストを既製のコンポーネントを購入するコストと比較してください。節約は相当なものですか?

于 2009-12-09T16:48:46.567 に答える