Jan 18

Se abre curso en la Peer 2 Peer University acerca de la creación de mundos virtuales dedicados a la colaboración y a la enseñanza a través del kit de desarrollo Open Wonderland. El curso se centrara en como crear contenidos utilizando el kit y como cambiar el kit en si mismo.

El curso esta orientado a desarrolladores con dos años de experiencia en Java, que estén trabajando en un ambiente comercial, colegio o universidad, no es necesario tener conocimientos previos en Open Wonderland para acceder al curso, simplemente tener las ganas de trabajar solo o en grupo con los recursos disponibles en la web. Los estudiantes deben tener previo conocimiento en el uso de herramientas como subversion, ant y sentirse cómodos trabajando desde linea de comando.

El curso es gratuito y se dicta a través de la P2PU (Peer 2 Peer University) organización si animo de lucro que se encarga de facilitar la creación de cursos colaborativos siguiendo la idea de pares donde no existe un experto en el tema, si no que todos aprenden de todos guiados por un organizador del curso. Al terminar el curso no se expide ningún certificado pero el conocimiento adquirido y el intercambio de experiencias e informacion con los miembros de la comunidad de Open Wonderland en invaluable.

El facilitador del curso es Jose Dominguez conocido también como Josmas Flores, quien se desempeña como investigador en Trinty Doublin en Irlanda, ha sido un miembro de la comunidad desde hace mucho tiempo y ha colaborado en los foros y reuniones de desarrollo lo que lo convierte en un conocedor de la plataforma quien se ha embarcado en la creación del curso y la conformación de grupos de estudio alrededor de la creación de mundos virtuales.

El plazo para la inscripción es el 19 de Enero de 2011, para la inscripción se debe presentar una pequeña tarea que consiste en el montaje del servidor desde código fuente, así como la instalación del modulo de Beanshell disponible en los repositorios. Una vez se haya realizado la tarea se debe crear en un blog una entrada con la experiencia en el desarrollo de la tarea e incluir una imagen donde se pueda observar el modulo en funcionamiento.

Enlaces :

Tagged with:



En January 18 de 2011, Marlon J. Manrique escribió acerca de Curso de Open Wonderland en P2PU.
Dec 23

Desde la llegada de los Generics en el año 2004 con la versión 5 de Java, utilizar las colecciones ha evitado la conversión de tipos tan utilizada en versiones anteriores, pero la declaracion de estas mismas colecciones parece redundante, ejemplo :

ArrayList<String> lista = new ArrayList<String>();
TreeMap<String,ArrayList<String>>  tabla = new TreeMap<String,ArrayList<String>>();

En el ejemplo anterior estamos declarando una lista de cadenas y en el segundo un mapa que contiene una llave cadena y que mapea a una lista de cadenas.  El uso de Generics siempre ha creado construcciones del lenguaje muy extrañas, a veces poco entendibles para los que apenas comienzan con la programación en Java.

La versión 7 del lenguaje de programación Java no mejora la declaración de instancias usando generics si no que evita duplicar de nuevo la definición del tipo al utilizar el diamante "<>" para especificar que se infieren los tipos utilizados en la declaración :

ArrayList<String> lista = new ArrayList<>();
 TreeMap<String,ArrayList<String>>  tabla = new TreeMap<>();

De esta forma se evita repetir la declaración de los tipos de nuevo, esta inferencia tambien se presenta de otras formas pero esta es la mas usual.

Enlaces :

Tagged with:



En December 23 de 2010, Marlon J. Manrique escribió acerca de Nuevo en Java 7, Diamantes.
Dec 22

Algunos desarrolladores Java se habían estado preguntando por que no existían literales binarios si Java desde su nacimiento soportaba hexadecimal 0xCAFE, Octal 012, Decimal 1234, entonces que pasaba con los binarios ? era dificil de implementar ? esta característica seria muy util para no tener que hacer la conversión a decimal o hexadecimal cuando se esta escribiendo una mascara de bits.

Es así como para la versión 7 del lenguaje de programación Java ahora es posible escribir los numeros en binario directamente en el codigo, ejemplo :

