Retro Codemotion (2/N)

Buenos días morenos y morenas.

Voy con la segunda parte de Retro Codemotion (2/N) comentando el contenido experimentado en el evento. ¡A la chicha! Comentar las charlas que asistí, impresiones, ponentes, apuntes y poco más.

Si estáis interesados en una opinión de cómo fue el evento en general a nivel organizativo adjunto enlace a post “Retro Codemotion (1/2)“. Ojo que este post se me ha ido un poco de las manos y he tenido que dejar la parte de sistemas y otras movidas para otra entrada.

El testo está dividido en dos partes:

  • Java Rules
  • Front-end for dummies.

Bien así que empiezo, me gustó mucho el contenido y el nivel de las charlas que me encontré. Siempre hay excepciones, pero no por los ponentes, si no “mierda, no he acertado bien” o “esperaba que se hablara de otra cosa” o la típica de “ups, no me he leído la descripción del evento”.

Java Rules

Por un lado asistí a charlas que me interesaban a nivel profesional de programación. Es decir, las javeras. 

Modern web application development with java ee 7 (@shekhargulati)

En esta charla se habló de un ejemplo de proyecto (red social de corredores) y mostró las herramientas que había utilizado

El proyecto está en github (accede aquí al proyecto) así que podéis cotillearlo al máximo.

Algunas herramientas que mencionó y me parecieron interesantes para investigar:

Spark: Framework para la construcción de web (al estilo Sinatra).
Play: Framework para la construcción de aplicaciones web para Java y Scala.
Slf4j: para logs. Extraído de este post de Adictos al trabajo “Simple Logging Facade for Java (SLF4J) es una abstracción de varios frameworks de logging que permite elegir el framework concreto en tiempo de despliegue. Como su propio nombre indica, no es más que una fachada.”
Wildfly on openshift: Un servidor de aplicaciones. Un JBoss.
Thymeleaf: Libería que facilita la programación XML y HTML5.
Mybatis: framework de persistencia SQL.
AngujarJS: ¿hace falta presentación?

 

Java 8 meets Test (Alex Soto):

Explicaba las novedades de java 8 desde su experiencia como programador. Muy práctica y útil con trucos y consejos. Alex! Espero que nos veamos por las quedadas Javeras! Me ha gustado mucho tu charla 🙂 🙂

Disponible ya el vídeo (kudos a Autentia)


Muy recomendable echar un vistazo a las slides que hay explicaciones y ejemplos.

 

JVM GC, WTF! (@alotor):

Charla introductoria del recolector de basura de JVM.  “GC existe”. @alotor condujo la charla con sus chascarrillos. De hecho, fue muy grata la sorpresa cuando nos enteramos que WTF es What they  fail. Sí, sí, cuando tienes mil errores de memoria es lo primero que preguntas es WTF XDD.

El uso de memoria es algo que casi todos pasamos por alto a la hora de programar. Nos explicó cómo se divide el recolector de basura, los tipos de Collector y lo que me pareció más interesante: cómo monitorizar GC (a partir de la slide 82).

Ampliando un poco lo aprendí, encontré este post por Kimera que a nivel de programación ayuda cómo optimizar el recolector de basuras. También este post  es muy interesante.

 

Desarrollo de pruebas en entornos Java EE  por Jose

De aquí me llevo un saco de ideas y consejos para testing para proyectos java EE.

EasyMock: para realizar las pruebas con Mock (hasta ahora he utilizado Mockito).

Arquillian como herramienta sin mocks, pruebas end-to-end y aisladas.

 Shrink Wrap: ayuda a centralizar las clases.

testNG: test framework inspirado en JUnit y NUnit.

JaCoCo: “Java Code Coverage Library”. Sirve para realizar informes de cobertura de test. (Ahora entiendo porqué sonar sabe la cobertura de test :)). Este post explica instalación de Jacoco.

Arquillian Persiste Extension: Valida datos tras la prueba (esto si que hay que probarlo!!).

TomEE: es un JBoss, un Weblogic, pero tampoco sé las diferencias.

Contenedor CDI:  post muy interesante de Adictos al trabajo: “CDI: Inyección de dependencias en JEE y ejecución de test de integración con el soporte de Arquilian.” (este tema de inyecciones lo tengo que estudiar porque me pierdo).

