L'ordine di una società di passare a un determinato IDE è una bandiera rossa? [chiuso]


80

Di recente mi sono unito a una startup in rapida crescita. Negli ultimi 3 mesi il team di sviluppo è cresciuto da 4 a 12. Fino ad ora erano molto diligenti su ciò che gli sviluppatori facevano il loro lavoro. In effetti una delle cose che inizialmente ho trovato interessante per la società è che la maggior parte dei programmatori utilizzava Linux, o qualsiasi sistema operativo ritenessero più adatto ai propri sforzi.

Ora gli ordini, senza discussione, sono giunti al punto che tutti devono passare a Eclipse. Un ottimo editore. Preferisco SublimeText2, ma è solo un mio gusto personale.

Giusto per essere chiari: siamo un team JS che utilizza Backbone ed Eclipse non è bravo a comprendere il codice Backbone. Ciò significa che coloro che fanno parte del team che usano un / good / IDE (PHP Storm), devono tornare a fare un sacco di cose da cercare-trovare-oh-aspettare-dove-ero-io-tre-passi-fa invece di semplicemente ctrl + clic e uso indietro / avanti - probabilmente diminuendo la produttività del 15% e godendo del 50% ...

Questa è una bandiera rossa? Sembra capriccioso e irragionevolmente controllato dire agli sviluppatori (non MS) quali IDE o set di strumenti usare se sono già sistemati e produttivi.


7
Qual è il tuo processo di compilazione? Cosa deve essere in atto affinché i caratteri digitati diventino codice binario per andare ai clienti.

22
Questa è una start-up. Se il management unilateralmente prende una decisione come interessare lo sviluppo, senza discussione, potrebbe essere una grande bandiera rossa indipendentemente da cosa si tratti.
joshin4colours,

29
No - ci sono una miriade di ragioni per andare a un singolo IDE: licenze, processo, continuità, coerenza ...
Wonko the Sane

55
Una società in crescita che cerca di stabilire uno standard all'inizio è intelligente nel mio libro (non importa quale sia)! Metti tutti sulla stessa pagina e accumula esperienza con un IDE comune. Quindi il team diventa più efficiente perché tutti possono aiutarsi a vicenda e possono condividere il codice più facilmente senza doversi preoccupare della larghezza dello spazio delle schede, della codifica e cose del genere.
Yanick Girouard,

23
Eclipse è un intero ambiente, non solo un editor. Forse l'IT ha scoperto che occuparsi di ogni fiocco di neve speciale in un'azienda in crescita stava diventando un compito enorme e oneroso e voleva standardizzare. Forse c'è uno strumento nella gestione dell'ecosistema Eclipse che si desidera utilizzare presto. Forse 12 diversi editor di formattazione automatica stavano facendo incazzare il tuo repository e causando build extra. Possibilmente strumenti senza licenza "da casa" gestione delle preoccupazioni che non vogliono essere citati in giudizio. Forse sei il nuovo ragazzo, ti aspetti davvero di essere consultato su decisioni informatiche e di sviluppo generali? Potrebbe essere un milione di motivi, tutti sani di mente.
Patrick Hughes,

Risposte:


92

"Ora gli ordini, senza discussione , sono giunti al punto che tutti devono passare a Eclipse."

Penso che questa sia la vera bandiera rossa. Il tuo team è l'esperto nello sviluppo di software e quello che sarà influenzato dalla decisione, eppure non sei riuscito a dire una parola nella discussione che ha portato a questo ordine?

Sembra un eccesso di gestione da parte di capi dai capelli a punta. La persona / il team decisionale dispone di informazioni rilevanti per tale decisione?


