Quanto spazio di memoria hanno realmente bisogno gli sviluppatori sui sistemi di lavoro?

8

Not Counting the OS And the requirements to run the Development software. The storage space required.

A rigor di termini dal punto di vista del lavoro (organizzazione aziendale e non liberi professionisti). Uno sviluppatore individuale (non considerando un sistema di compilazione) a meno che non nelle aree di sviluppo di video / audio (enormi file grezzi) 3d / grafica. Quanto spazio di archiviazione sarebbe richiesto.

  • Anche se teniamo conto delle prove del software per scaricare o leggere materiale. È giusto o sicuro assumere 20 GB sarebbe più sufficiente e qualsiasi altra cosa sarebbe uno spreco e / o sarebbe utilizzata impropriamente?
  • Qual è il tipico spazio su disco disponibile per sviluppatore in una configurazione di ufficio. Può variare in base al ruolo o ai requisiti specifici e al tipo di lavoro in cui si trova la società. ma in media per uno sviluppatore / programmatore di quanto spazio è normalmente assegnato.

Modifica:

Per chiarire l'intenzione

Queste sono domande che ho affrontato da persone di business / management. Vorrei solo capire di più a questo proposito per dare una risposta (o una risposta migliore) la prossima volta che le trovo. Non sto facendo ipotesi o intendo offendere nessuno a questo riguardo. Sarebbe utile se venissero forniti alcuni link a dati online in questo senso.

Modifica 2:

  • Il problema, a quanto ho capito, stava limitando lo spazio di archiviazione solo al salvataggio di file di lavoro per scoraggiare l'utilizzo estraneo ...
  • Non si tratta di risparmiare / risparmiare sui costi dell'hardware.
posta Aditya P 28.03.2011 - 09:08
fonte

11 risposte

7

Quando parli di solo lo spazio di sviluppo (ad es. le app e i requisiti del sistema operativo), dipende molto dal tipo di progetto (i) con cui hai a che fare. Ad esempio, i linguaggi compilati creano un sacco di file temporanei che vengono a loro volta riconfezionati in file più grandi. Nel mio ambiente attuale, stiamo attualmente eseguendo circa 20 GB per il codice sorgente + i file oggetto compilati. Questo include solo la versione compilata DEBUG, sarebbe più per la compilazione di RELEASE.

Si prega di non dimenticare il sovraccarico del 20% che NTFS o altri file system di journaling (supponendo che Windows qui) abbia bisogno di spazio per l'inserimento nel journal e mantenere il disco rigido in buone condizioni. Devi dimensionare il disco rigido per te stesso .

Quando si proiettano le esigenze del disco rigido del progetto, è necessario considerare i seguenti aspetti:

  • Quali beni sono prodotti finali? Gli articoli di questa classe includono beni artistici, immagini, file audio, ecc. che non sono combinati in un altro file. In un'applicazione web include anche i file CSS e JavaScript. Non dimenticare i tuoi script di compilazione e altri elementi che non sono stati compilati.
  • Quali risorse generano risultati intermedi? Gli elementi di questa classe includono il codice sorgente per linguaggi compilati, file di collegamento, ecc. All'inizio del progetto, dovrai proiettare quanto ti aspetti di ottenere, e rivedere queste stime almeno due volte più a mano a mano che il progetto prosegue.
  • Quanto sono grandi i prodotti finali? Anche le DLL o le librerie condivise occupano spazio. È come se avessi impacchettato la tua applicazione web in un'unità facilmente distribuibile (simile a un file Java WAR o EAR).

Per una stima approssimativa di quanto è grande la stima finale, utilizzare la seguente formula:

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

Se stai pensando a te stesso, come può essere? Considera quanto segue:

  • Il processo di compilazione copia i file statici nella directory di build, nonché le classi compilate.
  • La fase di collegamento e impacchettamento creerà binari finali che saranno più piccoli dei file intermedi combinati e dei file statici nella directory di creazione, ma non li cancellerà quando vengono combinati.
  • Il prodotto finale è solo marginalmente più piccolo in quanto i file binari non possono comprimersi molto bene, ma puoi rimuovere la ridondanza.
  • È necessario tenere conto dello spazio temporaneo per consentire al compilatore di funzionare. Questo è lo spazio extra assegnato al prodotto finale.
  • Infine, è necessario assicurarsi che l'ambiente di sviluppo abbia un po 'di spazio per respirare in modo che il sistema operativo possa mantenere l'unità felice. Ecco a cosa serve l'aumento del 20% alla fine.

