SlideShare una empresa de Scribd logo
1 de 10
Primeros pasos con Google
Course Builder
Introducción
Google Course Builder nació como un experimento de Google para montar un MOOC: Power
Searching with Google. A raíz del éxito de este curso, y de los MOOC en general, el uso de esta
herramienta se ha extendido tanto en su desarrollo por parte de Google y otras entidades (es
código abierto) como en su uso en algunas iniciativas de éxito como UniMOOC - AEmprende.
En este post veremos lo sencillo que es, usando Course Builder, montar nuestro propio MOOC
en unos cuantos pasos y cómo subirlo a la "nube" para que esté disponible para todo el mundo.
Instalación Google App Engine
Una de las razones del éxito de Course Builder es que está alojado en Google App Engine, la
nube de Google. Esto significa que no tenemos que preocuparnos por alquilar/comprar
servidores, montar bases de datos, balancear la carga, etc. App Engine gestiona todo por
nosotros de forma automática. Además también nos aporta una forma sencilla de probar todo
lo que añadamos al curso en nuestro propia máquina sin tener que subirlo a la nube, lo cuál
resulta muy útil cuando añadamos nuevos contenidos y necesitemos probarlos antes. Ahora
vamos a instalar ésta última herramienta, el 'launcher', para montar nuestro curso en local.
Instalando Python 2.7
En primer lugar deberemos instalar Python 2.7 en nuestra máquina. Python es uno de los
lenguajes que nos permite usar el App Engine y más concretamente el lenguaje en que está
desarrollado el Course Builder, por lo que necesitamos las herramientas necesarias para poder
ejecutarlo. Para descargarlo, vamos a http://www.python.org/download/releases/2.7/ y en la
sección "Downloads" elegimos la correspondiente a nuestra plataforma (está disponible en
Windows, Mac o incluso el código fuente).
La instalación es muy sencilla, pero si tenemos algún problema siempre podemos acudir a
la guía oficial de instalación de Python.
Instalando AppEngine SDK
Con Python ya instalado, podemos descargarnoselSDK (Software Development Kit) delGoogle
App Engine (¡versión Python!) de https://developers.google.com/appengine/downloads. Está
disponible para Windows, Mac OS y Linux (lo cual es otro punto a su favor). La instalación es
muy sencilla en las tres plataformas, por lo que no entraré en detalles. Si tenéis algún tipo de
problema, siempre podéis acudir a la guía oficial de Google.
Ahora podremos buscar en nuestro PC un ejecutable llamado GoogleAppEngineLauncher. Con
él podemos manejar todo lo relacionado con el App Engine sin apenas tocar la línea de
comandos. La interfaz es muy sencilla.
GoogleAppEngineLauncher en Mac OS
En el centro podemos ver todas las aplicaciones que tenemos activas en nuestra máquina (NO
subidas a la nube, sino en local) y en la fila de arriba podemos ver varios botones. Los más
importantes nos permiten:
o Ejecutar la aplicación seleccionada en local (Run)
o Parar su ejecución (Stop)
o Ir a la URL en local de la aplicación seleccionada (Browse)
o Ver los logs (Logs)
o Subirlo a la nube (Deploy)
Google Course Builder
Con el punto anterior finalizado, ahora ya podemos descargarnoselGoogle Course Builder (¡por
fin!) y ejecutarlo en nuestra máquina. Para ello, vamos a la sección de "Downloads" del
repositorio oficial del GCB y elegimos la última versión (en estos momentos es la 1.3.1). Si
descomprimimos la descarga, veremos varios archivos y carpetas. Este es el código (sí, el
código) del GCB, ya que es una plataforma abierta que permite obtener y modificar su código a
nuestro gusto.
Ejecutando GCB en local
Ahora volvemos al SDK del App Engine, más concretamente a la aplicación que hemos
comentado antes(GoogleAppEngineLauncher) yclickamos en File > Add Existing Application...
Menú File > Add Existing Application...
En Path ponemos la ruta al directorio del GCB que acabamos de descargar y pulsamos en Add.
Menú para añadir una aplicación existente
Con la aplicación añadida podemos pulsar en el botón Browse de la aplicación del App Engine
y nos llevará a la URL donde está disponible el GCB (siempre desde nuestra máquina, aún no
estamos en la nube) donde veremos el curso por defecto del GCB.
Curso por defecto de GCB
Añadir nuestros contenidos al GCB
Ahora que tenemos el curso por defecto ya funcionando, vamos a sustituir sus contenidos por
los nuestros.
Editando ‘course.yaml’
Para ello, en primer lugar, vamos a modificar algunos parámetros como el título o el idioma en
el fichero 'course.yaml' que encontramos en el directorio raíz del GCB. El propio fichero está
muy bién documentado, pero si tenemos dudaspodemos ir a https://code.google.com/p/course-
builder/wiki/CourseSettings, donde está explicado en detalle qué modifica cada uno de los
puntos.
De momento vamos a cambiar el idioma y el título del curso. Para ello editamos en 'course.yaml'
los parámetros'title' y 'locale', y los cambiamos por "Nuestro curso"y "es_ES", respectivamente.
Guardamos el fichero, recargamos la página en el navegador y deberíamos ver algo así:
GCB con nuestros parámetros
Añadiendo nuestras unidades
Con estos parámetros modificados, vamos ahora a añadir una nueva unidad. Nos vamos al
fichero 'data/unit.csv', donde están las unidades del curso. En la primera línea podemos ver los
campos que debemos añadir:
o id: Número entero que representa a la unidad. Debe ser único (entre los ids del resto de
unidades), ya que identifica unívocamente a una unidad.
o type: Indica que tipo de unidad es. Puede ser: 'A' (es un Assessment o examen), 'U' (es
una unidad propiamente dicha, con lecciones),'O' (escualquier otra cosa, como un enlace
externo).
o unit_id: Este campo varía su significado según el tipo de unidad: si el tipo es 'A' representa
el código que debe identificar al examen ('final', por ejemplo), si el tipo es 'U' representa el
orden en que se mostrará en la planificación del curso y si el tipo es 'O', representa el
enlace al recurso externo.
o title: Título o nombre de la unidad, sea del tipo que sea.
o release_date: Fecha en que la unidad estará disponible para los alumnos.
o now_available: Si su valor es 'True',indica que la unidad está disponible ahora mismo. Por
el contrario, si es 'False', indica que está cerrada.
Vamos a añadir nuestra unidad con los siguientes valores:
o id: 12 (es el siguiente id disponible)
o type: U (ya que va a ser de tipo unidad)
o unit_id: 7 (saldrá la última)
o title: Nuestra nueva unidad
o release_date: No ponemos nada, ya que estará disponible siempre
o now_available: True
La línea a pegar al final, sería:
12,U,7,Nuestra nueva unidad,,True
Si recargamos la página principal del curso veremos que nuestra unidad aparece al final pero,
a pesar de haberla marcada como activa, no nos deja acceder. De hecho, no nos deja acceder
a ninguna. Esto es porque, aunque la aplicación ahora mismo sea una "demo" en local es una
"demo real", por lo que debemos registrarnos como estudiantes. Para ello vamos a "Registro" e
introducimos nuestro nombre.
Formulario de registro
Ahora si volvemos a la pestaña de "Curso" ya veremos que las unidades son accesibles y al
final está la nuestra.
Planificación de nuestro curso
No obstante, si entramos en ella nos avisa de que aún no tiene ninguna lección. ¡Vamos a
añadirle alguna!
Añadiendo nuestras lecciones
Nos vamos al fichero 'data/lesson.csv'. Como en el caso de las unidades, en la primera linea
vemos los campos que tiene cada lección:
o (1) unit_id: unit_id de la unidad a la que está asociada la lección.
o (2) unit_title: Título de la unidad a la que está asociada la lección.
o (3) lesson_id: id de la lección. Este id representa también su orden dentro de la unidad,
por lo que debe empezar en 1 y ser consecutivo entre las lecciones de una misma unidad.
o (4) lesson_title: Título de la lección.
o (5) lesson_activity: Si vale 'Yes', indica si la lección tiene o no alguna actividad/ejercicios.
Si está en blanco, no tiene.
o (6) lesson_activity_name: Si la lección tiene alguna actividad, es su nombre.
o (7) lesson_notes: URL a la versión en texto de la lección.
o (8) lesson_video_id: ID del video en YouTube de la lección.
o (9) lesson_objectives: Objetivos de la lección. En este campo podemos meter todo el
código HTML que queramos.
En esta imagen, obtenida del repositorio del GCB, podemos ver en que se traduce cada campo:
"Mapa" de propiedades de las lecciones
Vamos a añadir nuestra nueva lección con los siguientes valores:
o unit_id: 7 (es el campo unit_id de nuestra unidad, no el de id)
o unit_title: Nuestra nueva unidad
o lesson_id: 1 (la primera leccion de la unidad)
o lesson_title: Nuestra nueva lección
o lesson_activity: Lo dejamos vacio ya que no tendrá ninguna actividad.
o lesson_activity_name: Dado qe no no tenemos ninguna actividad, lo dejamos vacío
también.
o lesson_notes: Lo dejamos vacío por que no añadiremos notas a nuestra lección.
o lesson_video_id: 0gSnhdBk-Uo
o lesson_objectives: <ul><li>Aprender a montar un MOOC con Google Course
Builder</li></ul> (recordad que es código HTML)
La línea para pegar al final del fichero sería
7,Nuestra nueva unidad,1,Nuestra nueva lección,,,,0gSnhdBk-
Uo,<ul><li>Aprender a montar un MOOC con Google Course Builder</li></ul>
Si ahora recargamos la página de nuestro curso y accedemos a nuestra unidad podremos ver
nuestra nueva lección creada:
Nuestra nueva lección
De esta manera podríamos añadir nuestros contenidos al curso. En posteriores posts
explicaremos como añadir actividades (ejercicios) asociadas a lecciones y assessments
(examenes), así como personalizar más el curso (cambiar colores, etc).
Subirlo a la nube
Tenemos nuestro curso, con nuestros contenidos y nuestros parámetros pero nos queda una
cosa: subirlo a la nube de Google para que todo el mundo pueda aprender con nuestro curso.
Para ello primero tenemos que crearnos una aplicación el App Engine (podemos hacerlo con
nuestra cuenta de GMail), por lo que nos vamos a https://appengine.google.com/ y clickamos
en "Create Application".
Ahora, en "Application Identifier", ponemos el identificador de nuestra aplicación (pruebagcb en
nuestro caso). El identificador e único entre todas las aplicaciones del App Engine y define la
URL desde la que será accesible después. En "Application Title" ponemos el título de nuestra
aplicación (no es tan importante como el identificador) y en "Authentication Options" elegimos
"Open to all Google Accounts". Estos último es especialmente importante, ya que es necesario
para que el GCB funcione.
Panel de creación de aplicaciones en AppEngine
Una vez creada, nos vamos al fichero 'app.yaml' de nuestro curso y cambiamos el valor del
campo 'application' por el identificador de nuestra aplicación (para nosotros, pruebagcb). Por lo
tanto, la línea quedaría así:
application: pruebagcb
Ahora nos vamos a la aplicación que instalamos en nuestro equipo en los primeros pasos, el
launcher del App Engine, y elegimos nuestro curso (que ahora estará identificado con el
identificador de nuestra aplicación). Pulsamos sobre el botón "Deploy", ponemos nuestras
credenciales de GMail y ya está. La aplicación se encargará ahora de subirla a la nube y nos
mostrará el progreso en una nueva ventana. Una vez acabe, mostrará la siguiente línea:
*** appcfg.py has finished with exit code 0 ***
Si ahora vamos a http://<identificador de nuestra
aplicación>.appspot.com/, http://pruebagcb.appspot.com/ en nuestro caso, veremos nuestro
curso, que ahora sí que está en la nube, y por tanto accesible para cualquier estudiante que
quiera aprender con nosotros.

