Il settore finanziario è diverso dagli altri settori in termini di frammentazione della lingua? [chiuso]

7

Scelte della lingua delle grandi società

Dopo aver lavorato per quasi 12 anni nel settore finanziario, sia in aziende grandi che piccole, la mia impressione prevalente, ad eccezione di Goldman Sachs, è quella frammentazione (o, mettendo una rotazione più positiva on things, diversity ) è il nome del gioco.

All'interno di una singola azienda, potremmo vedere C, C ++, Smalltalk, Java, J ++, Perl, C # e altro ancora. Anche adesso, sento parlare di grandi oscillazioni verso usando linguaggi che sono in giro da 30 anni ma che non sono diffusi all'interno dell'azienda (cioè frammentazione evitabile, se la lingua non era appropriata 5 anni fa, perché ora?)

Credo di essere interessato

  • Le grandi aziende focalizzate sulla tecnologia al di fuori del settore finanziario sono frammentate come quelle al loro interno?
  • Perché è avvenuta questa frammentazione?
  • Le società di software sono frammentate?

La posizione di Java

La mia impressione è che Java abbia "vinto" in gran parte il primo decennio di questo secolo nel settore finanziario, che (probabilmente) ha visto la più grande espansione storica dei sistemi. Con "vinto", intendo semplicemente che è stata la scelta più popolare per i nuovi sistemi durante questo decennio.

Sarei grato di essere indirizzato verso qualsiasi evidenza su questi punti e in particolare sui confronti settoriali.

PS. Le mie ragioni per porre questa domanda sono che parlerò agli studenti di Londra sulla costruzione di sistemi informatici finanziari. Mi piacerebbe poter mettere le mie esperienze di IT finanziario in un contesto più ampio, e non voglio fare generalizzazioni radicali.

    
posta oxbow_lakes 23.01.2012 - 13:11
fonte

6 risposte

3

Vedo la stessa cosa nel business delle telecomunicazioni, e non mi sorprende affatto. Alcuni motivi per questo:

  • Le fusioni e le acquisizioni aumentano potenzialmente il numero di lingue.
  • I sistemi informatici sviluppati al di fuori dell'IT (e poi trasformati in IT quando la manutenzione diventa un fardello) sono sviluppati in qualsiasi linguaggio colpiscono la fantasia delle persone che li scrivono.
  • Le tendenze IT spingono l'adozione di nuovi linguaggi e poi muoiono o vengono sostituite con una nuova tendenza prima che la migrazione dalle vecchie lingue sia completa.
  • I progetti critici con vincoli temporali ristretti spesso hanno la libertà di scegliere il "linguaggio più adeguato" - qualsiasi cosa colpisca la fantasia dei programmatori di prim'ordine assegnati a loro.
  • L'evoluzione IT della programmazione avviene più spesso con la creazione di nuove lingue che con modifiche a quelle vecchie - e per una buona ragione. La compatibilità con le versioni precedenti è un requisito strong, che limita seriamente le modifiche possibili.
risposta data 23.01.2012 - 15:09
fonte
15

Il settore finanziario è incredibilmente frammentato dal punto di vista del software semplicemente a causa della natura cannibalica di quelle aziende. Queste aziende spesso comprano e vendono aziende complete, divisioni, linee di prodotti e altri a livello aziendale per massimizzare i loro profitti. Nel processo, finiscono per dover fornire gli strumenti che gestiscono quel prodotto sui loro sistemi, e quindi un'azienda senza Java potrebbe ereditare un nuovo sistema Java e doverlo incorporare. Estrapola questo paradigma per 20 anni e hai un gruppo di aziende che hanno sistemi praticamente in ogni fattore di forma senza le risorse per convertirli in un sistema comune.

Le società di software hanno una certa frammentazione ma sono meno severe perché le decisioni aziendali sono guidate più dal business della tecnologia. Quindi, quando la società di software X acquista la società di software Y, di solito si trova all'interno della stessa piattaforma. Potrebbero usare linguaggi diversi, ma spesso quell'entità può rimanere intatta piuttosto che dover integrarsi nelle altre aree di prodotto o la società cercherà di prendere il tempo / le risorse per convertire i nuovi pezzi acquisiti nella loro infrastruttura esistente. Ho visto le offerte crollare semplicemente perché le persone che dirigono l'azienda hanno capito che non potevano supportare la struttura necessaria o permettersi di convertire.

