Perché non tutte le aziende acquistano gli sviluppatori il miglior hardware?


287

Mi manca qualcosa.

Il costo per l'assunzione di un programmatore nella mia zona è compreso tra $ 50 e $ 100 l'ora. Una macchina di fascia alta costa solo $ 3.000, quindi il costo per l'acquisto di un computer veramente eccezionale ogni tre anni arriva a $ 0,50 / ora. ($ 3000 / (150 settimane * 40 ore))

Hai bisogno di una macchina di fascia alta ? No, i $ 3000 qui rappresentano il massimo che potrebbe essere speso, non l'importo che mi aspetterei. Questo è all'incirca il costo di un iMac o MacBook di fascia alta (17 pollici).

Supponiamo quindi di poter risparmiare $ 2000 ogni tre anni acquistando computer più economici e lo sviluppatore medio guadagna $ 60. (Questi sono i numeri più caritatevoli che posso offrire ai contatori di fagioli. Se risparmi solo $ 1000 o $ 750, questo rafforza solo il mio caso.) Se quei computer più economici ti costano solo 10 minuti di produttività al giorno. (Non è affatto un tratto, sono sicuro che la mia macchina mi costa più di così.) Quindi in 3 anni le 125 ore perse si sommerebbero a una perdita di $ 7500. Una perdita di 1 minuto al giorno ($ 750) darebbe un guadagno netto di $ 1250, il che compenserebbe a malapena il costo del morale scarso.

