Història del concepte Full Stack

Sembla com que tothom de la tecnologia actual estigui carregat de desenvolupadors full stack. La pila completa (full stack) podria haver estat possible a l’era del Web 2.0, però una nova generació de startups està sorgint, pressionant els límits de pràcticament totes les àrees del programari. Des de la intel·ligència de la màquina fins a la computació impulsiva predictiva fins a l’analítica de dades fins a mòbils / usables i molt més, és gairebé impossible que un únic desenvolupador programi tota la pila completa.


Al inici de la programació, una sola persona podia escriure un programa complet, de principi a fi. L'ús del llenguatge ensamblador, llenguatge de màquina, era la norma per als programadors que pretenien millorar el rendiment i reduir l'espai.


La programació va evolucionar ràpidament cap a un model d’equip amb l’arribada de soluciones client / servidor a finals dels anys 80s i principis dels 90s, i l’onada de la informàtica per Internet a finals dels 90 i principis dels 2000. Cada faceta de la nova tecnologia era tan complexa que sovint es necessitava un especialista, de vegades un per a diferents nivells (per exemple, front-end, bases de dades, servidors d’aplicacions, etc.).


A mitjans dels anys 2000, crear pràcticament qualsevol cosa - des de llocs web senzills fins a serveis SaaS de nova generació - es va tornar costòs. La despesa creixent es va correlacionar directament amb la sobrecàrrega de nombrosos individus dels diferents nivells que es comunicaven (i sovint es comuniquen erròniament), i els canvis en una cascada en altres nivells i en els paràmetres de desplegament.


Per la seva banda, la tecnologia per crear la nova generació de llocs web 2.0 es va simplificar i simplificar. Els programadors van passar d’utilitzar la més complicada pila de bases de dades empresarials i bases de dades com Oracle a la més senzilla pila LAMP (Linux, Apache, MySQL, PHP / Python / Perl). Nous llenguatges i marcs com Django i Ruby on Rails van automatitzar la capa entre el lloc web i la base de dades. Els marcs de gamma frontal com jQuery van ajudar a abstreure totes les complicacions entre diferents navegadors. Els serveis al núvol, com ara Amazon Web Services, van simplificar el desplegament i van proporcionar xarxes clau en mà.


A finals dels anys 2000, amb els nivells d'abstracció es va aconseguir certa sencillesa fent possible per a molts programadors lliurar un programa complet: client web dinàmic, una lògica comercial del costat del servidor, una base de dades escalable, desplegament i suport operatiu. Aquesta nova raça de desenvolupadors de pila completa (full stack) podria fer cercles al voltant d’equips de programadors que intentessin la mateixa tasca. Quan es van augmentar els projectes, afegir més programadors de pila completa va permetre a una sola persona afegir una única característica a tots els nivells d’una aplicació, cosa que va accelerar l’entrega de funcions sobre la despesa de comunicació de tenir diferents persones propietàries en les diferents capes.


Per tant, un desenvolupador de pila completa seria capaç, si no és fluït, de:


  • Servidor, xarxa i entorn d’allotjament

  • Bases de dades relacionals i no relacionals

  • Com interactuar amb les API i el món extern

  • Interfície d’usuari i experiència d’usuari

  • Garantia de qualitat

  • Problemes de seguretat durant tot el programa

  • Comprendre les necessitats dels clients i les empreses


És possible a la web 2.0? Naysayers argumenta que, amb els aspectes cada cop més diversos del desenvolupament web, és gairebé impossible ser un autèntic desenvolupador de pila completa. Francament, pot ser que ni tan sols sigui pràctic fer-ho.


Altres creuen que un desenvolupador de pila completa és simplement algú que estigui familiaritzat amb totes les capes del desenvolupament de programari informàtic. Aquests desenvolupadors no són experts en tot; simplement tenen un coneixement funcional i una capacitat per prendre un concepte i convertir-lo en un producte acabat. Aquests gurús fan que el programari de construcció sigui molt més senzill, ja que entenen com funciona tot de dalt a baix i poden preveure problemes en conseqüència. Segons la nostra opinió, aquesta és la definició més realista d’un desenvolupador de pila completa.


Sovint, aquesta classe de desenvolupadors prové d’entorns de creació inicial, on un ampli coneixement de totes les facetes del desenvolupament web és essencial per a la supervivència d’un negoci. És evident que es necessiten anys d'experiència laboral en diferents idiomes, rols i indústries per assolir aquest nivell de qualificació. Per això, els desenvolupadors de piles completes són pocs i es troben entre tots, cosa que fa que els que existeixen siguin molt ocupables i en demanda.




Saps la història de PHP?