SlideShare uma empresa Scribd logo
1 de 42
Challenges of the Software Developers.
GLOBANT
We are
Juan Carlos Zuluaga
44 “Añazos”
Married
Father of 3 children
Passionate developer (22 years of experience)
Teacher by conviction (19 years of experience)
Software Designer in Globant
Tattooed
Modern
ABOUT ME
CHALLENGES
of the Software Developers
How outdated are you?
LET’S SEE THIS VIDEO
https://www.youtube.com/watch?v=pPzS6gza9KQ
OF THESE LOGOS
with which are you familiar?
THE MESSAGE IS...
JAVA Appears in 1996
We learn to program in
Pascal
GO BACK TO 90’s
Why were we taught to
program in Pascal?
In 1996 there were no jobs in Java. But when we
graduated in 2000, we were the only ones available.
As we learned, we teach. And the teachers of the
time did not know Java or OOP.
Renewing a curriculum takes 5 years, but changing
the paradigm takes 25 years (structured to OOP).
WHICH IS THE PASCAL OF YOUR
GENERATION?
What current programming languages ​​are
about 20 years old or more?
What programming languages ​​represent an
old paradigm?
Which programming languages ​​are in great
demand now, but will not have it in the future?
Niklaus Wirth Father of Pascal
GO BACK TO 90’s
Which is the PASCAL
of your generation?
How will the
future be?
THE BEST WAY TO PREDICT THE
FUTURE IS TO INVENT IT
Alan Kay
Moore’s Law: The number of
transistors and resistors on a
chip doubles every 24
months
Gordon Moore
Moore’s Law: in the real life
If today your personal
computer cost USD $ 1,000
and it has 8 cores.
Within 5 years you will have:
8 * 2 * 2 = 32 cores
Personal
If today a server cost USD
$10,000 and it has 48 cores.
Within 5 years you will have:
48 * 2 * 2 = 192 cores
Server
If we extrapolate Moore's law
AN PREDICT THAT THE COMPUTERS OF THE
FUTURE WE WILL BE MORE “FAST” AND WITH
MORE PROCESSORS
NVIDIA DGX-1
USD $129,000.00
250 Cores (CPUs + GPUs)
EVEN WE CAN BUY THE COMPUTER OF THE
FUTURE TODAY
MORE PROCESSORS IS NOT MORE SPEED
Currently almost all processors are
wasted …
Because our programming
techniques have not evolved
Robotics Augmented Reality Artificial Intelligence
WHY DO WE NEED SO MANY PROCESSORS?
HOW ARE YOU GOING TO
PROGRAM THEM?
“The way the processor industry is
going, is to add more and more cores,
but nobody knows how to program
those things. I men, two, yeah; four, not
really, eight, forget it”
Steve Jobs
ANOTHER PARADIGM IS NECESSARY
One that allows us to program hundreds
of computers at the same time
THE FUTURE OF PROGRAMMING
IS CONCURRENT AND FUNCTIONAL
FUNCTIONAL PROGRAMMING
HIGHER ORDER FUNCTIONS
MAP SAMPLE
FUNCTIONAL SAMPLE
NATURAL EVOLUTION COULD BE…
Java Scala
Ruby Elixir
C GoLang
C++ Rust
C# F#
PHP GoLang
Javascript Elm
Python Elixir / GoLang
Honorable mention to: Erlang and Haskell
SALARY RANKING IN USA
DECREASE IN DEMAND IN
CURRENT PROGRAMMING LANGUAGES
Google influence his language to grow as Python
It appears on 2009
Very fast - programs / compile
Concurrency
Multi platform
Garbage collection
Productive & Readable
Netflix, Docker, Dropbox, Soundcloud, Uber, Google
Go (Golang)
Developed by Mozilla
Most loved language on StackOverflow
Create fast and secure apps
Rust
Takes advantage of multicore processors
Large / client server programs
Low level programing, multi paradigm language,
concurrent operations
Unique language not garbage collection
Applications: Dropbox, NPM, Chef
General purpose programming language
Statically typed
Support OOP, Functional programming
Scala
Interoperates with Java and .NET
Spark is the most popular framework that uses Scala
Applications: LinkedIn, Airbnb, Foursquare, Netflix,
Tumblr, Sony, Twitter, The guardian
Is a strongly typed
Multi-paradigm programming language that encompasses
functional
Imperative
F#
F# is most often used as a cross-platform Common
Language Infrastructure (CLI) language, but it can also
generate JavaScript and graphics processing unit (GPU)
code
Safe, fast and interactive programming language
Optimized compiler
Apple is slowly down away with Objective-C in favor of Swit
Swift
Less errors and less code
Speed
Open source, dynamic libraries
Powerful type interface & pattern matching
IBM, Uber, Apple, Firefox, LinkedIn
It is a language addressed to the front-end
Offers a different vision for the creation of
dynamic Web applications
Pure functional language
Elm
Paradigm of reactive programming
Strongly typed language
Designed to make the compiler look like a friend and
give you useful tips to guide you in the right direction
General purpose programming language
Functional programing paradigm
Based on Erlang virtual machine
Elixir
Applications: message processing Whatsapp,
Connecting IoT devices, data streaming
Functional language with more than 20 years of research
Parallelism and concurrency incorporated
Based on the mathematical concept of function
Haskell
Hierarchical names for modules, for example Data.Bool
Guardians with patterns
Foreign Function Interface (FFI), which allows you to
use C code in a Haskell program and Haskell code in a
C program
Oriented to concurrency and distributed systems
Erlang is a declarative language
Concurrency in Erlang is fundamental to its success
Erlang
Erlang concurrency is fast and scalable
Processes communicate with each other via
message passing, where the message can be any
Erlang data value at all
WHAT WILL YOU START STUDYING, WHEN
THIS PRESENTATION FINISH?
WE HELP
YOU
STAY
RELEVANT
Email: carlos.zuluaga@globant.com
Twitter: @jzuluaga55
YouTube: jzuluaga55