È un caso di "penny-wise and pound-foolish" o ho semplificato troppo la domanda? Perché non esiste un accordo universale (anche nell '"impresa") secondo cui gli sviluppatori di software dovrebbero avere un ottimo hardware?

Modifica: dovrei chiarire che non sto parlando di un desiderio di urlare prestazioni veloci che renderebbero invidiosi i miei amici e / o un SSD. Sto parlando di macchine con troppo poca RAM per gestire il loro normale carico di lavoro, il che porta a congelamento, riavvio e (nessuna esagerazione) circa 20 minuti per l'avvio e l'apertura delle applicazioni tipiche in un normale lunedì. (Non spengo tranne i fine settimana.)

In realtà sono in programma di ottenere presto una nuova macchina e migliorerà un po 'le cose. (Passerò da 2 GB a 3 GB di RAM, qui nel 2011.) Ma poiché la nuova macchina è mediocre per gli standard attuali, è ragionevole aspettarsi che sarà inaccettabile anche prima della data di pensionamento.

Aspettare! prima di rispondere o commentare:

  1. $ 3000 non importa. Se la macchina che desideri costa meno di questo, questo è il motivo in più per cui avrebbe dovuto essere acquistato.
  2. Non sto chiedendo aggiornamenti più frequenti. Solo hardware migliore nello stesso programma. Quindi non ci sono costi nascosti di installazione, ecc.
  3. Per favore, non discutere la differenza tra hardware bleeding edge e hardware molto buono. Sto facendo pressioni per l'ottimo hardware, come in una macchina che è, nel peggiore dei casi, una delle migliori macchine prodotte tre anni fa.
  4. $ 50 - $ 100 / ora è una stima del costo del lavoro , non dello stipendio. Se lavori come appaltatore, è la tariffa di fatturazione utilizzata dall'agenzia che include le spese e i profitti, il datore di lavoro Social Sec. contributo, contributo dell'assistenza sanitaria dei datori di lavoro, ecc. Non commentare questo numero a meno che non lo si sappia che non è realistico.
  5. Assicurati di fornire nuovi contenuti. Leggi tutte le risposte prima di fornirne un'altra.

14
Forse lo fanno, ma non tutte le volte che vuoi? Qualsiasi workstation che acquisti sarà "la migliore" solo per 6 mesi, nella migliore delle ipotesi. Di solito un modello migliore esce il prossimo trimestre. Per avere sempre il meglio, dovresti aggiornare ogni 3-5 mesi. È difficile da mantenere.
FrustratedWithFormsDesigner,

11
C'è anche un fattore umano. Acquista una macchina veloce e ottieni tutta quella produttività, quindi trascorri 10 minuti al giorno nel radiatore dell'acqua e perdi tutto e poi alcuni. Il capo vede entrambe le parti, quindi la discussione sulla produttività pura perde peso.
JeffK,

4
Sicuramente so che potrei usare un po 'più di pugno nella mia macchina. Non tanta potenza della CPU ma RAM. Tra l'esecuzione di più istanze di un IDE, i browser e altri programmi vari altri 4 GB e un secondo monitor non farebbe male ...
Rig

24
Uno sviluppatore senza SSD è davvero uno spettacolo triste ...
ShaneC

9
Spendiamo 4-5k in media per una configurazione di sviluppo qui a SE ...
Zypher

Risposte:


224

Molte aziende sono pazze in questo modo.

Sul serio. Se chiedessi a 10.000 mangiatori di tecnologia, "Diciamo che hai pagato Danica Patrick $ 100.000.000. Pensi che potrebbe vincere la Indianapolis 500 andando in bicicletta?", Sono sicuro che nessuno di loro direbbe "Sì".

Eppure una buona percentuale di questi stessi manager sembra pensare che gli sviluppatori di software altamente pagati dovrebbero essere altrettanto produttivi con strumenti e condizioni di lavoro scadenti come quelli buoni - perché, naturalmente, quei programmatori pigri e incapaci vengono pagati un sacco di soldi e dovrebbe essere in grado di pedalare quella bicicletta più velocemente.

Ora, in cosa consistono esattamente gli strumenti e le condizioni di lavoro ottimali dipende dal lavoro da svolgere. Le persone che codificano il kernel Linux hanno bisogno di diversi tipi di hardware rispetto ai progettisti di siti web. Ma se la società può permetterselo, è folle non ottenere alle persone ciò di cui hanno bisogno per essere il più produttivi possibile.

Una società per cui ho lavorato aveva una base di codice sorgente da 9 GB, principalmente in C, e la cosa di cui avevamo più bisogno erano le build veloci. Sfortunatamente, stavamo lavorando principalmente con hardware che era stato mediocre cinque anni prima, quindi le persone erano comprensibilmente riluttanti a costruire molto altro da quello su cui stavano lavorando in quel momento, e questo ha avuto il suo pedaggio attraverso bassa produttività, problemi di qualità e build rotte . La compagnia aveva i soldi per aggiornare l'hardware, ma era stranamente avaro. La scorsa estate sono falliti dopo aver incassato oltre $ 100 milioni perché i loro due maggiori clienti li hanno abbandonati dopo scadenze ripetutamente perse. Ci è stato chiesto una volta di suggerire modi per migliorare la produttività; Ho presentato lo stesso tipo di analisi costi-benefici dell'OP. È stato respinto perché il management ha dichiarato: "Questo deve essere sbagliato - possiamo '

Un'altra società per cui ho lavorato aveva ottimi computer per i programmatori, ma ha insistito sul fatto che tutti lavorassero a piccole scrivanie in una grande folla affollata senza partizioni. Questo è stato un problema perché molti di noi stavano lavorando con hardware prototipo delicato. C'era poco spazio per metterlo sui nostri banchi e la gente passava, lo spazzolava e lo batteva sul pavimento. Hanno anche investito $ 47 milioni in denaro VC e non avevano nulla da dimostrare.

Non sto dicendo che i cattivi strumenti e le condizioni di lavoro da sole abbiano ucciso quelle aziende. Ma sto dicendo che pagare un sacco di soldi a qualcuno e poi aspettarsi che siano produttivi con strumenti e condizioni di lavoro scadenti è un "canarino nella miniera di carbone" per un approccio fondamentalmente irrazionale agli affari che probabilmente finirà in lacrime.


Nella mia esperienza, il singolo più grande killer di produttività per programmatori si sta distraendo. Per le persone come me che lavorano principalmente con i linguaggi compilati, un'enorme tentazione è che le costruzioni sono lente.

Quando premo il pulsante "costruisci ed esegui", se so che proverò tra cinque secondi, posso escludere. Se so che saranno cinque minuti, posso impostare un timer e fare qualcos'altro, e quando il timer si spegne posso iniziare il test.

Ma da qualche parte nel mezzo c'è la fossa malvagia di attività che portano alla noia che porta a perdere tempo, come leggere blog e P.SE. Ai tassi che faccio pagare come consulente, vale la pena per me buttare soldi all'hardware con specifiche prodigiose per tenermi fuori da quel fossato. E oserei dire che varrebbe la pena anche per molte aziende. È solo la natura umana e trovo molto più utile accettare e adattarsi alle normali debolezze comuni a tutti i primati piuttosto che aspettarsi l'autocontrollo sovrumano.


55
+1 per la menzione della zona. Una volta ho lavorato per un'azienda in cui era comune che gli sviluppatori facessero anche assistenza diretta ai clienti. Ora, anche se stai scrivendo un codice altamente gestibile e davvero buono, a volte ci sono momenti in cui ti destreggi come cinque o sei pacchetti di informazioni nel tuo cervello, e devi rimetterli giù atomicamente. Se arriva una chiamata in tali momenti 3 ore prima di uscire di casa, può davvero distruggere il resto della giornata. Non specificamente a causa del ragazzo dall'altra parte, ma a causa della distruzione dello stato. ...
galleria

34
Ma i gestori non ti considerano Danica Patrick, ti ​​considerano il ragazzo delle consegne UPS e perché hai bisogno di un nuovo camion quando il camion di 5 anni funziona bene?
Mark Ransom,

19
"Questo deve essere sbagliato - non possiamo essere così stupidi" err, indovina ancora! MrGreen
Da nessuna parte l'uomo,

15
@Mark Ransom: Troppo vero - ed è peggio, perché siamo stipendiati. I conducenti UPS vengono pagati in più per il lavoro straordinario. Molti adorano le vacanze: stanchezza, ma stipendio a tempo pieno! Ma gli straordinari dei programmatori sono gratuiti per i loro datori di lavoro. Se le aziende tecnologiche dovessero pagare i programmatori una volta e mezza per il lavoro oltre le quaranta ore di una settimana, avremmo tutti macchine e tirocinanti da screamin per portarci il caffè nei cubetti.
Bob Murphy,

5
@Bob Murphy "Ma gli straordinari dei programmatori sono gratuiti per i loro datori di lavoro." Questo è vero solo se non sei disposto a tracciare linee e solo se non sei disposto a chiedere uno stipendio commisurato a ciò che porti sul tavolo.
PeterAllenWebb,

170

Suggerirei che, in realtà, un costo è visibile e quantificabile, mentre l'altro costo non è nessuno dei due.

Se non riesco ad aggiornare l'hardware sanguina fino a $ 1000 per sviluppatore a settimana dal budget, nessuno al di fuori (leggi: sopra) il dipartimento tecnico lo vede mai. Il lavoro viene ancora svolto, solo a un ritmo più lento. Anche nel reparto tecnico, il calcolo di tale cifra si basa su numerosi presupposti non dimostrabili.

Ma se un responsabile dello sviluppo richiede $ 3000 per sviluppatore, in particolare in un'azienda con oltre 50 sviluppatori, ciò richiede molte giustificazioni. Come fa a farlo?


3
Ottimo punto
Eric Wilson,

6
Se il gestore deve chiedere $ 3000 per sviluppatore, sì, è doloroso. Tuttavia, se può chiedere $ 83 per sviluppatore al mese, potrebbe essere più appetibile.
dal

24
Penso che sia responsabilità del manager giustificare il costo di macchine adeguate per il suo team. In passato ho trovato utile classificare i computer in base ai ruoli. I computer utilizzati da sviluppatori e designer vengono classificati come "per la creazione di contenuti". Elencate semplicemente i requisiti delle applicazioni invariabilmente robusti per l'IDE del vostro negozio insieme ad alcune spese generali e fate un breve elenco di macchine accettabili da HP, Lenovo, ecc. Se questo non viene accettato e il team finisce con hardware ridicolmente poco performante, il manager dovrebbe davvero assumersi la colpa per il fallimento giustificare macchine migliori.
Angelo,

8
Se il manager scagliona le sue richieste, (50/3 = 17) che è (17 * $ 3.000 = $ 51.000), per estendere le richieste per tre anni poiché non tutti gli sviluppatori hanno bisogno della nuova macchina allo stesso tempo, il che lascia poco meno di 17 richieste per anno e poi divide di nuovo quelle richieste per mese (17/12 = 1,6 che ha arrotondato due o due ogni mese per il primo trimestre e uno ogni mese in seguito a 2 * $ 3.000 = $ 6.000), avrà meno di due computer al mese che è un obiettivo molto più raggiungibile che chiedere, (50 * $ 3.000 = $ 150.000), contemporaneamente.
Michael Eakins,

13
Molti megacorpo sono tali che il tempo di sviluppo viene sprecato per motivi molto più sciocchi (come una scarsa allocazione del carico di lavoro), quindi non è affatto una sorpresa per me.
singpolyma,

95

Metterò qui i miei 2 centesimi dal lato del datore di lavoro ... che è anche uno sviluppatore.

Concordo sul fatto che le macchine di fascia bassa sono inutili ma le macchine di fascia alta sono eccessive.

Esistono diversi motivi per cui non ottieni le macchine di fascia alta:

  1. Il flusso di cassa è un vero problema, non solo una teoria . Potresti essere pagato $ 60K- $ 80K all'anno, ma questo mese abbiamo un importo totale in banca che deve essere diviso tra tutte le cose concorrenti in quel mese.
  2. C'è una scala mobile di prezzo e beneficio . Le macchine di fascia bassa sono nel complesso piuttosto inutili ... se stai ottenendo un celeron o un chip a bassa potenza, quindi sfreccia via ... le macchine di fascia media hanno buone prestazioni complessive, una volta che sei in cima stai iniziando a sintonizzarti per un scopo specifico (CAD, Gaming, codifica video ecc.) ... e i costi di ottimizzazione extra.
  3. Le parti generali sono generalmente più economiche , le sostituzioni, le garanzie e le assicurazioni svolgono un ruolo nei costi di gestione complessivi e nei tempi di fermo mentre si procede alla sostituzione.
  4. Le macchine di fascia alta si deprezzano appena più velocemente di quelle 1/3 del prezzo .
  5. Se stai eseguendo la programmazione grafica di fascia alta o il lavoro CAD, il grugnito extra è valido; se stai semplicemente scrivendo un software aziendale standard, eseguendo Visual Studio o Eclipse e navigando su Stackoverflow per le risposte, la potenza extra è rappresentata dai diritti di vantarsi, ma realisticamente una macchina di fascia media non massimizzerà la CPU o la memoria in una scatola standard oggi.
  6. Le macchine di fascia media costruite oggi martellano e tra 2 anni saranno due volte più veloci (anche se un po '). Scherzi a parte, si accendono rapidamente.
  7. Alla fine della giornata, la maggior parte di ciò che fai è digitare il testo non elaborato in file di testo e inviarlo al compilatore ... quel bit in realtà non è cambiato dal VI negli anni '70 e le macchine di fascia bassa oggi sono milioni di volte più veloci rispetto a quelli di allora ... il tuo ritmo di programmazione non è poi così diverso.

Quindi, per riassumere, dovresti avere una buona attrezzatura e una buona attrezzatura, fa una grande differenza, ma le macchine di fascia alta non sono realmente giustificabili per lo "sviluppatore generale".

... ah, e ora ti ho letto di modifica e questo è ciò di cui stai parlando, lascerò quanto sopra perché l'ho scritto ora ... Sì, la tua macchina è sottodimensionata per gli strumenti.

Per chiarire una macchina di fascia media dovrebbe avere

  • 2 core min, 4 core più buoni in questa fase sono eccessivi.
  • 4 GB sono un minimo, 8 GB sono buoni e più è bello avere.
  • L'SSD dovrebbe essere standard ma in realtà un'unità WD da 10KRPM o Seagate da 80-100 GB dovrebbe andare bene.
  • 2 monitor da 19 "sono minimi con una scheda video ragionevole.

24
la mia macchina fallisce tutti e 4 i tuoi punti elenco - ad esempio, ho dovuto supplicare di passare da 512 a 1 concerto di RAM. Non ci stiamo solo lamentando di non avere l'ultima configurazione di alienware con LED freddi e piastra diamantata.
Peter Recore,

23
"il tuo ritmo di programmazione non è poi così diverso", potrebbe essere vero (se ignoriamo che gli strumenti di oggi sono enormi porci di risorse rispetto a allora), ma penso che sia abbastanza sicuro dire che ciò che la maggior parte degli sviluppatori crede non è ' t ritmo di programmazione , ma tempo di risposta : quanto tempo ci vuole per apportare una modifica e vederne gli effetti nell'applicazione in esecuzione? Se il tempo di inversione tra colpire la corsa e vedere il cambiamento in azione è di 10-15 secondi, è una bestia completamente diversa da, diciamo, 5-10 minuti. Tuttavia, la quantità di tempo impiegata per la codifica può essere essenzialmente la stessa.
un CVn

55
Se solo avessi avuto una macchina da lavoro con le tue specifiche di "fascia media".
Yoosiba,

28
FWIW, molte aziende considererebbero la tua macchina di fascia media come hardware di classe server! Sono fortunato per il fatto che lavoro in un posto dove riceviamo queste specifiche, ma non tutti lo fanno.
Paul Wagland,

4
@Bob Murphy: hai davvero bisogno di IncrediBuild o di una configurazione di compilazione distribuita simile. È molto più facile giustificare un server build 12 core con 16 GB come risorsa condivisa, anche solo perché non c'è gelosia personale coinvolta nelle risorse condivise (in più, in genere si pagano server da budget diversi)
MSalters

56

La differenza di produttività tra le macchine "di fascia alta" e le macchine "quasi di fascia alta" è trascurabile. La differenza di prezzo è significativa.

Per non parlare del supporto IT per macchine diverse invece di avere tutti gli sviluppatori che utilizzano le stesse immagini HW e SW (cosa che non puoi fare se acquisti una macchina di fascia alta per ogni nuovo noleggio, la fascia alta sarà ogni volta diverso). Inoltre, le persone che hanno ottenuto il massimo dell'anno scorso vorranno aggiornarsi perché quel nuovo cubo del principiante ha una macchina "migliore" di loro, e sono davvero molto più importanti, vero?

A meno che tu non abbia davvero bisogno della macchina di fascia alta per il tuo lavoro, non vedo alcun motivo per buttare via i soldi.


12
Ma la differenza è che il costo è più trascurabile. E la mia produttività ha un vero successo quando devo chiudere tutto e riavviare, cosa che succede più volte alla settimana. Se hai una visione diversa dei relativi costi, forse potresti includere i numeri nella tua risposta. Tuttavia, sono d'accordo sul fatto che quasi la fascia alta sarebbe molto soddisfacente, vorrei averlo.
Eric Wilson,

8
nella stessa direzione la differenza tra hardware di fascia alta e medio è enorme e la differenza di prezzo è trascurabile. C'è un certo ammortamento sull'hardware, questo è certo o stiamo semplicemente buttando soldi dalla finestra, poi di nuovo ... nel caso degli sviluppatori, troppi ammortamenti equivalgono anche a buttare soldi dalla finestra! C'è un punto debole da raggiungere e, quando si tiene conto degli aspetti psicologici del mantenere felici gli sviluppatori, tenderà ad essere più vicino alla fascia alta che alla fascia media
Newtopian,

24
@FarmBoy Se la tua produttività ha un vero successo, vai dal tuo capo e giustifica un aggiornamento. Hai fatto una domanda generale e la mia risposta è per un caso generale .
littleadv,

8
Il costo del supporto per un'ampia varietà di macchine è incredibile. I singoli utenti tendono a guardare oltre questo (e dovrebbero, non è il loro lavoro), ma sono stato in tre aziende che sono arrivati ​​tutti alla stessa conclusione. Desktop economici + server VM di fascia alta hanno più senso.
Christopher Bibbs,

9
Questo è un pagliaccio; nessuno parla di fascia alta rispetto a quella di fascia alta. Nella mia esperienza, è tra buono e ridicolmente insufficiente.
niXar,

27

Perché la maggior parte dei datori di lavoro non capisce come gli sviluppatori pensano, agiscono o lavorano. Oppure, come i migliori strumenti possono far risparmiare denaro all'azienda aumentando la produttività. Questo porta alla perdita di un punto sul test Joel, incapacità di fornire "i migliori strumenti che il denaro può comprare". Ciò comporta anche una perdita di produttività e soddisfazione sul lavoro. È così e basta. Forse un giorno puoi avviare la tua compagnia e segnare 13/13. Fino ad allora, poni domande in anticipo con il tuo datore di lavoro in modo da sapere cosa aspettarti prima di assumere il lavoro.

Per quanto riguarda la tua situazione attuale, se senti che ti ascoltano e si fidano di te, avvia la discussione. Vedi se ti daranno un aggiornamento. So che lavorerei un po 'di più se avessi un impianto di fascia alta con doppi monitor da 50 "con cui lavorare. Incollami nella matrice.

Lo stesso motivo per cui le persone vogliono una Mercedes CLS quando una Toyota Camry ti porta lì allo stesso modo. Certo, puoi stringere solo qualche secondo in più di timeout di compilazione con una nuova macchina, ma le apparenze contano.


Trovo che questa sia una forma di motivazione importante ed economica (in termini monetari!). Genera ogni tipo di atteggiamento positivo nei confronti dell'azienda e del lavoro, ti dà la sensazione di essere valutato, ... Non bisogna dimenticare che i "lavoratori del cervello" non lavorano per soldi.
slovacco,

Concordato. Se le persone apprezzano il proprio lavoro, è più probabile che facciano un buon lavoro (su The Evitmobile ™). Ottenere ottimi strumenti sembra un modo molto semplice per aumentare il divertimento dei dipendenti.
Jonta,

12

La tua matematica non sembra includere il tempo necessario per gestire il flusso costante di hardware in entrata e in uscita dall'azienda - ci vorrebbe un paio di dipendenti IT in più a seconda delle dimensioni della tua azienda, quindi scegli un altro $ 50- $ 100k / anno in cima ai tuoi numeri. Inoltre, perdi produttività nel giorno in cui sostituiscono il computer. Se risparmiano su personale IT dedicato, dovrai fare i backup e ripristinarti, perdendo forse un giorno o due nel processo. In altre parole, penso che sia un po 'più complicato di quanto pensi.


5
Potrebbe anche essere più complicato di quanto immagino, ma non sto chiedendo aggiornamenti più frequenti, solo una migliore qualità al momento dell'acquisto di nuovo hardware.
Eric Wilson,

In genere ho scoperto che anche dopo che (IT aziendale) ha eseguito i backup e i ripristini, ho dovuto ancora risolvere le cose. In genere ho chiesto loro di non fare altro che darmi l'immagine standard; Mi occuperei del resto. (Anche un'opportunità per ripulire un po 'le cose.)
Ken Henderson,

4
Quello che dici è vero, tuttavia ignora anche il fatto che la maggior parte di questo deve ancora avvenire comunque. L'idea dei poster è di andare dalla più alta alla più bassa della scala, non da bassa a molto bassa.
Paul Wagland,

Questa è una delle risposte più realistiche. Soprattutto per le grandi aziende, la divisione dei servizi desktop del supporto IT è allineata intorno alle macro-efficienze, il che significa politiche che sono efficaci per 20.000; 50.000 o addirittura 100.000 dipendenti, di cui solo una minima parte ha esigenze specifiche come uno sviluppatore. Il costo di gestione di tali eccezioni nel contesto dell'enorme macchina può essere piuttosto elevato.
Rex M

9

Un problema con il tuo argomento è il flusso di cassa. Se non hanno i soldi, il punto è discutibile. L'altro è il ritorno sull'investimento.

Questo potrebbe non essere applicabile alle aziende in cui hai lavorato. Alcune aziende sono fortemente indebitate e / o con povero denaro. Preferirebbero spendere i risparmi che descrivi su qualcosa che venderà più widget o software. Devi dimostrare che il tuo guadagno nella produzione supera un investimento uguale in altre aree.

Se una società di software è in modalità di manutenzione e ha bisogno di più vendite, potrebbe esserci un migliore ritorno sulla spesa per vendite e marketing.

Penso che tu debba affrontare il fatto che, nel tuo caso, i soldi sono spesi meglio per un programmatore, rispetto a un'altra area dell'azienda.

Fai attenzione a questo argomento se hai uno stipendio. Vorranno solo che lavori di più per colmare la differenza;)


6
Quindi non dovrebbero assumere sviluppatori. Certo, se non hai soldi o non c'è la prospettiva che l'investimento venga rimborsato, non puoi / non dovresti spendere. L'irrazionalità sta nel spendere un sacco di soldi in risorse costose (sviluppatori) mentre si punta su una risorsa economica (hardware). Se la scusa è che si tratta di budget separati, ciò fa semplicemente un passo indietro: l'irrazionalità sta nel fatto di avere un enorme budget per il personale combinato con un budget hardware minuscolo.
rwallace,

1
La società può prendere in prestito denaro per acquistare macchine migliori.
Kamil Szot,

Questa è una cattiva attitudine gestionale: "Fai attenzione a questo argomento se sei in stipendio. Vorranno solo che ti impegni di più per fare la differenza." Con la presente prometto di lavorare lo 0,5% in più per compensare la differenza tra l'acquisto di hardware per un valore di $ 750 ogni tre anni e l'acquisto di un valore di $ 2000 in quel momento. (Non ho bisogno di prometterlo, dal momento che i miei strumenti migliori quasi certamente lo faranno accadere automaticamente, ma ignoreremo quel punto.) Potrei capire forse avendo qualche mese difficile, ma queste spese dovrebbero essere estremamente gestibili. In caso contrario, la tua azienda è nei guai.
PeterAllenWebb,

8

Ho sostenuto questo argomento nel mio lavoro per passare da laptop a desktop. Ho detto che tutti dovrebbero essere su un desktop e se hanno bisogno di un computer a casa - procuratene uno anche lì.

I vantaggi di velocità di un buon computer non sono trascurabili, soprattutto se si rimuovono gli arresti anomali da hardware molto vecchio.

Per quanto riguarda "top of the line" e "near top of the line", direi che la parte superiore della linea è sempre dove dovresti essere. A "quasi al vertice della linea" è possibile aggiornare ogni 2 anni anziché 3 e finire con un hardware migliore in media.

Ho raccomandato cyberpowerpc.com e la mia azienda mi ha permesso di acquistare un PC da loro (ragazzo di marketing), ma hanno acquistato tutti i PC programmatori da Dell perché il supporto valeva il costo aggiuntivo. Pensaci ... è 1,5-2x per acquistare un PC da Dell, ma ti rendi conto che se il PC si spegne e non riesci a risolverlo velocemente perdi soldi.

Un PC lento è come un PC rotto che non stai riparando.


A proposito: ogni sviluppatore dovrebbe avere un PC degno di alimentare due monitor 1900x1200. Se il tuo PC non riesce a farlo, è il momento di aggiornare definitivamente.
Chris Kluis,

Sei passato dai laptop ai desktop? Solo non capisco alcune persone. Preferirei di gran lunga avere il laptop. Va alle riunioni con me dove ho tutto a portata di mano per rispondere alle domande e prendere appunti veloci. Posso facilmente lavorare a casa senza perdere tempo a configurare due ambienti di lavoro. È anche un secondo monitor gratuito.
Zan Lynx,

Ho sentito da qualche parte che Microsoft dà ad alcuni dipendenti due computer. In questo modo possono eseguire la compilazione su un PC e passare all'altro mentre il primo è occupato. Non ho problemi a fornire anche un laptop, ma la differenza di velocità è enorme per un laptop rispetto a un PC e il monitor sulla maggior parte dei laptop è uno scherzo.
Chris Kluis,

6

C'è anche una questione di budget: di solito gli sviluppatori sono pagati con un budget diverso rispetto all'hardware per detti sviluppatori, e il loro semplicemente potrebbe non essere abbastanza denaro disponibile nel budget dell'hardware.


4
Probabilmente questo non risponde completamente alla domanda (è più sulla meccanica). Il follow-up sarebbe allora il motivo per cui è il bilancio di hardware sottodimensionato , se si accetta la premessa che si dovrebbe spendere per esempio il 2% dello stipendio sviluppatori sulle stazioni di lavoro?
Andrzej Doyle,

1
@Andrzej, fai un buon punto. Parte di essa dipende dalle dimensioni dell'organizzazione: le grandi aziende sembrano essere particolarmente riluttanti a fornire agli sviluppatori macchine di alto livello poiché tendono a standardizzare il loro hardware a livello di fantino di Excel. Le aziende più piccole di solito sono più flessibili, ma hanno anche meno soldi da buttare.
Timo Geusch,

6

Innanzitutto, per rispondere alla domanda posta:

Non possono fare la matematica o, se lo fanno, in qualche modo credono che non si applichi a loro. Budget e contabilità per hardware e personale sono separati. Le persone in posizione decisionale non hanno mai sentito parlare del problema e sono totalmente inconsapevoli dell'esistenza di un problema.

Ora, alla vera domanda: "Come gestisco questa situazione?"

È essenzialmente un problema di comunicazione. Spieghi il problema e l'interlocutore sente "bla bla bla vogliamo nuovi giocattoli luccicanti". Semplicemente non capiscono.

Se fossi nella tua posizione, farei un breve video intitolato "Possiamo permetterci i vecchi computer?": Stills di una tipica workstation. Sul lato destro, un'area vuota denominata "costo".

Ancora del pulsante di accensione. Sotto: "Avvio del computer. 20 minuti". Nell'area vuota, "Avvio del computer = $ 40". "Apertura IDE = $ 5", "Blocco del computer = $ 80", "costruzione del prodotto = $ 600"

Corri a un ritmo veloce e continua ad aggiungere i numeri, poi confronta con il costo di un nuovo computer e non dimenticare di finire con "Questo video è stato prodotto a casa su un laptop acquistato da $ 500 che supera tutto lo sviluppo" professionale " macchine attualmente disponibili.

Se sei preoccupato che sollevare il problema ti causi problemi, potresti anche portare il tuo laptop al lavoro.

Se non c'è modo di risolvere questo problema, forse dovresti considerare di trovare un altro lavoro.


4

Gli sconti svolgono un ruolo importante anche nel processo di acquisto.

Spit ball (non numeri reali): 100 macchine a 1000 w / sconto del 15% = 85.000

90 macchine @ 1000 w / sconto del 10% = 81.000 + 10 macchine @ 2000 w / sconto del 5% = 19.000 => 100.000

Come già accennato, è necessario aggiungere al mix il costo aggiuntivo per il supporto di macchine "speciali".


4
Ci sarebbe davvero molta differenza nel supporto se fossero le stesse macchine con più RAM e forse dischi rigidi più veloci?
Eric Wilson,

@FarmBoy - Gli aggiornamenti della RAM sono generalmente semplici e facilmente implementabili. HDD - più problematico (perché è più costoso), ma fattibile. Ho aggiornato la RAM sul mio laptop, ho appena avuto un PO firmato dal mio capo, l'ho fatto da solo. La sostituzione dell'intero laptop è stata del tutto fuori discussione. Quindi c'è una differenza.
littleadv,

@FarmBoy: dipende da "più veloce". Se stai parlando di sostituire un 5400 RPM con un 7200, probabilmente no, poiché entrambi sono abbastanza comuni. Se intendi sostituire un 7200 con un 10K, allora probabilmente, poiché le unità 10K sono meno comuni e quindi potrebbero essere più difficili da procurarsi. E il tasso di guasti sugli SSD è abbastanza alto che la società dovrà probabilmente immagazzinare alcune unità sostitutive, quindi anche questo si aggiunge. Vale comunque la pena RAM.
TMN,

4

Personalmente ho sempre avuto almeno un computer di sviluppo OK quando lavoravo per una "piccola" azienda, ma quando si tratta di grandi aziende, i programmatori sono una dozzina rispetto a un project manager con un budget .

Specialmente se lui / lei è una di quelle che hanno grandi idee, leggi: budget approvato.

Qualunque sia l'idea "buona", quella persona avrà bisogno di programmatori davvero bravi per implementare effettivamente il "Nuovo prodotto" migliore "in modo da pagare al programmatore il prezzo necessario.

Ottenere il nuovo computer di sviluppo, per quanto mi riguarda, non passa attraverso lo stesso 'dipartimento' dell'altro budget, quindi mi aspetto di lavorare in cattive condizioni se sei pagato bene :-) Il mio ultimo lavoro: Dell E5xxx + Un LCD 1280x1024 ...


Le grandi aziende stanno battendo questo sito oggi. Faccio eccezione alla tua affermazione su una monetina una dozzina. Deve essere riformulato per "i programmatori mediocri e cattivi sono un centesimo a dozzine". Se sei bravo, in particolare se sei molto bravo in una grande azienda, verrai notato e non sarai considerato un centesimo a dozzine. Se lavori (hai lavorato) per una grande azienda e ti senti come se fossi considerato una dozzina di dozzine, allora suggerirei che potresti non essere buono come pensi di essere un programmatore. I programmatori di grande talento sono una scoperta rara anche se tutti si considerano molto talentuosi.
Dunk,

1
No, hai capito tutto nel modo sbagliato, quello che cerco di sottolineare è che anche se quel project manager può pagarti per quello che sei, i ragazzi a "comprare i computer e mantenerli" non hanno lo stesso budget. Ho guadagnato più un giorno nel mio ultimo lavoro di quanto costasse quel computer ... Se fossi rimasto più a lungo probabilmente mi sarei comprato un altro computer + schermo ma altri problemi come lavorare in un ambiente estremamente caldo e rumoroso (perché non era economico perché c'erano delle reali necessità).
Valmond,

Ok, forse ho sbagliato qualche punto, ma TUTTO SBAGLIATO. LOL. Il mio punto era che se il tuo manager attribuisce un grande valore a te, allora farà in modo che tu ottenga l'attrezzatura che desideri indipendentemente dalle politiche coinvolte. Ovviamente ciò presuppone un manager minimamente competente.
Dunk,

Ovviamente non intendevo "TUTTO SBAGLIATO! BAN! BAN!" :-) e sicuro se lavori per dire almeno un anno in qualsiasi azienda e non hai gli strumenti necessari per lavorare almeno 'correttamente', direi che faresti meglio a smettere e trovarne un altro. Le grandi aziende sono tuttavia complesse e anche se il project manager è intelligente e ti ascolta, un altro dipartimento potrebbe non (ascoltarlo). Bene, questa è comunque la mia esperienza :)
Valmond,