Comentó que hay que tener cuidado con actualizar alguna herramienta o plugin porque puede que rompa otra cosa.

Y ah! Me encantó el ponente. Trasmitía los conceptos muy bien. Sí, sí, fue un placer.

Front-end for dummies

La dummy soy yo! que conste! Me interesé en temas Front-end en los que me estoy iniciando a duras penas (sólo a nivel básico).

TÉCNICAS DE GUERRILLA FRONT-END” por Xavi

Me vino deluxe esta charla. Explicada de forma amena ofreciendo un puñado de buenos consejos y herramientas de front end. El autor @Xaviju es un crack. Con su permiso, voy a utilizar la palabra xaviconsejo.

  • La evolución de JavaScript (el gigante que todo absorbe): El xaviconsejo: no abusar.
  • ¿Código de calidad y consistencia?: El xaviconsejo: un conjunto de herramientas de validación del formato de tu código (ejemplo Scss-lint, gulp-csslint, w3cjs, Recess, JSlint, CoffeLint, ver slides!!).
  • Css: ¿Y si te piden un cambio de tu Css?: El xaviconsejo: mejor organización. Herramietas Jade, Sass.
  • “Si la página tarda más de 3 seg en cualquier dispositivo en cargar, la pérdida de usuarios es exponencial a medida que sube el tiempo”: El xaviconsejo:  ImageMin, SVG Optimazer, PageSpeed, ver slides!!)
  • ¿Css heredado?: El xaviconsejo: StyleDocco genera documentación de los css.

End

 

Y falta la parte de sistemas, whish list, y algunas charlas que rompen con todo… mejor para otro día no? Si no vaya turrada!!

 

 

Anuncios

Retro Codemotion 2014 (1/2)

Por fín! por fín llegó el fin de semana de Codemotion. Subidón de adrenalina y muchas ganas en aprender novedades, ver a los amigos e iniciar un maratón de nuevos conocimientos.

Codemotion es un evento de dos días a full de charlas asociadas al desarrollo de software desde principio a fin en diferentes tecnologías. Son 8 tracks cada hora a gusto del consumidor.

Estos posts de la saga “Retro Codemotion” se compone de dos partes. En una primera (1/2) pretendo plasmar las cosas buenas y no tan buenas de esta edición. En la segunda parte mencionaré algunas charletas que me parecieron muy interesantes.  Si estás interesado en las slides, videos del evento hay un documento colaborativo que las recopila (feel free to use, edit & share).

 

Antes de hacer esta crítica constructiva quiero dar la enhorabuena de la organización Codemotion por la currada de montar un evento de semejante magnitud. Desde cachirulovalley montamos uno de 80 personas SOSZ14 y de verdad no me puedo ni imaginar el tremendo esfuerzo que supone (ponentes, patrocinadores, colaboradores, voluntarios, comunicación, etc, etc). Majos, habéis hecho un buenísimo trabajo.

 

Las cosas buenas

  • El sitio mucho mejor que el año pasado: las salas eran más grandes, con aire acondicionado, se escuchaba mucho mejor e incluso algunas disponían de dos proyectores (well done). Me acuerdo que el año pasado del calor tenían que abrir las ventanas y no se escuchaba nada.

 

 

  • Los ponentes:  experimenté unos ponentes de 10. Ponentes de calidad, con mucho conocimiento y dominando la oratoria. Había muchas caras conocidas de las comunidades locales de Madrid (me gusta).

 

 

 

 

  • La comida: la comida mejoró gratamente respecto al año pasado. Creo que este tema es comprensible. Para una media de 50 euros la entrada y 1700 bocas que alimentar, la verdad que no se puede pedir más.

 

  • Cervecicas & Milan Dopico (NEW): Novedad novedosa de la forma más rica posible. Incorporaron una sesión de Networking el viernes al finalizar las charlas. Fue un gran momento para saludar a los amigos y ponernos al día.

 

 

  • Grabación de charlas: grababan al menos dos charlas, cosa que va genial para ver aquellas que nos perdimos. El equipo de Autentia hizo un grandísimo trabajo. Un besazo especial a Sara Subijana.

  Y las cosas a mejorar…

  • Hay que limitar el aforo:  Mucha gente.

 

 Esto no es novedad: todos los años han seguido esta política. Pero, ¿por qué? Y lo digo con frustración.