Más contenido relacionado

La actualidad más candente

La actualidad más candente (12)

Eclipse tutorial
Eclipse tutorialEclipse tutorial
Eclipse tutorial
 
UDA-Plugin UDA. Guia de uso de plantillas
UDA-Plugin UDA. Guia de uso de plantillasUDA-Plugin UDA. Guia de uso de plantillas
UDA-Plugin UDA. Guia de uso de plantillas
 
ECLIPSE PANTALLA INICIO
ECLIPSE PANTALLA INICIOECLIPSE PANTALLA INICIO
ECLIPSE PANTALLA INICIO
 
My sql en delphi 7
My sql en delphi 7My sql en delphi 7
My sql en delphi 7
 
Eclipse para novatos java
Eclipse para novatos javaEclipse para novatos java
Eclipse para novatos java
 
Partes de la pantalla de eclipse
Partes de la pantalla de eclipsePartes de la pantalla de eclipse
Partes de la pantalla de eclipse
 
Mi primera-hora-con-eclipse
Mi primera-hora-con-eclipseMi primera-hora-con-eclipse
Mi primera-hora-con-eclipse
 
File
FileFile
File
 
UDA-Plugin UDA. Guia de uso del plugin.
UDA-Plugin UDA. Guia de uso del plugin.UDA-Plugin UDA. Guia de uso del plugin.
UDA-Plugin UDA. Guia de uso del plugin.
 
