jueves, 10 de noviembre de 2016

¡Larga Vida al Guadalajara Java User Group!

Con más de 40 sesiones en cuatro años, tres Java Days y más de 1000 integrantes de la comunidad, el Guadalajara Java User Group ha sido un punto de encuentro para charlas y exposiciones sobre múltiples ideas y técnicas de programación.

Un Poco de Historia

Al llegar a Oracle en 2012, @ed_zero y un servidor quedamos fascinados por la cantidad de información y técnicas en Java a las que no sólo teníamos acceso, sino que nos pagaban por aprender a conciencia para posteriormente convertir esta información en cursos y tutoriales. Dijimos casi inmediatamente: ¡Esto tenemos que compartirlo! Nos acercamos a @java_gdl, les platicamos nuestras ideas y nos sumamos a la comunidad Java en Guadalajara.
El nombre de Guadalajara Java User Group vino un poco tiempo después, para sumarnos a los múltiples Java User Groups en el mundo.

Java Days

El primer Java Day nació de una conversación en Twitter con @brunoborges, quien iba a andar en la CDMX y le pregunté que por qué no pasaba a Gdl a dar una plática; le pareció buena idea y sugirió hacer un Java Day, el resto es historia.

El Java Day fue creado con la intención de ser un medio de fomentar la tecnología en México: Si tú tienes algo en lo que has trabajado y quieres mostrarlo, es el ambiente ideal para compartirlo con otros desarrolladores, inspirarlos a crear algo como lo que tú creaste, e incluso mejorarlo. Así es como pienso que el desarrollo tecnologíco en un país se va dando: Compartiendo.

Un gran hito fue que para la edición de 2015 tuvimos ya la oportunidad de colaborar con  @javamexico, @javahispano y @javaUp, Java User Groups en la Cd. de México, siguiendo con el ímpetu de unión para hacer las cosas mejor.

Un Mucho de Diversión

La idea siempre ha sido divertirse, con la premisa de que si uno se divierte, no sólo transmites el conocimiento sino el entusiasmo por aprender.
Desde un inicio, los meetups (incluso los Java Days) no pudieron resistirse a lo lúdico: Reuniones siempre en diferentes lugares, con temas que quizás de entrada parecieran no tener algo en común, pero que al final dan en el blanco.

Esta forma lúdica alcanzó uno de sus puntos más altos al fundarse el capítulo de Devoxx4Kids en México, con la intención de transmitir el interés por la programación y la electrónica a los niños a través de sesiones que les hicieran sentir que la programación es divertida.

Mucho Más de Futuro

Me es muy grato anunciarles al siguiente Líder de Guadalajara Java User Group: Héctor (Eryx) Paredes (@heryxpc), quien será el encargado de seguir llenando la agenda con muchas buenas propuestas.


!Larga vida al Guadalajara JUG!


PostData: ¡Tú puedes darle continuidad al legado del DrJUG @danieldfjug! En  http://danieldeoliveira.org/.

domingo, 19 de abril de 2015

Photo Booth con Raspberry Pi Camera, Pi4J y Twitter4J

¡Vaya que cómo se va el tiempo de rápido! Mi último post data de hace mucho tiempo ya.
La verdad es que no ha habido día en el que no haya estado experimentando con algo nuevo en el mundo de Java.
Les quiero compartir un proyecto realizado hace algún tiempo, pero con resultados muy divertidos. Es un Photo Booth, corriendo en una Raspberry Pi con una cámara, y usando Pi4J y Twitter4J.
El Photo Booth está escuchando a través de Twitter por menciones a @javapicam, y éste será el trigger para tomar una foto. Una vez tomada la foto, @javapicam subirá la foto a su timeline. Por supuesto, en está ocasión estoy usando @javapicam, pero puede ser cualquier cuenta.

El código se encuentra aquí y algunas fotos subidas por @javapicam, la cuenta usada por el photo booth, aquí.



miércoles, 3 de septiembre de 2014

¿Cómo son las sesiones de Devoxx4Kids?

Los Talleres

Este post es con la finalidad de darles una mejor idea a quienes estén interesados en organizar talleres de Devoxx4Kids y quieran participar como voluntari@s.

Empezaré diciendo que la imaginación es el límite para los talleres. Sin embargo hay ya algunos talleres con los cuales se puede empezar, y para los cuales ya hay material disponible sobre qué se puede hacer. Están por ejemplo, los talleres de:

Las ligas que comparto arriba son ya las que contienen los tutoriales que se pueden llevar a cabo con los niños y niñas. Vale la pena leerlos para saber más sobre cada taller y saber qué taller te gustaría dar.
Los tutoriales están en varios idiomas. En nuestra primer sesión llevada a cabo en Guadalajara el grupo de voluntarios contribuyó a traducir algunos tutoriales al español y son ahora parte del repositorio. Lo mismo se puede hacer con nuevos talleres, crear o traducir nuevos tutoriales y compartirlos en el repositorio de talleres de D4K.