3

L'acquisto di nuovo hardware comporta denaro, il denaro coinvolge i decisori e di solito non sono sviluppatori se la tua azienda è abbastanza grande. Ovviamente abbiamo delle eccezioni ...

Come ha spiegato @Rob, ci sono molte ragioni per non ottenere l' hardware migliore . La tua azienda potrebbe avere una politica che definisce quale tipo di hardware viene acquistato, come sempre con la burocrazia è difficile avere una politica all'avanguardia. Molti manager non si preoccuperanno di adattarlo alle tue esigenze personali, ecc.

Scarsa comunicazione, avversione al rischio e altri difetti:

Consideriamo che hai hardware scadentemente scadente, non è più possibile lavorare in queste condizioni e vuoi fare qualcosa al riguardo.

Ora devi convincere il tuo manager. Bene, di solito dovrai convincere il tuo project manager che dice al tuo manager chi fa rapporto al suo capo e dovrai assicurarti che quel ragazzo capisca davvero i tuoi problemi.
Coinvolge le capacità comunicative e la comprensione tecnica della gestione .

Secondo passo, se sei abbastanza fortunato, la direzione ci penserà. Cosa ottengono?

  • Lavorerai più velocemente con alcune incertezze (non ottengono direttamente soldi come proverai a spiegare).
  • Costerà denaro, ora .

