Descubriendo OpenLayers

Enero 29, 2010

OpenLayers permite poner un mapa dinámico en cualquier página web.
Puede mostrar bloques de mapas y marcadores desde cualquier fuente, fue desarrollado inicialmente por MetaCarta y se lo dio al público para promover el uso de la información geográfica de todo tipo.
OpenLayers es totalmente gratuito, de código abierto de JavaScript (OpenSource), liberado bajo una licencia tipo BSD.

Qué es OpenLayers?

  • Es un API para construir Mapas en aplicaciones web’s
  • Ejecución desde el Cliente a travez JavaScript
  • Ajax
  • Licencia BSD (Berkeley Software Distribution)
  • v 2.8 estable

Ventajas

  • OpenLayers no es una solicitud. (no requiere instalación)
  • Menor procesamiento en el servidor.
  • Puede ampliar fácilmente el código para su aplicación en particular.
  • Puede utilizar múltiples Servidores de datos.

“Desventajas” mejor dicho Requisitos

  • Usted necesita saber JavaScript, CSS y HTML

¿Dónde se utiliza OpenLayers?

  • Sistema de Inventario de Desastres
  • Plantación de árboles
  • Seguimiento de peces

Para desarrolladores

OpenLayers es una librería JavaScript puro para la visualización de los datos del mapa en la mayoría de navegadores modernos, con ningún servidor de las dependencias lado. OpenLayers implementa un (aún en desarrollo) API de JavaScript para la construcción de web ricas aplicaciones basadas geográfica, similar a la de Google Maps y MSN Virtual Earth API, con una diferencia importante – OpenLayers es el Software Libre, desarrollado por y para la comunidad Open Source software.

esto es una breve introducción a esta potente librería, a continuación otros ejemplos de su uso:

Tambien les dejo la presentación que hice para el equipo de desarrolladores de Dokeos.


Agregale un juego Flash interactivo a tu Chamilo

Enero 24, 2010

What2Learn es una solución de aprendizaje interactiva que propone un sitio web. En este sitio web se puede, de forma muy sencilla, crear juegos Flash interactivos según una serie de bocetos de juego, y luego agregarlos a su portal Chamilo, siguiendo estos pasos muy sencillos:

  1. Crea un juego usando el creador de juegos de What2Learn. Es muy simple, solo se escoge el tipo d ejuego y después se llena los formularios para las preguntas y respuestas.
  2. Cuando prueba el juego acabado, debería ver código embedido (Embed medium, por ejemplo, para tamaño medio de la ventana del juego) en la parte derecha del juego. Selecciónalo y copialo.
  3. Entra a tu portal Chamilo como profesor, entra a uno de tus cursos, a la herramienta de documentos, y crea un nuevo documento
  4. Dale un nombre a tu documento, y en la pantalla de edición del documento, selecciona el icono que dice “Fuente HTML”
  5. Pega tu código ahí, y guarda la página.
  6. Ahora el juego está disponible a través de tu Chamilo!

Lamentablemente, esto no permite recuperar los resultados de los estudiantes (Chamilo no tiene acceso a estos resultados que se pasan a What2Learn) pero si solo se usa como juego de resforzamiento, pues no se necesita nada más! Tampoco soporta carácteres con acentos por ahora, pero estoy seguro que esto se mejorará con el tiempo.

Este artículo se basa en un artículo en Inglés y fue traducido con el objetivo de ayudar a docentes a ampliar su provecho de la plataforma de software libre Chamilo.


Nuestra empresa

Enero 19, 2010

Hola soy Carlos, hace un buen tiempo que los desarrolladores de Dokeos no escribiamos posts en el blog, porque estábamos muy ocupados trabajando sobre la última versión que tiene muchos cambios y novedades y sobre todo está desarrollada en su mayoría por nuestro equipo. Ha ocurrido un suceso muy importante que es un cambio radical en Dokeos, muy pronto Yannick Warnier escribiriá un post explicando lo que ha pasado. Sin embargo antes es intersante que lean esto.