Vn-Desarrollo
Vn-DesarrolloVn-Desarrollo
Vn-Desarrollo
 
Introducción al Delphi
Introducción al DelphiIntroducción al Delphi
Introducción al Delphi
 
Java con eclipse
Java con eclipseJava con eclipse
Java con eclipse
 

Similar a Primeros pasos con google course builder

UDA-Plugin UDA. Guia de desarrollo
UDA-Plugin UDA. Guia de desarrolloUDA-Plugin UDA. Guia de desarrollo
UDA-Plugin UDA. Guia de desarrolloAnder Martinez
 
Actividad responsable 1
Actividad responsable 1Actividad responsable 1
Actividad responsable 1ctepay
 
Desarrollando mi primera App para Windows 8 con C#
Desarrollando mi primera App para Windows 8 con C#Desarrollando mi primera App para Windows 8 con C#
Desarrollando mi primera App para Windows 8 con C#Vicente Gerardo Guzman Lucio
 
Aula virtual en Papás 2.0: de eXe a Moodle
Aula virtual en Papás 2.0: de eXe a MoodleAula virtual en Papás 2.0: de eXe a Moodle
Aula virtual en Papás 2.0: de eXe a MoodleCRAER de Molina
 
Manual de bouml
Manual de boumlManual de bouml
Manual de boumlULEAM
 