Ciò significa che dovranno scambiare denaro e la loro effettiva pianificazione del tuo lavoro, per un'eventuale opportunità di farti fare qualcos'altro in futuro e che, questo è un investimento ma anche un rischio .
Purtroppo, molti manager sono avversi al rischio . Per non parlare del fatto che quanto più scarsa è la loro comprensione del problema, tanto più rischioso appare. Alcuni potrebbero anche avere difficoltà a riconoscere che qualcuno non ha acquistato l'hardware adatto in primo luogo.

Inoltre, la gestione di solito ha una definizione più breve di ciò che significa a lungo termine . Se viene chiesto loro di fare una sorta di ottimizzazione del budget mensile, potrebbero anche avere incentivi finanziari diretti a non acquistare nuovo hardware! E a loro non importa delle due settimane che potresti risparmiare sei mesi dopo ...

Ovviamente non devi sempre aspettare così tanto quando puoi fare cose meravigliose in un giorno !

Funziona meglio se hai manager intelligenti e di mentalità aperta che ascoltano, comprendono i tuoi problemi, sono pronti ad assumersi rischi ragionevoli e si fidano di te abbastanza da permetterti di esplorare modi creativi per usare il tempo libero.

Questo non è sempre il caso: ho aspettato 3 mesi per ottenere una scheda grafica per collegare il mio secondo schermo mentre mi era proibito acquistarlo da solo (30 €), ho perso 3 giorni per non avere un HDD extra da 500 GB, dovevo aspettare regolarmente diverse ore quando preparazione dei dati per il client a causa della rete lenta da 100 Mbps. Dopo aver chiesto più volte 2 GB di ram, mi è stato detto di acquistarlo da solo e smettere di disturbare la gestione con quei problemi tecnici. E dove stavamo facendo il calcolo scientifico per un grande cliente industriale che era pronto a pagare il prezzo ..