Escribo este post para que conozcan un poco mas sobre nuestra empresa, que fue la sede en Latinoamérica de Dokeos de Bélgica. Fue fundada en Perú en el año 2007 por Yannick Warnier (Ingenierio Certificado Zend PHP 4 y 5) de nacionalidad belga quien hasta el 1er de Enero del 2010 fue el desarrollador principal de esta plataforma. Aparte de eso, Yannick es dueño de una empresa en Bélgica dedicada al desarrollo de sistemas hechos en software libre llamada Beeznest http://www.beeznest.net , es decir aparte de Dokeos desde aquí también dirige su empresa y nosotros trabajamos para él.

Nuestra empresa participó por primera vez en la contribución del código en la versión 1.8.5 con Julio Montoya, primer desarrollador peruano de este sistema, esta versión fue lanzada en Junio del 2008, después del lanzamiento empezó la gran tarea de programar la versión 1.8.6, fue entonces que nos unimos al equipo de desarrolladores: Daniel Perales (Ingenierio Certificado Zend PHP 5), Marco Villegas, Jhon Hinojosa, Ronny Velásquez, Arthur Portugal, Isaac Flores, Christian Fasanando (Ingenierio Certificado Zend PHP 5) y yo. Desde entonces hemos trabajado arduamente en el desarrollo de nuevas funcionalidades, correción de bugs, mejoras en el diseño, etc. de lo que podemos mencionar: las evaluaciones para calificar los foros y las tareas, el wiki, el glosario, las notas personlaes, la red social, el envio de mensajes las mejoras en el editor interno (fck editor), las mejoras en lecciones y muchas cosas mas. A comparación de otros paises Perú tuvo una gran participación en el código.

Por otro lado Ivan Tcholakov, de Bulgaria hasta ahora sigue haciendo grandes contribuciones y correcciones quizas algunas invisibles,  pero indispensables como por ejemplo el soporte integral de la codificación de carácteres UTF-8, en España nuestro amigo Juan Carlos Raña (creador del wiki), en Bélgica y Francia, también participaron desarrolladores como nuestro amigo Patrick Cool y otros como Noël Dieschburg, Ludovic Gasc, Jan Derriks y Arnaud Ligot. Es gracias a estas personas que ustedes pueden disfrutar de una plataforma de e-learning 100% libre fácil e intuitiva que apoya a la educación con el uso de tecnologías de la información.

Si ustedes estan al día en Dokeos, deben usar la versión 1.8.6.1, que es la versión actual, esta última se desarrollo entre Junio y Agosto de este año, donde se añadieron algunas funcionalidades extra sobre todo para la administración de la plataforma, estas son las estadísticas de las contribuciones para esta versión.

Sin embargo nosotros no solo nos hemos dedicado al desarrollo de Dokeos, pues al ser una empresa debe generar ingresos para mantenerse: por un lado Michela Mosquera presidenta de la Comunidad de Dokeos en Perú CODOPERU, ha dado capacitaciones y conferencias sobre el uso del e-learning como apoyo para la educación, tambien es responsable de las ventas de las soluciones Dokeos Light de las cuales hay muchas en Latinoamérica, tambien Ricardo Rodriguez trabaja en las pruebas automatizadas y testeo de los sistemas junto con Arthur, Franco Cedillo aportó también en los desarrollos de otros sistemas que mecionare después, todos los mecionados anteriormente somos de la carrera de ingeniería informática, sin embargo un miembro del equipo muy importante para levantar la calidad y alto performance en la presentación de nuestros productos es Luis Rodriguez, quien es diseñador gráfico y web.

¿Quieres saber en que otros proyectos trabaja BeezNest Latino?

