Estado actual

Ver http://estadisticas.slec.net/ejemplos.

Antecedentes

Nuestro servicio fue montado sobre hb-fuweb, software hecho por Alejandro Forero, los datos estaban soportados por PostgreSQL y tenemos backup de la información para la migración a cualquier sistema que deseemos montar o adaptar. Fue funcional durante 3 años y no tuvo inconvenientes.

Futuro

Estamos planeando emplear nuestro servidor para montar sobre Zope y Postgresql la información para que los miembros puedan adicionar información y adicionalmente todo el mundo pueda hacer consultas a la misma. Aprovechando muchas consultas, información, el MER, para extenderlo de acuerdo a nuevas posibles necesidades.

Plan de Acción

Las personas que han mostrado interés y colaboran activamente son :

Instalación de paquetes

Nuestro servidor ya tiene instalado Zope y Postgresql, gracias a Vladimir Támara. Las reglas de tunneling están hechas y zope es visible a través de http://zope.slec.net, y estamos desarrollando directamente sobre http://zope.slec.net/slec/ejemplos/instituciones.

Creación del modelo Entidad Relación

El backup anterior lo exportamos hacia un modelo editable en dia, lo extendimos y exportamos hacia Postgresql, y el resultado fue el siguiente:

http://estadisticas.slec.net/desarrollo/nuevastats.png

Migración de datos

Si ha trabajado con postgresql o con gawk su ayuda es bienvenida. En realidad si sabe usar mysql, también puede colaborar.

En este momento tenemos que migrar los datos de la versión antigua de la base de datos a la nueva versión de bases de datos.

