Python vs El Mundo
Python vs El Mundo
●   Agenda                    –   Popularidad
                              –   Interfaces de Usuario
    ●   ¿Por Qué Python? La   –   Interoperatividad
        gran pregunta
                              –   Estándares y
    ●   Criterios de              Neutralidad
        Evaluación            –   Plataformas MVC
    ●   Y ahora qué..         –   Dinamismo
                              –   Entornos de Desarrollo
                              –   Documentación y
                                  Soporte
                              –   Métricas y
                                  Rendimiento
Sobre mi
●   Ingeniero
●   Programador
●   Instructor de Cursos
●   Entusiasta de Python
●   Entusiasta de
    GNU/Linux
●   Mal cocinero
●   Mmm..
¿Por qué Python?
●   Intuitivamente uno sabe muchas cosas, sin
    embargo cuando hay que justificarlas... mmm..
    la historia cambia.
●   Definición de criterios de evaluación
●   El fin define la plataforma
●   Ajá ajá si, pero
        ¿por qué Python?
¿Por qué Python?
●   Caso de Estudio
    ●   La aplicación
    ●   El equipo de trabajo
    ●   El legado
    ●   La propuesta
●   Lets Go!
Criterios de Evaluación
        ●   Popularidad
        ●   Interfaces de Usuario
        ●   Interoperatividad
        ●   Estándares y Neutralidad
        ●   Plataformas MVC
        ●   Dinamismo
        ●   Entornos de Desarrollo
        ●   Documentación y Soporte
        ●   Escalabilidad y Componentes
        ●   Métricas y Rendimiento
Criterios de Evaluación
●   Popularidad           ●   Puntuaciones
    ●   Indice Tiobe          ●   Java
●   ¿Qué Mide?                ●   C
    ●   Trafico Web           ●   C++
●   ¿Qué Significa?
                              ●   PHP
                              ●   .NET
    ●   Relevancia
                              ●   Python
    ●   Difusión
                              ●   ....
    ●   Comunidades
                              ●   Ruby
    ●   Uso
Criterios de Evaluación
●   Interfaces de Usuario   ●   Puntuaciones
    ●   CLI                     ●   Java
    ●   GUI                         Python
                                    .NET
    ●   Web                     ●   Ruby
                                ●   C/C++
                                ●   PHP
Criterios de Evaluación
●   Interoperatividad SO           ●   Puntuaciones
    ●   Lenguajes                      ●   Python
        –   Compilados                     Ruby
        –   Interpretados              ●   Java
        –   Entornos Gestionados       ●   PHP
                                       ●   C/C++
                                       ●   .NET
Criterios de Evaluación
●   Estándares y            ●   Puntuaciones
    Neutralidad                 ●   C/C++
    ●   Plataformas             ●   Python
        Propietarias            ●   Java
    ●   Estándares                  .NET
        –   ISO/ECMA/ANSI       ●   PHP
        –   Definiciones            Ruby
        –   Estándares
            de Facto
        –   Otros
Criterios de Evaluación
●   Plataformas MVC         ●   Puntuaciones
●   GUI                         ●   Ruby
                                    Python
    ●   Camelot
                                ●   Java
●   Herramientas Web            ●   PHP
    ●   Rails                   ●   C/C++
    ●   Django/Pylons               .NET
    ●   Struts
    ●   PHP Synfony
    ●   Wt
Criterios de Evaluación
●   Dinamismo              ●   Puntuaciones
    ●   Factores               ●   Python
        –   Codificación           Ruby
        –   Librerías          ●   PHP
        –   Paradigmas         ●   Java
        –   Diseño                 .NET
        –   Tipado             ●   C/C++
        –   Variables
Criterios de Evaluación
●   Entornos de                    ●   Puntuaciones
    Desarrollo                         ●   C/C++
    ●   IDE                                Java
        –   Ambiente Integrado         ●   Python
        –   Corrección Semántica           Ruby
            y Sintáctica               ●   PHP / .NET
    ●   Editores
        –   Correción Sintáctica
Criterios de Evaluación
●   Documentación y           ●   Puntuaciones
    Soporte                       ●   C/C++
    ●   Documentación de la           Java
        plataforma                    Python
                                      .NET
    ●   Documentación por
        parte de terceros         ●   PHP
                                      Ruby
    ●   Herramientas de
        documentación de
        software
Criterios de Evaluación
●   Escalabilidad y     ●   Puntuaciones
    Componentes             ●   C/C++
    ●   Fuentes                 Python
    ●   Repositorios        ●   Ruby / PHP
    ●   Terceros            ●   Java / .NET
●   Escalabilidad
    ●   Obsolecencia
Criterios de Evaluación
●   Métricas y                    ●   Puntuaciones
    Rendimiento                       ●   Java
    ●   Criterios                         .NET
        –   Velocidad Cruda
                                          Python
        –   Consumo de Recursos       ●   C/C++ / PHP / Ruby
        –   Longitud de
            Programas
        –   Velocidad de
            Desarrollo
¿Y ahora qué?
●   Por parte de quien    ●   Por parte del equipo
    toma las decisiones       de trabajo