Ronny y Jhon han trabajado mucho en otro proyecto de Software libre orientado al comercio electrónico, llamado OpenC2C que es un sistema web Open Source para el comercio entre los usuarios, rompe con el esquema de venta unidireccional propio de una tienda virtual, similar a oscommerce pero con una visión mas abierta, algo asi como lo que vemos en mercado libre. Este proyecto aun esta en desarrollo sin embargo existe un sitio web que lo ha puesto en marcha y justamenete por la relación con Dokeos, es una tienda de cursos, llamado Get-ecourse el primer sistema que usa openc2c como plataforma, pueden acceder desde aqui http://www.get-e-course.com/ es mas pueden suscribirse y usarlo, es una plataforma libre igual que campus.dokeos, en este sistema se venden cursos, es decir, yo tengo un curso de Matemática en Dokeos (o en otra plataforma) y mi curso es muy consiso y completo, tiene documentos, ejercicios, lecciones, etc, lo subo a get-e-course y lo pongo en venta; en otra parte del mundo hay otro profesor que tambien dicta el curso de matemática, pero solo de forma presencial y le han pedido que dicte su curso de forma virtual y a este profesor le da flojera crear un curso, entonces simplemente lo compra, lo importa en su sistema e-learning y lo dicta, asi estamos haciendo todo Open Customer to Customer. Para el desarrollo de este sistema se ha usado el framework de PHP Akelos. Open C2C será el segundo producto que ofreceremos asi como Dokeos, pero bajo la dirección de Beeznest. A diferencia de Dokeos, OpenC2C es 100% peruano, pues no hay contribuidores extranjeros para este sistema aparte de Yannick, y será un proyecto de gran uso a nivel mundial creado en el Perú.

Beeznest, obtuvo una licitación en Bélgica para el desarrollo de un sistema para la gestión de árboles que permite gestionar los espacios, áreas verdes y llevar un control total de los arboles desde su crecimiento, sus enfermedades hasta el costo de mantenimiento que representan. La empresa que usa el sistema se llama Aliwen, por eso el software se llama ATM Aliewn Tree Manager. ATM  (usa Akelos) también fue desarrollado por el equipo de Latinoamérica principalmente por Ronny y Jhon, sin embargo tambien han aportado mucho Julio, Isaac y Christian.

Espero que les haya intersado saber un poco mas de nosotros, pues estamos muy gustosos de haber iniciado una comunicación mas directa con los usuarios. Sigan leyendo nuestros posts y coméntenlos, que sus opiniones son importantes para nosotros.

Finalmente, nos encanta poder informarles que por razones recientes de diferencias de opinión con nuestra empresa socia en Bélgica sobre nuestra solución común de e-learning, hemos decidido iniciar un nuevo proyecto y lanzar una continuación más profesional y participativa de este sistema, bajo nuestro nuevo nombre: BeezNest Latino. Si desea saber más sobre la empresa, siga el enlace a la derecha.


Chamilo

Enero 19, 2010

Muy pronto vamos a escribir un post explicando lo que ha sucedido, por ahora pueden visitar

www.chamilo.org


Install Oracle Express and PHP OCI8 on Ubuntu 9.10

Enero 14, 2010

Copiado del post de Daniel escrito en el marco de sus proyectos aqui : http://danielphp.wordpress.com/install-oracle-express-and-php-oci8-on-ubuntu-9-10/

(Requirements: PHP 5 and Apache 2 already installed)

Go to Oracle website, and download the following files: (You are gonna need to register an account with Oracle to be able to download the files, just do it, its free)

  1. oracle-xe-universal_10.2.0.1-1.0_i386.deb
  2. Oracle instant client basic 11.2.0.1, zip package
  3. Oracle instant client sdk 11.2.0.1, zip package

Install the first file with just double click. then go to console and run this command to configure it:

/etc/init.d/oracle-xe configure

you will see something like this:

