<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Yo en el Universo &#187; software</title>
	<atom:link href="http://sixservix.com/blog/david/category/software/feed/" rel="self" type="application/rss+xml" />
	<link>http://sixservix.com/blog/david</link>
	<description>El blog de David Bonilla</description>
	<lastBuildDate>Thu, 09 Sep 2010 05:32:32 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Diseño de Interfaces para software empresarial</title>
		<link>http://sixservix.com/blog/david/2010/08/13/interfaces-para-software-empresarial/</link>
		<comments>http://sixservix.com/blog/david/2010/08/13/interfaces-para-software-empresarial/#comments</comments>
		<pubDate>Fri, 13 Aug 2010 04:50:03 +0000</pubDate>
		<dc:creator>David Bonilla</dc:creator>
				<category><![CDATA[humor]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[diseño]]></category>
		<category><![CDATA[geek and poke]]></category>
		<category><![CDATA[UI]]></category>

		<guid isPermaLink="false">http://sixservix.com/blog/david/?p=3952</guid>
		<description><![CDATA[Cualquier diseñadorucho de tres al cuarto cree que puede desarrollar interfaces para aplicaciones empresariales pero, no todo el mundo vale...]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify">Hay muchísimos desarrolladores que son unos monstruos de la programación por haber diseñado la arquitectura de una aplicación de registro de incidencias o la web de un restaurante que admite reservas <em>on-line</em>. Sin embargo, la verdad es que, hasta que no te enfrentas a una aplicación con miles de clases y centenares de páginas web, a una de las <strong>temibles siglas</strong>, al desarrollo de un ERP, un CMS o un WMS, no eres más que un <em>gallito de pelea</em> con más orgullo que experiencia.</p>
<p style="text-align: justify">Para programar software para empresas hay que ser un machote (o machota), un auténtico pro, un técnico que tiene lo que hay que tener. Por ejemplo, a la hora del diseño gráfico de interfaces: no os creáis que porque hayáis trabajado 10 o 12 años con <strong>Photoshop</strong> o ganado algún <a href="http://www.webbyawards.com/" target="_blank">premio Webby</a> estáis preparados para diseñar interfaces de usuario de software corporativo. Para esto no basta querer, hay que valer&#8230;</p>
<p style="text-align: center"><a href="http://geekandpoke.typepad.com/geekandpoke/2010/07/how-to-make-enterprise-software.html"><img class="aligncenter size-full wp-image-3953" style="border: 0pt none" title="enterprisesoftware" src="http://sixservix.com/blog/david/files/2010/08/enterprisesoftware.jpg" alt="Las skills que se piden para diseñar interfaces de usuarios" width="400" height="566" /></a></p>
<p style="text-align: justify">RT @<a href="http://geekandpoke.typepad.com/geekandpoke/2010/07/how-to-make-enterprise-software.html" target="_blank">Geek and Poke</a></p>
]]></content:encoded>
			<wfw:commentRss>http://sixservix.com/blog/david/2010/08/13/interfaces-para-software-empresarial/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>javaOne 2010</title>
		<link>http://sixservix.com/blog/david/2010/07/23/javaone2010/</link>
		<comments>http://sixservix.com/blog/david/2010/07/23/javaone2010/#comments</comments>
		<pubDate>Fri, 23 Jul 2010 04:50:46 +0000</pubDate>
		<dc:creator>David Bonilla</dc:creator>
				<category><![CDATA[david]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[tecnologías de la información]]></category>
		<category><![CDATA[javaone]]></category>
		<category><![CDATA[javaone10]]></category>
		<category><![CDATA[javaOne2010]]></category>
		<category><![CDATA[oracle]]></category>

		<guid isPermaLink="false">http://sixservix.com/blog/david/?p=3672</guid>
		<description><![CDATA[David Bonilla se va de vacaciones pagadas a San Francisco para asistir a la mayor conferencia de desarrolladores de la historia ¿Conseguirá regresar?


Artículos relacionados:<ol><li><a href='http://sixservix.com/blog/david/2010/09/07/agenda-javaone-2010/' rel='bookmark' title='Permanent Link: Mi agenda para la javaOne 2010'>Mi agenda para la javaOne 2010</a> <small>Esta es mi agenda preliminar para la edición 2010 de...</small></li>
<li><a href='http://sixservix.com/blog/david/2009/12/09/javaone-2010/' rel='bookmark' title='Permanent Link: ¿Habrá JavaOne en 2010?'>¿Habrá JavaOne en 2010?</a> <small>Uno de los principales damnificados de la fusión entre Oracle...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify"><img class="alignleft size-full wp-image-3679" title="GOLDEN_GATE" src="http://sixservix.com/blog/david/files/2010/07/GOLDEN_GATE.jpg" alt="" width="241" height="278" />A partir del próximo 19 de septiembre se celebrará en San Francisco la <strong>javaOne</strong>, el mayor evento mundial sobre la plataforma Java y sus tecnologías asociadas y, un año más,  me infiltraré en <em>modo comando</em> entre los mejores técnicos del planeta para disfrutar, aprender y contároslo. Eso sí, a mi manera, <em>alla Bonilla</em>.</p>
<p style="text-align: justify">Sé que <strong>soy un privilegiado</strong> por disfrutar del apoyo de <strong>Sixservix</strong> para volver a  asistir a la conferencia. Un apoyo que, desgraciadamente, es difícil  de encontrar en el sector de las TI en España y América latina. Pero, en cualquier caso, conozco gente que, aún pudiendo asistir, <span style="text-decoration: underline">ni siquiera se lo ha planteado</span>; bien por desconocimiento del evento en sí, bien por antiguas y falsas creencias o leyendas. Así que, permitidme que os explique qué espero encontrar allí, qué pienso hacer y  cómo pretendo hacerlo. Ojalá que, cuando acabéis de leer este artículo, todos estéis deseando acompañarme. Si no este año, quizás el siguiente.</p>
<h3 style="text-align: justify">UNA CIUDAD. UNA SEMANA. TRES CONFERENCIAS</h3>
<p style="text-align: justify">Ya <a href="http://javahispano.org/contenidos.item.action?id=745480&amp;menuId=MINDS" target="_blank">comenté el año pasado</a> como la <strong>javaOne</strong> cumplía con las 3 Bs: <em>bueno, bonito y barato</em>. Este año, después de unos meses de incertidumbre en los que ni siquiera sabiamos si iba a celebrarse, nos encontramos con que Oracle, el nuevo amo y señor de Java, ha montado la mundial. No sólo sigue celebrándola sino que ha decidido juntarla con <strong>Develop</strong>, su conferencia de desarrolladores,  y <strong>OpenWorld</strong>, su evento más orientado a <em>tíos-que-manejan-la-pasta</em> y <em>cuellocorbatas</em>.</p>
<p style="text-align: justify">La primera consecuencia de todo esto es que <strong>San Francisco va a estallar</strong>. Si a los 15.ooo asistentes de la javaOne les sumas los 43.ooo <em>trolorolos</em> que asistieron a la OpenWorld del año pasado y <a href="http://www.crn.com/software/220601223" target="_blank">reservaron 81.000 habitaciones de hotel</a>, te encuentras con que es más facil conseguir batir el <a href="http://www.youtube.com/watch?v=HQZUg2wH_vQ" target="_blank">récord olímpico de petanca</a> que conseguir una habitación de hotel económica en la ciudad del Golden Gate.</p>
<p style="text-align: justify">La segunda consecuencia es que, durante una semana, <strong>San Francisco probablemente disfrute del mayor número de técnicos y desarrolladores reunidos de la historia</strong>. Porque, a la tremenda <em>horda invasora</em>, hay que sumar la población local de tipejos que desarrollan cosas como Twitter, Google o cacharros como los de Apple o Hewlett-Packard.</p>
<p style="text-align: justify">En definitiva, <strong>2.150 sesiones</strong> condensadas en una sóla ciudad y una sóla semana. La posibilidad de asistir a charlas de cualquier tecnología o lenguaje que se te pueda ocurrir impartidas por los mejores: sus creadores. Y, por supuesto, la posibilidad de conocerlos.</p>
<p style="text-align: justify">No hay nada ni remotamente parecido en el mundo de las tecnologías de la información. Ni en tamaño ni en posibilidades. Ni para aprender, ni para hacer <em>networking</em>. <strong>Nada se acerca a lo que va a verse en esta JavaOne</strong>.</p>
<h3 style="text-align: justify">LA MISIÓN: LIARLA PARDA</h3>
<p style="text-align: justify">¿Y qué espero este año de la javaOne? ¿Qué pretendo hacer allí? Evidentemente, dar un paso más en mi p<em>lan secreto para dominar el mundo</em> y, de paso, aprender todo lo que pueda, conocer gente interesante y divertirme. Voy a intentar resumir en 6 puntos mis expectativas:</p>
<p style="text-align: justify"><img class="alignright" title="latinPower" src="http://sixservix.com/blog/david/files/2010/07/latinPower.jpg" alt="" width="266" height="256" /></p>
<ul style="text-align: justify">
<li><strong>APRENDER MUCHO</strong>. Sí, es verdad que con Internet no hace falta asistir físicamente a una conferencia para aprender cualquier conocimiento pero, sinceramente, ¿cuántos de nosotros tenemos tiempo en nuestro día a día para ponernos a leer complejos tutoriales o sumergirnos en vídeos y vídeos de charlas y ponencias? La javaOne permite que durante una semana, nos aislemos de todo y de todos y nos dediquemos a lo que más nos gusta: aprender.</li>
<li><strong>HACER NETWORKING</strong>. Sí, <em>networking,</em> pero del de verdad. Espero conocer a mucha <em>gente-que-de-verdad-hace-cosas</em> como los denomina Alberto Molpeceres. Todo lo contrario a los eventos de tipo &#8220;reinventa Internet&#8221; que han crecido como setas en mi país.</li>
<li><strong>CREAR COMUNIDAD</strong>. El año pasado constaté que los hispanohablantes éramos más de los que cualquiera pudiera creer pero, al contrario que <a href="http://www.gujavasc.org.br/wp-content/uploads/2008/05/dsc00038.JPG" target="_blank">los brasileños</a>, nos falta marketing. Espero que en esta javaOne se oiga el castellano más que nunca. Por mí no va a quedar.</li>
<li><strong>COMUNICAR, COMUNICAR, COMUNICAR</strong>. Si el año pasado perdí horas de sueño haciendo las crónicas del día para <a href="http://www.javahispano.org/" target="_blank">javaHispano</a>, este año el trabajo se multiplica. No sólo intentaré enviar las crónicas diarias, sino que podréis leer la versión <em>gamberra</em> y desenfadada de las mismas en <strong>este blog</strong>. Además, nuestras cuentas de twitter echarán humo, por supuesto y, como gran novedad&#8230; MEGATÓN: intentaré retrasmitir al más puro estilo reportero dicharachero mediante screencast. Eso, si consigo averiguar cómo funciona la cámara que me regaló Jeroclo por mi cumpleaños.</li>
<li><strong>COMER PATO LAQUEADO EN CHINATOWN</strong>. Una sana costumbre que instauramos <a href="http://www.pgcon.org/2010/schedule/speakers/166.en.html" target="_blank">Álvaro Hernandez</a> y yo el año pasado y a la que esperemos que se sumen los nuevos fichajes de este año: <a href="http://weblogs.javahispano.org/jh/entry/nos_presentamos_ii" target="_blank">Erick Camacho</a>, compañero del metal en javaHispano, y <a href="http://twitter.com/jerolba" target="_blank">Jeroclo, el espartano</a>, amigo, camarada y socio, en representación de <a href="http://www.funius.com" target="_blank">Funius</a>. Por supuesto, habrá que ir a disfrutar del <em>brunch</em> del domingo al <a href="http://www.intercontinentalmarkhopkins.com/top_of_the_mark/" target="_blank">Top of the Mark</a> y seguro que caerá más de una porción de tarta en el <a href="http://www.thecheesecakefactory.com/menu/Cheesecake/white_chocolate_raspberry_truffle" target="_blank">Cheesecake Factory</a> de Union Square. Al fin y al cabo, las tradiciones están para respetarlas, ¿no? :P</li>
</ul>
<h3 style="text-align: justify">BONILLA 3.0</h3>
<p style="text-align: justify">Este año todo ha cambiado, TODO es diferente. Y no sólo hablo de la compra de SUN por parte de Oracle, sino de cambios a nivel personal y profesional que, en parte, han sido motivados o acelerados por mi visita a la última edición. <strong>Apenas me reconozco</strong> cuando pienso en el Bonilla que asistió a la edición del año pasado.</p>
<p style="text-align: justify"><a href="http://sixservix.com/blog/david/2009/07/22/nulla-dies-sine-linea/" target="_blank">Hace un año,</a> este blog no existia. Hace un año, no conocía a toda la gente interesante que me ha enriquecido en los últimos 365 días. Hace un año, ni siquiera estaba viviendo con mi novia, que en menos de 3 meses se convertirá en mi mujer. Hace  un año, no tenía cuenta en <strong>Twitter</strong>. Hace un año, España ni siquiera soñaba con ser campeona del mundo. Hace un año, <a href="http://sixservix.com/blog/david/2010/04/27/scrum-master/" target="_blank">no era ágil</a>. Pero, sobre todo, hace un año, no tenía tan claro como ahora qué es lo que quiero hacer y cómo lo quiero hacer.</p>
<p style="text-align: justify"><img class="aligncenter" title="David Bonilla" src="http://sixservix.com/blog/david/files/2010/01/david_bonilla.jpg" alt="" width="600" height="187" /></p>
<p style="text-align: justify">La asistencia a la <strong>javaOne</strong> del año pasado consiguió que me enamorara definitivamente de mi profesión. Que me diera cuenta de que las cosas que no me gustaban de ella no tenían que ver con LO QUE hacía sino con CÓMO lo hacía. Hace un año, vi que había otro modo de hacer las cosas y que te podías ganar muy bien la vida haciéndolas.</p>
<p style="text-align: justify">Al acudir a la javaOne, pude conocer a gente que estaba a <em>años luz</em> de mi círculo de influencia, como <a href="http://kohsuke.org/about/" target="_blank">Kohsuke Kawaguchi</a> o <a href="http://netbeans.org/community/articles/interviews/dreamprofile-senger.html" target="_blank">Vinicius Senger</a>, tuve la posibilidad de acercarme a tecnologías y proyectos antes de que se difundieran en España y demostrarme a mí mismo que puedo defenderme con mi inglés en Estados Unidos, Albacete o Sebastopol.</p>
<p style="text-align: justify">Hace algunos años, perdí <strong>25 kg</strong> y cambié de estilo de vida. Mis amigos se sorprendieron tanto que bromeaban llamándome &#8220;<em>David 2.0</em>&#8220;. Durante este año, creo que he cambiado tanto que he pasado a la siguiente <em>release</em> y puedo considerarme &#8220;<em>Bonilla 3.0</em>&#8220;.</p>
<p style="text-align: justify">No, no me he vuelto loco. No creo que la javaOne me haya cambiado la vida pero, sí estoy seguro de que sirvió como <em>trigger</em> para ayudarme a reconocer qué es lo que quería hacer con mi trabajo y mi profesión y comenzara a dar los pasos necesarios para lograrlo.</p>
<h3 style="text-align: justify">CONCLUSIONES</h3>
<p style="text-align: justify">Un año más, debo agradecer la confianza y soporte de <strong>Sixservix</strong> que me va a permitir asistir a la conferencía. Además, Jeroclo, Erick y un servidor viajamos a la conferencia con entradas gratuitas de <em>bloggers</em> por deferencia de <strong>Oracle</strong> en general y su Directora de Comunicación para España y Portugal en particular, <a href="http://twitter.com/mildredlaya" target="_blank">Mildred Laya</a>, que nos ha hecho sentirnos &#8220;importantes&#8221; aunque sepamos que no lo somos.</p>
<p style="text-align: justify">Al que sea mal pensado y crea que nos hemos vendido a <strong>Oracle</strong>, decirle que no sabe de lo que habla. Yo no podría venderme jamás a Oracle. Todo el mundo sabe que Microsoft paga mucho más.</p>
<p style="text-align: justify">Al que haya llegado hasta aquí y vaya a ir a la <strong>javaOne</strong>, animarle a que se ponga en contacto conmigo a través del <a href="http://sixservix.com/blog/david/about/" target="_blank">formulario de contacto</a> de este <em>blog</em>. Cuantos más seamos, mejor, más ruido haremos y mejor nos lo pasaremos.</p>
<p style="text-align: justify">Si, por el contrario, aún no tienes entrada, te recuerdo que <strong>el periodo de <em>early bird</em> o precio reducido ha sido prorrogado hasta el 30 de julio</strong>. Aún estás a tiempo de animarte y venirte a San Francisco. Te costará bastate menos que cualquier curso de formación de alto nivel de una semana que puedas tomar en España.</p>
<p style="text-align: justify">En cualquier caso, y como a veces pido a los amigos, <strong>difundid <em>la palabra de Bo</em></strong>: retwittead, reenviad o mandad por correo este artículo. Que no haya ni un sólo hispanohablante que vaya a la javaOne y no se una a nuestra <em>Spanish Armada</em>. Este año, vamos a por todas y aquí te lo contaremos.</p>


<p>Artículos relacionados:<ol><li><a href='http://sixservix.com/blog/david/2010/09/07/agenda-javaone-2010/' rel='bookmark' title='Permanent Link: Mi agenda para la javaOne 2010'>Mi agenda para la javaOne 2010</a> <small>Esta es mi agenda preliminar para la edición 2010 de...</small></li>
<li><a href='http://sixservix.com/blog/david/2009/12/09/javaone-2010/' rel='bookmark' title='Permanent Link: ¿Habrá JavaOne en 2010?'>¿Habrá JavaOne en 2010?</a> <small>Uno de los principales damnificados de la fusión entre Oracle...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://sixservix.com/blog/david/2010/07/23/javaone2010/feed/</wfw:commentRss>
		<slash:comments>28</slash:comments>
		</item>
		<item>
		<title>Los problemas de la gestión de información según Larry Ellison y Enrique Dans</title>
		<link>http://sixservix.com/blog/david/2010/06/22/problemas-gestion-informacion/</link>
		<comments>http://sixservix.com/blog/david/2010/06/22/problemas-gestion-informacion/#comments</comments>
		<pubDate>Tue, 22 Jun 2010 04:50:20 +0000</pubDate>
		<dc:creator>David Bonilla</dc:creator>
				<category><![CDATA[software]]></category>
		<category><![CDATA[tecnologías de la información]]></category>
		<category><![CDATA[enrique dans]]></category>
		<category><![CDATA[excel hell]]></category>
		<category><![CDATA[larry ellison]]></category>
		<category><![CDATA[oracle]]></category>

		<guid isPermaLink="false">http://sixservix.com/blog/david/?p=3382</guid>
		<description><![CDATA[Enrique Dans presenta un vídeo del CEO de Oracle sobre gestión de información en la empresa. Claro, una cosa es una keynote y otra, la guerra en las trincheras.]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify">La semana pasada, <a href="http://www.enriquedans.com/2010/06/los-tres-problemas-de-la-gestion-de-informacion-en-la-empresa.html" target="_blank">Enrique Dans</a>, profesor de Sistemas de la Información del Instituto de Empresa, presentó en su <em>blog </em>un vídeo de <strong>Larry Ellison</strong>, CEO de <strong>Oracle</strong>, hablando sobre los problemas de la gestión de la información en la empresa.</p>
<p style="text-align: justify"><a href="http://twitter.com/jerolba" target="_blank">Jeroclo</a>, el espartano, me advirtió sobre la existencia del vídeo. Como sabía que iba a estar de acuerdo en muchas cosas y en desacuerdo en otras y que no suelo callarme lo que pienso, me pidió que escribiera un artículo al respecto de los que a él le gustan, <em>a lo Karate Kid</em>, por lo de &#8220;dar cera y pulir cera&#8221;.</p>
<p style="text-align: justify">Ahora que Larry es <em>oficialmente </em>mi jefe, después de haberme <a href="http://www.cmontero.com/2010/06/blogs-con-oracle.html?showComment=1276809852559#c4629565280228438234" target="_blank">contratado por una botella de vodka</a>, creo que es más que oportuno que matice las palabras del líder. Así que, allá vamos. Abróchense los cinturones.</p>
<p style="text-align: center"><em>El vídeo de Larry. Tiene subtítulos y dura sólo cinco minutos. No os asustéis, ¡cobardes!</em></p>
<p style="text-align: center"><p><a href="http://sixservix.com/blog/david/2010/06/22/problemas-gestion-informacion/"><em>Pinche aquí para ver el vídeo</em></a></p></p>
<p style="text-align: justify">A Enrique le tiene que gustar mucho el vídeo, no obstante lo ha exportado desde formato Real Video, lo ha recortado, subtitulado, subido a <a href="http://www.youtube.com/watch?v=gBD27ibFstU" target="_blank">YouTube</a> y reconoce que lo ha utilizado como material lectivo en todos sus cursos.</p>
<p style="text-align: justify">Hombre&#8230; el vídeo es bueno. A Enrique -al que sigo y del que aprendo- se le agradece el esfuerzo y Larry está gracioso diciendo verdades como puños pero, ya que se va a utilizar como <strong>material lectivo</strong>, me gustaría puntualizar algunas cosas al respecto desde una perspectiva diferente, no la del &#8220;<em>manachment</em>&#8221; que aporta Enrique -me he leído su <a href="http://www.enriquedans.com/curriculum" target="_blank">curriculum</a> y ha sido profesor, consultor, miembro de comités que ni siquiera sabía que existian y accionista o consejero de startups del más diverso pelaje pero, no he podido encontrar un sólo trabajo como picateclas raso o <em>brown eater junior</em>-, y más cercano a las <strong>trincheras</strong>, al programador que tiene que implementar las ideas que Larry y otros guruseles de las TI programan en Powepoint o en Keynote, que queda aún más <em>cool</em>.</p>
<p style="text-align: justify">Dice Ellison que los grandes problemas de la gestión de la información en las empresas se pueden resumir en tres puntos:</p>
<ul style="text-align: justify">
<li><strong>La dispersión de la información</strong>. Enrique lo traduce como &#8220;fragmentación de los datos&#8221; pero, cualquier informático, sobre todo cualquiera que trabajara con bases de datos de Oracle, empezaría a pensar en bloques de datos de <em>n</em> KB y fragmentación de datos en disco. Nada más alejado de lo que quiere decir Larry, que se refiere a que los datos de una empresa, suelen estar dispersos en mil y una bases de datos corporativas, departamentales, dedicadas a una aplicación especifica y más.</li>
<li><strong>La integración del software</strong>. Larry se queja de que los desarrolladores nos dedicamos a, sorprenderos, ¡desarrollar software! y, evidentemente, ese software no está diseñado para trabajar conjuntamente, lo que produce grandes quebraderos de cabeza para integrar y hacer funcionar todos los productos y tecnologías que utilizamos en nuestra empresa.</li>
<li><strong>Adaptabilidad del software</strong>. Larry habla de &#8220;automatización&#8221; y Enrique lo traduce <em>as is</em>, pero una vez más, no creo que la traducción sea la más apropiada. A lo que se refiere Ellison es a las dificultades de la industria para producir software corporativo <em>out-of-the-box</em>, es decir, de los de &#8220;mete el CD en el ordenador, instálalo y ponte a utilizarlo al momento&#8221;. Parece que los desarrolladores no sabemos o no queremos hacer software sencillo y autoexplicativo para su uso en distintas empresas.</li>
</ul>
<p style="text-align: justify">
<div class="mceTemp mceIEcenter" style="text-align: justify">
<dl>
<dt>
<div id="attachment_3397" class="wp-caption aligncenter" style="width: 426px"><a href="http://sixservix.com/blog/david/files/2010/06/trinchera.jpg"><img class="size-full wp-image-3397" title="trinchera" src="http://sixservix.com/blog/david/files/2010/06/trinchera.jpg" alt="" width="416" height="300" /></a><p class="wp-caption-text">Programadores, en las trincheras, dispuestos a acabar con los problemas de la gestión de la información en la empresa con pico y pala</p></div>
</dt>
</dl>
</div>
<p style="text-align: justify">Bueno, pues aunque Larry no ha descubierto la polvora, la verdad es que <strong>tiene más razón que un santo</strong>. Lo que pasa es que en el vídeo se le ha &#8220;olvidado&#8221; alguna cosilla que vamos a intentar recordar aquí:</p>
<ul style="text-align: justify">
<li><strong>La dispersión de la información</strong>. Es verdad, tenemos más bases de datos que sentido común. Es fácil encontrar ofertas de hosting en donde te ofrecen &#8220;5 bases de datos y en la versión <em>premium</em>, 10&#8243;. Pero, aunque tengamos una única base de datos, de nada sirve si nuestras sucesivas aplicaciones se instalán en <em>schemas</em> distintos o utilizan sus propias tablas. Otra cosa que Larry y Enrique pasan por alto es que esta batalla no se juega en la base de datos, sino en un territorio mucho más hinospito: <strong>la ofimática.</strong> Porque la mayor dispersión de datos no la provocan los desarrolladores, sino las hordas de managers en ciernes que salen de escuelas de negocios como en la que da clase Enrique, armados hasta los dientes con Powerpoints y Excel donde hacen su &#8220;yo me lo guiso, yo me lo como&#8221;, plasman su <em>know-how</em> y &#8220;aportan valor&#8221; a la empresa. Mi primera labor como CEO de una empresa siempre sería la misma: prohibir el Excel y derivados. <strong>El Excel puede ser una de las herramientas más dañinas  para la actividad de una empresa</strong> y debería utilizarse únicamente como última solución y como herramienta de apoyo, nunca de trabajo ¿Sabéis qué es el <a href="http://www.alightplanning.com/downloads/Escaping_Excel_Hell.pdf" target="_blank">Excel Hell</a>? Pues si habéis trabajado como informáticos en ambientes corporativos, seguro que lo habéis sufrido&#8230;</li>
<li><strong>La integración del software</strong>. Pues sí. Es difícil conseguir que un programa de facturación hecho por un equipo hindú se integre correctamente con un programa de nóminas hecho en Albacete. Para solucionarlo, tenemos dos posibilidades. La primera, la que sugiere Larry: &#8220;me lo compras todo a mí y, a cambio de <strong>mucho dinero</strong>, te prometo que te ahorraré aún más dinero. Te ahorrarás mucha pasta en técnicos, que emplearás en pagar a mis consultores&#8221;. Porque, no nos engañemos, optar por una solución de Oracle no implica que todo funcione al instante y mágicamente. Cualquier técnico que haya intentado instalar una <em>suite</em> de aplicaciones de Oracle sabrá que es complicado, <em>muy</em> complicado. En cualquier caso, es una opción, que es muy válida para grandes empresas donde es más importante la respetabilidad y seguridad financiera que da una megacorporación como Oracle, antes que el ahorro de costes y la optimización técnica que prometen esos hippies que cobran <em>millonadas</em> y que pueden dejarte tirado de un día para otro para irse a cultivar alcachofas a un <em>kibutz</em> israelí ¿Cómo los llama Larry? ¡Ah, sí! <em>technicians</em>. Hay otra opción, impulsada no por Larry precisamente, sino por alguno de esos <em>technicians</em> locuelos. Se llaman <strong>Web Services</strong> o <a href="http://sixservix.com/blog/david/2009/09/30/explicando-rest-a-mam/" target="_blank">REST</a> y consiguen que aplicaciones que tienen que ver tan poco entre sí como Aznar y el Che Guevara se comuniquen sin problemas. Probablemente a Enrique y a sus alumnos no les suenen estos términos, porque remangarse y mancharse las manos entendiendo BIEN qué es eso del protocolo HTTP no es nada <em>cool</em> para el &#8220;<em>manachment</em>&#8221; pero, si supieran que la API que hace que su adorado <a href="http://sixservix.com/blog/david/2009/12/15/twitter-y-java/" target="_blank"><strong>twitter</strong></a> sea lo que es hoy en día es una API REST como una casa de grande y que por eso tiene ese <em>enoooorme</em> ecosistema de aplicaciones alrededor, seguro que le prestaban más atención al respecto.</li>
<li><strong>Adaptabilidad del Software</strong>. Vaya, se queja Larry de que configurar un programa complicado es&#8230; complicado. Y tiene razón pero, ¿qué solución da al respecto?. ¿Alguien ha jugado a un videojuego de última generación? ¿Un Metal Gear, por ejemplo? Cualquier videojuego medianamente complejo te puede incluir un tutorial de cuatro horas que todos los jugones nos tragamos sin rechistar. Y eso sólo para aprender los rudimentos básicos del juego. ¿Alguien se puede imaginar al usuario medio tragándose un tutorial de cuatro horas antes de poder hacer algo con un programa en la empresa? Antes de que haya trascurrido media hora, te tiran el monitor a la cabeza. También dice que los ERPs, los CRMs y no se cuantos programas más están &#8220;sin acabar&#8221;. Mal ejemplo Larry, MUY MAL EJEMPLO. ¿Por qué? Porque el dominio funcional de un ERP, por ejemplo, es <em>taaaan</em> complejo que es literalmente IMPOSIBLE crear una aplicación capaz de modelar todas las realidades de una empresa. Créanme, sé de lo que hablo. No soy usuario avanzado, ni comercial, ni consultor de uno o varios módulos de un ERP. Yo he diseñado y programado un ERP desde cero, de la nada y es realmente difícil crear algo que se adapte a inputs y outputs tan variables como los que puede dar una única empresa. Imaginaos algo capaz de adaptarse por igual a una empresa como Recauchutados López o Indra. Podéis pensar que, aquí, el único paquete soy yo, pero a esa pequeña empresa llamada <a href="http://www.sap.com/spain/index.epx" target="_blank">SAP</a>, le pasa algo similar. <strong>Hay procesos SAP con más de 800 parámetros</strong> y, aún así, un CD con una instalación de <strong>SAP</strong> tal cual, vale lo mismo que un <strong>Open Bravo</strong>: cero patatero. Siempre hay algo que programar, siempre hay algo que adaptar, siempre hay un Director Financiero que quiere el informe en verde, no en naranja. ¿<strong>Oracle</strong> soluciona mejor que nadie todo esto? No tengo ni la menor idea. La última vez que intenté comprender por completo el <em>portfolio</em> de <strong>Oracle</strong> (¿Peoplesoft? ¿JD Edwards? ¿Siebel?), me empezó a doler la cabeza como cuando me pregunté &#8220;si antes del <em>Big Bang</em> no había nada, tenía que haber <em>algo</em>, porque el mismo concepto de la nada implica que haya un algo que se contraponga&#8221;. No he encontrado respuesta en ninguno de los dos casos.</li>
</ul>
<p style="text-align: justify">Bueno, al fin y al cabo esto sólo es un ladrillo de un Jedi seducido por el lado oscuro, de un técnico que navega entre el <em>manachment</em> y el <em>entrepeneurship</em>.</p>
<p style="text-align: justify">Probablemente, todas estas divagaciones sólo lleguen a mis <strong>fieles espartanos</strong>. A Jeroclo, a Vilches, a Beas, a Arranz y a tantos otros. Pero, por una vez, sólo por una vez, me gustaría que todo este texto llegara a alguien más, a <strong>Enrique Dans</strong>, y que pudiera completar la lección que incluye el gran vídeo de Larry con esta humilde aportación. Quizás así, la nueva generación de &#8220;<em>manachment</em>&#8221; que se hiciera cargo de las empresas de tecnología de este país pudieran tener una perspectiva más amplia, más allá de la moqueta y más cercana a las tripas del negocio, donde trabajan los técnicos.</p>
<p style="text-align: justify">Así que, si quieres ayudarme a intentarlo, <strong>copia, pega, pinta y colorea, menea, retwitea, envía, comenta y menciona este modesto artículo</strong>. Si conseguimos que llegue hasta Enrique, prometo pagarle una ronda de cervezas a mis fieles espartanos. Y yo siempre cumplo mis promesas.</p>
<p style="text-align: justify">
]]></content:encoded>
			<wfw:commentRss>http://sixservix.com/blog/david/2010/06/22/problemas-gestion-informacion/feed/</wfw:commentRss>
		<slash:comments>27</slash:comments>
		</item>
		<item>
		<title>Compartiendo mesa y mantel con Oracle</title>
		<link>http://sixservix.com/blog/david/2010/06/17/oracle_y_bloggers/</link>
		<comments>http://sixservix.com/blog/david/2010/06/17/oracle_y_bloggers/#comments</comments>
		<pubDate>Thu, 17 Jun 2010 05:51:27 +0000</pubDate>
		<dc:creator>David Bonilla</dc:creator>
				<category><![CDATA[negocios]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[tecnologías de la información]]></category>
		<category><![CDATA[carmen pizarro]]></category>
		<category><![CDATA[jaime cid]]></category>
		<category><![CDATA[mildred laya]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[pyme]]></category>

		<guid isPermaLink="false">http://sixservix.com/blog/david/?p=3350</guid>
		<description><![CDATA[Ayer acudí a un encuentro de bloggers organizado por Oracle con la intención de comenzar a escuchar activamente a la comunidad de clientes y desarrolladores.


Artículos relacionados:<ol><li><a href='http://sixservix.com/blog/david/2010/04/12/james-gosling-deja-oracle/' rel='bookmark' title='Permanent Link: James Gosling deja Oracle'>James Gosling deja Oracle</a> <small>James Gosling, 'padre' del lenguaje de programación java ha dejado...</small></li>
<li><a href='http://sixservix.com/blog/david/2010/02/23/tnsnames/' rel='bookmark' title='Permanent Link: Bonitruco: averigua desde donde se configura Oracle'>Bonitruco: averigua desde donde se configura Oracle</a> <small>Uno de los problemas más habituales a la hora de...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify"><img class="size-medium wp-image-3353 alignleft" style="border: 0pt none;margin-right: 10px" title="oracle" src="http://sixservix.com/blog/david/files/2010/06/oracle-300x237.jpg" alt="" width="240" height="190" />Ayer tuve la oportunidad de asistir a un encuentro de <em>bloggers</em> relacionados con las necesidades tecnológicas de las <a href="http://embolsados.es/que-es-una-pyme/" target="_blank">pymes</a>, organizado por <strong>Oracle</strong>.</p>
<p style="text-align: justify">Cuando recibí la invitación, después de haberles dado <a href="http://sixservix.com/blog/david/2010/04/12/james-gosling-deja-oracle/" target="_blank">tanto</a> y <a href="http://sixservix.com/blog/david/2010/02/01/el-traje-nuevo-del-emperador/" target="_blank">tan duro</a>, pensé que todo era una trampa para secuestrarme y condenarme a galeras remando en el barco de Larry Ellison. La verdad, ver entre los organizadores a <strong><a href="http://jaimecid-oracle.blogspot.com/" target="_blank">Jaime Cid</a></strong>, compañero del metal con el que he compartido algún que otro <a href="http://www.javahispano.org/contenidos/es/javahispano_podcast__052__productos_y_estrategia_oracle_entrevista_a_jaime_cid/" target="_blank"><em>podcast</em></a> y <em>cara amable</em> de <strong>Oracle </strong>ante la comunidad española de desarrolladores, me tranquilizó un poco.</p>
<p style="text-align: justify">Para mí, el formato elegido fue un acierto porque favoreció una conversación natural y fluida. No intentaban vender producto o servicio alguno. El objetivo era conocer las inquietudes de la pequeña y mediana empresa   en una comida-debate donde los 11 invitados pudimos charlar en un   ambiente relajado y distendido.</p>
<p style="text-align: justify">Algunos me echasteis en cara el <a href="http://twitter.com/jmbeas/status/16307120242" target="_blank">no tuitear nada durante la comida</a>. Siento no haberos informado de los planes secretos de <strong>Oracle </strong>para conquistar el mundo en tiempo real, pero los compañeros de mesa y el debate generado fue <strong>muy interesante</strong> y, como casi siempre, <span style="text-decoration: underline">yo me metí en todos los charcos que fueron saliendo</span>.</p>
<p style="text-align: justify">Además de Jaime, hicieron de anfitrionas <a href="http://www.well-comm.es/wellcommunity/?p=697" target="_blank">Mildred Laya</a>, Directora de Comunicación de <strong>Oracle </strong>para España y Portugal, y <a href="http://es.linkedin.com/in/carmenpizarro" target="_blank">Carmen Pizarro</a>, Directora de Marketing para PYMES; que nos dejaron total libertad para proponer los temas y preguntas que nos interesaran.</p>
<p style="text-align: justify">Como resultado, hablamos de todo un poco y también, como no, de <strong>Oracle</strong>. Os enumero algunas de las ideas principales que se plantearon sobre la mesa con un pedazo de <em>disclaimer </em>como un piano de cola de grande: en ningún caso son las opiniones oficiales de la compañía californiana, sino de la mesa de debate.</p>
<ul>
<li><strong>Oracle </strong>orienta su <em>portfolio </em>a clientes con características muy definidas: a partir de 50 empleados y unos 10 millones de euros de facturación.</li>
<li><strong>Oracle </strong>no ha definido aún una estrategia clara para proporcionar SaaS. La política de Larry Ellison es entrar en un mercado &#8220;cuando hay que entrar&#8221; no antes.</li>
<li><strong>Oracle </strong>mantiene su apuesta por un modelo de negocio basado en la venta de licencias y servicios de valor añadido asociados a dichas licencias.</li>
<li>Apuestan por la red de <em>partners </em>para llegar donde ellos no llegan, fundamentalmente completar la red de venta hasta el cliente final en todos los territorios y los servicios de integración y desarrollo.</li>
<li>La integración efectiva con <strong>SUN</strong>, en España, se hará el 1 de julio.</li>
</ul>
<p style="text-align: justify">Pero <strong>lo más interesante de esta comida</strong> fue conocer de primera mano que <strong>Oracle </strong>conoce y asume que uno de los mayores activos que ha adquirido con la compra de <strong>SUN </strong>es la inmensa comunidad de desarrolladores que hay detrás de tecnologías como Java.</p>
<p style="text-align: justify"><strong>Oracle </strong>ha tenido una relación fría y distante con la comunidad de desarrollo hasta el momento. Hasta ahora, no debía ocuparse de la Comunidad  porque NO TRABAJABA con la Comunidad, pero al completar la fusión del 1 de julio, sus  clientes habrán cambiado, su <em>portfolio </em>habrá cambiado y, desde luego, su  negocio habrá cambiado. Deben variar su estrategia de comunicación e incluso de venta para adaptarse a estos cambios</p>
<p style="text-align: justify">Parece que han comenzado a darse cuenta de la importancia de los técnicos en los procesos de decisión de compra. La propia Carmen comentó que iba a encargarse de gestionar estas relaciones con la Comunidad.</p>
<p style="text-align: justify">Esta comida parece un gesto de apertura y un buen primer paso. Esperemos que sea el primero de muchos y que permita acercar los productos y tecnologías de <strong>Oracle </strong>a los verdaderos presciptores de los mismos: los desarrolladores.</p>


<p>Artículos relacionados:<ol><li><a href='http://sixservix.com/blog/david/2010/04/12/james-gosling-deja-oracle/' rel='bookmark' title='Permanent Link: James Gosling deja Oracle'>James Gosling deja Oracle</a> <small>James Gosling, 'padre' del lenguaje de programación java ha dejado...</small></li>
<li><a href='http://sixservix.com/blog/david/2010/02/23/tnsnames/' rel='bookmark' title='Permanent Link: Bonitruco: averigua desde donde se configura Oracle'>Bonitruco: averigua desde donde se configura Oracle</a> <small>Uno de los problemas más habituales a la hora de...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://sixservix.com/blog/david/2010/06/17/oracle_y_bloggers/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
		<item>
		<title>Cómo insertar código fuente en tus entradas de Wordpress</title>
		<link>http://sixservix.com/blog/david/2010/06/08/incrustar-codigo-en-wordpress/</link>
		<comments>http://sixservix.com/blog/david/2010/06/08/incrustar-codigo-en-wordpress/#comments</comments>
		<pubDate>Tue, 08 Jun 2010 06:00:12 +0000</pubDate>
		<dc:creator>David Bonilla</dc:creator>
				<category><![CDATA[software]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[gist]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://sixservix.com/blog/david/?p=3278</guid>
		<description><![CDATA[Aprende a insertar código fuente en tus entradas de Wordpress de una manera fácil y sencilla mediante los Gist de github.com


Artículos relacionados:<ol><li><a href='http://sixservix.com/blog/david/2010/08/11/incrustar-flash-en-wordpress/' rel='bookmark' title='Permanent Link: Cómo incrustar Flash en Wordpress'>Cómo incrustar Flash en Wordpress</a> <small>Por seguridad, Wordpress impide incrustar flash y objetos con la...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify"><img class="alignleft size-full wp-image-3279" style="border: 0pt none" title="github" src="http://sixservix.com/blog/david/files/2010/06/github.jpg" alt="" width="194" height="194" />La semana pasada terminé mi <a href="http://sixservix.com/blog/david/2010/06/02/transacciones-y-bloqueos-en-glassfish-v3-con-ejb3-1-y-jpa2-iii/" target="_blank">serie sobre bloqueos y transacciones</a> con <strong>EJB3.1</strong> y <strong>JPA2</strong>. Uno de los motivos por los que tardé tanto en concluirla fue que no conseguí hacer funcionar correctamente ningún <em>plugin </em>para incrustar código fuente en los artículos de <strong>Wordpress</strong>.</p>
<p style="text-align: justify">Si, siempre quedaba la última opción: copiar el texto y grabarlo como <em>preformateado</em>, pero eso, básicamente, sólo implicaba cambiar la fuente y el tamaño del texto.</p>
<p style="text-align: justify">Afortunadamente para mi y los lectores de este <em>blog</em>, el amigo Alberto Peña acudió al rescate y me aconsejo que utilizara los <a href="http://gist.github.com/" target="_blank">Gist</a> de <strong>gitHub </strong>para solucionar el problema.</p>
<p style="text-align: justify">¿Que qué eso de un <strong>Gist</strong>? Pues una forma muy sencilla de compartir fragmentos de código con otros. La forma de utilizarlos es muy sencilla:</p>
<ol>
<li>Lo creas, copiando y pegando el código que quieras compartir</li>
<li>Lo guardas</li>
<li>Utilizas el código que te proporcionan para utilizarlo en cualquier sitio</li>
</ol>
<p style="text-align: justify">Sencillo ¿verdad? Por supuesto, también puedes modificarlo en un futuro o incluso configurar las opciones de visibilidad del mismo.</p>
<p style="text-align: justify">Para poder utilizarlo en tu <em>blog </em>de <strong>Wordpress</strong>, sólo hay que seguir los siguientes pasos:</p>
<ol>
<li>Instalad <a href="http://arin.me/blog/embed-a-gist-in-your-wordpress-blog" target="_blank">este </a><em><a href="http://arin.me/blog/embed-a-gist-in-your-wordpress-blog" target="_blank">hack</a> </em>del <em>plugin </em>de Paul William
<ul>
<li>Cread un subdirectorio que se llame /<em>gistson</em></li>
<li>Grabad el <strong>Gist </strong>del enlace del <em>hack</em> como <em>gistson.php</em> dentro del subdirectorio anterior</li>
<li>Copiad el subdirectorio dentro del directorio /wp-content/plugins de vuestra instalación de <strong>Wordpress</strong></li>
<li>Modificad el fichero <em>header.php</em> de vuestro tema de <strong>Wordpress</strong> para que incluya este enlace a la CSS de los <strong>Gist</strong> dentro de la etiqueta <em>&lt;head&gt;</em>: <em>&lt;link rel=&#8221;stylesheet&#8221; href=&#8221;http://gist.github.com/stylesheets/gist/embed.css&#8221;/&gt;</em></li>
</ul>
</li>
<li>Cuando queráis insertar un <strong>Gist </strong>con vuestro código en algún artículo utilizareis la siguiente notación: <em></em> donde el <em>id </em>será el ID del <strong>Gist </strong>que hayáis creado y <em>nometa </em>indicará si queréis o no que incluya metadatos.</li>
</ol>
<p>Como resultado obtendréis algo parecido a esto:</p>
<div id="gist-422422" class="gist">
  
  
    
            

      <div class="gist-file">
        <div class="gist-data gist-syntax">
          
          
          
            <div class="highlight"><pre><div class='line' id='LC1'><span class="nt">&lt;link</span> <span class="na">rel=</span><span class="s">"stylesheet"</span> <span class="na">href=</span><span class="s">"http://gist.github.com/stylesheets/gist/embed.css"</span><span class="nt">/&gt;</span></div></pre></div>
          
        </div>

        
      </div>
    
  
</div>

<p><em>Facile e divertente&#8230;</em></p>


<p>Artículos relacionados:<ol><li><a href='http://sixservix.com/blog/david/2010/08/11/incrustar-flash-en-wordpress/' rel='bookmark' title='Permanent Link: Cómo incrustar Flash en Wordpress'>Cómo incrustar Flash en Wordpress</a> <small>Por seguridad, Wordpress impide incrustar flash y objetos con la...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://sixservix.com/blog/david/2010/06/08/incrustar-codigo-en-wordpress/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Jonathan Schwartz y las patentes de software</title>
		<link>http://sixservix.com/blog/david/2010/03/11/jonathan-schwartz/</link>
		<comments>http://sixservix.com/blog/david/2010/03/11/jonathan-schwartz/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 05:53:27 +0000</pubDate>
		<dc:creator>David Bonilla</dc:creator>
				<category><![CDATA[software]]></category>
		<category><![CDATA[tecnologías de la información]]></category>
		<category><![CDATA[Jonathan Schwartz]]></category>
		<category><![CDATA[patentes]]></category>
		<category><![CDATA[sun]]></category>

		<guid isPermaLink="false">http://sixservix.com/blog/david/?p=2342</guid>
		<description><![CDATA[Jonathan Schwartz, ex CEO de SUN, habla en su blog acerca de las patentes de software y la inutilidad de las mismas.]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify"><img class="alignleft size-full wp-image-2344" style="margin-right: 10px" src="http://sixservix.com/blog/david/files/2010/03/jhonathanschwartz.jpg" alt="jhonathanschwartz" width="300" height="228" />Hace un par de días, Jonathan Schwartz, <strong>ex CEO de SUN</strong>, ha &#8220;rajado&#8221; en su <em>blog </em>acerca de las patentes de software.</p>
<p style="text-align: justify">El bueno de &#8220;<a href="http://en.wikipedia.org/wiki/Ponytail" target="_blank">Ponytail</a>&#8221; viene a decir que comprende el poder de las patentes de software con un <strong>carácter defensivo</strong> más que como una fuente de obtener ingresos. O, lo que es lo mismo, que recomienda que las compañías patenten sus &#8220;<em>nuevas tecnologías</em>&#8221; como pollos sin cabeza porque, en algún momento, cualquiera -incluidos posibles demandantes- utilizará alguna de tus patentes y eso <span style="text-decoration: underline">puede protegerte de sus futuras demandas</span>.</p>
<p style="text-align: justify">Para ilustrar sus ideas, Jonathan &#8220;saca pecho&#8221; y cuenta algunas <em>batallitas de abuelete</em>, como cuando <strong>Steve Jobs</strong> quiso intimidarle para que <strong>SUN</strong> no comercializara un producto que &#8220;supuestamente&#8221; infringía patentes de <strong>Apple </strong>y él contraatacó con las evidentes similitudes entre <strong>Concurrence</strong> -un software de presentaciones creado por la anterior empresa de Schwartz, <a href="http://en.wikipedia.org/wiki/Lighthouse_Design" target="_blank">Lighthouse Design</a>- y <a href="http://www.apple.com/es/iwork/keynote/" target="_blank">Keynote</a>.</p>
<p style="text-align: justify">Una anécdota similar es la que sufrió cuando <strong>Bill Gates</strong> y <strong>Steve Ballmer</strong> le hicieron una visita para intentar cobrar por cada copia descargada de <a href="http://es.openoffice.org/" target="_blank">OpenOffice</a> y Jonathan les recordó la ristra de patentes de java que había infringido una tecnología como .<a href="http://www.microsoft.com/NET/" target="_blank">NET</a>.</p>
<p style="text-align: justify">Por fin, <strong>alguien habla alto y claro sobre la absurdez a la que se ha llegado en las patentes de software</strong>&#8230; aunque <a href="http://www.javahispano.org/contenidos/es/jonathan_schwartz_se_ira_de_oracle__sun/" target="_blank">hayan tenido que  despedirle de SUN</a> para que lo haga. No obstante, el <a href="http://jonathanischwartz.wordpress.com/" target="_blank"><em>blog </em>de Schwartz</a> se titula -literalmente- &#8220;<strong>Lo que no podía decir</strong>&#8221; y el famoso artículo de marras &#8220;<a href="http://jonathanischwartz.wordpress.com/2010/03/09/good-artists-copy-great-artists-steal/" target="_blank">Los buenos artistas copian. Los grandes artistas roban</a>&#8220;, frase que el mismo ha tomado <em>prestada </em>del gran <strong>Pablo Picasso</strong>.</p>
<p style="text-align: justify"><span style="text-decoration: underline">Yo creo en las patentes de software</span>, pero sobre <strong>productos terminados y completos</strong> o incluso sobre <strong>complejos algoritmos que aporten valor</strong>, pero, ahora mismo, hay compañías como <strong>Amazon </strong>con patentes sobre supuestos <strong>procesos de negocio</strong> -como el <a href="http://en.wikipedia.org/wiki/1-Click" target="_blank">one-click buyin</a>- que están basados en algo tan neutral y disponible como el uso de <em>cookies</em>. O, lo que es peor, intentando patentar <strong>características</strong>. Como cuando <strong>Microsoft </strong>intentó patentar el hecho de que un procesador de texto muestre y permita editar al mismo tiempo el contenido de la página, el pie y la cabecera.<span style="font-family: verdana,arial,helvetica"><span style="font-family: verdana,arial,helvetica"><span style="font-family: verdana,arial,helvetica"><span style="font-family: verdana,arial,helvetica"><span style="font-family: verdana,arial,helvetica"><span style="font-family: verdana,arial,helvetica"><span style="font-family: verdana,arial,helvetica"><br />
</span></span></span></span></span></span></span></p>
<p style="text-align: justify">La pregunta que Jonathan no nos contesta en su artículo es: <strong>¿Y cómo quedan las pequeñas compañías y desarrolladores independientes en todo esto?</strong> Porque, evidentemente<strong>,</strong> <strong>no todo el mundo tiene la capacidad y posibilidad de iniciar innumerables y costosos procesos de patentado internacional por cada algoritmo o solución que se le ocurra</strong> ¿Cómo reaccionaríamos cualquiera de nosotros si Steve Jobs o Bill Gates nos llamase para amenazarnos con un litigio de proporciones bíblicas? ¿Hubiera sido tan &#8220;machito&#8221; Schwartz sin la fuerza de <strong>SUN </strong>detrás de él?</p>
]]></content:encoded>
			<wfw:commentRss>http://sixservix.com/blog/david/2010/03/11/jonathan-schwartz/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Bonitruco: averigua desde donde se configura Oracle</title>
		<link>http://sixservix.com/blog/david/2010/02/23/tnsnames/</link>
		<comments>http://sixservix.com/blog/david/2010/02/23/tnsnames/#comments</comments>
		<pubDate>Tue, 23 Feb 2010 09:24:25 +0000</pubDate>
		<dc:creator>David Bonilla</dc:creator>
				<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[sqlnet]]></category>
		<category><![CDATA[sqlnet.ora]]></category>
		<category><![CDATA[tnsnames]]></category>
		<category><![CDATA[tnsnames.ora]]></category>
		<category><![CDATA[tnsping]]></category>

		<guid isPermaLink="false">http://sixservix.com/blog/david/?p=2122</guid>
		<description><![CDATA[Uno de los problemas más habituales a la hora de trabajar con la base de datos Oracle y todos sus productos asociados es averiguar donde está el fichero TNSNAMES.ORA que configura los alias de las cadenas de conexión a distintas bases de datos. O, mas exactamente cuál -de los trescientos que se puede acabar teniendo [...]


Artículos relacionados:<ol><li><a href='http://sixservix.com/blog/david/2010/06/17/oracle_y_bloggers/' rel='bookmark' title='Permanent Link: Compartiendo mesa y mantel con Oracle'>Compartiendo mesa y mantel con Oracle</a> <small>Ayer acudí a un encuentro de bloggers organizado por Oracle...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify"><img class="alignleft size-full wp-image-2125" src="http://sixservix.com/blog/david/files/2010/02/tnsnames.jpg" alt="tnsnames" width="216" height="216" />Uno de los problemas más habituales a la hora de trabajar con la base de datos <strong>Oracle</strong> y todos sus productos asociados es averiguar donde está el fichero <a href="http://www.orafaq.com/wiki/Tnsnames.ora" target="_blank">TNSNAMES.ORA</a> que <strong>configura los alias de las cadenas de conexión a distintas bases de datos</strong>. O, mas exactamente cuál -de los trescientos que se puede acabar teniendo en una máquina- es el fichero <em>tnsnames.ora</em> que configura realmente la conexión.</p>
<p style="text-align: justify">Afortunadamente, <span style="text-decoration: underline">cuando se trabaja con java no se utilizan estos ficheros de configuración externos</span>. Se pueden guardar y utilizar las adenas de conexión y usarlas directamente con el <em>driver </em>JDBC de tipo 4 de <strong>Oracle</strong>, pero  siguen siendo necesarios para usar cualquier cliente o programa que utilice el <em>driver</em> nativo de la base de datos como el <a href="http://www.allroundautomations.com/plsqldev.html" target="_blank">PL/SQL Developer</a> o el <a href="http://www.toadsoft.com/toad_oracle.htm" target="_blank">Toad</a>.</p>
<p style="text-align: justify">La <strong>teoría </strong>dice que la variable de entorno <em>TNS_ADMIN</em> es la que configura la ruta donde se encuentra el fichero de configuración <em>tnsnames.ora</em>, pero <a href="http://www.dba-oracle.com/t_windows_tnsnames.ora_file_location.htm" target="_blank">la cosa se empieza a complicar</a> cuando también se involucra a la variable de entorno <em>PATH. </em></p>
<p style="text-align: justify">Cualquier instalación de un producto de <strong>Oracle </strong>-desde Weblogic a Discoverer- suele manipular la variable de entorno <em>PATH</em>, lo que puede provocar, desde <strong>el sorpresivo cambio de la versión de JDK de java que se esta utilizando</strong>&#8230; hasta el cambio de <em>tnsnames.ora</em> que configura el acceso a base de datos Oracle del sistema.</p>
<p style="text-align: justify">Para acabar de rematar la faena, Oracle utiliza una <a href="http://www.databasejournal.com/features/oracle/article.php/3108301/Connecting-with-Oracle-Finding-and-Setting-a-Configuration-File-Location.htm" target="_blank">búsqueda jerárquica de ficheros de configuración</a> y, además, esta jerarquía es <strong>distinta según el sistema operativo utilizado</strong>. Hasta puede llegar a utilizar configuración guardada en otra fichero de configuración: <em>sqlnet.ora</em>, lo que puede volver loco al programador mas duro.</p>
<p style="text-align: justify">Hay un truco para solucionar este problema y averiguar el fichero que configura las conexiones a Oracle: el comando <em>tnsping</em>.</p>
<p style="text-align: justify">El comando <em>tnsping </em>sirve, originalmente, para hacer un <em>ping</em> que compruebe la conexión a una base de datos remota mediante la siguiente sintaxis:</p>
<pre style="text-align: justify"><em>tnsping</em> alias_de_base_de_datos</pre>
<p style="text-align: justify">
<p style="text-align: justify">Pero, además, <strong><em>tnsping </em>indica la ruta física del fichero de configuración</strong> y la propia instalación de Oracle hace que este disponible en el <em>path </em>del sistema, así, se puede utilizar para averiguar donde esta el fichero de configuración de las cadenas de conexión de nuestro sistema, haciendo ping a una base de datos existente o ficticia:</p>
<p style="text-align: center"><img class="size-full wp-image-2141 aligncenter" src="http://sixservix.com/blog/david/files/2010/02/tnsping.jpg" alt="tnsping" width="599" height="387" /></p>
<p style="text-align: justify">
<p style="text-align: justify">


<p>Artículos relacionados:<ol><li><a href='http://sixservix.com/blog/david/2010/06/17/oracle_y_bloggers/' rel='bookmark' title='Permanent Link: Compartiendo mesa y mantel con Oracle'>Compartiendo mesa y mantel con Oracle</a> <small>Ayer acudí a un encuentro de bloggers organizado por Oracle...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://sixservix.com/blog/david/2010/02/23/tnsnames/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Bonitruco: no te vuelvas loco compartiendo en JIRA</title>
		<link>http://sixservix.com/blog/david/2010/02/17/compartiendo-jira/</link>
		<comments>http://sixservix.com/blog/david/2010/02/17/compartiendo-jira/#comments</comments>
		<pubDate>Wed, 17 Feb 2010 05:50:52 +0000</pubDate>
		<dc:creator>David Bonilla</dc:creator>
				<category><![CDATA[jira]]></category>
		<category><![CDATA[jira 4.0.1]]></category>

		<guid isPermaLink="false">http://sixservix.com/blog/david/?p=2045</guid>
		<description><![CDATA[Una de las características más potentes de JIRA es la posibilidad de compartir tus filtros de tareas o dashboards con otros usuarios. Sin embargo,  al intentar compartir un objeto, puedes verte sorprendido por el hecho de no poder compartirlo con todos los grupos de usuarios disponibles.
Si quieres saber cómo solucionar este problema, ahorrándote la búsqueda [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify"><img class="alignleft size-thumbnail wp-image-2046" src="http://sixservix.com/blog/david/files/2010/02/jira-150x150.jpg" alt="jira" width="150" height="150" />Una de las características más potentes de <a href="http://sixservix.com/es/jira.php" target="_blank">JIRA</a> es la <strong>posibilidad de compartir tus filtros de tareas o <em>dashboards </em>con otros usuarios</strong>. Sin embargo,  al intentar compartir un objeto, puedes verte sorprendido por el hecho de <span style="text-decoration: underline">no poder compartirlo con todos los grupos de usuarios disponibles</span>.</p>
<p style="text-align: justify">Si quieres saber <strong>cómo solucionar este problema</strong>, ahorrándote la búsqueda en <a href="http://confluence.atlassian.com/display/JIRA/Managing+Multiple+Dashboard+Pages#ManagingMultipleDashboardPages-SharingDashboardPages" target="_blank">la documentación oficial</a> (déjalo, no viene como solucionar este problema) y sin volverte loco revisando <a href="http://confluence.atlassian.com/display/JIRA/Managing+Global+Permissions" target="_blank">la configuración de permisos de la aplicación</a>, te cuento como hacerlo.</p>
<p style="text-align: justify">El truco está en que <strong>JIRA sólo te permite compartir los objetos con los grupos de usuarios de los que eres miembro</strong>. Es decir, que aunque seas el ASDLM (<em>Administrador Supremo De La Muerte</em>) de tu instalación de JIRA, si no perteneces al grupo de usuarios &#8220;Comerciales que merecen morir&#8221;, no podrás compartir ningún objeto con ellos.</p>
<p style="text-align: justify"><strong>Bonitruco:</strong></p>
<ol>
<li>Como eres Administrador de la muerte, <span style="text-decoration: underline">te incluyes en dicho grupo</span> de usuarios (o le pides a tu Administrador que te incluya temporalmente)</li>
<li>Compartes el filtro, el <em>dashboard</em> o lo que sea</li>
<li>Una vez que lo hayas compartido, <span style="text-decoration: underline">te excluyes del grupo</span></li>
</ol>
<p style="text-align: justify">
]]></content:encoded>
			<wfw:commentRss>http://sixservix.com/blog/david/2010/02/17/compartiendo-jira/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Yo programé el Bloc de Notas</title>
		<link>http://sixservix.com/blog/david/2009/11/30/yo-programe-el-notepad/</link>
		<comments>http://sixservix.com/blog/david/2009/11/30/yo-programe-el-notepad/#comments</comments>
		<pubDate>Mon, 30 Nov 2009 06:15:52 +0000</pubDate>
		<dc:creator>David Bonilla</dc:creator>
				<category><![CDATA[david]]></category>
		<category><![CDATA[humor]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[bloc de notas]]></category>
		<category><![CDATA[notepad]]></category>
		<category><![CDATA[windows 95]]></category>

		<guid isPermaLink="false">http://sixservix.com/blog/david/?p=1027</guid>
		<description><![CDATA[&#8220;&#8230; y yo programé el Bloc de Notas&#8221; Ésta es una de las frases que más he utilizado cuando algún  ser humano de sexo femenino me preguntaba, cubata en mano: &#8220;¿Informático?&#8230; ¿Y tú que haces exactamente?&#8221; cuando, después de 5 minutos intentando impresionarla con nuestra ensalada de siglas habitual -ERP, IDE, SQL&#8230;-, veías que te [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify"><img class="alignleft size-full wp-image-1028" src="http://sixservix.com/blog/david/files/2009/11/Notepad.png" alt="Notepad" width="185" height="185" />&#8220;&#8230; y yo programé el Bloc de Notas&#8221; Ésta es una de las frases que más he utilizado cuando algún  ser humano de sexo femenino me preguntaba, cubata en mano: &#8220;<em>¿Informático?&#8230; ¿Y tú que haces exactamente?</em>&#8221; cuando, después de 5 minutos intentando impresionarla con nuestra ensalada de siglas habitual -<strong>ERP</strong>, <strong>IDE</strong>, <strong>SQL</strong>&#8230;-, veías que te empezaba a mirar con ojos bovinos. &#8220;<em>¡Oh! ¿El Bloc de Notas?&#8230; ¿En serio?</em>&#8220;. &#8220;No, mujer. En broma&#8221;. Atribuirte la autoría del Bloc de Notas siempre te ha garantizado, al menos, una sonrisa.</p>
<p style="text-align: justify">Pero esta pequeña broma no es más que una introducción para presentar uno de los grandes misterios de la informática. A pesar de que el <strong>Bloc de Notas</strong> (o <strong>Notepad</strong>, para los de Wisconsin) es <span style="text-decoration: underline">una de las piezas de software más utilizadas de toda la historia</span>, ¿Alguien tiene la más remota idea de <strong>quién o quiénes lo programaron</strong>? Bueno, pues yo lo he averiguado&#8230; o casi.<span id="more-1027"></span></p>
<p style="text-align: justify">Al final de la década de los 90, una asociación de profesionales de Internet organizó una encuesta para determinar el <em>Mejor Servidor Web</em> o el <em>Mejor Navegador Web</em>. Increíblemente, el ganador en la categoría de <em>Mejor Herramienta de Desarrollo Web</em> fue&#8230; el Bloc de Notas.</p>
<p style="text-align: justify">Cuando la organización se puso en contacto con Microsoft para averiguar el autor del Bloc de Notas y poder invitarlo a la ceremonia de entrega de premios, nadie en el equipo de desarrollo de Windows pudo recordar quien o quienes habían programado el Bloc de Notas. <strong>Una década después, la autoría del Bloc de Notas seguía perdida</strong> en las arenas del tiempo&#8230; hasta que <a href="http://en.wikipedia.org/wiki/Raymond_Chen" target="_blank">Raymond Chen</a> <a href="http://blogs.msdn.com/oldnewthing/archive/2009/11/17/9923309.aspx" target="_blank">levantó la liebre en su blog</a>.</p>
<p style="text-align: justify">Raymond explica que consiguió la información gracias a una &#8220;fuente independiente&#8221; que le confirmó la autoría del programa. Según el Señor Chen, <strong>el autor del Bloc de Notas trabajó como Jefe de Desarrollo en el equipo de Windows 95</strong>. Después del lanzamiento de Windows 95, <span style="text-decoration: underline">abandonó el desarrollo de software para convertirse en profesor de Ciencias en un instituto</span>.</p>
<p style="text-align: justify">A pesar de la insistencia, <strong>Raymond se ha negado a revelar el nombre del autor</strong>. Según él, &#8220;para preservar su intimidad&#8221;.</p>
<p style="text-align: justify">No he conseguido averiguar el nombre del Jefe de Desarrollo de Windows 95, pero lo que sí he encontrado es un <a href="http://www.eeggs.com/tree/1154.html" target="_blank"><em>huevo de pascua</em> documentado de Windows 95</a>, con el que <strong>podemos ver el nombre de todos los miembros del equipo de desarrollo</strong>.</p>
<p style="text-align: justify">Aquí me he quedado, <span style="text-decoration: underline">no he querido ir más allá</span>. Quizás porque tenga miedo a despertar a los <em>espíritus de la programación</em> si llego a encontrar al autor; quizás porque nunca se sabe cuándo vendrá bien atribuirse de nuevo la autoría del Bloc de Notas :); pero, sobre todo, porque <strong>hay cosas que es mejor que permanezcan ocultas</strong>. Nuestra profesión, probablemente <strong>la mejor profesión del mundo</strong>, perdería un halo de romanticismo y de misterio si todo, absolutamente todo, se supiera. Incluido quien demonios programó el Bloc de Notas.</p>
<p style="text-align: justify">Para aquellos que <strong>se atrevan a ir más lejos</strong>, allí donde yo no he llegado, aquí les dejo un vídeo con el famoso <em>huevo de pascua</em> donde aparecen <span style="text-decoration: underline">todos los miembros del equipo de desarrollo de Windows 95</span>. Supongo que sólo es cuestión de empezar a <em>googlear </em>nombres hasta dar con el autor. <strong>Os deseo suerte</strong>.</p>
<p style="text-align: justify"><p><a href="http://sixservix.com/blog/david/2009/11/30/yo-programe-el-notepad/"><em>Pinche aquí para ver el vídeo</em></a></p></p>
]]></content:encoded>
			<wfw:commentRss>http://sixservix.com/blog/david/2009/11/30/yo-programe-el-notepad/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Las aplicaciones web y el alto rendimiento</title>
		<link>http://sixservix.com/blog/david/2009/10/01/web-bajo-rendimiento/</link>
		<comments>http://sixservix.com/blog/david/2009/10/01/web-bajo-rendimiento/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 21:28:43 +0000</pubDate>
		<dc:creator>David Bonilla</dc:creator>
				<category><![CDATA[negocios]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[videojuegos]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[alto rendimiento]]></category>
		<category><![CDATA[Kobi Korsah]]></category>

		<guid isPermaLink="false">http://sixservix.com/blog/david/?p=309</guid>
		<description><![CDATA[&#8220;Las aplicaciones web corporativas presentan un bajo rendimiento&#8221;. Ése era el titular del recorte de prensa con el que  me recibió mi jefe una mañana de la pasada semana. Toma Jeroma Patito de Goma. ¡Casi se me indigesta el café! ¡El horrible café corporativo sí que presenta un bajo rendimiento! :) Pero, fuera de bromas, [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify">&#8220;Las aplicaciones web corporativas presentan un bajo rendimiento&#8221;. Ése era el titular del recorte de prensa con el que  me recibió <a href="http://sixservix.com/blog/fernandopellus/" target="_blank">mi jefe</a> una mañana de la pasada semana. Toma Jeroma Patito de Goma. ¡Casi se me indigesta el café! ¡El horrible café corporativo sí que presenta un <em>bajo rendimiento</em>! :) Pero, fuera de bromas, me puse a leer el dichoso recorte. Sabía que, a mi responsable -acostumbrado a la solidez espartana del mundo <em>telnet</em>- aún le chirriaba el tema de los refrescos de las páginas web.</p>
<p style="text-align: justify">El articulo está basado en <a href="http://www.ca.com/es/press/release.aspx?cid=216359" target="_blank">un estudio de CA</a> sobre el &#8220;Índice de estrés en el uso de aplicaciones web&#8221;. Porque sí, usar aplicaciones web -ojo respecto a la sutil diferencia con páginas web- produce estrés en los usuarios y nosotros, los malvados informáticos, yéndonos a dormir por las noches sin cargo de conciencia. Si ya el enfoque del estudio me puso en alerta, leer una reseña sobre la opinión de <a href="http://community.ca.com/members/Kobi-Korsah.aspx" target="_blank">Kobi Korsah</a>, director de Marketing de Productos de CA para la región EMEA, hizo que se dispararan todas las alarmas. Y es que, normalmente, poner a alguien de marketing a lidiar con técnica pura y dura es igual que poner a un mandril en celo a cuidar de tus hijos pequeños: puede salir bien, pero de casualidad.</p>
<p style="text-align: justify">El bueno de Kobi y su estudio nos comentan que el 73% de los trabajadores ahora dependen más de las aplicaciones web que hace dos años y casi todos los encuestados (un 97%) no podrían hacer su trabajo diario sin ellas. Bien, esto es bueno, sobre todo para los que programan aplicaciones web como es mi caso, pero ¿de verdad hacía falta encargar un estudio para saber esto? No soy un gurú, pero hace años que yo y cualquiera que esté en la industria del desarrollo de software sabe que todo tiende al mundo web. ¿Porque es más bonito? No. ¿Porque es más fácil de desarrollar? No. ¿Porque es más <strong>rápido</strong>? No, ¡pardiez no! Porque te permite acceder a tu aplicación desde cualquier sitio del mundo, hasta desde el teléfono de tu abuela y porque eso de instalar una aplicación en 300 ordenadores de una empresa y, sobre todo, mantenerla, suena un poco a Los Picapiedra ¿no?</p>
<p style="text-align: justify">Ahora podríamos entrar en el debate de ¿<strong>qué es rápido y qué es lento</strong>? ¿Es lento un proceso que te calcule los seguros sociales de 40 empleados y te genere un fichero para enviar a la Seguridad Social, un PDF de resumen y te muestre una traza por pantalla con todos los detalles del cálculo en menos de 5 segundos?  Algunos dirán que sí, otros dirán que no. Entre los usuarios de Kobi, por ejemplo, el 46% espera que la web le responda en menos de 10 segundos y, cito textualmente &#8220;<em>a los 20 segundos, el 72% ha agotado la paciencia y ha pasado a otra web, y al minuto, el 90% de las personas se ha ido a otro sitio web</em>&#8220;. Hombre&#8230; a lo mejor yo soy muy impaciente pero, en un minuto no me he ido a otro sitio web ¡me he ido a por un café corporativo y he vuelto!<span id="more-309"></span></p>
<p style="text-align: justify">Bueno, parece que entonces nuestro limite está en los 10 segundos y que todo lo que esté por debajo de ese tiempo de respuesta es rápido ¿no? Pues ni de coña. Una vez más, el estudio le ha fallado a Kobi y sus muchachos. Si yo le presento algo a mi jefe con un tiempo de respuesta medio, petición a petición, de 10 segundos; podría ver como en menos de esos 10 segundos le empieza a cambiar la cara hasta convertirse en algo parecido a esto:</p>
<div id="attachment_320" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-320" src="http://sixservix.com/blog/david/files/2009/10/shrekgrrrh-300x225.jpg" alt="shrekgrrrh" width="300" height="225" /><p class="wp-caption-text">Mi jefe, después de esperar 10 segundos para que una aplicación web acabe el proceso de login</p></div>
<p style="text-align: justify">Llegamos pues a la conclusión de que <strong>rápido </strong>o <strong>lento </strong>son conceptos <strong>relativos </strong>y completamente subjetivos, difíciles, muy difíciles de medir. Lo que sí sabemos, sin tener que encargar ningún estudio es que <strong>una aplicación web siempre será, por definición, más lenta que una aplicación cliente-servidor donde sólo viajan los datos de información, no los de presentación, y muuucho más lenta que una aplicación telnet</strong>, que se ejecuta en remoto, en el propio servidor donde está alojada la aplicación. Si a eso le añades lo que los veteranos denominan &#8220;esas tonterías&#8221; (sic) de los desarrolladores de aplicaciones de hoy en día, como esa <em>terrible </em>obstinación por separar todo en <em>n</em> capas o poner la base de datos en una máquina distinta del servidor de aplicaciones y las CAGADAS PURAS Y DURAS, como la tendencia a la sobrearquitectura, los <a href="http://sixservix.com/blog/david/2009/09/29/el-macguffin-informatico/" target="_blank">macguffins</a> y a poner 3 millones de imágenes, iconos y flash porque &#8220;el cliente dice que queda mas bonito&#8221;&#8230; pues sí, las aplicaciones web son mas lentas. Lentas de narices. Pero es que es lo que hay, el jamón es jamón y el chóped, chóped. Lo que no puedes  pretender es comer jamón a precio de chopped. Porque -si amigos- al final como casi siempre, <strong>todo es cuestión de pasta</strong>.</p>
<h2 style="text-align: justify">ENSEÑAME LA PASTA I</h2>
<p style="text-align: justify">Es normal que los usuarios quieran una aplicación rápida. Yo también la quiero pero, para conseguirla necesito dinero, más dinero. Dinero para pagar a mis desarrolladores durante el tiempo que tarden en depurar y optimizar la aplicación o dinero para poder contratar a más progamadores que consigan desarrollar al mismo ritmo que lo hacemos ahora pero, además, consiguiendo optimizar el funcionamiento. Ojo, no quiero que esto se vea como una total y absoluta orgía de autocomplaciencia, pero, es cuestión de hacer autocrítica. Igual que reconozco haber encontrado auténticos TRUÑACOS en mi código y en el de mi equipo, como cosas que se hacen 2 o 3 veces sin saber porqué, también tengo que reconocer como me duele ver todos los días la caja sin abrir del <a href="http://www.quest.com/performasure/" target="_blank">Perfomasure</a> que compramos hace dos años sin que nadie haya tenido tiempo de poder utilizarlo.</p>
<h2 style="text-align: justify"><strong>ENSEÑAME LA PASTA II</strong></h2>
<p style="text-align: justify">Gracias al informe de CA me entero de que mis pobres usuarios sufren de <em>stress-web</em>, provocado por mi inoperancia a la hora de desarrollar y, sobre todo, mi impotencia para cumplir sus expectativas. Y es que, parece ser que &#8220;<strong>cuando los clientes del sitio web se encuentran ante un problema o error, el 53% esperan que esté resuelto en 10 minutos</strong>; el 80% en una hora y el 99% esperan que esté resuelto en 24 horas. ¡Toma ya! ¡10 minutos!</p>
<p style="text-align: justify">A ver&#8230; no soy un genio de la gestión pero, para poder atender las incidencias en 10 minutos, o tengo a un desarrollador atado a una silla 24h, parado y quieto en plan bombero, listo para apagar un fuego cuando este se produzca o, no me salen las cuentas porque, si el mismo equipo de programación te arregla los errores sin haber completado el ciclo de desarrollo, ese ciclo se va a retrasar.</p>
<p style="text-align: justify">Cuando alguna vez alguien me pregunta si puedo garantizar la resolución de incidencias siempre les digo que SI pero, la sonrisa de satisfacción que ponen, se borra en cuanto les digo que le costaría unos 40.000 euros al año. Todo el mundo quiere el servicio pero nadie quiere pagarlo.</p>
<h2 style="text-align: justify">¿CONCLUSIONES?</h2>
<p style="text-align: justify"><strong>Las aplicaciones web no son ni rápidas ni lentas</strong>. Las aplicaciones web son lo que son y es responsabilidad de todos que sean lo mas eficientes posibles; en primer lugar de los <strong>desarrolladores</strong>, que deberíamos demostrar un amor por el trabajo y un orgullo profesional que nos empujara a crear el mejor código posible mas allá de las dificultades; en segundo lugar, los <strong>gestores</strong>, que debemos obtener los recursos necesarios -técnicos, tiempo, dinero- para poder garantizar la calidad deseada; y, en tercer lugar, los <strong>usuarios</strong>, que deberían mostrar el interés apropiado por lo que son sus <strong>verdaderas herramientas de trabajo</strong>, en vez de limitarse a aprender lo justito para ir tirando y descolgar el teléfono de soporte y preguntar que hacer en cuanto les salé una botonera de Aceptar/Cancelar. No sé en que grupo estas tú pero, seguro que todos podemos conseguir que nuestras aplicaciones web sean, sino mas rápidas, si mejores.</p>
]]></content:encoded>
			<wfw:commentRss>http://sixservix.com/blog/david/2009/10/01/web-bajo-rendimiento/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Explicando REST a mi madre</title>
		<link>http://sixservix.com/blog/david/2009/09/30/explicando-rest-a-mam/</link>
		<comments>http://sixservix.com/blog/david/2009/09/30/explicando-rest-a-mam/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 05:30:14 +0000</pubDate>
		<dc:creator>David Bonilla</dc:creator>
				<category><![CDATA[java]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[rest]]></category>
		<category><![CDATA[webservices]]></category>

		<guid isPermaLink="false">http://sixservix.com/blog/david/?p=186</guid>
		<description><![CDATA[Si mamá, desde hace ya un buen tiempo, cuando vienes a visitarme a casa, no paras de leer en la pantalla de mi ordenador, en los papeles que tengo por ahí sueltos,  eso de REST. Y como no acabas de creerte que el término no tiene nada que ver con colchones, voy a intentar explicártelo.
Puedes [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify"><img class="alignleft size-medium wp-image-279" style="margin: 5px 10px" src="http://sixservix.com/blog/david/files/2009/09/nerd-223x300.jpg" alt="CB009957" width="161" height="216" />Si mamá, desde hace ya un buen tiempo, cuando vienes a visitarme a casa, no paras de leer en la pantalla de mi ordenador, en los papeles que tengo por ahí sueltos,  eso de <strong>REST</strong>. Y como no acabas de creerte que el término <a href="http://www.bodyrestmattress.com" target="_blank">no tiene nada que ver con colchones,</a> voy a intentar explicártelo.</p>
<p style="text-align: justify">Puedes encontrar artículos en la web que describen <a href="http://www.dosideas.com/java/314-introduccion-a-los-servicios-web-restful.html" target="_blank">REST en castellano de pe a pa</a>, e incluso completísimos tutoriales sobre <a href="http://www.gruposp2p.org/wiki/index.php/Arranque_de_un_proyecto_con_Rest,_JPA_y_Maven" target="_blank">como montar tu primera aplicación REST con java</a>, pero quizás todo sea demasiado teórico y complejo para alguien que, como tú, busca una primera aproximación y no tiene porqué tener necesariamente mucha idea de Web Services, SOA o HTTP. Voy a intentar explicártelo muy claro y con ejemplos, como a ti te gusta.</p>
<p style="text-align: justify">Tranquila mamá, no te sientas mal por no tener muy claro esos conceptos. Hay muchos arquitectos de software y desarrolladores que tampoco los tienen. A lo mejor a ellos también les interesaría escuchar todo esto que te cuento. Es fácil, creo que en <strong>menos de 5 minutos</strong> tú y ellos os habréis hecho con ello.<span id="more-186"></span></p>
<p style="text-align: justify">Lo primero que tienes que tener claro es que <span style="text-decoration: underline">REST no es una tecnología sino una arquitectura</span>. Para que lo entiendas, no es algo que solucione cosas sino una forma de diseñar algo que solucione cosas. ¿Y qué tiene de especial esta <em>arquitectura </em>para que todo el mundo hable de ella? Intentaré explicártelo.</p>
<ol style="text-align: justify">
<li><strong>Diseñas tu aplicación exponiendo </strong><strong>recursos no funcionalidades</strong>. Sí, ya no programo páginas web que tengan direcciones como<em> www.mipagina.com/crearCosa</em> o <em>www.mipagina.com/consultarCosa</em>. Ahora sólo tengo <em>www.mipagina.com/cosas </em>o <em>www.mipagina.com/cosas/12345/atributos</em>. Sí te das cuenta, es como si tuviera mis recursos ordenados en directorios. Y sí, sé lo que te estás preguntando: si sólo hay un <em>www.mipagina.com/cosas </em>¿cómo sé si mis usuarios intentan crear una cosa o simplemente consultarla? Ahora te explico, ten un poco de paciencia.</li>
<li><strong>Utiliza los métodos del protocolo HTTP de manera explicita</strong>. HTTP es un protocolo de comunicación que hace que Internet funcione. ¿No te has dado cuenta de que cuando escribes una dirección en el navegador pone <em>http://</em> por delante de la dirección? Bueno, pues eso es porque te estás comunicando mediante ese protocolo. <span style="text-decoration: underline">Lo que no tanta gente sabe, incluidos muchos programadores</span>, es que el protocolo HTTP tiene un montón de métodos definidos en su especificación: GET, POST, PUT, DELETE&#8230; y que cada uno de ellos tiene un propósito específico aunque, a veces, te reconozco que los desarrolladores nos lo saltamos a la torera.  No te suena de nada ¿verdad? Eso es porque <span style="text-decoration: underline">la mayoría de los navegadores utilizan el método GET por defecto en las peticiones HTTP</span>, excepto que le indiquemos especificamente otra cosa en nuestras páginas web. Así , cuando escribimos el nombre de una página en la barra de direcciones de un navegador, la invocamos con el método GET. ¿Que por qué te he soltado este <em>ladrillo</em> que no te interesa? Espera un poco, ya verás como todo empieza a encajar.</li>
<li><strong>Mapea los métodos del protocolo HTTP a las operaciones a realizar sobre un recurso</strong>. Fíjate que bueno, si te conectas a un recurso -una página web, para que lo entiendas- invocando el método GET, por ejemplo, yo sé que es lo que quieres porque <span style="text-decoration: underline">el método GET se utiliza para consultar un recurso</span>. Del mismo modo, al resto de los métodos principales de HTTP se les mapea una operación específica. Así, POST se utiliza para crear un recurso, PUT para actualizarlo y DELETE para borrarlo, evidentemente. Si, por ejemplo, solicitas la página  <em>www.mipagina.com/cosas</em> con el parámetro id=2345 y el método GET, mi aplicación REST te devolverá la cosa con id=2345. Sin embargo, si repites la misma solicitud con el mismo parámetro pero con el método DELETE lo que  conseguirás es borrar la cosa con id=2345.  ¡Tacháaan! ¿A que ahora parece todo más claro?</li>
<li><strong>Transfiere XML, JSON o XTHML</strong>. No te voy a calentar la cabeza mamá explicándote qué es cada cosa. Confía en mi. Basta con que sepas que son cosas que se pueden consumir e interpretar desde un navegador y convertir en una de esas bonitas páginas web que tanto te gustan. Sólo para que lo sepas, cuando te digo que te <em>devuelve</em> una <em>cosa</em>, me refiero a que te devuelve algo como esto:</li>
</ol>
<pre style="padding-left: 60px;text-align: justify">&lt;cosa&gt;</pre>
<pre style="padding-left: 60px;text-align: justify">    &lt;id&gt;2345&lt;/id&gt;</pre>
<pre style="padding-left: 60px;text-align: justify">    &lt;nombre&gt;cosa misteriosa&lt;/nombre&gt;</pre>
<pre style="padding-left: 60px;text-align: justify">&lt;/cosa&gt;</pre>
<p style="text-align: justify">
<p style="text-align: justify">Sé que tendrás algunas dudas. Creo que podré adivinar alguna de ellas :)</p>
<ul style="text-align: justify">
<li><strong>¿Cómo le indico eso del id? ¿Sólo puedo mandar un parámetro? Y lo de los métodos HTTP ¿Cómo se cambian? </strong>Bueno, a ver, el id es un parámetro que envías en tu petición. Y, claro, puedes mandar todos los que quieras. Si lo piensas bien, cuando rellenas un formulario en una página web no estás haciendo más que mandar un montón de parámetros -uno por cada campo del formulario- sin límite alguno. Usando REST no haces mas que navegar así que, SÍ, puedes enviar lo que quieras. Respecto a lo de cambiar el método HTTP a utilizar bueno&#8230; eso no es tan sencillo. <span style="text-decoration: underline">No vas a poder hacerlo directamente desde tu navegador</span> pero, <span style="text-decoration: underline">los programadores de páginas HTML sí tienen la posibilidad de hacerlo</span>. Si llegas a una página web diseñada para utilizar con una aplicación REST y, por ejemplo, ves un botón &#8220;Eliminar <em>Cosa</em>&#8220;, seguro que vas a hacer una petición con el método DELETE</li>
<li><strong>¿Y si no le paso ningún parámetro?</strong> No pasa nada. Si, por ejemplo, haces una petición GET a <em>www.mipagina.com/cosas </em>sin pasar ningún parámetro, probablemente conseguirás que una aplicación REST te devuelva un montón de <em>enlaces</em> a todas las cosas que esten relacionadas con dicho recurso. Por ejemplo, una lista de cosas (<em>www.mipagina.com/cosas/0001, </em><em>www.mipagina.com/cosas/0002</em>&#8230;). Si lo piensas bien <span style="text-decoration: underline">todo lo que te devuelve son a su vez enlaces REST que puedes reutilizar haciendo nueva petición con el método que te interese</span> contra dichos enlaces. ¡Genial! ¿Verdad?</li>
<li><strong>¿Y todos los recursos implementan todos los métodos?</strong> Pues, realmente NO. De hecho, hay otro método de HTTP, <strong>OPTIONS</strong>, cuya finalidad es obtener una lista de los métodos soportados por un recurso. A lo mejor, el programador de una aplicación REST quiere permitirte consultar una determinado información pero no quiere que la actualices.</li>
<li><strong>Y entonces ¿cualquiera puede borrar cosas de tu aplicación?</strong> No. Puedes identificar a tus usuarios con los métodos de autenticación que te proporciona cualquier servidor HTTP o incluso utilizar <a href="http://developers.sun.com/identity/reference/techart/restwebservices.html" target="_blank">cosas más sofisticadas</a>.  No te preocupes, puedes conseguir que sólo acceda a tu aplicación REST quien tú quieras.</li>
</ul>
<p style="text-align: justify">Como ya te he dicho REST sólo es una arquitectura, no una tecnología. Tienes que evaluar bien si te interesa o no utilizarla. Si te interesa conocer cuáles son algunas de sus ventajas, te explicaré alguna de las más importantes:</p>
<ul style="text-align: justify">
<li><strong>El método HTTP GET y el cacheo</strong>. Muchos <em>proxies </em>y <em>firewalls </em>-ordenadores que gestionan una red- suelen cachear las peticiones GET. Que, ¿qué es eso de cachear? Pues guardarse una copia de la página que solicitas con tu método GET y, si otro ordenador de tu misma red solicita la misma página, devolver esa copia mucho más rápido que si tuviera que obtener la página de nuevo.</li>
<li><strong>No utiliza estado de sesión</strong>. A ver como te explico esto&#8230; ¿recuerdas cuando me pediste que te enseñara a comprar por Internet y estuvimos comprando libros? Esos libros se iban acumulando en un <em>carrito de la compra</em> y, al final, pagamos con tarjeta de crédito. Bueno, ese carrito de la compra existía porque la página web nos identificó durante toda nuestra<em> sesión de trabajo</em> y, es genial. Lo que pasa es que, al final, somos muchos los que compramos libros y eso puede acabar sobrecargando los servidores donde se alojan las páginas web. Cuando 5 están comprando libros no hay problema pero, cuando son 5000&#8230; la cosa cambia. El hecho de que REST no mantenga estado de sesión quiere decir que en nuestras peticiones de recursos y en las respuestas del servidor tiene que viajar toda la información necesaria. Nada se guarda en la memoria del servidor.</li>
<li><strong>Puedes distribuir una API completa de tu aplicación en un fichero de javascript</strong>. Mmmm&#8230; para que lo entiendas de una forma sencilla ¿conoces <a href="http://www.facebook.com" target="_blank">Facebook</a>, no?. Bueno, pues lo bueno de  <strong>Facebook</strong>, lo que ha hecho que triunfe tanto es que <span style="text-decoration: underline">ha posibilitado que terceros creen aplicaciones y las incrusten en la página</span>. Casi todas esas aplicaciones te permiten interactuar con tus contactos de Facebook, pero dichas aplicaciones no tienen acceso directo a la BBDD de la página web, sino a una API, un conjunto de utilidades, que proporciona Facebook y que permiten acceder, por ejemplo, a los amigos del usuario que está ejecutando la aplicación. Créeme, <span style="text-decoration: underline">eso es una aplicación REST como una casa</span>. ¿Te imaginas que Facebook tuviera que distribuir por ahí la ruta de acceso a su BBDD? ¿Te imaginas los problemas de seguridad y escalabilidad que supondría?</li>
</ul>
<p style="text-align: justify">En fin mamá, que REST está muy bien, pero es una manera más de solucionar las cosas, ni más ni menos. Por ejemplo, no tengo muy claro que fuera la arquitectura más adecuada para ese ejemplo que te he puesto del <em>carrito de la compra</em>, aunque sí para muchos otros supuestos.</p>
<p style="text-align: justify">La gente está muy ilusionada con el tema, sobre todo como <span style="text-decoration: underline">una apuesta para conseguir de una manera sencilla, rápida y flexible la interoperabilidad entre distintas aplicaciones escritas en distintos lenguajes</span>. Antes todo el mundo pensaba que los <strong>webservices </strong>eran el único medio válido para conseguir esto de una manera eficiente pero, ahora, hay bastante gente que lo pone en duda porque, la verdad, la especificación donde te explica cómo implementarte por entero un webservice, cómo publicarlo y cómo consumirlo es&#8230; un <strong>poco dura</strong> y pffff&#8230; ¡no creo que consiguiera explicártela en 5 minutos como he hecho con esto del REST! Y eso es lo bueno de esta arquitectura. Mamá, si tú has conseguido entenderlo, creo que cualquier desarrollador lo hará.</p>
<p style="text-align: justify">
]]></content:encoded>
			<wfw:commentRss>http://sixservix.com/blog/david/2009/09/30/explicando-rest-a-mam/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>El Macguffin informático</title>
		<link>http://sixservix.com/blog/david/2009/09/29/el-macguffin-informatico/</link>
		<comments>http://sixservix.com/blog/david/2009/09/29/el-macguffin-informatico/#comments</comments>
		<pubDate>Tue, 29 Sep 2009 05:30:07 +0000</pubDate>
		<dc:creator>David Bonilla</dc:creator>
				<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://sixservix.com/blog/david/?p=260</guid>
		<description><![CDATA[El macguffin, expresión acuñada por el maestro Hitchcock, es un recurso narrativo, un disparador, una excusa que permite, que consigue que la trama avance pero que no tiene importancia por sí misma. Un ejemplo actual de macguffin es el maletín que persiguen Travolta y Samuel L. Jackson en Pulp Fiction. Motiva a los personajes, permite [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify"><img class="alignright size-medium wp-image-261" style="margin: 2px 10px" src="http://sixservix.com/blog/david/files/2009/09/hitchcock3-226x300.jpg" alt="hitchcock3" width="163" height="216" />El <a href="http://en.wikipedia.org/wiki/MacGuffin" target="_blank"><em>macguffin</em></a>, expresión acuñada por el maestro Hitchcock, es un recurso narrativo, un disparador, una excusa que permite, que consigue que la trama avance pero que no tiene importancia por sí misma. Un ejemplo actual de <em>macguffin </em>es el maletín que persiguen Travolta y Samuel L. Jackson en Pulp Fiction. Motiva a los personajes, permite que la historia se desarrolle pero, realmente, no tiene importancia dentro de la misma.</p>
<p style="text-align: justify">Bien ¿<span style="text-decoration: underline">Y qué tiene que ver todo esto con el desarrollo de software</span>? Aunque nosotros no lo sepamos, también tenemos nuestros propios <em>macguffins</em> y, desgraciadamente, a veces cobran excesiva importancia convirtiéndose en los verdaderos protagonistas de la trama.</p>
<p style="text-align: justify">Aunque a veces lo olvidemos, en nuestra profesión, la tecnología no es más que un puro y duro <em>macguffin</em> que no nos puede distraer del verdadero objetivo, del protagonista: el cliente/usuario que demanda aplicaciones para usarlas.<span id="more-260"></span></p>
<p style="text-align: justify">He comprobado que la mayoría de los desarrolladores quedamos cegados por tal o cual tecnología y que tendemos a utilizarlas sin ton ni son, sin preguntarnos si realmente aportan algo al cliente. El que esté libre de culpa que tire la primera piedra. ¿Alguien recuerda la &#8220;moda de los EJBs&#8221; que sacudió el desarrollo en java entre el 2001 y el 2004? Parecía que, si hacías una aplicación &#8220;seria&#8221;, si querías estar <em>a la última</em> tenías que utilizarlos si o si. Los EJBs <em>molaban</em> y empezamos a utilizarlos por todos lados. Y sí, eran distribuidos y transaccionales y ¡Oh, Dios Mío! eran compatibles con CORBA. Así que nada, a incrustarlos en nuestra arquitectura, pero ¿REALMENTE necesitábamos EJBs? La respuesta es <strong>no</strong>, al menos en mi caso.</p>
<p style="text-align: justify">Me he pasado la mayoría de mi carrera metido en proyectos grandes, lo que llamamos aplicaciones empresariales. Desde un Gestor de Contenidos a un ERP, pasando por la pasarela de pago electrónico del BBVA, y en mi vida he visto una aplicación usando EJBs distribuidos en varias máquinas. Ojo, no quiero decir que no sea útil -o incluso necesario- en algunas ocasiones, pero yo no lo he visto.</p>
<p style="text-align: justify">Los EJBs están muy bien pero, hoy por hoy y hasta que veamos la distribución <em>lite</em> de la versión 3.1, te hacen pagar caro su uso: te olvidas de utilizar a tu viejo amigo <a href="http://tomcat.apache.org/" target="_blank">Tomcat</a> y buscas nuevas amistades con gente como <a href="https://glassfish.dev.java.net/" target="_blank">Glassfish</a>, <a href="http://geronimo.apache.org/" target="_blank">Geronimo</a> o <a href="http://www.jboss.org/" target="_blank">JBoss</a>, sólo para descubrir que tardan en arrancan 4 veces más y que, cuando modificas una clase mientras depuras con tu IDE&#8230; ¡Ay, como te empiece a redesplegar todo el contexto de tus EJBs!</p>
<p style="text-align: justify">En definitiva, añadir los EJBs hace más pesada y compleja nuestra arquitectura. Si los utilizamos sin que sea estrictamente necesario, ¿<span style="text-decoration: underline">no estamos haciendo que nuestro <em>macguffin</em> sea el protagonista de la película</span>? La tecnología debe ser un <strong>medio </strong>para conseguir un fin, no el <strong>fin </strong>en sí mismo.</p>
<p style="text-align: justify">Sí, lo reconozco, es difícil llegar a un sitio donde utilizan Struts 1 para hacer algo nuevo y no querer meter con calzador Struts 2, Spring MVC o cualquier otra cosa pero, si realmente podemos solucionar de manera eficiente y económica el problema con Struts 1, ¿por qué vamos a complicar la arquitectura de nuestro cliente? ¿Realmente vamos a ayudarlo?</p>
<p style="text-align: justify">El uso de los <em>macguffins</em> informáticos alcanza su máximo nivel en el caso de los tecnólogos irredentos que ni saben ni quieren saber nada del dominio funcional del cliente. &#8220;Yo soy informático, no tengo porqué saber nada de nominas/logística/contabilidad/ventas&#8221; es una frase que he oído más de una vez. Puede que hasta yo mismo la haya pronunciado :) pero, ¿qué queréis?, todo el mundo tiene sus pecados de juventud&#8230; Y es verdad, no hace falta saber de nada que no sea informática para ser informático pero sí para ser un <strong>buen informático</strong>. Si no tienes ni idea de lo que necesita el cliente, ni de lo que ha utilizado antes que tu llegaras, ni averiguas porqué lo ha utilizado ni reflexionas sobre como podrías mejorarlo, tienes muchas posibilidades de conseguir que la importancia de tus <em>macguffins</em> empiece a crecer. Ejemplo, nadie que haya visto a un administrativo capturar datos a la velocidad de la luz -creedme, a veces no se les ven ni los dedos de lo rápido que van- se le ocurre crearles una interfaz en un navegador web.</p>
<p style="text-align: justify">Otro tipo de <em>macguffin </em>típico es el cambio de versiones de librerías o aplicaciones a la última, ultimísima versión recién salida del compilador. Aún recuerdo los cascotazos que empezó a dar una aplicación cuando me empeñé en cambiar la versión de base de datos de una <strong>Oracle 9.2</strong> a una <strong>10g</strong>. Como excusa, decir que la &#8220;g&#8221; venía de <em>grid</em> y claro, eso de la &#8220;granja de servidores de BBDD&#8221; sobre el papel, <span style="text-decoration: underline">molaba mucho</span> :D También la he liado parda alguna vez con eso de &#8220;¡Huy!&#8230; ¡nueva versión de <em>refuncliocluncio</em> que mejora esos bugs que yo nunca he sufrido y que incluye nuevas <em>features</em> que aún no sé si alguna vez utilizaré! ME LO BAJO YA&#8221;. Menudo pedazo de <em>macguffin</em>&#8230;</p>
<p style="text-align: justify">Todos tenemos más de un <em>macguffin</em> que se ha adueñado de nuestro trabajo, pero eso no es importante. Reconocerlo es el comienzo para aprender que no hay que ser cada vez mejor informático sino mejor profesional.</p>
]]></content:encoded>
			<wfw:commentRss>http://sixservix.com/blog/david/2009/09/29/el-macguffin-informatico/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Doodle Jump ¿juego del año?</title>
		<link>http://sixservix.com/blog/david/2009/09/02/doodle-jump/</link>
		<comments>http://sixservix.com/blog/david/2009/09/02/doodle-jump/#comments</comments>
		<pubDate>Wed, 02 Sep 2009 05:50:40 +0000</pubDate>
		<dc:creator>David Bonilla</dc:creator>
				<category><![CDATA[software]]></category>
		<category><![CDATA[videojuegos]]></category>
		<category><![CDATA[appstore]]></category>
		<category><![CDATA[doodle jump]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[ipod]]></category>

		<guid isPermaLink="false">http://sixservix.com/blog/david/?p=124</guid>
		<description><![CDATA[Estoy enganchado al juego mas divertido que he probado en años:  Doodle Jump.
Doodle Jump es sencillo, elegante, ingenioso, accesible, adictivo y&#8230; sobre todo muuuy divertido. Pero, lo que hace que Doodle Jump sea especial es que consigue retrotraernos a una época pasada, a los maravillosos ochenta -el pleistoceno informático- una era donde reinaban los ordenadores [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify">Estoy enganchado al juego mas divertido que he probado en años:  <strong>Doodle Jump</strong>.</p>
<p style="text-align: justify"><img class="alignleft size-full wp-image-128" style="margin: 3px 7px" src="http://sixservix.com/blog/david/files/2009/08/doodle_jump_box.jpg" alt="doodle_jump_box" width="138" height="138" />Doodle Jump es sencillo, elegante, ingenioso, accesible, adictivo y&#8230; sobre todo <span style="text-decoration: underline">muuuy divertido</span>. Pero, lo que hace que Doodle Jump sea especial es que <strong>consigue retrotraernos a una época pasada, a los maravillosos ochenta</strong> -el pleistoceno informático- una era donde reinaban los <a href="http://www.8bit-museum.de/" target="_blank">ordenadores de 8bits</a> y España&#8230; ¡era un país puntero en el desarrollo de videojuegos!. En aquel entonces los juegos eran sencillos y terriblemente adictivos. Ninguno tenía complejos tutoriales para aprender a jugar, la diversión y la jugabilidad eran inmediatas y un buen juego SIEMPRE tenía que cumplir la máxima de &#8220;<a href="http://lsvp.wordpress.com/2007/03/28/game-mechanics-applied-to-social-media-easy-to-learn-hard-to-master/" target="_blank">fácil de jugar, difícil de dominar</a>&#8220;. Pero&#8230; ¿de que va exactamente <strong>Doodle Jump</strong>?<span id="more-124"></span></p>
<p style="text-align: justify">El juego tiene una total, absoluta y MARAVILLOSA falta de argumento :). Eres una especie de bicho trompetero con 4</p>
<div id="attachment_134" class="wp-caption alignright" style="width: 160px"><img class="size-thumbnail wp-image-134" src="http://sixservix.com/blog/david/files/2009/08/1240289975-doodle2-150x150.jpg" alt="Disparando con tu trompa" width="150" height="150" /><p class="wp-caption-text">Disparando con tu trompa</p></div>
<p>piernas que tiene que saltar y saltar hacia arriba como si no hubiera mañana. Para saltar utilizas unas <strong>plataformas </strong>de varios tipos, desde las normales -de color verde- a las marrones -que se rompen-, las blancas -que solo duran una vez-  o las azules, que se mueven por la pantalla. Con cada uno de tus saltos, la pantalla avanza con un s<em>croll vertical</em> sin vuelta atrás: si te caes, ya puedes dar por finalizada la partida, sin vidas, sin nuevas oportunidades. Te caíste, se acabo y punto.</p>
<p style="text-align: justify">Por supuesto, hay mas elementos en el juego como <strong>los enemigos</strong>, una serie de bichos tan feos o mas que el protagonista y con cuyo contacto, te mareas y caes hacia una muerte segura. Cabe destacar el diseño y variedad de estos enemigos sacados, como el resto del arte del juego, de la cabeza de un niño grande, <em>naiv</em> y genial.</p>
<p style="text-align: justify">A los enemigos hay que evitarlos con tu pericia en el salto pero, además, tienes un arma definitiva: tu trompa. Tu trompa, como no, dispara bolas de colores de una potencia destructiva sin igual. Con una sola bola puedes matar a los enemigos mas débiles y, con unas pocas mas, puedes acabar hasta con platillos volantes.</p>
<p style="text-align: justify">También tienes items, <em><a href="http://www.gamedaily.com/articles/galleries/retro-rewind-power-on-the-20-greatest-powerups-/" target="_blank">powerups</a> </em>de toda la vida, como un cohete portátil a lo <a href="http://www.imdb.com/title/tt0102803/" target="_blank">Rockeeter</a> o&#8230; ¿una gorra con una hélice pegada? que te hacen subir mas y mas deprisa.</p>
<p style="text-align: justify">
<div id="attachment_136" class="wp-caption alignleft" style="width: 160px"><img class="size-thumbnail wp-image-136" src="http://sixservix.com/blog/david/files/2009/08/doodlejpic-150x150.png" alt="Las ¿instrucciones? del juego" width="150" height="150" /><p class="wp-caption-text">Las ¿instrucciones? del juego</p></div>
<p>En resumen, <strong>cuanto mas arriba llegues, mas puntos ganas</strong>. Cuantos mas puntos ganas, mas arriba estas en la tabla de mejores jugadores. Ni mas ni menos.</p>
<p style="text-align: justify">Los <strong>controles</strong> son maravillosos, limpios, de impecable factura y, una vez mas, sencillos y fáciles. El monigote siempre esta saltando, tu solo tienes que dirigir el salto inclinando el <em>iPhone/iPod Touch</em> hacia un lado u otro y, si tocas la pantalla con el dedo, disparas por la trompa. Nada mas.</p>
<p style="text-align: justify">Ha sido desarrollado por <a href="http://www.limasky.com/" target="_blank">Lima Sky</a> &#8220;inspirándose&#8221; ;) en <a href="http://appmodo.com/94/papi-jump-hands-on-review/" target="_blank">Papi Jump</a>, un juego anterior y, actualmente, gratuito. Pero, <strong>Doodle Jump</strong> llega mucho mas allá. Lima Sky ha pulido y engrandecido el juego original con detalles de diseño que lo llevan hasta la genialidad. La inexistencia de &#8220;paredes&#8221; que te permiten saltar por un lado y aparecer por el otro -al mas puro estilo <a href="http://es.wikipedia.org/wiki/Pac-Man" target="_blank">Pac-Man</a> &#8211; o la posibilidad de pausar el juego una y solo una vez por partida para que nadie pueda aprovechar la pausa para tomarse un respiro en la frenética subida del monigote, hacen que el juego sea una deliciosa sorpresa.</p>
<p style="text-align: justify">Por si fuera poco, le han añadido detalles dignos de <a href="http://www.maestrosdelweb.com/editorial/web2/" target="_blank">web 2.0</a>, como la opción de subir tu puntuación a <strong>Facebook </strong>y compartirla con tus amigos o bajarte la puntuación de los mismos, que se convierten en rallitas de tope que vas superando según vas subiendo. Ver como acabas de superar al vecino del quinto con tu ultimo salto da una satisfacción indescriptible.</p>
<p style="text-align: justify">¿Y como, donde y por cuanto se puede conseguir esta joya? en el appStore de <strong>Apple </strong>por&#8230; <strong>0,79 €</strong> probablemente, la mejor relación calidad/precio que ha tenido un juego en toda la historia.</p>
<p style="text-align: justify">Lo mejor de todo es que <strong>el</strong> <strong>juego es inspirador</strong>. Es el primer juego que no me da pereza clonar así que, no os sorprendáis si dentro de un tiempo tenéis disponible un <em>Boni Jump</em> en java&#8230; :D eso si, mientras esperáis, haceros con este juego como sea y, si no tenéis un <em>iPhone </em>o un <em>iPod Touch</em> haceros con uno. Solo por <strong>Doodle Jump</strong> merece la pena.</p>
<p style="text-align: justify"><a href="http://www.youtube.com/watch?v=LNRzC5ZGr4Q&amp;feature=related">Doodle Jump en YouTube</a></p>
]]></content:encoded>
			<wfw:commentRss>http://sixservix.com/blog/david/2009/09/02/doodle-jump/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>StreamAPI: streaming de video HD en tu web</title>
		<link>http://sixservix.com/blog/david/2009/08/24/streamapi-streaming-de-video-hd-en-tu-web/</link>
		<comments>http://sixservix.com/blog/david/2009/08/24/streamapi-streaming-de-video-hd-en-tu-web/#comments</comments>
		<pubDate>Mon, 24 Aug 2009 15:20:15 +0000</pubDate>
		<dc:creator>David Bonilla</dc:creator>
				<category><![CDATA[software]]></category>
		<category><![CDATA[marketing]]></category>
		<category><![CDATA[streamapi]]></category>
		<category><![CDATA[streaming]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://sixservix.com/blog/david/?p=83</guid>
		<description><![CDATA[Stickam una de las webs mas importantes de streaming de vídeo ha lanzado StreamAPI, una nueva herramienta para  gestionar streaming de vídeo y, lo que es mas importante, incrustarlo en  tu web.
No es el primer servicio de streaming ni el mas conocido, incluso tenemos posibilidades locales mas que interesantes, como lo que ofrecen los chicos [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify"><a href="http://www.stickam.com/"><img class="alignleft size-full wp-image-86" style="border: 0pt none;margin: 2px 5px" src="http://sixservix.com/blog/david/files/2009/08/picture-51.jpg" alt="streamAPI" width="272" height="77" />Stickam</a> una de las webs mas importantes de <a href="http://es.wikipedia.org/wiki/Streaming" target="_blank">streaming de vídeo</a> ha lanzado <a href="http://www.streamapi.com" target="_blank">StreamAPI</a>, una nueva herramienta para  gestionar streaming de vídeo y, lo que es mas importante, incrustarlo en  tu web.</p>
<p style="text-align: justify">No es el primer servicio de <em>streaming </em>ni el mas conocido, incluso tenemos posibilidades locales <strong>mas que interesantes</strong>, como lo que ofrecen los chicos de <a href="http://www.streamspain.es/?gclid=CPbHjpuWtJwCFd4B4wod-S6Gog" target="_blank">StreamES</a>, pero <strong>StreamAPI</strong> me ha gustado especialmente por varios motivos:</p>
<ul>
<li>Es barato, <span style="text-decoration: underline">muy barato</span>, y tienes la posibilidad de <a href="http://www.streamapi.com/pricing.do" target="_blank">calcular el coste de servicio</a> de forma sencilla antes incluso de evaluar el producto.</li>
<li>Funciona como <em>marca blanca</em> y, de cara a los usuarios, ellos no existen</li>
<li>Es tecnológicamente neutro, funciona con cualquier tipo de lenguaje de programación en servidor</li>
<li>Su web es sencilla y esta perfectamente estructurada</li>
<li>Tienen toneladas de documentación sobre su producto</li>
<li>Proporciona un montón de estadísticas e informes sobre el <em>streaming </em>(de esas que les encantan a los jefes)</li>
<li>Soporta alta definición</li>
<li>Esta basado en una plataforma probada, robusta y segura.</li>
</ul>
<p style="text-align: justify">Aunque a veces los informáticos no consigamos ver la conexión entre la tecnología y su aplicación en el mundo real, el hecho de trabajar en un <a href="http://www.varma.com" target="_blank">grupo empresarial</a> que crea y gestiona multitud de eventos públicos facilita bastante poder comprender las posibilidades del <em>streaming</em>.</p>
<p style="text-align: justify"><span id="more-83"></span></p>
<p style="text-align: justify">Imaginemos que organizamos un evento publicitario, una fiesta -por ejemplo- y. como es normal, queremos obtener el mayor rendimiento de la misma, el mayor retorno de inversión. Hasta ahora, solo los asistentes a la misma recibían el impacto publicitario y el departamento de marketing hacia todo lo posible porque este impacto se multiplicara facilitando la aparición del evento en los medios pero, ¿y si tuviéramos vídeos del evento a disposición del publico y dichos medios de comunicación?. Imaginar que celebramos una fiesta y que los asistentes al evento pudieran decirle a sus amigos &#8220;búscame en el vídeo X&#8221;.</p>
<p style="text-align: justify">Algún gurú pensará &#8220;para eso ya tengo a <a href="http://www.youtube.com">youTube</a>&#8221; y si, es cierto, puesto que <strong>youTube</strong> no es ni mas ni menos que un tipo de <em>streaming</em> pero ¿y <span style="text-decoration: underline">si quisiéramos retransmitir nuestro evento en vivo</span>? ¿y si quisiéramos retransmitirlo con mayor calidad que la <a href="http://en.wikipedia.org/wiki/YouTube#Video_quality" target="_blank">pésima calidad estándar de youTube</a>? ¿Y si quieres tener control sobre el streaming de tu video? ¿durante que horas quieres que sea visible y porque? ¿y si no quieres que nadie incruste publicidad externa, incuso de un competidor? ¿y si quieres empotrarlo en tu web mas allá que como la ventana típica de youtube?</p>
<p style="text-align: justify">Bueno, parece que <strong>youTube</strong> podría llegar a quedarse corto para todas las posibilidades de explotación de nuestro evento.</p>
<p style="text-align: justify">Por otro lado, hay mucho mas casos de posibilidades de uso para el <em>streaming </em>corporativo, desde la posibilidad de grabar e impartir formación <em>online</em> y bajo demanda a poder difundir en directo y a todos los empleados un comunicado como, por ejemplo, la felicitación de navidad del Presidente de nuestra compañía.</p>
<p style="text-align: justify">Con <strong>StreamAPI</strong> podemos aprovechar todas estas posibilidades de una forma barata y no intrusiva para nuestra web. Una herramienta mas para construir la web que todos queremos y nuestros clientes o usuarios necesitan. Bienvenidos.</p>
]]></content:encoded>
			<wfw:commentRss>http://sixservix.com/blog/david/2009/08/24/streamapi-streaming-de-video-hd-en-tu-web/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Software openSource (pero poco)</title>
		<link>http://sixservix.com/blog/david/2009/08/12/software-opensource-pero-poco/</link>
		<comments>http://sixservix.com/blog/david/2009/08/12/software-opensource-pero-poco/#comments</comments>
		<pubDate>Wed, 12 Aug 2009 14:58:56 +0000</pubDate>
		<dc:creator>David Bonilla</dc:creator>
				<category><![CDATA[negocios]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[openbravo]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[spring]]></category>

		<guid isPermaLink="false">http://sixservix.com/blog/david/?p=4</guid>
		<description><![CDATA[En un mundo donde cada vez hay mas confusión entre quien es bueno y quien es malo, donde no hay blanco y negro sino una enorme escala de grises, parece sin embargo que todos estamos de acuerdo en identificar al enemigo, el software propietario, frente a nuestro eterno aliado: el software OpenSource.
Es tal la consonancia [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify"><img class="alignleft size-medium wp-image-8" src="http://sixservix.com/blog/david/files/2009/08/opensource_logo-300x242.jpg" alt="opensource_logo" width="270" height="218" />En un mundo donde cada vez hay mas confusión entre quien es bueno y quien es malo, donde no hay blanco y negro sino una enorme escala de grises, parece sin embargo que todos estamos de acuerdo en identificar al enemigo, el software propietario, frente a nuestro eterno aliado: el software <a title="¿que es eso del OpenDource?" href="http://es.wikipedia.org/wiki/C%C3%B3digo_abierto" target="_blank">OpenSource</a>.</p>
<p style="text-align: justify">Es tal la consonancia de opiniones que existe respecto al tema que, cualquier debate sobre el mismo suele ser bastante estéril y carente de sentido. Sin embargo, en una <a title="javaHispano" href="http://javahispano.org/contenidos.item.action?id=9137176&amp;menuId=JH_PODCASTS" target="_blank">entrevista</a> que tuve la oportunidad de hacer a <a title="El blog de Jaimce Cid" href="http://jaimecid-oracle.blogspot.com/" target="_blank">Jaime Cid</a> de <a title="Oracle" href="http://www.oracle.com/global/es/index.html" target="_blank">Oracle</a>, Jaime se atrevió a pedir a la gente que no quedara deslumbrada por la etiqueta del &#8220;<em>gratis total</em>&#8221; e intentara ir mas allá.<span id="more-4"></span>Jaime decía que había diferenciar entre proyectos OpenSource <em>reales </em>y proyectos que utilizan la etiqueta como una herramienta de marketing.</p>
<p style="text-align: justify">Una de las cosas en las que hacia mas hincapié era en la atención que ponía en un detalle que la mayoría de desarrolladores ignora: la cantidad y origen de los <em>commiters</em> o contribuidores del proyecto.</p>
<p style="text-align: justify">Por ejemplo, el proyecto <a href="http://www.eclipse.org/" target="_blank">Eclipse</a>, que comenzó siendo un software propietario de <a href="http://www.ibm.com/es/es/" target="_blank">IBM </a>y que evolucionó hasta un proyecto de código abierto. Actualmente, el proyecto es soportado por múltiples compañías de todo el mundo como <strong>Nokia</strong>, <strong>Oracle</strong>, <strong>CA</strong>, <strong>SAP</strong>, <strong>Sonatype </strong>o la propia <strong>IBM </strong>pero, lo mas importante es que, en la <a title="Lista de contribuidores al proyecto Eclipse" href="http://dash.eclipse.org/dash/commits/web-app/commit-count-loc.php" target="_blank">lista de contribuidores por empresa</a>, se puede comprobar que <span style="text-decoration: underline">solo el 25% de los mismos procede de la misma IBM</span>. ¿Esto que quiere decir? que el proyecto, aunque soportado ampliamente por la dicha compañía, <span style="text-decoration: underline">no depende de la misma para su subsistencia</span>.</p>
<p style="text-align: justify">¿Que pasaría si alguna vez IBM decidiera dejar de apoyar a Eclipse? pues, probablemente NADA. El proyecto seguiría adelante y alguien tomaría el rol de líder de la comunidad.</p>
<p style="text-align: justify">Ahora veamos el otro lado de la balanza&#8230; ¿quien no conoce <a title="Spring" href="http://es.wikipedia.org/wiki/Spring_Framework" target="_blank">Spring</a>? Uno de los <em>fameworks </em>de desarrollo mas importantes que existen para el lenguaje JAVA. Es gratis, es <em>OpenSource </em>pero&#8230; ¿cuanto de <em>OpenSource</em>? Si, puedes acceder al repositorio, puedes bajarte las fuentes, puedes tocarlas y compilarlas en local pero ¿puedes contribuir al proyecto?. La respuesta es NO. <strong>Spring </strong>es propiedad de <a title="SpringSource" href="http://www.springsource.org/" target="_blank">SpringSource </a>y, como tal, son ellos los que controlan totalmente el <em>roadmap</em> del producto, que es lo que es parte de la distribución oficial y lo que no. ¿Que pasaría si <strong>SpringSource </strong>decidiera dejar de soportarlo? pues, probablemente que la gente haría un <em>fork</em> o, lo que es lo mismo, un <em>copiar el código y tirar p&#8217;alante</em> pero, ¿en que quedaría todo esto? ¿cuantos forks surgirían? ¿cuantos sobrevivirían? ¿quien seria el que diera soporte?. Muchas, muchas dudas ¿verdad?</p>
<p style="text-align: justify">Casualmente, <a href="http://blogs.salenda.es/blog/2009/08/11/vmware-compra-springsource/" target="_blank">SpringSource acaba de ser comprada por VMWare</a>&#8230; ¿Y ahora que va a pasar? nadie lo sabe.</p>
<p style="text-align: justify">Peor aun es cuando las compañías utilizan <strong>la etiqueta OpenSource como herramienta de marketing</strong>. Como ejemplo, uno de nuestros competidores :) <a href="http://www.openbravo.com">Openbravo</a> que, a pesar de ser &#8220;<em>opensource</em>&#8221; presenta peculiaridades como versiones de pago con licencias de uso <strong>por usuario</strong>,  características restringidas a dichas versiones de pago como el trabajo con servidores en <em>cluster</em>, lo cual no es ninguna tontería cuando hablamos de un sistema de gestión empresarial de alta disponibilidad, o una carencia enfermiza de documentación disponible de forma gratuita en su web.</p>
<p style="text-align: justify">Por otro lado, para obtener soporte profesional de sus productos te referencian a su ecosistema de <em>partners</em> pero, una vez mas, no hay ni un solo documento sobre que es lo que exigen para convertirse en <em>partner</em> suyo ni los deberes que ello implica. Una vez más, ¿hay lista publica de contribuidores? ¿se puede contribuir al código de OpenBravo sin contar con la empresa propietaria? Una vez mas, no.</p>
<p style="text-align: justify">Como conclusión, todo modelo de negocio es valido, toda solución puede ser satisfactoria mientras cumpla nuestras necesidades a un precio rentable, bien sea mediante el pago de licencias, servicios o a personal que lo implemente. Eso si, no debemos dejarnos deslumbrar por el brillo del <em>OpenSource</em>, aunque sea muy brillante.</p>
]]></content:encoded>
			<wfw:commentRss>http://sixservix.com/blog/david/2009/08/12/software-opensource-pero-poco/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