Mais conteúdo relacionado

Mais de Globant

Sistema de recomendación entiempo real usando Delta Lake
Sistema de recomendación entiempo real usando Delta LakeSistema de recomendación entiempo real usando Delta Lake
Sistema de recomendación entiempo real usando Delta LakeGlobant
 
Kubeflow: Machine Learning en Cloud para todos
Kubeflow: Machine Learning en Cloud para todosKubeflow: Machine Learning en Cloud para todos
Kubeflow: Machine Learning en Cloud para todosGlobant
 
Orquestando Pipelines de Datosen AWS con Step Function y AWS Glue
Orquestando Pipelines de Datosen AWS con Step Function y AWS GlueOrquestando Pipelines de Datosen AWS con Step Function y AWS Glue
Orquestando Pipelines de Datosen AWS con Step Function y AWS GlueGlobant
 
Apache Beam: Lote portátil y procesamiento de transmisión
Apache Beam: Lote portátil y procesamiento de transmisiónApache Beam: Lote portátil y procesamiento de transmisión
Apache Beam: Lote portátil y procesamiento de transmisiónGlobant
 
Navegando el desafío de transformación digital de los servicios financieros
Navegando el desafío de transformación digital de los servicios financierosNavegando el desafío de transformación digital de los servicios financieros
Navegando el desafío de transformación digital de los servicios financierosGlobant
 
Converge 2020
Converge 2020 Converge 2020
Converge 2020 Globant
 
Converge 2020
Converge 2020Converge 2020
Converge 2020Globant
 
Tendencias de tecnología para el recién egresado
Tendencias de tecnología para el recién egresadoTendencias de tecnología para el recién egresado
Tendencias de tecnología para el recién egresadoGlobant
 
SRE: ¿Qué es y cómo gestionar el Toil?
SRE: ¿Qué es y cómo gestionar el Toil?SRE: ¿Qué es y cómo gestionar el Toil?
SRE: ¿Qué es y cómo gestionar el Toil?Globant
 
Monitoreo en tiempo real para la mejora continua de una aplicación
Monitoreo en tiempo real para la mejora continua de una aplicaciónMonitoreo en tiempo real para la mejora continua de una aplicación
Monitoreo en tiempo real para la mejora continua de una aplicaciónGlobant
 
¿Cómo automatizar pruebas de infraestructura y no morir en el intento?
¿Cómo automatizar pruebas de infraestructura y no morir en el intento?¿Cómo automatizar pruebas de infraestructura y no morir en el intento?
¿Cómo automatizar pruebas de infraestructura y no morir en el intento?Globant
 
