Berapa banyak ruang penyimpanan yang benar-benar dibutuhkan pengembang pada sistem kerja?

8

Tidak Menghitung OS Dan persyaratan untuk menjalankan perangkat lunak Pengembangan. Diperlukan ruang penyimpanan.

Tegasnya dari sudut pandang kerja (pengaturan perusahaan dan bukan freelancer). Seorang pengembang individu (tidak mempertimbangkan sistem pembangunan) kecuali ke dalam area video, pemrosesan audio (file mentah besar) pengembangan 3d / grafik. Berapa banyak ruang penyimpanan yang dibutuhkan.

  • Bahkan jika kita memperhitungkan uji coba perangkat lunak untuk mengunduh atau membaca materi. Benarkah atau Aman untuk menganggap 20GB akan cukup memadai dan ada hal lain yang akan menjadi pemborosan dan atau akan dimanfaatkan secara tidak benar ?.
  • Apa ruang hard disk tipikal yang dialokasikan per pengembang dalam pengaturan kantor. Ini mungkin berbeda per peran atau persyaratan khusus dan pada jenis pekerjaan apa yang dilakukan perusahaan. tetapi rata-rata untuk pengembang / programmer berapa banyak ruang yang biasanya dialokasikan.

Edit:

Untuk Mengklarifikasi Maksud

Ini adalah pertanyaan yang saya hadapi oleh orang-orang bisnis / manajemen. Saya hanya ingin lebih memahami dalam hal ini untuk memberikan jawaban (atau jawaban yang lebih baik) pada saat saya menemukan mereka. Saya tidak membuat asumsi atau bermaksud untuk memberikan pelanggaran kepada siapa pun dalam hal ini. Akan sangat membantu jika beberapa tautan ke data online disediakan dalam hal ini.

Edit 2:

  • Masalah yang saya pahami adalah membatasi ruang penyimpanan hanya untuk menyimpan file kerja untuk mencegah penggunaan yang tidak perlu ...
  • Bukan tentang berhemat / menghemat biaya pada perangkat keras.
Aditya P
sumber
3
Tidak seorang pun akan membutuhkan lebih dari 64k ...
Cameron MacFarland
hebat sudah 2 suara dekat (cepat untuk melompat ke kesimpulan). bayangkan situasi saya ketika saya harus menemukan jawaban yang meyakinkan.
Aditya P
3
Instalasi Windows modern yang khas (sepenuhnya ditambal) adalah sekitar 30 hingga 40GB saat ini. Tambahkan beberapa perangkat lunak dev tambahan untuk itu, ruang penyimpanan dan hal-hal lain, Anda mungkin membutuhkan setidaknya 100GB disk.
Jan_V
1
Menurut saya, penggunaan yang tidak lazim akan mulai berlaku di area akses jaringan / internet - bukan hard drive.
xdumaine
1
@ Jan_V: Saya pikir alat penggunaan disk Anda menghitung ganda file DLL dengan beberapa tautan. Saya memiliki Windows 7 plus banyak aplikasi yang diinstal pada drive 30 GB dengan ruang tersisa.
Zan Lynx

Jawaban:

7

Ketika berbicara hanya tentang ruang pengembangan (yaitu mengecualikan aplikasi dan persyaratan OS), itu benar-benar tergantung pada jenis proyek yang Anda hadapi. Misalnya, bahasa yang dikompilasi membuat banyak file sementara yang pada gilirannya dikemas ulang menjadi file yang lebih besar. Di lingkungan saya saat ini, kami saat ini menjalankan sekitar 20GB untuk kode sumber + file objek yang dikompilasi. Itu hanya termasuk versi yang dikompilasi DEBUG, itu akan lebih untuk RELEASE dikompilasi juga.

Tolong jangan lupa 20% overhead yang NTFS atau sistem file penjurnalan lainnya (dengan asumsi Windows di sini) perlu memiliki ruang untuk penjurnalan dan menjaga hard drive tetap sehat. Anda harus menyesuaikan ukuran yang dibutuhkan hard drive sendiri .