Las Edades

Las edades entre las que oscilan los participantes de las sesiones son entre 7 y 15 años. Y dentro de este rango se hacen dos grupos, un grupo de 7 a 10 y otro de 10 a 15.

El primer grupo, de 7 a 10 interactúa con material más acorde a su edad, puede haber talleres por ejemplo de Robot Turtles, tarjetas para jugar a programar a una tortuga. O de Makey Makey, para interactuar con un una tarjeta y extensiones sensitivas que conectan  frutas y otros materiales a la computadora; los niños tocan estos materiales que envían instrucciones a la computadora, realmente muy divertido. Otro material para este grupo puede ser el Lego WeDo.

El segundo grupo, de 10 a 15 años, puede interactuar más con equipo electrónico, como Raspberry Pi, Arduino, Lego Mindstorm, robots, y por supuesto programar estos equipos. Así como modificar el juego Minecraft por medio de la programación, conocido como Modding. Hay incluso una versión de Minecraft que se puede instalar en las Raspberry Pis.

Scratch

El software Scratch es "universal", se puede enseñar tanto al grupo de 7 a 10 como de 10 a 15. Además de ser gratuito y no necesitar inversión extra más que la computadora donde se va a instalar.
Es además muy flexible y se puede combinar con otros equipos, como Leap Motion o Makey Makey para mover los caracteres, que los niños vayan creando, con estos dispositivos.
Hay versiones de Scratch que ya vienen preinstaladas en las Raspbery Pis. Se puede conectar también la Raspberry Pi o Arduino a la computadora para que, por medio de Scratch, programen ambos dispositivos, por ejemplo, prender LEDs.
Con Scratch también se puede programar Lego WeDo. Como puedes ver, Scratch es muy versátil y muy útil para introducir a los niños y jóvenes a las programación por medio de bloques.

¿Qué se Necesita para Iniciar con un Taller?

Básicamente:

  1. Un lugar para llevar a cabo el evento. Debe ser un lugar cerrado, seguro para los niños.
  2. Voluntarios. Uno o más voluntari@s pueden coordinar un taller. Puede ser una mesa donde tengan el equipo para su taller y recibir a los niños.
  3. Snacks y bebidas. Puede haber patrocinadores tanto del lugar como de snacks y bebidas, o provenir de la cuota que se puede cobrar por participar en el evento (opcional la cuota), se permite cobrar hasta 10 dólares (~100 pesos) y de aquí poner la comida. O entre los papás, mamás y voluntarios llevar comida para compartir.
  4. Playeras. Es opcional, hay ya diseños de D4K para mandar a imprimir en playeras. Si se tiene el presupuesto es muy recomendado hacerlo. Tanto niños como los papás, mamás y voluntarios portan estas playeras.

La Dinámica de la Sesión


La duración de la sesión varía de acuerdo al número de talleres. Para poder incluir a más niños se hacen rotaciones. Por ejemplo, un taller (una mesa, equipo y voluntarios) puede recibir a un grupo de niños por espacio de una hora, y a la hora siguiente recibir a otro grupo, mientras que el grupo que estaba ahí puede irse a otra mesa con otro taller. Cada taller puede recibir a un determinado número de niños dependiendo de la cantidad de material con que se cuente.
Entonces si por ejemplo, se tienen 2 talleres para un grupo de edad (7 a 10, o de 10 a 15 años)  la sesión duraría dos horas, una hora por taller.

Los Impresionantes Demos


Antes de iniciar con los talleres, y durante la bienvenida a la sesión, cuando todos están reunidos, se pueden hacer demos para motivar a los niñ@s y jóvenes desde un inicio. Se puede invitar a un experto que cuente con el equipo y que quisiera hacer una demostración. Por ejemplo, volar un Dron, o controlar un robot, o manejar algún prototipo de algo en lo que esté trabajando. Son tan sólo algunas ideas, recuerda, la imaginación es el límite.



Espero haberte dado una mejor idea sobre las sesiones. Anímate y sé un voluntari@ u organizador de un evento D4K. En Devoxx4Kids México te ayudamos en todo lo que podamos, desde asesoría hasta compartirte material, participar contigo, publicar el evento, etc. ¡Es muy divertido y tienes la oportunidad de cambiar la perspectiva sobre la programación e ingeniería en niños y jóvenes!





martes, 15 de octubre de 2013

Guadalajara JUG adopta tres JSRs

