CHOOSE YOUR WEAPON! COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL Ricardo Monascal Departamento de Computación y Tecnología de la Información
•¿Qué es un lenguaje de programación? •¿Por qué debo conocer varios si ya me siento cómodo con uno? •¿Trabajar en un lenguaje que ya conozco no es más eficiente que aprender un lenguaje nuevo para luego empezar a desarrollar? •¿Está bien llevarle la contraria a mi jefe y proponer un cambio en el flujo de trabajo?
COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
•¿Qué es un lenguaje de programación? •¿Por qué debo conocer varios si ya me siento cómodo con uno? •¿Trabajar en un lenguaje que ya conozco no es más eficiente que aprender un lenguaje nuevo para luego empezar a desarrollar? •¿Está bien llevarle la contraria a mi jefe y proponer un cambio en el flujo de trabajo? •¿Por donde empiezo?
COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
Tener un lenguaje favorito no está mal…
…ajem,
,ajem…
COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
Tener un lenguaje favorito no está mal…
…ajem,
,ajem…
• Pero hay que conocer sus limitaciones tanto como sus bondades.
COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
Tener un lenguaje favorito no está mal…
…ajem,
,ajem…
• Pero hay que conocer sus limitaciones tanto como sus bondades.
• No atarse a ese único lenguaje y a sus herramientas. Cada problema tiene una naturaleza y unos requerimientos diferentes.
COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
Tener un lenguaje favorito no está mal…
…ajem,
,ajem…
• Pero hay que conocer sus limitaciones tanto como sus bondades.
• No atarse a ese único lenguaje y a sus herramientas. Cada problema tiene una naturaleza y unos requerimientos diferentes. • Mientras más lenguajes conozcas, más criterio tienes para apoyar y trabajar en tu favorito. COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
EL CAMINO DEL MAL La empresa OlaKAse busca estudiantes de último año o recién graduados para que trabajen en un proyecto de desarrollo de software de alcance internacional. Los conocimientos necesarios para el proyecto son: • Lenguajes de programación: JAVA y PHP. • Framework de desarrollo Web: STRUTS 2.x • Manejador de Base de Datos: MySQL • Manejador de Versiones: Subversion Interesados llamar al 0-800-CLICHÉ 0-800-CLICHÉ
0-800-CLICHÉ
0-800-CLICHÉ
0-800-CLICHÉ
0-800-CLICHÉ
0-800-CLICHÉ
0-800-CLICHÉ
0-800-CLICHÉ
0-800-CLICHÉ
0-800-CLICHÉ
0-800-CLICHÉ
0-800-CLICHÉ
COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
EL CAMINO DEL BIEN La empresa OlaKAse busca estudiantes de último año o recién graduados para que trabajen en un proyecto de desarrollo de software de alcance internacional, que consiste en hacer X, Y y Z. Los conocimientos necesarios para el proyecto son: • Fluencia en uno o más lenguajes de programación (preferiblemente orientados a objetos). • Familiaridad con frameworks de desarrollo Web. • Administración de Base de Datos y modelaje relacional. • Familiaridad con manejadores de Versiones Interesados llamar al 0-800-MEJOR 0-800-MEJOR
0-800-MEJOR
0-800-MEJOR
0-800-MEJOR
0-800-MEJOR
0-800-MEJOR
0-800-MEJOR
0-800-MEJOR
0-800-MEJOR
0-800-MEJOR
0-800-MEJOR
0-800-MEJOR
COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
• ¿Cuál es la mejor forma de resolver un problema?
COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
• ¿Cuál es la mejor forma de resolver un problema?
• ¿Con que lenguaje escribirían: • una aplicación web? • un sistema operativo? • un programa que resuelva ecuaciones? •… COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
• ¿Cuánto cómputo involucra mi programa? ¿Necesita ser eficiente?
COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
• ¿Cuánto cómputo involucra mi programa? ¿Necesita ser eficiente? • ¿Cuánto tiempo tengo para el desarrollo? ¿Cuánto tiempo tengo entre entregas?
COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
• ¿Cuánto cómputo involucra mi programa? ¿Necesita ser eficiente? • ¿Cuánto tiempo tengo para el desarrollo? ¿Cuánto tiempo tengo entre entregas? • ¿Cuál es la infraestructura tecnológica con la que cuento? ¿Es impráctico ajustarla o reemplazarla?
COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
CONOCER
ENTENDER
• Diferentes paradigmas
• Tipos de alcance y asociaciones • Estructuras de control de flujo • Tipos de datos • Formas de evaluación COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
Y SI LLAMA AHORA, TAMBIÉN LE REGALAMOS… • IDE’s • Debuggers • Profilers • Librerías • Manejadores de Versiones • Pruebas Unitarias COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
¿CÓMO HAGO PARA APRENDER TODO ESO? • Previniendo antes que reparando.
• Consultando a expertos que han que han trabajado problemas similares
COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
¿CÓMO HAGO PARA APRENDER TODO ESO? • Previniendo antes que reparando.
• Consultando a expertos que han que han trabajado problemas similares • San Google es tu amigo …y su apóstol
NINGÚN CONOCIMIENTO ES EN VANO COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
POR ÚLTIMO… • No tengan miedo de aprender algo nuevo y de retar lo que ya conocen.
COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
POR ÚLTIMO… • No tengan miedo de aprender algo nuevo y de retar lo que ya conocen.
• Tiempo gastado en aprender nunca es un gasto, sino una inversión.
COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
POR ÚLTIMO… • No tengan miedo de aprender algo nuevo y de retar lo que ya conocen.
• Tiempo gastado en aprender nunca es un gasto, sino una inversión. • Somos mucho más que solo máquinas que transforman café y Coca Cola en código. ¡Hay que demostrarlo!
COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
¡MUCHAS GRACIAS!
¿PREGUNTAS? COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL
MENSAJE SUBLIMINAL: APRENDAN HASKELL!!!
• Contacto:
[email protected] • Twitter: @rmonascal • Página: ldc.usb.ve/~rmonascal COMO SABER QUE LENGUAJE/HERRAMIENTA USAR AL ENFRENTAR UN PROBLEMA DE LA VIDA REAL