Automatización en AWS con Chatbot Serverless (Amazon Lex)
Automatización en AWS con Chatbot Serverless (Amazon Lex)Automatización en AWS con Chatbot Serverless (Amazon Lex)
Automatización en AWS con Chatbot Serverless (Amazon Lex)Globant
 
¿Cómo importar funcionalidades de C++ a NodeJS?
¿Cómo importar funcionalidades de C++ a NodeJS?¿Cómo importar funcionalidades de C++ a NodeJS?
¿Cómo importar funcionalidades de C++ a NodeJS?Globant
 
Administrar permisos con GraphQL
Administrar permisos con GraphQLAdministrar permisos con GraphQL
Administrar permisos con GraphQLGlobant
 
Qué es Accesibilidad y su importancia en el mundo digital
Qué es Accesibilidad y su importancia en el mundo digitalQué es Accesibilidad y su importancia en el mundo digital
Qué es Accesibilidad y su importancia en el mundo digitalGlobant
 
Lean Change Management: Transformaciones ágiles basadas en experimentos
Lean Change Management: Transformaciones ágiles basadas en experimentosLean Change Management: Transformaciones ágiles basadas en experimentos
Lean Change Management: Transformaciones ágiles basadas en experimentosGlobant
 
Creativity and Innovation in Times of Crisis
Creativity and Innovation in Times of CrisisCreativity and Innovation in Times of Crisis
Creativity and Innovation in Times of CrisisGlobant
 
Automation framework with clean architecture, accessibility & self healing - ...
Automation framework with clean architecture, accessibility & self healing - ...Automation framework with clean architecture, accessibility & self healing - ...
Automation framework with clean architecture, accessibility & self healing - ...Globant
 
¡Introducción a Cypress! - Globant Tech Insiders: Automatización de Pruebas
¡Introducción a Cypress! - Globant Tech Insiders: Automatización de Pruebas¡Introducción a Cypress! - Globant Tech Insiders: Automatización de Pruebas
¡Introducción a Cypress! - Globant Tech Insiders: Automatización de PruebasGlobant
 
¡Acepto el desafío! : Test Automation Engineering - Globant Tech Insiders: Au...
¡Acepto el desafío! : Test Automation Engineering - Globant Tech Insiders: Au...¡Acepto el desafío! : Test Automation Engineering - Globant Tech Insiders: Au...
¡Acepto el desafío! : Test Automation Engineering - Globant Tech Insiders: Au...Globant
 

Mais de Globant (20)

Sistema de recomendación entiempo real usando Delta Lake
Sistema de recomendación entiempo real usando Delta LakeSistema de recomendación entiempo real usando Delta Lake
Sistema de recomendación entiempo real usando Delta Lake
 
Kubeflow: Machine Learning en Cloud para todos
Kubeflow: Machine Learning en Cloud para todosKubeflow: Machine Learning en Cloud para todos
Kubeflow: Machine Learning en Cloud para todos
 
Orquestando Pipelines de Datosen AWS con Step Function y AWS Glue
Orquestando Pipelines de Datosen AWS con Step Function y AWS GlueOrquestando Pipelines de Datosen AWS con Step Function y AWS Glue
Orquestando Pipelines de Datosen AWS con Step Function y AWS Glue
 
Apache Beam: Lote portátil y procesamiento de transmisión
Apache Beam: Lote portátil y procesamiento de transmisiónApache Beam: Lote portátil y procesamiento de transmisión
Apache Beam: Lote portátil y procesamiento de transmisión
 
Navegando el desafío de transformación digital de los servicios financieros
Navegando el desafío de transformación digital de los servicios financierosNavegando el desafío de transformación digital de los servicios financieros
Navegando el desafío de transformación digital de los servicios financieros
 
Converge 2020
Converge 2020 Converge 2020
Converge 2020
 
Converge 2020
Converge 2020Converge 2020
Converge 2020
 
Tendencias de tecnología para el recién egresado
Tendencias de tecnología para el recién egresadoTendencias de tecnología para el recién egresado
Tendencias de tecnología para el recién egresado
 
SRE: ¿Qué es y cómo gestionar el Toil?
SRE: ¿Qué es y cómo gestionar el Toil?SRE: ¿Qué es y cómo gestionar el Toil?
SRE: ¿Qué es y cómo gestionar el Toil?
 