Investigacion para agregar una imagen a eclipse
Investigacion para agregar una imagen a eclipseInvestigacion para agregar una imagen a eclipse
Investigacion para agregar una imagen a eclipseLucero De La Cruz
 
Investigacion para agregar una imagen a eclipse
Investigacion para agregar una imagen a eclipseInvestigacion para agregar una imagen a eclipse
Investigacion para agregar una imagen a eclipseLucero De La Cruz
 
De los temas de android (introduccion-10)
De los temas de android (introduccion-10)De los temas de android (introduccion-10)
De los temas de android (introduccion-10)equipotresamp
 
Manual de usuarios_de_eclipse_jenny
Manual de usuarios_de_eclipse_jennyManual de usuarios_de_eclipse_jenny
Manual de usuarios_de_eclipse_jennyJenny Martinez
 
Adelanto de los temas de android (introduccion-10)
Adelanto de los temas de android (introduccion-10)Adelanto de los temas de android (introduccion-10)
Adelanto de los temas de android (introduccion-10)equipotresamp
 
Apuntes de introduccion a la programación
Apuntes de introduccion a la programaciónApuntes de introduccion a la programación
Apuntes de introduccion a la programaciónvictdiazm
 
Aula virtual en Papás 2.0: de Educaplay a Moodle
Aula virtual en Papás 2.0: de Educaplay a MoodleAula virtual en Papás 2.0: de Educaplay a Moodle
Aula virtual en Papás 2.0: de Educaplay a MoodleCRAER de Molina
 
Como insertar una imagen en eclipse
Como insertar una imagen en eclipseComo insertar una imagen en eclipse
Como insertar una imagen en eclipsejaquiiMc
 
Creando tu curso
Creando tu cursoCreando tu curso
Creando tu cursoMaggie Kno
 
Exelearning Basico
Exelearning BasicoExelearning Basico
Exelearning BasicoTIC System
 

Similar a Primeros pasos con google course builder (20)

Clase numero 6
Clase numero 6Clase numero 6
Clase numero 6
 
