Un saludo para todos los visitantes de mi blog! =)
25 diciembre 2009
22 octubre 2009
The Fun Theory
11 octubre 2009
Spring Community Day Lima 2009
Fecha: Jueves 29 de Octubre del 2009
Hora: 07:00pm - 10:30pm
Lugar: Universidad Peruana de Ciencias Aplicadas (UPC) - Aula Magna
Hora: 07:00pm - 10:30pm
Lugar: Universidad Peruana de Ciencias Aplicadas (UPC) - Aula Magna
07:00pm - 07:15pm: Presentación de Spring Perú
07:15pm - 09:30pm: Demo en vivo
09:30pm - 10:00pm: Preguntas y cierre
10:00pm - 10:30pm: Coffee Break
2. Spring MVC: Susan Inga, Ricardo Ávila
3. Spring Core: Lennon Shimokawa
4. Spring Dao: Jonathan Lara, Mayer Horna
5. Spring Security: Edson Chavez
6. Spring CloudFoundry: José Diaz
08 octubre 2009
El miedo a la equivocación
Erase una vez el señor X a quien desde pequeño le habian inculcado en lo prestigioso e importante del exito asi como quien acierta es el mejor y el fallar es inaceptable. En cierta ocacion el señor X se enfrento a un problema el cual solo tenia tres dias para resolver y que, en sus años de experiencia laboral, no se habia enfrentado antes motivo por el cual, ante le miedo al fracaso y al que diran ante su rpta de "yo no se", comenzo a investigar y amancecerse tratando de encontrar la rpta. Y que causo esto? Le causo un sin fin de sesanciones ngativas como la ansiedad, stress, irritabilidad, y demas actitudes contraproducentes para el debido a su forma de pensar. Pasaron los dias y adivienen que....? no encontro la solución en cambio su compañero el señor "Y" a pesar de no conocer del tema al igual que el se puso a investigar pero con otra actitud. La actitud con que el señor "Y" busco la solucion fue una actitud de aprendizaje, de no buscar ser "el que sabe" o "el que tiene la rpta" sino de encontrar la solucion por motivacion propia y si no la encontraba bueno el no se incoodaba ya que hizo el intento con toda su capacidad y sitiendo que hizo su mejor esfuerzo.
Ya se habran imaginado como se habra sentido el señor X ante dicha situacion verdad?
El objetivo de este post es ver si uno ante alguna situación toma la actitud del señor X o del señor Y. ¿ Somos de los que se enfrentan a los problemas como una obligacion de resolver ya que el fracaso es algo inaceptable y totalmente contraproducente o tomamos una actitud mas positiva en la cual afrontamos el problema con todo lo que tengamos y si tropezamos aprendemos y utilizamos eso como experiencia y motivo de mejora?
En el trabajo normalmente el error de alguien se toma como algo totalmente negativo, algo que nunca se deberia cometer , pero al final uno aprende mas de sus errores y de los cometidos por los demas que leyendo un sin fin de libros, articulos o nunca teniendo errores. Uds que opinan? Cuantos han tenido que afrontar algun problema y ha caido pero a la sgte oportunidad ha salido adelante con un añadido que los haya enriquecido mas como personas y profesionalmente a comparacion de nunca haber caido y por ende no haber aprendido?.
En escencia uno siempre tiene miedo a equivocarse por un sin fin de motivos pero ese miedo no debe ser motivo de decaimiento o aprisionamiento. La vision de una posible equivocacion o caida debe de ayudarnos en vez de trabarnos. En lo personal tomo ese tipo de situaciones como un reto, es decir no pienso en el que diran o que el mundo se va acabar si fallo, he de pensar en lo bien que me voy a sentir al saber que puede resolverlo y si no lo seguire intentando hasta solucionarlo; o aprendere de alguien quien me pueda ayudar (siempre hay un factor de ego que hay que combatir) .
Tomen conciencia de las preguntas nacidas de estas situaciones y vean que incluso los problemas, equivocaciones , tropiezos, etc no son solo una traba sino una ayuda , un motivo para mejorar en cuanto a como hacemos las cosas y como reaccionamos a ellas , asi como una manera de poder lograr nuestros objetivos y que sensacion mas gratificante es el poder leventarnos o afrotar nuestros temores y salir adelante con nuestra "cicatriz" o "marca de guerra" como muestra de nuestra evolución personal.
Saludos.
22 septiembre 2009
Presentación sobre Log4j
21 septiembre 2009
¿Cómo funciona StreetView?
Una amena animación de Google Japón que nos explica de forma sencilla el funcionamiento de StreetView.
10 septiembre 2009
Calendarios - Wallpapers para Setiembre
Smashing Magazine acaba de publicar 50 calendarios - wallpapers para Setiembre del 2009 Enlace: Smashing Magazine |
08 septiembre 2009
Software Freedom Day Perú 2009
Sábado 19 de Septiembre, de 9.00 am a 1.00 pm y de 3.00 pm a 6.30 pm.
Lugar:
Universidad de San Martin de Porres -Av. La Fontana 1250 Urbanizacion Santa Patricia 2da etapa la molina
1. Educar al público asistente, acerca de los beneficios de usar el Software libre -FLOSS- de alta calidad en Casa, la Educación, en el Negocio, el Gobierno y de hecho todas partes.
2. Compartir conocimiento valioso.
3. Estimular y energizar a los entusiastas a que se conozcan, se unan y hagan parte de los proyectos de cada una de las comunidades del software libre.
4. Nutrir nuevos procesos de emprendimiento, conectando en el mismo lugar a emprendedores, desarrolladores y diseñadores estimulando interesados.
¿Que pueden esperar los visitantes al evento?
1. Ampliar su red de contactos y encontrarse con sus pares
2. Ganar conocimiento valioso
3. Enterarse de las tendencias del mercado
4. Identificar a los grupos y comunidades del Perú así como sus proyectos actuales
Inscribete aquí y celebra con nosotros la Libertad del Software!
Ver post original aquí: Software Freedom Day Peru 2009
29 agosto 2009
Yo Quiero Ser un Blog Star
Durante el evento por el BlogDay pasaron este video musical que amenizó muchísimo la noche.
28 agosto 2009
JUnit... probando sale mejor
En estos días estoy asistiendo a una capacitación interna sobre Buenas Practicas en el Desarrollo de Software.
El martes pudimos trabajar con JUnit, no es la primera vez que trabajo con dicho utilitario, pero el recordatorio me ha caído como anillo al dedo.
Cada vez que programamos un método lo hacemos para que cumpla con una función en particular, y por tanto, siempre queremos que el resultado se de tal como lo esperamos. Entonces, bajo esta premisa, necesitaríamos ir preparando casos de pruebas, a fin de que, al finalizar la implementación, podamos verificar que lo que hemos hecho cumple su cometido. Esta necesidad de nos lleva al uso de esta herramienta.
Recuerdo, que cuando estaba en el instituto (y bueno, muchos programadores novatos lo hacen suelen hacer) solíamos escribir nuestro método "main" para poder hacer nuestras pruebas. Realmente, esto no ayudaba mucho porque las pruebas que intentábamos realizar eran algo flojas y poco consistentes, además de que veíamos nuestras clases con líneas de código que en realidad no debían estar allí.
Con JUnit, tenemos la posibilidad de probar nuestras clases sin tener que modificarlas para este fin. Adicionalmente, gracias a la integración con Eclipse y Ant, podemos ejecutar los casos de prueba (previamente elaborados) en cualquier momento dentro de nuestro desarrollo, de manera que podemos verificar si los métodos que implementamos cumplen adecuadamente con los requerimiento u objetivos trazados.
Puede ser que más de uno diga "no tengo tiempo para hacer ello" o "toma mucho tiempo elaborar los casos de prueba!", sin embargo, los invito a reflexionar y contabilizar sobre el tiempo que demoran tratando de hallar la causa de un problema, que en muchas ocasiones son provocados por errores humanos.
12 agosto 2009
En Miraflores es difícil saber dónde tomar un taxi
Jamendo.... música libre, legal e ilimitada
11 agosto 2009
Twiteros visitaron el Circuito Mágico del Agua
07 agosto 2009
A imagen y semejanza
Lamentablemente, tiene parte de verdad lo que le dice Don Sata; una viñeta de Alberto Mont de su blog Dosis Diarias altamente recomendable. |
24 julio 2009
Mi paseito por Lima
22 julio 2009
20 Blogs Peruanos - Lanzamiento de la Edición 2009
Y ya se viene la 2da edición del concurso "20 Blogs Peruanos", bajo la organización de Paginas Amarillas, LaMula.pe y Perublogs.com; seguro que con la difusión y las últimas movidas en la red la competencia será reñida.
12 julio 2009
El matrimonio y el divorcio
Encontré este video con un mensaje muy interesante sobre el Matrimonio y el Divorcio; si estan pensando en divorciarse, echenle un vistazo al video :)
21 junio 2009
Empuja tu vaquita
13 junio 2009
Sobre la masacre en Bagua... (El Perú es multicultural presidente!!)
Para empezar el objetivo de este blog no es hablar sobre temas políticos. Sin embargo, tras lo ocurrido en Bagua deseo hacer un paréntesis a la temática habitual de este blog para dejar plasmadas algunas ideas que tengo sobre este tema.
30 mayo 2009
Multitouch Barcelona... HI
Página falsa del Scotiabank...
216.246.79.163 www.viabcp.com216.246.79.163 viabcp.com216.246.79.163 http://viabcp.com216.246.79.163 www.viabcp.com/zona_publica/01_persona/index.html216.246.79.163 http://www.viabcp.com/viabcp.com/zona_publica/01_persona/index.html216.246.79.163 http://viabcp.com216.246.79.163 www.scotiabank.com.pe216.246.79.163 scotiabank.com.pe216.246.79.163 http://www.scotiabank.com.pe/index2.shtml216.246.79.163 www.banreservas.com.do216.246.79.163 banreservas.com.do216.246.79.163 http://www.banreservas.com.do
27 abril 2009
Anchored... hermoso y emotivo video
Otro corto animado? Así es. Este tenía que ponerlo sí o sí. Se trata del trabajo final de Lindsay Olivares, su tesis para graduarse del Ringling College of Art + Design.
Es una pequeña historia que nos cuenta la historia de un náufrago, y el de su chica, que lo espera en la orilla. Al empezar a escuchar la música, mi sonrisa, que apareció luego de ver la manera impecable que hacía uso del cel-shading y la genial animación de sus personajes, empezó a curvarse hacia abajo, pues no soy muy fan de Mika. Sin embargo, segundos después, la música por fin halló su camino y se pudo notar, finalmente, que es el corto el que gira en torno a ella, y funciona muy bien.
Pero mejor denle un vistazo, son 3 escasos minutos que, les aseguro, disfrutarán:
Armando > Excelente video!!!
25 abril 2009
Trysumerism... pruebas algo y luego lo cambias
Balzac.tv: Trysumerism
Se colgó mi iPod... ¿qué hago?
... era la primera vez que me pasaba y no tenia idea de qué hacer, estaba preocupado más aun porque la pantalla se quedó prendida por largo rato y pensé que podría quemarse o algo así...
... sin querer queriendo, y después de probar con varias combinaciones, mantuve presionados tanto el botón central como el botón de Menu por un rato y waláh! Apareció la manzanita... y listo! volvió a la normalidad.
Filtro de objetos con un atributo repetido
Se retorna una colección de objetos proveniente de los WebServices y se requiere filtrar, la colección, de forma tal que solo la primera ocurrencia de cada valor atributo repetido quede dentro de la colección. Eliminar los demás duplicados.
Solución 1 - No muy buena
Al principio yo planteé controlar la duplicidad de objetos a través de un flag y una segunda colección de objetos a la cual enviar los objetos. A continuación les pongo mi solución:
List tempCommActions = dataAccessService.getCommercialActions(userLoginId, cic); List commercialActions = null; if (tempCommActions != null) { commercialActions = new ArrayList(); boolean flag = true; for (int i = 0; i < tempCommActions.size(); i++) { CommercialAction bean1 = (CommercialAction) tempCommActions.get(i); for (int j = 0; j < commercialActions.size(); j++) { CommercialAction bean2 = (CommercialAction) commercialActions.get(j); if (bean1.getCampaignCode().equals(bean2.getCampaignCode())) { flag = false; break; } } if (flag) { commercialActions.add(bean1); } } }
Esta solución no termina siendo muy eficiente por la cantidad de objetos que se manejan, además de las reiteradas iteraciones a las listas.
Solución 2 - Mejor
Pero, consultando con uno de mis compañeros... encontramos una mejor manera de implementar esta solución. Para la cual empleamos un iterator para recorrer la lista y un objeto de tipo Set que nos serviría para ir guardando el atributo que comparamos.
List commercialActions = dataAccessService.getCommercialActions(userLoginId, cic); Set visitedCampaignCodes = new HashSet(); for (Iterator iterator = commercialActions.iterator(); iterator.hasNext();) { CommercialAction commercialAction = (CommercialAction) iterator.next(); if (visitedCampaignCodes.contains(commercialAction.getCampaignCode())) { iterator.remove(); } else { visitedCampaignCodes.add(commercialAction.getCampaignCode()); } }
Genial no? Y eso que mi compañero agregó... "es posible que haya una mejor solución aun". :P
24 abril 2009
Openfire... Mensajería y chat rooms!
La segunda cosa interesante que encontré como parte del episodio #508 de Hak5, es la instalación del Openfire en 10 minutos que aunque está en Linux nos da una pauta de por dónde va este asunto. Por mi parte, yo probé la instalación en Windows y les aseguro que es fácil y rápida. :D
A continuación les dejo este episodio de Hak5 (en inglés).
Thanks Hak5 for this espisode!!! :D
23 abril 2009
Un nuevo nombre...
Como verán ahora mi rincón en la basta red ha cambiado de nombre... quizá porque se ajusta un poco a algo que pasaba cuando era más chico... desarmar cosas (y nunca volverlas a armar)... jajaja...quizá noten un poco de cambios en cuanto a la temática de este blog... pero alli le andaremos.
Saludos a todos... y gracias a aquellos que de alguna forma u otra terminan llegando por acá :D
13 abril 2009
Fin de semana largo...
04 abril 2009
IBM Certified Solution Developer - Passed
De ahora en más buscaré rendir otris examenes.
11 marzo 2009
[IBM] Celda y Nodo
10 marzo 2009
Generar XML para instalación de portlets y páginas en WPS
Lo primero que se debe hacer es instalar y configurar bien los portlets en nuestro portal de desarrollo. Esto incluye aplicar temas, establecer unique-names, crear etiquetas, páginas, etc.
Luego, ubicar la plantilla correspondiente segun el tipo de XML de instalación que querramos generar dentro de la carpeta <portalserver-dir>\doc del portal. Para este caso emplearemos ExportPortletAndPage para que nuestro instalador se genere incluyendo la estructura de etiquetas y páginas que ha de crear.
Reemplazar con los uniquename de las etiquetas o páginas, segun el caso, y el uid del webmodule, este último tal como el que se encuentra en el archivo portlet.xml del proyecto correspondiente y agregar el atributo export-descendants="true" a los tags que corresponden a las paginas o etiquetas a fin de que se incluyan a las páginas que desciendan de ellas.
<request <!-- sample for exporting a page with portlet --> </portal> |
Guardamos la plantilla modificada.
A continuación, ingresamos a la carpeta <portalserver-dir>\bin y ejecutamos el siguiente comando (tomar en cuenta que la plantilla la guardamos en esta misma carpeta):
<portalserver-dir>\bin> xmlaccess -in ExportPortletAndPage.xml -out installPortlets.xml -user wpsadmin -password wpsadmin -url http://localhost:10038/wps/config |
Donde xmlaccess es el nombre del utilitario que posee el portal para la generación y ejecución de estos archivos XML, ExportPortletAndPage.xml es el nombre de nuestra plantilla modificado, installPortlets.xml es el nombre que le estamos poniendo a nuestro archivo de instalación que se va a generar; wpsadmin representa, tanto al nombre del usuario administrador y su correspondiente contraseña y en el último parámetro colocamos la ruta de configuración del portal.
A continuación modificamos la ubicación de nuestro WAR a instalar.
<url>file://localhost/$server_root$/installableApps/SampleProject_pkg1.war</url> |
<portalserver-dir>\bin>xmlaccess -in installPortlets.xml -user wpsadmin_desa -password wpsadmin_desa -url http://localhost:10038/wps/config |
TIP Si el portlet application que vamos a instalar no posee múltiples instancias de un mismo portlets en diferentes páginas podemos hacer la siguiente modificación para eliminar y volver a subir el módulo: Abrir el archivo generado, para este caso installPortlets.xml y agregar la siguiente línea antes de las líneas que corresponden a la instalación: Con esto nos aseguramos de eliminar la aplicación y así evitar que se quede pegado o que aparezca algun bug en la instalación. |
23 febrero 2009
Cooperative Portlets (1) - Teoría
Una de las ventajas del portal es la posibilidad de crear nuevo flujos a través de la reutilización de portlets y la posibilidad de enviarse información entre sí. Esto último se hace posible mediante el concepto de Cooperative Portlets.
Cooperative Portlets (Portlets Cooperativos) se refiere a la capacidad que tienen los portlets dentro de una página (o diferentes páginas) para compartir datos entre sí. Los portlets cooperativos pueden reaccionar ante acciones provenientes desde un portlet fuente.
Los portlets cooperativos se suscriben a un modelo de declaración, publicación y compartir información empleando como intermediario al Websphere Portal Property Broker. Los portlets se suscriben al property broker y publican los datos o propiedades a compartir ya sea como proveedor o receptor.
- El portlet que provee el dato se denomina source portlet.
- Las propiedades que el source portlet publica se denominan output properties.
- El portlet que recibe el dato se denomina target portlet.
- Las propiedades que el target portlet recibe se denominan input properties.
Esta caracterísitica es muy útil, por ejemplo podríamos tener el desarrollo inicial de un portlet que busque información de clientes y, posteriormente, podríamos desarrollar portlets que recibiendo el número de documento de identidad muestren resumenes de sus datos u otras operaciones.
Algunos enlaces:
Comunicación entre Portlets - Portlet Wiring
Desarrollo de Portlets de Cooperación
Inter Portlet Communications IPC JSR168
14 febrero 2009
WebSphere Portlet Factory - Carga y lectura de archivos en el browser
13 febrero 2009
Lima Twestival 2009
Mi experiencia con este evento fue la siguiente: a las 7.45 pm aproximadamente, me encontré haciendo un cola para ingresar al local. Mi sorpresa fue grande cuando encontré a mi pata @yog_sototh. Después de hacer la entrega de mi mini pase impreso en hojas usadas, me dieron un polo y un sticker del evento.
Luego, ingresé al ambiente en el que se encontraba la gente twittera en el que me recibieron dos simpáticas anfitrionas de Telefónica, una de las cuales me regaló un llavero. Buen inicio.
Al cabo de un rato de estar mirando a la gente me senté en una de las mesas y entablé conversación con @mxkro, estudiante de la carrera de Ing. Industrial de la UNI. Pasada media hora después, y tras haber tomado dos revistas DedoMedio que regalaban, llegó el amigo @LocoDiego, quien fue el que me pasó la voz sobre el evento. Él me prestó su laptop para ir twitteando desde el evento.
Se llevaron a cabo varios sorteos de los cuales gané un bolso de Tica (que obviamente regalé a mi hermana) y una caricaturización por parte de la gente de PeruCartoon.
En líneas generales el evento estuvo bastante bueno, fue ameno, la gente chongueó harto e incluso se llegó a transmitir en vivo. Lo únco malo fue que no se logró llegar a la meta de los US$ 1000.00, tan solo se recaudó US$ 616.00. Esperemos que la próxima ocasión si se llegue.
Bueno, por el momento esto es todo, en los proximos días estaré posteando las fotos y videos que se tomaron durante el evento.
Lima Twestival 2009 | Lima Twestival 09 por The_Ghost |
Lima Twestival 2009 por Arturo Puente |
Enlaces relacionados:
12/02 Primer Festival Twitter: Twestival en Lima (RPP) - video
12/02 Primer Festival Twitter: Twestival en Lima (RPP) - fotos