Dato che i decisori sono sufficientemente qualificati per tale decisione, non chiedere l'opinione del team di sviluppo ha almeno due carenze:

  • Il team non si sente coinvolto. Coinvolgere il team dovrebbe essere una priorità per la gestione. Non vorrei lavorare come sviluppatore da qualche parte in cui la mia opinione su questioni centrali come IDE non è valutata abbastanza per essere nemmeno richiesta. Concesso che chiedere l'opinione di qualcuno e poi decidere di no potrebbe essere peggio, ma in tal caso mi aspetterei una solida logica per quella decisione.

  • La gestione, per quanto esperta, non funziona al 100% con lo sviluppo di questo codice specifico. Supponendo che le persone che non hanno affatto una visione interessante sarebbero ingenue. Naturalmente può essere che i manager abbiano pensato a tutto ciò che gli sviluppatori escogitano, ma l'unico modo per sapere è chiedere.


9
Senza senso. Solo perché la squadra non è stata consultata non significa che gli alti livelli siano all'oscuro. È interessante come sviluppatore non Java, so che Eclipse è l'IDE da usare praticamente, ma non ho mai sentito parlare del preferito di OP fino a quando non lo ha pubblicato. Sarebbe un errore consentire al team di standardizzare un IDE insolito, creando problemi con il reclutamento di altri nuovi sviluppatori.
Andy,

5
Hai considerato che il "management superiore" potrebbe essere sviluppatori senior? Alcune organizzazioni hanno molti livelli?

2
Stai leggendo troppo in questo. Il management potrebbe avere altre preoccupazioni, come le opzioni di supporto, e potrebbe essere arrivato a qualcosa che era abbastanza popolare con un costo di supporto ragionevole (sto parlando di incidenti di supporto a pagamento). In tal caso, potrebbe non esserci stata altra scelta, quindi che senso avrebbe chiedere agli sviluppatori? Inoltre, hai provato a convincere anche un piccolo numero (10-15) di sviluppatori a concordare qualcosa? C'è una ragione per cui dicono che far concordare gli sviluppatori è come accumulare gatti.
Andy,

3
@Andy Hoarding è facile (parla con qualsiasi zitella), ascoltarli è un'altra cosa. ; o)
JW01

3
@ JW01 Ahh, ho ricevuto la parola sbagliata. Ma non sarebbe mandria? :-)
Andy,

63

È ragionevole che quando lavori insieme su un progetto comune, che su ogni workstation hai tutti gli strumenti disponibili per modificare / costruire / eseguire il debug del tuo software e che gli strumenti principali per fare circa il 90% dello sviluppo siano noti a tutti Il gruppo. Questo obiettivo è più difficile da raggiungere se la tua squadra sta crescendo e tutti usano il suo set di strumenti preferito personale: più persone, più opinioni. E anche il lavoro amministrativo diventa più semplice se non si lascia che il numero di strumenti cresca più del necessario.

Naturalmente, se uno sviluppatore insiste nell'utilizzare il suo editor preferito personale, ciò potrebbe andare bene finché può assicurarsi che la fonte non abbia un aspetto o un comportamento diverso nell'editor principale del team (nel tuo caso Eclipse), quindi se dev B deve modificare la fonte dello sviluppatore A, lo sviluppatore B non dovrebbe essere costretto ad apprendere l'editor preferito personale di A per poter cambiare efficacemente la fonte. Ma attenzione, se i due devono lavorare di tanto in tanto di fronte allo stesso display (o fare un po 'di programmazione di coppia), le cose sono spesso più facili se l'editor scelto è ben noto da entrambi.


2
Prima di tutto, è raro che uno sviluppatore debba apportare modifiche sulla macchina di qualcun altro. Concordo con "più persone, più opinioni", ma questo non è un problema a meno che le persone non provino a imporre opinioni agli altri. Per quanto riguarda la fonte, tutti i progetti dovrebbero avere un processo di compilazione automatico a un comando. Finché funziona, e il codice segue le convenzioni, non importa quale IDE stia usando. La maggior parte degli IDE sono intuitivi per cose semplici (ognuno ha i propri vantaggi per attività più complesse), quindi la programmazione delle coppie non è un problema. In caso di domande, lo sviluppatore che utilizza l'IDE può rispondere.
Matthew Flaschen,