UDA-Plugin UDA. Guia de desarrollo
UDA-Plugin UDA. Guia de desarrolloUDA-Plugin UDA. Guia de desarrollo
UDA-Plugin UDA. Guia de desarrollo
 
Actividad responsable 1
Actividad responsable 1Actividad responsable 1
Actividad responsable 1
 
Desarrollando mi primera App para Windows 8 con C#
Desarrollando mi primera App para Windows 8 con C#Desarrollando mi primera App para Windows 8 con C#
Desarrollando mi primera App para Windows 8 con C#
 
Aula virtual en Papás 2.0: de eXe a Moodle
Aula virtual en Papás 2.0: de eXe a MoodleAula virtual en Papás 2.0: de eXe a Moodle
Aula virtual en Papás 2.0: de eXe a Moodle
 
Cetis 109
Cetis 109Cetis 109
Cetis 109
 
Cetis 109(2)
Cetis 109(2)Cetis 109(2)
Cetis 109(2)
 
Manual de bouml
Manual de boumlManual de bouml
Manual de bouml
 
Manual de eclpse emrt
Manual de eclpse emrtManual de eclpse emrt
Manual de eclpse emrt
 
Investigacion para agregar una imagen a eclipse
Investigacion para agregar una imagen a eclipseInvestigacion para agregar una imagen a eclipse
Investigacion para agregar una imagen a eclipse
 
Investigacion para agregar una imagen a eclipse
Investigacion para agregar una imagen a eclipseInvestigacion para agregar una imagen a eclipse
Investigacion para agregar una imagen a eclipse
 
De los temas de android (introduccion-10)
De los temas de android (introduccion-10)De los temas de android (introduccion-10)
De los temas de android (introduccion-10)
 
Manual de usuarios_de_eclipse_jenny
Manual de usuarios_de_eclipse_jennyManual de usuarios_de_eclipse_jenny
Manual de usuarios_de_eclipse_jenny
 
Adelanto de los temas de android (introduccion-10)
Adelanto de los temas de android (introduccion-10)Adelanto de los temas de android (introduccion-10)
Adelanto de los temas de android (introduccion-10)
 
Apuntes de introduccion a la programación
Apuntes de introduccion a la programaciónApuntes de introduccion a la programación
Apuntes de introduccion a la programación
 
Aula virtual en Papás 2.0: de Educaplay a Moodle
Aula virtual en Papás 2.0: de Educaplay a MoodleAula virtual en Papás 2.0: de Educaplay a Moodle
Aula virtual en Papás 2.0: de Educaplay a Moodle
 
Crear clase en classroom
Crear clase en classroomCrear clase en classroom
Crear clase en classroom
 
Como insertar una imagen en eclipse
Como insertar una imagen en eclipseComo insertar una imagen en eclipse
Como insertar una imagen en eclipse
 
Creando tu curso
Creando tu cursoCreando tu curso
Creando tu curso
 
Exelearning Basico
Exelearning BasicoExelearning Basico
Exelearning Basico
 

Más de ERNESTO FONG

Fiabilidad de la información en Internet.pptx
Fiabilidad de la información en Internet.pptxFiabilidad de la información en Internet.pptx
Fiabilidad de la información en Internet.pptxERNESTO FONG
 
Evaluacion de software
Evaluacion de softwareEvaluacion de software
Evaluacion de softwareERNESTO FONG
 
Prezi caracteristicas
Prezi caracteristicasPrezi caracteristicas
Prezi caracteristicasERNESTO FONG
 
Manual de-usuario-inventario
Manual de-usuario-inventarioManual de-usuario-inventario
Manual de-usuario-inventarioERNESTO FONG
 
Manual de-usuario-inventario
Manual de-usuario-inventarioManual de-usuario-inventario
Manual de-usuario-inventarioERNESTO FONG
 
Manual de-usuario-inventario
Manual de-usuario-inventarioManual de-usuario-inventario
Manual de-usuario-inventarioERNESTO FONG
 

Más de ERNESTO FONG (11)

Fiabilidad de la información en Internet.pptx
Fiabilidad de la información en Internet.pptxFiabilidad de la información en Internet.pptx
Fiabilidad de la información en Internet.pptx
 
Guia canva
Guia canvaGuia canva
Guia canva
 