El éxito no está en que haya 1523 asistentes, es que ofrezcas un evento de calidad: que estemos cómodos, disfrutando sin agobios. Creo que es algo que hay que tomar medidas aunque el precio de la entrada aumente.  

Muchos amigos maños se niegan a ir al evento por este motivo. La calidad del evento también recae en que los asistentes sean de calidad. 

  • El juego de las sillas: consecuencia del aforo, sentarse era más difícil que usar la web de renfe.

Cuando terminaba la última sesión, había que ir directamente a hacer cola para la siguiente sesión. No había cabida para “echar un meo”, pensar en qué charla meterse, interactuar socialmente o ir a algún stand. En algunos casos se concentraba la gente en la puerta y no se podía entrar. Aún así, esto pasó en las happy hours de máximo aforo y en charlas muy populares pero claro, ya no bajabas la guardia por si te quedabas sin entrar. Muchísimo mejor que el año pasado pero podría haber estado mejor.

  • Faltaron charlas de IOS, Ruby y Phython: hubo muy poca representación de estas comunidades (uno o dos tracks). A mí la verdad que como soy Javera me puede dar igual, pero bueno, me llamó la atención.

 

  Ni si, ni no, ni claro.

  • Evento spanish:

Aunque hubo varios ponentes extranjeros el evento sigue siendo made in las comunidades locales. Me atrevería a decir que muy pocas fueron en inglés y que al menos el 90% de los asistentes serían residentes en España.  Dado este punto, no sé que contestar.

En realidad tener 1525 asistentes puede dar a pensar que no hace falta traer gente de fuera. Sí, pero hacer un mix de países enriquece mucho y aporta diferentes puntos de vista a una misma situación.

Como bipolar que soy, afirmaría que me gustó explotar las comunidades locales. Un evento más internacional lo dejaría para otro evento, ¿te animas a montarlo?     

 

¿Volverías a ir?

  • Claro que sí.

 

 En mi caso me aporta mucho valor conocer experiencias, nuevas herramientas y algún que otro truquillo. Además con la escusa de ir, me pegué varios días investigando el contenido las charlas y ya por sí aprendí muchísimo. Luego en las charlas como ejemplo te ayudan a saber identificar en qué casos una tecnología te puede ser útil y qué casos no.   

Y ya por descontado volvería a ir por el hecho de juntarme con amigos y conocidos del mundillo por comunidades locales (especialmente a MadridJUG y AgileMadrid) y Betabeers y conocer a nueva gente muy molona.

Pantallazo azul PAGE_FAULT_IN_NONPAGED_AREA

Bienvenidos al mundo de la desesperación de los pantallazos azules. He conseguido solucionarlos por completo esta problemática sin tener que cambiar nada de hardware, sin resetear y sin rezar 20 salves maría. ¿Cómo? En este post se muestra una solución. Esperemos que se ajuste a tu problema ya que cada ordenador es un mundo.

pantalla-azul-windows
Pantallazo azul PAGE_FAUL_IN_NONPAGED_AREA

 

¿Qué información da Microsoft al respecto? Aquí puedes acceder.

Extraído de la página

Cause
Bug check 0x50 usually occurs after the installation of faulty hardware or in the event of failure of installed hardware (usually related to defective RAM, be it main memory, L2 RAM cache, or video RAM).
Another common cause is the installation of a faulty system service.
Antivirus software can also trigger this error, as can a corrupted NTFS volume.

-“Ajá tengo un problema hardware”…
– ¿Seguro…? ¿…?

Los amigos de Microsoft en el mismo enlace proponen algunos motivos que pueden ocasionar el pantallazo en cuestión.

– Suerte maja.

Empecemos por el principio tenía este problema cuando ejecutaba vídeos, cuando ejecutaba spotify, etc. Pero ¿antes? Antes no pasaba.

– ¿Será un virus?

-Sí Laura, has bajado mucha mierda por Internet.

Pero no era un virus.

– ¿Entonces? ¿Lupus?