Se entrambi conoscete la lingua, guardare un editor diverso non è un problema. Una parte della sintassi è evidenziata in modo diverso e il nome file potrebbe trovarsi in una posizione diversa, ma non ci sono problemi a meno che non si stia effettivamente utilizzando una configurazione di un altro sviluppatore.
Izkata,

30
Lavoro in google e nel mio team particolare una persona usa Eclipse mentre una persona usa intellij Uso Emacs con la modalità malvagia per emulare Vim e una persona usa Vim stesso. Lavoriamo bene l'uno con l'altro e le differenze tra gli utensili non sono un problema. Ci aiuta a usare tutti lo stesso sistema di compilazione e avere una guida di stile per la lettura del codice, ma ciò ha poco a che fare con la scelta dell'editor per ogni individuo.
Jeremy Wall,

@JeremyWall: come ho detto, potrebbe essere ok, se il tuo codice sorgente viene visualizzato allo stesso modo in tutti gli editor che stai utilizzando e non fai molta programmazione di coppia.
Doc Brown,

5
@JeremyWall: Solo perché il tuo team di sviluppatori può lavorare in questo modo, non significa che tutti i team possano lavorare in quel modo, e in effetti, considererei un team di sviluppatori Google fuori dalla norma.
James P. Wright,

25

Per motivi di programmazione in coppia, è bello se entrambe le parti davanti allo schermo hanno le stesse abilità quando si usa la tastiera. È anche bello sapere che, se il tuo progetto ha esigenze di configurazione speciali nell'IDE, è configurato allo stesso modo per tutti. Avvio di un nuovo sviluppatore è più semplice quando gli strumenti sono uguali per tutti.

Ma se lo confronti con il solo tentativo di essere più efficace, non ne vale davvero la pena


7
+1 per notare i vantaggi di ambienti di sviluppo simili quando si programma la coppia
jcmeloni

1
+1. Non potrei essere più d'accordo. Lavorare con più sviluppatori ognuno con i propri strumenti e modi di codifica preferiti può essere un inferno! Ad esempio, potresti voler applicare spazio su schede, una dimensione di rientro specifica e codifica UTF-8 per tutte le tue fonti. Prima dovevo affrontarlo nel mio team e alla fine tutti dovevano usare lo stesso IDE esattamente per i motivi sopra menzionati. Qualsiasi sviluppatore serio non dovrebbe spendere molto tempo per adattarsi a un nuovo IDE, quindi non vedo il danno in esso. Inoltre, rende più facile per i nuovi membri tenersi aggiornati se tutti usano lo stesso strumento.
Yanick Girouard,

@Yanick: spazio su schede, dimensione del rientro, codifica ... Tutti questi tipi di parametri devono vivere nello standard di codifica, che tutti gli sviluppatori devono rispettare. Non importa come vogliono rispettarli, vero? I requisiti di formattazione dovrebbero concentrarsi sul risultato corretto, non su come arrivarci. Se gli sviluppatori devono cambiare IDE per ottenere la formattazione corretta, non li definirei "sviluppatori seri", mi dispiace per essere in grassetto.
Gauthier

18

Sì, è un po 'una bandiera rossa che la direzione si considera un giudice migliore di quali strumenti saresti più efficiente di te.


38
Dipende fortemente dalle ragioni per cui l'IDE dovrebbe essere lo stesso.

3
Non siamo sicuri della domanda che ha preso la decisione o perché. Il termine "senza discussione" potrebbe significare che non includevano il nuovo ragazzo.
mhoran_psprep,

3
Non ho il rappresentante da sottovalutare, ma non sono d'accordo con questa prospettiva. Anche se lo strumento decretato dalla direzione non fosse in realtà il migliore, sarebbe meglio che non avere standardizzazione. Chiaramente gli sviluppatori non sono in grado di prendere la decisione su quale sia il "migliore", dato che, abbandonati ai propri dispositivi, hanno tutti scelto strumenti diversi . È assurdo affermare che strumenti diversi funzionano meglio in contesti diversi, dal momento che la maggior parte di questi sviluppatori non diventerà comunque fluente in moltissimi.
FumbleFingers

