この投稿の目的は、開発者向けにSSDを購入する必要性をプロジェクト/管理マネージャーに伝えることです。
奇妙に思えるかもしれませんが、多くの開発会社にはSSDがなく、経営陣はなぜそれらが必要なのか理解していないため、これは余分なお金の無駄です。
プロジェクトのコンパイル中にこの記事を書くことにしました。 そして、私が3つめを書いたときにもコンパイルされたままです。
脳とコンピューター
コンピュータは、計算を実行するときにひざまずく必要がある前に、崇拝に値する偉大な何かとして知覚されるべきではありません。 いいえ、この時間は20世紀半ばのチューブコンピューターと一緒に過ぎました。 現在、コンピューターはアシスタント、ツール、ドライバーであり、迅速かつタイムリーに役立つはずです。 作業はユーザー、プログラマーによって実行され、機器はこの作業を支援するものであり、その逆はできません。
プログラマーの作業中、多くのアイデア、思考、オプションが彼の脳に飛び込みます。 プログラマは、それらをすばやくチェックして実装する必要があります。 これを行うには、コンピューターはユーザーの操作に明確かつ迅速に応答する必要があります。 ブラウザーを開いて技術的な問題、バージョン管理システムユーティリティの長時間起動、プロジェクトの長時間起動、さらにはコンパイルを実行すると、さらに30秒遅れて、コンピューターの速度が低下し始め、作業のリズムが遅くなります。 5分後に電子ポケモンSlopekから思考を実現するための技術的な機会を得たとき、思考がすでに遅れているため、ゆっくり考えること、紙に考えを書き留める必要があります。 脳はすでに他の人によって占められています。 そして、最悪のことは、脳が流れを失った場合( Stream )です。 現在、ソリューション内の300個のプロジェクトでAwadをコンパイルするには、約10分かかりました。 これはフローの損失です。 脳はすでに他のグローバルなタスク、普遍的な正義の探求、または別のバグで占められています。 そして、ストリームに戻るには、現在の脳のプロセスを完了する時間に加えて、さらに10分かかります。 これはひどいです。 1つのプロジェクトでは、コードの変更をテストするために、展開に最大20分を費やす必要がありました。 不気味で長いコードジェネレーターがあり、測定されたロジックが機能するためには、ジェネレーターを解決する必要がありました。 そのため、その20分の遅延は40分の遅延に変わりました。 コンパイルの5〜10分後でも、なぜそれをしたのかを忘れることができます。 技術的な検索とテストの状態では、さまざまな可能性をすばやくチェックする必要があり、これらのチェックの遅延間の時間は最小限に抑える必要があります。
プログラマーの欲求を満たす高速コンピューターは非常に重要です。 レーシングカーのように、それは速くなければならず、ライダーの可能性を十分に実感し、彼を妨げません。 高速なPCで作業するのは快適であり、時間は物理的に節約されます。そして最も重要なことは、不協和音は頭の働きから始まりません。流れが失われることはありません。
PC速度
明らかに、多くの詳細がパフォーマンスに影響します。 中央処理装置ではすべてが明確であり、より高速でよりマルチコアであり、コンパイル時にのみロードされます。 3Dデザイナーと数学者は計算を行いません。 メモリは、より多くのプログラムが連携するのに役立ちます。 そしてスタジオは記憶のために大食いです。 メモリ速度も重要です。 ただし、コンピューターのRAMにアクセスすることは、人に図書館に行くことと同じであることを理解しておく必要があります。 技術的な特性に応じて、このライブラリは隣の部屋または隣の家にあります。 しかし、永続的なストレージデバイスからデータを受信することは、アマゾンで本を注文し、ローイングギャラリーで海を渡り、古いナグで引っ張られたカートにロシア郵便で注文するのと同じです。 しかし今、ストレージシステムには非常に重要な革命があります。 SSDが登場しましたが、これは非常に重要なマイルストーンであり、マルチコアプロセッサの外観と同等ではありますが、それ以上ではありません。
SSDは飛行機です。 これは、FedEXクーリエが座っている飛行機で、パラシュートで自宅を飛び越えます。 SSDは、大きなファイルを読み取るときに5倍の速度を提供します。 しかし、それは面白くありません。 私たちは、コード、構成を含む数千の小さなファイルを処理し、スタジオはこれらすべてをコンパイルします。 また、小さなファイルのセグメントでは、SSDの読み取り速度はHDDの50〜100倍高速です。 これは、少なくとも10倍速くコンパイルすることを意味します! そして、生産性の一般的な向上、システムのはるかに高速な起動、ユーザーのアクションに対するシステムのタイムリーな反応、プログラマーの要件を満たすためのシステムの意欲。 SSDは、比較的言えば、生産性が10倍に向上します。 同じメモリプロセッサを交換すると、2回使用できます。 SSDへの投資は、銅よりも安かった18世紀にプラチナに投資するようなものです。 結果はコストよりもはるかに優れています。 しかし、それについては次の章で詳しく説明します。
ビジネスケース
SSDの収益性を計算してみましょう
120GBのSSDが必要です。これは、システム、プロジェクト、およびドライブの完全な効率に必要な空き領域の約40%に十分です。
ソースデータ
- 120GB 4000 pのカスタム球状SSD
- 1か月あたりの給料が70,000 pに満たない真空状態の球状プログラマー。 (モスクワの話)
- 作業月は176時間です。
- UST(30%)〜100,000 pを含むプログラマーの会社費用。
- プログラマーの1時間のコストは570 pです。
- 1か月の平均稼働日数は23日です
プログラマーの1日あたりの時間の損失を見積もっています。
アクティブなコーディング、1日4プロジェクトのコンパイルを想定
- コンパイル時間10分
- 長時間の負荷によるダウンタイム(システムとソフトウェアの完全な起動時間-7分、SSD 2分)5分
- 一般的なブレーキによるダウンタイムは、30分間評価するのが難しい
時間の損失を計算しましょう
- 4編40分
- 4流量損失40分
- 5分間の負荷
- 30分のブレーキ
合計115分。 + -50%のエラーを想定し、損失を過大評価して大きなミスを犯したと仮定します。 1日あたり合計1時間のダウンタイムを想定します。
合計23時間/月。 これは13,110ルーブルです。 これは1か月あたり3.2775 SSDです。
したがって、SSDを1回購入すると、生産性が1か月あたり13110ルーブル増加するため、ダウンタイムによる損失を減らすことができます。
おわりに
SSDを購入すると、プログラマの生産性と全体的な仕事の満足度が向上します。 経済効果はSSDのコストを大幅に上回ります。
ps適切なハブを選択するのは困難でした。 どのハブを再公開するかアドバイスしてくれたら-します。
更新
興味のある方のために、私はアンケートを追加することにしましたSSDをお持ちですか?
また、潜在的なリーダーマネージャーが、自分のアプローチがトレンドに沿っており、開発者にとって単に興味深いものであるかどうかを評価する機会にもなります。