<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-12131656</id><updated>2012-01-18T03:39:06.953-03:00</updated><category term='rest'/><category term='bpm'/><category term='integracion'/><category term='ws'/><category term='process'/><category term='ESB'/><category term='soa'/><category term='EAI'/><category term='Workflow'/><category term='Infraestructura'/><category term='eda'/><category term='caf'/><category term='arquitectura'/><title type='text'>Arquitectura e integración de sistemas</title><subtitle type='html'>Arquitectura de software, Integración, y otras yerbas</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>26</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-12131656.post-4763470248984452516</id><published>2009-06-06T20:15:00.001-03:00</published><updated>2009-06-06T20:15:48.346-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Infraestructura'/><title type='text'>Virtualización con VMware ESXi</title><content type='html'>&lt;p align="justify"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;a href="http://lh6.ggpht.com/_iN4kNC8BfLk/Sir4nyygGrI/AAAAAAAADpk/uY4e69yjVNU/s1600-h/VMware_ESX_host%5B9%5D.gif"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" title="VMware_ESX_host" border="0" alt="VMware_ESX_host" align="right" src="http://lh4.ggpht.com/_iN4kNC8BfLk/Sir4o11eRoI/AAAAAAAADpo/YTqi39EEoQk/VMware_ESX_host_thumb%5B5%5D.gif?imgmax=800" width="147" height="137" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Esta es una tecnología que ya tiene muchos años, de hecho es una&amp;#160; tecnología que ya se utilizaba en sistemas Mainframe.&amp;#160; Desde hace un tiempo que utilizo productos de VMWare, realmente tienen una suite de soluciones que podría decirse abarca todos los tipos de necesidades, desde el VMWare player (gratuito), que permite cargar maquinas virtuales, hasta productos que permiten el manejo de datacenters para la administración de servidores virtualizados. &lt;/p&gt;  &lt;p align="justify"&gt;En esta ocasión me toco trabajar con VMWare ESXi, este es un producto que me pareció muy interesante, primero porque se puede utilizar libre de cargo (puede licenciarse para obtener soporte), y porque además utiliza un hypervisor que corre sobre utilizando una muy baja cantidad de recursos (32 Mb de RAM y aproximadamente 1 GB de espacio de disco).&lt;/p&gt;  &lt;p align="justify"&gt;La instalación la probé en un DELL PowerEdge 1950 y un 2900, además también pude hacer una instalación en un Pendrive y correrlo desde mi notebook Thinkpad T61P ( Lo cual es interesante para poder mostrar productos que pueden estar instalados en un servidor de storage externo al cual se se puede acceder mediante la red desde el producto)&lt;/p&gt;  &lt;p align="justify"&gt;Para resumir un poco, enumero algunas de las ventajas mas interesantes de este producto&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align="justify"&gt;No requiere un sistema operativo para el HOST, el hypervisor corre sobre un SO *NIX que tiene un consumo de recursos súper reducido&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;Las maquinas virtuales corren prácticamente sobre el hardware&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;Se puede particionar el servidor y asignar recursos según las necesidades que se tengan, se puede asignar procesadores, memoria, etc…&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;Posibilidades de administración centralizada utilizando herramientas de VMWare para manejo data centers&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;El producto se puede usar gratis (aunque si se quiere soporte debe licenciarse)&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;Versiones para 32bits y 64bits (la ultima versión es solo para 64bits)&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;Importación y exportación en formato OVF, con este formato pude lograr pasar una VM que pesaba 79Gb a 15Gb&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/div&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-4763470248984452516?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/4763470248984452516/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=4763470248984452516' title='2 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/4763470248984452516'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/4763470248984452516'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2009/06/virtualizacion-con-vmware-esxi.html' title='Virtualización con VMware ESXi'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_iN4kNC8BfLk/Sir4o11eRoI/AAAAAAAADpo/YTqi39EEoQk/s72-c/VMware_ESX_host_thumb%5B5%5D.gif?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-8883770065912221776</id><published>2008-01-14T02:18:00.001-02:00</published><updated>2008-01-14T02:18:59.183-02:00</updated><title type='text'>BPEL Designer</title><content type='html'>&lt;p&gt;Estuve buscando alg&amp;#250;n designer de&lt;u&gt; &lt;/u&gt;&lt;a href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html" target="_blank"&gt;&lt;u&gt;BPEL&lt;/u&gt;&lt;/a&gt;, hasta el momento siempre use el de SAP XI que trae con su herramienta de ccBPM o el SOA Designer de ARIS, el tema con estas herramientas que son bastante buenas y potentes requieren de licencias, y yo quer&amp;#237;a hacer algunas pruebas simples en mi casa, me acorde de que existia uno de &lt;a href="http://eclipse-plugins.2y.net/eclipse/plugin_details.jsp;jsessionid=B34CA41AD3217320AE1D6287BD1432B8?id=790" target="_blank"&gt;Oracle&lt;/a&gt; que se pod&amp;#237;a usar con Eclipse pero vi que estaba medio abandonado, lo mas conveniente era bajarse directamente el JDeveloper con el IAS y la suite de SOA... si bien JDeveloper es una IDE muy potente y yo la use por un buen tiempo, el IAS tiene un apetito (o al menos las versiones que use) bastante grande de memoria as&amp;#237; que segu&amp;#237; buscando alternativas. &lt;/p&gt;  &lt;p&gt;El siguiente que encontr&amp;#233; fue uno de&lt;u&gt; &lt;/u&gt;&lt;a href="http://www.active-endpoints.com/active-bpel-designer.htm" target="_blank"&gt;&lt;u&gt;Active Endpoints&lt;/u&gt;&lt;/a&gt; pero luego en algunos foros dec&amp;#237;a que hab&amp;#237;a una versi&amp;#243;n free que estaba algo limitada y que la paga era bastante mas completa, por lo que ni siquiera me tome el trabajo de bajarla.&lt;/p&gt;  &lt;p&gt;Siguiendo con mi b&amp;#250;squeda llegue al &lt;a href="http://www.eclipse.org/stp/" target="_blank"&gt;&lt;u&gt;STP (SOA Tools platatorm)&lt;/u&gt;&lt;/a&gt; de Eclipse, y vi que hab&amp;#237;a muchas herramientas, todas muy interesantes incluso un editor de BPMN, otro de BPEL, pero me desalento un poco que todav&amp;#237;a siga en incubaci&amp;#243;n (mas que nada porque quer&amp;#237;a probar algo r&amp;#225;pido, por lo general no tengo problemas de usar proyectos que est&amp;#233;n en incubaci&amp;#243;n, pero no quer&amp;#237;a arriesgarme a luchar con problemas de inmadurez).&lt;/p&gt;  &lt;p&gt;As&amp;#237; que finalmente me acorde de &lt;a href="http://www.netbeans.org/" target="_blank"&gt;&lt;u&gt;Netbeans&lt;/u&gt;&lt;/a&gt; (tengo que reconocer que nunca fui fan&amp;#225;tico de esta IDE, siempre me sent&amp;#237; mas c&amp;#243;modo con Eclipse, aunque tuviera que andar haciendo todo tipo de b&amp;#250;squedas para encontrar los plugins) y me baje la versi&amp;#243;n 6 que trae un editor de BPEL y adem&amp;#225;s trae un app server para desplegar el BPEL y ejecutarlo, &lt;/p&gt;  &lt;p&gt;La verdad que me gusto bastante esta nueva versi&amp;#243;n de Netbeans, fui directamente a ver la parte de BPEL y tiene algunos ejemplos que est&amp;#225;n muy buenos y que ya tienen todo armado para desplegarlos en el App server que nos instala cuando lo bajamos.&lt;/p&gt;  &lt;p&gt;Para mi pr&amp;#243;ximo Post voy a armar un peque&amp;#241;o tutorial de BPEL usando esta herramienta.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-8883770065912221776?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/8883770065912221776/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=8883770065912221776' title='3 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/8883770065912221776'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/8883770065912221776'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2008/01/bpel-designer.html' title='BPEL Designer'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-2586811848016234438</id><published>2008-01-10T16:37:00.001-02:00</published><updated>2008-01-10T16:37:50.790-02:00</updated><title type='text'>Enterprise Service Bus - WSo2 ESB</title><content type='html'>&lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:7658cc96-53dd-42b7-a0b3-4c8691ede40f" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Etiquetas de Technorati: &lt;a href="http://technorati.com/tags/ESB" rel="tag"&gt;ESB&lt;/a&gt;,&lt;a href="http://technorati.com/tags/SOA" rel="tag"&gt;SOA&lt;/a&gt;,&lt;a href="http://technorati.com/tags/BPM" rel="tag"&gt;BPM&lt;/a&gt;&lt;/div&gt;&amp;#160;&amp;#160; &lt;a href="http://lh5.google.com/hgzapata/R4Zl6E6C41I/AAAAAAAAAHw/iOMtcvkipdo/ESB%5B2%5D"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="73" alt="ESB" src="http://lh5.google.com/hgzapata/R4Zl7E6C42I/AAAAAAAAAH4/_XxZKLRO_Ew/ESB_thumb" width="130" border="0" /&gt;&lt;/a&gt;  &lt;p&gt;Hace poco tuve que hacer una demostraci&amp;#243;n de un middleware de integraci&amp;#243;n y sabia que hab&amp;#237;a sido comparado contra otros sistemas que estaban mas orientados a ser sistemas de ESB, el sistema que iba a mostrar tenia esas caracter&amp;#237;sticas pero quer&amp;#237;a conocer otros sistemas del mercado y decid&amp;#237; bajarme el de &lt;a href="http://wso2.org/projects/esb/java" target="_blank"&gt;WSO2.&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Esta empresa ofrece un Service BUS que es gratis y esta basado en &lt;a href="http://ws.apache.org/synapse/" target="_blank"&gt;Synapse&lt;/a&gt;, que es un proyecto de Apache para crear un broker de servicios.&lt;/p&gt;  &lt;p&gt;Me parece interesante recalcar dos cosas, la primera es que el instalador de este ESB ocupa menos de 40mb y el sistema instalado usa menos de 52mb, algo bastante liviano si comparamos a otros ESB del mercado, tambi&amp;#233;n el nivel de prestaciones es bastante mas b&amp;#225;sico, pero no por eso deja de ser una alternativa interesante.&lt;/p&gt;  &lt;p&gt;La consola que trae es bastante intuitiva y en pocos minutos y leyendo un poco de la documentaci&amp;#243;n pude crear un endpoint y publicarlo por medio de un proxy.&lt;/p&gt;  &lt;p&gt;La consola tiene este aspecto:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.google.com/hgzapata/R4Zl9E6C43I/AAAAAAAAAIA/JoG8ByBEcrg/ESB_WSO24"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="250" alt="ESB_WSO2" src="http://lh5.google.com/hgzapata/R4Zl_E6C44I/AAAAAAAAAII/2ypIUOQqi68/ESB_WSO2_thumb2" width="412" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Desde esta consola podemos manejar la configuraci&amp;#243;n del ESB.&lt;/p&gt;  &lt;p&gt;Algunas de las caracter&amp;#237;sticas que pude ver son:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Crear un proxy que es expuesto mediante un WSDL que podemos crear espec&amp;#237;ficamente o usando uno existente      &lt;ul&gt;       &lt;li&gt;Crear pipelines de procesamiento para los mensajes de entrada y salida, en un pipeline definimos acciones que se van a ejecutar durante el procesamiento de un mensaje dentro del BUS, por ejemplo podemos definir el endpoint al que va a ir dirigido el mensaje, logging, transformaci&amp;#243;n (mediante XSLT). Estos pipelines en esta herramienta reciben el nombre de Sequences &lt;/li&gt;        &lt;li&gt;Definir el endpoint al que va a invocar el Proxy, que puede ser un web service, o un servicio que realice tareas de balanceo de carga, etc... &lt;/li&gt;        &lt;li&gt;Definir niveles de logueo &lt;/li&gt;        &lt;li&gt;Monitoreo de las actividades dentro del WS &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;A continuaci&amp;#243;n un v&amp;#237;deo de ejemplo de como crear un Proxy que llama a un Web Service pasando por el ESB de WSo2.&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:5737277B-5D6D-4f48-ABFC-DD9C333F4C5D:4b28a320-e820-4667-943b-1a05bc5f5b53" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;div&gt;&lt;embed src="http://images.video.msn.com/flash/soapbox1_1.swf" quality="high" width="432" height="364" wmode="transparent" type="application/x-shockwave-flash" pluginspage="http://macromedia.com/go/getflashplayer" flashvars="c=v&amp;v=e3e88756-8647-4977-828c-59b723faf9fe&amp;from=writer"&gt;&lt;/embed&gt;&lt;/div&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-2586811848016234438?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/2586811848016234438/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=2586811848016234438' title='3 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/2586811848016234438'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/2586811848016234438'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2008/01/enterprise-service-bus-wso2-esb.html' title='Enterprise Service Bus - WSo2 ESB'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-4599923417608749031</id><published>2007-12-26T23:54:00.001-03:00</published><updated>2007-12-26T23:54:55.151-03:00</updated><title type='text'>Task list - Remember the milk</title><content type='html'>&lt;p&gt; Existen una gran variedad de aplicaciones para mantener ordenadas las tareas del d&amp;#237;a a d&amp;#237;a, Google calendar, mails, outlook etc...&lt;/p&gt;  &lt;p&gt;Recientemente me cruce por la web con una aplicaci&amp;#243;n muy interesante con un nombre muy curioso, &lt;a href="http://www.rememberthemilk.com" target="_blank"&gt;&amp;quot;Remember the milk&amp;quot;&lt;/a&gt; este Task List manager se integra perfectamente con Google Calendar, y tambi&amp;#233;n con GMail donde podemos ver una lista de tareas al costado de la lista de mails&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.google.com/hgzapata/R3MT-k6C4zI/AAAAAAAAAHg/OjVo5beuOq4/GMai_and_task%5B2%5D"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="129" alt="GMai_and_task" src="http://lh3.google.com/hgzapata/R3MT_U6C40I/AAAAAAAAAHo/_bk_dZUnmVs/GMai_and_task_thumb" width="244" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Otra capacidad que tiene es la de enviar los recordatorios, estos pueden ser enviados v&amp;#237;a SMS a un celular, mail, o mediante mensajes instant&amp;#225;neos.&lt;/p&gt;  &lt;p&gt;Y lo mejor de todo... For free!&amp;#160; :-)&lt;/p&gt;  &lt;p&gt;Existe una versi&amp;#243;n pro que es paga que adem&amp;#225;s permite sincronizar con dispositivos mobile.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-4599923417608749031?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/4599923417608749031/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=4599923417608749031' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/4599923417608749031'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/4599923417608749031'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2007/12/task-list-remember-milk.html' title='Task list - Remember the milk'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-8157580016742671556</id><published>2007-09-12T00:25:00.000-03:00</published><updated>2007-09-12T00:44:15.341-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bpm'/><category scheme='http://www.blogger.com/atom/ns#' term='Workflow'/><title type='text'>Nuevo libro de OSWorkflow</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_iN4kNC8BfLk/Rude_7RCzRI/AAAAAAAAAF0/JW7JfDWLAmM/s1600-h/1847191525.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp2.blogger.com/_iN4kNC8BfLk/Rude_7RCzRI/AAAAAAAAAF0/JW7JfDWLAmM/s200/1847191525.png" alt="" id="BLOGGER_PHOTO_ID_5109156754609065234" border="0" /&gt;&lt;/a&gt;&lt;blogsitefeed&gt;Recientemente a &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_0"&gt;través&lt;/span&gt; de un &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;feed&lt;/span&gt; me encuentro con la grata noticia de que &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_2"&gt;apareció&lt;/span&gt; un libro de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;OSWorkflow&lt;/span&gt;. Para mi &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_4"&gt;sorpresa&lt;/span&gt; me encuentro con que &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_5"&gt;además&lt;/span&gt; el libro lo &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_6"&gt;escribió&lt;/span&gt; alguien a quien &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_7"&gt;conocí&lt;/span&gt; personalmente en una breve &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_8"&gt;ocasión&lt;/span&gt; justamente por un tema de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;integracion&lt;/span&gt; de una herramienta de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;BPM&lt;/span&gt; con un desarrollo que realizaron sobre la plataforma de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;OSWorkflow&lt;/span&gt;.&lt;br /&gt;Con lo que seguramente vamos a poder encontrarnos con un libro que nos puede dar una &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_12"&gt;dimensión&lt;/span&gt; real sobre el uso de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;OSWorkflow&lt;/span&gt; en situaciones reales.&lt;br /&gt;&lt;br /&gt;El contenido del mismo es:&lt;br /&gt;&lt;br /&gt;&lt;/blogsitefeed&gt;&lt;span style="font-weight: bold;"&gt;Chapter 1&lt;/span&gt; gives an overview of the BPM technology and the workflow engine, along with an analysis of the different type of BPMS.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Chapter 2&lt;/span&gt; introduces OSWorkflow and teaches the basics of the workflow engine along with a real life example.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Chapter 3&lt;/span&gt; introduces several key features of OSWorkflow like handling persistent and transient variables, variable interpolation, built in OSWorkflow functions, Conditions, BeanShell scripting.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Chapter 4&lt;/span&gt; covers Persistence of variables across invocations, and the FunctionProviders along with integrating OSWorkflow with Spring.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Chapter 5&lt;/span&gt; introduces and integrates Rules engine and Drools open source rule engine.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Chapter 6&lt;/span&gt; we explore the Quartz task scheduler, its integration with OSWorkflow and we give a tutorial with Quartz sending events and actions to OSWorkflow.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Chapter 7&lt;/span&gt; introduces Event Stream Processing and Complex Event Processing. We give an OSWorkflow function provider that interfaces with the ESPer CEP engine and allows the monitoring of real time process information and events.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Chapter 8&lt;/span&gt; gives OSWorkflow visualization of its business process information with the Pentaho Open source BI solution. Using the charting capabilities of Pentaho we build an enterprise process dashboard to monitor and analyze the processes.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Los datos del libro&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;b&gt;Language&lt;/b&gt; English                          &lt;br /&gt;&lt;b&gt;Paperback&lt;/b&gt; 200 pages [191mm x 235mm]&lt;br /&gt;&lt;b&gt;Release date&lt;/b&gt;  August 2007&lt;br /&gt;&lt;b&gt;ISBN&lt;/b&gt; 1847191525&lt;br /&gt;&lt;b&gt;ISBN 13&lt;/b&gt; 978-1-847191-52-6&lt;br /&gt;&lt;b&gt;Author(s)&lt;/b&gt;  &lt;a href="http://www.packtpub.com/author_view_profile/id/144"&gt;Diego Adrian Naya Lazo&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-8157580016742671556?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.packtpub.com/OSWorkflow-Java-open-source-Business-Process-Management/book' title='Nuevo libro de OSWorkflow'/><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/8157580016742671556/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=8157580016742671556' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/8157580016742671556'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/8157580016742671556'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2007/09/nuevo-libro-de-osworkflow.html' title='Nuevo libro de OSWorkflow'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_iN4kNC8BfLk/Rude_7RCzRI/AAAAAAAAAF0/JW7JfDWLAmM/s72-c/1847191525.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-7499872270267724040</id><published>2007-09-02T23:37:00.000-03:00</published><updated>2007-09-03T01:12:57.537-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='EAI'/><category scheme='http://www.blogger.com/atom/ns#' term='ESB'/><title type='text'>Enterprise integration architecture y ESB Architecture??</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_iN4kNC8BfLk/Rtt1LhPpWuI/AAAAAAAAAE8/UqCQn5AZLyQ/s1600-h/esb-2.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp0.blogger.com/_iN4kNC8BfLk/Rtt1LhPpWuI/AAAAAAAAAE8/UqCQn5AZLyQ/s320/esb-2.jpg" alt="" id="BLOGGER_PHOTO_ID_5105803443317594850" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;blogsitefeed&gt;&lt;/blogsitefeed&gt;&lt;span style="" lang="ES-TRAD"&gt;No se cuando realmente empecé a trabajar en temas de integración, en mis comienzos en una empresa que manejaba transacciones de tarjetas de crédito uno de mis primeros desarrollos fue un programa que tomaba datos de un archivo que luego eran procesados y se cargaban datos que era utilizados en otros sistemas.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-TRAD"&gt;Eso de alguna manera era una forma de integración (este tipo de integraciones &lt;span style=""&gt; &lt;/span&gt;es denominada integración de datos) donde un sistema que dependía de datos de otro lo hacia por medio de interfaces que eran archivos.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-TRAD"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-TRAD"&gt;Tarde un poco en entender que eso era una interfase, creo que fue en una reunión con analistas de un modulo de SAP donde se hablaba de tener varias interfaces, en mi mente yo imaginaba “Uhh cuantos conectores que se va a necesitar desarrollar” pero alguien me dijo “a los archivos planos les llaman interfaces” Ohhh ahora entiendo! &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-TRAD"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-TRAD"&gt;El tema es que en algún momento nos vamos a topar con algún problema de integración, ya sea en sus formas mas simples (intercambio de archivos, por medio de una base de datos, o utilizando algún middleware especializado), todo esto es lo que para mi cae dentro de la categoría de AI (architecture integration, y si integro aplicaciones de negocios como un CRM , un ERP, BW, &lt;ponga el="" nombre="" de="" su="" enterprise="" app=""&gt; tenemos lo que hoy se llama EAI).&lt;o:p&gt;&lt;/o:p&gt;&lt;/ponga&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-TRAD"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-TRAD"&gt;Por lo general en una empresa que tiene uno de estos sitemas nos encontramos con que no es el único sistema y que este provee y se alimenta de información/servicios provenientes de otros sistemas, y es donde empezamos a ver integraciones de diferentes tipos, con diferentes niveles de complejidad y en cantidades “industriales”.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-TRAD"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-TRAD"&gt;La moda de querer vender SOA en todo producto que se lanza al mercado puso mas en evidencia el tema de integración y como todo paradigma emergente trajo aparejados muchos nuevos conceptos muchas nuevas siglas y mucha confusión. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-TRAD"&gt;Hoy ya conocemos siglas como SOA (Service oriented architecture), ESB (Enterprise service bus), EDA (Event driven architecture), WS-*(Especificaciones de Web Services), REST&lt;span style=""&gt;  &lt;/span&gt;(Representational state transfer), &lt;span style=""&gt; &lt;/span&gt;BAM (Business activity monitoring), CEP (Complex event processing).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-TRAD"&gt;Entonces terminamos confundiendo algunos conceptos, en una trabajo que tuve que revisar, encontre que la propuesta mezclaba algunas cosas, y estas &lt;span style=""&gt; &lt;/span&gt;representaban errores conceptuales donde se mezclaban patrones de arquitectura con herramientas, esto me parece un error bastante grueso porque representa las bases! Y si no tenemos en claro las bases difícilmente podamos comprender el resto.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-TRAD"&gt;Lo mas notorio que encontré en este ultimo tiempo fue en un blog de alguien que me parece una eminencia en el tema, un desliz de este tipo, donde habla de una arquitectura llamada &lt;a href="http://www.ibm.com/developerworks/webservices/library/ws-soa-esbarch/index.html?ca=drs-"&gt;“ESB architecture”&lt;/a&gt; leyendo el blog creo entender a lo que el llama ESB architecture, pero me parece que es muy importante poder distinguir que ESB es una herramienta de integración que centraliza las comunicaciones y provee una serie de servicios para la interacción de los sistemas, pero que no es una forma de arquitectura en si, al menos para mi no lo es &lt;a href="http://weblog.infoworld.com/realworldsoa/archives/2007/08/ibm_aesboriente.html"&gt;y para otros tampoco&lt;/a&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-TRAD"&gt;Por esto me gustaría compartir este &lt;a href="http://soa-eda.blogspot.com/2007/08/what-is-eai.html"&gt;link&lt;/a&gt; de un blog que para mi no tiene desperdicio que da una explicación muy buena de EAI, ademas tiene notas muy buenas sobre EDA.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-7499872270267724040?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://soa-eda.blogspot.com/2007/08/what-is-eai.html' title='Enterprise integration architecture y ESB Architecture??'/><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/7499872270267724040/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=7499872270267724040' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/7499872270267724040'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/7499872270267724040'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2007/09/enterprise-integration-architecture-y.html' title='Enterprise integration architecture y ESB Architecture??'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp0.blogger.com/_iN4kNC8BfLk/Rtt1LhPpWuI/AAAAAAAAAE8/UqCQn5AZLyQ/s72-c/esb-2.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-7973701610309375359</id><published>2007-04-16T17:22:00.000-03:00</published><updated>2007-04-16T17:41:03.262-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='eda'/><category scheme='http://www.blogger.com/atom/ns#' term='soa'/><title type='text'>xDash</title><content type='html'>&lt;a href="http://bp2.blogger.com/_iN4kNC8BfLk/RiPfPmcHatI/AAAAAAAAADU/yifU9aZ4MmI/s1600-h/400px-Jabber-bulb.svg.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5054128665949334226" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 67px; CURSOR: hand; HEIGHT: 86px" height="126" alt="" src="http://bp2.blogger.com/_iN4kNC8BfLk/RiPfPmcHatI/AAAAAAAAADU/yifU9aZ4MmI/s320/400px-Jabber-bulb.svg.png" width="130" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;Se trata de un framework de integración que esta basado en el protocolo JABBER, me pareció muy interesante.&lt;br /&gt;La arquitectura no es ninguna novedad, se trata de un ESB montado sobre un sistema de mensajeria asincronica, no es muy diferente a lo que hace el Integrator server de Wesbphere, usando MQSeries.&lt;br /&gt;&lt;br /&gt;Pero de todas formas me parece interesante debido a que estuve investigando un poco de algo que cada vez va a ser mas usado, SOA y EDA.&lt;br /&gt;Hoy se habla mucho de SOA, el paradigma principal de SOA es Request/Response, EDA en cambio plantea una arquitectura basada en eventos, donde el paradigma es Publish/Subscribe.Muchas soluciones requieren de una combinación de estas dos Arquitecturas, y ahí es donde entran a jugar los mix de sistemas basados en mensajes, hasta ahora JMS es hoy por hoy el standar de facto, pero es interesante explorar otras tecnologías como JABBER que pueden llegar a ser muy eficientes (miles de usuarios todos los días lo demuestran)&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-7973701610309375359?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://xdash.jabberstudio.org' title='xDash'/><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/7973701610309375359/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=7973701610309375359' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/7973701610309375359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/7973701610309375359'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2007/04/xdash.html' title='xDash'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_iN4kNC8BfLk/RiPfPmcHatI/AAAAAAAAADU/yifU9aZ4MmI/s72-c/400px-Jabber-bulb.svg.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-7920589968123927956</id><published>2007-03-26T10:49:00.000-03:00</published><updated>2007-03-26T10:56:34.871-03:00</updated><title type='text'>Interoperabilidad JMS  .Net</title><content type='html'>&lt;a href="http://bp1.blogger.com/_iN4kNC8BfLk/RgfRBX8jRWI/AAAAAAAAADI/WADfz7aISNY/s1600-h/JMS.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5046231729029989730" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; CURSOR: hand" alt="" src="http://bp1.blogger.com/_iN4kNC8BfLk/RgfRBX8jRWI/AAAAAAAAADI/WADfz7aISNY/s320/JMS.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;Leyendo un poco en Infoq encontre un artículo de interoperabilidad de .Net y JMS, es algo por demas interesante debido a la cantidad de implementaciones que existen hoy de Middlewares que usan JMS.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;El uso de mensajes es una de las soluciones mas escalables a la hora de realizar integraciones entre sistemas.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;Ademas existe una extensa literatura, y patrones sobre integración utilizando esta técnica.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;Para mas info sobre estos patrones visitar la pagina de &lt;a href="http://www.enterpriseintegrationpatterns.com/"&gt;Enterprise integration patterns&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-7920589968123927956?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.infoq.com/articles/jms-spring-messaging-interop' title='Interoperabilidad JMS  .Net'/><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/7920589968123927956/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=7920589968123927956' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/7920589968123927956'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/7920589968123927956'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2007/03/interoperabilidad-jms-net.html' title='Interoperabilidad JMS  .Net'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_iN4kNC8BfLk/RgfRBX8jRWI/AAAAAAAAADI/WADfz7aISNY/s72-c/JMS.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-603049982505394115</id><published>2007-03-09T18:19:00.000-03:00</published><updated>2007-03-26T10:48:41.901-03:00</updated><title type='text'>Implementing an Enterprise Services Architecture</title><content type='html'>&lt;a href="https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/b97cac90-0201-0010-549e-f4028df56b77"&gt;Implementing an Enterprise Services Architecture&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Una guia como para arrancar con la implementacion de arquitecturas ESOA.&lt;br /&gt;&lt;br /&gt;Esta interesante, y despeja algunas dudas que surgen a la hora de ponerse a trabajar en ese topico.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-603049982505394115?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/b97cac90-0201-0010-549e-f4028df56b77' title='Implementing an Enterprise Services Architecture'/><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/603049982505394115/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=603049982505394115' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/603049982505394115'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/603049982505394115'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2007/03/implementing-enterprise-services.html' title='Implementing an Enterprise Services Architecture'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-4229605660364425141</id><published>2007-02-26T11:14:00.000-03:00</published><updated>2007-02-26T11:38:54.413-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rest'/><category scheme='http://www.blogger.com/atom/ns#' term='ws'/><category scheme='http://www.blogger.com/atom/ns#' term='integracion'/><category scheme='http://www.blogger.com/atom/ns#' term='arquitectura'/><category scheme='http://www.blogger.com/atom/ns#' term='soa'/><title type='text'>WS-*/REST   Wars</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_iN4kNC8BfLk/ReLwcTSIDeI/AAAAAAAAAC4/CUjKBLvYEqc/s1600-h/gears2.gif"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp1.blogger.com/_iN4kNC8BfLk/ReLwcTSIDeI/AAAAAAAAAC4/CUjKBLvYEqc/s320/gears2.gif" alt="" id="BLOGGER_PHOTO_ID_5035851702356938210" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;blogsitefeed&gt;Estoy leyendo últimamente muchos &lt;a href="http://www.infoq.com/articles/sanjiva-rest-myths"&gt;post &lt;/a&gt;de lo que parece una batalla por establecer cual es la mejor arquitectura para aplicaciones basadas en servicios o en recursos si hablamos en terminos de REST.&lt;br /&gt;&lt;br /&gt;Por un lado esta los &lt;a href="http://www.xfront.com/REST-Web-Services.html"&gt;WS-REST&lt;/a&gt; y por otro todo el stack WS-*,  y están los detractores y los defensores de cada uno de estos estilos, lo que mas me llama la atención es el fervor casi religioso con el que cada uno defiende el estilo que le parece mas correcto.&lt;br /&gt;Mi conclusión es que REST es un estilo que puede servir en ciertos casos y en otros no, lo mismo que WS-*.&lt;br /&gt;&lt;br /&gt;Creo que es trabajo del arquitecto poder apartarse de estos fanatismos y poder decidir en base a criterios uniformes y bien establecidos, donde la desicion que se tome este orientada a cumplir con una serie de objetivos y no con una tendencia o moda de la comunidad.&lt;br /&gt;&lt;br /&gt;Otra guerra muy interesante y también graciosa por el tono de alguno de los &lt;a href="http://www.jroller.com/page/fate?entry=dodgy_benchmarks"&gt;POST&lt;/a&gt; es la de XFire y AXIS2.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/blogsitefeed&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-4229605660364425141?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/4229605660364425141/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=4229605660364425141' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/4229605660364425141'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/4229605660364425141'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2007/02/ws-rest-wars.html' title='WS-*/REST   Wars'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_iN4kNC8BfLk/ReLwcTSIDeI/AAAAAAAAAC4/CUjKBLvYEqc/s72-c/gears2.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-2863245952452856196</id><published>2007-02-10T21:44:00.000-03:00</published><updated>2007-02-18T01:07:40.010-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bpm'/><category scheme='http://www.blogger.com/atom/ns#' term='process'/><category scheme='http://www.blogger.com/atom/ns#' term='caf'/><category scheme='http://www.blogger.com/atom/ns#' term='soa'/><title type='text'>Business Process Management - BPM</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_iN4kNC8BfLk/Rc6LU0prWJI/AAAAAAAAACQ/81B9y_dguwo/s1600-h/workflow.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5030111023666518162" style="FLOAT: right; MARGIN: 0pt 0pt 10px 10px; CURSOR: pointer" alt="" src="http://bp2.blogger.com/_iN4kNC8BfLk/Rc6LU0prWJI/AAAAAAAAACQ/81B9y_dguwo/s320/workflow.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;blogsitefeed&gt;BPM es una de esas disciplinas que la gente que siempre se dedico a desarrollos de sistemas a veces ve pasar medio de costado, o directamente ni saben de que se trata, como era mi caso hace un tiempo atrás.&lt;br /&gt;&lt;br /&gt;In an Nutshell la practica de BPM se encarga de la administración de los procesos de la organización las principales actividades que lleva a cabo son:&lt;br /&gt;&lt;/blogsitefeed&gt;&lt;ul&gt;&lt;li&gt;Diseño Modelado de los procesos&lt;/li&gt;&lt;li&gt;Ejecución de los procesos&lt;/li&gt;&lt;li&gt;Optimizacion de los procesos&lt;/li&gt;&lt;li&gt;Monitoreo de los procesos&lt;/li&gt;&lt;/ul&gt;Hoy en día la sigla BPM es mucho mas conocida que hace varios años atras, recuerdo que la primera vez que tuve un acercamiento fue en 1998 aproximadamente, cuando fui a una reunión en un &lt;a href="http://www.finanzas.com/idglo.5630..id.0/diccionario/resultados.htm"&gt;banco mayorista,&lt;/a&gt; y la gente que estaba modelando los procesos del banco nos hizo una demostración de una herramienta llamada &lt;a href="http://www.ids-scheer.com/international/english/products/53961"&gt;Aris&lt;/a&gt;, vimos cosas muy interesantes a nivel de modelado y de simulación de procesos, el problema es que necesitábamos ademas poder de alguna forma ejecutar esos procesos, y la plataforma no contaba con esas posibilidades.&lt;br /&gt;Pasaron algunos años para que requerimientos de ese tipo puedan ser cumplidos utilizando herramientas y estandares de mercado, hoy contamos con varios de estos estandares y con todo el empuje que están recibiendo las arquitecturas orientadas a servicios.&lt;br /&gt;&lt;br /&gt;Acá es donde entra a tener mucha mas importancia BPM, si bien ya de por si es una disciplina muy importante para las organizaciones, esta importancia se potencia mas con la disponibilizacion de los procesos y la creación de ecosistemas donde coexisten sistemas heterogeneos, y donde la próxima generación de aplicaciones sera lo que se llaman &lt;a href="http://en.wikipedia.org/wiki/Composite_applications"&gt;Composite aplications&lt;/a&gt; (tema que va a dar mucho mas que hablar en el futuro).&lt;br /&gt;Si bien las &lt;a href="http://en.wikipedia.org/wiki/Composite_applications"&gt;Composite aplications&lt;/a&gt; no son nuevas, la disponibilizacion de los procesos de negocios como servicios para construir sistemas si es algo mas nuevo, y para poder generar respuestas a la velocidad con que se generan los cambios las empresas necesitan mayor flexibilidad en sus procesos de negocios, pero suelen chocarse con la barrera de los sistemas, los cuales no pueden responder con la velocidad requerida para la implementacion de estos cambios.&lt;br /&gt;Hoy por hoy recien se esta empezando a ver la necesidad de la reutilizacion, pero ya no a nivel de codigo, sino a nivel de procesos, y en el futuro vamos a empezar a escuchar mas sobre nuevos roles como el de &lt;a href="https://www.sdn.sap.com/irj/sdn/developerareas/bpx-gettingstarted"&gt;Business Process Expert&lt;/a&gt; , rol que va actuar como nexo entre lo que es procesos y el area que va a implementarlos.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-2863245952452856196?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/2863245952452856196/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=2863245952452856196' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/2863245952452856196'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/2863245952452856196'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2007/02/business-process-management-bpm.html' title='Business Process Management - BPM'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_iN4kNC8BfLk/Rc6LU0prWJI/AAAAAAAAACQ/81B9y_dguwo/s72-c/workflow.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-115981695271017558</id><published>2006-10-02T16:10:00.000-03:00</published><updated>2006-10-02T16:22:32.736-03:00</updated><title type='text'>Analizando aplicaciones en producción</title><content type='html'>&lt;blogsitefeed&gt;&lt;/blogsitefeed&gt;&lt;span lang="ES"&gt;Buscando algo de información sobre herramientas para realizar profiling encontré un blog que hablaba sobre el problema de que hacer cuando necesitamos hacer profiling de una aplicación que esta en producción.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;    &lt;p style="font-family: verdana;" class="MsoNormal"&gt;&lt;span lang="ES"&gt;Este problema generalmente surge por problemas de performance en la aplicación, por lo que si metemos un profiler la performance se vera todavía mas afectada.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;        &lt;p style="font-family: verdana;" class="MsoNormal"&gt;&lt;span lang="ES"&gt;Afortunadamente se pueden tomar snapshots de la ejecución de una aplicación java a partir de  Java 5 update 7 y de Java 1.4.2_12, estos snapshots pueden ser analizados con algunas herramientas que permiten obtener información bastante interesante como esta corriendo la aplicación y recursos que se están utilizando.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  Podran encontrar mas informacion en estos links:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogs.sun.com/alanb/entry/heapdumponoutofmemoryerror_option_in_5_0u7"&gt;Blog que discute el tema de HEAP DUMP en Java&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Herramientas para analizar HEAP DUMPS&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://yusuke.homeip.net/samurai/?english"&gt;&lt;span style="font-weight: bold;"&gt;Samurai&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;&lt;a href="https://hat.dev.java.net/"&gt;HAT&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;&lt;a href="http://java.sun.com/developer/technicalArticles/Programming/HPROF.html"&gt;HPROF&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-115981695271017558?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/115981695271017558/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=115981695271017558' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/115981695271017558'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/115981695271017558'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2006/10/analizando-aplicaciones-en-produccin.html' title='Analizando aplicaciones en producción'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-114928449592100273</id><published>2006-06-02T18:34:00.000-03:00</published><updated>2006-06-02T18:41:35.950-03:00</updated><title type='text'>Explorando nuevos usos de Jabber</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;span lang="ES-AR"&gt;Estaba mirando un poco JMS y decidí bajar el &lt;a href="http://www-306.ibm.com/software/webservers/appserv/community/"&gt;Websphere CE&lt;/a&gt; para hacer pruebas, cuando voy a al configuración del servidor de JMS encuentro que puedo agregar un &lt;a href="http://www.jabber.org"&gt;Jabber&lt;/a&gt; Listener.&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="ES-AR"&gt;Esto me hizo recordar inmediatamente un evento al que había asistido de Oracle, donde en una de las demos que había, mostraban una aplicación que se accedía desde un cliente de IM que podía acceder servidores &lt;a href="http://www.jabber.org"&gt;Jabber&lt;/a&gt;, donde el sistema desplegaba un menú y el usuario indicaba mediante un numero que opción quería y el sistema le respondía nuevamente con la información que había solicitado.&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="ES-AR"&gt;En ese momento se me ocurrieron sistemas interactivos para una mesa de ayuda, o para consultas de datos, todo es valido como opción para poder exponer información.&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="ES-AR"&gt;Me puse a ver un poco y encontré otra forma de usar &lt;a href="http://www.jabber.org"&gt;Jabber&lt;/a&gt; dentro de una aplicación, y es combinado con Log4J, me parece muy interesante ya que puede servir para mandar mensajes a un administrador o a alguien que este monitoreando determinada aplicación.&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="ES-AR"&gt;Aca dejo &lt;st1:personname productid="la URL" st="on"&gt;la &lt;a href="http://www-128.ibm.com/developerworks/java/library/j-instlog/"&gt;URL&lt;/a&gt;&lt;/st1:PersonName&gt; del artículo para que lo vean, de paso es un buen ejemplo de como construir appenders para Log4j.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="ES-AR"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-114928449592100273?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/114928449592100273/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=114928449592100273' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/114928449592100273'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/114928449592100273'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2006/06/explorando-nuevos-usos-de-jabber.html' title='Explorando nuevos usos de Jabber'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-114892948079720514</id><published>2006-05-29T15:46:00.000-03:00</published><updated>2006-05-29T16:04:40.826-03:00</updated><title type='text'>JavaScript The Objec tWay</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;span lang="ES-AR"&gt;Estuve trabajando un poco con algunas cosas que estaban hechas con JavaScript, y tenia que introducir un pequeño cambio en algo que se suponía debería ser sencillo, afortunadamente no lo fue, y tuve que ponerme a refactorizar todo el código que estaba escrito en una forma totalmente procedural utilizando el nefasto estilo spaghetti.&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="ES-AR"&gt;Tarde o temprano iba a tener que meterle algo de mano a cosas hechas en JavaScript, y como esas que uno espera nunca tener que hacer, llego ese momento.&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="ES-AR"&gt;Recordé que una vez escuche que en JavaScript se podía llegar a trabajar en una forma bastante “objetosa” así que decidí ponerme a investigar un poco y encontré que efectivamente se puede y que además se pueden hacer cosas bastante interesantes que ni me imaginaba.&lt;/span&gt;&lt;/p&gt;                  &lt;p class="MsoNormal"&gt;&lt;span lang="ES-AR"&gt;Por ejemplo, se pueden crear Clases y generar instancias de estas, se puede llegar a construir una herencia con un mecanismo que se llama prototipado:&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Clases con JavaScript:&lt;/span&gt;&lt;o:p style="font-weight: bold;"&gt;&lt;/o:p&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 102);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-weight: bold;"&gt;function &lt;/span&gt;Reporte() {&lt;br /&gt;    &lt;span style="font-weight: bold;"&gt;this&lt;/span&gt;.inicializar = &lt;span style="font-weight: bold;"&gt;function&lt;/span&gt;(e) {&lt;br /&gt;        window.alert("Esto es una prueba de prototipos con JS");&lt;br /&gt;    }     &lt;br /&gt;   &lt;br /&gt;    &lt;span style="font-weight: bold;"&gt;this&lt;/span&gt;.testTrue = &lt;span style="font-weight: bold;"&gt;function&lt;/span&gt;(e) {&lt;br /&gt;        &lt;span style="font-weight: bold;"&gt;return &lt;/span&gt;false;     &lt;br /&gt;    }           &lt;br /&gt;}    &lt;p class="MsoNormal"&gt;&lt;span style="" lang="EN-GB"&gt;&lt;span style="color: rgb(255, 102, 102);"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-weight: bold;"&gt;function &lt;/span&gt;main() { &lt;br /&gt;    &lt;span style="font-weight: bold;"&gt;var &lt;/span&gt;aReporte = &lt;span style="font-weight: bold;"&gt;new &lt;/span&gt;Reporte();             &lt;br /&gt;    aReporte.inicializar();             &lt;br /&gt;    &lt;span style="font-weight: bold;"&gt;if&lt;/span&gt;(aReporte.testTrue()) {&lt;br /&gt;        window.alert("La validacion dio verdadera");             &lt;br /&gt;    } &lt;br /&gt;}&lt;p class="MsoNormal"&gt;&lt;span lang="ES-AR"&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="ES-AR"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="ES-AR"&gt;En el ejemplo se ve como se crea una Clase llamada Reporte, esta clase contiene una funcion llamara inicializar, que emite un mensaje y en la funcion main se ve como se usa la clase Reporte&lt;/span&gt;&lt;/p&gt;    &lt;p style="font-weight: bold;" class="MsoNormal"&gt;&lt;span lang="ES-AR"&gt;&lt;o:p&gt;&lt;/o:p&gt;Herencia con JavaScript&lt;/span&gt;&lt;/p&gt;    &lt;pre&gt;&lt;span style="" lang="EN-GB"&gt;&lt;span style="color: rgb(255, 102, 102);"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-weight: bold;"&gt;function &lt;/span&gt;superClass() { &lt;br /&gt;    &lt;span style="font-weight: bold;"&gt;this&lt;/span&gt;.supertest = superTest;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;function &lt;/span&gt;subClass() { &lt;br /&gt;    &lt;span style="font-weight: bold;"&gt;this&lt;/span&gt;.inheritFrom = superClass; &lt;br /&gt;    &lt;span style="font-weight: bold;"&gt;this&lt;/span&gt;.inheritFrom(); &lt;br /&gt;    &lt;span style="font-weight: bold;"&gt;this&lt;/span&gt;.subtest = subTest;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;function &lt;/span&gt;superTest() { &lt;br /&gt;    &lt;span style="font-weight: bold;"&gt;return &lt;/span&gt;"superTest";&lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;function &lt;/span&gt;subTest() { &lt;br /&gt;    &lt;span style="font-weight: bold;"&gt;return &lt;/span&gt;"subTest";&lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;var &lt;/span&gt;newClass = &lt;span style="font-weight: bold;"&gt;new &lt;/span&gt;subClass();&lt;br /&gt;alert(newClass.subtest());&lt;br /&gt;alert(newClass.supertest());&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;pre&gt;&lt;span style="" lang="EN-GB"&gt;&lt;br /&gt;Esto es un poco de lo que vi hoy, dejo algunos links que me sirvieron bastante.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.developer-x.com/tutorials/oopjs/"&gt;Tutorial OOP javaScript&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://nefariousdesigns.co.uk/archive/2006/05/object-oriented-javascript"&gt;Object Oriented JavaScript&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;pre&gt;&lt;span style="" lang="EN-GB"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-114892948079720514?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/114892948079720514/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=114892948079720514' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/114892948079720514'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/114892948079720514'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2006/05/javascript-objec-tway.html' title='JavaScript The Objec tWay'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-114884576811269928</id><published>2006-05-28T16:31:00.000-03:00</published><updated>2006-05-28T17:30:14.970-03:00</updated><title type='text'>Ciencia Ficción en Bits</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-AR"&gt;Hace poco encontré un viejo Diskette de cuando estaba cursando en la secundaria en 4to año, algunos eones atrás, increíblemente estaba etiquetado, algo que solo hacia con discos que realmente creía interesantes.&lt;br /&gt;Lo que decía la etiqueta era &lt;/span&gt;&lt;a href="http://http/axxon.com.ar/axxon.htm"&gt;&lt;span style="" lang="ES-AR"&gt;AXXON&lt;/span&gt;&lt;/a&gt;&lt;span style="" lang="ES-AR"&gt; , repentinamente recordé que era el contenido del disco, una revista!!&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-AR"&gt;La revista AXXON era una publicación de ciencia ficción gratuita que se distribuía en Diskette, estaba hecha creo en Turbo Pascal, usando programación grafica, incluía en sus cuentos imágenes y enlaces estilo HTML, y eran muy buenas historias.&lt;br /&gt;Buscando en Google encontré que tienen una pagina y que hoy es aun mas interesante que cuando la conocí, así que si les gusta el genero les recomiendo que se den una vuelta y disfruten de buenas historias.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;blogsitefeed&gt;&lt;br /&gt;&lt;/blogsitefeed&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-114884576811269928?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/114884576811269928/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=114884576811269928' title='2 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/114884576811269928'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/114884576811269928'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2006/05/ciencia-ficcin-en-bits.html' title='Ciencia Ficción en Bits'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-114859264314214649</id><published>2006-05-25T17:21:00.000-03:00</published><updated>2006-05-26T10:47:55.116-03:00</updated><title type='text'>Había una vez AJAX</title><content type='html'>&lt;blogsitefeed&gt;&lt;/blogsitefeed&gt;&lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-AR"&gt;El desarrollo&lt;span style="font-weight: bold;"&gt; WEB&lt;/span&gt; que comenzó hace varios años era puramente estático con paginas escritas en HTML que podían tener vínculos con otros documentos, una evolución de este modelo fue las paginas dinámicas que por medio de procesos generaban el código &lt;span style="font-weight: bold;"&gt;HTML&lt;/span&gt; que se presentaba, estos procesos de los denominaba programas &lt;a href="http://hoohoo.ncsa.uiuc.edu/cgi/"&gt;&lt;span style="font-weight: bold;"&gt;CGI&lt;/span&gt; &lt;/a&gt;y permitían que se acceda a bases de datos y que los contenidos sean mostrados en paginas &lt;span style="font-weight: bold;"&gt;HTML&lt;/span&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-AR"&gt;Ese modelo sirvió bastante tiempo pero tenia falencias como el tiempo de ejecución o la cantidad de pedidos que podían ser servidos en un momento determinado, debido a que los programas &lt;a href="http://hoohoo.ncsa.uiuc.edu/cgi/"&gt;&lt;span style="font-weight: bold;"&gt;CGI&lt;/span&gt; &lt;/a&gt;se ejecutaban en un proceso distinto por cada request que atendían.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-AR"&gt;Como consecuencia de esto aparecieron otras soluciones que básicamente solventaban los problemas de escalabilidad del modelo &lt;a href="http://hoohoo.ncsa.uiuc.edu/cgi/"&gt;&lt;span style="font-weight: bold;"&gt;CGI&lt;/span&gt;. &lt;/a&gt;Surgieron servidores que podían correr estos procesos de una manera mucho mas rápida y sin el overhead de la creación de procesos, en esa época Netscape con su servidor WEB tenia un conjunto de librerías llamadas &lt;span style="font-weight: bold;"&gt;&lt;a href="http://www.le-berre.com/nsapi/nsapi.htm"&gt;NSAPI&lt;/a&gt; &lt;/span&gt;y Microsoft con su &lt;span style="font-weight: bold;"&gt;IIS &lt;/span&gt;tenia las &lt;a href="http://www.genusa.com/isapi/"&gt;&lt;span style="font-weight: bold;"&gt;ISAPI&lt;/span&gt;&lt;/a&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-AR"&gt;Luego apareció Java que de a poco iba ganando espacio en &lt;st1:personname productid="la WEB" st="on"&gt;la &lt;span style="font-weight: bold;"&gt;WEB&lt;/span&gt;&lt;/st1:personname&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;y surge un modelo que conceptualmente se parecía a los Netscape y Microsoft, los Servlets, pero con algunas cosas que los hicieron particularmente atractivos para los desarrolladores, y era la simplicidad con la que se podía crearlos, en contrapartida con los modelos de Netscape y de Microsoft.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-AR"&gt;Pero resulta que el modelo del request y del response para refrescar los datos de la pantalla no había presentado una evolución en todo este tiempo, esto fue así hasta que Google comienza a desplegar aplicaciones como Gmail donde uno podía ver como una aplicación &lt;span style="font-weight: bold;"&gt;WEB &lt;/span&gt;se comportaba casi como una aplicación del tipo Desktop, esto despertó la curiosidad de muchos y es donde se comenzó a hablar de &lt;span style="font-weight: bold;"&gt;AJAX&lt;/span&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-AR"&gt;Hoy en día ya nadie se sorprende de ver una aplicación donde las paginas cambian su contenido sin que se realicen refrescos de la misma, es mas hoy es algo que resulta ya molesto tener que refrescar las paginas para cargar la información de un combo.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-AR"&gt;Pero como con todas las tecnologías que emergen en un principio son algo complicadas y muchas veces caemos en tareas repetitivas o en modelos donde las cosas no son manejables o reutilizables.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-AR"&gt;La batalla de los entornos de desarrollo como &lt;span style="font-weight: bold;"&gt;Java &lt;/span&gt;y &lt;span style="font-weight: bold;"&gt;.Net&lt;/span&gt; puede llegar a tornarse desiciva si alguno de estos logra abstraer todo esta complejidad y ocultarla al desarrollador.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-AR"&gt;Microsoft ya esta trabajando en un framework llamado &lt;a href="http://atlas.asp.net"&gt;ATLAS&lt;/a&gt;  que proveerá componentes para&lt;span style="font-weight: bold;"&gt; ASP .Net&lt;/span&gt; que trabajaran con &lt;span style="font-weight: bold;"&gt;AJAX.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-AR"&gt;Para &lt;span style="font-weight: bold;"&gt;Java&lt;/span&gt; hay también bastantes frameworks de presentación que están dando soporte para &lt;span style="font-weight: bold;"&gt;AJAX&lt;/span&gt;, y además existe un framework para utilizar de GOOGLE, estuve dándole una mirada a los ejemplos y me pareció excelente el enfoque que dan para poder abstraer la complejidad de desarrollar con esta tecnología , el framework se llama &lt;a href="http://code.google.com/webtoolkit/overview.html"&gt;GWT &lt;/a&gt;(Google Widget Toolkit) &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="ES-AR"&gt;Que será el próximo paso en la evolución de &lt;st1:personname productid="la WEB" st="on"&gt;la  WEB&lt;/st1:personname&gt; ? &lt;st1:personname productid="La WEB Semántica" st="on"&gt;La  WEB Semántica&lt;/st1:personname&gt;? Nuevos protocolos con estado? &lt;span style=""&gt; &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-114859264314214649?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/114859264314214649/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=114859264314214649' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/114859264314214649'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/114859264314214649'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2006/05/haba-una-vez-ajax.html' title='Había una vez AJAX'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-111531887555361851</id><published>2005-05-05T15:47:00.000-03:00</published><updated>2005-05-08T01:43:52.650-03:00</updated><title type='text'>Herramienta para detectar cambios en una API</title><content type='html'>&lt;div class="Section1"&gt;&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 5pt; MARGIN-LEFT: 0cm; MARGIN-RIGHT: 0cm"&gt;&lt;span style="font-family:Arial;font-size:100%;color:black;"&gt;&lt;span lang="ES-MX"  style="color:black;"&gt;Un problema que suele presentarse cuando se trabaja con librerías de terceros son los cambios que se pueden realizar entre una versión y otra, muchas veces sucede que no hay buen manejo de estos cambios y la documentación es prácticamente nula.&lt;br /&gt;Un podría seguir utilizando la versión actual pero la gran mayoría de las veces uno se ve forzado a hacer estos cambios porque la nueva versión contiene importantes mejoras con respecto a las anteriores o arreglan bugs.&lt;br /&gt;Las soluciones que se pueden llegar a plantear es reemplazar la API correr un test de regresión y verificar que todo siga funcionando como se esperaba, o en el caso lamentable de no tener forma de testear la aplicación cambiar la API y cruzar los dedos!!&lt;br /&gt;Para cualquiera de los casos anteriores primero debemos reemplazar la API, lo ideal seria poder tener un filtro previo como para poder lograr mayor visibilidad del cambio que se esta por realizar, una forma de poder lograr esto seria comparando las versiones de la API, la que esta en uso y la que se quiere usar para reemplazar y verificar los cambios que hay entre una y otra, esta es una tarea que puede llegar a ser demasiado costosa en tiempo, pero afortunadamente hay una herramienta que nos puede dar una buena mano para realizar esta tarea &lt;a href="http://jdiff.org/"&gt;JDiff&lt;/a&gt; lo que hace Jdiff es generar un reporte en HTML con el formato de un JavaDoc con las diferencias que contiene una API con respecto a la otra, muestra los métodos que se agregaron, los que se eliminaron, etc... en la pagina hay varios ejemplos de comparaciones de API.&lt;/span&gt;&lt;/span&gt;&lt;span class="EstiloCorreo18"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span lang="ES-MX"   style="font-family:Arial;font-size:10;"&gt;&lt;?xml:namespace prefix = o /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-111531887555361851?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/111531887555361851/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=111531887555361851' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111531887555361851'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111531887555361851'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2005/05/herramienta-para-detectar-cambios-en.html' title='Herramienta para detectar cambios en una API'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-111464096143010534</id><published>2005-04-27T19:29:00.000-03:00</published><updated>2005-04-28T11:10:31.236-03:00</updated><title type='text'>JVM para testear Sistemas de la NASA</title><content type='html'>&lt;p class="mobile-post"&gt;&lt;div class="Section1"&gt;&lt;p class="MsoNormal"&gt;&lt;span class="EstiloCorreo15"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span lang="ES-MX" style="FONT-SIZE: 10pt; mso-bidi-: ES-MXfont-family:Arial;font-size:12;"  &gt;La NASA hizo publico y open source una JVM que permite encontrar dentro de un programa los flujos que pueden llevar la ejecucion a un estado en la cual la misma seria inestable.&lt;?xml:namespace prefix = o /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span class="EstiloCorreo15"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span lang="ES-MX" style="FONT-SIZE: 10pt; mso-bidi-: ES-MXfont-family:Arial;font-size:12;"  &gt;Según los creadores es capaz de econtrar excepciones mal manejadas, problemas de deadlocks, y que esta especialmente pensado para poder testear aplicaciones multithread.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span class="EstiloCorreo15"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span lang="ES-MX" style="FONT-SIZE: 10pt; mso-bidi-: ES-MXfont-family:Arial;font-size:12;"  &gt;El proyecto esta hosteado en source forge y su nombre es &lt;a href="http://javapathfinder.sourceforge.net/"&gt;Java PathFinder&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-111464096143010534?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/111464096143010534/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=111464096143010534' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111464096143010534'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111464096143010534'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2005/04/jvm-para-testear-sistemas-de-la-nasa.html' title='JVM para testear Sistemas de la NASA'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-111453923840088431</id><published>2005-04-26T15:13:00.000-03:00</published><updated>2005-04-26T15:13:58.403-03:00</updated><title type='text'>Patrones de diseño</title><content type='html'>&lt;p class="mobile-post"&gt;&lt;div class=Section1&gt;  &lt;p class=MsoNormal&gt;&lt;span class=EstiloCorreo15&gt;&lt;font size=2 color=black face=Arial&gt;&lt;span lang=ES-MX style='font-size:10.0pt;mso-bidi-font-size:12.0pt; font-family:Arial;mso-ansi-language:ES-MX'&gt;Desde la aparicion en 1995 de el libro &lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;font color=black&gt;&lt;span style='color:black'&gt;&lt;a href="http://vig.pearsoned.co.uk/catalog/academic/product/0,1144,0201633612,00.html"&gt;&lt;span style='mso-ascii-font-family:"Times New Roman";mso-hansi-font-family:"Times New Roman"'&gt;Design Patterns: Elements of Reusable Object-Oriented Software&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/font&gt;&lt;span class=EstiloCorreo15&gt;&lt;font size=2 color=black face=Arial&gt;&lt;span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:Arial;mso-ansi-language: ES-MX'&gt; &lt;span lang=ES-MX&gt;de los autores &lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;font size=2 color=black face=Arial&gt;&lt;span style='font-size:10.0pt;font-family:Arial; color:black'&gt;&lt;a href="http://www.amazon.com/exec/obidos/search-handle-url/index=books&amp;amp;field-author=Erich%20Gamma/002-8971615-2361611"&gt;&lt;font color=black&gt;&lt;span style='mso-ascii-font-family:Arial;mso-hansi-font-family: Arial;color:black'&gt;Erich Gamma&lt;/span&gt;&lt;/font&gt;&lt;/a&gt;, &lt;a href="http://www.amazon.com/exec/obidos/search-handle-url/index=books&amp;amp;field-author=Richard%20Helm/002-8971615-2361611"&gt;&lt;font color=black&gt;&lt;span style='mso-ascii-font-family:Arial;mso-hansi-font-family: Arial;color:black'&gt;Richard Helm&lt;/span&gt;&lt;/font&gt;&lt;/a&gt;, &lt;a href="http://www.amazon.com/exec/obidos/search-handle-url/index=books&amp;amp;field-author=Ralph%20Johnson/002-8971615-2361611"&gt;&lt;font color=black&gt;&lt;span style='mso-ascii-font-family:Arial;mso-hansi-font-family: Arial;color:black'&gt;Ralph Johnson&lt;/span&gt;&lt;/font&gt;&lt;/a&gt;, &lt;a href="http://www.amazon.com/exec/obidos/search-handle-url/index=books&amp;amp;field-author=John%20Vlissides/002-8971615-2361611"&gt;&lt;font color=black&gt;&lt;span style='mso-ascii-font-family:Arial;mso-hansi-font-family: Arial;color:black'&gt;John Vlissides&lt;/span&gt;&lt;/font&gt;&lt;/a&gt; mas conocidos como GoF (Gang of four) el movimiento detrás de los patterns tuvo un auge muy grande.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 color=black face=Arial&gt;&lt;span style='font-size: 10.0pt;font-family:Arial;color:black'&gt;Surgieron descenas de libros tratando sobre el tema y esto se debe a que los patterns son soluciones probadas y practicas a problemas que son bastante comunes en un determinado dominio, una de las ventajas es que incorporan al dominio del profesional de sistema nuevos lexicos que son comprendidos de manera inmediata y permiten que uno pueda abstraerse de detalles muy complejos que tienen que ver con el dominio de la solucion, como ejemplo uno puede decir &amp;#8220;Una factura es un composite de items&amp;#8221; y esto ya nos podria dar una idea de que es lo que estamos queriendo hacer.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 color=black face=Arial&gt;&lt;span style='font-size: 10.0pt;font-family:Arial;color:black'&gt;Debido a esto es que los patterns cobraron una gran importancia dentro de la comunidad de sistemas. A continuacion detallo algunos links bastante interesantes como para poder tener como referencia o como para poder introducirse en el tema.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 color=black face=Arial&gt;&lt;span style='font-size: 10.0pt;font-family:Arial;color:black'&gt;&lt;![if !supportEmptyParas]&gt;&amp;nbsp;&lt;![endif]&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;ul style='mso-margin-top-alt:0cm' type=disc&gt;  &lt;li class=MsoNormal style='color:black;mso-list:l0 level1 lfo1;tab-stops:list 36.0pt'&gt;&lt;span      class=EstiloCorreo15&gt;&lt;font size=2 color=black face=Arial&gt;&lt;span lang=ES-MX      style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:Arial;      mso-ansi-language:ES-MX'&gt;&lt;a      href="http://wiki.java.net/bin/view/Javapedia/Patterns"&gt;&lt;span      style='mso-ascii-font-family:Arial;mso-hansi-font-family:Arial'&gt;Java .Net Javapedia      -&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;Patterns&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class=MsoNormal style='color:black;mso-list:l0 level1 lfo1;tab-stops:list 36.0pt'&gt;&lt;span      class=EstiloCorreo15&gt;&lt;font size=2 color=black face=Arial&gt;&lt;span lang=ES-MX      style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:Arial;      mso-ansi-language:ES-MX'&gt;&lt;a      href="http://www.c2.com/cgi/wiki?WelcomeVisitors"&gt;&lt;span style='mso-ascii-font-family:      Arial;mso-hansi-font-family:Arial'&gt;Wiki de patterns&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class=MsoNormal style='color:black;mso-list:l0 level1 lfo1;tab-stops:list 36.0pt'&gt;&lt;span      class=EstiloCorreo15&gt;&lt;font size=2 color=black face=Arial&gt;&lt;span lang=ES-MX      style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:Arial;      mso-ansi-language:ES-MX'&gt;&lt;a href="http://hillside.net/patterns/"&gt;&lt;span      style='mso-ascii-font-family:Arial;mso-hansi-font-family:Arial'&gt;Hillside.net&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class=MsoNormal style='color:black;mso-list:l0 level1 lfo1;tab-stops:list 36.0pt'&gt;&lt;span      class=EstiloCorreo15&gt;&lt;font size=2 color=black face=Arial&gt;&lt;span lang=ES-MX      style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:Arial;      mso-ansi-language:ES-MX'&gt;&lt;a      href="http://www.cmcrossroads.com/bradapp/docs/patterns-intro.html"&gt;&lt;span      style='mso-ascii-font-family:Arial;mso-hansi-font-family:Arial'&gt;Patterns      and Software: Essential Concepts and Terminology&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p class=MsoNormal style='margin-left:18.0pt'&gt;&lt;span class=EstiloCorreo15&gt;&lt;font size=2 color=black face=Arial&gt;&lt;span lang=ES-MX style='font-size:10.0pt; mso-bidi-font-size:12.0pt;font-family:Arial;mso-ansi-language:ES-MX'&gt;&lt;![if !supportEmptyParas]&gt;&amp;nbsp;&lt;![endif]&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;span class=EstiloCorreo15&gt;&lt;font size=2 color=black face=Arial&gt;&lt;span lang=ES-MX style='font-size:10.0pt;mso-bidi-font-size:12.0pt; font-family:Arial;mso-ansi-language:ES-MX'&gt;Estos son solo algunos de los muchos sites que ahora se dedican a hablar sobre este tema, tambien han aparecido en su momento libros de J2EE patterns, cuando la tecnologia J2EE todavia era muy nueva y muchos de los patrones que aparecian en ese catalogo todavia no podian calificar para entrar en esa categoria, por el hecho de no ser soluciones ampliamente utilizadas, como consecuencia algunos de estos patterns an quedado deprecados porque no resultaron ser tan buenas soluciones como se las vendia.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-111453923840088431?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/111453923840088431/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=111453923840088431' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111453923840088431'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111453923840088431'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2005/04/patrones-de-diseo.html' title='Patrones de diseño'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-111403098376667280</id><published>2005-04-20T18:01:00.000-03:00</published><updated>2005-04-20T18:03:03.776-03:00</updated><title type='text'>Mule 1.0 ESB</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;span class="EstiloCorreo15"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;" lang="ES-MX"&gt;Esta  disponible la version 1.0 de &lt;a href="http://mule.codehaus.org/"&gt;Mule&lt;/a&gt; este  framework permite conectar componentes a travez de canales  heterogeneos.&lt;br /&gt;Esta  basado en &lt;a href="http://www.polarlake.com/en/html/resources/esb/index.shtml"&gt;ESB&lt;/a&gt;  (Enterprise Service Bus Architecture). Mule maneja la interaccion de los  componentes en forma transparente sin importar que estos residan en distntas VM  y sin importar el protocol de transporte.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal"&gt;&lt;span class="EstiloCorreo15"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;" lang="ES-MX"&gt;Breve  Resumen de las caracteristicas (extraido del  sitio)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h2&gt;&lt;b&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-size: 10pt; color: black; font-family: Arial;"&gt;Key  Features &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-size: 10pt; color: black; font-family: Arial;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h2&gt;  &lt;ul type="disc"&gt; &lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;J2EE 1.4 Enterprise Service Bus (ESB) and  Messaging broker&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;&lt;a title="Transports Guide" href="http://mule.codehaus.org/Transports+Guide"&gt;Pluggable connectivity&lt;/a&gt; such  as Jms (1.0.2b and 1.1), vm (embedded), jdbc, tcp, udp, multicast, http,  servlet, smtp, pop3, file, xmpp.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;Support for asynchronous, synchronous and  request-response event processing over any transport.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;Web Services using &lt;a title="Axis Web Services and Mule" href="http://mule.codehaus.org/Axis+Web+Services+and+Mule"&gt;Axis&lt;/a&gt; or &lt;a title="Glue Web Services and Mule" href="http://mule.codehaus.org/Glue+Web+Services+and+Mule"&gt;Glue&lt;/a&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;Flexible deploment &lt;span class="error"&gt;[Topologies]&lt;/span&gt; including Client/Server, Peer-to-Peer, ESB and  Enterprise Service Network.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;Declarative and Programmatic &lt;a title="Transaction Management" href="http://mule.codehaus.org/Transaction+Management"&gt;transaction&lt;/a&gt; support  including XA support.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;End-to-End support for &lt;a title="Message Routers" href="http://mule.codehaus.org/Message+Routers"&gt;routing&lt;/a&gt;, &lt;a title="Transports Guide" href="http://mule.codehaus.org/Transports+Guide"&gt;transport&lt;/a&gt; and  transformation of events.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;&lt;a title="Spring Integration" href="http://mule.codehaus.org/Spring+Integration"&gt;Spring framework  Integration&lt;/a&gt;. Can be used as the ESB container and Mule can be easily  embedded into Spring applications.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;Highly scalable enterprise server using  the &lt;a title="SEDA" href="http://mule.codehaus.org/SEDA"&gt;SEDA&lt;/a&gt; processing  model.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;REST API to provide technology agnostic  and language neutral web based access to Mule Events&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;Powerful event routing based on patterns  in the popular &lt;span class="nobr"&gt;&lt;a href="http://www.eipatterns.org/"&gt;EIP&lt;/a&gt;&lt;/span&gt; book.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;Dynamic, declarative, content-based and  rule-based routing &lt;a title="Message Routers" href="http://mule.codehaus.org/Message+Routers"&gt;options&lt;/a&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;Non-Intrusive approach. Any &lt;a title="Writing Components" href="http://mule.codehaus.org/Writing+Components"&gt;object&lt;/a&gt; can be managed by  the ESB container.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;Powerful Application Integration  framework&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;Fully extensible development  model&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt; &lt;/ul&gt;  &lt;h2&gt;&lt;b&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-size: 10pt; color: black; font-family: Arial;"&gt;When  to use Mule&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-size: 10pt; color: black; font-family: Arial;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h2&gt;  &lt;p class="paragraph"&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;The common scenario for using Mule -  &lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul type="disc"&gt; &lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;Integration projects where two or more  existing systems need to communicate with each other.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;Applications that need to be totally  decouple from their surrounding environment or where the ability to scale one  more components in the system is needed.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Times New Roman;font-size:100%;color:black;"&gt;&lt;span style="font-size: 12pt; color: black;"&gt;Single VM Applications where the developer  wants to future-proof their application against unexpected distribution or  scaling requirements. Mule works very well as a single VM application where  interaction between components in the system is achieved in memory with no  detectable degradation in performance.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color: black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt; &lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-111403098376667280?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/111403098376667280/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=111403098376667280' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111403098376667280'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111403098376667280'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2005/04/mule-10-esb.html' title='Mule 1.0 ESB'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-111399910888007050</id><published>2005-04-20T09:11:00.000-03:00</published><updated>2005-04-25T12:47:33.386-03:00</updated><title type='text'>Kiara!</title><content type='html'>&lt;a href="http://photos1.blogger.com/img/39/5271/320/DSC02473.jpg"&gt;&lt;img style="border: 1px solid rgb(0, 0, 0); margin: 2px;" src="http://photos1.blogger.com/img/39/5271/200/DSC02473.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Aca les presento a Kiara la segunda integrande del Team!, en esta foto justo estabamos haciendo un poco de Pair Programming! Kiara ya cuenta con una gran experiencia en el area, apenas me ve trabajando se apura a gatear para darme una manito :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-111399910888007050?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/111399910888007050/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=111399910888007050' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111399910888007050'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111399910888007050'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2005/04/kiara.html' title='Kiara!'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-111393311786228748</id><published>2005-04-19T14:51:00.000-03:00</published><updated>2005-04-19T14:59:35.496-03:00</updated><title type='text'>Testeo de aplicaciones Web Con Eclipse</title><content type='html'>&lt;p class="mobile-post"&gt;&lt;/p&gt;&lt;div class="Section1"&gt;  &lt;p class="MsoNormal"&gt;&lt;span class="EstiloCorreo15"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;font-size:130%;color:black;"   &gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:14;"  lang="ES-MX" &gt;&lt;span style="font-size:130%;"&gt;&lt;a href="http://solex.sourceforge.net/"&gt;SOLEX&lt;/a&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span class="EstiloCorreo15"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;font-size:130%;color:black;"   &gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:14;"  lang="ES-MX" &gt;&lt;!--[if !supportEmptyParas]--&gt; &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span class="EstiloCorreo15"  style="font-size:100%;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span  lang="ES-MX" style="font-family:Arial;"&gt;Es el nombre de este plugin que permite testear aplicaciones WEB corriendo como plugin desde eclipse, según los autores del mismo, lo hicieron para ser usado sobre un producto que estaban desarrollando, lo cual significa que el producto deberia de tener un nivel de madurez considerable, pero tambien que por ahí no sea tan general como para cubrir las necesidades de otros proyectos.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span class="EstiloCorreo15"  style="font-size:100%;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span  lang="ES-MX" style="font-family:Arial;"&gt;Leyendo la pagina del producto no vi que hubiera una forma de poder correr el producto en forma standalono, con lo cual el tema de la automatizacion se torna bastante complicado.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span class="EstiloCorreo15"  style="font-size:100%;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span  lang="ES-MX" style="font-family:Arial;"&gt;En&lt;span style=""&gt;  &lt;/span&gt;la pagina van a ver que hay una breve explicacion que explica como se puede arrancar usando SOLEX en un proyecto.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span class="EstiloCorreo15"  style="font-size:100%;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span  lang="ES-MX" style="font-family:Arial;"&gt;&lt;!--[if !supportEmptyParas]--&gt; &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span class="EstiloCorreo15"&gt;&lt;span style=";font-family:Arial;font-size:85%;color:black;"   &gt;&lt;span style=";font-family:Arial;font-size:10;"  lang="ES-MX" &gt;&lt;span style="font-size:100%;"&gt;Este es un pequeño resumen sacado de la Pagina de &lt;a href="http://solex.sourceforge.net/"&gt;SOLEX&lt;/a&gt;&lt;/span&gt; &lt;span style="font-size:100%;"&gt;de lo que el mismo es capaz de hacer.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span class="EstiloCorreo15"&gt;&lt;span style=";font-family:Arial;font-size:85%;color:black;"   &gt;&lt;span style=";font-family:Arial;font-size:10;"  lang="ES-MX" &gt;&lt;!--[if !supportEmptyParas]--&gt; &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;h2 style="color: rgb(153, 153, 153);"&gt;&lt;b&gt;&lt;span style="color: rgb(102, 102, 102);font-family:Times New Roman;font-size:130%;"  &gt;&lt;span style=""&gt;What can I do with Solex?&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/h2&gt;   &lt;!--[if !supportLists]--&gt;&lt;!--[endif]--&gt; &lt;ul style="color: rgb(153, 153, 153);"&gt;   &lt;li&gt;&lt;span style="font-size:100%;"&gt;Solex can record HTTP messages by acting as a Web proxy.&lt;/span&gt;&lt;/li&gt; &lt;/ul&gt; &lt;div style="color: rgb(153, 153, 153);"&gt;  &lt;/div&gt; &lt;!--[if !supportLists]--&gt;&lt;!--[endif]--&gt; &lt;ul style="color: rgb(153, 153, 153);"&gt;   &lt;li&gt;&lt;span style="font-size:100%;"&gt;Recorded sessions can be saved as XML and reopened later.&lt;/span&gt;&lt;/li&gt; &lt;/ul&gt; &lt;div style="text-align: left; color: rgb(153, 153, 153);"&gt;  &lt;/div&gt; &lt;!--[if !supportLists]--&gt;&lt;!--[endif]--&gt; &lt;ul style="color: rgb(153, 153, 153);"&gt;   &lt;li&gt;&lt;span style="font-size:100%;"&gt;HTTP requests and responses are fully displayed in order to inspect and customize their content, thanks to replacement rules.&lt;/span&gt;&lt;/li&gt; &lt;/ul&gt; &lt;div style="text-align: left; color: rgb(153, 153, 153);"&gt;  &lt;/div&gt; &lt;!--[if !supportLists]--&gt;&lt;!--[endif]--&gt; &lt;ul style="color: rgb(153, 153, 153);"&gt;   &lt;li&gt;&lt;span style="font-size:100%;"&gt;Solex allows the attachment of extraction or replacement rules to any HTTP message content, HTTP header or URL parameter.&lt;/span&gt;&lt;/li&gt; &lt;/ul&gt; &lt;div style="text-align: left; color: rgb(153, 153, 153);"&gt;  &lt;/div&gt; &lt;!--[if !supportLists]--&gt;&lt;!--[endif]--&gt; &lt;ul style="color: rgb(153, 153, 153);"&gt;   &lt;li&gt;&lt;span style="font-size:100%;"&gt;Recorded requests can be filtered to remove or disable unwanted resources, like .jpg, .gif.&lt;/span&gt;&lt;/li&gt; &lt;/ul&gt; &lt;div style="text-align: left; color: rgb(153, 153, 153);"&gt;  &lt;/div&gt; &lt;!--[if !supportLists]--&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Symbol;font-size:100%;"  &gt;&lt;span style="font-family:Symbol;"&gt;&lt;span style="font-family:Times New Roman;"&gt;&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt; &lt;ul style="color: rgb(153, 153, 153);"&gt;   &lt;li&gt;&lt;span style="font-size:100%;"&gt;Solex allows the attachment of assertions to responses in order to validate a scenario during its playback.&lt;/span&gt;&lt;/li&gt; &lt;/ul&gt; &lt;div style="text-align: left; color: rgb(153, 153, 153);"&gt;  &lt;/div&gt; &lt;!--[if !supportLists]--&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Symbol;font-size:100%;"  &gt;&lt;span style="font-family:Symbol;"&gt;&lt;span style="font-family:Times New Roman;"&gt;&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt; &lt;ul style="color: rgb(153, 153, 153);"&gt;   &lt;li&gt;&lt;span style="font-size:100%;"&gt;Solex can replay an HTTP session request by request or all requests at once.&lt;/span&gt;&lt;/li&gt; &lt;/ul&gt; &lt;div style="text-align: left; color: rgb(153, 153, 153);"&gt;  &lt;/div&gt; &lt;!--[if !supportLists]--&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Symbol;font-size:100%;color:black;"   &gt;&lt;span style="font-family:Symbol;"&gt;&lt;span style="font-family:Times New Roman;"&gt;&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt; &lt;ul style="color: rgb(153, 153, 153);"&gt;   &lt;li&gt;&lt;span style="color: rgb(153, 153, 153);font-size:100%;" &gt;Playback results can be exported as XML with an optional XSL transformation.&lt;/span&gt;&lt;/li&gt; &lt;/ul&gt;   &lt;p class="MsoNormal"&gt;&lt;span class="EstiloCorreo15"&gt;&lt;span style=";font-family:Arial;font-size:85%;color:black;"   &gt;&lt;span style=";font-family:Arial;font-size:10;"  lang="ES-MX" &gt;&lt;!--[if !supportEmptyParas]--&gt; &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-111393311786228748?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/111393311786228748/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=111393311786228748' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111393311786228748'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111393311786228748'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2005/04/testeo-de-aplicaciones-web-con-eclipse.html' title='Testeo de aplicaciones Web Con Eclipse'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-111392078381157697</id><published>2005-04-19T11:26:00.000-03:00</published><updated>2005-04-19T11:29:13.893-03:00</updated><title type='text'>ACEGI Security system For Spring</title><content type='html'>&lt;p class="mobile-post"&gt;Este framework de seguridad esta integrado para trabajar con Spring.&lt;br /&gt;Entre los puntos mas destacados del mismo se encuentran:&lt;br /&gt;&lt;/p&gt; &lt;ul&gt;   &lt;li&gt; &lt;span style="font-weight: bold;"&gt;Single Sign On&lt;/span&gt;&lt;/li&gt;   &lt;li style="font-weight: bold;"&gt; Domain Object Instance Security&lt;/li&gt;   &lt;li style="font-weight: bold;"&gt; Integracion con Tomcat, Jetty, JBoss y Resin&lt;/li&gt;   &lt;li style="font-weight: bold;"&gt; Soporte de eventos por medio de Spring utilizando ApplicationEvent Sevices&lt;/li&gt;   &lt;li style="font-weight: bold;"&gt; Soporte para control remoto&lt;/li&gt; &lt;/ul&gt; &lt;p class="mobile-post"&gt;Entre otras cosas el site dice que el proyecto tiene bastante documentacion.&lt;/p&gt;&lt;p class="mobile-post"&gt;Site:&lt;a href="http://acegisecurity.sourceforge.net/"&gt; http://acegisecurity.sourceforge.net/&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-111392078381157697?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/111392078381157697/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=111392078381157697' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111392078381157697'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111392078381157697'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2005/04/acegi-security-system-for-spring.html' title='ACEGI Security system For Spring'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-111391818778058527</id><published>2005-04-19T10:39:00.000-03:00</published><updated>2005-04-19T10:44:15.613-03:00</updated><title type='text'>Java Best Practices</title><content type='html'>Este sitio contiene algunas recomendaciones sobre algunas de los errores mas comunes cometidos cuando se desarrolla con Java.&lt;br /&gt;Esta dividido en secciones y es sorprendente (al menos para mi lo es) que no tenga una seccion de Testing , donde explique algunas buenas practicas de este topico.&lt;br /&gt;Justamente sobre ese topico encontre &lt;a href="http://www.javapractices.com/Topic174.cjp" target="_blank" class="blines3" title="Link outside of this blog"&gt;Test using main method&lt;/a&gt; el cual no me parece para nada una buena practica, de todas formas se hace referncia al uso de JUnit&lt;br /&gt;&lt;br /&gt;Site: &lt;a href="http://www.javapractices.com/TableOfContents.cjp" target="_blank" class="blines3" title="Link outside of this blog"&gt;Collected Java Practices&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-111391818778058527?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/111391818778058527/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=111391818778058527' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111391818778058527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111391818778058527'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2005/04/java-best-practices.html' title='Java Best Practices'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-111388119090937098</id><published>2005-04-19T00:26:00.000-03:00</published><updated>2005-04-19T00:35:19.010-03:00</updated><title type='text'>Mora!!</title><content type='html'>&lt;a href="http://photos1.blogger.com/img/39/5271/100/hernan-mori1.jpg"&gt;&lt;img style="border: 1px solid rgb(0, 0, 0); margin: 2px;" src="http://photos1.blogger.com/img/39/5271/100/hernan-mori1.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Aca estoy con mi asistente numero uno que se especializa en testear Mouse y teclados y demas accesorios conectados a una pc utiliza unas tecnicas muy particulares que no quiere dar a conocer, pero, siempre encuentra un desperfecto en los aparatos y estos quedan fuera de servicio, ya testeo dos teclados, un mouse analogico uno optico y el cable USB de mi pocketpc! por las dudas no le voy a dar a probar las cosas que desarrollo yo  :-$&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-111388119090937098?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/111388119090937098/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=111388119090937098' title='2 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111388119090937098'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111388119090937098'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2005/04/mora.html' title='Mora!!'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12131656.post-111357865810600185</id><published>2005-04-15T12:18:00.000-03:00</published><updated>2005-04-15T12:24:18.106-03:00</updated><title type='text'>Emerging Technologies Toolkit - Technologies</title><content type='html'>En el site de DeveloperWorks encontre una seccion muy interesante sobre algunas herramientas que esta promocionando IBM.&lt;br /&gt;Desde Eclipse se pueden instalar algunas como un editor de documentos compuestos para XML&lt;br /&gt;el Update site para instalarlo es  &lt;a href="http://awwebx04.alphaworks.ibm.com/ettktechnologies/updates"&gt;http://awwebx04.alphaworks.ibm.com/ettktechnologies/updates&lt;/a&gt;&lt;br /&gt;Para esto es necesario crearse una cuenta en developerWorks que es gratis y aceptar los terminos de la licencia del mismo.&lt;br /&gt;&lt;br /&gt;La pagina donde pueden encontrar estas herramientas es: &lt;a href="http://www.alphaworks.ibm.com/ettk"&gt;ETTK&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12131656-111357865810600185?l=hernanzapata.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hernanzapata.blogspot.com/feeds/111357865810600185/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12131656&amp;postID=111357865810600185' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111357865810600185'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12131656/posts/default/111357865810600185'/><link rel='alternate' type='text/html' href='http://hernanzapata.blogspot.com/2005/04/emerging-technologies-toolkit.html' title='Emerging Technologies Toolkit - Technologies'/><author><name>Hernan Zapata</name><uri>http://www.blogger.com/profile/11192407789178098114</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh6.google.com/image/hgzapata/RTOUbaMZABI/AAAAAAAAABw/wfUdziIwWRs/Hernan_BW.JPG'/></author><thr:total>0</thr:total></entry></feed>