4
"Chiaramente gli sviluppatori non sono in grado di prendere la decisione su quale sia il" migliore ", dato che, abbandonati ai propri dispositivi, hanno tutti scelto strumenti diversi" Stanno scegliendo lo strumento migliore (più produttivo) per se stessi . Ognuno ha esperienza e modelli di lavoro diversi. Possono avere ragione tutti.
Matthew Flaschen,

2
@Andy Non è proprio vero, come dimostrano le divergenze tra Vim e Emacs. E quelli sono principalmente editor di testo, non IDE completi. Possono volerci anni per essere al passo con i tempi in un nuovo ambiente.
Izkata,

14

Non è una bandiera rossa in sé.

A volte la direzione deve prendere decisioni . Qualsiasi problema che richieda la standardizzazione su qualcosa tende a rientrare in quella categoria. Una volta ho lavorato presso un cliente che aveva permesso agli standard di andare alla deriva per alcuni anni e avevano oltre 20 strumenti SCM diversi. Ciò che è iniziato come scelta indipendente da diversi team di sviluppo si è trasformato in un incubo logistico che ha ostacolato gravemente la condivisione delle competenze e la collaborazione sul codice all'interno dell'organizzazione. Build integrato erano ..... ehm ... non molto integrato .....

Inoltre, non è pratico o necessario consultare tutti per ogni decisione . La misura in cui ciò deve essere fatto dipende dalla cultura dell'organizzazione e dall'importanza / complessità della decisione. In genere, sceglieresti una di queste opzioni meno pesanti per la consultazione:

  1. Prendi la decisione da solo, se hai una conoscenza sufficiente dei pro / contro e non è una decisione abbastanza importante richiedere un'ampia consultazione.
  2. Consultare alcune persone chiave (che probabilmente sarebbero gli sviluppatori senior più qualificati per prendere la decisione).
  3. Solleva il fatto che stai prendendo una decisione per tutti coloro che potrebbero essere interessati (e-mail, riunione del municipio, riunioni del team). Di 'ciò che ritieni sia la decisione giusta ma che sei disposto a cambiarla se emergono nuove prove al contrario. Invita le persone a farsi avanti individualmente se hanno delle opinioni importanti
  4. Invita le persone a formare un sotto-team per rivedere le opzioni e raccomandare una decisione. Buona opzione se si tratta davvero di una telefonata ravvicinata, non si conosce la risposta e si desidera che le persone coinvolte vengano acquisite nella decisione.

Per qualcosa come gli strumenti per sviluppatori (che è un problema potenzialmente controverso) probabilmente farei 2 seguito da 3 o 4. vale a dire ci sarebbero sicuramente alcune persone con cui non parlerei personalmente sul problema, ma d'altra parte la maggior parte delle persone chiave avrebbe la possibilità di contribuire al processo decisionale.

