Resistance is Futile

Kaleido para Linux en Ubuntu 10.04

Desafortunadamente la versión alfa de la herramienta Kaleido solo estaba disponible para la plataforma MacOS X, pero siendo esta basada en Processing y desarrollada en Java me di a la tarea de bajar la herramienta y crear una version para Linux, utilizando la distribucion oficial, la distribucion oficial de Processing para Linux y armar una distribucion con estas dos.

La versión oficial de Kaleido viene en un archivo de extension dmg la cual es utilizada en MacOS X para archivos comprimidos o instaladores sencillos, desafortunadamente no hay una utilidad sencilla para abrir estos archivos en Ubuntu, pero afortunadamente encontre una herramienta que permite convertir estos archivos en imagenes iso las cuales si se pueden "montar" en Ubuntu.

Descargar la version para mac de Kaleido :

Para convertir el archivo dmg a iso utilize el DGMExtravtor disponible en http://hem.bredband.net/catacombae/dmgx.html el cual esta escrito y puede instalarse via Java Web Start, luego se selecciona el archivo y se genera el archivo iso.

Para montar la imagen se realizaron los siguientes pasos :

  • Abrir una consola
  • Ir al directorio donde esta el archivo iso
    cd directorio
  • Crear un directorio donde se montara la imagen
    mkdir kaleidomac
  • Montar la imagen
    mount -o loop -t hfsplus kaleido_001.iso

Se descargo la version de Processing para Linux :

Se copiaron los directorios de Kaliedo con las librerias y el theme a la carpeta de Processing y con esto se construyo la distribucion para Linux.

Para descargar la version no oficial 0.0.1 de Kaleido para Linuxvaya a :
http://code.google.com/p/mprocessinglibs/downloads/list

Problemas :

  • Al momento de ejecutar el sketch creado con la version para Linux se congela la pantalla de Ubuntu aunque es posible conectarse al equipo remotamene para apagarlo.
  • Al momento de arrastar y soltar los componentes graficos se lanza la excepcion :
    Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    at processing.app.graph.kGraph.getDropTarget(kGraph.java:172)

Instalacion Java en Ubuntu 10.04

Los paquetes de la distribución oficial de Java han desaparecido de los repositorios con que viene configuradas las distribuciones de Ubuntu 10.04, estos paquetes han sido movidos a el repositorio de Partners el cual debe activarse. Esto debido a que el OpenJDK se ha convertido en el paquete open source de la distribucion de Java, asi que existen dos posibilidades para instalar el JDK, utilizar las versiones open source como el JDK o habilitar el repositorio de partners e instalar la distribucion de Oracle.

Instalacion OpenJDK :

  • Abra una consola
  • Actualice la lista de paquetes
    sudo apt-get update
  • Instalar el OpenJDK
    sudo apt-get install openjdk-6-jdk

Instalaciones Paquetes de Oracle (su-java6-jdk) :

  • Abra una consola
  • Adicionar el repositorio de Partners
    sudo add-apt-repository “deb http://archive.canonical.com/ubuntu lucid partner”
  • Actualice la lista de paquetes
    sudo apt-get update
  • Instalar el JDK
    sudo apt-get install sun-java6-jdk

Instalacion de Glassfish v2.1 en Ubuntu Server 9.04

glassfish_logoA continuacion se realizara la instalacion de Glassfish version 2.1 el Servidor de Aplicaciones J2EE en un servidor Ubuntu 9.04, permitiendo la ejecucion del servicio al momento de iniciar la maquina.

Pasos :

  • Abrir una terminal o conectarse remotamente como administradores del servidor
  • Instalar el Java (es importante instalar la distribucion Java de Sun Microsystems para evitar conflictos)
    sudo apt-get install sun-java6-jdk
  • Descargar el Glassfish version 2.1 para Linux
    https://glassfish.dev.java.net/downloads/v2.1-b60e.html
  • Descargar utilizando wget
    cd /tmp
    wget http://download.java.net/javaee5/v2.1_branch/promoted/Linux/glassfish-installer-v2.1-b60e-linux.jar
  • Crear el usuario bajo el cual se ejecutara el Glassfish, en este caso el usuario se llama glassfish
    sudo adduser --system glassfish
  • Instalar el Glassfish
    sudo -u glassfish java -Xmx256M -jar glassfish-installer-v2.1-b60e-linux.jar
  • Aceptar la licencia
  • Mover el glassfish al directorio de opt u otro directorio donde se quiere tener la instalacion
    sudo mv glassfish /opt
  • Cambiar los permisos del directorio para poder entrar sin ser superusuario
    sudo chgrp -R admin /opt/glassfish/
  • Ir al directorio de Glassfish
    cd /opt/glassfish/
  • Volver ejecutables los scripts de ANT
    sudo chmod -R +x lib/ant/bin/
  • Ejecutar la configuracion
    sudo -u glassfish lib/ant/bin/ant -f setup.xml
  • Iniciar un dominio
    sudo -u glassfish bin/asadmin start-domain domain1
    (esto puede tomar algun tiempo)
  • Abrir un navegador y cargar la pagina :

    http://<servidor>:4848

  • Debe cargar el administrador del Glassfish
  • Para acceder, utilice el usuario admin y la clave adminadmin
  • Para cambiar la clave :
    vaya a Application Server
    pestaña Administrator Password