Inserción de datos

 BEGIN;
 -- Usuarios
 INSERT INTO contacts (email,name,id_portal) VALUES ('vtamara@pasosdejesus.org','Vladimir Támara','vtamara');
 INSERT INTO contacts (email,name,id_portal) VALUES ('igor@tamarapatino.org','Igor Támara','ikks');
 INSERT INTO contacts (email,name,id_portal) VALUES ('reinaldodu@fastmail.com','Reinaldo Duque','reinaldodu');
 INSERT INTO contacts (email,name,id_portal) VALUES ('jcifuentes@para-rayos.cl','José Cifuentes Riquelme','pitux');

 -- Países
 INSERT INTO countries (name) VALUES ('Colombia');

 -- Departamentos
 INSERT INTO states (idcountry,name) SELECT id,'San Andrés' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Guajira' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Putumayo' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Amazonas' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Nariño' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Meta' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Cundinamarca' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Boyacá' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Antioquia' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Atlántico' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Córdoba' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Cesar' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Bolívar' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Sucre' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Caldas' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Risaralda' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Quindio' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Arauca' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Vichada' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Guainía' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Tolima' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Huila' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Caquetá' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Guaviare' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Casanare' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Norte de Santander' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Cauca' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Valle del Cauca' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Santander' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Chocó' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Vaupés' FROM countries WHERE name='Colombia';
 INSERT INTO states (idcountry,name) SELECT id,'Magdalena' FROM countries WHERE name='Colombia';

 -- Ciudades, pueblos, etc.
 INSERT INTO places(name,idstate) SELECT 'Barranquilla',id FROM states WHERE name='Atlántico';
 INSERT INTO places(name,idstate) SELECT 'Bogotá',id FROM states WHERE name='Cundinamarca';
 INSERT INTO places(name,idstate) SELECT 'Pasto',id FROM states WHERE name='Nariño';
 INSERT INTO places(name,idstate) SELECT 'Zipaquirá',id FROM states WHERE name='Cundinamarca';
 INSERT INTO places(name,idstate) SELECT 'Manizales',id FROM states WHERE name='Caldas';
 INSERT INTO places(name,idstate) SELECT 'Medellín',id FROM states WHERE name='Antioquia';
 INSERT INTO places(name,idstate) SELECT 'Cajicá',id FROM states WHERE name='Cundinamarca';
 INSERT INTO places(name,idstate) SELECT 'Cartago',id FROM states WHERE name='Valle del Cauca';
 INSERT INTO places(name,idstate) SELECT 'Barbosa',id FROM states WHERE name='Santander';
 INSERT INTO places(name,idstate) SELECT 'Bucaramanga',id FROM states WHERE name='Santander';
 INSERT INTO places(name,idstate) SELECT 'Cali',id FROM states WHERE name='Valle del Cauca';
 INSERT INTO places(name,idstate) SELECT 'Anserma',id FROM states WHERE name='Caldas';
 INSERT INTO places(name,idstate) SELECT 'Tunja',id FROM states WHERE name='Boyacá';
 INSERT INTO places(name,idstate) SELECT 'Cajicá',id FROM states WHERE name='Cundinamarca';
 INSERT INTO places(name,idstate) SELECT 'Neiva',id FROM states WHERE name='Huila';
 INSERT INTO places(name,idstate) SELECT 'Leticia',id FROM states WHERE name='Amazonas';
 INSERT INTO places(name,idstate) SELECT 'Cúcuta',id FROM states WHERE name='Norte de Santander';
 INSERT INTO places(name,idstate) SELECT 'Pasto',id FROM states WHERE name='Nariño';
 INSERT INTO places(name,idstate) SELECT 'Turbo',id FROM states WHERE name='Antioquia';
 INSERT INTO places(name,idstate) SELECT 'Ocaña',id FROM states WHERE name='Norte de Santander';
 INSERT INTO places(name,idstate) SELECT 'Pensilvania',id FROM states WHERE name='Caldas';
 INSERT INTO places(name,idstate) SELECT 'Chia',id FROM states WHERE name='Cundinamarca';
 INSERT INTO places(name,idstate) SELECT 'Pereira',id FROM states WHERE name='Risaralda';

 -- Licencias
 INSERT INTO typeslicense (name,description,url,idsubmitter)  SELECT 'Compatible GPL','Se tienen las libertades de distribución, modificación y apertura de código, exige copyleft','http://www.gnu.org',id FROM contacts WHERE id_portal='ikks';
 INSERT INTO typeslicense (name,description,url,idsubmitter)  SELECT 'Compatible BSD','Se tienen las libertades de distribución, modificación y apertura de código, exige el nombramiento de la fuente inicial','http://www.gnu.org',id FROM contacts WHERE id_portal='ikks';
 INSERT INTO typeslicense (name,description,url,idsubmitter)  SELECT 'Dominio Público','Se ofrecen absolutamente todos los permisos para modificación y creación de trabajos derivados, se puede incluso cambiar los términos para cerrar los productos que se han hecho','http://www.primarilypublicdomain.org',id FROM contacts WHERE id_portal='ikks';
 INSERT INTO typeslicense (name,description,url,idsubmitter)  SELECT 'Shareware','No hay código fuente disponible, se ofrece la oportunidad para uso personal','http://es.wikipedia.org/shareware',id FROM contacts WHERE id_portal='ikks';

 -- Tipos de software
 INSERT INTO typessoft (name,description,url,idsubmitter) SELECT 'Sistemas Operativos','Programa principal que permite coordinar la ejecución de programas y administrar los periféricos del computador','http://es.wikipedia.org/sistema_operativo',id FROM contacts WHERE id_portal='ikks';
 INSERT INTO typessoft (name,description,url,idsubmitter) SELECT 'Distribuciones Linux','Sistemas que contienen una distribución de archivos y herramientas para administar programas e instalaciones y que integran al Kernel de Linux','http://es.wikipedia.org/distribuciones_linux',id FROM contacts WHERE id_portal='ikks';
 INSERT INTO typessoft (name,description,url,idsubmitter) SELECT 'Juegos','Entretención y programas para emplear el tiempo de otra forma','http://es.wikipedia.org/sistema_operativo',id FROM contacts WHERE id_portal='ikks';
 INSERT INTO typessoft (name,description,url,idsubmitter) SELECT 'Herramientas para Programación','Utilidades para facilitar el desarrollo y la creación de nuevas herramientas computacionales','http://es.wikipedia.org/herramientas_programacion',id FROM contacts WHERE id_portal='ikks';
 INSERT INTO typessoft (name,description,url,idsubmitter) SELECT 'Educación','Ayuda en la práctica de nuevas habilidades o en el refuerzo de áreas del aprendizaje','http://es.wikipedia.org/programas_educativos',id FROM contacts WHERE id_portal='ikks';
 INSERT INTO typessoft (name,description,url,idsubmitter) SELECT 'Utilidades de Oficina','Herramientas para llevar a cabo tareas como escritura de cartas, hojas d cálculo y tareas en equipo','http://es.wikipedia.org/wiki/utilidades_de_oficina',id FROM contacts WHERE id_portal='ikks';
 INSERT INTO typessoft (name,description,url,idsubmitter) SELECT 'Gráfico','Editores, visualizadores en 2 y 3 dimensiones','http://es.wikipedia.org/wiki/herramientas_gráficas',id FROM contacts WHERE id_portal='ikks';
 INSERT INTO typessoft (name,description,url,idsubmitter) SELECT 'Sonido','Reproductores, editores y herramientas para manipular audio','http://es.wikipedia.org/wiki/programas_de_sonido',id FROM contacts WHERE id_portal='ikks';
 INSERT INTO typessoft (name,description,url,idsubmitter) SELECT 'Servicios','Programas que se mantienen activos esperando solicitudes para hacer de servidores','http://es.wikipedia.org/wiki/cliente_servidor',id FROM contacts WHERE id_portal='ikks';
 INSERT INTO typessoft (name,description,url,idsubmitter,parent) SELECT 'Matemáticas','Heramientas para ayudar en aprendizaje, escritura o cálculos matemáticos','http://es.wikipedia.org/wiki/programas_educativos',c.id,t.id FROM contacts c,typessoft t WHERE id_portal='ikks' AND t.name='Educación';