Per me la vera bandiera rossa sarebbe in giro se ritieni fortemente che sia stata presa la decisione sbagliata (errato == danneggia l'azienda piuttosto che non è stato scelto solo il tuo strumento preferito). Come reagisce il management quando sollevi questo problema:

  • Una buona gestione ascolterà il tuo argomento, grazie sinceramente per il feedback e riconsidererà la loro posizione nel caso in cui tu abbia sollevato nuove intuizioni . Potrebbero ancora non essere d'accordo con te e attenersi alla loro decisione, ma apprezzeranno il fatto che tu l'abbia sollevato con loro e ti faccia la cortesia di dire perché stanno rispettando la loro decisione. Potrebbero anche cambiare il modo in cui prendono tali decisioni in futuro, e se hai fatto dei buoni punti potrebbero includerti nel loro elenco di "persone intelligenti da chiedere".
  • La cattiva gestione diventerà difensiva, diciamo che "la decisione è presa" e altre tattiche simili per evitare di affrontare il fatto che potrebbero aver preso una decisione sbagliata. Potrebbero vederti come un "piantagrane". L'azienda soffre, così come la tua fiducia nella gestione. Questa è una vera bandiera rossa! Esci finché puoi!

6
C'è una differenza abbastanza grande da un ide / editor e un sistema scm o build. e ide / editor è per uso personale e di solito su misura per l'individuo. Il sistema scm o build è usato globalmente da tutti. Una di queste cose necessita di una gestione centralizzata, l'altra sicuramente no.
Jeremy Wall,

2
La mia risposta era rivolta alle questioni di gestione piuttosto che alla decisione specifica sugli IDE di per sé. Tuttavia, ci sono anche molti buoni motivi per standardizzare un IDE (ad es. Competenze, formazione, costi di licenza, efficienza di programmazione delle coppie, integrazione con altri strumenti, qualità generale dell'IDE, costi di supporto, facilità di implementazione). In alcuni contesti la decisione giusta sarà quella di standardizzare - non sei corretto se pensi che possa sempre essere lasciato alla scelta individuale (anche se questa è la decisione giusta in molte situazioni)
mikera

2
@Jeremy: penso che la tua prospettiva sia perfetta per un gruppo di uomini o un piccolo gruppo di hacker. Sono molto d'accordo: sono esattamente lo stesso per i miei progetti personali. Ma questo approccio semplicemente non si adatta a contesti aziendali più grandi. Avere una preferenza per gli strumenti va bene, ma mi aspetto che un buon sviluppatore professionista sia disposto e in grado di apprendere e adottare qualsiasi strumento che renda l'organizzazione più efficace nel suo insieme.
Mikera,

3
La mia prospettiva è condivisa dal mio datore di lavoro Google, che sicuramente si qualifica come un contesto aziendale più ampio. Concordo sul fatto che un buon sviluppatore professionista dovrebbe essere disposto a imparare e adottare strumenti per rendere l'organizzazione più efficace nel suo insieme. Non sono d'accordo sul fatto che un ide o un editor possa mai rientrare in quella categoria.
Jeremy Wall,

2
Fantastica, ottima compagnia e sei fortunato a lavorare in un posto che è in grado di operare come un sacco di "piccoli gruppi di hacker" su progetti relativamente indipendenti. La maggior parte delle grandi aziende non ha quel lusso, purtroppo. Pensa a una grande banca che ha bisogno di assumere e formare 100 programmatori Java entry-level in India per lavorare sulla manutenzione di app per call center. Incoraggiarli tutti a essere creativi e scegliere il proprio IDE / costruire il flusso di lavoro semplicemente non funzionerà.
Mikera,

12

Se stai usando Maven o qualcosa di simile, non dovrebbe importare quale IDE stai usando. Potrebbero esserci casi in cui uno è legato a un IDE specifico come eclipse, se ci sono plugin su cui fare affidamento.

Penso che dovresti essere in grado di scegliere il tuo IDE, l'IDE in cui sei più produttivo. Tuttavia, come ho già detto, ci sono casi in cui ha senso usare un IDE standard.


per esempio. se vuoi fare ADF, allora JDeveloper è la scelta naturale, i plugin per altri ID potrebbero non avere tutte le funzionalità.
Rohit Banga,

11

Avrei installato l'IDE "mandato aziendale", ma avrei comunque svolto la maggior parte del mio lavoro in qualunque IDE desiderassi - non è come se qualcuno potesse dire quale IDE è stato usato per modificare un file sorgente.

Sul fronte IDE vs. editor ... per quasi tutte le lingue, preferisco fortemente un IDE (IntelliJ) perché c'è molto di più che può fare per te rispetto a un editor. Ci sono alcune cose per cui torno a ST2 o Emacs, ma per la codifica quotidiana, nonostante quanto mi piacciano sia ST2 / Emacs, l'IDE vince quasi sempre.


1
Contesto la tua affermazione che un IDE può fare molto più di un editore. Ci sono editor chiaramente inferiori, ad es. Non avresti fatto uno sviluppo serio con nano o gedit, ma posso codificare più velocemente in vim di me, e immagino che la maggior parte degli altri, in un IDE. E anche se odio difendere emacs, sono sicuro che un utente emacs esperto sia più veloce in emacs rispetto a un IDE.
Kevin,

1
@Kevin Dispute away - Sono un utente Emacs da molto tempo, e sto migliorando con ST2, e semplicemente non c'è paragone. Un completamento migliore, più sensibile al contesto, una più stretta integrazione di debug, non ci sono troppe cose per le quali darei un cenno a un editor di testo. Alcune lingue vanno meglio di altre, ad esempio, non scriverei Java in Emacs praticamente, non importa quale sia, per Ruby e Python sono circa la metà e metà, ma IntelliJ mi sta conquistando. Per l'effettiva modifica del testo , che si tratti di codice o meno, utilizzo un editor.
Dave Newton,

1
Conosco la domanda e la maggior parte delle risposte sono rivolte al mondo Java, ma qui nel mondo .NET di Microsoft, l'idea che un editor possa essere migliore dell'IDE mainstream (Visual Studio) è assolutamente ritardata. Non assumerei un sviluppatore .NET che ha insistito sull'uso di Notepad ++ su Visual Studio.
Graham,

11

Ogni team in cui abbia mai avuto una moltitudine di IDE e redattori: Eclipse, Netbeans, IDEA, VIM, Emacs, Textmate, RubyMine - non è mai stato un problema. Mai.

Per me questo parla di un malinteso ai livelli alti dell'organizzazione, per quanto riguarda ciò che conta davvero. Ciò che conta è lasciare che i bravi programmatori facciano ciò che devono fare e utilizzare gli strumenti che li rendono più comodi. L'uniformità dell'IDE ha ben poco a che fare con la vera comunicazione che ha luogo sulle questioni essenziali dell'architettura degli oggetti, unit test, algoritmi, ecc.

Avere lo stesso IDE del prossimo ragazzo significa solo che entrambi sappiamo come sfogliare il codice con le stesse scorciatoie e come è impostata la nostra compilazione / configurazione. Nessuno dei quali conta quando si parla di problemi con il codice reale.

Guarda, è vivibile, a seconda di altri fattori dell'azienda. Puoi sempre utilizzare il tuo editor preferito per le cose quotidiane. E forse il tuo gruppo sta facendo altre grandi cose che creano una grande cultura. Ma gli IDE obbligati sono un enorme passo falso IMO. Per me se io fossi intervistando con una società e mi hanno informato che IDE mi è stato permesso di usare, io li ringrazio gentilmente per il loro tempo.


8

Nel nostro negozio di Ruby c'è una forte raccomandazione di utilizzare l'IDE di cui gode la maggior parte del team (RubyMine), perché sappiamo che fa il suo lavoro e possiamo insegnarci a vicenda scorciatoie ecc.

Gli sviluppatori sono liberi di utilizzare un IDE diverso, ma è necessario che abbiano solide competenze in quell'editore se lo desiderano. Se vediamo qualcuno che fatica a navigare nel proprio progetto o a modificare il testo nella sua FooEdit personalizzata, RubyMine per loro lo è.


4

Se un programmatore è un esperto in un determinato IDE, allora dovrebbe usarlo. Se non sono esperti in alcun IDE, probabilmente ce ne sono uno o due molto comuni nel tuo linguaggio di programmazione o all'interno del tuo team, e probabilmente ha senso per loro impararlo.

Essere costretti a standardizzare su un IDE sembra un'idea terribile.


2

Dovrebbero essere esaminati i motivi per cui una società impone un particolare editor o software in generale ai propri sviluppatori. La parte paranoica (forse non la parola che sto cercando) di me pensa che potrebbe esserci una sorta di monitoraggio della produttività aggiunto all'eclissi che stanno chiedendo agli sviluppatori di installare. Un pensiero molto meno paranoico (di nuovo) sarebbe che hanno trascorso del tempo ad aggiungere strumenti di creazione del prodotto a questo IDE che renderebbe le cose molto più semplici se tutti premessero lo stesso pulsante per testare e costruire il proprio ramo di codice.

Comunque quello che sto cercando di dire è probabilmente più che una semplice burocrazia o un metodo per fare casino con i responsabili degli sviluppatori.


2

Questa è una grande bandiera rossa. Ogni azienda ha alcune idee così stupide, ma se altre bandiere rosse continuano ad arrivare, vattene e basta.


Disaccordo. Molte grandi aziende prendono decisioni rapidamente e, se commettono errori, ascoltano feedback e ripetono. Non perdono tempo a impantanarsi in infinite consultazioni per ogni decisione.
Mikera,

2

È facile perdersi la motivazione alla base di alcune decisioni, specialmente con un team in rapida crescita. La motivazione per passare a Eclipse potrebbe essere semplicemente il fatto che la maggior parte degli sviluppatori sembra perdere molto tempo a configurare l'IDE e che la propria azienda ha una competenza limitata.

Vorrei solo prendere l'ordine di spostarmi su Eclipse per significare che dovresti avere Eclipse nel caso fosse necessario, ma continuare il tuo lavoro nel tuo editor preferito. (Potrebbe essere necessario passare a Eclipse gradualmente se la tua azienda inizia a implementare strumenti interessanti all'interno di Eclipse.)

Bandiera rossa: aspetterei se ci fossero altri ordini così irrazionali prima di essere preoccupato.


1

Una startup sta generalmente cercando di rimanere agile abbastanza a lungo per capire un modello di business sostenibile. Una volta individuata la parte monetaria, la direzione si sposta per ampliare il business. Questo è generalmente quando tutti i primi dipendenti della tecnologia iniziano ad andarsene, man mano che i processi di ingegneria vengono rafforzati.

Come sai, non sai quale codice farà effettivamente fino a quando non lo eseguirai. Turing lo ha dimostrato nei primi tempi dell'informatica. Ciò significa che non esiste una misura significativa della produttività quando si tratta di scrivere software. Tuttavia, affinché il management faccia il proprio lavoro, la produttività deve essere leggibile. Poiché non è possibile misurare il codice (e le persone hanno provato, ad esempio righe di codice), misureranno ciò che possono vedere. I programmatori sono più leggibili del software che sviluppano. Il tipico team di gestione tenta di controllare i programmatori al fine di rendere leggibili queste cose (invece di fare il loro vero lavoro: togliersi di mezzo). E poiché misurano le cose sbagliate, non funziona molto bene.

Detto questo, puoi ancora fare molta strada con una squadra debolmente accoppiata. Il team di sviluppo di Github ha circa 50 persone e infrange ogni regola nei manuali di gestione aziendale. Sembrano fare tutto bene. I bug vengono corretti (eventualmente). Le funzionalità vengono aggiunte. Gli incendi si spengono.

Ciò che è una grande bandiera rossa è se stanno cercando di ridimensionare le cose senza aver capito come fare soldi. A quel punto, ti devi chiedere quanto valgono davvero le tue opzioni e le tue sovvenzioni non investite.


Questo sembra completamente estraneo alla domanda. Volevi postare altrove?
Daenyth,

@Daenyth Intendo postare qui. Il titolo originale "Un IDE per domarli tutti?" non aveva nulla a che fare con il paragrafo esplicativo. L'OP sembra chiedere se essere costretto a usare un IDE indichi il tempo di liberazione dalla società.
Ho-Sheng Hsiao,

1

Sicuramente questa è una cattiva idea. È inevitabile che il team diventi meno produttivo poiché devono imparare a usare nuovi strumenti. E anche allora non saranno così efficaci come con gli strumenti che già affannano .

Da quando ho provato vari strumenti da solo, ho sempre avuto la sensazione "Accidenti, questo editor mi dà fastidio con <inserire qualche bug / differenza dallo strumento preferito>". Quindi sarà anche uno svantaggio morale.

Ma ovviamente ci sono anche dei professionisti che chiedono a un intero team di utilizzare gli stessi strumenti. Condivisione di configurazioni, script, plugin e tutto quel genere di cose. Ciò non sarebbe possibile con una varietà di set di strumenti.

D'altra parte ... quell'ultimo pezzo non sarebbe necessario se tutti usassero il loro software preferito. ;)