Saat memproyeksikan kebutuhan hard disk proyek Anda, Anda harus mempertimbangkan aspek-aspek berikut:

  • Aset apa yang merupakan produk akhir? Item dalam kelas ini termasuk aset seni, gambar, file suara, dll. Yang tidak digabungkan ke file lain. Dalam aplikasi web ini termasuk file CSS dan JavaScript Anda juga. Jangan lupa skrip build Anda dan item lain yang tidak dikompilasi.
  • Aset apa yang menghasilkan hasil antara? Item dalam kelas ini termasuk kode sumber untuk bahasa yang dikompilasi, tautan file, dll. Pada awal proyek, Anda harus memproyeksikan seberapa besar Anda mengharapkan ini, dan merevisi estimasi tersebut setidaknya dua kali lebih banyak saat proyek berjalan .
  • Seberapa besar produk akhir? DLL atau pustaka bersama Anda juga membutuhkan ruang. Sama seperti jika Anda mengemas aplikasi web Anda menjadi unit yang mudah digunakan (mirip dengan file Java WAR atau file EAR).

Untuk perkiraan kasar seberapa besar perkiraan akhir Anda, gunakan rumus berikut:

(2 * _static_) + (2 * _intermediate_) + (2 * _final_) * 1.2

Jika Anda berpikir untuk diri sendiri, bagaimana mungkin? Pertimbangkan yang berikut ini:

  • Proses kompilasi menyalin file statis ke direktori build, serta kelas yang dikompilasi.
  • Tahap menautkan dan mengemas akan membuat binari akhir yang akan lebih kecil dari gabungan file menengah dan file statis di direktori build, tetapi tidak menghapus file-file itu saat digabungkan.
  • Produk akhir hanya sedikit lebih kecil karena biner tidak dapat dikompresi dengan baik - tetapi Anda dapat menghapus redundansi.
  • Anda perlu memperhitungkan ruang temp untuk memungkinkan kompiler bekerja. Untuk inilah ruang ekstra yang dialokasikan untuk produk akhir.
  • Terakhir, Anda perlu memastikan lingkungan pengembang memiliki ruang bernapas sehingga OS dapat menjaga drive bahagia. Itulah gunanya peningkatan 20% pada akhirnya.

Jika Anda berada di awal proyek, minta pengembang Anda memberikan SWAG (Seriously Wild A ** Guess) mengenai berapa banyak kelas yang diperlukan untuk mengimplementasikan fitur tersebut. Lipat gandakan dengan 16KB. Beberapa kelas akan menghasilkan file objek yang jauh lebih kecil, dan yang lain akan menghasilkan yang lebih besar. Tapi ini harus cukup untuk perkiraan ruang disk SWAG Anda. Juga asumsikan produk akhir Anda akan memiliki ukuran yang sama dengan kelas yang Anda perkirakan.

Saya menganggap majikan Anda ingin menetapkan kuota untuk setiap profil pengguna. Saya sungguh berharap mereka tidak menghibur profil roaming dengan lingkungan dev. Masalah dengan profil roaming adalah volume geser file yang perlu ditransfer. OS Windows (dan protokol Samba) terkenal tidak efisien dalam mentransfer sejumlah besar file. Dibutuhkan urutan lebih besar untuk mentransfer 100 file 1k dari 1 file 100k.

Semoga ini memberi Anda informasi yang cukup untuk bernegosiasi dengan atasan Anda.

