私は何かを逃しているに違いない。
私の地域でプログラマーを雇うコストは、1時間あたり50ドルから100ドルです。トップエンドマシンはわずか3,000ドルなので、3年ごとに本当に優れたコンピューターを購入するコストは、1時間あたり0.50ドルになります。 ($ 3000 /(150週間* 40時間))
必要 aトップエンドマシンですか?いいえ、ここでの$ 3000は、私が期待する金額ではなく、費やされる可能性のあるほとんどを表します。これはおおよそ、トップエンドのiMacまたはMacBook(17インチ)のコストです。
したがって、より安価なコンピュータを購入することで、3年ごとに2000ドル節約でき、平均的な開発者が60ドルを稼いでいるとします。 (これらは私がBean-counterに提供できる最も慈善的な数字です。もしあなたが1000ドルまたは750ドルを節約するだけなら、それは私のケースを強化するだけです。)それらのより安いコンピュータがあなたに1日10分の生産性だけを費やすなら。 (一気にそういうわけではありませんが、私のマシンではそれ以上のコストがかかると確信しています。)3年以上の間に125時間の損失時間を合計すると$ 7500の損失になります。 1日1分(750ドル)の損失は1250ドルの純利益となり、士気の低下によるコストをほとんど相殺できません。
これは「ペニーワイズでポンドバカ」のケースですか、それとも質問を単純化しすぎましたか?ソフトウェア開発者が優れたハードウェアを持つべきであるという普遍的な合意が(「エンタープライズ」でさえ)ないのはなぜですか?
編集:友人をうらやましく思うような高速パフォーマンスを叫びたいという欲求やSSDについて話しているのではないことを明確にする必要があります。 RAMが通常のワークロードを処理するには小さすぎます。フリーズ、再起動、および通常のアプリケーションを起動して開くのに約20分かかります)月曜日(週末以外は休みません)
私は実際にすぐに新しいマシンを入手する予定であり、それは多少改善されます。 (ここでは2011年に2 GBから3 GBのRAMに移行します。)ただし、新しいマシンは現在の基準では平凡なので、退職日より前に受け入れられなくなることも予想できます。
待ってください!回答またはコメントする前に:
多くの企業がこれに関して正気に狂っています。
真剣に。 「ダニカパトリックに1億ドルを支払ったとしましょう。自転車でインディアナポリス500を勝ち取れると思いますか?」と10,000人のテックマネージャーに尋ねた場合、「はい」とは言わないでしょう。
それでも、これらの同じマネージャーのかなりの割合が、高給のソフトウェア開発者は、質の高いツールと同じように、安っぽいツールや労働条件でも生産的であるはずであると考えているようです。多くのお金とその自転車をより速くペダルを踏むことができるはずです。
さて、正確に良いツールと労働条件を構成するものは、行われる仕事に依存します。 Linuxカーネルをコーディングする人々は、Webサイトの設計者とは異なる種類のハードウェアを必要とします。しかし、会社がそれを買う余裕があるなら、人々が彼らができる限り生産的になるために必要なものを手に入れないのはおかしいです。
私が働いていたある会社には、主にCで9 GBのソースコードベースがあり、最も必要なのは高速ビルドでした。残念ながら、私たちは主に5年前に平凡だったハードウェアを使用していたため、人々は現在取り組んでいるもの以外の多くのものをビルドすることに抵抗を示し、生産性の低下、品質の問題、ビルドの失敗によって犠牲になりました。会社はハードウェアをアップグレードするお金を持っていたが、それについて不思議なけちでした。彼らは、昨年の夏に1億ドルを突破した後、2人の最大の顧客が期限を何度も守らなかったために彼らを落としたので廃業しました。生産性を向上させる方法を提案するように一度要請されました。 OPが行ったのと同じ種類の費用便益分析を提示しました。経営陣が「これは間違っているに違いない-そんなに愚かなことはできない」と言ったため拒否されたが、その数は嘘をつかなかった。
私が働いていた別の会社には、プログラマー向けの素晴らしいコンピューターがありましたが、パーティションのない大きな混雑したブルペンの小さな小さなデスクで誰もが働くように主張しました。多くの人が繊細なプロトタイプのハードウェアを扱っていたので、それは問題でした。私たちの机の上に置くスペースがほとんどなく、人々は通り過ぎて、それを磨いて、床にたたきつけました。彼らはまた、VCお金で4700万ドルを突破し、それを示すものは何もありませんでした。
悪いツールや労働条件だけでこれらの企業が死んだとは言っていません。しかし、誰かに多額のお金を払って、悪い道具と労働条件で彼らが生産的になることを期待することは、涙に終わる可能性が高いビジネスへの基本的に非合理的なアプローチの「炭鉱のカナリア」だと言っています。
私の経験では、プログラマにとって単一の最大の生産性キラーは気が散っています。主にコンパイルされた言語を扱う私のような人々にとって、そのための大きな誘惑は遅いビルドです。
「ビルドして実行」ボタンを押したときに、5秒以内にテストすることがわかっている場合は、ゾーンを外すことができます。 5分になることがわかっている場合は、自分でタイマーを設定して何かを行うことができ、タイマーがオフになったときにテストを開始できます。
しかし、途中のどこかに、ブログやP.SEを読むなど、退屈に時間を浪費する活動の邪悪な溝があります。私がコンサルタントとして請求するレートでは、私がその溝から遠ざけるために驚異的な仕様のハードウェアにお金を投入することは価値があります。そして、多くの企業にとっても価値があると思います。それは単なる人間の性質であり、超人的な自己制御を期待するよりも、すべての霊長類に共通する通常の弱点を受け入れて適応する方がはるかに有用であると私は思います。
実際には、1つのコストは可視化および定量化可能ですが、他のコストはどちらも不可能です。
ハードウェアのアップグレードに失敗すると、開発者1人あたり1週間に1000ドルもの予算が無駄になりますが、技術部門の外部(上を参照)の誰もそれを見ることはありません。作業はまだ遅いですが、速度は遅いです。技術部門でさえ、その数値の計算は、証明できない多数の仮定に基づいています。
しかし、開発マネージャーが開発者1人あたり3000ドルを要求した場合、特に50人以上の開発者がいる企業では、これには多くの正当化が必要です。彼はそれをどのように行うのですか?
私は雇用主の側から2セントをここに入れます...開発者でもある人。
ローエンドのマシンは役に立たないが、トップエンドのマシンはやり過ぎであることに同意します。
トップエンドのマシンが手に入らない理由はいくつかあります。
まとめると、優れたギアと優れたツールが必要です。それは大きな違いをもたらしますが、トップエンドマシンは「一般的な開発者」にとって実際には正当化できません。
...ああ、編集内容を読んで、それがあなたが話していることです。今書いた上記のcosはそのままにしておきます...ええ、あなたのマシンはツールの仕様が不十分です。
ミッドレンジマシンを明確にするために
「トップエンド」マシンと「ほぼトップエンド」マシンの生産性の違いはごくわずかです。価格の違いは重要です。
すべての開発者が同じHWとSWのイメージを使用するのではなく、さまざまなマシンのITサポートは言うまでもありません(新規採用ごとにトップエンドマシンを購入している場合は不可能ですが、トップエンドは毎回異なります)。また、昨年のトップエンドを獲得した人は、初心者の次のキューブが自分よりも「優れた」マシンを備えているため、アップグレードしたいと思うでしょう。そうすれば、はるかに重要ですよね。
あなたが本当に必要あなたの仕事のためのトップエンドのマシンでない限り、私はお金を捨てる理由がわかりません。
ほとんどの雇用主は、開発者がどのように考え、行動し、働くかを理解していないからです。あるいは、どのようにしてトップツールが生産性を高めながら会社の経費を節約できるか。これは、Joel Testのポイントの損失につながり、提供できません "お金が購入できる最高のツール" これは、生産性と仕事の満足度の損失にもつながります。仕方ないよ。多分いつの日か、あなたはあなた自身の会社を始めて、13/13を獲得することができます。それまでは、雇用主に前もって質問して、仕事に就く前に何が期待できるかを理解してください。
あなたの現在の状況に関しては、彼らが耳を傾け、信頼していると感じた場合、あなたは議論を持ち出します。彼らがあなたにアップグレードを与えるかどうか見てください。使用するデュアル50インチモニターを備えたラインの上部にリグがある場合は、もう少し長く作業すると思います。マトリックスに貼り付けてください。
同じ理由で、トヨタカムリがあなたをそこに連れて行ったとき、人々はメルセデスCLSを望みます。確かに、新しいマシンでコンパイルタイムアウトをさらに数秒短縮することはできますが、外観は重要です。
あなたの計算には、会社に出入りするハードウェアの一定の流れを管理するために必要な時間が含まれていないようです-会社の規模に応じて追加のIT担当者が1〜2人必要になるため、さらに$ 50〜$ 100k /あなたの数の上に年。さらに、コンピューターを交換した日に生産性が失われます。専任のITスタッフが不足している場合は、バックアップと復元を行わなければならず、1日か2日はプロセスで失われる可能性があります。つまり、思ったより少し複雑だと思います。
あなたの議論の一つの問題はキャッシュフローです。彼らがお金を持っていないなら、要点は意味がない。もう1つは投資収益率です。
これはあなたが働いた会社には適用されないかもしれません。一部の企業はレバレッジが高く、現金が貧弱です。彼らはむしろあなたが説明する節約をより多くのウィジェットやソフトウェアを売る何かに使うでしょう。生産での利益が他の分野での同等の投資を上回ることを示す必要があります。
ソフトウェア会社がメンテナンスモードにあり、より多くの販売が必要な場合、販売とマーケティングにお金を使うことでより良いリターンが得られる可能性があります。
あなたの場合、お金は会社の別の領域よりもプログラマに費やされるという事実に対処する必要があると思います。
給料を稼いでいる場合は、この議論に注意してください。彼らはあなたが違いを補うためにもっと一生懸命働きたいと思うでしょう;)
私は自分の仕事でラップトップからデスクトップに切り替えることについてこの議論をしました。私は誰もがデスクトップにいるべきだと言って、もし彼らが自宅にコンピュータを必要とするなら、それらもそこに持って行きなさいと言いました。
優れたコンピュータの速度の利点は、特に古いハードウェアからクラッシュを削除する場合は無視できません。
「トップ・オブ・ザ・ライン」と「ニア・トップ・オブ・ザ・ライン」について-ラインのトップ近くが常にあるべき場所だと私は主張します。 「最上位近く」では、年ではなく2年ごとにアップグレードして、平均してより良いハードウェアを使用できます。
私はcyberpowerpc.comを推奨し、私の会社ではPC(マーケティング担当者)からのPCの購入を許可しましたが、サポートには追加費用がかかるので、すべてのプログラマーPCをDellから購入しました。それについて考えてみてください。デルからPCを購入するのは1.5〜2倍ですが、PCがダウンし、すぐに修正できなければ、お金を失うことになります。
遅いPCは、修理していない壊れたPCのようなものです。
予算の問題もあります。通常、開発者はハードウェアとは別の予算でその開発者に支払われ、ハードウェアの予算では十分な資金が得られない可能性があります。
まず、尋ねられた質問に答えるには:
彼らは数学をすることができないか、もしそうなら、彼らはどういうわけかそれが彼らに適用されないと信じています。ハードウェアと担当者の予算と会計は別々です。意思決定の立場にある人々はこの問題について聞いたことがないため、問題がまったく存在することをまったく気づいていません。
さて、本当の質問へ:「どうすればこの状況に対処できますか?」
それは本質的にコミュニケーションの問題です。あなたは問題を説明し、対話者は「私たちは新しいおもちゃを欲しがっています」と聞きます。彼らはそれを理解していません。
私があなたの立場にあれば、「古いコンピュータを買う余裕はありますか?」というタイトルの簡単なビデオを作成します。典型的なワークステーションの静止画です。右側の「コスト」というタイトルの空白の領域。
まだ電源ボタンの。下:「コンピュータの起動。20分」。空白の領域には、「コンピュータの起動= $ 40」と表示されています。 "開くIDE = $ 5"、 "コンピューターがフリーズする= $ 80"、 "製品をビルドする= $ 600"
速いペースで実行して数値を追加し続け、新しいコンピュータのコストと比較し、「このビデオは、すべての「プロフェッショナル」開発よりも優れた、自宅で購入した500ドルのノートパソコンで作成されました。現在利用可能なマシン。
問題が発生すると問題が発生することが懸念される場合は、自分のラップトップを持ち込むこともできます。
その問題を解決する方法がない場合は、別の仕事を見つけることを検討する必要があります。
割引は購入プロセスでも重要な役割を果たします。
スピットボール(実数ではない):100台のマシン@ 1000(15%割引あり)= 85,000
90マシン@ 1000 w/10%割引= 81,000 + 10マシン@ 2000 w/5%割引= 19,000 => 100,000
すでに述べたように、「特別な」マシンをサポートするための追加コストは、ミックスに追加する必要があります。
個人的には、「小規模な」会社で働いているときは、少なくともOKの開発用コンピューターを常に持っていましたが、大規模な会社ではプログラマーは、予算のあるプロジェクトマネージャーに比べて数十ドルです。
特に彼/彼女が素晴らしいアイデアを持っている人の一人なら、読んでください:承認された予算。
「良い」アイデアが何であれ、その人は実際に「新しい「より良い」製品」を実装するために本当に優れたプログラマーを必要とするので、彼らはプログラマーに必要な価格を支払います。
新しい開発用コンピュータを入手することは、私が懸念している限り、他の予算と同じ「部門」を通過しませんが、十分に支払われている場合は悪条件での作業を期待してください:-)私の最後の仕事:Dell E5xxx + 1つLCD 1280x1024 ...
私はここで使用したいマシンをかなり厳しい予算内でスペックするように求められました。私はなんとか重くなくても機能する中途半端なシステムを思いついた。
私はもともとここでOPと同じ方向に沿って考えていました。コンパイルまたはロードを待つためにここに座っている時間は窓からのお金です。私が進んでいる間に、私がコーヒーを手に入れるために行く時間、またはプリンターまで歩いている時間もまた、窓の外にお金がかかることを認識しています。
安価な開発システムを採用したため、待つ必要のある短い時間を心配するのではなく、自分の習慣を調べて、特に有用なことを何もしない時間を費やして改善しました(エヘン。 .. stackexchangeは便利で、起動するのに生産的で、私はそれに固執しています!! :-))もちろん、休憩が必要ですが、これは「休憩」以外の時間です。
したがって、ある意味では、この質問は、作業効率の「時期尚早の最適化」になる可能性があります。移行コスト、大量購入の失敗などに関する多くの優れた点.
プログラムを再起動/開くために休憩時間に時間を費やしている特定の状況では、はい、生産性が著しく低下しているため、まともなi3システムを備えたまともな機器にアップグレードすることは非常に理にかなっています。 4 GB RAMは500ドル程度です...そのコストを取り戻すのに時間がかからないと思います。
大きな要因の1つは、典型的な大企業のITがラップトップに置く傾向があるブロートウェアの種類です。自宅にWindows 7マシンがあり、ウイルス対策がいくつかある場合、標準のSSD-3GB-Quad-coreシステムは10秒未満で起動します。それを私の会社が導入しているブロートウェアと比較すると、起動するのに永遠にかかります。私は、OSを完全にザッピングして、スピードアップするためにOSをインストールしている人を見かけました。これは、InfoSecの重大な違反ですが、ある程度問題は解決すると思います。しかし真剣に-10分?!
新しいハードウェアの購入にはお金がかかり、意思決定者にもお金がかかります。会社の規模が大きければ、通常は開発者ではありません。もちろん exceptions ...
@Robが説明したように、bestハードウェアを取得できない理由はたくさんあります。あなたの会社には、購入するハードウェアの種類を定義するポリシーがある場合があります。これは、官僚機構では常に最先端のポリシーを持つことは難しいためです。多くのマネージャーはあなたの個人的なニーズなどにそれを適応させる気になりません。
コミュニケーション不足、リスク回避、その他の欠陥:
ハードウェアが非常に不安定で、これらの条件で作業することができなくなったと考え、これについて何かしたいと考えています。
今、あなたはあなたのマネージャーを説得しなければなりません。まあ、通常は、上司に報告するマネージャーに伝えるプロジェクトマネージャーを説得する必要があり、その人があなたの問題を本当に理解していることを確認する必要があります。
コミュニケーションスキルと経営に関する技術的理解 )。
2番目のステップでは、運が良ければ、経営陣はそれを検討します。彼らは何を得るのですか?
つまり、彼らはお金を交換する必要があり、彼らのあなたの仕事の実際の計画は、将来あなたに何か他のことをさせる最終的な機会のためであり、それは投資ですがリスクでもあります。
残念なことに、多くのマネージャーは リスク回避 です。言うまでもなく、あなたの問題に対する彼らの理解が低ければ低いほど、それはリスクが高くなります。一部の人は、誰かがそもそも適切なハードウェアを購入しなかったことを認識しにくい場合もあります。
さらに、経営陣は通常、長期の意味をより短く定義します。毎月の予算の最適化を依頼された場合、新しいハードウェアを購入する直接の金銭的インセンティブがないかもしれません。また、6か月後に節約できる2週間は気になりません。
もちろん、できる限り長く待つ必要はありません 1日で素晴らしいことをしてください !
スマートでオープンマインドなマネージャーが耳を傾け、あなたの問題を理解し、合理的なリスクを負い、自由な時間を創造的な方法で探求するのに十分な信頼を持っているなら、それはよりうまくいきます。
いつもそうであるとは限りません。自分で購入することを禁止されている間、グラフィックカードを2番目の画面に接続するのに3か月待ちました(30ユーロ)。追加の500 GB HDDがないために3日間失われ、定期的に数時間待つ必要がありました。 100Mbpsネットワークが遅いため、クライアントのデータを準備しています。 2GBのRAMを何回か尋ねた後、私は自分でそれを購入し、それらの技術的な問題で管理を煩わすのをやめるように言われました。そして、代償を払う準備ができていた大きな産業クライアントのために科学的コンピューティングを行っている私たち。
大規模な企業組織では、ハードウェアの選択は事前に定義され、固定されています。これは、そのような組織がデスクトップとラップトップの仕様と構成を一元的に管理しているためです。これらの仕様は、「調達」と「サポート」の考慮事項の組み合わせによって圧倒的に決定されます。たとえば、私が現在働いている会社には10万人以上の従業員がいて、彼らは「ワンサイズ」がすべてに当てはまるという基準で働いており、そのサイズは主にコマーシャルによって推進されます。このようなポリシーが導入されると、サポートサービスは通常、ソフトウェアをテストしてその「標準」マシン仕様に展開するのにかなりの時間を費やすため、それらのポリシーはロックダウンされます。このような環境での「開発者」の生産性に関する議論は、単に耳に聞こえません。生産サービスは、生産性が向上する可能性があるという理由で、少人数のグループに例外を設けません。そうした場合は、逸脱の要求がすぐに殺到し、いずれにしても、サポートコストを可能な限り低く抑えるために、彼ら(プロダクションサポート)にインセンティブが与えられます。 > 1つのデスクトップ/ラップトップ構成では、サポートコストが増加します。主要な「製品」がソフトウェアエンジニアリングの結果である組織では、そのような議論は無効ですが、実際にはほとんどの組織がそうではなく、主要な推進力がサポートコストを低く抑えています。
数学はさておき、すべてのユーザーがトップエンドのマシンを持っているとは限りません。価格が平均的なものに近いスペックのマシンで開発することで、開発者はユーザーの経験(および苦痛!)をより詳しく知ることができます。
QA部門にはmin-specマシンがあるかもしれませんが、それはどのくらいの頻度で使用されますか?現実的なターゲット環境であるマシンで開発すると、早い段階で問題(無反応、パフォーマンスの低下、パフォーマンスの低下による競合状態など)が明らかになるため、チームがより早く修正するようになります。
単に、最高のハードウェアが「最高の」開発者にならないからです。そうは言っても、プログラマーの仕事を妨げているのなら、会社が責任を負うことになります。
ただし、ハードウェアが開発者が機能するのに十分である場合、彼は文句を言うことは何もありません。
また、「最高の」ハードウェアを使用し、IDEのみをコーディングに使用することは意味がありません。そのようにリソースを浪費します。
"私たちは敵に会いました、そして彼は私たちです。"-ポゴ
どちらの方法でも、この質問をスライスします-集団である「プログラマー」は直接責任で最高のツールを購入できません勤め先。
ビジネスファイナンスは信じられないほど複雑で、数多くの相反する動機と手段があります。財務部門が現在追跡している内容(税回避、四半期経費の管理、将来の資本支出の推進、EBITDAの最大化など、レーダーにあるものは何でも)の具体的な知識がなければ、真のコストに関する議論は無関係です。マーケティング担当者が、インタープリター型言語に移行しようとしていることがわかっているコードのコンパイラー最適化について、あなたにバグを報告するのにどのように反応しますか?プログラマーが自分の持っているツールがどのようにして最終的な収益に直接貢献していないかを特定の言葉で示すことができない場合、ビジネスは可能な限り支出を少なくするのが正しいでしょう。また、リソースの割り当てに直面している現実を理解できるように、ビジネスファイナンスに耳を傾けることも学ぶ必要があります。
私たちは、より良いツールを求めたり、最高のホワイトペーパーをマネージャーに提出したり、インターネットに投稿したりするよりも、職場での存在感を活かしてグループ投票を行います。従業員が正当に必要なツールを持っているか、現時点では理由を理解できない文化を作り上げてきた組織があります。競争圧力が大多数の雇用者からこれを要求するまで、私たちは自分が信じている雇用者を探すことによってのみ投票することができます。
私たち一人一人は、これをコアにとって重要なものにするか、手放す必要があります。
CFO側。
その会社にはたくさんの経費がある。すべての部門はより良いことをするためにより多くの$を必要とし、すべての部門で費用は必需品です。
利用可能な$を使用するための最良の方法を選択するときは、考慮に入れます。
1日10分の無駄は、ほとんどの財務部門で機能する理由にはなりません。ほとんどの研究開発チームは、日中楽しんでいるすべてのプログラミング活動に多くのことを費やしています。部門のすべての waste をグラフ化して、生産性を向上させるために何ができるかを見てみましょう。
私はかつて大企業の開発者であり、その後スタートアップだった。これが私の2セントです。
あなたの会社があなた自身の機器の持ち込みを許可している場合は、あなた自身の$を使用してRAMおよびLCDモニターをアップグレードしてください。なぜあなたが尋ねるのですか?
仕事を辞めるときは、いつでもモニターを携帯できます(個人の所有物として明確にラベルを付けることを忘れないでください)。上記のレシピ(RAMをアップグレードし、自分のLCDモニター)を使用して)を以前のジョブと現在のジョブの両方で実行しました。
すべての雇用主を1つのバスケットにまとめることができる方法はわかりません。私はいくつかの雇用者のために従業員およびコンサルタントとして働いており、常に私のニーズに十分以上のハードウェアを手に入れました-現在の仕事では、最初に4 GBのRAMとWin64を備えた明るく光沢のある新しいHPクアッドコアを渡されました一日-最高ではありませんが、十分です-(私はメインの開発ツールとしてDelphi XEとXMLSpyを使用しています)-実際、とてもいいので、自宅に同じマシンを購入しました。 (たぶん私はそれほど生産的ではありません!笑)
良いハードウェアが手に入らない場合は、そのハードウェアを求めてみてください。要求できないと感じた場合、開発者をリソースとしてではなく、責任。
ですから、あなたの質問への答えは、開発者に十分なハードウェアを提供しない、および/または拒否する企業は、開発者に責任を負わせる企業です-彼らはむしろ外部委託し、まったく対処しない仕事です。
それは誰がお金を扱うかにかかっています。大規模な組織では、ITに年間100万ドルの予算が割り当てられています。これには、サポートの給与やサーバーなどが含まれます。すべてのリソース間で分散させる必要があります。彼らは、DellやIBMなどのベンダーとの取引を減らして、同じ種類のコンピューターをx個入手しました。これは、カスタマーサポートからプログラマーまで、すべての人に提供されます。彼らはまた、限られたモデルのセットを維持するだけでよい場合に、サポートなどの取引を獲得します。彼らはプログラマーでもありません、私はコンピューターに関してプログラマーでない者と多くの議論をしました。 ITマネージャーが新しいHDに一度出向いたとき、CEOはそれらを購入してブームになり、仮想マシンを実行するのに十分なディスク容量がだれにでもあると言いました。
私はラップトップを持っていたのでITが19インチのセカンドモニターを持ち去ろうとして、実際に上司を吹き飛ばして怒鳴りました。彼らも私にこわばり、他の人が15インチになったときに13インチモデルを手に入れました。もう一つの問題であるITの政治へのそれは時々考えている私たち対彼らのようなものです。
質問者によって記述された観点から、質問は完全に理にかなっています。ただし、ハードウェアを最新の状態に保つには、さらにコストがかかります。
これも考慮する必要があるコストの一部です。
場合によっては、ハードウェア自体のコストよりも2〜5倍大きくなることがあります。高度なソフトウェアライセンスが関与している場合はなおさらです。
一般に、これらのコストの規模は、会社の規模や組織構造の複雑さによって異なります。購買力に直接アクセスできる小規模なチームはこれらのコストを低く抑えることができますが、大規模な組織ではこれらのコストが非常に高くなる可能性があります。
簡単に言うと、購入の決定は、プロジェクトマネージャーではなく、豆のカウンター(会計士、中間管理職)によって行われることがよくあります。
多くの人が潜在的な理由を挙げており、それらすべてが1つの状況または別の状況の要因であるため、単一のオーバーライド状況はありません。大規模な機器を購入すると、プログラマーの生産性はいくらか失われますが、他の分野ではお金を稼ぐことになります。
それでも、多くの場合、予算に達します。あなたは予算に収まる必要があり、それがすべてです。
私の意見では、開発者が安定したワークステーションをセットアップし続けるために会社が提起できる防御可能な異議は2つだけです。第一は、彼らが現金危機を経験しているということです。それは短命である方が良いでしょう。さもなければ、会社は長期にわたって継続的な関心事ではなくなります。そのような会社で働いているなら、あなたはあなたの履歴書を最新に保つべきです。
もう1つは、彼らの組織がソフトウェア開発能力にボトルネックになっていないということです。つまり、ソフトウェア開発の出力の品質や速度を上げても、最終的な収益は改善されません。会社の主な事業がソフトウェアの販売である場合、それは事実上不可能です。ソフトウェアが主要なビジネスではなく、ボトルネックになっていない場合、最も弱いチームメンバーを転送または解放することで、ソフトウェアワーカーを削減する必要があります。貧しい機器を供給することは、反対側から彼らのチームのサイズを減らすでしょう、私は恐れています。
典型的な技術系新興企業以外の多くの企業は、ロックスターの採用に興味がないからです。彼らは仕事ができる人に投資しています。それで、あなたがそれをしている限り、彼らがあなたの働き方を気にしていないのなら、なぜ彼らはあなたが使う機器を気にする必要があるのですか?私はまだ15インチのCRTを使用している場所で働いており、誰もがうまくいきます。時々私はこのような質問を読んだとき、世界中の誰もがクールなスタートアップのために働いているわけではないことに人々が気づいているのではないかと思います。
私は過去にハードウェアの不足している企業で働いたことがあります。それはうんざりする、そして彼らが説得を必要とするならば、戦いは終わりのないものである可能性が高い。
利用可能な最良のツールを使用することに専念している企業はまれであることが判明しましたが、実際には存在しています。私は一人のために働きます。クアッドコアの17インチ2011 MBP、8 GB RAM、Vertex 3 SSD、2 x 24インチの外部モニターに加えて、クアッドコアデスクトップと4 GB Xenスライスを持っています。だけでなく、静かなオフィス。
より少ないハードウェアで問題ないでしょうか?承知しました。しかし、私たちは愚痴よりもむしろ自慢したいと思います。
私は以前、RAMを512 MBから1 GBにアップグレードしたネットワーキング会社で働いていました。私たちは2010年にf ** king CRTモニターで作業していました。最も興味深い部分は、マネージャーのハードウェアが2 GBのRAMにアップグレードされたことです。いったいなぜ誰もが2 GBでPPTを作成したいと思ったり、1 GBのRAMでアプリケーションを開発したりする方法を私は知りません。
開発者マシンの2GBは明らかに恥ずべきことですが、この問題を解決するのに3000ドルはかかりません。すべてを一度にアップグレードする必要があるのはなぜですか?スマートIT部門は、生涯にわたって継続的にマシンをアップグレードしています。結局、まったく新しいマシンが必要になりますが、マシンはWindows 95のハードウェア仕様を実行していません。 300ドルから500ドルで標準的なミッドレンジマシンにアップグレードでき、これらのアップグレードは数か月にわたって行われるため、キャッシュフローの問題はありません。新しいグラフィックスカード、サウンドカード、USBポート、DVDライターなどはおそらく必要ないのでしょう。 ACが壊れているので、新しい車を買うようなものです。
新しいマシン、新しいテクノロジーは新しい問題を意味します。すべての会社のすべての人がtechwizであるわけではなく、すべての会社が24時間年中無休で人々をトレーニングして問題を処理するためのITリソースを持っているわけではありません。
はい、おそらくあなたが自分の個人的なデスクトップで作業しているフリーランスのプログラマーであれば、毎日10分の生産性を絞り出すためにリグに$ 1000を吹き込む価値があるでしょう。ただし、新しい機器が原因で生産性が失う生産性のある人々にこれらのマシンを何百台も導入する場合、見込みは少し厳しいように見えます。
正しい仕事には「正しい」道具が必要だと思います。 「適切な」ツール(ハードウェア、ソフトウェアなど)がない場合、それは従業員と上司の間の期待に対する誤解または誤解が原因であると思います。これは開発者と会社の責任の両方です。期待が高ければ高いほど、「要件」をより詳細に検討する必要があります。
これは、私がより多くの試練のシナリオで納期を過ぎたときに、マシンに8 GBのRAM)を "必要とする"何人かの開発者を知っていると言われています。
私の現在の会社では、開発者はハードウェアのトーテムポールでかなり高いです。ハードウェアは他と同じように会社の通常の予算に費やされていると思います。そのニーズは欲望を上回ります。
私の意見では、開発者は自分のハードウェアに責任を持つべきですが、それは完全に状況に依存します。単純なWebサイト用の単純なアプリを作成するように求められた場合は、テキストエディターに配置するための高度な機器は必要ありません。一方、契約プログラミングに従事していてサイドギグを行いたい場合は、独自のハードウェアとベースソフトウェアを購入し、その特定の会社の必要に応じて、会社に個別のAPIライセンスを購入させることを検討できます。
どちらの方法でも、それはすべてチェックとバランスの問題であり、生産性に関心がある場合は、開発者が時間をかけて開発しているコードの量を監視するために費やすのが最も良いでしょう。 1つのプロジェクトを実行するのに10時間、同様のプロジェクトを実行するのに5時間かかる場合、それは従業員関連の問題であり、開発者の問題ではない可能性があります。
かつて、私は会社(大げさ)が開発者にまともな消費者向けシステムを購入するように主張した。基本的に、それらのパフォーマンス仕様はEnterpriseyバージョンに匹敵しましたが、価格は半分です。私の主張はこれらの価格でした、それらは本質的に使い捨てだったので、それが壊れた場合、新しいものを購入するだけです(75%以上が24か月続くと仮定した場合)。私は、これらのラップトップの1つを入手する代わりに、開発者がソフトウェアのロード/構成に責任を負い、ヘルプデスクが修正を支援しないという合意(または何か)に署名する必要があることを示唆しました。
それは飛ばなかったが、私たちがwindows devを実行し、私たち全員がローカル管理者であったことを考えると、議論の基本的な前提は妥当であると私は思った。
何故なの?責任がないからです。毎時間の作業を利益率と正確に一致させることはできません。
このための簡単な解決策は、自分のマシンのアップグレードにお金を払う人なら誰でもrefundingです。カウントが正しい場合は、まったく同じジョブ/プロジェクトの過去2期間(週、月、学期、年など)を比較することで、生産改善による独自の利益を簡単に証明できます。
開発者が一定期間に生成している量を定量化できた場合、問題は解消されます。ほとんどの開発者はできません。彼らのマネージャーも、ファイナンス関係者も。仕事は非常に主観的だからです。
しかし、これらの数値をどうにかして表示できる場合(私は表示できないことはわかっています)、あなたはすでに費用効果の高い、非自己起動の夢のマシンの準備が整っています!
著者の視点を逃したに違いない。
まず、1つの例としてのGoogleは、ファームとして実行されている古いサーバーに接続された安価な「使い捨て」ハードドライブを使用して設立されました。それは誇張かもしれませんが、次を参照してください: http://en.wikipedia.org/wiki/Google_platform#Original_hardware
第二に、gvimを実行するのにCPUまたはグラフィックスリソースをあまり必要としません。したがって、おそらく開発環境の選択が問題になります。
第3に、生産性を向上させるための数百とは言わないまでも数百のCPU強度を削減する方法があり、これは2ギガのRAMまたは3ギガのRAMを持っているかどうかとは関係ありません。これを確認する平均的なプログラマー:たとえば、軽量のPDFリーダーvs.ドキュメントのAdobeスイートを使用する、VMフルインストールではなくアプリをテストするため.Win Dellマシンにバンドルされているすべての起動デーモンを(regeditを使用して)削除します.Outlookを実行したままにする代わりに、軽量のブラウザを使用してWebメールを送信します。したがって、この点は次のようになります:このソフトウェア設計の問題をより早く解決するには、より多くのメモリとMhzが必要であることを証明します。
企業の決定は、開発者とはまったく異なります。ほとんどの場合、承認された購入チャネル、インストール、テスト、セキュリティの遵守およびその他の対策を担当するグループを承認し、タスクに適切なハードウェアを提供するメカニズムを備えています。したがって、ハードウェア仕様の変更に関する質問は複雑になる可能性があります。
一方、設備のアップグレードに給与の1%を使うように提案してCEOに来たとします。彼はCFOにマージンと収入への影響を考え出すように頼むでしょう、それが5%だとしましょう。現在、見積もりを逃していると、会社の株価、たとえば10%に増幅された影響が及ぶ可能性があり、上級管理職は100万ドルのボーナスを失います。アップグレードによって会社の収益が改善されると期待する十分な理由がない限り、この提案はDOAになります。企業は常にそれが収入を改善する場合にのみ、支出の増加を求めます。つまり、ほとんどの場合、ローエンド機器とハイエンド機器の両方が最適ではありません。
開発者と会社の管理の両方を満足させる1つのソリューションは、開発者が機器の家賃を支払うことを許可することです。通常のシステムは、2年間レンタルした場合、月額20〜200ドルで稼働します。企業は一連の承認済みハードウェアを所有し、開発者に標準構成を提供するか、アップグレード構成を選択して給与から追加の家賃を差し引くことができます。
新しいプログラムは、開発者のコンピューター上でうまく動作します。開発者に4 GHz 8コアボックスを購入すれば、開発者が作成したアプリケーションはどの4 GHz 8コアコンピュータでも問題なく動作します。しかし、2 GHzと1コアの一般的な顧客のコンピューターでは、カタツムリのように動作します。
開発者は当然、開発マシン上で、物事が遅くなるまで、機能やコード、間接参照のレベルを追加し続けます。新しいハードウェアのみを開発している場合は、最新のハードウェアを購入してください。しかし、既存のハードウェアを持つ人々にソフトウェアを販売するのは危険です。
開発者のコンピューターは、ターゲットの顧客のコンピューターとほぼ同じ電力レベルである必要がありますが、デバッガーには少し余分な電力が必要です。しかし、速くはありません。