Creacion de los Scripts para el inicio automatico del Glassfish cuando se enciende la maquina :

  • Crear con un editor el siguiente script, por ejemplo :
    sudo vi /etc/init.d/glassfish
  • Digitar el siguiente contenido :
    #! /bin/sh
    
    GLASSFISHPATH=/opt/glassfish/bin
    
    case "$1" in
    	start)
    		echo "starting glassfish from $GLASSFISHPATH"
    		sudo -u glassfish $GLASSFISHPATH/asadmin start-domain domain1
    	;;
    	restart)
    		$0 stop
    		$0 start
    	;;
    	stop)
    		echo "stopping glassfish from $GLASSFISHPATH"
    		sudo -u glassfish $GLASSFISHPATH/asadmin stop-domain domain1
    	;;
    	*)
    		echo $"usage: $0 {start|stop|restart}"
    		exit 3
    	;;
    esac
  • Darle permisos de ejecucion al script
    sudo chmod a+x /etc/init.d/glassfish
  • Pruebe el script deteniendo el servicio
    sudo /etc/init.d/glassfish stop
  • Reinicie el servicio y compruebe que todo funcione
    sudo /etc/init.d/glassfish start
  • Cree los scripts para el inicio automatico del Glassfish
    sudo update-rc.d glassfish defaults 90 10
  • Ahora el servidor inicia y se detiene junto con la maquina

Esta guia esta basada en su totalidad de la guia en ingles de Installing Glassfish 2 on Ubuntu en TuxTrainig, que me salvo la vida el dia de hoy !!!

Enlaces :

VN:F [1.6.8_931]

Que es Glassfish ?

glassfish_logoEn el mundo del desarrollo de aplicaciones web en Java existen muchas herramientas que permiten crear paginas utilizando JSP (como el popular Tomcat de Apache), pero algunas veces necesitamos ir mas a fondo en la construccion de una aplicacion web y utilizar la version empresarial de Java (J2EE) para construir aplicaciones que respondan a una arquitectura mas especializada y nos encontramos que ya no podemos utilizar un simple servidor de aplicaciones, si no que necesitamos un Servidor de Aplicaciones J2EE, que soporte los componentes para la creacion de aplicaciones web empresariales utilizando los estandares sugeridos dentro del J2EE.

De estos Servidores de Aplicacion para J2EE, existen de todos los tamaños, sabores y colores; pero el soportado oficialmente por Sun Microsystem se llama Glassfish el cual viene en una version comercial llamada el Sun GlassFish Enterprise Server y en una version de codigo abierto llamada simplemente Glassfish, la cual posee dos licencias la CDDL y el GPL.

Asi que Glassfish es el servidor de aplicaciones para Java en su version J2EE, que permite la creacion de aplicaciones empresariales con componentes web, transaccionales y de persistencia.

Enlaces :


Maratón Nacional de Programación ACIS / REDIS

acis_logoLa Maraton Nacional de Programacion ACIS / REDIS es una maraton de programacion a nivel nacional que se lleva a cabo en el segundo semestre del año (tipicamente en los meses de septiembre y octubre), esta maraton esta organizada por la Asociacion Colombiana de Ingenieros de Sistemas y la Red de Decanos y Directores de Sistemas y sirve de clasificacion a la Competencia Internacional Inter Universidades de la ACM.

Para competir en esta maraton se deben tener encuenta varios requisitos :

  1. Ser estudiante universitario
  2. Tener una carga académica de medio tiempo o mas.
  3. Haber comenzado la carrera por lo menos en los 3 años anteriores
    (estudiantes de 1 a 6 semestre)
  4. Tener menos de 23 años al momento de la realización de la maratón
  5. No haber participado mas de cinco veces en la maratón
  6. Solo se puede participar por una institucion durante el año
  7. No haber pariticipado en dos maratones mundiales