int mascara = 0B10; // El 2 en binario
int mascara = 0b10; // Tambien en minuscula
int mascara = 0B0001_0010; // Con separadores

Enlaces :

Tagged with:



En December 22 de 2010, Marlon J. Manrique escribió acerca de Nuevo en Java 7, Literales Binarios.
Dec 21

Una de las nuevas caracteristicas nuevas del lenguaje de programación Java en su versión 7 es la posibilidad de separar los dígitos de un numero con guion bajo sin afectar el valor del numero, esto según la especificación se utiliza para facilitar la lectura de los números a los desarrolladores, por ejemplo si tenemos números de teléfono o tarjetas de crédito los veríamos así :

long tarjetaCredito = 1234567890123456L;
long numeroTelefonico = 57688123456L;

Con la nueva especificacion podemos escribir los numeros utilizando el underscore como separador :

long tarjetaCredito = 1234_5678_9012_3456L;
long numeroTelefonico = 57_6_8812345L;

Permitiendo al desarrollador un mejor lectura del codigo, pero sin afectar el contenido del numero, por ejemplo al imprimir el numero se visualiza este sin separadores.

Enlaces :

Tagged with:



En December 21 de 2010, Marlon J. Manrique escribió acerca de Nuevo en Java 7, Numero con Separador.
Jun 07

Hace poco buscando información sobre lenguajes de programación visuales para la enseñanza de programación, me tope de nuevo con Scratch : un lenguaje de programación que implementa un editor visual para ir componiendo el código, si, si, el código; una característica de este lenguaje es que no es un lenguaje de cajitas, donde cada cajita esconde una gran cantidad de funciones, es un lenguaje que permite componer visualmente el algoritmo a punta de instrucciones que se arrastran y sueltan y que como piezas de rompecabezas se van uniendo para conformar el programa, tal vez es por esta caracteristica que la herramienta es tan diferente a otros lenguajes de programacion.

Scratch en Ubuntu 10.04

Hoy me di a la tarea de hacer la instalación en mi maquina de escritorio con Ubuntu 10.04 :

  • Descargar la ultima versión para Ubuntu, disponible en el sitio web :
    http://info.scratch.mit.edu/Scratch_1.4_Download
  • Para descargar la versión 1.4.0.1 haga lo siguiente
    Abrir una consola y ejecutar el comando :
    wget https://launchpad.net/~scratch/+archive/ppa/+files/scratch_1.4.0.1-0ubuntu5_i386.deb
  • Instalar el paquete desde linea de comando :
    dpkg -i scratch_1.4.0.1-0ubuntu5_i386.deb
  • Ejecutar el programa
    scratch

También podemos ejecutar el programa desde el menu Applications -> Programming -> Scratch

Tagged with:



En June 7 de 2010, Marlon J. Manrique escribió acerca de Instalando Scratch en Ubuntu 10.04.
May 02

resin_logoExiste en el mercado un sin numero de servidores de aplicaciones basados en Java, cada gran empresa tiene el suyo propio y la comunidad del software libre también cuenta con varios, van desde grandes, pequeños, portables, monolíticos. Entre la lista podemos encontrar el JBoss, el Oracle Containers for Java, el WebObjects de Apple, el Sun Java System Application Server, el Tomcat de Apache, el GlassFish AS y el WebSphere AS.

En esta misma lista se puede encontrar el Resin de la empresa Caucho Technology (nombres muy peculiares), pero que hace de diferente a este servidor de los demás ? Al igual que sus competidores incluye soporte para características como JSP/servlets, XML/XSL y EJB/CMP; Resin es un servidor de aplicaciones de solo 10MB de tamaño, con un excelente desempeño, con una configuración sencilla y fácil de ejecutar y administrar (cosa que otros servidores de aplicación tienen), pero la diferencia radica en que es capas de ejecutar PHP, si, si, si, asi como suena; gracias a Quercus una implementacion del lenguaje PHP5 desarrollada totalmente en Java que permite a este servidor ejecutar aplicaciones web implementadas en este lenguaje tan popular en el desarrollo de aplicaciones web, tanto asi que este pequeño servidor es capas de alojar aplicaciones tan populares como Wordpress y MediaWiki.

