SlideShare una empresa de Scribd logo
Lenguajes y frameworks
 para aplicaciones web
   ¿Cuántos son necesarios?

       Antonio Ognio
     antonio@ognio.com
¿Cuántos lenguajes y
   frameworks debo
conocer para desarrollar
   aplicaciones web?
...al menos 3:

HTML, CSS y Javascript
...pero idealmente

TODOS LOS QUE PUEDAS
...al principio de los tiempos

    EN LOS AÑOS 90's
Lenguajes y frameworks para desarrollo web
Lenguajes y frameworks para desarrollo web
Principales aportes:
● CGI al alcance de las masas
● Navaja suiza para procesar texto

● Scripts para gestionar infraestructura

● CPAN, enorme librería de módulos
Lenguajes y frameworks para desarrollo web
Principales aportes:
● Muy baja barrera de entrada
● Ha hecho posible un gran número de sitios web

● Disponible en casi todas las plataformas

● Rendimiento aceptable en general

● Gran cantidad de proyectos opensource
...en plena burbuja de Internet

   ALREDEDOR DEL 2000
Lenguajes y frameworks para desarrollo web
Principales aportes:
● Una plataforma unificada: JVM independiente el
HW y el sistema operativo
● Herramientas de corte corporativo con enfoque


en la escabalabilidad y la mantenibilidad de la
infraestructura
● Gran laboratorio de frameworks usando distintos


patrones de diseño
● Gran ecosistema de productos y herramientas


tanto comerciales como opensource
Lenguajes y frameworks para desarrollo web
Principales aportes:
● Hizo popular el uso de web services (SOAP)
● Simplificó la librería de clases de un framework


corporativo significativamente
● Popularizó el concepto de poder usar distintos


lenguajes y librerías de clase sobre una sola máquina
virtual
● Pionero en soportar lenguajes dinámicos y


lenguajes funcionales a nivel de la máquina virtual
...un poco después

ALREDEDOR DEL 2005
Lenguajes y frameworks para desarrollo web
Principales aportes:
● Demostró que se puede tener alta productividad
escribiendo poco código y conservando la cordura
● Demostró que el código de las aplicaciones web


puede ser fácil de leer y mantener
● Revalorizó y popularizó el concepto de DSL o


lenguajes de dominio específico
● Posiblemente la herramienta más integrada con la


corriente “Web 2.0” a todo nivel
● Ayudó a popularizar temas como testing, control de


código, RESTful webservices, etc
Lenguajes y frameworks para desarrollo web
Lenguajes y frameworks para desarrollo web
Lenguajes y frameworks para desarrollo web
Lenguajes y frameworks para desarrollo web
Principales aportes:
● Popularizó el concepto de “aplicaciones
reutilizables” fáciles de “enchufar” en cualquier
proyecto
● Alternativa a Ruby/Rails para los que prefieren un


enfoque de programación dinámica pero menos
“magia”
● Ayudó a popularizar el uso de Python en


aplicaciones web ya que anteriormente el espacio
estaba demasiado fraccionado
...en la actualidad

DESDE EL 2008 EN ADELANTE
Lenguajes y frameworks para desarrollo web
Principales aportes:
● Está ayudando a popularizar la programación de
servicios de red orientados a eventos
● Un solo lenguaje de programación en el lado del


cliente y del servidor
● No solo web: también correo, DNS, proxy,


balanceo de carga, protocolos a la medida
● Construcción de componentes de red


especializados hechos a la medida de la aplicación
Lenguajes y frameworks para desarrollo web
Compojure
Principales aportes:
● Lenguajes diseñados para escalar hacia arriba y hacia
abajo sobre plataformas populares: JVM y CLR
● Excelente rendimiento ahora que las máquinas


virtuales tiene casi 20 años de optimizaciones
● Permiten capitalizar herramientas del presente (OOP)


e ir construyendo herramientas del futuro
(Programación Funcional)
● Diseñados para facilitar enormemente el diseño e


implementación de aplicaciones distribuídas que saquen
provecho del procesamiento paralelo
¿Porqué no seguir
 con PHP ó Java?
¿Porqué no seguir con PHP ó Java?
● Ambos son lenguajes menos expresivos que otras
alternativas como Python, Ruby ó Scala
● Contienen un gran número de pequeños errores de


diseño e implementación que se van sumando
● La cantidad y la calidad de las librerías modernas y


bien mantenidos para ambos lenguajes ha venido
decayendo en los últimos años
● El mercado de programadores de ambos lenguajes


lamentablemente está plagado de gente con poca
experiencia o que no está dispuesta a estar
actualizando conocimientos permanentemente
..no solo frameworks

  HERRAMIENTAS
 INDISPENSABLES