1
Ben detto, buona analisi sul perché . Tuttavia, se sta andando male, puoi dissipare un po 'di spray di aggiornamento attraverso le aperture del case dedicate ( globalpackagegallery.com/… ).
Peter

Lol, aggiornamento spray, lo avrebbero adorato! Spero di non lavorare più per loro :)
Maxime R.

3

A parte la matematica, è improbabile che tutti i tuoi utenti dispongano di macchine di fascia alta. Sviluppare su una macchina più vicina a qualcosa di medio prezzo farà conoscere allo sviluppatore più da vicino l'esperienza (e le sofferenze!) Dei suoi utenti.

Il tuo reparto QA potrebbe avere una macchina con specifiche minime, ma con quale frequenza viene utilizzata? Lo sviluppo su una macchina che è un ambiente target realistico espone presto problemi (mancanza di risposta, scarse prestazioni, condizioni di gara a causa di quella prestazione lenta, ecc.), Che spinge i team a risolverli prima.


Naturalmente, questo non si applica a quelli d'uso che non scrivono app desktop.
Eric Wilson,

Certo che lo fa. Anche le app Flash e anche le pesanti app Web JS traggono vantaggio dall'uso di macchine con specifiche inferiori.
Justin Johnson,

Giusto. Avrei dovuto dire: "Questo non si applica a quelli di noi che non scrivono app desktop o app con interazioni lato client". Il che è ancora un sacco di sviluppatori, e ironia della sorte, questi sono tra i più probabili essere su hardware scadente.
Eric Wilson,

8
L'ho già sentito prima e penso che sia una falsa analogia. Se fosse vero, allora le auto verrebbero costruite usando utensili manuali e trapani elettrici perché è quello che i conducenti hanno a casa. Una macchina con specifiche basse dovrebbe essere utilizzata come parte del test di usabilità, ma non per lo sviluppo.
TMN,

1
questa risposta sottolinea una cosa interessante. Ho visto un gioco che è fallito così tanto quando è stato rilasciato: la maggior parte degli utenti non riusciva a leggere i testi nell'interfaccia perché gli sviluppatori avevano almeno schermi da 21-27 pollici e ridimensionati su quei computer portatili i caratteri da 15 pollici erano resi a 6px . Tuttavia, essere vicini alle specifiche dell'utente è necessario per i test, che dovrebbero essere eseguiti dai tester e non dagli sviluppatori.
BiAiB,

3

Mi è stato chiesto di specificare la macchina che volevo usare qui, con un budget abbastanza limitato. Sono riuscito a inventare un sistema decente a metà strada che funziona nonostante non sia perk pesante.