Quercus (otro proyecto de la empresa Caucho Technology) implementa en 100% Java el lenguaje PHP en su version 5, dando soporte a las caracteristicas orientadas a objetos agregadas al lenguaje, como tambien implementa gran cantidad de funciones propias del lenguaje y extensiones, ademas de permitir la comunicacion directa con librerias desarrolladas en Java y la posibilidad de implementar nuevas funciones utilizando clases Java. Este producto es usado en el servidor de aplicaciones Resin para dar soporte a aplicaciones PHP, esta caracteristica tambien ha sido utilizada en otros servidores de aplicacion como el JBoss, el WebSphere AS y el GlassFish para dar soporte directo a las aplicaciones PHP sin necesidad de instalar software adicional como un servidor Apache y la implementacion nativa de PHP para cada plataforma.

Resin es un interesante servidor de Aplicaciones Java que soporta PHP a traves de Quercus permitiendo ejecutar aplicaciones web basadas en Java y PHP en un solo servidor con gran velocidad gracias a que el codigo es compilado para la maquina virtual de Java (JVM) permitiendo un excelente desempeño y portabilidad.

Enlaces :

Tagged with:



En May 2 de 2009, Marlon J. Manrique escribió acerca de Resin : Servidor de Aplicaciones Java que soporta PHP.
May 01

hello_world_iphone

Despues de instalar el SDK para iPhone, la siguiente tarea a realizar es crear el tipico HolaMundo, para esto utilizaremos el ambiente de desarrollo que viene con el SDK llamado Xcode y que permite crear aplicaciones que se ejecutan en el iPhone. Como todo IDE facilita la creacion de aplicaciones soportando el lenguaje de programacion Objective-C el cual es utilizado desde hace muchos por Apple para el desarrollo de aplicaciones bajo Mac y el cual es parecido conceptualmente a C++ pero la syntasis es diferente y un tanto extraña para aquellos que estamos acostumbrados a los hijos de C como Java o C#

Pasos :

  • Ejecutar el Xcode
    Ir al directorio /Developer/Application
    Doble click en el icono del Xcode
  • Ir al menu File, New Project 
  • Seleccionar Application bajo la seccion iPhone OS
  • En el template seleccionar View-Based Application 
  • Pulsar el boton Build and Go para compilar y ejecutar la aplicacion 
  • Esto abre el simulador del iPhone con una ventana gris vacia 

 

Existen diferentes plantillas que perniten crear diferentes tipos de aplicaciones que responden a diferentes necesidades y componentes que se pueden utilizar al momento del desarrollo, en el caso de el SDK 2.2.1 es posibe crear aplicaciones basadas en navegacion (para listar componentes), en OpenGL ES (usando 3D), Tab bar (barra de navegacion), en utilidades, usando vistas o ventanas. En el paso anterior se selecciono una aplicacion basada en vista lo que se acerca al esquema por capas de MVC (Model-Vista-Controlador) donde se crea una vista o formulario el cual contiene la descripcion de la interface de usuario la cual es posible editar utilizando el Interface Builder para que permite arrastrar y soltar componentes.

iphone_simulatorA continuacion agragaremos una etiqueta a la vista en la cual colocaremos el mensaje "Hello World" :

  • Doble click sobre el archivo HelloiPhoneViewController.xib
  • Se abre el editor de interface Interface Builder 
  • De la libreria arrastrar un TextField y colocarlo dentro de la vista 
  • Doble click en el TextField y colocar el mensaje "Hello World"
  • Pulsar el boton Build and Go para compilar y ejecutar la aplicacion 
  • Esto abre el simulador del iPhone con una ventana con un campo de texto con el mensaje "Hello World"

Enlaces :

Tagged with:



En May 1 de 2009, Marlon J. Manrique escribió acerca de Hola Mundo en el iPhone.