Lenguajes y frameworks para desarrollo web
Lenguajes y frameworks para desarrollo web
Lenguajes y frameworks para desarrollo web
Lenguajes y frameworks para desarrollo web
Principales aportes:
● Control del código fuente de las aplicaciones y de la
infraestructura
● Servicios de almacenamiento de datos no-relacionales


 y altamente escalables
● Integración contínua para la detección temprana y


automática de fallos
● Gestión de la infraestructura virtual como si se


tratara de software (Chef)
● Procesamiento de enormes volúmenes de datos
Gracias!

  Antonio Ognio
antonio@ognio.com

Más contenido relacionado

PDF
Aplicaciones RIA para una web multiplataforma
PDF
Best Practices for the Most Impactful Oracle Database 18c and 19c Features
PDF
Hyperspace for Delta Lake
PDF
Construindo um data warehouse com Pentaho e Docker
PPTX
Full stack web development
PPTX
A Quick Tour of OpenRefine
PDF
"Changing Role of the DBA" Skills to Have, to Obtain & to Nurture - Updated 2...
PDF
REST API Best (Recommended) Practices
Aplicaciones RIA para una web multiplataforma
Best Practices for the Most Impactful Oracle Database 18c and 19c Features
Hyperspace for Delta Lake
Construindo um data warehouse com Pentaho e Docker
Full stack web development
A Quick Tour of OpenRefine
"Changing Role of the DBA" Skills to Have, to Obtain & to Nurture - Updated 2...
REST API Best (Recommended) Practices

La actualidad más candente (20)

PPTX
Front End Development | Introduction
PDF
Big data-cheat-sheet
PDF
Angular performance slides
PDF
Online School Website Presentation
PPTX
re:Invent 2022 DAT326 Deep dive into Amazon Aurora and its innovations
PDF
The MEAN Stack
PPTX
Best Practices in Handling Performance Issues
PPTX
One Click Hadoop Clusters - Anywhere (Using Docker)
PDF
Parallelize R Code Using Apache Spark
PDF
Fundamentals of Web Development For Non-Developers
DOC
Analyzing awr report
PPTX
Oracle GoldenGate for MySQL Overview
PDF
Introdução ao Desenvolvimento de aplicações WEB com JSP
PPTX
Web Performance Optimization
PPTX
Open edX Overview
PPTX
Oracle GoldenGate for Disaster Recovery
PDF
Modern Web Development
PPTX
SOLID: the core principles of success of the Symfony web framework and of you...
PDF
How To be a Backend developer
PDF
Zabbix construindo templates personalizados (zabbix-inventory)
Front End Development | Introduction
Big data-cheat-sheet
Angular performance slides
Online School Website Presentation
re:Invent 2022 DAT326 Deep dive into Amazon Aurora and its innovations
The MEAN Stack
Best Practices in Handling Performance Issues
One Click Hadoop Clusters - Anywhere (Using Docker)
Parallelize R Code Using Apache Spark
Fundamentals of Web Development For Non-Developers
Analyzing awr report
Oracle GoldenGate for MySQL Overview
Introdução ao Desenvolvimento de aplicações WEB com JSP
Web Performance Optimization
Open edX Overview
Oracle GoldenGate for Disaster Recovery
Modern Web Development
SOLID: the core principles of success of the Symfony web framework and of you...
How To be a Backend developer
Zabbix construindo templates personalizados (zabbix-inventory)
Publicidad

Similar a Lenguajes y frameworks para desarrollo web (20)

PPTX
Tecnología web 1
PPTX
Tecnologías detrás de las aplicaciones
DOCX
Plataformas para el desarrollo de aplicaciones web
PPTX
IDEs y Frameworks mas utilizados
PPTX
Herramientas SI para Aplicaciones Web - Gianni Rodriguez
PDF
PHP, casos de éxito y comparativas con otros lenguajes
ODP
Python para desarrollo web de ultima generación
PDF
Software en la actualidad
PDF
los diferentes lenguajes de programación para-la-web
PDF
los-diferentes-lenguajes-de-programacion-para-la-web
PPTX
Lenguajes del lado del servidor
PPT
Tecnologías Web
PPTX
Php un lenguaje de programación.........
PPT
Presentacion tics
PDF
Servicios web
PDF
¿Cómo elegir el languaje y el framework de tu próxima aplicación web?
PPTX
Programacion web
PPTX
PROGRAMACIÓN PARA INTERNET lo básico en WEB
PPTX
Estudio comparativo de PHP, ASP.NET Y JAVA
PDF
Lenguajes de desarrollo web
Tecnología web 1
Tecnologías detrás de las aplicaciones
Plataformas para el desarrollo de aplicaciones web
IDEs y Frameworks mas utilizados
Herramientas SI para Aplicaciones Web - Gianni Rodriguez
PHP, casos de éxito y comparativas con otros lenguajes
Python para desarrollo web de ultima generación
Software en la actualidad
los diferentes lenguajes de programación para-la-web
los-diferentes-lenguajes-de-programacion-para-la-web
Lenguajes del lado del servidor
Tecnologías Web
Php un lenguaje de programación.........
Presentacion tics
Servicios web
¿Cómo elegir el languaje y el framework de tu próxima aplicación web?
Programacion web
PROGRAMACIÓN PARA INTERNET lo básico en WEB
Estudio comparativo de PHP, ASP.NET Y JAVA
Lenguajes de desarrollo web
Publicidad

