¿Python científico? Este es un resumen de experiencias por parte de alumnos de ingeniería química que empezaron con Python.
¡Python visto con los ojos de un novato!
http://CAChemE.org
Python para resolver EDPs - Ingeniería Química - PyConES 2013CAChemE
La resolución de ecuaciones diferenciales parciales (EDPs) mediante métodos numéricos permite obtener soluciones a problemas típicos presentes tanto en el ámbito ingenieril como científico. Tales problemas incluyen diferentes fenómenos físicos como propagación del sonido o del calor, la electrostática, la electrodinámica, la dinámica de fluidos, la elasticidad etc.
Existen numerosos paquetes de software para resolver EDPs, usando una variedad de idiomas y métodos numéricos. Muchos de ellos son propietarios y suponen un alto coste para las empresas y/o universidades. Además, la madurez de los mismos y su sencillez de uso pueden ocasionar efectos adversos convirtiendo estás herramientas en auténticas cajas negras.
En este marco, Python, en conjunto con sus librerías (NumPy, SciPy, FiPy), proporciona una herramienta perfecta que facilita el aprendizaje y desarrollo de la intuición necesarias para la resolución de estos problemas de forma libre y gratuita.
El uso de Python en la Ingenieria Química - Charla CompletaCAChemE
Diapositivas para la charla completa:
El uso de Python en Ingeniería Química - PyConES 2013
Video en: http://www.youtube.com/watch?v=AGGaqjn9GuI
En la conferencia de Python nacional (PyConES) que se celebró en Madrid se propuso la introducción teórica y resolución de ejemplos mediante Python de problemas clásicos presentes en ingenierías.
La resolución de ecuaciones diferenciales parciales (EDPs) mediante métodos numéricos permite obtener soluciones a problemas típicos presentes en diferentes fenómenos físicos como la propagación del sonido o del calor, la electrostática, la electrodinámica, la dinámica de fluidos, la elasticidad, etc.
Programas de modelado algebraico permiten la resolución de diferentes problemas que van desde la selección óptima de equipos y recursos en sector industrial químico, a la gestión logística de una empresa genérica.
Resolución de ecuaciones EDO (ecuación diferencial ordinaria) para el diseño de reactores químicos.
Se introducen así Python y sus librerías con el objetivo de mostrar su potencial actual.
Programación matématica (optimización) con Python - Ingeniería Química - PyConESCAChemE
Los programas de modelado algebraico son utilizados para la resolución de diferentes problemas que van desde la selección óptima de equipos y recursos en sector industrial químico a la gestión logística de una empresa genérica. La resolución de casos de estudio reales de la industria mediante métodos de optimización, tan comunes en un ámbito de investigación científica, son a menudo desconocidos por las empresas, que resuelven estos problemas mediante métodos menos eficientes y a que a menudo les conducen a trabajar en unas condiciones sub-optimizas. El paquete basado en Python llamado pyomo permite la formulación y resolución de problemas de optimización con restricciones no lineales de manera eficiente, reutilizable y portátil.
Optimizacion con Python (Pyomo vs GAMS vs AMPL)CAChemE
https://www.youtube.com/watch?v=LfBGGTUdbXU
La optimización o programación matemática mediante lenguajes de modelado algebraico ---comúnmente GAMS, AMPL y AIMMS--- es utilizada en la industria para la resolución de diferentes problemas que van desde la selección óptima de equipos y recursos a la gestión logística de una empresa. Pyomo es un paquete de software de código abierto ---licenciado bajo BSD por Sandia National Laboratories, USA--- desarrollado en Python, y que soporta un conjunto diverso de capacidades de optimización para la formulación y el análisis de modelos de optimización. En particular, Pyomo permite el modelado de problemas tipo LP, QP, NP, MILP, MINLP, MISP entre otros y se comunica con los principales solvers comerciales, gratuitos y/o libres, así como la plataforma ofrecida por NEOS server. La resolución mediante métodos de optimización ---comunes en un ámbito de investigación científica--- son a menudo desconocidos en la industria o bien delegados por falta de tiempo y/o recursos. Por tanto, su resolución acaba siendo mediante métodos menos eficientes que resultan en formas de trabajo con condiciones sustancialmente mejorables. Por este motivo, en esta charla, estudiantes de ingeniería química de la Universidad de Alicante realizarán una introducción visual a conceptos de optimización, presentarán Pyomo y mostrarán la resolución de casos de estudio de diferentes industrias mediante este lenguaje de modelado algebraico desarrollado en Python.
Python para resolver EDPs - Ingeniería Química - PyConES 2013CAChemE
La resolución de ecuaciones diferenciales parciales (EDPs) mediante métodos numéricos permite obtener soluciones a problemas típicos presentes tanto en el ámbito ingenieril como científico. Tales problemas incluyen diferentes fenómenos físicos como propagación del sonido o del calor, la electrostática, la electrodinámica, la dinámica de fluidos, la elasticidad etc.
Existen numerosos paquetes de software para resolver EDPs, usando una variedad de idiomas y métodos numéricos. Muchos de ellos son propietarios y suponen un alto coste para las empresas y/o universidades. Además, la madurez de los mismos y su sencillez de uso pueden ocasionar efectos adversos convirtiendo estás herramientas en auténticas cajas negras.
En este marco, Python, en conjunto con sus librerías (NumPy, SciPy, FiPy), proporciona una herramienta perfecta que facilita el aprendizaje y desarrollo de la intuición necesarias para la resolución de estos problemas de forma libre y gratuita.
El uso de Python en la Ingenieria Química - Charla CompletaCAChemE
Diapositivas para la charla completa:
El uso de Python en Ingeniería Química - PyConES 2013
Video en: http://www.youtube.com/watch?v=AGGaqjn9GuI
En la conferencia de Python nacional (PyConES) que se celebró en Madrid se propuso la introducción teórica y resolución de ejemplos mediante Python de problemas clásicos presentes en ingenierías.
La resolución de ecuaciones diferenciales parciales (EDPs) mediante métodos numéricos permite obtener soluciones a problemas típicos presentes en diferentes fenómenos físicos como la propagación del sonido o del calor, la electrostática, la electrodinámica, la dinámica de fluidos, la elasticidad, etc.
Programas de modelado algebraico permiten la resolución de diferentes problemas que van desde la selección óptima de equipos y recursos en sector industrial químico, a la gestión logística de una empresa genérica.
Resolución de ecuaciones EDO (ecuación diferencial ordinaria) para el diseño de reactores químicos.
Se introducen así Python y sus librerías con el objetivo de mostrar su potencial actual.
Programación matématica (optimización) con Python - Ingeniería Química - PyConESCAChemE
Los programas de modelado algebraico son utilizados para la resolución de diferentes problemas que van desde la selección óptima de equipos y recursos en sector industrial químico a la gestión logística de una empresa genérica. La resolución de casos de estudio reales de la industria mediante métodos de optimización, tan comunes en un ámbito de investigación científica, son a menudo desconocidos por las empresas, que resuelven estos problemas mediante métodos menos eficientes y a que a menudo les conducen a trabajar en unas condiciones sub-optimizas. El paquete basado en Python llamado pyomo permite la formulación y resolución de problemas de optimización con restricciones no lineales de manera eficiente, reutilizable y portátil.
Optimizacion con Python (Pyomo vs GAMS vs AMPL)CAChemE
https://www.youtube.com/watch?v=LfBGGTUdbXU
La optimización o programación matemática mediante lenguajes de modelado algebraico ---comúnmente GAMS, AMPL y AIMMS--- es utilizada en la industria para la resolución de diferentes problemas que van desde la selección óptima de equipos y recursos a la gestión logística de una empresa. Pyomo es un paquete de software de código abierto ---licenciado bajo BSD por Sandia National Laboratories, USA--- desarrollado en Python, y que soporta un conjunto diverso de capacidades de optimización para la formulación y el análisis de modelos de optimización. En particular, Pyomo permite el modelado de problemas tipo LP, QP, NP, MILP, MINLP, MISP entre otros y se comunica con los principales solvers comerciales, gratuitos y/o libres, así como la plataforma ofrecida por NEOS server. La resolución mediante métodos de optimización ---comunes en un ámbito de investigación científica--- son a menudo desconocidos en la industria o bien delegados por falta de tiempo y/o recursos. Por tanto, su resolución acaba siendo mediante métodos menos eficientes que resultan en formas de trabajo con condiciones sustancialmente mejorables. Por este motivo, en esta charla, estudiantes de ingeniería química de la Universidad de Alicante realizarán una introducción visual a conceptos de optimización, presentarán Pyomo y mostrarán la resolución de casos de estudio de diferentes industrias mediante este lenguaje de modelado algebraico desarrollado en Python.
VigilantPlant is Yokogawa's automation concept for safe, reliable and profitable plant operations
Our concept is for a plant to be a place where people can be watchful and attentive, while the business responds quickly and efficiently to change. Non-stop production is assured as the plant’s personnel confidently expand their capabilities.
CIBSE 2015 - Experiencias en la Industria del Software: Certificación del Pro...Alarcos Quality Center
Presentación realizada en CIBSE 2015 (Lima, Perú) sobre las experiencias en la Industria del software respecto a la Certificación del Producto con ISO/IEC 25000 a partir de las evaluaciones de la calidad del producto realizadas por AQC Lab.
Cómo hacer una búsqueda bibliográfica en bases de datos científicas (Scopus y...CAChemE
Aprende a buscar artículos (papers) en bases de datos científicas. Se realizará un ejemplo de búsqueda genérica y resultados en Scopus y Web of Science (WOK). Por último se dan algunos consejos a aquellos que se inician en invesitigación.
Este material ha sido creado con motivo de la asignatura de "Polímeros Conductores" impartida en el Máster de Materiales de la Universidad de Alicante.
MMW June 2016: The Rise and Fall of Angler Cyphort
We have talked about the recent ransomware resurgence and now Cyphort Labs wants to spend some timer on one of the most effective methods of delivering ransomware and that is exploit kits.
In this edition of MMW, Nick Bilogorskiy, Senior Director of Threat Operations at Cyphort, will cover:
The evolution of exploit kits such as Angler, Nuclear, Rig and Neutrino
Show real examples of drive-by exploits in popular websites discovered in our crawler
Examine the relationship between exploits, kits and payload
Python y la POO, en una clase, UNNe-Corrientesalexis ibarra
Una breve descripcion de python, la POO y su uso en ingenieria. Esta presentacion minimiza un curso de 4 meses en una sola clase.
A brief description of python and the OOP for engineering applications, it minimized a course of python from 4 months to just one class. From Corrientes to the world
VigilantPlant is Yokogawa's automation concept for safe, reliable and profitable plant operations
Our concept is for a plant to be a place where people can be watchful and attentive, while the business responds quickly and efficiently to change. Non-stop production is assured as the plant’s personnel confidently expand their capabilities.
CIBSE 2015 - Experiencias en la Industria del Software: Certificación del Pro...Alarcos Quality Center
Presentación realizada en CIBSE 2015 (Lima, Perú) sobre las experiencias en la Industria del software respecto a la Certificación del Producto con ISO/IEC 25000 a partir de las evaluaciones de la calidad del producto realizadas por AQC Lab.
Cómo hacer una búsqueda bibliográfica en bases de datos científicas (Scopus y...CAChemE
Aprende a buscar artículos (papers) en bases de datos científicas. Se realizará un ejemplo de búsqueda genérica y resultados en Scopus y Web of Science (WOK). Por último se dan algunos consejos a aquellos que se inician en invesitigación.
Este material ha sido creado con motivo de la asignatura de "Polímeros Conductores" impartida en el Máster de Materiales de la Universidad de Alicante.
MMW June 2016: The Rise and Fall of Angler Cyphort
We have talked about the recent ransomware resurgence and now Cyphort Labs wants to spend some timer on one of the most effective methods of delivering ransomware and that is exploit kits.
In this edition of MMW, Nick Bilogorskiy, Senior Director of Threat Operations at Cyphort, will cover:
The evolution of exploit kits such as Angler, Nuclear, Rig and Neutrino
Show real examples of drive-by exploits in popular websites discovered in our crawler
Examine the relationship between exploits, kits and payload
Python y la POO, en una clase, UNNe-Corrientesalexis ibarra
Una breve descripcion de python, la POO y su uso en ingenieria. Esta presentacion minimiza un curso de 4 meses en una sola clase.
A brief description of python and the OOP for engineering applications, it minimized a course of python from 4 months to just one class. From Corrientes to the world
Slidedeck de la charla que "Consejos de un perro viejo programador"
Hola me llamo Braulio y llevo más de 34 años programando (más de 20 años como profesional), en este tiempo me ha tocado
trabajar con un montón de tecnologías y proyectos: basic, pascal, ensamblador, cobol, clipper, delphi, c++, mfc, c# / .net framework, winforms,
asp .net web forms, silverlight, asp .net mvc, javascript, typescript, angularjs, react, ...
Después de tantos años sin colgar el ratón, me gustaría compartir contigo varias cosas que creo que me han sido
útiles, en esta charla vamos a tocar muchos palos :):
- Carrera.
- Toma de requerimientos, proyectos y estimaciones.
- Arquitectura.
- Código.
Ponente: Braulio Diez @braulio_sl
LLevo un montón de años programando (empezé en 1985, y como profesional en 1998), he trabajado con muchas tecnologías y proyectos de muchos tipos.
En 2010 me monté por mi cuenta, soy uno de los fundadores de Lemoncode Formación y de BaseFactor (consultoría).
Me dedico sobre todo a Front End, y echo un cable a otras empresas a aprender y llevar adelante proyectos front
desarrolladores con React, Redux, Typescript, ES6...
Si nos queréis seguir, nuestras cuentas de twitter son:
@braulio_sl
@lemoncoders
@basefactorteam
Como triunfar con tu proyecto en un hackatónJuan J. Merelo
Guía para los proyectos participantes en el hackatón de proyectos de la UGR, donde explicamos qué hacer para atraer colaboradores en el hackatón y, si es posible, conservarlos
Evento realizado en Colegio Universitario de Caracas - Auditorio principal en el marco del evento Chamilo User Day en Latinoamérica Mayo 2013
http://www.chamiluda.org/eventos/sede-caracas-venezuela
Conceptos básicos y aplicaciones prácticas de programación para SEOnacho mascort
Repaso de los conceptos básicos de programación siguiendo la sintaxis de Python y Javascript para finalizar con varios casos prácticos aplicados en el mundo SEO.
Aprenda a Programar en Python con Jhonasttan Regalado, PMP.
¡Entérate de las carreras disponibles en tecnología!
¡Aprende como ayudar tus hijos con programas de computación
del presente y futuro!
Presentación Lanzamiento del Programa de Actividades con Docentes en Nuevas Tecnologías de la Información y de la Comunicación de la Red de Escuelas Medias de la Ciudad de Buenos Aires.
Presentación realizada dentro del marco del congreso ISA15 (Interaction SouthAmerica) realizado en la Ciudad de Córdoba Argentina.
Trata sobre algunas recomendaciones para realizar testeos rápidos de bajo costo (guerrilla) especialmente enfocado en Startups que no acostumbran a realizar validaciones con usuarios.
Se propone también una matriz de testeo sistemático que otorga algunas propuestas de testeo en distintas etapas del proceso de prototipado.
Similar a Python en ciencia e ingenieria: lecciones aprendidas (20)
Simulation of Chemical Rectors - Introduction to chemical process simulators ...CAChemE
Learn the fundamentals of any chemical process simulator software by means of free and open source software as an alternative to Aspen, Aspen HYSYS, etc. We will be using DWSIM (open source and free) and COCO Simulator (freeware) for this course. Material is licensed under CC BY-NC-SA 3.0.
You can find more learning material for chemical engineers in http://CAChemE.org
Introduction to free and open source Chemical Process Simulators - (DWSIM & C...CAChemE
Learn the fundamentals of any chemical process simulator software by means of free and open source software as an alternative to Aspen, Aspen HYSYS, etc. We will be using DWSIM (open source and free) and COCO Simulator (freeware) for this course. Material is licensed under CC BY-NC-SA 3.0.
You can find more learning material for chemical engineers in http://CAChemE.org
TAGs: chemical , process , simulator , engineering , coco , dwsim , hysys , aspen , prosim , theory, software, free, open, source, flowsheet, course
Simulador de reactores químicos - COCO Simulator - FreeCAChemE
Quinta sesión del curso de iniciación a la simulación de procesos químicos con COCO Simulator y ChemSep
COCO Simulator
Simulación de reactores químicos con COCO (CORN+COUSCUS)
Reactor de conversión fija
Reactor de Flujo Pistón (RFP) con COCO
Producción de etilenglicol
Reactor contínuo de tanque agitado (RCTA) con COCO
S4 - Process/product optimization using design of experiments and response su...CAChemE
Session 3 – Central composite designs, second order models, ANOVA, blocking, qualitative factors
An intensive practical course mainly for PhD-students on the use of designs of experiments (DOE) and response surface methodology (RSM) for optimization problems. The course covers relevant background, nomenclature and general theory of DOE and RSM modelling for factorial and optimisation designs in addition to practical exercises in Matlab. Due to time limitations, the course concentrates on linear and quadratic models on the k≤3 design dimension. This course is an ideal starting point for every experimental engineering wanting to work effectively, extract maximal information and predict the future behaviour of their system.
Mikko Mäkelä (DSc, Tech) is a postdoctoral fellow at the Swedish University of Agricultural Sciences in Umeå, Sweden and is currently visiting the Department of Chemical Engineering at the University of Alicante. He is working in close cooperation with Paul Geladi, Professor of Chemometrics, and using DOE and RSM for process optimization mainly for the valorization of industrial wastes in laboratory and pilot scales.”
Schedule and details:
The course took place at the University of Alicante and would not had been possible without the support of the Instituto Universitario de Ingeniería de Procesos Químicos.
S3 - Process product optimization design experiments response surface methodo...CAChemE
Session 3/4 – Central composite designs, second order models, ANOVA, blocking, qualitative factors
An intensive practical course mainly for PhD-students on the use of designs of experiments (DOE) and response surface methodology (RSM) for optimization problems. The course covers relevant background, nomenclature and general theory of DOE and RSM modelling for factorial and optimisation designs in addition to practical exercises in Matlab. Due to time limitations, the course concentrates on linear and quadratic models on the k≤3 design dimension. This course is an ideal starting point for every experimental engineering wanting to work effectively, extract maximal information and predict the future behaviour of their system.
Mikko Mäkelä (DSc, Tech) is a postdoctoral fellow at the Swedish University of Agricultural Sciences in Umeå, Sweden and is currently visiting the Department of Chemical Engineering at the University of Alicante. He is working in close cooperation with Paul Geladi, Professor of Chemometrics, and using DOE and RSM for process optimization mainly for the valorization of industrial wastes in laboratory and pilot scales.”
The course took place at the University of Alicante and would not had been possible without the support of the Instituto Universitario de Ingeniería de Procesos Químicos.
S2 - Process product optimization using design experiments and response surfa...CAChemE
An intensive practical course mainly for PhD-students on the use of designs of experiments (DOE) and response surface methodology (RSM) for optimization problems. The course covers relevant background, nomenclature and general theory of DOE and RSM modelling for factorial and optimisation designs in addition to practical exercises in Matlab. Due to time limitations, the course concentrates on linear and quadratic models on the k≤3 design dimension. This course is an ideal starting point for every experimental engineering wanting to work effectively, extract maximal information and predict the future behaviour of their system.
Mikko Mäkelä (DSc, Tech) is a postdoctoral fellow at the Swedish University of Agricultural Sciences in Umeå, Sweden and is currently visiting the Department of Chemical Engineering at the University of Alicante. He is working in close cooperation with Paul Geladi, Professor of Chemometrics, and using DOE and RSM for process optimization mainly for the valorization of industrial wastes in laboratory and pilot scales.”
S1 - Process product optimization using design experiments and response surfa...CAChemE
An intensive practical course mainly for PhD-students on the use of designs of experiments (DOE) and response surface methodology (RSM) for optimization problems. The course covers relevant background, nomenclature and general theory of DOE and RSM modelling for factorial and optimisation designs in addition to practical exercises in Matlab. Due to time limitations, the course concentrates on linear and quadratic models on the k≤3 design dimension. This course is an ideal starting point for every experimental engineering wanting to work effectively, extract maximal information and predict the future behaviour of their system.
Mikko Mäkelä (DSc, Tech) is a postdoctoral fellow at the Swedish University of Agricultural Sciences in Umeå, Sweden and is currently visiting the Department of Chemical Engineering at the University of Alicante. He is working in close cooperation with Paul Geladi, Professor of Chemometrics, and using DOE and RSM for process optimization mainly for the valorization of industrial wastes in laboratory and pilot scales.”
Simulación de columnas de destilación multicomponente con COCO+ChemSep (alter...CAChemE
COCO Simulator en combinación con ChemSep permite la simulación de procesos químicos de forma gratuita y se presenta como alternativa a Aspen y ChemCAD. Este curso presencial mostrará su descarga e instalación así como la resolución de ejemplos de menor a mayor grado de complejidad.
Método McCabe-Thiele colmuna destilación - Curso gratutito de simulación de p...CAChemE
COCO Simulator en combinación con ChemSep permite la simulación de procesos químicos de forma gratuita y se presenta como alternativa a Aspen y ChemCAD. Este curso presencial mostrará su descarga e instalación así como la resolución de ejemplos de menor a mayor grado de complejidad.
Curso inciación a COCO Simulator y ChemSep - Simulación de procesos químicos ...CAChemE
COCO Simulator en combinación con ChemSep permite la simulación de procesos químicos de forma gratuita y se presenta como alternativa a Aspen y ChemCAD. Este curso presencial mostrará su descarga e instalación así como la resolución de ejemplos de menor a mayor grado de complejidad.
Instalar Python 2.7 y 3 en Windows (Anaconda)CAChemE
¿Cómo instalar Python en Windows?
Diapositivas que explican cómo instalar paso a paso Python en Windows.
Nota: Están orientadas a científicos e ingenieros con poca experiencia en el entorno de windows.
Diseño de reactores químicos con Python - Ingeniería Química - PyConESCAChemE
Un reactor químico es un equipo en cuyo interior tiene lugar una reacción química, estando éste diseñado para maximizar la conversión y selectividad de la misma con el menor coste posible. El diseño de un reactor químico requiere conocimientos de termodinámica, cinética química, transferencia de masa y energía, así como de mecánica de fluidos; balances de materia y energía son necesarios. Por lo general se busca conocer el tamaño y tipo de reactor, así como el método de operación, además en base a los parámetros de diseño se espera poder predecir con cierta certidumbre la conducta de un reactor ante ciertas condiciones, por ejemplo un salto en escalón en la composición de entrada. En estas diapositivas indicamos las ecuaciones y la llamada al ODE necesario para resolverlo con Python.
c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
Python en ciencia e ingenieria: lecciones aprendidas
1. cacheme.org
1
Python científico para ingenieros:
lecciones aprendidas*
Computer-aided Chemical Engineering
www.cacheme.org
(*) Título y diapositivas inspiradas en la charla de Greg Wilson:
Software Carpentry: Lessons Learned - PyCon 2014
https://www.youtube.com/watch?v=FtKO619O5g0
2. cacheme.org ¿CAChemE?
• Asociación formada por ingenieros químicos
(profesionales, docentes y estudiantes) que pretende
estimular las posibilidades de software en la
ingeniería de procesos.
• Promueve las ventajas de las nuevas herramientas de
software libre disponibles y fomenta su uso en la
universidad e industria.
• Especialización en simulación y programación
matemática (optimización).
2
5. cacheme.org
5
Esquema
• ¿Por qué empezaste con Python?
• Primeros pasos con Python: un
camino difícil
• Fallos a evitar
• Resumen de
experiencias por
parte de alumnos
que empezaron
con Python
7. ¿Por qué empezaste con Python? cacheme.org
“Programar me gusta y me pareció
algo interesante aprender algo
nuevo”
• Programar genera frustración, muchos científicos lo ven
como un problema (no una solución a sus problemas).
• Experiencias previas determinan mucho la predisposición
del alumno.
7
8. ¿Por qué empezaste con Python? cacheme.org
“WIDGETS DE IPYTHON NOTEBOOK
ME LLAMARON LA ATENCIÓN (JUNTO A
CÓMO “HACKEAR” EL MOODEL DE MI
UNIVERSIDAD)”
• Widgets de IPNB, sencillo de implementar y útil (mejoramos
experiencia con ejercicios simples). También mostramos
aplicaciones reales y complejas para verle la utilidad final
que pueden darle.
8
9. ¿Por qué empezaste con Python? cacheme.org
“ESTO NO LO PUEDO (O NO SÉ)
HACERLO CON MATLAB”
• Implica: Programación se enseña en métodos numéricos y
requiere además una buena base matemática (genera
frustración y requiere mucho esfuerzo). Pero además, el
alumno no le ve utilidad más allá que su asignatura.
9
10. ¿Por qué empezaste con Python? cacheme.org
“LIBRE Y GRATUITO… OK…”
• Los estudiantes no se preocupan por un asunto tan crucial,
fallo del sistema de educación (exámenes) que opta por
herramientas comerciales habiendo equivalentes. Ejemplo:
Octave UPM.
• “Lo que aprendas con Python puedes usarlo en el trabajo de
forma legítima tal y como hace…”
10
11. cacheme.org
Primeros pasos con Python…
…un camino difícil
• Contaminación de otros lenguajes: Muchos alumnos sólo
conocen un “lenguaje” (mal aprendido) por lo que aprender
una sintaxis (pese a ser Python) cuesta al principio y
requiere tiempo.
11
12. Primeros pasos con Python… cacheme.org
…un camino difícil
“NO TENGO TIEMPO”
• Los lenguajes de programación quedan aislados a
asignaturas de cálculo numérico, para el resto se usa Excel.
12
13. Primeros pasos con Python… cacheme.org
…un camino difícil
“GOTO CELDA DE EXCEL”
• Excel es difícil de revisar y conlleva a errores que se pueden
evitar con Python.
• Además, con Python podemos explicar más cosas. Por
ejemplo, matemáticas (SymPy) y estadística (StatsModel).
13
14. Primeros pasos con Python… cacheme.org
…un camino difícil
“NO ENTIENDO NADA”
• Gran parte de los tutoriales e información de Python, dan
por sabidas muchas cosas. La mayoría de alumnos no
tienen base alguna de informática (“eh… ¿la terminal?”) .
Además, mucho de este contenido básico está en inglés, lo
que añade una complejidad (y requiere más tiempo).
• Una buena base (necesaria) la recogen los compañeros de
Software-Carpentry.
14
15. Primeros pasos con Python… cacheme.org
…un camino difícil
“ME DA ERROR, ¿AHORA QUÉ?“
• La resolución de errores se basa en la experiencia, pero los
mecanismos que seguimos por forma natural no se
enseñan:
• Comenzar por ejemplos similares y modificarlos
• Aprender a leer los mensajes de error
• Buscar en la documentación
• Herramientas de debug
¡No (solemos) prestamos atención a esto!
15
16. cacheme.org
Fallos a evitar
https://www.youtube.com/watch?v=FtKO619O5g0
http://software-carpentry.org/blog/2013/06/lessons-learned.html
16
Preguntamos a los asistentes y esto es lo que nos dijeron. El resultado
fue similar a lo que Greg Wilson de Software-Carpentry resumió en su
charla de la PyCon 2014:
17. Fallos a evitar cacheme.org
“¡ESTO ES MUY FÁCIL! SÓLO TIENES
QUE…”
17
• Simplemente evítalo
18. Fallos a evitar cacheme.org
“ … “
• Profesores expertos obvian conceptos “básicos” o conexión
entre los mismos al darlo por hecho.
• Mejor repasar conceptos clave y fomentar que parte de los
instructores sean novatos.
18
19. Fallos a evitar cacheme.org
“FALTA DE FEEDBACK”
• Identificas gente que se ha perdido con post-its de colores.
• Si tienes un 50% de asistentes que no pueden seguirte, no
sigas. ¿Solución?
• Colaboración entre asistentes, los que han terminado que ayuden al
compañero.
• Preguntas test, donde cada respuesta errónea identifica un fallo de
concepto común.
19
20. Fallos a evitar cacheme.org
“QUÉ (CÓDIGO) CÓMO (LÓGICA DEL
PROCESO) POR QUÉ (MOTIVACIÓN)”
• Busca ejemplos aplicados llamativos antes de ejercicios
simples y aburridos. Explica primero cual es la motivación,
después la lógica y por último el contenido.
20
21. Fallos a evitar cacheme.org
“WINDOWS, MATLAB…
TODO_LO_QUE_NO_ES_LIBRE
SUCKS!”
• Evita despreciar herramientas de trabajo de tus
compañeros, quizás sean lo único que conozcan.
• Da valor a las tuyas.
21
22. Fallos a evitar cacheme.org
“DERRIBAR AL ADVERSARIO”
• Tratamos de fomentar Python comparándolo con los puntos
fuertes de herramientas comerciales (especializadas) que
funcionan muy bien. Es mejor buscar las fronteras y
fomentar aquello donde los rivales son más débiles (GUIs,
IPython Notebook, control de versiones, filosofía open
source, TDD…)
22
23. 23
Fallos a evitar cacheme.org
“¿UNA MUJER
PROGRAMANDO?”