Non direi che Java ha vinto anche un po '. Ci sono ancora troppe lingue là fuori che hanno il predominio dell'eredità. Anche nelle aree del settore finanziario che ho lavorato personalmente, non ho visto nessuna base tecnologica dominante. Tuttavia, ho visto molti argomenti.

    
risposta data 23.01.2012 - 13:27
fonte
3

Ogni settore è frammentato. La scelta del linguaggio ha ben poco a che fare con l'industria. Può dipendere dalla piattaforma da utilizzare, dalle librerie disponibili e da quando è stata avviata.

Negli anni '80, o ancora negli anni '70, il DOD voleva che tutti usassero ADA . Nonostante sia stato assunto in DOD per più di 20 anni, non ho mai visto ADA. Usavamo FORTRAN o C, quindi passavamo al C ++; ora usiamo C # e ASP. Per un cliente, tutto è stato consegnato in VBA perché il processo di approvazione era più veloce per i fogli di calcolo rispetto a una DLL.

Nell'ultimo anno ho usato python, php, C ++, oltre a linguaggi di scripting specializzati per il software shrink-wrapping. In 25 anni di programmazione ho utilizzato quasi tutte le lingue degli anni sul lavoro.

    
risposta data 23.01.2012 - 14:37
fonte
2

Are large, technology-focused companies outside the financial sector as fragmented as those within it?

Sì, la maggior parte di loro lo sono. Direi, alcuni ancora di più.

Why has this fragmentation happened?

Prima di tutto, le grandi aziende hanno molti team, non tutti optano per le stesse soluzioni, in quanto rimangono in qualche misura indipendenti, altre originariamente erano altre società che erano state acquisite ecc. Poi entrano in gioco strumenti di terze parti. varietà di lingue / schemi, spesso completamente diversi da quelli utilizzati internamente in azienda.

Are software companies as fragmented?

I software di creazione di società dipendono meno dall'avere varietà di software di terze parti, che usa una varietà di lingue. Tuttavia, se la società crea software per varie piattaforme, ad esempio piattaforme mobili, utilizzerai Java per Android, Objective-C per iOS, C # per WP, qualcos'altro per il tuo backend ecc. Un'azienda abbastanza grande avrà client mobili, web client, client Win e Mac e tecnologie di back-end che utilizzano 3-5 lingue diverse.

    
risposta data 23.01.2012 - 15:20
fonte
2

In breve da quello che ho visto (ho lavorato in una gamma abbastanza ampia di settori).

  1. Sì, è altrettanto frammentato
  2. Una varietà di motivi. Le lingue sono mode / mode come qualsiasi altra cosa. I venditori spingono un particolare tipo di tecnologia. A volte gasp una tecnologia viene scelta sinceramente perché è quella corretta per un particolare dominio problematico. A volte è perché ci sono risorse per sviluppatori disponibili per una particolare lingua ... La lista continua: -)
  3. Li ho visti provare a standardizzare, ad esempio Google era pesantemente un negozio Python e Java (+ web front end stack inc GWT) ma ora hanno anche Go, Dart, Android .... Oracle penso che sia principalmente un C / C ++ e sempre più un negozio Java (non c'è da stupirsi), penso che il loro scopo sia provare un Javaise il più possibile (anche se dato che l'integrazione di Java con l'O / S non è stretta, penso che le loro cose DB rimarranno fuori per il prevedibile futuro).
risposta data 23.01.2012 - 13:26
fonte
1

Il nome del gioco in qualsiasi situazione di programmazione è la creazione di un'applicazione robusta in modo da risolvere un particolare problema. Lingue diverse offrono caratteristiche, strutture e quindi usi ideali diversi.

Dove lavoro, la nostra lingua principale è Java, che come dici tu è top language per la programmazione in questi giorni. Nonostante il nostro essere un "negozio Java", in un dato giorno puoi lavorare con due o tre lingue diverse.

Per elencare, sono i miei 8 mesi al mio attuale posto di lavoro, ho lavorato in Java, JSP, PHP, Python, Javascript, bash scripting e persino lavorato su script ANT molto grandi. Inoltre, conosco o ho visto Perl, C e Groovy. Ognuna di queste lingue fornisce generalmente un set di funzionalità a cui manca un altro, che sarebbe idealmente il motivo per cui la lingua è stata scelta per l'uso.

    
risposta data 23.01.2012 - 13:27
fonte

Leggi altre domande sui tag