Berin Loritsch
sumber
Jawaban yang sangat bagus. Ini sangat membantu. Juga bukan majikan saya.
Aditya P
Catatan: bahasa yang tidak dikompilasi biasanya membutuhkan 1: 1 untuk semua jenis file, bukan 2: 1 seperti yang saya sebutkan di sini. Misalnya, aplikasi Ruby on Rails dijalankan di tempatnya, tanpa perlu menyalin file tambahan seperti yang diperlukan dalam aplikasi Java atau C # yang sebanding.
Berin Loritsch
2
Ini menghilangkan kasus di mana Anda mungkin ingin lebih dari satu pohon sumber tersedia, kasus di mana sistem kontrol versi menggunakan ruang penyimpanan lokal (seperti semua yang modern yang saya kenal), kasus di mana Anda perlu mengerjakan sesuatu yang sementara, kasus di mana Anda mungkin memerlukan konfigurasi lain, dan kasus di mana Anda menebak dengan buruk. Ini adalah resep untuk bencana.
David Thornley
Ini adalah titik awal, dan tidak lebih. Anda dijamin harus mengunjungi kembali angka-angkanya ketika proyek berlangsung. Itulah hasil dari upaya memperketat penggunaan disk pengembang Anda. Saat berhadapan dengan manajer TI yang memerintah dengan fiat, Anda perlu mengungkapkan persyaratan Anda secara wajar. Jawaban ini menyediakan mekanisme untuk melakukan itu. Saya juga setuju bahwa membatasi ruang sedemikian besar adalah resep untuk bencana. CATATAN: jika Anda menggunakan Subversion, gandakan persyaratan ruang disk Anda. Ini menyimpan salinan file kedua di folder-nya.
Berin Loritsch
Ini adalah titik awal yang baik, tetapi saya akan mengatakan bahwa jika setiap orang memiliki komputer mereka sendiri, maka hard drive scrimping tidak akan menghemat banyak uang. Semua taruhan dibatalkan untuk profil roaming.
Michael K
21

Pembangunan membutuhkan BANYAK ruang.

Kami menggunakan gambar VM sebagai unit manajemen konfigurasi untuk pengaturan pengembang.

Setelah Anda menyalin VM ke mesin Anda memulainya, perbarui kode sumber dari VCS dan Anda sedang menjalankan. Tidak sia-sia dengan pengaturan pengembang.

Setiap gambar VM sekitar 20Gb. 4-5 dari mereka. yaitu kita umumnya membutuhkan 100 hingga 120Gb Gb

Pikiran Anda, mereka tidak "per pengguna" pada hal-hal mesin, hanya perlu satu.

Tim Williscroft
sumber
2
+1 untuk gambar VM. Jika pengaturan kantor Anda menggunakannya.
Aditya P
ingatlah hard drive kedua untuk pencadangan atau serangan. kegagalan hard drive dapat menjadi bencana besar jika tidak ada redundansi di mana pun
WalterJ89
1
Lebih baik lagi, satu ton ruang disk di lokasi jaringan, dalam kasus kebakaran / banjir / pencurian / facepalm-layak insiden
JBRWilkinson
Cadangan malam saya "mencerminkan" gambar-gambar VM ke disk RAID jaringan
Tim Williscroft
9

Dibutuhkan ruang aktual? Tergantung. Meskipun Anda mengedit, saya masih tidak begitu yakin saya mengerti maksudnya. Anda bahkan tidak dapat membeli hard drive 20GB sekarang jika Anda mencobanya. Anda hampir selalu menggunakan hard drive ukuran apa pun yang memiliki rasio GB / $ terbaik. (Atau drive cepat kecil (SSD) dan drive penyimpanan lebih lambat besar) Thats sekitar 1TB sekarang (terakhir kali saya melihat pula ...). Jika Anda ingin turun menjadi 500gb, Anda akan membayar 80% dari biaya untuk 50% dari ruang.

Saya berpendapat bahwa seseorang meminta Anda untuk meletakkan nomor pada seberapa banyak ruang yang Anda "butuhkan", bahkan tidak benar-benar mengerti apa yang mereka minta.