0

Puoi "usare" Eclipse mentre stai ancora digitando SublimeText2.

Ciò significa avere Eclipse installato e configurato per i tuoi progetti e metterti al passo con esso in modo da sentirti a tuo agio nell'usarlo se, per esempio, abbini la programmazione. A nessuno (o almeno dovrebbe interessare) quale editor hai effettivamente usato per digitare un pezzo di codice che hai commesso, purché il mantenimento della tua configurazione parallela non richieda una quantità eccessiva di tempo e non ti tagli fuori dal ambiente di sviluppo standard.


0

Se stai usando Git e la tua diramazione non è attiva, non dovresti comunque utilizzare gli editor degli altri. Puoi semplicemente spingere un ramo e fare in modo che un altro sviluppatore lo tiri per farlo funzionare se davvero non riesce a capire il tuo set di strumenti. Costringere tutti a usare lo stesso editor suona come un ordine di un responsabile aziendale che vuole apparire intelligente ma non capisce davvero come operi.


0

Se ci pensate da un punto di vista gestionale, il motivo per cui potrebbero farlo è per la conformità legale. La società è responsabile di garantire che ogni strumento utilizzato venga utilizzato legalmente e inoltre non ostacolerà il prodotto in fase di sviluppo. (Alcuni editor sono gratuiti per uso personale, ma non per altri scopi, ecc.) Controllare ogni strumento che ogni sviluppatore potrebbe voler utilizzare può essere costoso. Ho visto che nei progetti in cui le linee temporali sono strette, la gestione sarà cauta su quali strumenti / librerie / ecc. Vengono utilizzati per ridurre al minimo le modifiche successive nel progetto che sono dirette dalle persone giuridiche.