Más de Antonio Ognio (15)

PDF
Desarrollo ágil de sistemas distribuidos con Python empleando la arquitectura...
PDF
Organizando una Hackparty
PDF
Lean Startups
PDF
Redis: servidor de estructuras de datos
PDF
Bases de datos NoSQL - Huancayo - 2010
PDF
Desarrollando con PHP en Windows
PDF
Gestor de paquetes YUM
PDF
Twixer (english)
PDF
PDF
Mejorando la seguridad del servicio SSH - Hardening
PDF
Mini-tutorial de git
PDF
¿Porqué Python? ...y Django
PDF
Ubuntu Server Edition 9.04 Jaunty Jackalope
PDF
Consejos y trucos de supervivencia para nuevos usuarios de GNU/Linux
PDF
Desarrollo ágil de sistemas distribuidos con Python empleando la arquitectura...
Organizando una Hackparty
Lean Startups
Redis: servidor de estructuras de datos
Bases de datos NoSQL - Huancayo - 2010
Desarrollando con PHP en Windows
Gestor de paquetes YUM
Twixer (english)
Mejorando la seguridad del servicio SSH - Hardening
Mini-tutorial de git
¿Porqué Python? ...y Django
Ubuntu Server Edition 9.04 Jaunty Jackalope
Consejos y trucos de supervivencia para nuevos usuarios de GNU/Linux

Último (20)

PDF
Distribucion de frecuencia exel (1).pdf
PPTX
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx
PPTX
Diapositivas Borrador Rocha Jauregui David Paolo (3).pptx
PPTX
unidad 3 tecnología 8° básico: planificación y elaboración de un objeto
PDF
Diapositiva proyecto de vida, materia catedra
DOCX
Trabajo grupal.docxjsjsjsksjsjsskksjsjsjsj
PDF
informe_fichas1y2_corregido.docx (2) (1).pdf
PPTX
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
PDF
PRESENTACIÓN GENERAL MIPIG - MODELO INTEGRADO DE PLANEACIÓN
PDF
Documental Beyond the Code (Dossier Presentación - 2.0)
PPTX
historia_web de la creacion de un navegador_presentacion.pptx
PDF
MANUAL de recursos humanos para ODOO.pdf
PDF
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
PDF
Estrategia de Apoyo de Daylin Castaño (5).pdf
PDF
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
DOCX
TRABAJO GRUPAL (5) (1).docxsjsjskskksksksks
PPTX
la-historia-de-la-medicina Edna Silva.pptx
PDF
CyberOps Associate - Cisco Networking Academy
PPTX
Sesion 1 de microsoft power point - Clase 1
PDF
0007_PPT_DefinicionesDeDataMining_201_v1-0.pdf
Distribucion de frecuencia exel (1).pdf
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx
Diapositivas Borrador Rocha Jauregui David Paolo (3).pptx
unidad 3 tecnología 8° básico: planificación y elaboración de un objeto
Diapositiva proyecto de vida, materia catedra
Trabajo grupal.docxjsjsjsksjsjsskksjsjsjsj
informe_fichas1y2_corregido.docx (2) (1).pdf
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
PRESENTACIÓN GENERAL MIPIG - MODELO INTEGRADO DE PLANEACIÓN
Documental Beyond the Code (Dossier Presentación - 2.0)
historia_web de la creacion de un navegador_presentacion.pptx
MANUAL de recursos humanos para ODOO.pdf
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
Estrategia de Apoyo de Daylin Castaño (5).pdf
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
TRABAJO GRUPAL (5) (1).docxsjsjskskksksksks
la-historia-de-la-medicina Edna Silva.pptx
CyberOps Associate - Cisco Networking Academy
Sesion 1 de microsoft power point - Clase 1
0007_PPT_DefinicionesDeDataMining_201_v1-0.pdf