Gracias
       Preguntas?
      Comentarios?
      Sugerencias?




Carlos Gustavo Ruiz (arahat)
http://arahat.alwaysdata.net/
      @carlosgr_arahat
    Documento con licencia CC BY-SA 3.0
http://creativecommons.org/licenses/by-sa/3.0/

Fotos de la película Scott Pilgrim vs. The World
     http://www.imdb.com/title/tt0446029/

Python vs El Mundo

  • 1.
  • 2.
    Python vs ElMundo ● Agenda – Popularidad – Interfaces de Usuario ● ¿Por Qué Python? La – Interoperatividad gran pregunta – Estándares y ● Criterios de Neutralidad Evaluación – Plataformas MVC ● Y ahora qué.. – Dinamismo – Entornos de Desarrollo – Documentación y Soporte – Métricas y Rendimiento
  • 3.
    Sobre mi ● Ingeniero ● Programador ● Instructor de Cursos ● Entusiasta de Python ● Entusiasta de GNU/Linux ● Mal cocinero ● Mmm..
  • 4.
    ¿Por qué Python? ● Intuitivamente uno sabe muchas cosas, sin embargo cuando hay que justificarlas... mmm.. la historia cambia. ● Definición de criterios de evaluación ● El fin define la plataforma ● Ajá ajá si, pero ¿por qué Python?
  • 5.
    ¿Por qué Python? ● Caso de Estudio ● La aplicación ● El equipo de trabajo ● El legado ● La propuesta ● Lets Go!
  • 6.
    Criterios de Evaluación ● Popularidad ● Interfaces de Usuario ● Interoperatividad ● Estándares y Neutralidad ● Plataformas MVC ● Dinamismo ● Entornos de Desarrollo ● Documentación y Soporte ● Escalabilidad y Componentes ● Métricas y Rendimiento
  • 7.
    Criterios de Evaluación ● Popularidad ● Puntuaciones ● Indice Tiobe ● Java ● ¿Qué Mide? ● C ● Trafico Web ● C++ ● ¿Qué Significa? ● PHP ● .NET ● Relevancia ● Python ● Difusión ● .... ● Comunidades ● Ruby ● Uso
  • 9.
    Criterios de Evaluación ● Interfaces de Usuario ● Puntuaciones ● CLI ● Java ● GUI Python .NET ● Web ● Ruby ● C/C++ ● PHP
  • 10.
    Criterios de Evaluación ● Interoperatividad SO ● Puntuaciones ● Lenguajes ● Python – Compilados Ruby – Interpretados ● Java – Entornos Gestionados ● PHP ● C/C++ ● .NET
  • 11.
    Criterios de Evaluación ● Estándares y ● Puntuaciones Neutralidad ● C/C++ ● Plataformas ● Python Propietarias ● Java ● Estándares .NET – ISO/ECMA/ANSI ● PHP – Definiciones Ruby – Estándares de Facto – Otros
  • 12.
    Criterios de Evaluación ● Plataformas MVC ● Puntuaciones ● GUI ● Ruby Python ● Camelot ● Java ● Herramientas Web ● PHP ● Rails ● C/C++ ● Django/Pylons .NET ● Struts ● PHP Synfony ● Wt
  • 13.
    Criterios de Evaluación ● Dinamismo ● Puntuaciones ● Factores ● Python – Codificación Ruby – Librerías ● PHP – Paradigmas ● Java – Diseño .NET – Tipado ● C/C++ – Variables
  • 14.
    Criterios de Evaluación ● Entornos de ● Puntuaciones Desarrollo ● C/C++ ● IDE Java – Ambiente Integrado ● Python – Corrección Semántica Ruby y Sintáctica ● PHP / .NET ● Editores – Correción Sintáctica
  • 15.
    Criterios de Evaluación ● Documentación y ● Puntuaciones Soporte ● C/C++ ● Documentación de la Java plataforma Python .NET ● Documentación por parte de terceros ● PHP Ruby ● Herramientas de documentación de software
  • 16.
    Criterios de Evaluación ● Escalabilidad y ● Puntuaciones Componentes ● C/C++ ● Fuentes Python ● Repositorios ● Ruby / PHP ● Terceros ● Java / .NET ● Escalabilidad ● Obsolecencia
  • 17.
    Criterios de Evaluación ● Métricas y ● Puntuaciones Rendimiento ● Java ● Criterios .NET – Velocidad Cruda Python – Consumo de Recursos ● C/C++ / PHP / Ruby – Longitud de Programas – Velocidad de Desarrollo
  • 18.
    ¿Y ahora qué? ● Por parte de quien ● Por parte del equipo toma las decisiones de trabajo
  • 19.
    Gracias Preguntas? Comentarios? Sugerencias? Carlos Gustavo Ruiz (arahat) http://arahat.alwaysdata.net/ @carlosgr_arahat Documento con licencia CC BY-SA 3.0 http://creativecommons.org/licenses/by-sa/3.0/ Fotos de la película Scott Pilgrim vs. The World http://www.imdb.com/title/tt0446029/