-- Datos de matemáticaslibre
INSERT INTO typessoft (name,description,url,idsubmitter,parent) SELECT 'Metamedios','Los metamedios son aplicaciones que permiten un trabajo multimedia y constructivista para generar un entorno de aprendizaje dinámico, dentro de las funcionalidades que este tipo de herramientas presentan se puede destacar la posibilidad de crear actividades o pequeñas aplicaciones desde la misma herramienta.','http://es.wikipedia.org/wiki/Herramienta_de_Autor',c.id,t.id FROM contacts c,typessoft t WHERE id_portal='pitux' AND t.name='Educación';

INSERT INTO typessoft (name,description,url,idsubmitter,parent) SELECT 'Procesadores Geométricos','Los procesadores geométricos son aplicaciones que permiten visualizar de forma interactiva diversas construcciones geométricas, esto permite al estudiante tener una experiencia constructivista con su aprendizaje.','http://es.wikipedia.org/wiki/Herramienta_de_Autor',c.id,t.id FROM contacts c,typessoft t WHERE id_portal='pitux' AND t.name='Educación';


 -- Tipos de instituciones
 INSERT INTO typesinstitution(name,description,idsubmitter) SELECT 'Educación Básica','Primaria y Bachillerato',id FROM contacts WHERE id_portal='ikks';
 INSERT INTO typesinstitution(name,description,idsubmitter) SELECT 'No Formal','Instituciones no conducentes a un título profesional, o bachiller',id FROM contacts WHERE id_portal='ikks';
 INSERT INTO typesinstitution(name,description,idsubmitter) SELECT 'Educación Superior','Universidades',id FROM contacts WHERE id_portal='ikks';

 COMMIT;

Construcción de la interfaz

Si tiene gusto por el diseño y puede hacer un css para este servicio, anúncielo en la lista para participar. Aquí no se requieren conocimientos más allá de html y css.

Podemos aprovechar la lógica e interfaz de nuestro sistema anterior, esto acelera la migración en gran medida. Unas guías del Gimnasio Fidel Cano para aprender a vincular Zope y Postgresql.

Estadísticas para usuarios

Se pueden reutilizar todas las consultas que ya hay del sistema anterior para llevar a cabo esta tarea agilmente. Para estas etapas se hizo un minitutorial. Indique su deseo de participar en la lista de correo. En esta etapa se puede reabrir al público.

Interfaz para contribuyentes

Son los miembros de SLEC que pueden ayudar a continuar complementando las estadísticas.

CategoriaAyudas CategoriaSlec

MigrarEstadisticasSlec (última edición 2009-07-15 15:25:50 efectuada por localhost)