doctorhousedontknow

Ante tal situación desesperante y utilizando un poco la intuición tiré de la manta por si el error podía ser por el uso de memoria virtual de Chrome. Y sí, solucioné el error de Chrome y así lo documenté en este post.

Pero claro, los pantallazos azules seguían con Internet Explorer, Spotify, etc etc.

Más info de la situación.

Entorno:
Windows 7 Enterprise
Disco duro C: 60,9 GB
Disco duro D: 171 GB
RAM: 16 GB.

Síntomas:

  • Pantallazo azul en numerosas ocasiones y en aumento.
  • Se produce cuando se abre un navegador con mucho contenido o un programa muy pesado.
  • Estás desesperado.

breakingcomputer

Comprueba lo siguiente:

  • ¿Cuanto espacio tienes libre en todos los discos? ¿Está muy lleno?

Si está  al 70% – 80% de la capacidad en al menos alguno de los discos sigue leyendo. 

Ir a Windows -> Propiedades del equipo -> Cambiar configuración.

Cambiar configuracion windows

Ir a opciones avanzadas -> Rendimiento -> Configuración.

propiedades del sistema memoria virtual windows

Ir a Opciones Avanzadas -> Memoria Virtual -> Cambiar

Opciones de rendimiento

¿Tienes marcado “Administrar automáticamente el tamaño del archivo de paginación para todas las unidades”? (Primera casilla)

Administrar automaticamente el tamaño del archivo de paginación para todas las unidades

Entonces puede que tu problema sea el mismo que el mío.

Con esta opción windows “se apaña” con la memoria que tienes sin uso para asignarla al tamaño del archivo de paginación. Problema —> ¿Qué pasa cuando te queda poca memoria?
Cuando abres una aplicación que consume extra de datos peta. Y peta con estilo, con un señor pantallazo en pleno año 2014.

De hecho, lo que da la clave a la solución es observar lo siguiente:Memoria virutal tamaño
El tamaño Recomendado era el doble que el tamaño asignado actualmente (la imagen ya está con la solución). De esta forma actualizo los parámetros con los siguientes parámetros.

 

Configuracion paginacion

La combinación ganadora en mi caso:

C: -> Tamaño inicial 14800MB
C: -> Tamaño máximo 14800MB

D: -> Tamaño inicial 24000MB
D: -> Tamaño máximo 24000MB

Tuve que borrar muchos datos para liberar el suficiente espacio para poder combatir el 100% de los pantallazos. Y puedo asegurar que llevo una semana a toda tralla y sin ningún problema.

Ahora espero que haya sido de utilidad. Feedback, comentarios, quejas, sugerencias, problemas, compartir y vivir are welcome 🙂

Shortcuts Sublime Text 3

Mi trending topic de atajos de Sublime Text 3 🙂

Todos los obvios se omiten.

CTRL + D Seleccionas una palabra y pulsas la combinación. Podrás editar todas las palabras coincidentes a la vez
CTRL + K dos veces Borra la palabra y lo siguiente hasta el final de línea
CTRL + SHIFT + L Seleccionas todas las filas y pulsas la combinación. Podrás editar todas las líneas a la vez. Por ejemplo: incorporar en todas un “;”.
CTRL + R Se abre una barra para buscar por nombre de función
ALT+ . Cerrar rápidamente cualquier etiqueta HTML que tengamos abierta
ALT + W Cerrar la estaña
CTRL + SHIFT + T Reabrir la pestaña cerrada
CTRL + M Saltar a llave/paréntesis
CTRL + F + botón “.*” de la barra inferior/td> Buscar por expresiones regulares

Error pantallazo azul en el navegador Chrome

¿Tu navegador te está vacilando? ¿Ya llevas 5 reinicios seguidos por pantallazo azul? ¿Estás a punto de tirar el ordenador por la ventana?

giphy

Bien! Entonces es posible que tenga la solución a tus problemas.

Ayer sufrí unos 8 reinicios del ordenador. Probé con distintos navegadores e igual. La página que estaba visitando era www.codeschool.com, casualmente cuando reproducía uno de sus vídeos. Es decir: estaba visitando páginas de alto volumen de datos.