Lenguajes y frameworks para desarrollo web

  • 1. Lenguajes y frameworks para aplicaciones web ¿Cuántos son necesarios? Antonio Ognio antonio@ognio.com
  • 2. ¿Cuántos lenguajes y frameworks debo conocer para desarrollar aplicaciones web?
  • 3. ...al menos 3: HTML, CSS y Javascript
  • 5. ...al principio de los tiempos EN LOS AÑOS 90's
  • 8. Principales aportes: ● CGI al alcance de las masas ● Navaja suiza para procesar texto ● Scripts para gestionar infraestructura ● CPAN, enorme librería de módulos
  • 10. Principales aportes: ● Muy baja barrera de entrada ● Ha hecho posible un gran número de sitios web ● Disponible en casi todas las plataformas ● Rendimiento aceptable en general ● Gran cantidad de proyectos opensource
  • 11. ...en plena burbuja de Internet ALREDEDOR DEL 2000
  • 13. Principales aportes: ● Una plataforma unificada: JVM independiente el HW y el sistema operativo ● Herramientas de corte corporativo con enfoque en la escabalabilidad y la mantenibilidad de la infraestructura ● Gran laboratorio de frameworks usando distintos patrones de diseño ● Gran ecosistema de productos y herramientas tanto comerciales como opensource
  • 15. Principales aportes: ● Hizo popular el uso de web services (SOAP) ● Simplificó la librería de clases de un framework corporativo significativamente ● Popularizó el concepto de poder usar distintos lenguajes y librerías de clase sobre una sola máquina virtual ● Pionero en soportar lenguajes dinámicos y lenguajes funcionales a nivel de la máquina virtual
  • 18. Principales aportes: ● Demostró que se puede tener alta productividad escribiendo poco código y conservando la cordura ● Demostró que el código de las aplicaciones web puede ser fácil de leer y mantener ● Revalorizó y popularizó el concepto de DSL o lenguajes de dominio específico ● Posiblemente la herramienta más integrada con la corriente “Web 2.0” a todo nivel ● Ayudó a popularizar temas como testing, control de código, RESTful webservices, etc
  • 23. Principales aportes: ● Popularizó el concepto de “aplicaciones reutilizables” fáciles de “enchufar” en cualquier proyecto ● Alternativa a Ruby/Rails para los que prefieren un enfoque de programación dinámica pero menos “magia” ● Ayudó a popularizar el uso de Python en aplicaciones web ya que anteriormente el espacio estaba demasiado fraccionado
  • 24. ...en la actualidad DESDE EL 2008 EN ADELANTE
  • 26. Principales aportes: ● Está ayudando a popularizar la programación de servicios de red orientados a eventos ● Un solo lenguaje de programación en el lado del cliente y del servidor ● No solo web: también correo, DNS, proxy, balanceo de carga, protocolos a la medida ● Construcción de componentes de red especializados hechos a la medida de la aplicación
  • 29. Principales aportes: ● Lenguajes diseñados para escalar hacia arriba y hacia abajo sobre plataformas populares: JVM y CLR ● Excelente rendimiento ahora que las máquinas virtuales tiene casi 20 años de optimizaciones ● Permiten capitalizar herramientas del presente (OOP) e ir construyendo herramientas del futuro (Programación Funcional) ● Diseñados para facilitar enormemente el diseño e implementación de aplicaciones distribuídas que saquen provecho del procesamiento paralelo
  • 30. ¿Porqué no seguir con PHP ó Java?
  • 31. ¿Porqué no seguir con PHP ó Java? ● Ambos son lenguajes menos expresivos que otras alternativas como Python, Ruby ó Scala ● Contienen un gran número de pequeños errores de diseño e implementación que se van sumando ● La cantidad y la calidad de las librerías modernas y bien mantenidos para ambos lenguajes ha venido decayendo en los últimos años ● El mercado de programadores de ambos lenguajes lamentablemente está plagado de gente con poca experiencia o que no está dispuesta a estar actualizando conocimientos permanentemente
  • 32. ..no solo frameworks HERRAMIENTAS INDISPENSABLES
  • 37. Principales aportes: ● Control del código fuente de las aplicaciones y de la infraestructura ● Servicios de almacenamiento de datos no-relacionales y altamente escalables ● Integración contínua para la detección temprana y automática de fallos ● Gestión de la infraestructura virtual como si se tratara de software (Chef) ● Procesamiento de enormes volúmenes de datos
  • 38. Gracias! Antonio Ognio antonio@ognio.com