Inizialmente stavo pensando nella stessa direzione dell'OP qui, il tempo in cui mi siedo qui in attesa di compilazioni o carichi è denaro fuori dalla finestra. Mentre mi muovo, riconosco anche che il tempo che passo per andare a prendere un caffè o camminare verso la stampante è anche denaro fuori dalla finestra.

Piuttosto che preoccuparmi delle piccole quantità di tempo che devo aspettare, perché siamo andati con un sistema di sviluppo meno costoso, ho esaminato le mie abitudini e migliorato le maggiori quantità di tempo che trascorro facendo nulla di particolarmente utile (ahem. .. stackexchange è utile e produttivo per l'avvio, e mi sto attenendo a questo !! :-)) Naturalmente abbiamo bisogno di pause, ma questo è tempo diverso dalle "pause".

Quindi, in un certo senso, in senso generale, questa domanda potrebbe essere l '"ottimizzazione prematura" dell'efficienza del lavoro. Molti ottimi punti sui costi di migrazione, perdendo sugli acquisti di volume, ecc.

Nella tua situazione particolare, in cui stai perdendo tempo nell'ordine di una pausa per riavviare / aprire i programmi, sì, ha molto senso passare a un'apparecchiatura decente poiché la tua produttività è gravemente compromessa, un sistema i3 a metà decente con 4 GB di RAM sono dell'ordine di $ 500 ... Sono sicuro che non ci vorrà molto per recuperare quel costo.


Potrebbe essere "ottimizzazione prematura" se avessi avviato un'azienda senza aver visto l'hardware come un rallentamento. Ma attualmente sembra un collo di bottiglia significativo, e economico da risolvere.
Eric Wilson,

3
Hai bisogno di pause indipendentemente. Ma ridurre al minimo le interruzioni di flusso è fondamentale per la produttività degli sviluppatori. Se uno sviluppatore deve attendere più di circa 30 secondi per ricevere feedback dall'azione precedente, il lavoro rallenterà in modo significativo.
Kevin Cline,

@FarmBoy Se si tratta di un collo di bottiglia significativo, allora ha senso un business case per la gestione.
Stephen,

@Stephen Se questa azienda fosse 1/100 della sua dimensione attuale, prenderei in considerazione l'idea di fare questo caso.
Eric Wilson,

1
+1, puoi sicuramente ottenere una macchina dolce per non molti soldi, se ottimizzi per la produttività degli sviluppatori. Buona scheda grafica? Quasi sicuramente uno spreco di denaro. Enorme disco rigido? Spesso non necessario. Ma RAM? Quanto puoi ottenere. Se passi più intelligente, non di più, farai bene.
Carson63000,

3

Un grande fattore è il tipo di bloatware che l'IT in una tipica grande azienda tende a mettere sul laptop. Se hai una macchina Windows 7 a casa e solo alcuni antivirus, un sistema SSD-3GB-Quad-core standard si avvierà in meno di 10 secondi. Confrontalo con il bloatware che la mia azienda inserisce e impiega un'eternità ad avviarsi. Ho visto alcune persone usare lo zapping completo del sistema operativo e installarne uno per accelerare le cose. Penso che risolva un problema in una certa misura, sebbene si tratti di un'enorme violazione di InfoSec. Ma sul serio - 10 minuti ?!


Ciò conta il tempo per aprire Lotus Notes, Eclipse, Firefox e forse alcune altre cose.
Eric Wilson,

10 minuti? La mia macchina da lavoro è un laptop Dell serie E. Il tempo dall'avvio a freddo all'apertura di Visual Studio e Lotus Notes è in media 18 minuti. Di solito il processo di accesso a Windows richiede circa 5 minuti, quindi altri 12 o 13 minuti per raggiungere un desktop utilizzabile.
Joshua Smith,

1
IT qui in prestito da Serverfault. 10mins è ingiustificabile, ma purtroppo comune. Quando inizio in un nuovo negozio, trascorro le prime settimane a spegnere tutte le stronzate che qualcuno pensava sarebbe stata una buona idea correre all'avvio. Scansione antispyware -> Scansione antivirus -> 100s di oggetti Criteri di gruppo nidificati. I miei nuovi desktop Win 7 si avviano così velocemente che ho dovuto mettere a punto gli switch perché si stavano avviando più velocemente di quanto le schede NIC potessero negoziare automaticamente. Inferno posso ricreare una stazione in meno di 10 minuti.
Ryan,

3

Nelle grandi organizzazioni aziendali la scelta dell'hardware è predefinita e bloccata a causa del fatto che tali organizzazioni hanno specifiche e configurazioni fisse e gestite centralmente per desktop e laptop. Le specifiche per questi saranno state dettate in modo schiacciante da una combinazione di considerazioni "approvvigionamento" e "supporto". La società in cui sto attualmente lavorando, ad esempio, ha oltre 100.000 dipendenti e lavorano sulla base del fatto che "una taglia" si adatta a tutti e che quella dimensione sarà stata guidata principalmente dagli annunci pubblicitari. Una volta che tali politiche sono in atto, vengono bloccate perché i servizi di supporto di solito investono molto tempo nel test e nella distribuzione del software in base alle specifiche "standard" della macchina. Argomenti sulla produttività degli "sviluppatori", in tali ambienti, semplicemente cadere inascoltato; i servizi di produzione non faranno un'eccezione per un piccolo gruppo sulla base del fatto che potrebbero essere più produttivi; se lo facessero, verrebbero rapidamente sommersi da richieste di scostamenti e in ogni caso essi (supporto alla produzione) saranno incentivati ​​a mantenere il costo del supporto il più basso possibile. > 1 configurazione desktop / laptop aumenta i costi di supporto. In un'organizzazione in cui il "prodotto" primario è il risultato dell'ingegneria del software, tali argomenti non sono validi, ma la realtà è che la maggior parte delle organizzazioni NON lo sono e il driver chiave mantiene bassi i costi di supporto. e in ogni caso essi (supporto alla produzione) sono incentivati ​​a mantenere il costo di supporto il più basso possibile. > 1 configurazione desktop / laptop aumenta i costi di supporto. In un'organizzazione in cui il "prodotto" primario è il risultato dell'ingegneria del software, tali argomenti non sono validi, ma la realtà è che la maggior parte delle organizzazioni NON lo sono e il driver chiave mantiene bassi i costi di supporto. e in ogni caso essi (supporto alla produzione) sono incentivati ​​a mantenere il costo di supporto il più basso possibile. > 1 configurazione desktop / laptop aumenta i costi di supporto. In un'organizzazione in cui il "prodotto" primario è il risultato dell'ingegneria del software, tali argomenti non sono validi, ma la realtà è che la maggior parte delle organizzazioni NON lo sono e il driver chiave mantiene bassi i costi di supporto.


Questa è una risposta eccellente
Eric Wilson,

2

Semplicemente perché, il miglior hardware non rende gli sviluppatori "migliori"! Detto questo, la società è responsabile se ostacola il lavoro del programmatore.

Tuttavia, se l'hardware è sufficiente per far funzionare lo sviluppatore, non ha nulla di cui lamentarsi.

Inoltre, non ha senso avere l'hardware "migliore" e usare solo un IDE per codificare - spreco di risorse in quel modo.


2

"Abbiamo incontrato il nemico ed è lui." - Pogo

In ogni caso, questa domanda viene suddivisa: il gruppo collettivo "programmatori" ha la responsabilità diretta di eventuali mancati acquisti degli strumenti migliori sul posto di lavoro.

  1. La finanza aziendale è incredibilmente complicata con numerose motivazioni e leve contrastanti. Senza una conoscenza concreta di ciò che il dipartimento finanziario sta attualmente monitorando (elusione fiscale, gestione delle spese trimestrali, aumento delle spese in conto capitale future, ottimizzazione dell'EBITDA o di qualsiasi altra cosa sul loro radar), qualsiasi discussione sui costi reali è irrilevante. Come reagiresti a una persona di marketing che ti infastidisce in merito alle ottimizzazioni del compilatore per il codice che conosci sta per essere trasferito in un linguaggio interpretato? Se i programmatori non sono in grado di dimostrare in termini specifici in che modo gli strumenti di cui dispongono non contribuiscono direttamente ai profitti, l'azienda ha ragione a spendere il meno possibile. Dobbiamo anche imparare ad ascoltare la finanza aziendale in modo da poter comprendere le realtà che devono affrontare l'allocazione delle risorse.

  2. Come gruppo votiamo con la nostra presenza sul posto di lavoro molto più forte della richiesta di strumenti migliori, dell'invio del miglior white paper ai nostri manager o persino della pubblicazione su Internet. Ci sono organizzazioni che hanno creato una cultura per garantire che i propri dipendenti dispongano degli strumenti di cui hanno legittimamente bisogno o comprendano il caso sul perché non al momento. Fino a quando la pressione della concorrenza non lo richiede dalla maggior parte dei datori di lavoro, possiamo votare solo cercando i datori di lavoro in cui crediamo.

Ognuno di noi deve o rendere questo qualcosa che conta nel profondo, o lasciarlo andare.


2

Ero uno sviluppatore in una grande azienda e poi una startup. Ecco i miei due centesimi:

  1. DIMM DDR3 da 8 GB (2x $ 4 GB) oggi costa $ 50- $ 55 (circa luglio 2011)
  2. Il monitor LCD da 21 "costa $ 200 (circa luglio 2011)

Se la tua azienda ti consente di portare la tua attrezzatura, usa i tuoi $ e aggiorna la RAM e il monitor LCD. Perchè lo chiedi?

  • la tua produttività non è qualcosa che apprezzi?
  • i tuoi occhi non valgono $ 200?

Puoi sempre portare il monitor con te quando lasci il lavoro (ricorda di etichettarlo chiaramente come proprietà personale). Ho fatto la ricetta sopra (aggiornando la RAM e usando il mio monitor LCD) in entrambi i miei lavori precedenti - e il mio lavoro attuale.


Compro spesso la mia macchina per lavoro. Passo 8+ ore al giorno su quel computer, per un paio di anni vale $ 2k per lavorare velocemente.
Karoberts,

2

Non vedo come puoi raggruppare tutti i datori di lavoro in un paniere. Ho lavorato per alcuni datori di lavoro come dipendente e come consulente e ho sempre avuto hardware più che sufficiente per le mie esigenze - per il lavoro attuale mi è stato consegnato un nuovo quad core HP lucido e brillante con ram da 4 GB e Win64 sul primo giorno - non al top della gamma, ma molto sufficiente - (uso Delphi XE e XMLSpy come i miei principali strumenti di sviluppo) - in effetti è stato così bello che sono andato a comprare la stessa macchina per me stesso a casa. (Forse non sono così produttivo! LOL.)

Se non hai un buon hardware, prova a chiederlo e se ritieni di non poterlo chiedere, probabilmente non stai lavorando nel posto giusto perché non vedono gli sviluppatori come una risorsa, ma come un responsabilità.

Quindi immagino che la risposta alla tua domanda sia: quelle aziende che non rifiutano e / o rifiutano di fornire hardware sufficiente per uno sviluppatore sono aziende che considerano i loro sviluppatori una responsabilità - lavori che preferirebbero esternalizzare e non affrontare affatto.


2

Lato CFO.

La compagnia ha molte spese. Ogni dipartimento ha bisogno di più $ per fare meglio e in ogni reparto la spesa è d'obbligo.

quando vieni a scegliere il modo migliore di usare $ disponibili, prendi in considerazione:

  • di quanto hanno bisogno? somme minori sono più facili da approvare.
  • aumenterà le vendite? i migliori PC di solito non contribuiscono direttamente all'aumento delle vendite
  • al dipartimento piace spendere $ o capisce il flusso di cassa? Molti dipartimenti di ricerca e sviluppo che ho visto hanno un approccio arrogante "meritiamo il meglio". Questo è comprensibile in quanto guadagnano un sacco di $ e quando pensi di meritare le cose migliori della vita. I bisogni dei team di ricerca e sviluppo di solito danno la sensazione di un bambino viziato che richiede più giocattoli mentre i suoi genitori stanno lottando. "Un genio delicato".

Lo spreco di 10 minuti al giorno non è un ragionamento che funzionerebbe con la maggior parte dei dipartimenti finanziari. La maggior parte dei team di ricerca e sviluppo sprecano molto di più in tutte le attività di programmazione che non godono durante il giorno. Consente di tracciare tutti gli scarti del reparto e vedere cosa si può fare per migliorare la produttività.


Il tuo problema più grande come CFO è che tutti i tuoi dipartimenti ti stanno proponendo proposte di ROI positive e il tuo unico problema è capire qual è il ROI più positivo? Sembra fantastico.
PeterAllenWebb,

10 minuti a $ 60 / ora sono $ 3600 / anno, o $ 10.800 per un periodo di 3 anni (durata del computer). A $ 100 / ora, $ 18k. Si può avere una macchina accettabile per $ 800. Ci sono altri costi oltre alla semplice perdita di tempo. Costo di assunzione, per uno. Non lavorerò mai 10 ore al giorno davanti a un monitor CRT, per un'azienda che ritiene che un risparmio di $ 50 valga la pena danneggiare la mia vista. Stai dicendo che una società che può permettersi di sprecare $$$ per pagare gli ingegneri per fissare uno schermo ghiacciato e sabotare i propri sforzi di reclutamento ($$$) non può permettersi strumenti in condizioni di lavoro adeguate?
Sylverdrag,

1

In poche parole, le decisioni di acquisto vengono spesso prese dai contatori di bean (contabili e quadri) piuttosto che dai project manager.

Molte persone hanno fornito potenziali motivi e tutti sono un fattore in una situazione o nell'altra, quindi non esiste una singola situazione prevalente. L'acquisto di attrezzature su larga scala può comportare la perdita di denaro in termini di produttività per i programmatori, ma guadagno in altre aree.

Tuttavia, spesso si riduce a un budget. Devi adattarti al budget e questo è tutto.


Ci puoi scommettere, i revisori dei conti amare grandi monitor per le loro guaine spread, ma i reparti IT vuole dare a chiunque lo stesso kit come lo sono stati per gli ultimi n anni!
Ian,

1
Ciò non spiega perché i programmatori non possano parlare con i contatori di bean e non dimostri perché il denaro venga lasciato sul tavolo dall'azienda non riuscendo a ottenere gli strumenti corretti. Il budget soddisfa le esigenze aziendali: i programmatori devono dimostrare gli strumenti necessari per aspettarsi un esame del budget.
bmike,

1
@bmike - Non conosco le aziende in cui sei stato, ma nella maggior parte dei casi i programmatori non sono autorizzati a parlare con i contatori di bean. Voglio dire, nulla impedisce loro di fermarli nella sala e di avere una conversazione informale, ma ordinariamente direbbero loro di "usare la catena di comando"
Erik Funkenbusch,

2
+1 - per riportarlo almeno a 0 - IMO questa è una risposta molto ben informata e accurata, in particolare nei negozi più grandi. Lo sviluppatore dovrebbe parlare con un commercialista di come deve spendere $ 1000 in più rispetto alle persone normali per il suo hardware? Difficile da immaginare ...
Vector il

1

Ho lavorato per una società di rete in cui hanno aggiornato ram da 512 MB a 1 GB l'anno scorso. Nel 2010 stavamo lavorando con i monitor CRT f ** king. La parte più divertente era che l'hardware dei gestori era aggiornato a 2 GB di RAM. Perché mai qualcuno vorrebbe 2 GB per creare maledetti PPT e come qualcuno svilupperebbe applicazioni con 1 GB di RAM, non lo saprei mai.


Jeeze Ho pensato che abbiamo avuto un problema nel tentativo di ottenere l'aggiornamento da 2 GB a 4 GB.
Fergal,

2
Mi dispiace, ma devo -1 questo perché non tenta di rispondere alla domanda
Billy ONeal

Scappa nel terrore.

1

Dipende da chi gestisce i soldi. In organizzazioni più grandi, all'IT viene assegnato un budget di 1 milione di dollari all'anno. Ciò include stipendi di supporto, server, ecc. Devono distribuirlo tra tutte le loro risorse. Hanno concluso accordi con fornitori come Dell o IBM per ottenere un numero x dello stesso tipo di computer. Questo lo danno a tutti, dall'assistenza clienti ai programmatori. Ottengono anche offerte sul supporto, ecc., Quando devono mantenere solo un numero limitato di modelli. Non sono nemmeno programmatori, ho avuto numerosi argomenti con i non programmatori sui computer. Quando ho esaminato i miei responsabili IT una volta per una nuova HD, il CEO ha detto di comprarli e boom, tutti hanno finalmente avuto abbastanza spazio su disco per eseguire macchine virtuali.

In realtà ho fatto saltare in aria e insultato il mio capo perché l'IT mi avrebbe portato via il mio monitor da 19 "perché avevo un laptop. Mi hanno anche irrigidito, dandomi un modello da 13" quando gli altri ne avevano 15 ". alla politica in IT che è un altro problema. A volte è una specie di noi contro loro.


Quando ho lavorato per un'azienda molto piccola con MENO BUDGET rispetto a qualsiasi altro posto, avevo le macchine più belle. Perché? Perché non c'era nemmeno uno stipendio di una persona IT che usciva dal budget IT annuale totale. Vuoi un rig veloce? Diventa un unico sviluppatore in un negozio non software che non ha persone IT tranne te. Oppure avvia la tua azienda e non seguire la strada della follia IT. :-) Abbiamo messo a punto macchine non ingegneristiche, ma gli ingegneri (CAD / R & D / Developer) hanno ottenuto cose di fascia alta. Perché gli ingegneri gestivano l'azienda.
Warren P

1

Dal punto di vista descritto dal richiedente, la domanda ha perfettamente senso. Tuttavia ci sono più costi per mantenere aggiornato l'hardware.

Ecco alcuni dei costi che devono essere considerati:

  • costo di richiesta (ricerca e dettagli relativi all'acquisto)
  • costo di installazione e configurazione
  • costi di supporto e manutenzione
  • costo delle licenze software
  • costo di smaltimento / potenziamento

In alcuni casi, possono essere 2-5 volte superiori al costo dell'hardware stesso. Ancora di più se sono coinvolte sofisticate licenze software.

In generale, l'entità di questi costi dipende dalle dimensioni dell'azienda o dalla complessità della struttura organizzativa. Squadre più piccole con accesso diretto al potere d'acquisto possono mantenere bassi questi costi, mentre in un'organizzazione più grande questi costi possono aumentare molto.


La mia premessa era che si poteva acquistare hardware migliore, non acquistare hardware più frequentemente. Ciò elimina tutti i costi menzionati, tranne eventualmente supporto e manutenzione aggiuntivi.
Eric Wilson,

Prima di tutto, tutti questi costi DEVONO essere presi in considerazione nel costo totale durante la vita della macchina. Quindi, invece di acquistare $ 3.000 per un PC o un Mac, potrebbe aumentare di $ 6.000- $ 10.000. Non puoi semplicemente guardare il costo iniziale. Devi guardare il costo complessivo da una prospettiva di CONTABILITÀ. In secondo luogo, "Migliore" è rilevante solo per un periodo di tempo prestabilito. Ho scoperto che la maggior parte delle aziende acquisterà hardware "migliore" per i loro team - ma poi si aggrapperà a tale hardware per 3-5 anni o anche di più. Non eccezionale, soprattutto per gli sviluppatori di software.
Giosuè,

1
la mia premessa è che gli altri costi, sebbene rilevanti, sono gli stessi. In altre parole, i costi di acquisizione e installazione non aumentano perché gli sviluppatori ottengono più RAM. Inoltre, ho discusso per lo stesso programma di acquisti sopra.
Eric Wilson,

4
Quale software esegui che costa 2-5 volte di più per la licenza se lo metti su una macchina desktop più veloce? @Farmboy ha ragione, questo è un anti-punto. Se un computer schifoso costa $ 1000 per acquistare + $ 1500 in costi IT in tre anni, è la metà del prezzo di un ottimo computer che costa $ 3000 in anticipo + $ 1500 in costi IT. E infatti, il miglior computer probabilmente costa meno per il supporto, perché si rompe meno spesso.
RoundTower,

1

Perché molte aziende al di fuori delle tipiche start-up tecnologiche non sono interessate ad assumere rock-star. Stanno investendo in qualcuno che può semplicemente fare un lavoro. Quindi se a loro non importa come lavori finché lo fai, perché dovrebbero preoccuparsi delle attrezzature che usi? Ho lavorato in posti che usano ancora CRT da 15 pollici e tutti fanno bene. A volte, quando leggo domande come questa, mi chiedo se le persone si rendono conto che non tutti nel mondo lavorano per una bella partenza.


2
Non lavoro per una bella partenza e non penso che tutti lo facciano. Ma penso che al mio datore di lavoro dovrebbe interessare se ho attrezzature che funzionano bene, se vogliono rockstar o solo sviluppatori efficaci. In primo luogo, mi aspetto che la mia azienda voglia evitare di sprecare soldi pagandomi per vedere di nuovo il congelamento della mia macchina. Nessuno pensa che sprecare soldi sia bello.
Eric Wilson,

1

Ho lavorato per aziende che in passato hanno risparmiato sull'hardware. Fa schifo, e se hanno bisogno di convincere la battaglia è probabile che sia infinita.

Risulta che le aziende impegnate a utilizzare i migliori strumenti disponibili sono rare, ma esistono; Lavoro per uno. Ho un MBP quad-core da 17 "2011, 8 GB di RAM, SSD Vertex 3, 2 monitor esterni da 24", oltre a un desktop quad-core e uno slice Xen da 4 GB; così come uffici tranquilli.

Potrei cavarmela con un hardware minore? Sicuro. Ma penso che tutti preferiremmo vantarci che lamentarci.


1

A mio avviso, ci sono solo due obiezioni difendibili che un'azienda potrebbe sollevare per mantenere gli sviluppatori installati con solide postazioni di lavoro. Il primo è che stanno attraversando una crisi di liquidità. Sarebbe meglio che durasse poco, o la compagnia non sarà una preoccupazione permanente a lungo. Se lavori per un'azienda del genere, dovresti tenere aggiornato il tuo curriculum.

L'altro è che la loro organizzazione semplicemente non ha il collo di bottiglia sulla capacità di sviluppo del software. Cioè, un aumento della qualità o della velocità dell'output di sviluppo software non migliorerebbe i profitti. Se l'attività principale dell'azienda è la vendita di software, ciò sarà praticamente impossibile. Se il software non è la loro attività principale e non vi è un collo di bottiglia, dovrebbero cercare di ridurre la forza lavoro del software trasferendo o lasciando andare i membri del team più deboli. Fornire equipaggiamento scadente ridurrà le dimensioni della loro squadra dall'estremità opposta, temo.


0

Nuove macchine, nuove tecnologie significano nuovi problemi. Non tutte le aziende sono tecnologiche e non tutte le aziende dispongono delle risorse IT per formare le persone e gestire i problemi 24 ore su 24, 7 giorni su 7.

Sì, forse se sei un programmatore freelance che lavora sul tuo desktop personale varrebbe la pena spendere $ 1000 su un rig per ottenere 10 minuti di produttività extra ogni giorno. Tuttavia, quando si sta distribuendo centinaia di queste macchine per le persone che possono perdere la produttività a causa di nuove attrezzature, la prospettiva sembra un po 'più triste.


Certo, non mi aspetto SSD per tutti, ma che ne dici di dare agli sviluppatori 8 GB di RAM, o 4 GB, invece di 2 GB? E non sto suggerendo di acquistare hardware più frequentemente, quindi la distribuzione non è un costo aggiuntivo.
Eric Wilson,

@Farmboy - qualcuno deve fare un'analisi dei costi quali parti acquistare a buon prezzo, testare i moduli RAM specifici con la configurazione IT standard per garantire la sostenibilità e minimizzare le sostituzioni delle parti, fare scorta di un inventario e farlo per ogni configurazione corrente, che per un tipico dipartimento IT di grandi dimensioni può trovarsi tra 3 e 8 contemporaneamente. L'alternativa è che ogni sviluppatore ottiene il proprio budget da spendere come desidera sull'hardware; tuttavia, il supporto diventa un incubo. (Per non parlare delle persone che hanno speso i loro soldi in un dispositivo di raffreddamento a liquido alimentato tramite USB, invece di più RAM o CPU)
Franci Penov,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.