Así que probé suerte con aumentar la caché del navegador Chrome. Para ello hay que seguir los siguientes pasos:

  1. Botón derecho Icono Google Chrome en Propiedades
  2. Pestaña “Acceso directo”
  3. En Destino, ponemos el cursor al final de “….\chrome.exe”. Añadimos un espacio y la siguiente cadena “–disk-cache-size=104857600”
  4. Guarda y dale caña!

Con esto se acabó mi pesadilla. Puedes añadir un cero más si ves que el problema persiste.

Espero que te funcione 😉

Si no funciona y estás obligado a lidiar con Windows instálate una Ubuntu en una máquina virtual. Si, ahí funciona seguro.

Lacarrismos del 17 al 23 de feb

Tarde, muy tarde escribo la “retro semanal”. La semana ha sido absorbida, motivada y disfrutada por Startup Open Space Zaragoza.

Y eso se merece un completo y hermoso post.

Ahora, con los pocos recuerdos que tengo de la semana pasada… estas son algunas cosillas que miré y que a estas alturas de semana me acuerdo.

  • Movidas con diagramas UCI. Entenderlos,  saborearlos, odiarlos.
  • Preparar una presentación de patrones de diseño. 
  • Movidas varias con la organización de sosZ14.

Gran sabor de boca tras el evento celebrado. Gran excusa para aprender de cracks. Gran agilidad nocturna. ¡Qué maja la gente redios! 

 

 

 

Lacarrismos del 10 al 16 de feb

Buenas muy buenas, 

Semana entretenida trasteando cosillas, reuniones varias y eventos molones. El jueves recibí la gradiosa y preciosa noticia que ya tengo mi entrada para el Greach, evento de Groovy los días 28 y 29 de Marzo de Madrid.  Muchas ganas de ir y de empaparme de mucho conocimiento. Y sí, mis conocimientos de Groovy son nivel kata o nivel loser. Pero por eso voy, porque hay muchas sesiones a nivel “easy” y porque mola ver qué cosicas se pueden hacer con estos lenguajes más “modernos”.  Mira la agenda!

Esto es lo que ha dado que sí la semana:

  • Pruebas con JMeter. Entender y probar con JMeter cargas de peticiones en el servidor.
  • Pruebas con AgularJS. Molando un poco, me he lanzado a trastear con el trending topic de los lenguajes. Ahora tengo que aterrizar qué hacer con ello.
  • Empaparme de documentación de cara a la organización y metodología de construcción de un proyecto y contemplar lacras.
  • Validar en equipo una plantilla de diseño técnico.
  • Pruebas con Vaadin. Instalado los plugins etc, empezar con ejemplos sencillos a utilizar Vaadin.
  • Movidas varias para ultimar preparativos para el Startup Open Space Zaragoza 2014 #SosZ14.

El miércoles hubo quedada de MadridJUG. El motivo hablar de Ceylon un nuevo lenguaje de programación basado en Java.

El propio creador de Hibernate Gavin King vino a explicarnos Ceylon, y siendo sincera tampoco me convenció mucho el lenguaje en sí. Sí que tiene algunas funciones o estructuras que ayudan a la programación. Además siempre puedes utilizar Java por debajo pero no he visto nada especial que me llame la atención. Tampoco he mirado lo suficiente para argumentarlo tanto para bien como para mal, mil perdones. 

Gavin King
Gavin King

Para terminar ha sido una semana marcada por los amigos. Los mismos amigos que estás de risas, de cachondeo y living la vida loca están ahí para poner el hombro, para dar un abrazo, para dar un beso. Así que feliz por los amigos que tengo, triste por juntarme por malas nuevas.

Con esto y un bizcocho a ser felices y comer perdices.

Feliz semana.

Lacarrismos del 3 al 9 de Febrero

Buenas muy buenas.

Encajando la primera semana de Febrero por los mundos hermosos y preciosos de Oracle OSB y EJB.  En concreto estoy realizando en equipo el módulo de gestión de errores en un proyecto OSB.

También estoy estudiando alternativas para Vaadin y Liferay, por ver que se cuece. Y! dado el boom de AngularJS me he puesto a tantear con un tutorial. Mola bastante.

