SlideShare a Scribd company logo
1 of 66
Download to read offline
Ruby y Ciencia

Juanjo Bazán @xuanxu

madrid-rb nov ‘13
¿Ruby y Ciencia?
¿Ruby y Ciencia?
RUBY SE UTILIZA POCO EN
PROYECTOS DE INVESTIGACIÓN
¿ Ruby

∩ Ciencia ≃ ∅ ?

¿No

lid
vá
es

pa
o

os
us
ra

ntí
c ie

é?
qu
or
¿P

os?
fic
¿Puede Ruby cubrir las necesidades de los científicos?
!

¿Qué necesitan?
Investigación hoy en día:
Hacer algo

Acumular
datos

Interpretar
resultados

Manipular
datos
Teorema:

Independientemente de la disciplina científica,
Teorema:

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

Independientemente de la disciplina científica,
sin importar el campo de investigación,
(casi) todo proyecto de investigación usa código.
Ruby
Ruby
Lento
Ruby
Lento
Escasez de librerías científicas
Ruby
Lento
Escasez de librerías científicas
Poco uso en entorno académico
Ruby
Lento
Escasez de librerías científicas
Poco uso en entorno académico
=> No es válido para usos científicos, ¿no?
Código de un proyecto
de investigación (P.I.)
Código de un P.I.
¿QUÉ ES?

Algoritmos, simulaciones, ajustes a modelos, cálculos...
!

R, interfaces, automatización, gráficas, formato de datos...
Código de un P.I.
¿QUÉ ES?

Espectro MUY amplio de problemas
En la mayoría de los casos:
La velocidad no importa
Código de un P.I.
¿QUIÉN?
No programadores
Experimentados como para modificar otra solución
Necesidad de ayuda
¿Qué ayuda reciben?
Python
SciPy, NumPy, Opción nº 1
Java
Muchas librerías, fácil de encontrar
Excel
O_o!
¿Cómo podemos ayudar?
Ruby
Ruby
Lenguaje de propósito general
Aumenta la felicidad de los programadores
Sintaxis bonita y potente
Ruby

Científicos

Lenguaje de propósito general

No programadores

Aumenta la felicidad

Experiencia modificando
soluciones existentes

Sintaxis bonita y potente

Espectro amplio de problemas
Ruby
Lento
Escasez de librerías científicas
Poco uso en entorno académico
Ruby
Lento

La velocidad no importa

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

La velocidad no importa

Escasez de librerías científicas
Poco uso en entorno académico
¡Aquí hay trabajo!
SciRuby
SciRuby.com github.com/SciRuby/sciruby
Goal: SciPy/NumPy for Ruby: SciRuby/NMatrix
pre-alpha/alpha
Desarrollo activo
Ayuda
ar?
yud
de a
dón
¿

Plotting:

Rubyvis (old, Protovis)
plotRB (new, D3)

Entorno integrado:
IPython notebooks

Aprendizaje y difusión
Empujemos Ruby al
mundo académico
Objetivos:
- Que los investigadores conozcan y usen Ruby
- Crear un ecosistema de ruby gems científicas
Empujemos Ruby al
mundo académico
Objetivos:
- Que los investigadores conozcan y usen Ruby
- Crear un ecosistema de gemas científicas
Participemos
¡Acción Directa!
¡Acción Directa!
1. Elige una disciplina que te guste
¡Acción Directa!
1. Elige una disciplina que te guste
2. Localiza el dpto. de universidad más cercano
¡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
OpenScience
Ayudas a resolver otros problemas
acceso
verificación
colaboración
reproducibilidad
¿Por qué?
¿qué ganas tú en todo esto?
¿Por qué?
Más usos de Ruby => Mejor Ruby
¿Por qué?
Las mismas motivaciones que justifican
contribuir a proyectos OpenSource
¿Por qué?
Ayudarás a la Ciencia
¿Por qué?
Ayudarás a una mejor Ciencia
¿Por qué?
Harás Ciencia
¿Por qué?
Las recompensas en OSS están bien,
las recompensas por ayudar a la ciencia MOLAN
¿Por qué?
Aprendes sobre temas y problemas interesantes
¿Por qué?
Fácil
resultado/esfuerzo
¿Por qué?

http://xkcd.com/664/
2 Comunidades:
Ruby & Científica
Apertura es un valor
Compartir información es la norma
Receptivas y dispuestas a ayudar
Sistemas basados en reputación
¿Podemos hacer de Ruby el
lenguaje de programación
de la Ciencia?
¿Podemos hacer de Ruby el
lenguaje de programación
de la Ciencia?
Probablemente No
¿Quizá?
¿Podemos hacer de Ruby el
lenguaje de programación
de la Ciencia?
a?
sd
má
é

Probablemente No

Qu
¿

¿Quizá?
¡Hagamos de Ruby
el lenguaje de
programación favorito
de los científicos!
¡Gracias!

Juanjo Bazán @xuanxu
Introducing:
AlphaRB.com
AlphaRB.com
@ResearchBase
¡Gracias II!

Juanjo Bazán @xuanxu
Juanjo Bazán @xuanxu hello@juanjobazan.com

¿Preguntas?
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

More Related Content

Similar to Cómo Ruby puede ayudar a los científicos

Python y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-CorrientesPython y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-Corrientesalexis ibarra
 
Introduccion 1º
Introduccion 1ºIntroduccion 1º
Introduccion 1ºaimorales
 