Zack
sumber
11
Anda bahkan tidak dapat membeli hard drive 20GB sekarang jika Anda mencoba .. ini. Saya baru saja memeriksa daftar komponen perusahaan lokal tempat majikan saya membeli PC - hard drive SATA desktop terkecil yang mereka miliki adalah 250 GB. Harganya hampir 90% dari harga drive 500 GB serupa. Tidak ada uang yang dapat dihemat dalam menghemat ruang hard disk.
Carson63000
2
@ Carson63000: Saya dapat melihat perusahaan menggunakan informasi ini untuk menentukan apakah akan membeli SSD atau HDD. Jika Anda dapat bertahan dengan 128G, maka SSD terjangkau (~ US $ 200). Jika Anda benar-benar membutuhkan 250G atau lebih, maka Anda akan kesulitan untuk membuat kasus untuk menghabiskan 10x lebih banyak untuk SSD untuk jumlah ruang yang sama.
TMN
@ TMN: Ada juga pilihan SSD dan hard disk keduanya, yang saya dapatkan sekarang. SSD memotong waktu tautan saya banyak sekali, dan hard disk sangat bagus untuk menyimpan banyak barang.
David Thornley
Ruang yang dialokasikan akan per profil pengguna dan bukan hard disk yang sebenarnya !!.
Aditya P
4

Ruang hard disk sangat murah . Mengapa Anda tidak memberikan setiap pengembang harddisk terabyte? Menghemat mereka dari membuang waktu membersihkan disk mereka setiap minggu.

Yang sedang berkata, saya menggunakan sekitar 150 gb terabyte itu, basis kode kami sendiri sekitar 9 gb.

Carra
sumber
Saya tidak mencoba memperdebatkan tentang biayanya. Dan setelah menaikkan faktor biaya ternyata menyusahkan dalam hal ini.
Aditya P
Ruang hard disk hanya semurah sistem dan media yang diperlukan untuk tetap didukung dan waktu yang diperlukan untuk membajak semua ketika pengembang telah pergi dan seseorang perlu memahami pekerjaannya.
Blrfl
@ Blrfl: Saya tidak melihat itu sebagai masalah. Semua kode / analisis berada dalam solusi kontrol sumber. Bahkan jika PC saya terbakar di neraka saya tidak akan kehilangan banyak data.
Carra
@ Blrfl: Penyimpanan pada mesin saya tidak dicadangkan. Saya tahu itu. Saya memiliki ruang drive jaringan (yang) di mana saya dapat menyimpan hal-hal yang tidak nyaman untuk hilang. Ruang jaringan itu adalah tempat pengeluaran.
David Thornley
3

Berikut ini pendapatnya:

Masalah yang saya pahami adalah membatasi ruang penyimpanan hanya untuk menyimpan file kerja untuk mencegah penggunaan yang tidak perlu ...

Anda ingin pengembang terlibat dalam penggunaan luar. Anda ingin mereka mengunduh demo, kode sumber terbuka, dan semua hal lainnya. Tentu saja Anda perlu mengambil langkah-langkah untuk melindungi sisa jaringan dari potensi bencana. Mungkin penelitian mereka harus dilakukan pada gambar VM, tetapi Anda ingin mereka melakukannya. Anda ingin mereka mencoba hal-hal baru, terlibat dalam ide-ide baru. Ketika Anda mengambil ini dari pengembang, mereka mulai mandek dan menjadi kesal. Memang, Anda tidak ingin mereka bermain sudoku atau mengunduh demo Duke Nukem, tetapi dengan membatasi kemampuan mereka hanya karena Anda tidak ingin "penggunaan luar" hanya akan membuat mereka bekerja di tempat lain.

Untuk memasukkannya ke dalam bentuk kutipan Star Wars:

Semakin Anda mengencangkan genggaman Anda, Tarkin, semakin banyak [pengembang] yang lolos dari jari-jari Anda.