En agosto de este año, durante una de las sesiones mensuales de Guadalajara JUG se dió una charla sobre lo que es el programa Adopta un JSR y los beneficios que otorga a un JUG que se adhiere al programa. Como resultado la comunidad decidió entrar al programa. Con base en esto, se creó una lista de distribución exclusiva para el tema de adoptar un JSR.
A los miembros de la lista se les envió una encuesta para saber que JSRs adopta. Estaban listados todos los JSRs activos al momento y enseguida cuatro opciones:

  1. No me interesa adoptar este JSR
  2. No conozco el JSR pero no me gustaría adoptarlo
  3. No conozco el JSR aunque sí me gustaría adoptarlo
  4. Si me gustaría adoptar este JSR
La razón para no poner una respuesta binaria es que era muy probable que los miembros no conocieramos todos los JSRs (Cuarenta y dos en total de JSRs activos), pero quizá si se tuviera la intención de adoptarlo y precisamente conocerlo mejor.

Los resultados de la encuesta aquí:


Los Tres JSRs que obtuvieron más votos por el SI son (resaltados en amarillo en la imagen):
  1. JSR 310: Date and Time API
  2. JSR 339: JAX-RS 2.0: The Java API for RESTful Web Services
  3. JSR 346: Contexts and Dependency Injection for Java EE 1.1
Resalté en azul en la imagen dos JSRs más que reflejan también la intención de adoptarlos aunque no se conozca mucho de ellos: JSR 206: Java API for XML Processing (JAXP) 1.3 y JSR 351: Java Identity API. En un futuro se podrían adoptar estos dos más.

La impresión que tengo en base a los resultados es que como programadores buscamos meternos a fondo con tecnologías muy usadas o con perspectivas a usarse cada vez más, como son JAX-RS y CDI. Y ni que decirse de un API de fechas y tiempo que es el pan de cada día de los programadores.

Pues ahí los resultados. Ahora vienen actividades muy interesantes para conocer más a fondo practicando estos tres JSRs, estén al pendiente en http://www.meetup.com/gdljug/.

lunes, 26 de agosto de 2013

Construyendo una aplicación desktop cliente con JavaFX 2.0 y Java EE 7

Ya hay un tutorial disponible en la Oracle Learning Library donde se muestra el uso de dos APIs nuevas en Java EE 7, además de la tecnología JavaFX.

Java Enterprise Edition (EE) 7 incluye dos nuevas APIs: la Java API para procesamiento JSON y un cliente de RESTful web services (JAX-RS). Estas dos APIs vienen incluidas en los servidores de aplicaciones que sean compatibles con la especificación de Java EE 7.
Sin embargo en la aplicación desarrollada en este tutorial, estas nuevas APIs de Java EE 7 son utilizadas por una aplicación standalone JavaFX 2.0. La Java API para procesamiento JSON se utiliza para procesar la información obtenida de un servicio web RESTful y el cliente de JAX-RS 2.0 para hacer las llamadas al servicio web.

El tutorial se encuentra aquí en su versión en Inglés.
En él se muestra cómo construir paso a paso una aplicación de listado de clientes, además de búsqueda por nombre:


En el tutorial se muestra además, el cómo levantar un servicio web RESTful que accese a una BD.

Happy JavaFX y JavaEE7 coding!


martes, 9 de julio de 2013

Java Day Guadalajara 2013

Java Day Guadalajara 2013

Habrá un evento de la comunidad Java en Guadalajara, México. Será el Sábado 27 de Julio. Para mayor información está la siguiente página web: http://www.gdljug.mx/ .

Habrá dos conferencias, por Bruno Borges y Jorge Vargas. Además de cuatro talleres, donde se podrán practicar los nuevos APIs de Java EE 7: WebSocket, JSON Processing, JAX -RS 2 o JMS 2.0; así como HTML5 y  JSF 2.2. Habrá más talleres para practicar la migración de una aplicación existente de Java EE 4/5 a Java EE 6/7. O cómo construir una aplicación empresarial de escritorio con Java FX y Java EE 6/7. El último taller será de expresiones Lambdas en Java SE 8, desarrollando casos prácticos.


martes, 18 de junio de 2013

Java EE 7 - Embracing HTML5

En la última edición de la Oracle Java Magazine de Mayo/Junio tuve la oportunidad de escribir en coautoría sobre uno de los temas que más llaman la atención de los programadores actualmente con el lanzamiento de Java EE 7, que es el cómo Java EE 7 soporta e integra a HTML5.
En el artículo, y en base al desarrollo de una aplicación llamada "Sticker Story" - en la cual los niños crean historias colaborativamente arrastrando "stickers" hacia el canvas al mismo tiempo que los otros niños lo hacen también - se muestran las nuevas características de JSF 2.2 para el soporte de HTML5, así como el uso de WebSocket y JSON Processing (JSON-P), APIs nuevos en Java EE 7.
Te invito a leer la revista y el artículo. La aplicación Sticker Story está disponible para bajarla en el artículo.
Happy Coding!