RoR en la universidad
      Joaquín Salvachúa
        Santiago Pavón
        Juan Quemada
Indice

• Para que aprender RoR
• Como enseñar RoR
• Como aprender RoR
• Experiencias
• En marcha .......
¿Quienes somos?
• Profesores del departamento de ingeniería
  de sistemas telemáticos (DIT).
• Centrados en diseño e imple...
No para enseñar a
      programar

• Enseñar a diseñar e implementar:
 • Protocolos.
 • Aplicaciones y servicios.
Evitar obsolescencia
Dudas

• Conceptos

• Tecnología

• Conceptos haciendo.
Para que aprender RoR
Para que aprender RoR

• Capacidad de desarrollar una aplicación
  entera sin perderse en los detalles.


• Enfoque de tra...
Experiencias Con
        C / C++
• Problemas con los punteros.
• 1 hora escribiendo 5 depurando.

• Aprendían muy pocos co...
Experiencias con Java

• Los alumnos no aprender a programar:
 • Googlean buscando un API que realice la
    tarea pedida....
No comprenden todo
     el sistema
Enseñar conceptos
• Problema con velocidad actual:
 • Enseñar la última tecnología, que cambia
    al proximo año.
• Apren...
Ruby como lenguaje
• El objetivo no es aprender a programar.
 • Se supone, como el valor, que ya saben.
• Esto ya se reali...
Mostrar su uso
• Una clase de 2 horas para mostrar los
  aspectos más relevantes del lenguaje:
 • Sintaxis.
 • Tipado diná...
¿Enseñamos Ruby?

• No mucho.

• Lo justo para entender Rails.

• Ofertamos tutoriales online.
Como enseñar RoR
Conectivismo
• Otro “scaffolding”
• Proporcionamos el “andamiaje” de
  conocimiento donde entender los
  conceptos.


• Ma...
Profesor como
         facilitador
• Ofrece conceptos.

• Ofrece tutoriales y resuelve dudas.