Sui progetti di sicurezza più elevata c'è anche la preoccupazione di dove gli IDE archiviano i file temporanei e quali informazioni siano archiviate tra le sessioni.


0

Tutto dipende dai motivi per cui devono raccomandare Eclipse. Se gli sviluppatori hanno problemi a configurare i propri ambienti perché tutti organizzano le cose in modo diverso, potrebbe esserci un motivo per raccomandare una camicia di forza. Se, tuttavia, tutti erano felici e produttivi usando ciò che volevano, ci sono poche ragioni per imporre un cambiamento a qualcosa di così profondamente coinvolto nel processo creativo.

Eclipse è molto più di un semplice editor: potresti continuare a utilizzare il tuo editor preferito per modificare il codice e fare affidamento su Eclipse per il controllo del codice sorgente, il debug e qualsiasi altra cosa il flusso di lavoro obbligatorio aziendale desideri venga utilizzato.

Un'ultima cosa: applicare il processo in questo livello può indicare che l'azienda intende espandere il team di sviluppo e desidera disporre di una certa struttura in modo che i nuovi compagni di squadra possano diventare produttivi più velocemente. Se pensi che Rails (o Django) sia un framework "supponente", ti renderai conto che avere una struttura aiuta a capire più facilmente le nuove applicazioni.


0

La bandiera rossa non è tanto che un singolo IDE / editor viene forzato su ogni sviluppatore, ma che questa decisione, e in particolare la decisione su quale IDE / editor debba essere utilizzato, non è stata presa da tutti gli sviluppatori, e forse nessuno dei loro!?!

Certamente sarebbe meglio per gli sviluppatori raggiungere un consenso, soprattutto perché sono ovviamente i più qualificati per la decisione (almeno su quale editore / IDE). Potrebbero esserci buone ragioni per conformarsi e tale decisione dovrebbe pesare sulle preferenze della direzione, ma quale editor / IDE avrebbe dovuto essere la decisione di tutti gli sviluppatori.

Ottenere 12 sviluppatori per esprimere alcuni voti sarebbe facile. Certamente c'era abbastanza tempo per farlo! La conclusione sarebbe stata dolorosa per alcuni in ogni caso e alla fine avrebbe anche potuto essere Eclipse, ma etichettare il requisito come "bandiera rossa" in quel caso sarebbe molto più discutibile.

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.