Specify the HTTP port that will be used for Oracle Application Express [8080]:
Specify a port that will be used for the database listener [1521]:
/*
Specify a password to be used for database accounts.  Note that the same
password will be used for SYS and SYSTEM.  Oracle recommends the use of
different passwords for each database account.  This can be done after
initial configuration:
*/
Confirm the password:   (* make sure you remember this password *)

Do you want Oracle Database 10g Express Edition to be started on boot (y/n) [y]: y

At this point you can open Firefox,enter http://127.0.0.1:8080/apex, login as ’system’ with the ‘password’ you created during the install, and you should see the XE homepage.
Now put the other 2 files in /tmp. Then do the following:

cd /tmp/
unzip oracle-instantclient-basic-11.2.0.1.i386.zip
mv instantclient_11_2 /opt/
unzip oracle-instantclient-devel-11.2.0.1.i386.zip
mv instantclient_11_2/sdk /opt/instantclient_11_2/
export ORACLE_HOME=/opt/instantclient_11_2/
ln -s /opt/instantclient_11_2/libclntsh.so.11.1 /opt/instantclient_11_2//libclntsh.so
ln -s /opt/instantclient_11_2/libocci.so.11.1 /opt/instantclient_11_2//libocci.so
ln -s /opt/instantclient_11_2/ /opt/instantclient_11_2/lib

then install the packages php-dev and php-pear, and go to console and type the following:

pecl download  OCI8
tar xzvf oci8-1.3.5.tgz

cd ../oci8-1.3.5
phpize
./configure --with-oci8=instantclient,/opt/instantclient_11_2/
make
sudo make install

At that point, the libraries have been built but are not used by PHP. In this extent, you must add it at the bottom of php.ini files “/etc/php5/apache2/php.ini” (and if you got CLI installed also add to this file “/etc/php5/cli/php.ini”):

extension = oci8.so

Edit your /etc/bash.bashrc file to include the lines:

ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_HOME
export ORACLE_SID=XE

export PATH

Now just do a logout and login (this will restart the env variables, if you are advanced user then just do it your way). restart apache.Finally try this php example:

$ora_conn = oci_connect('system',$your_password,'127.0.0.1/XE');
// error handling
if (!$ora_conn){
// do the following if it fails
$ora_conn_erno = oci_error();
echo ($ora_conn_erno['message']."\n");
oci_close($ora_conn);
} else {
// if it doesn't fail it will proceed with the rest of the script
echo "Connection Succesful\n";
oci_close($ora_conn);
}

If it shows “Connection Succesful” then you are done. Congratulations.

Additional Notes:

  1. this was tested with PHP 5.2.10 ,Apache/2.2.12 and Ubuntu 9.10 Karmic Koala
  2. check that the ORACLE_HOME path exist just in case you have problems.
  3. if the version of instantclient you download is different to 11.2, just change every reference to 11_2 for your new version.

Feliz Navidad y un Próspero Año Nuevo 2010

Diciembre 31, 2009

No quisiéramos dejar pasar este 2009 sin felicitar a usted y a su equipo por el arduo e importante trabajo que hacen. Por ello, le adjuntamos a la presente una tarjeta con los deseos de todo el equipo de Dokeos Latinoamérica y BeezNest Latino.