• Ayuda a volar solos. (ent...
Guiar
Arquitectura REST

• Creemos que son conceptos adecuados.
• Sirve para profundizar en las aplicaciones
  web y el protocol...
Como aprender RoR
Motivación inicial

• Son capaces de ver un “screencast”    y ver
  que pueden realizar una aplicación.


• No necesitan e...
Aplicaciones reales vs
      de juguete


• Entender lo que hacemos.
Fuerte motivación
• Rapidamente “parece un sitio de verdad”
  no un juguete.


• Dedican mucho más esfuerzo e imaginación
...
Muchos continuan ..
• Salir del laboratorio
Lanzarse a un proyecto
   elegido por ellos
Diseño .... ejem...
Experiencias
Impartición RoR
Software
     Comunicaciones
• Especialidad de Telemática – 4º curso
• Temario:
  • Sockets TCP, UDP, broadcast, multicast...
SWCM 2006-2007
• Grupo experimental Ruby
• Comunicaciones con Ruby:
 • Tcp, Udp, multicast, threads
 • Aplicación Rails
  ...
SWCM 2007-2008
• Actualización en el temario:
  • Eliminados temas de comunicaciones con
    Ruby.
  • Web:
    • Aplicaci...
Temario detallado
• Introducción:
 • Convenios, DRY,
• Demostración motivadora.
• Arquitectura:
 • MVC, rutas, ficheros, …
...
Desarrollo de Aplic. Web 2.0 con
              RoR
• Libre Elección – Tercer curso
• Temario:
  • Diseño, usabilidad, …
  ...
Ejemplos
Pan y Ajo
Academia
Calendario online
eventos
Ajedrez
Agenda
2. Posibilidad de conocer gente como tú




          DEP. ING. SIST. TELEMÁTICOS; CURSO: INGENIER A DE SOFTWARE   Pág. 5
3.Ver los últimos mensajes de cualquier usuario




           DEP. ING. SIST. TELEMÁTICOS; CURSO: INGENIER A DE SOFTWARE ...
Laboratorio de SW
         Comunicaciones
• Especialidad de Telemática – 5º curso
• Temario:
  • RTP
  • Servidores HTTP
 ...
LSCM 2008-2009
• Curso 2007-2008
 • Grupo especial: MelonTube
• Curso 2008-2009
 • Despliegue sobre Máquinas Virtuales:
  ...
Aplicaciones y Sistemas
   Colaborativos en Web 2.0
• Postgrado
• Temario:
 • ¿Qué es la web 2.0?
 • Colaboración
 • Usabi...
• Proyectos Fin de Carrera


• Tesis Doctorales


• Actividad en otros departamentos.
Experiencia inicial
• Grupo experimental en Software de
  comunicaciones.
• Voluntarios.

• La mayor parte del grupo conti...
Ruby
• No perfecto para implementar protocolos
  de comunicaciones.
• Lento para algunos casos (RTP / UDP).

• Considerand...
Ayudar a elegir camino


• Web: fundamentos
En marcha .....
Usabilidad

• Centrarnos en el diseño del lugar web.

• Considerando contar la experiencia con
    interfaces FLEX + RoR.
•
Ruby

• Posible primer lenguaje.

• Discusión abierta.
Temas de investigación

• Redes sociales:
 • Plugging

• Lenguajes de Workflow Rest.
Conclusiones
• Interés elevado de los alumnos.
• Se le dedican pocas horas de docencia.
 • Crear más asignaturas.
 • Comen...
Conclusiones

• Largo camino por recorrer.

• Hilo conductor para múltiples tecnologías.
Enlaces
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Ro R Universidad
Upcoming SlideShare
Loading in …5
×

Ro R Universidad

962 views
929 views

Published on

Descripción de las actividades de enseñanza de Ruby

Published in: Education
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
962
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
13
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Ro R Universidad

  1. 1. RoR en la universidad Joaquín Salvachúa Santiago Pavón Juan Quemada
  2. 2. Indice • Para que aprender RoR • Como enseñar RoR • Como aprender RoR • Experiencias • En marcha .......
  3. 3. ¿Quienes somos? • Profesores del departamento de ingeniería de sistemas telemáticos (DIT). • Centrados en diseño e implementación de protocolos y aplicaciones web. • Necesidad de motivar a la gente.
  4. 4. No para enseñar a programar • Enseñar a diseñar e implementar: • Protocolos. • Aplicaciones y servicios.
  5. 5. Evitar obsolescencia
  6. 6. Dudas • Conceptos • Tecnología • Conceptos haciendo.
  7. 7. Para que aprender RoR
  8. 8. Para que aprender RoR • Capacidad de desarrollar una aplicación entera sin perderse en los detalles. • Enfoque de trabajo en equipo: • Capaces de colaborar.
  9. 9. Experiencias Con C / C++ • Problemas con los punteros. • 1 hora escribiendo 5 depurando. • Aprendían muy pocos conceptos de aplicaciones. Concentrados en los detalles.
  10. 10. Experiencias con Java • Los alumnos no aprender a programar: • Googlean buscando un API que realice la tarea pedida. • Perdida de perspectiva y conceptos.
  11. 11. No comprenden todo el sistema
  12. 12. Enseñar conceptos • Problema con velocidad actual: • Enseñar la última tecnología, que cambia al proximo año. • Aprender haciendo: • Han de experimentar como se realizan las cosas, de lo contrario todo queda en el aire.
  13. 13. Ruby como lenguaje • El objetivo no es aprender a programar. • Se supone, como el valor, que ya saben. • Esto ya se realiza en otras asignaturas. • El objetivo es conocer lo necesario para usar Rails.
  14. 14. Mostrar su uso • Una clase de 2 horas para mostrar los aspectos más relevantes del lenguaje: • Sintaxis. • Tipado dinámico y de patos (Duck typing). •
  15. 15. ¿Enseñamos Ruby? • No mucho. • Lo justo para entender Rails. • Ofertamos tutoriales online.
  16. 16. Como enseñar RoR
  17. 17. Conectivismo • Otro “scaffolding” • Proporcionamos el “andamiaje” de conocimiento donde entender los conceptos. • Mas en Que se hace que Como se hace
  18. 18. Profesor como facilitador • Ofrece conceptos. • Ofrece tutoriales y resuelve dudas. • Ayuda a volar solos. (entornos reales).
  19. 19. Guiar
  20. 20. Arquitectura REST • Creemos que son conceptos adecuados. • Sirve para profundizar en las aplicaciones web y el protocolo HTTP. • Conceptos más que detalles.
  21. 21. Como aprender RoR
  22. 22. Motivación inicial • Son capaces de ver un “screencast” y ver que pueden realizar una aplicación. • No necesitan entenderlo todo. • Pueden profundizar lo que deseen.
  23. 23. Aplicaciones reales vs de juguete • Entender lo que hacemos.
  24. 24. Fuerte motivación • Rapidamente “parece un sitio de verdad” no un juguete. • Dedican mucho más esfuerzo e imaginación que la planificada. • Deseo de aprender más.
  25. 25. Muchos continuan ..
  26. 26. • Salir del laboratorio
  27. 27. Lanzarse a un proyecto elegido por ellos
  28. 28. Diseño .... ejem...
  29. 29. Experiencias
  30. 30. Impartición RoR
  31. 31. Software Comunicaciones • Especialidad de Telemática – 4º curso • Temario: • Sockets TCP, UDP, broadcast, multicast • Concurrencia, Threads, java.nio • Web: URI, HTTP, aplicaciones, applets • RPC, RMI, Web Services
  32. 32. SWCM 2006-2007 • Grupo experimental Ruby • Comunicaciones con Ruby: • Tcp, Udp, multicast, threads • Aplicación Rails • Desarrollo de aplicaciones web con Rails 1.2
  33. 33. SWCM 2007-2008 • Actualización en el temario: • Eliminados temas de comunicaciones con Ruby. • Web: • Aplicaciones con Rails 2 (5 horas) • y (X)HTML, CSS, JS, AJAX, mySQL, ruby (nivelación)
  34. 34. Temario detallado • Introducción: • Convenios, DRY, • Demostración motivadora. • Arquitectura: • MVC, rutas, ficheros, … • ActiveSupport, ActiveRecord, ActionView,
  35. 35. Desarrollo de Aplic. Web 2.0 con RoR • Libre Elección – Tercer curso • Temario: • Diseño, usabilidad, … • Web Básico: xhtml, javascript, css, ajax • MySql • Lenguaje Ruby
  36. 36. Ejemplos
  37. 37. Pan y Ajo
  38. 38. Academia
  39. 39. Calendario online
  40. 40. eventos
  41. 41. Ajedrez
  42. 42. Agenda
  43. 43. 2. Posibilidad de conocer gente como tú DEP. ING. SIST. TELEMÁTICOS; CURSO: INGENIER A DE SOFTWARE Pág. 5
  44. 44. 3.Ver los últimos mensajes de cualquier usuario DEP. ING. SIST. TELEMÁTICOS; CURSO: INGENIER A DE SOFTWARE Pág. 6
  45. 45. Laboratorio de SW Comunicaciones • Especialidad de Telemática – 5º curso • Temario: • RTP • Servidores HTTP • XML-RPC • SOAP
  46. 46. LSCM 2008-2009 • Curso 2007-2008 • Grupo especial: MelonTube • Curso 2008-2009 • Despliegue sobre Máquinas Virtuales: • Apache + Passenger • Mongrels
  47. 47. Aplicaciones y Sistemas Colaborativos en Web 2.0 • Postgrado • Temario: • ¿Qué es la web 2.0? • Colaboración • Usabilidad • RoR
  48. 48. • Proyectos Fin de Carrera • Tesis Doctorales • Actividad en otros departamentos.
  49. 49. Experiencia inicial • Grupo experimental en Software de comunicaciones. • Voluntarios. • La mayor parte del grupo continua colaborando con nosotros.
  50. 50. Ruby • No perfecto para implementar protocolos de comunicaciones. • Lento para algunos casos (RTP / UDP). • Considerando la unión Ruby y RoR con Erlang.
  51. 51. Ayudar a elegir camino • Web: fundamentos
  52. 52. En marcha .....
  53. 53. Usabilidad • Centrarnos en el diseño del lugar web. • Considerando contar la experiencia con interfaces FLEX + RoR. •
  54. 54. Ruby • Posible primer lenguaje. • Discusión abierta.
  55. 55. Temas de investigación • Redes sociales: • Plugging • Lenguajes de Workflow Rest.
  56. 56. Conclusiones • Interés elevado de los alumnos. • Se le dedican pocas horas de docencia. • Crear más asignaturas. • Comenzando en los primeros cursos. • Alumnos del grupos especial 2006 ya han terminado (o casi) la carrera.
  57. 57. Conclusiones • Largo camino por recorrer. • Hilo conductor para múltiples tecnologías.
  58. 58. Enlaces

×