Joel Etherton
sumber
Saya tidak bisa setuju dengan Anda lebih lanjut tentang ini. Tapi tempat saya adalah untuk memberikan informasi tentang faktor-faktor yang terlibat, ruang rata-rata, dan komentar (setuju!) Pada perkiraan yang disediakan.
Aditya P
3
"Anda ingin mereka mengunduh demo, kode sumber terbuka, dan semua hal lainnya." Katakan itu kepada "manajer keamanan", "administrator jaringan", "administrator sistem" dan semua yang ingin membuat pengembang hanya menggunakan aplikasi diperbolehkan untuk sekretaris dan resepsionis dan tidak memungkinkan mereka untuk menginstal atau menjalankan hal lain (seperti kompiler, editor, dll.).
jwenting
1
Katakan pada mereka untuk mencari pekerjaan di tempat lain. Jika staf TI tidak bisa berurusan dengan kentang, jangan bekerja di restoran, dan jika mereka tidak bisa berurusan dengan pengembang, jangan bekerja di perusahaan yang melakukan pengembangan perangkat lunak. Pengembang perangkat lunak ada untuk membuat perangkat lunak baru. Perangkat lunak baru menurut definisi tidak dapat disetujui. Karena itu. setiap admin bersikeras pada perangkat lunak pra-menyetujui adalah dengan definisi unsuited untuk bekerja di lingkungan tersebut.
MSalters
@jwenting, @MSalters: Mengeluh tentang semua keamanan yang Anda suka tetapi ingat apa yang terjadi pada kode sumber Half-Life 2. Keamanan juga penting.
Zan Lynx
@ jwenting: Ya. Saya membuat argumen yang berhasil agar mesin pengembangan saya menjadi Windows Server 2008 dan ditempatkan di grup server kami. Ini memungkinkan mereka untuk memantaunya dengan lebih gesit dan bagi saya memiliki sedikit lebih banyak kendali atas lingkungan saya (karena saya juga administrator lokal).
Joel Etherton
3

Satu-satunya jawaban yang masuk akal untuk ini adalah " cukup ".

Tidak perlu banyak waktu pengembang untuk membayar harddisk baru ...


sumber
2

Mesin kerja utama saya memiliki drive internal 160GB, drive eksternal 160GB, dan drive eksternal 250GB. Semua kecuali drive 250GB hampir penuh (itulah sebabnya saya menambahkan (dengan biaya saya sendiri, btw ...) drive 250GB).

Kami banyak menggunakan gambar VMWare, dan cenderung lebih besar. 3 proyek, masing-masing dengan gambar 20GB ditambah gambar cadangan, adalah 120GB. Itu tidak termasuk ruang yang diperlukan untuk menginstal Oracle, WebLogic, 5 instance JBoss, IDE, perangkat lunak perkantoran, sistem operasi, dll. Yang bersama-sama membutuhkan 100GB atau lebih.

Lalu ada dokumen, eBuku, dan apa pun yang Anda butuhkan. Untuk produktivitas yang kemungkinan akan mencakup beberapa GB musik untuk iTunes (kebanyakan orang yang saya kenal bekerja lebih baik daripada musik, dan semua orang lebih suka musik yang berbeda). Dan ya, karena itu saya menganggap iTunes (atau perpustakaan / pemutar musik lain) sebagai alat produktivitas.

jwenting
sumber
1

Ini adalah pertanyaan yang saya hadapi oleh orang-orang bisnis / manajemen

Anda menyadari bahwa harddisk internal modern harganya sekitar ¢ 3-5 / GB? Jadi Anda menyarankan bahwa ¢ 60 harus cukup untuk pengembang. Itu konyol, kedengarannya sangat dilbertian untuk membuat masalah manajemen keluar darinya.

vartec
sumber
Seperti yang saya katakan kepada @Carra, biaya bukanlah masalah di balik pertanyaan / pernyataan itu.
Aditya P
Pertanyaan yang benar adalah "apakah 320GB cukup untuk pengembang?". Saat ini HDD baru terkecil yang bisa Anda dapatkan. Kecuali Anda ingin menggunakan SSD, tetapi dengan organisasi yang sangat konyol untuk mengusulkan HDD 20GB, itu mungkin benar-benar keluar dari pertanyaan. Lagi pula siapa yang peduli dengan produktivitas pengembang, jika Anda dapat menghemat sekitar $ 150 di komputer mereka!
vartec
tidak diragukan lagi IBM masih dapat menjual kepada Anda yang lebih kecil jika Anda menetapkan mereka workstation termasuk satu dan memesan beberapa ratus ...
jwenting
@jwenting: yeah, mereka "membuat" yang lebih kecil dengan menyembunyikan sebagian besar HDD di BIOS atau firmware.
vartec
pintar, bukankah mereka :) Meskipun itu tidak akan mengejutkan saya jika Lenovo dan yang lainnya memiliki gudang yang penuh dengan perangkat keras yang sudah usang, mereka akan senang untuk menyingkirkan pelanggan korporat yang bersedia membayar mahal untuk itu hanya untuk memiliki "set standar" mirip dengan apa yang telah mereka gunakan selama bertahun-tahun.
jwenting
0