En este sentido agradecemos por seguir confiando en nuestros servicios, y que pensamos mejorar, incrementar, personalizar para el 2010, a fin de seguir promoviendo el crecimiento de sus servicios y satisfacción. Estamos orgullosos de haber podido, gracias a ustedes, lograr muchos objetivos importantes, de los cuales queremos resaltar algunos:

  • Entrega de solución completa de aula virtual al Gobierno Peruano (Unidad de Capacitación y Gestión – Ministerio de la Educación)
  • Desarrollo del primer sistema de red social integrado a un sistema e-learning (dokeos 1.8.6 y Universidad San Ignacio de Loyola)
  • Combinado Dokeos con Oracle (Universidad Wiener)
  • Desarrollo de sitio web para campaña de marketing viral de Nokia Perú (http://www.elfenomenox.com)
  • Desarrollo de contador de tiempo dinámico en los ejercicios de Dokeos (1.8.6.2)
  • Evento profesional de e-learning de 2 días con 250 asistentes de 5 países (http://www.dokuda.org)
  • Más de 100 horas de capacitaciones sobre e-learning, desarrollo y administración de sistemas
  • Posicionamiento como empresa de nivel más experto en desarrollos web en PHP a nivel nacional
  • Contribuciones activas a 8 soluciones de software libre (OpenC2C, Akelos, Dokeos, Drupal, code_swarm, Xinc, OpenERP, PHP, BNPass, …)
  • Participado a más de 40 eventos profesionales y/o de software libre como ponentes u organizadores

Agradeciendo su amable y gentil atención a la presente, le deseo un Feliz y Venturoso Año 2010.

Atentamente,

Equipo de Dokeos Latinoamérica y BeezNest Latino


Preguntas y respuestas del Test Zend

Diciembre 15, 2009

1. Cual de las siguientes no es un código de PHP ?

A. $_10

B. ${“MyVar”}

C. &$something

D. $10_somethings

E. $aVaR

Resp: $10_somethings

2. Cual es la diferencia entre print() y echo()?

A. print () puede utilizarse como parte de una expresión, mientras que echo () no puede

B. echo () puede utilizarse como parte de una expresión, mientras que print () no puede

C. echo () puede ser utilizado en la versión CLI de PHP, mientras que print () no puede

D. print () puede ser utilizado en la versión CLI de PHP, mientras que echo () no puede

E. No hay ninguna diferencia: ambas funciones mostrarán algunos de texto!

Resp: No hay ninguna diferencia: ambas funciones mostrarán algunos de texto

3. El operador ____ devuelve verdadero si cualquiera de sus operaciones se puede evaluar como verdadera, pero no ambos.

Resp: XOR

4.¿Cuál es el valor que se muestra cuando se ejecuta lo siguiente?

Suponga que el código fue ejecutado utilizando la siguiente URL:  testscript.php? c = 25

<?php

function process($c, $d = 25){

global $e;

$retval = $c + $d – $_GET['c'] – $e;

return $retval;

}

$e = 10;

echo process(5);

?>

A. -5

B. 10

C. 5

D. 0

Resp: -5

5. ¿Se puede desactivar todos los informes de error dentro de un script PHP con una llamada a una función?

A. SI

B. No

Resp: No


Curso de certificación Zend PHP, Lima

Diciembre 15, 2009

YA SACASTE TU CERTIFICACIÓN PHP5?

Conviértate en un Ingeniero Certificado Zend

Curso de certificación Zend

¿Que es la certificación Zend?

Patrocinado por Zend y desarrollado de acuerdo a las normas de la American National Standards Institute (ANSI), los programas de la certificación Zend están diseñados para conocer su nivel de conocimientos de PHP o de Zend Framework. Hay más de 2.000 ingenieros Zend certificados en el mundo pero solo 5 en Perú. ¿Qué esperas para ser uno de ellos?

La certificación Zend establece el estándar de la industria para los desarrolladores PHP, los reconoce como expertos y les otorga distinción como desarrolladores de PHP 5. Usted debe conocer las tecnologías que usa un desarrollador de PHP en su día a día de trabajo, incluidas las bases de datos y expresiones regulares. En cuanto a este último, se refiere a la atención que se centra en las expresiones regulares de Perl, mientras que para las bases de datos se centran en el estándar SQL 92, en lugar de cualquier aplicación.

¿Para que llevar un curso de certificación Zend?

La capacitación para esta certificación es la manera perfecta de practicar sus conocimientos de PHP y asegurarse de que está listo para el examen Engineer Certified Zend. El curso para la certificación incluye muchos ejemplos y ejercicios que equivalen a  los requisitos del examen.

¿Qué puedes lograr con tu certificación Zend PHP?

Diferenciarte entre los competidores en la búsqueda de un nuevo puesto de trabajo e incrementar el valor de tu sueldo. Convertirte en un experto certificado trae muchos beneficios para ti, tu empresa y sus clientes. La certificación Zend demuestra que el equipo de desarrollo sigue los pasos de la última tecnología PHP.

Mayor información de las becas, programa, costos, lugar calendario: http://www.dokeoslatino.com/cursos/php/index.html


Realidad Aumentada

Diciembre 13, 2009

Hola Mi nombre es Luis Rodriguez y soy Diseñador web, trabajo para Dokeos, pero en mi tiempo libre suelo investigar sobre temas que me llaman la atención o a los cuales noto una tendencia creciente a ser parte de tecnologías a usar en un futuro o quizas ya en un presente. He estado investigando sobre el tema de Realidad aumentada, si no saben que es aquí dejo algunos videos de lo que se puede hacer con ello :

Campaña Era del hielo:(RECOMENDADO)

Campaña AXE :

Campaña Fiat :

http://www.fiat500masterpiece.com/site/index.html

Resumiré diciendo que lo que hace es básicamente que podamos interactuar con una realidad que no existe, pero que podemos crear y reproducir en un mundo virtual.

Para iniciarse en realizar proyectos en Realidad Aumentada debemos primero considerar que existen 2 librerías a utilizar :

La diferencia entre una y otra es que la primera esta basada hasta donde tengo entendido en c++ y que la segunda que es la que utilizo esta basada en action, flash, papervision y otras maravillas más que nos complican la vida a nosotros los pobres diseñadores :) .

Pero bien empecemos :

1- Primero debemos instalar el el software gratuito TortoiseSVN, que nos servirá para descargar la librería Flartoolkit, después de haber descargado e instalado la tortuguita debemos ir al siguiente paso.

2- Creamos una carpeta a la que llamaremos FLARToolKit, dentro de ella crearemos una carpeta que se llamará SVN.

3 – Haremos click derecho sobre la carpeta SVN y escogemos SVN Checkout, acceso que se ha creado tras la instalación. Ponemos en el cuadro URL of Repository lo siguiente:

http://www.libspark.org/svn/as3/FLARToolKit/trunk/

Le damos “OK” para que descargue la librería.

4-Luego de la descarga buscaremos la carpeta Starter-Kit, veremos 3 cosas importantes:

a) Dentro de la carpeta DATA encontraremos nuestro Marker en formato pdf que debemos imprimir.
b) Dentro de la carpeta MODEL encontraremos nuestro archivo .dae (que es la animación 3d)
c) fuera de estas carpetas ubicaremos el archivo Earth.swf