Guia
GuiaGuia
Guia
 
Evaluacion de software
Evaluacion de softwareEvaluacion de software
Evaluacion de software
 
Wiki
WikiWiki
Wiki
 
Movie maker
Movie makerMovie maker
Movie maker
 
Prezi caracteristicas
Prezi caracteristicasPrezi caracteristicas
Prezi caracteristicas
 
Pizarra digital
Pizarra digitalPizarra digital
Pizarra digital
 
Manual de-usuario-inventario
Manual de-usuario-inventarioManual de-usuario-inventario
Manual de-usuario-inventario
 
Manual de-usuario-inventario
Manual de-usuario-inventarioManual de-usuario-inventario
Manual de-usuario-inventario
 
Manual de-usuario-inventario
Manual de-usuario-inventarioManual de-usuario-inventario
Manual de-usuario-inventario
 

Primeros pasos con google course builder

  • 1. Primeros pasos con Google Course Builder Introducción Google Course Builder nació como un experimento de Google para montar un MOOC: Power Searching with Google. A raíz del éxito de este curso, y de los MOOC en general, el uso de esta herramienta se ha extendido tanto en su desarrollo por parte de Google y otras entidades (es código abierto) como en su uso en algunas iniciativas de éxito como UniMOOC - AEmprende. En este post veremos lo sencillo que es, usando Course Builder, montar nuestro propio MOOC en unos cuantos pasos y cómo subirlo a la "nube" para que esté disponible para todo el mundo. Instalación Google App Engine Una de las razones del éxito de Course Builder es que está alojado en Google App Engine, la nube de Google. Esto significa que no tenemos que preocuparnos por alquilar/comprar servidores, montar bases de datos, balancear la carga, etc. App Engine gestiona todo por nosotros de forma automática. Además también nos aporta una forma sencilla de probar todo lo que añadamos al curso en nuestro propia máquina sin tener que subirlo a la nube, lo cuál resulta muy útil cuando añadamos nuevos contenidos y necesitemos probarlos antes. Ahora vamos a instalar ésta última herramienta, el 'launcher', para montar nuestro curso en local.
  • 2. Instalando Python 2.7 En primer lugar deberemos instalar Python 2.7 en nuestra máquina. Python es uno de los lenguajes que nos permite usar el App Engine y más concretamente el lenguaje en que está desarrollado el Course Builder, por lo que necesitamos las herramientas necesarias para poder ejecutarlo. Para descargarlo, vamos a http://www.python.org/download/releases/2.7/ y en la sección "Downloads" elegimos la correspondiente a nuestra plataforma (está disponible en Windows, Mac o incluso el código fuente). La instalación es muy sencilla, pero si tenemos algún problema siempre podemos acudir a la guía oficial de instalación de Python. Instalando AppEngine SDK Con Python ya instalado, podemos descargarnoselSDK (Software Development Kit) delGoogle App Engine (¡versión Python!) de https://developers.google.com/appengine/downloads. Está disponible para Windows, Mac OS y Linux (lo cual es otro punto a su favor). La instalación es muy sencilla en las tres plataformas, por lo que no entraré en detalles. Si tenéis algún tipo de problema, siempre podéis acudir a la guía oficial de Google. Ahora podremos buscar en nuestro PC un ejecutable llamado GoogleAppEngineLauncher. Con él podemos manejar todo lo relacionado con el App Engine sin apenas tocar la línea de comandos. La interfaz es muy sencilla. GoogleAppEngineLauncher en Mac OS En el centro podemos ver todas las aplicaciones que tenemos activas en nuestra máquina (NO subidas a la nube, sino en local) y en la fila de arriba podemos ver varios botones. Los más importantes nos permiten: o Ejecutar la aplicación seleccionada en local (Run) o Parar su ejecución (Stop)
  • 3. o Ir a la URL en local de la aplicación seleccionada (Browse) o Ver los logs (Logs) o Subirlo a la nube (Deploy) Google Course Builder Con el punto anterior finalizado, ahora ya podemos descargarnoselGoogle Course Builder (¡por fin!) y ejecutarlo en nuestra máquina. Para ello, vamos a la sección de "Downloads" del repositorio oficial del GCB y elegimos la última versión (en estos momentos es la 1.3.1). Si descomprimimos la descarga, veremos varios archivos y carpetas. Este es el código (sí, el código) del GCB, ya que es una plataforma abierta que permite obtener y modificar su código a nuestro gusto. Ejecutando GCB en local Ahora volvemos al SDK del App Engine, más concretamente a la aplicación que hemos comentado antes(GoogleAppEngineLauncher) yclickamos en File > Add Existing Application... Menú File > Add Existing Application... En Path ponemos la ruta al directorio del GCB que acabamos de descargar y pulsamos en Add.
  • 4. Menú para añadir una aplicación existente Con la aplicación añadida podemos pulsar en el botón Browse de la aplicación del App Engine y nos llevará a la URL donde está disponible el GCB (siempre desde nuestra máquina, aún no estamos en la nube) donde veremos el curso por defecto del GCB. Curso por defecto de GCB Añadir nuestros contenidos al GCB Ahora que tenemos el curso por defecto ya funcionando, vamos a sustituir sus contenidos por los nuestros. Editando ‘course.yaml’ Para ello, en primer lugar, vamos a modificar algunos parámetros como el título o el idioma en el fichero 'course.yaml' que encontramos en el directorio raíz del GCB. El propio fichero está muy bién documentado, pero si tenemos dudaspodemos ir a https://code.google.com/p/course- builder/wiki/CourseSettings, donde está explicado en detalle qué modifica cada uno de los puntos. De momento vamos a cambiar el idioma y el título del curso. Para ello editamos en 'course.yaml' los parámetros'title' y 'locale', y los cambiamos por "Nuestro curso"y "es_ES", respectivamente. Guardamos el fichero, recargamos la página en el navegador y deberíamos ver algo así:
  • 5. GCB con nuestros parámetros Añadiendo nuestras unidades Con estos parámetros modificados, vamos ahora a añadir una nueva unidad. Nos vamos al fichero 'data/unit.csv', donde están las unidades del curso. En la primera línea podemos ver los campos que debemos añadir: o id: Número entero que representa a la unidad. Debe ser único (entre los ids del resto de unidades), ya que identifica unívocamente a una unidad. o type: Indica que tipo de unidad es. Puede ser: 'A' (es un Assessment o examen), 'U' (es una unidad propiamente dicha, con lecciones),'O' (escualquier otra cosa, como un enlace externo). o unit_id: Este campo varía su significado según el tipo de unidad: si el tipo es 'A' representa el código que debe identificar al examen ('final', por ejemplo), si el tipo es 'U' representa el orden en que se mostrará en la planificación del curso y si el tipo es 'O', representa el enlace al recurso externo. o title: Título o nombre de la unidad, sea del tipo que sea. o release_date: Fecha en que la unidad estará disponible para los alumnos. o now_available: Si su valor es 'True',indica que la unidad está disponible ahora mismo. Por el contrario, si es 'False', indica que está cerrada. Vamos a añadir nuestra unidad con los siguientes valores: o id: 12 (es el siguiente id disponible) o type: U (ya que va a ser de tipo unidad) o unit_id: 7 (saldrá la última) o title: Nuestra nueva unidad o release_date: No ponemos nada, ya que estará disponible siempre o now_available: True La línea a pegar al final, sería: 12,U,7,Nuestra nueva unidad,,True
  • 6. Si recargamos la página principal del curso veremos que nuestra unidad aparece al final pero, a pesar de haberla marcada como activa, no nos deja acceder. De hecho, no nos deja acceder a ninguna. Esto es porque, aunque la aplicación ahora mismo sea una "demo" en local es una "demo real", por lo que debemos registrarnos como estudiantes. Para ello vamos a "Registro" e introducimos nuestro nombre. Formulario de registro Ahora si volvemos a la pestaña de "Curso" ya veremos que las unidades son accesibles y al final está la nuestra.
  • 7. Planificación de nuestro curso No obstante, si entramos en ella nos avisa de que aún no tiene ninguna lección. ¡Vamos a añadirle alguna! Añadiendo nuestras lecciones Nos vamos al fichero 'data/lesson.csv'. Como en el caso de las unidades, en la primera linea vemos los campos que tiene cada lección: o (1) unit_id: unit_id de la unidad a la que está asociada la lección. o (2) unit_title: Título de la unidad a la que está asociada la lección. o (3) lesson_id: id de la lección. Este id representa también su orden dentro de la unidad, por lo que debe empezar en 1 y ser consecutivo entre las lecciones de una misma unidad. o (4) lesson_title: Título de la lección. o (5) lesson_activity: Si vale 'Yes', indica si la lección tiene o no alguna actividad/ejercicios. Si está en blanco, no tiene. o (6) lesson_activity_name: Si la lección tiene alguna actividad, es su nombre. o (7) lesson_notes: URL a la versión en texto de la lección. o (8) lesson_video_id: ID del video en YouTube de la lección. o (9) lesson_objectives: Objetivos de la lección. En este campo podemos meter todo el código HTML que queramos. En esta imagen, obtenida del repositorio del GCB, podemos ver en que se traduce cada campo:
  • 8. "Mapa" de propiedades de las lecciones Vamos a añadir nuestra nueva lección con los siguientes valores: o unit_id: 7 (es el campo unit_id de nuestra unidad, no el de id) o unit_title: Nuestra nueva unidad o lesson_id: 1 (la primera leccion de la unidad) o lesson_title: Nuestra nueva lección o lesson_activity: Lo dejamos vacio ya que no tendrá ninguna actividad. o lesson_activity_name: Dado qe no no tenemos ninguna actividad, lo dejamos vacío también. o lesson_notes: Lo dejamos vacío por que no añadiremos notas a nuestra lección. o lesson_video_id: 0gSnhdBk-Uo o lesson_objectives: <ul><li>Aprender a montar un MOOC con Google Course Builder</li></ul> (recordad que es código HTML) La línea para pegar al final del fichero sería
  • 9. 7,Nuestra nueva unidad,1,Nuestra nueva lección,,,,0gSnhdBk- Uo,<ul><li>Aprender a montar un MOOC con Google Course Builder</li></ul> Si ahora recargamos la página de nuestro curso y accedemos a nuestra unidad podremos ver nuestra nueva lección creada: Nuestra nueva lección De esta manera podríamos añadir nuestros contenidos al curso. En posteriores posts explicaremos como añadir actividades (ejercicios) asociadas a lecciones y assessments (examenes), así como personalizar más el curso (cambiar colores, etc). Subirlo a la nube Tenemos nuestro curso, con nuestros contenidos y nuestros parámetros pero nos queda una cosa: subirlo a la nube de Google para que todo el mundo pueda aprender con nuestro curso. Para ello primero tenemos que crearnos una aplicación el App Engine (podemos hacerlo con nuestra cuenta de GMail), por lo que nos vamos a https://appengine.google.com/ y clickamos en "Create Application". Ahora, en "Application Identifier", ponemos el identificador de nuestra aplicación (pruebagcb en nuestro caso). El identificador e único entre todas las aplicaciones del App Engine y define la URL desde la que será accesible después. En "Application Title" ponemos el título de nuestra aplicación (no es tan importante como el identificador) y en "Authentication Options" elegimos "Open to all Google Accounts". Estos último es especialmente importante, ya que es necesario para que el GCB funcione.
  • 10. Panel de creación de aplicaciones en AppEngine Una vez creada, nos vamos al fichero 'app.yaml' de nuestro curso y cambiamos el valor del campo 'application' por el identificador de nuestra aplicación (para nosotros, pruebagcb). Por lo tanto, la línea quedaría así: application: pruebagcb Ahora nos vamos a la aplicación que instalamos en nuestro equipo en los primeros pasos, el launcher del App Engine, y elegimos nuestro curso (que ahora estará identificado con el identificador de nuestra aplicación). Pulsamos sobre el botón "Deploy", ponemos nuestras credenciales de GMail y ya está. La aplicación se encargará ahora de subirla a la nube y nos mostrará el progreso en una nueva ventana. Una vez acabe, mostrará la siguiente línea: *** appcfg.py has finished with exit code 0 *** Si ahora vamos a http://<identificador de nuestra aplicación>.appspot.com/, http://pruebagcb.appspot.com/ en nuestro caso, veremos nuestro curso, que ahora sí que está en la nube, y por tanto accesible para cualquier estudiante que quiera aprender con nosotros.