Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Ruby y Ciencia

Ruby y Ciencia

Diapos de la charla del Grupo de Usuarios de Ruby de Madrid de noviembre de 2013: Ruby y Ciencia.
El video se puede ver en: https://vimeo.com/84568788

Juanjo Bazán

November 28, 2013
Tweet

More Decks by Juanjo Bazán

Other Decks in Programming

Transcript

  1. Juanjo Bazán @xuanxu madrid-rb nov ‘13
    Ruby y Ciencia

    View Slide

  2. ¿Ruby y Ciencia?

    View Slide

  3. ¿Ruby y Ciencia?
    RUBY SE UTILIZA POCO EN
    PROYECTOS DE INVESTIGACIÓN

    View Slide

  4. ¿ Ruby ∩ Ciencia ≃ ∅ ?
    ¿Por qué?
    ¿No es válido para usos científicos?

    View Slide

  5. ¿Puede Ruby cubrir las necesidades de los científicos?
    !
    ¿Qué necesitan?

    View Slide

  6. Investigación hoy en día:
    Hacer algo Acumular
    datos
    Manipular
    datos
    Interpretar
    resultados

    View Slide

  7. Teorema:
    Independientemente de la disciplina científica,

    View Slide

  8. Teorema:
    Independientemente de la disciplina científica,
    sin importar el campo de investigación,

    View Slide

  9. Teorema:
    Independientemente de la disciplina científica,
    sin importar el campo de investigación,
    (casi) todo proyecto de investigación usa código.

    View Slide

  10. Ruby

    View Slide

  11. Ruby
    Lento

    View Slide

  12. Ruby
    Lento
    Escasez de librerías científicas

    View Slide

  13. Ruby
    Lento
    Escasez de librerías científicas
    Poco uso en entorno académico

    View Slide

  14. Ruby
    Lento
    Escasez de librerías científicas
    => No es válido para usos científicos, ¿no?
    Poco uso en entorno académico

    View Slide

  15. Código de un proyecto
    de investigación (P.I.)

    View Slide

  16. Algoritmos, simulaciones, ajustes a modelos, cálculos...
    !
    R, interfaces, automatización, gráficas, formato de datos...
    Código de un P.I.
    ¿QUÉ ES?

    View Slide

  17. Espectro MUY amplio de problemas
    Código de un P.I.
    ¿QUÉ ES?
    En la mayoría de los casos:
    La velocidad no importa

    View Slide

  18. No programadores
    Código de un P.I.
    ¿QUIÉN?
    Experimentados como para modificar otra solución
    Necesidad de ayuda

    View Slide

  19. ¿Qué ayuda reciben?

    View Slide

  20. Python
    SciPy, NumPy, Opción nº 1

    View Slide

  21. Java
    Muchas librerías, fácil de encontrar

    View Slide

  22. Excel
    O_o!

    View Slide

  23. ¿Cómo podemos ayudar?

    View Slide

  24. Ruby

    View Slide

  25. Ruby
    Lenguaje de propósito general
    Aumenta la felicidad de los programadores
    Sintaxis bonita y potente

    View Slide

  26. Ruby Científicos
    Lenguaje de propósito general
    Aumenta la felicidad
    Sintaxis bonita y potente
    No programadores
    Experiencia modificando
    soluciones existentes
    Espectro amplio de problemas

    View Slide

  27. Ruby
    Lento
    Escasez de librerías científicas
    Poco uso en entorno académico

    View Slide

  28. Ruby
    Escasez de librerías científicas
    Poco uso en entorno académico
    La velocidad no importa
    Lento

    View Slide

  29. Ruby
    Lento
    Escasez de librerías científicas
    Poco uso en entorno académico
    La velocidad no importa
    ¡Aquí hay trabajo!

    View Slide

  30. SciRuby
    Goal: SciPy/NumPy for Ruby: SciRuby/NMatrix
    pre-alpha/alpha
    Desarrollo activo
    SciRuby.com github.com/SciRuby/sciruby
    Ayuda

    View Slide

  31. Plotting:
    Rubyvis (old, Protovis)
    plotRB (new, D3)
    IPython notebooks
    Entorno integrado:
    ¿dónde ayudar?
    Aprendizaje y difusión

    View Slide

  32. Empujemos Ruby al
    mundo académico
    Objetivos:
    - Que los investigadores conozcan y usen Ruby
    - Crear un ecosistema de ruby gems científicas

    View Slide

  33. Empujemos Ruby al
    mundo académico
    Objetivos:
    - Que los investigadores conozcan y usen Ruby
    - Crear un ecosistema de gemas científicas

    View Slide

  34. Participemos

    View Slide

  35. ¡Acción Directa!

    View Slide

  36. ¡Acción Directa!
    1. Elige una disciplina que te guste

    View Slide

  37. ¡Acción Directa!
    1. Elige una disciplina que te guste
    2. Localiza el dpto. de universidad más cercano

    View Slide

  38. ¡Acción Directa!
    1. Elige una disciplina que te guste
    2. Localiza el dpto. de universidad más cercano
    3. Ofrece ayuda y código

    View Slide

  39. OpenScience
    Ayudas a resolver otros problemas
    acceso
    verificación
    colaboración
    reproducibilidad

    View Slide

  40. ¿Por qué?
    ¿qué ganas tú en todo esto?

    View Slide

  41. ¿Por qué?
    Más usos de Ruby => Mejor Ruby

    View Slide

  42. ¿Por qué?
    Las mismas motivaciones que justifican
    contribuir a proyectos OpenSource

    View Slide

  43. ¿Por qué?
    Ayudarás a la Ciencia

    View Slide

  44. ¿Por qué?
    Ayudarás a una mejor Ciencia

    View Slide

  45. ¿Por qué?
    Harás Ciencia

    View Slide

  46. ¿Por qué?
    Las recompensas en OSS están bien,
    las recompensas por ayudar a la ciencia MOLAN

    View Slide

  47. ¿Por qué?
    Aprendes sobre temas y problemas interesantes

    View Slide

  48. ¿Por qué?
    Fácil
    resultado/esfuerzo

    View Slide

  49. ¿Por qué?
    http://xkcd.com/664/

    View Slide

  50. 2 Comunidades:
    Ruby & Científica
    Compartir información es la norma
    Apertura es un valor
    Sistemas basados en reputación
    Receptivas y dispuestas a ayudar

    View Slide

  51. ¿Podemos hacer de Ruby el
    lenguaje de programación
    de la Ciencia?

    View Slide

  52. Probablemente No
    ¿Quizá?
    ¿Podemos hacer de Ruby el
    lenguaje de programación
    de la Ciencia?

    View Slide

  53. ¿Podemos hacer de Ruby el
    lenguaje de programación
    de la Ciencia?
    Probablemente No
    ¿Quizá?
    ¿Qué más da?

    View Slide

  54. ¡Hagamos de Ruby
    el lenguaje de
    programación favorito
    de los científicos!

    View Slide

  55. ¡Gracias!
    Juanjo Bazán @xuanxu

    View Slide

  56. Introducing:
    AlphaRB.com

    View Slide

  57. View Slide

  58. View Slide

  59. View Slide

  60. View Slide

  61. View Slide

  62. View Slide

  63. View Slide

  64. AlphaRB.com
    @ResearchBase

    View Slide

  65. ¡Gracias II!
    Juanjo Bazán @xuanxu

    View Slide

  66. ¿Preguntas?
    Juanjo Bazán @xuanxu [email protected]
    photo credits:
    http://www.flickr.com/photos/aai/6936657289
    http://www.flickr.com/photos/3dking/148507938/
    http://www.flickr.com/photos/morton1905/8638721846
    http://www.flickr.com/photos/shanegorski/2449377038
    http://www.flickr.com/photos/x-ray_delta_one/5865762878

    View Slide