5- como mencione debemos imprimir nuestro marker que se encuentra dentro de la carpeta DATA y lleva
el nombre de flarlogo-marker.pdf

6- ejecutamos nuestro archivo Earth.swf, llamará a nuestra camara, pedira permitir el acceso a la cámara
le decimos que si.

7- mostramos en la cámara la hoja impresa con nuestro marker y verán la animación de un mundo girando.

He dejado un pequeño ejemplo en el siguiente LINK que estoy trabajando, modificando y metiendole mano
para poder conocerlo y hacer cosas bonitas con el.

Les recomiendo visitar http://www.flartoolkitdocs.org hay mucha documentación al respecto


Reunión conjunta PHP Perú y Drupal Perú, este Sábado 12/12/2009

Diciembre 10, 2009

Este Sábado 12/12 a las 3pm, las comunidades de PHP Perú y Drupal Perú se reunirán en nuestras oficinas para hablar de Xapian, SimpleTest y el tema Elements de Drupal 6.

Más info en http://groups.drupal.org/node/35790

En la mañana, estaremos en el evento de Unacinux en el Callao: http://csl.unac.edu.pe/cronograma.php, para hablar de software libre exitoso en la educación peruana (Drupal, OpenERP, KnowledgeTree, PMB, OpenC2C, …)