Para participar se deben crear equipos de tres estudiantes que cumplan los requisitos anteriores, cada equipo tiene un entrenador (Coach) que es el encargado de la inscripcion de los estudiantes en el sistema de registro de la Maraton de ACM y es el representante del grupo ante la organizacion. El Coach generalmente es un docente de la universidad a la cual pertenecen los estudiantes y ademas de registrar los equipos, debe asegurarse que cumplen los requisitos para la participacion, acompañar al equipo en la prueba durante la cual el coach presentara su equipo completo para su registro, los acompañara durante el Calentamiento (Warm Up) y realizara los reclamos despues de finalizar la maraton si existen. Las universidades pueden registrar un maximo de tres equipos, los cuales pueden tener el mismo Coach y enviara a ACIS una carta en la que avala la participacion de los equipos, como tambien se compromete a pagar el costo de la inscripcion a la maraton antes de que esta se realice. Para la realizacion de la maraton la organizacion tiene varias sedes a nivel nacional, los equipos deben registrarse en la sede mas cercana geograficamente, tipicamente las sedes son : Bogota, Bucaramanga, Cali, Cartagena, Medellin y Manizales

El dia de la maraton el coach debe presentarse con su equipo a las 8am para su registro, la entrega de identificaciones y camisetas que el coach y los miembros del equipo deben traer durante el transcurso de la maraton. Despues del registro de todos los equipos se toma un refrigerio, para pasar al Warm Up durante el cual a los equipos se les asigna el puesto de trabajo donde previamente se han instalado los ambientes de desarrollo (C,C++,Java) y el cliente PC2 software que permite probar las soluciones a los problemas, enviar las soluciones al sistema para ser evaluadas, realizar consultas al jurado durante la prueba. Durante el calentamiento se entregan dos problemas que los equipos deben resolver, para identificar problemas con las herramientas de desarrollo y probar el correcto funcionamiento del software para enviar las soluciones (durante este calentamiento el Coach puede estar presente), al final del calentamiento se pasa a un almuerzo ligero antes de la competencia.

La competencia generalmente comienza a la 1 de la tarde y tiene una duracion de 5 horas, se entregan los enunciados de los problemas los cuales describen el problema que debe ser solucionado, los nombres de los archivos que se deben crear, las entradas suministradas y las salidas (estos enunciados estan en Ingles, por lo cual es importante que los integrantes del equipo tengan buen conocimiento del idioma), cada equipo es responsable de dar solucion a los problemas utilizando los ambientes de desarrollo, libros, codigo impreso y hojas (es recomendable llevar diccionario ingles para los que no manejan el idioma). La estrategia de solucion de los problemas es responsabilidad de cada equipo (se recomienda antes de ir a la maraton realizar simulacros en las universidades).

A medida que los equipos van solucionando un problema, se envia el archivo fuente al PC2el cual evaluara la solucion, verificando el programa con casos de prueba y verificara que la solucion pueda ser compilada, no tenga errores de sintaxis, se ejecute en menos del tiempo exigido y arroje los resultados esperados, despues de esta evaluacion se puede consultar el sistema que indicara si fue satisfactorio o sucedio algun error, si es satisfactorio se colocara un globo del color asignado al problema sobre el computador que tiene asignado el equipo, de esta forma los otros equipos pueden saber quienes y que problemas se han solucionado. Adicionalmente existe una pagina web que puede ser vista por los equipos que reporta el estado de todos los equipos a nivel nacional, con el numero de intentos, el tiempo y los problemas que se han desarrollado. Faltando una hora para terminar la maraton, la pagina no se actualiza mas y se deben esperar los resultados finales, unos dias despues (por lo menos tres dias) para ver las posiciones finales de los equipos. Al finalizar la maraton los equipos pueden de nuevo hablar con el Coach y transmitirles las quejas que se tengan, las cuales deben ser reportadas por el Coach al Jurado Local.

Por cada sede se selecciona una representacion que participara en la maraton nacional la cual funciona de la misma manera y se va clasificando de esta manera hasta llegar a la mundial.

Notas :

  • Los participantes no pueden comunicarse con equipos diferentes al suyo durante la competencia.
  • El Coach debe registrar los equipos antes de la maraton, suministrado el nombre del equipo y los nombres y correos de los integrantes.
  • El Coach no participa en el concurso, es el representante del grupo ante la organizacion.
  • No se pueden ingresar telefonos moviles, memorias, dispositivos de almacenamiento o equipos electronicos cuando se desarrolla la maraton.
  • Los equipos deben tratar de desarrollar programas que den soluciones a los enunciados de los problemas, de la manera mas rapida, teniendo en cuenta que el programa no se puede demorar mas de lo estipulado.
  • Se puede trabajar en lenguaje C,C++ o Java

Mas adelante estaremos hablando de los tipos de problemas que se deben resolver en esta maraton.

Enlaces :


Page 1 of 612345...Last »
Powered by WordPress | Designed by Elegant Themes