Saya biasanya menggunakan drive yang sangat cepat untuk file-file penting (program dan kode) dan drive besar untuk yang lainnya.

Itu biasanya berarti SSD kecil (128GB) dalam konfigurasi ini:

80GB C: untuk OS, Office, Visual Studio, SQL server, dll.
30GB D: (sisa SSD) di mana saya meletakkan semua kode saya dan beberapa VM
1.5TB E: di sini saya meletakkan sisanya, isos, musik saya , video, dll.

Juan Zamudio
sumber
1
"Tegasnya dari perspektif kerja" Anda membutuhkan 1,5 TB untuk musik dan video? (Saya menggunakan TB di rumah untuk menyimpan film yang direkam oleh Windows Media Center dari kartu TV saya - Saya dapat ratusan, tapi ini komputer pribadi saya .)
Andreas Rejbrand
kata baik, Andreas. Beberapa musik di iTunes tidak boleh lebih dari 10-20GB (yang tentu saja sudah dianggap OP total sudah cukup untuk dev PC :)).
jwenting
Jenis video apa yang Anda pikirkan? koleksi musik saya sekitar 80GB (kebanyakan flacs) tetapi ketika saya berbicara tentang video yang saya maksud adalah video pelatihan, saya punya video dari PDC, MIX, Teched dan konferensi lainnya, sebagian besar video berukuran hampir 1GB, Anda memiliki mental manajemen, saya tidak tahu apakah itu baik atau buruk
Juan Zamudio
kebanyakan video yang saya lihat di layar orang adalah manga, bukan video pelatihan ...
jwenting
Saya tidak suka manga tapi saya tidak bisa memiliki video seperti itu di tempat kerja, sial, kadang-kadang saya harus menjelaskan kepada beberapa manajer bahwa saya sedang belajar EF 4 atau plinq dan mendapatkan penampilan yang aneh
Juan Zamudio
0

Hard drive 1TB di bawah $ 100, jadi apa yang Anda diskusikan? Acara membahas ini lebih mahal, daripada hanya mendapatkan beberapa hard drive ...

Tetap: Jika Anda bekerja dengan file multimedia 20gb adalah lelucon. Sampel 1gb yang tidak terkompresi dan lebih banyak cukup umum di lingkungan itu. Anda akan membutuhkan banyak salinan, dll. Jika Anda bekerja dengan mesin virtual, Anda membutuhkan lebih banyak lagi.

Apa pun di bawah 500GB tidak masuk akal.

Jaster
sumber
0

Cukup bahwa pengembang Anda tidak perlu khawatir kehabisan ruang saat bekerja. Dalam kasus saya itu adalah ruang untuk checkout besar, (disanitasi) salinan database, VM, dan "hal-hal lain" - walaupun beberapa hal lain seharusnya berada di ruang bersama (yang saya perlukan banyak) untuk menghindari duplikasi dalam lingkungan tim.

Penggunaan (penyalahgunaan) ruang pada PC kantor untuk tujuan luar harus menjadi masalah kebijakan dan bukan pembatasan fisik yang ditegakkan pada kotak dev utama mereka - paling tidak karena pengembang adalah jenis orang yang akan dapat menemukan cara-cara kreatif di sekitar Pembatasan sangat mungkin untuk merugikan jaringan Anda secara keseluruhan.

Perhatikan juga bahwa ini adalah salah satu area di mana pengembang dan pengguna lain benar-benar perlu menerima perlakuan berbeda.

Murph
sumber