Programación orientada a la semántica
Programación orientada a la semántica  Programación orientada a la semántica
Programación orientada a la semántica SemanticWebBuilder
 
Reproducible Research
Reproducible ResearchReproducible Research
Reproducible ResearchDavid Solis
 
3ª ed. Cursos virtuales y herramientas antiplagio
3ª ed. Cursos virtuales y herramientas antiplagio3ª ed. Cursos virtuales y herramientas antiplagio
3ª ed. Cursos virtuales y herramientas antiplagioAlexis Moreno Pulido
 
Informacion y biblioteca
Informacion y bibliotecaInformacion y biblioteca
Informacion y bibliotecaBiblioteca UPPR
 
2-presentacion.pdf
2-presentacion.pdf2-presentacion.pdf
2-presentacion.pdfGibranDiaz7
 
Compartir el conocimiento en su desarrollo
Compartir el conocimiento en su desarrolloCompartir el conocimiento en su desarrollo
Compartir el conocimiento en su desarrolloMiguel Zapata-Ros
 
Programación del curso inf212 - POO
Programación del curso inf212 - POOProgramación del curso inf212 - POO
Programación del curso inf212 - POODiego Santimateo
 
Collaborative Ontology Building System
Collaborative Ontology Building SystemCollaborative Ontology Building System
Collaborative Ontology Building SystemJoseba Abaitua
 
Pyladies Workshop (Spanish)
Pyladies Workshop (Spanish)Pyladies Workshop (Spanish)
Pyladies Workshop (Spanish)Leonardo Jimenez
 
Programar en primaria: ABP con Scratch
Programar en primaria: ABP con ScratchProgramar en primaria: ABP con Scratch
Programar en primaria: ABP con ScratchProgramamos
 
Del data al opendata
Del data al opendataDel data al opendata
Del data al opendataSmash Tech
 
The big ball of mud | 4Sessions Feb17
The big ball of mud | 4Sessions Feb17The big ball of mud | 4Sessions Feb17
The big ball of mud | 4Sessions Feb17[T]echdencias
 

Similar to Cómo Ruby puede ayudar a los científicos (20)

Python y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-CorrientesPython y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-Corrientes
 
Uso bibliotecadigitalmarcoteorico
Uso bibliotecadigitalmarcoteoricoUso bibliotecadigitalmarcoteorico
Uso bibliotecadigitalmarcoteorico
 
Bdoo
BdooBdoo
Bdoo
 
Introduccion 1º
Introduccion 1ºIntroduccion 1º
Introduccion 1º
 
Programación orientada a la semántica
Programación orientada a la semántica  Programación orientada a la semántica
Programación orientada a la semántica
 
Reproducible Research
Reproducible ResearchReproducible Research
Reproducible Research
 
3ª ed. Cursos virtuales y herramientas antiplagio
3ª ed. Cursos virtuales y herramientas antiplagio3ª ed. Cursos virtuales y herramientas antiplagio
3ª ed. Cursos virtuales y herramientas antiplagio
 
Informacion y biblioteca
Informacion y bibliotecaInformacion y biblioteca
Informacion y biblioteca
 
2-presentacion.pdf
2-presentacion.pdf2-presentacion.pdf
2-presentacion.pdf
 
Compartir el conocimiento en su desarrollo
Compartir el conocimiento en su desarrolloCompartir el conocimiento en su desarrollo
Compartir el conocimiento en su desarrollo
 
Programación del curso inf212 - POO
Programación del curso inf212 - POOProgramación del curso inf212 - POO
Programación del curso inf212 - POO
 
Seminario deustotech 13marzo-2013
Seminario deustotech 13marzo-2013Seminario deustotech 13marzo-2013
Seminario deustotech 13marzo-2013
 
Collaborative Ontology Building System
Collaborative Ontology Building SystemCollaborative Ontology Building System
Collaborative Ontology Building System
 
Pyladies Workshop (Spanish)
Pyladies Workshop (Spanish)Pyladies Workshop (Spanish)
Pyladies Workshop (Spanish)
 
Linked data con R
Linked data con RLinked data con R
Linked data con R
 
Socialización rica
Socialización ricaSocialización rica
Socialización rica
 
Programar en primaria: ABP con Scratch
Programar en primaria: ABP con ScratchProgramar en primaria: ABP con Scratch
Programar en primaria: ABP con Scratch
 
Del data al opendata
Del data al opendataDel data al opendata
Del data al opendata
 
The big ball of mud!
The big ball of mud!The big ball of mud!
The big ball of mud!
 
The big ball of mud | 4Sessions Feb17
The big ball of mud | 4Sessions Feb17The big ball of mud | 4Sessions Feb17
The big ball of mud | 4Sessions Feb17
 

More from Juanjo Bazán

More from Juanjo Bazán (6)

How to manage an open source project
How to manage an open source projectHow to manage an open source project
How to manage an open source project
 
Space software
Space softwareSpace software
Space software
 
Ruby and Science
Ruby and ScienceRuby and Science
Ruby and Science
 
Nimbus
NimbusNimbus
Nimbus
 
Contribuir a Rails
Contribuir a RailsContribuir a Rails
Contribuir a Rails
 
Rails para programadores Java
Rails para programadores JavaRails para programadores Java
Rails para programadores Java
 

Recently uploaded

Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 

Recently uploaded (13)

Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 

Cómo Ruby puede ayudar a los científicos