Se sei all'inizio di un progetto, chiedi ai tuoi sviluppatori di fornire uno SWAG (Seriamente selvaggio A ** Indovina) su quante classi sarebbero necessarie per implementare la funzione. Moltiplicalo per 16 KB. Alcune classi generano file di oggetti molto più piccoli e altri generano quelli più grandi. Ma questo dovrebbe essere sufficiente per la stima SWAG dello spazio su disco. Assumi anche che i tuoi prodotti finali avranno le stesse dimensioni delle classi che hai stimato.

Presumo che il tuo datore di lavoro desideri impostare quote per ciascun profilo utente. Spero sinceramente che non stiano intrattenendo i profili di roaming con l'ambiente di sviluppo. Il problema con i profili di roaming è il volume di taglio dei file che devono essere trasferiti. Il sistema operativo Windows (e il protocollo Samba) sono notoriamente inefficienti durante il trasferimento di un numero elevato di file. Ci vorrà un ordine di grandezza più lungo per trasferire 100 file 1k di 1 file 100k.

Si spera che questo ti dia abbastanza informazioni per negoziare con il tuo datore di lavoro.

    
risposta data 28.03.2011 - 14:35
fonte
21

Lo sviluppo richiede molto spazio.

Utilizziamo le immagini VM come unità di gestione della configurazione per le impostazioni degli sviluppatori.

Dopo aver copiato la VM sul tuo computer, avvialo, aggiorna il codice sorgente dal VCS e sei in esecuzione. Non perdere tempo con le impostazioni dello sviluppatore.

Ogni immagine VM è di circa 20 GB. 4-5 di quelli. vale a dire generalmente abbiamo bisogno di 100 a 120 Gb Gb

Attenzione, non sono "per utente" sulla macchina, ne servono solo uno.

    
risposta data 28.03.2011 - 09:12
fonte
9