¡Qué más! El jueves estuve de visita por Funplex, la oficina del pedazo de equipo de Otogami. Envidiable el espíritu que se respira, envidiable cómo hacen las cosas y envidiable la máquina de Tetris! Llegarán muy lejos.

Gracias por la acogida y la pedazo camiseta 🙂

Con esto y un bizcocho, a ser felices y comer perdices!

Feliz semana!

Lacarrismos del 27 de enero al 2 de feb

Semana de Oracle hasta las cejas, formación UML, Agil Madrid y Betabeers Zaragoza.

Esto es lo que ha dado de sí la semana:

  • Formación 5 horas de UML. Repaso de diagrama de clases, diagrama de estados, diagrama de actividades, diagrama de secuencia y diagramas UCI.
  • Configuración de Weblogic EnterpriSe Manager para desplegar una secuencia BPEL.
  • Creación de un proceso BPEL desde JDeveloper y desplegarlo en Enterprice Manager.
  • Post solución de un error ¨Weblogic em error localhost:7001/em not found
  • Formación 5 hotas Tuxedo & Service Builder: cómo integrar Tuxedo en un proyecto Java. Cómo insertar, modificar y eliminar datos desde un proyecto Tuxedo.
  • Mover en contactos Startup Open Space 2014.
  • Madrid ágil: “Priorización de historias de usuarios”: Charla de Madrid Agil y mi primer encuentro con la comunidad (true story). La charleta fue un remember de encontrar los problemas y trabas de la priorizar tareas (exacto, ahora trato con una media de 0 de historias de usuarios). En mi opinión la priorización es una ley/ecuación variable y ambigua que depende básicamente del equipo y de la experiencia personal/equipo. Algunos aspectos que se hablaron fueron de los factores valor/coste/precio, la gráfica riesgo/valor, etc. (ver slides de la presentación by Micael Gallego).
  • Betabeers Zaragoza: Con PagoBit y Anste by Jos. Dos charleas muy interesantes, la primera por la visión de negocio: pago por BitCoins como pasarela de pago y la segunda, porque es flipante lo que han montado desde Zentyal para hacer deploy y testear network services. Espero publicar esta semana el post que acostumbro a hacer sobre el evento.

Y sí, no puedo terminar el post sin ponerme tierna. Madrid Agil fue una gran alegría encontrarme con la crew del AOS Tenerife y Betabeers, qué voy a decir! qué me parece increíble la implicación de todos, de la motivación, de los amigos, de las risas. De verdad que me emociona.

Betabeers enero Zaragoza
Betabeers enero Zaragoza

Con esto y un bizcocho,  a ser felices y comer perdices!

Feliz semana

Lacarrismos del 20 al 26

[offtopic] Este post fue escrito el fin de semana del 24, perdido el 24 y encontrado el 31 jijiji.  

Semana bonita y preciosa caracterizada por un trancazo enorme, dolor de cabeza, congestión y mal estar. La semana empezó teniendo que renunciar al BilboStack, el martes sin ir al dojo de retrospectivas pero ya el miércoles me animé a ir a la charla de Java 8 una temática de la que depende mi salud mental trabajando con java en los próximos 3 años.

Lamentablemente no pude ir a Betabeers Madrid y buena envidia me dieron (si no mirar sus fotillos). Además, fuera de lo de siempre, era un día especial, estrenaban patrocinador Aragonés! Ambar. Y sí, os podéis imaginar quién ha estado detrás  🙂

Bueno esto es lo que ha dado de sí la semana:

  • Generación de servicios en base a Tuxedo.
  • Documentación para el uso y disfrute de Tuxedo & Service Builder
  • Formación del proyecto y la nueva metodología.
  • Ayudar a tope en Startup Open Space 2014. Negociaciones de patrocinios, notificar a startaperos/startaperos personalmente y algún post.
  • Charla de Java 8: muy interesante conocer la evolución para la próxima JDK. A bote pronto la novedad que más me llamó la atención son las funciones lambda.

Si leíste los lacarrismos anteriores, comentar que el trello ha caído en el olvido. No es que me rinda, es que pueda que no haya sido la mejor forma de atacarlo. Os contaré como evoluciona mi plan!

A ser felices y comer perdices

que paséis una feliz semana.