Monitoreo en tiempo real para la mejora continua de una aplicación
Monitoreo en tiempo real para la mejora continua de una aplicaciónMonitoreo en tiempo real para la mejora continua de una aplicación
Monitoreo en tiempo real para la mejora continua de una aplicación
 
¿Cómo automatizar pruebas de infraestructura y no morir en el intento?
¿Cómo automatizar pruebas de infraestructura y no morir en el intento?¿Cómo automatizar pruebas de infraestructura y no morir en el intento?
¿Cómo automatizar pruebas de infraestructura y no morir en el intento?
 
Automatización en AWS con Chatbot Serverless (Amazon Lex)
Automatización en AWS con Chatbot Serverless (Amazon Lex)Automatización en AWS con Chatbot Serverless (Amazon Lex)
Automatización en AWS con Chatbot Serverless (Amazon Lex)
 
¿Cómo importar funcionalidades de C++ a NodeJS?
¿Cómo importar funcionalidades de C++ a NodeJS?¿Cómo importar funcionalidades de C++ a NodeJS?
¿Cómo importar funcionalidades de C++ a NodeJS?
 
Administrar permisos con GraphQL
Administrar permisos con GraphQLAdministrar permisos con GraphQL
Administrar permisos con GraphQL
 
Qué es Accesibilidad y su importancia en el mundo digital
Qué es Accesibilidad y su importancia en el mundo digitalQué es Accesibilidad y su importancia en el mundo digital
Qué es Accesibilidad y su importancia en el mundo digital
 
Lean Change Management: Transformaciones ágiles basadas en experimentos
Lean Change Management: Transformaciones ágiles basadas en experimentosLean Change Management: Transformaciones ágiles basadas en experimentos
Lean Change Management: Transformaciones ágiles basadas en experimentos
 
Creativity and Innovation in Times of Crisis
Creativity and Innovation in Times of CrisisCreativity and Innovation in Times of Crisis
Creativity and Innovation in Times of Crisis
 
Automation framework with clean architecture, accessibility & self healing - ...
Automation framework with clean architecture, accessibility & self healing - ...Automation framework with clean architecture, accessibility & self healing - ...
Automation framework with clean architecture, accessibility & self healing - ...
 
¡Introducción a Cypress! - Globant Tech Insiders: Automatización de Pruebas
¡Introducción a Cypress! - Globant Tech Insiders: Automatización de Pruebas¡Introducción a Cypress! - Globant Tech Insiders: Automatización de Pruebas
¡Introducción a Cypress! - Globant Tech Insiders: Automatización de Pruebas
 
¡Acepto el desafío! : Test Automation Engineering - Globant Tech Insiders: Au...
¡Acepto el desafío! : Test Automation Engineering - Globant Tech Insiders: Au...¡Acepto el desafío! : Test Automation Engineering - Globant Tech Insiders: Au...
¡Acepto el desafío! : Test Automation Engineering - Globant Tech Insiders: Au...
 

Último

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 

Último (20)

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 