È necessario spazio reale? Dipende. Nonostante la tua modifica, non sono ancora sicuro di aver capito il punto. Se non ci riuscissi, potresti anche comprare un disco fisso da 20 GB al momento. Utilizzerai quasi sempre dischi rigidi di qualsiasi dimensione con il miglior rapporto GB / $. (O una piccola unità veloce (SSD) e un disco di archiviazione più lento più lento) Ecco circa un 1 TB in questo momento (l'ultima volta che ho guardato comunque ...). Se volessi scendere a 500 GB, pagheresti l'80% del costo per il 50% dello spazio.

Direi che qualcuno che ti chiede di mettere un numero su quanto spazio "hai bisogno", non capisce nemmeno quello che sta chiedendo.

    
risposta data 28.03.2011 - 09:50
fonte
4

Lo spazio su disco è incredibilmente economico . Perché non dovresti dare a ogni sviluppatore un disco rigido da terabyte? Li evita di dover sprecare tempo a ripulire i loro dischi ogni settimana.

Detto questo, sto usando circa 150 GB di quel terabyte, la nostra base di codice da sola è di circa 9 GB.

    
risposta data 28.03.2011 - 09:31
fonte
3

Ecco un parere sul punto:

The issue as i understand was restricting the storage space to only the saving of work files to discourage extraneous usage...

vuoi sviluppatori di impegnarsi in un uso estraneo. Vuoi che scarichino demo, codice sorgente aperto e ogni altra cosa. Naturalmente è necessario prendere provvedimenti per proteggere il resto della rete da una potenziale catastrofe. Forse la loro ricerca dovrebbe essere fatta su un'immagine VM, ma tu vuoi che lo facciano. Vuoi che provino cose nuove, che facciano nuove idee. Quando lo togli dagli sviluppatori, iniziano a ristagnare e risentirsi. Certo, non vuoi che giochino a sudoku o scarichino demo Duke Nukem, ma limitando le loro capacità semplicemente perché non vuoi che "l'uso estraneo" possa solo farli funzionare altrove.

Per metterlo nella forma di una citazione di Star Wars:

The more you tighten your grip, Tarkin, the more [developers] will slip through your fingers.

    
risposta data 28.03.2011 - 14:45
fonte
3

L'unica risposta ragionevole a questo è " enough ".

Non ci vogliono molte ore di sviluppo per pagare un nuovo hard disk ...

    
risposta data 28.03.2011 - 14:46
fonte
2

La mia macchina da lavoro principale ha un'unità interna da 160 GB, un'unità esterna da 160 GB e un'unità esterna da 250 GB. Tutti tranne l'unità da 250 GB sono quasi pieni (motivo per cui ho aggiunto (a mie spese, btw ...) l'unità da 250 GB).

Usiamo molto le immagini VMWare e quelle tendono ad essere piuttosto grandi. 3 progetti, ciascuno con un'immagine da 20 GB più un'immagine di backup, è 120 GB. Ciò non include lo spazio necessario per installare Oracle, WebLogic, 5 istanze di JBoss, IDE, software per ufficio, sistema operativo, ecc. Ecc. Che insieme occupano un altro 100 GB circa.

Poi ci sono documenti, eBook e qualsiasi altra cosa tu abbia bisogno. Per produttività che probabilmente includerà alcuni GB di musica per iTunes (molti di quelli che conosco funzionano meglio con la musica e tutti preferiscono musica diversa). E sì, considero quindi iTunes (o un'altra libreria / lettore musicale) uno strumento di produttività.

    
risposta data 28.03.2011 - 09:38
fonte
1

These are questions i had faced by business/management people

Ti rendi conto che i moderni harddisk interni costano qualcosa come ¢ 3-5 / GB? Quindi stai suggerendo che ¢ 60 dovrebbe essere sufficiente per lo sviluppatore. È ridicolo, sembra molto dilbertiano farne un problema di gestione.

    
risposta data 28.03.2011 - 10:15
fonte
0

Di solito utilizzo un'unità molto veloce per i file importanti (programmi e codice) e una grande unità per tutto il resto.

Questo di solito significa un SSD piccolo (128GB) in questo configurarion:

80 GB C: per OS, Office, Visual Studio, SQL server ecc.
30 GB D: (il resto dell'SSD) in cui ho inserito tutto il mio codice e alcuni video della VM 1.5TB E: qui metto tutto il resto, iso, musica, video, ecc.

    
risposta data 28.03.2011 - 09:39
fonte
0

1 TB di hard disk è inferiore a 100 $, quindi di cosa stai discutendo? L'evento che discute di questo è più costoso, piuttosto che prendere alcuni dischi rigidi ...

Ancora: Se lavori con file multimediali, 20 GB è uno scherzo. I campioni non compressi da 1 GB e più sono abbastanza comuni in questo envoirement. Avrai bisogno di molte copie, ecc. Se lavori con macchine virtuali, ne hai bisogno ancora di più.

Qualche cosa sotto 500gb non è ragionevole.

    
risposta data 28.03.2011 - 15:09
fonte
0

Sufficiente che i tuoi sviluppatori non debbano preoccuparsi di rimanere senza spazio mentre lavorano. Nel mio caso questo è spazio per grosse casse, copie (sterilizzate) di database, VM e "altre cose" - anche se alcune delle altre cose dovrebbero essere su spazio condiviso (di cui mi servirebbe molto) per evitare la duplicazione in un ambiente di squadra.

L'uso (abuso) di spazio su un PC di lavoro per scopi estranei dovrebbe essere una questione di politica e non di limitazioni fisiche forzate sulle loro principali dev box - non ultimo perché gli sviluppatori sono il tipo di persone che saranno in grado di trovare modi creativi arrotondano le restrizioni molto probabilmente a scapito della tua rete nel suo complesso.

Nota anche che questa è una di quelle aree in cui gli sviluppatori e gli altri utenti hanno effettivamente bisogno di ricevere trattamenti diversi.

    
risposta data 28.03.2011 - 15:32
fonte

Leggi altre domande sui tag