Lightning Talks by Globant-Software Developer Challenges currently, How outdated are you?

  • 1. Challenges of the Software Developers. GLOBANT We are
  • 2. Juan Carlos Zuluaga 44 “Añazos” Married Father of 3 children Passionate developer (22 years of experience) Teacher by conviction (19 years of experience) Software Designer in Globant Tattooed Modern ABOUT ME
  • 3. CHALLENGES of the Software Developers How outdated are you?
  • 4. LET’S SEE THIS VIDEO https://www.youtube.com/watch?v=pPzS6gza9KQ
  • 5. OF THESE LOGOS with which are you familiar?
  • 7. JAVA Appears in 1996 We learn to program in Pascal
  • 8. GO BACK TO 90’s Why were we taught to program in Pascal?
  • 9. In 1996 there were no jobs in Java. But when we graduated in 2000, we were the only ones available. As we learned, we teach. And the teachers of the time did not know Java or OOP. Renewing a curriculum takes 5 years, but changing the paradigm takes 25 years (structured to OOP).
  • 10. WHICH IS THE PASCAL OF YOUR GENERATION? What current programming languages ​​are about 20 years old or more? What programming languages ​​represent an old paradigm? Which programming languages ​​are in great demand now, but will not have it in the future? Niklaus Wirth Father of Pascal
  • 11. GO BACK TO 90’s Which is the PASCAL of your generation?
  • 13. THE BEST WAY TO PREDICT THE FUTURE IS TO INVENT IT Alan Kay
  • 14. Moore’s Law: The number of transistors and resistors on a chip doubles every 24 months Gordon Moore
  • 15. Moore’s Law: in the real life
  • 16. If today your personal computer cost USD $ 1,000 and it has 8 cores. Within 5 years you will have: 8 * 2 * 2 = 32 cores Personal If today a server cost USD $10,000 and it has 48 cores. Within 5 years you will have: 48 * 2 * 2 = 192 cores Server If we extrapolate Moore's law
  • 17.
  • 18. AN PREDICT THAT THE COMPUTERS OF THE FUTURE WE WILL BE MORE “FAST” AND WITH MORE PROCESSORS
  • 19. NVIDIA DGX-1 USD $129,000.00 250 Cores (CPUs + GPUs) EVEN WE CAN BUY THE COMPUTER OF THE FUTURE TODAY
  • 20. MORE PROCESSORS IS NOT MORE SPEED Currently almost all processors are wasted … Because our programming techniques have not evolved
  • 21. Robotics Augmented Reality Artificial Intelligence WHY DO WE NEED SO MANY PROCESSORS?
  • 22. HOW ARE YOU GOING TO PROGRAM THEM? “The way the processor industry is going, is to add more and more cores, but nobody knows how to program those things. I men, two, yeah; four, not really, eight, forget it” Steve Jobs
  • 23. ANOTHER PARADIGM IS NECESSARY One that allows us to program hundreds of computers at the same time
  • 24. THE FUTURE OF PROGRAMMING IS CONCURRENT AND FUNCTIONAL
  • 29. NATURAL EVOLUTION COULD BE… Java Scala Ruby Elixir C GoLang C++ Rust C# F# PHP GoLang Javascript Elm Python Elixir / GoLang Honorable mention to: Erlang and Haskell
  • 31. DECREASE IN DEMAND IN CURRENT PROGRAMMING LANGUAGES
  • 32. Google influence his language to grow as Python It appears on 2009 Very fast - programs / compile Concurrency Multi platform Garbage collection Productive & Readable Netflix, Docker, Dropbox, Soundcloud, Uber, Google Go (Golang)
  • 33. Developed by Mozilla Most loved language on StackOverflow Create fast and secure apps Rust Takes advantage of multicore processors Large / client server programs Low level programing, multi paradigm language, concurrent operations Unique language not garbage collection Applications: Dropbox, NPM, Chef
  • 34. General purpose programming language Statically typed Support OOP, Functional programming Scala Interoperates with Java and .NET Spark is the most popular framework that uses Scala Applications: LinkedIn, Airbnb, Foursquare, Netflix, Tumblr, Sony, Twitter, The guardian
  • 35. Is a strongly typed Multi-paradigm programming language that encompasses functional Imperative F# F# is most often used as a cross-platform Common Language Infrastructure (CLI) language, but it can also generate JavaScript and graphics processing unit (GPU) code
  • 36. Safe, fast and interactive programming language Optimized compiler Apple is slowly down away with Objective-C in favor of Swit Swift Less errors and less code Speed Open source, dynamic libraries Powerful type interface & pattern matching IBM, Uber, Apple, Firefox, LinkedIn
  • 37. It is a language addressed to the front-end Offers a different vision for the creation of dynamic Web applications Pure functional language Elm Paradigm of reactive programming Strongly typed language Designed to make the compiler look like a friend and give you useful tips to guide you in the right direction
  • 38. General purpose programming language Functional programing paradigm Based on Erlang virtual machine Elixir Applications: message processing Whatsapp, Connecting IoT devices, data streaming
  • 39. Functional language with more than 20 years of research Parallelism and concurrency incorporated Based on the mathematical concept of function Haskell Hierarchical names for modules, for example Data.Bool Guardians with patterns Foreign Function Interface (FFI), which allows you to use C code in a Haskell program and Haskell code in a C program
  • 40. Oriented to concurrency and distributed systems Erlang is a declarative language Concurrency in Erlang is fundamental to its success Erlang Erlang concurrency is fast and scalable Processes communicate with each other via message passing, where the message can be any Erlang data value at all
  • 41. WHAT WILL YOU START STUDYING, WHEN THIS PRESENTATION FINISH?