<?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>Matrix Redesigned &#187; diseño</title>
	<atom:link href="http://matrixredesigned.net/blog/category/diseno/feed/" rel="self" type="application/rss+xml" />
	<link>http://matrixredesigned.net/blog</link>
	<description>Reflexiones en voz alta de (como me dicen) un filósofo del software, que siempre olvida el noveno bit.</description>
	<lastBuildDate>Thu, 17 May 2012 08:50:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>El retrospective del segundo sprint</title>
		<link>http://matrixredesigned.net/blog/2008/11/13/el-retrospective-del-segundo-sprint/</link>
		<comments>http://matrixredesigned.net/blog/2008/11/13/el-retrospective-del-segundo-sprint/#comments</comments>
		<pubDate>Thu, 13 Nov 2008 22:59:00 +0000</pubDate>
		<dc:creator>Introspectre</dc:creator>
				<category><![CDATA[diseño]]></category>
		<category><![CDATA[profesión]]></category>
		<category><![CDATA[ágil]]></category>

		<guid isPermaLink="false">http://matrixredesigned.net/blog/2008/11/13/el-retrospective-del-segundo-sprint/</guid>
		<description><![CDATA[En el proyecto en el que estamos trabajando, una herramienta de planificaci&#243;n y evaluaci&#243;n de rendimiento de una serie de profesionales, no hacemos el programa de una vez y lo entregamos al cliente cuando todo ha terminado. En vez de eso, construimos el sistema poco a poco, de forma incremental, y se lo vamos mostrando [...]]]></description>
			<content:encoded><![CDATA[<p>En el proyecto en el que estamos trabajando, una herramienta de planificaci&#243;n y evaluaci&#243;n de rendimiento de una serie de profesionales, no hacemos el programa de una vez y lo entregamos al cliente cuando todo ha terminado. En vez de eso, construimos el sistema poco a poco, de forma incremental, y se lo vamos mostrando al usuario de forma peri&#243;dica. De esa forma conseguimos del usuario una valiosa informaci&#243;n que nos permite valorar la adecuaci&#243;n del producto que se va construyendo, aparte de hacer visibles muy temprano en el proyecto fallos de concepto, de funcionalidad, de usabilidad, etc. y poder corregirlos a tiempo. Al fin y al cabo, los que mejor conocen el dominio del problema y los que en definitiva van a usar el programa son esos mismos usuarios.</p>
<p><a href="http://lh3.ggpht.com/_qTDPSrGd-6c/SRy9Negh7OI/AAAAAAAAAtM/3ZCYtpe6jj4/s1600-h/DSC01710%5B10%5D.jpg"><img style="border-right: 0px; border-top: 0px; margin: 0px 10px 0px 0px; border-left: 0px; border-bottom: 0px" height="180" alt="DSC01710" src="http://lh6.ggpht.com/_qTDPSrGd-6c/SRy9OMMdj7I/AAAAAAAAAtQ/ApEkbVzsKQ4/DSC01710_thumb%5B4%5D.jpg?imgmax=800" width="240" align="left" border="0" /></a> Cada uno de estos periodos de tiempo, en los que aumentamos la funcionalidad del sistema, recibe el nombre de <strong><em>sprint</em></strong>, y las reuniones peri&#243;dicas reciben el nombre de <em><strong>sprint review meetings</strong></em>, aunque nosotros las llamamos demos.</p>
<p>Detr&#225;s de cada demo, los miembros del equipo y el <em>Scrum Master</em> (o sea, el que suscribe) llevamos a cabo otra reuni&#243;n en la que analizamos qu&#233; fue lo que hicimos bien (y alegrarnos), qu&#233; fue lo que no se hizo tan bien (observad el sutil efecto impersonal) y qu&#233; medidas vamos a tomar para corregirlas. A estas reuniones se les llama <strong><em>sprint retrospective meeting</em></strong>.</p>
<p>&#191;Bueno, pues hoy hemos tenido nuestro segundo <em>retrospective</em>. Y hemos salido muy contentos. Por lo pronto, es toda una novedad que echemos la vista atr&#225;s para poder analizar qu&#233; se hace mal y <strong>poner remedio cada tres semanas</strong>, que es nuestra <em>longitud de sprint</em>. Pero hacerlo dos veces, es un milagro <img src='http://matrixredesigned.net/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> . Respecto al anterior <em>retrospective</em>, he notado que somos mucho m&#225;s equipo, que nos conocemos mejor. Nos enriquecemos mutuamente con el intercambio de ideas, de sugerencias, de puntos de vista y de reflexiones. Para decidir qu&#233; medidas correctoras &#237;bamos a aplicar durante nuestro tercer <em>sprint</em>, hemos escrito en <em>PostIts</em> de los grandes cada uno de los aspectos negativos. En una sesi&#243;n de <em>brainstorming</em>, hemos ido apuntando en cada <em>PostIt </em>las posibles soluciones, mientras que &#237;bamos agrupando las que estaban relacionadas (pruebas, estimaci&#243;n, m&#233;todo&#8230;). Luego, cada uno ha dado sus nominaciones: tres votos a repartir entre un m&#225;ximo de tres aspectos negativos a resolver.</p>
<p><a href="http://www.mountaingoatsoftware.com/scrum"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="184" alt="ScrumLargeLabelled" src="http://lh5.ggpht.com/_qTDPSrGd-6c/SRy9O1M5aiI/AAAAAAAAAtU/ruYojmGbztk/ScrumLargeLabelled%5B4%5D.png?imgmax=800" width="379" border="0" /></a> </p>
<p>Pero ha sido la agrupaci&#243;n de los PostIts y la lista de los nominados lo que me ha hecho pensar. Le hemos dado much&#237;sima m&#225;s importancia a los temas relacionados con las pruebas que con la estimaci&#243;n. Por lo visto, preferimos asegurar la calidad del c&#243;digo frente a la calidad de la estimaci&#243;n. Tambi&#233;n es verdad que en la primera <em>retrospective</em> ya se acometi&#243; una mejora sustancial: las estimaciones ahora se hacen mucho m&#225;s precisas, descomponiendo inicialmente las historias del usuario (las caracter&#237;sticas que le aportan valor) en tareas m&#225;s peque&#241;as antes de empezar el <em>sprint</em>, y no despu&#233;s. Y lo que ya me ha dejado descolocado es que una de los aspectos negativos que hemos detectado es que <strong>no hemos cumplido bien las normas del <em>scrum</em></strong>. Y ah&#237; soy yo el principal responsable, porque esa es una de mis responsabilidades&#8230; Sin embargo, estoy satisfecho. Est&#225; claro que el equipo cree en este m&#233;todo, si no fuera as&#237;, no le importar&#237;a que las normas hubieran sido vulneradas.</p>
<p>Ahora falta que la Direcci&#243;n tambi&#233;n acabe igual de convencida como nosotros. Creo que vamos por buen camino.</p>
<p><font size="1">Imagen cortes&#237;a de </font><a href="http://www.mountaingoatsoftware.com/scrum"><font size="1">Mountain Goat Software</font></a><font size="1">.</font></p>
]]></content:encoded>
			<wfw:commentRss>http://matrixredesigned.net/blog/2008/11/13/el-retrospective-del-segundo-sprint/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Cazadores de mitos</title>
		<link>http://matrixredesigned.net/blog/2008/10/14/cazadores-de-mitos/</link>
		<comments>http://matrixredesigned.net/blog/2008/10/14/cazadores-de-mitos/#comments</comments>
		<pubDate>Tue, 14 Oct 2008 19:17:00 +0000</pubDate>
		<dc:creator>Introspectre</dc:creator>
				<category><![CDATA[diseño]]></category>
		<category><![CDATA[profesión]]></category>

		<guid isPermaLink="false">http://matrixredesigned.net/blog/2008/10/14/cazadores-de-mitos/</guid>
		<description><![CDATA[Dan Pritchett (de Adding simplicity) escucha la televisi&#243;n mientras hace otras cosas. Y escuchando la televisi&#243;n se ha dado cuenta de que muchos programas tienen graves lecciones que los ingenieros del software podemos aplicarnos. Esta es la lecci&#243;n que podemos obtener de Cazadores de mitos. I enjoy Mythbusters immensely. Yes, it is truly geeky fun. [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://lh5.ggpht.com/miguel.antonio.gomez/SPTwL9kRaPI/AAAAAAAAAk0/aXE97O2aNYU/s1600-h/mythbusters-adam-jamie_1196814129%5B7%5D.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="150" alt="mythbusters-adam-jamie_1196814129" src="http://lh5.ggpht.com/miguel.antonio.gomez/SPTwMqHqqMI/AAAAAAAAAk4/FARdW9cu7t8/mythbusters-adam-jamie_1196814129_thumb%5B5%5D.jpg?imgmax=800" width="195" align="right" border="0" /></a> Dan Pritchett (de <a href="http://www.addsimplicity.com/"><em>Adding simplicity</em></a>) escucha la televisi&#243;n mientras hace otras cosas. Y escuchando la televisi&#243;n se ha dado cuenta de que muchos programas tienen graves lecciones que los ingenieros del software podemos aplicarnos. Esta es la lecci&#243;n que podemos obtener de Cazadores de mitos.</p>
<blockquote><p>I enjoy Mythbusters immensely. Yes, it is truly geeky fun. And they get to blow real things up, not just simulated explosions in mathematical models and 3D renderings. But what is a true joy to watch is how thoroughly methodical they are in solving problems. They research, design, and prototype. They fanatically analyze their results and make adjustments based on the data. Few programs have been bold enough to expose the analytical and development process so transparently. In fact, the boldest thing Adam and Jamie do is solve a problem in front of millions of people, knowing that they will receive hundreds of comments on the work they do. Think about it. Would you work on a problem in front of millions? </p>
</blockquote>
<p>Mi &quot;traducci&#243;n libre&quot;:</p>
<blockquote><p>Disfruto un mont&#243;n con <em>Cazadores de mitos</em>. S&#237;, es realmente diversi&#243;n <em>geeky</em>. Se las apa&#241;an para hacer saltar las cosas por los aires, no con explosiones simuladas en modelos matem&#225;ticos ni <em>renderings</em> en 3D. Pero lo que de verdad es alucinante es ver lo minuciosamente met&#243;dicos que son al solucionar problemas. Investigan, dise&#241;an, y construyen prototipos. Analizan hasta el fanatismo sus resultados y hacen ajustes basados en esos datos. Pocos programas han sido tan audaces como para exponer de una forma tan transparente el proceso de an&#225;lisis y desarrollo. De hecho, lo m&#225;s audaz que [los presentadores/cazadores] Adam y Jamie hacen es solucionar el problema frente a millones de personas, sabiendo que recibir&#225;n cientos de comentarios sobre el trabajo que realizan. Piensa sobre ello. &#191;Trabajar&#237;as en un problema frente a millones de personas?</p>
</blockquote>
<p>M&#225;s sobre la influencia de Colombo, Monk y Maravillas modernas (<em>Modern mavels</em>) en <a href="http://www.addsimplicity.com/adding_simplicity_an_engi/2008/10/television-for-software-engineers.html">Television for software engineers</a>.</p>
<p>&#160;</p>
<p>PS: Ya, ya&#8230; Es verdad, no traduje <em>geeky</em>, ni <em>rendering</em>. &#191;Sugerencias?</p>
]]></content:encoded>
			<wfw:commentRss>http://matrixredesigned.net/blog/2008/10/14/cazadores-de-mitos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Formalmente ágiles</title>
		<link>http://matrixredesigned.net/blog/2008/07/03/formalmente-agiles/</link>
		<comments>http://matrixredesigned.net/blog/2008/07/03/formalmente-agiles/#comments</comments>
		<pubDate>Thu, 03 Jul 2008 05:58:00 +0000</pubDate>
		<dc:creator>Introspectre</dc:creator>
				<category><![CDATA[diseño]]></category>
		<category><![CDATA[profesión]]></category>
		<category><![CDATA[ágil]]></category>

		<guid isPermaLink="false">http://matrixredesigned.net/blog/2008/07/03/formalmente-agiles/</guid>
		<description><![CDATA[Por fin somos oficialmente &#225;giles. En nuestro equipo de desarrollo hab&#237;amos seguido en mayor o menor medida, aunque a veces sin mucha conciencia de ello, ciertos comportamientos &#225;giles, cogidos con pinzas de aqu&#237; y de all&#225;. A pesar de todo ello, no &#233;ramos un equipo (oficialmente) &#225;gil. Ahora, con el apoyo de la direcci&#243;n, podemos [...]]]></description>
			<content:encoded><![CDATA[<p>Por fin somos oficialmente &#225;giles.</p>
<p>En nuestro equipo de desarrollo hab&#237;amos seguido en mayor o menor medida, aunque a veces sin mucha conciencia de ello, ciertos comportamientos &#225;giles, cogidos con pinzas de aqu&#237; y de all&#225;. A pesar de todo ello, no &#233;ramos un equipo (oficialmente) &#225;gil.</p>
<p>Ahora, con el apoyo de la direcci&#243;n, podemos decir que oficialmente nos hemos decantado por <a href="http://en.wikipedia.org/wiki/Scrum_(development)">Scrum</a>. Lo hemos visto f&#225;cil de explicar, sencillo y muy claro. Sin embargo, somos conscientes de que, igual que en cualquier faceta t&#233;cnica, llevar la teor&#237;a aunque sea poca a la pr&#225;ctica implicar&#225; muchas decisiones y dificultades.</p>
<p>Scrum probablemente no sea el m&#233;todo definitivo, como no lo es ninguno, pero s&#237; que es una base sobre la que elaborar el nuestro propio. No somos racistas, as&#237; que aceptaremos de buena gana cualquier idea que sea compatible con los <a href="http://agilemanifesto.org/">principios &#225;giles</a>, sin embargo, en mi opini&#243;n deber&#225;n aceptarse poco a poco (los cambios bruscos, todos lo sabemos, no son buenos). Tenemos ahora lo que necesit&#225;bamos: un marco, un esqueleto sobre el que construir el m&#233;todo que nos vaya bien.</p>
<p>Probaremos el m&#233;todo utilizando como plataforma de pruebas un nuevo proyecto que est&#225; ahora mismo en las fases iniciales de definici&#243;n. Todav&#237;a nos queda preparar unas charlas para informar al equipo de lo que pretendemos, profundizar un poco m&#225;s en los principios &#225;giles que sustentan el m&#233;todo</p>
<p>Dec&#237;a antes m&#233;todo, y no metodolog&#237;a, porque metodolog&#237;a es otra cosa. De la <a href="http://es.wikipedia.org/wiki/Metodolog%C3%ADa">Wikipedia</a>:</p>
<blockquote><p>M&#233;todo es el procedimiento para alcanzar los objetivos y la metodolog&#237;a es el estudio del m&#233;todo.</p>
</blockquote>
<p>Voy a utilizar el blog como medio de reflexi&#243;n, de registro y con vuestra colaboraci&#243;n, espero que tambi&#233;n de debate. No recuerdo qui&#233;n dec&#237;a que la inteligencia no es patrimonio de la mente, sino de la combinaci&#243;n de muchas, que las buenas ideas emergen de una red pensante, no de una cabeza preclara.</p>
<p>Y como la situaci&#243;n lo merece, <a href="mailto:amig@s">amig@s</a>, nueva categor&#237;a: &#225;gil <img src='http://matrixredesigned.net/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://matrixredesigned.net/blog/2008/07/03/formalmente-agiles/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Destilado de Singletons</title>
		<link>http://matrixredesigned.net/blog/2008/06/28/destilado-de-singletons/</link>
		<comments>http://matrixredesigned.net/blog/2008/06/28/destilado-de-singletons/#comments</comments>
		<pubDate>Sat, 28 Jun 2008 13:58:00 +0000</pubDate>
		<dc:creator>Introspectre</dc:creator>
				<category><![CDATA[diseño]]></category>
		<category><![CDATA[profesión]]></category>

		<guid isPermaLink="false">http://matrixredesigned.net/blog/2008/06/28/destilado-de-singletons/</guid>
		<description><![CDATA[He querido recopilar informaci&#243;n sobre uno de los patrones m&#225;s conocidos y a la vez de los peor usados: el Singleton. Recogido en el ubicuo libro de la Pandilla de los Cuatro (no los de la cadena de televisi&#243;n, los otros), se ha dicho de ellos que favorecen el acoplamiento, la creaci&#243;n de dependencias invisibles, [...]]]></description>
			<content:encoded><![CDATA[<p>He querido recopilar informaci&#243;n sobre uno de los patrones m&#225;s conocidos y a la vez de los peor usados: el Singleton. Recogido en el ubicuo <a href="http://www.amazon.com/Design-Patterns-Object-Oriented-Addison-Wesley-Professional/dp/0201633612">libro</a> de la Pandilla de los Cuatro (no los de la cadena de televisi&#243;n, los otros), se ha dicho de ellos que favorecen el acoplamiento, la creaci&#243;n de dependencias invisibles, que hace dif&#237;cil las pruebas unitarias (precisamente por esas dependencias) y otras lindezas. Otros sin embargo defienden que (bien usado) puede ser un magn&#237;fico aliado.</p>
<p>Si tienes prisa o no mucho tiempo para estudiar los inconvenientes de este patr&#243;n, yo empezar&#237;a por una <a href="http://code.google.com/p/google-singleton-detector/wiki/WhySingletonsAreControversial">p&#225;gina de Google</a> relacionada con un &quot;Detector Google de Singletons&quot;, que parece casi uno de los chismes del Coyote en sus correr&#237;as tras el Correcaminos. Es un resumen muy claro sobre los problemas ocasionados por los singletons. Adem&#225;s, da acceso a otros dos muy buenos.</p>
<p>El primero de ellos es la <a href="http://c2.com/cgi/wiki?SingletonPattern">discusi&#243;n</a> en el conocido <a href="http://www.c2.com/cgi/wiki">wiki</a> de <a href="http://www.c2.com/cgi/wiki?WardCunningham">Ward Cunningham</a> sobre este patr&#243;n (adem&#225;s de ser un tremendo repositorio de charlas entre algunas de las mejores mentes del dise&#241;o software, en este wiki encontrar&#225;s el <a href="http://c2.com/cgi/wiki?PortlandPatternRepository">Repositorio Portland de Patrones</a>). La informaci&#243;n no est&#225; tan ordenada como en la p&#225;gina de Google, pero seguir la discusi&#243;n es un buena forma de captar c&#243;mo ha ido evolucionando <a href="http://c2.com/cgi/wiki?search=Singleton">este tema</a> (hace muchos a&#241;os que se discuti&#243;, pero estoy convencido de que sigue de rabiosa actualidad que no de popularidad).</p>
<p>El segundo es el <a href="http://www-128.ibm.com/developerworks/webservices/library/co-single.html">art&#237;culo</a> publicado en <a href="http://www.ibm.com/developerworks/">IBM developerWorks</a> por <a href="http://en.wikipedia.org/wiki/J._B._Rainsberger">J. B. Rainsberger</a>, un tipo muy bueno en metodolog&#237;as &#225;giles que sigo m&#225;s por sus art&#237;culos en el IEEE Software. Como suele ser habitual en &#233;l, presenta el problema de forma muy clara, concisa y amena y ofrece algunas alternativas para evitar los problemas ocasionados por los Singleton. Es de los pocos art&#237;culos en los que se comentan las bondades del patr&#243;n (como si estuviera diciendo: <em>un Singleton no es ni bueno ni malo, sino que lo usas bien o lo usas mal</em>; &#161;me encantan estos argumentos!)</p>
<p>Sin duda es el wiki de Cunningham el que ofrece un tratamiento m&#225;s amplio del tema. En particular, puedes encontrar la discusi&#243;n acerca de uno de sus efectos indeseados: la de inyectar <a href="http://c2.com/cgi/wiki?SingletonGlobalProblems">estado global</a> a tu aplicaci&#243;n; en otras p&#225;ginas puedes aprender por qu&#233; son <a href="http://c2.com/cgi/wiki?SingletonsAreGood">buenos</a> para unos y <a href="http://c2.com/cgi/wiki?SingletonsAreEvil">malos</a> para otros, o averiguar formas de <a href="http://c2.com/cgi/wiki?SingletonReplacements">reemplazarlos</a> o <a href="http://c2.com/cgi/wiki?SingletonRefactorings">refactorizarlos</a>. Dado que son clases muy dif&#237;ciles de probar, encontrar&#225;s <a href="http://c2.com/cgi/wiki?SingletonRefactorings">alg&#250;n consejo</a> para hacerlo. Ya como curiosidad, tienes a tu disposici&#243;n implementaciones de este patr&#243;n en <a href="http://c2.com/cgi/wiki?VisualBasicSingleton">Visual</a> <a href="http://c2.com/cgi/wiki?VbClassicSingleton">Basic</a>, <a href="http://c2.com/cgi/wiki?RubySingleton">Ruby</a>, <a href="http://c2.com/cgi/wiki?PythonSingleton">Python</a>, <a href="http://c2.com/cgi/wiki?PhpSingleton">PHP</a>, <a href="http://c2.com/cgi/wiki?PerlSingleton">Perl</a>, <a href="http://c2.com/cgi/wiki?JavaSingleton">Java</a> y <a href="http://c2.com/cgi/wiki?CppSingleton">C++</a>.</p>
<p>(No pierdas el tiempo leyendo <a href="http://c2.com/cgi/wiki?SingletonsAreEvilPageRefactoringNotes">esta p&#225;gina</a>, tiene que ver con una discusi&#243;n acerca de la manera en la que habr&#237;a que organizar el contenido de esta <a href="http://c2.com/cgi/wiki?SingletonsAreEvil">otra p&#225;gina</a> que argumenta por qu&#233; los <em>singletons</em> son malignos, que s&#237; es &#250;til).</p>
<p>Termino ya esta recopilaci&#243;n con dos art&#237;culos que me han llamado especialmente la atenci&#243;n. En <a href="http://tech.puredanger.com/2007/07/03/pattern-hate-singleton/">Patterns I Hate #1: Singleton</a>, Alex Miller explica por qu&#233; es el patr&#243;n que m&#225;s odia, las alternativas para evitarlos, insin&#250;a c&#243;mo refactorizarlos, y da alg&#250;n consejo si a pesar de todo quieres seguir us&#225;ndolos. A lo largo de mi viaje por estos territorios, he comprobado que somos muy viscerales con este tipo de cosas, porque en pocas ocasiones leer&#225;s que el patr&#243;n es apropiado o inapropiado, o bien que es adecuado usarlo en tal circunstancia guiado por cierta soluci&#243;n de compromiso, sino que m&#225;s bien leer&#225;s que alguien lo odia o que es maligno. <em>Mu pofesional</em> <img src='http://matrixredesigned.net/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> .</p>
<p>Steve Yegge es famoso, aparte de por haber trabajado en Amazon, trabajar en Google y por haber migrado Rails a JavaScript, dec&#237;a que es famoso por publicar entradas tremendamente largas, pero se las apa&#241;a para mantener tu atenci&#243;n, a la vez que hace la lectura amena y divertida (aunque m&#225;s complicada de leer en ingl&#233;s, precisamente por eso). C&#243;mo no, tambi&#233;n ha escrito sobre singletons, pero m&#225;s que odiarlos o quererlos, piensa de ellos que son&#8230; est&#250;pidos <img src='http://matrixredesigned.net/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  En <em>Singleton considered stupid</em> tambi&#233;n los estudia, pero esta vez desde un punto m&#225;s &quot;psicol&#243;gico&quot;, m&#225;s &quot;social&quot;, m&#225;s&#8230; no s&#233;, mira: &#233;chale un looking, <a href="http://steve.yegge.googlepages.com/singleton-considered-stupid">divi&#233;rtete</a>, y luego me cuentas.</p>
<p>Y <a href="mailto:vosotr@s">vosotr@s</a>, &#191;qu&#233; opin&#225;is de Singleton? &#191;Es un &#225;ngel ca&#237;do o en nuevo santo que canonizar? &#191;Comentarios? &#191;Experiencias? &#191;Cr&#237;ticas? &#191;Alg&#250;n billete suelto de 50 &#8364;? &#161;Di algo! Si no, creer&#233; que siempre tengo raz&#243;n <img src='http://matrixredesigned.net/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://matrixredesigned.net/blog/2008/06/28/destilado-de-singletons/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ejercicios calisténicos para objetos (IV)</title>
		<link>http://matrixredesigned.net/blog/2008/06/21/ejercicios-calistenicos-para-objetos-iv/</link>
		<comments>http://matrixredesigned.net/blog/2008/06/21/ejercicios-calistenicos-para-objetos-iv/#comments</comments>
		<pubDate>Sat, 21 Jun 2008 18:35:00 +0000</pubDate>
		<dc:creator>Introspectre</dc:creator>
				<category><![CDATA[diseño]]></category>
		<category><![CDATA[profesión]]></category>

		<guid isPermaLink="false">http://matrixredesigned.net/blog/2008/06/21/ejercicios-calistenicos-para-objetos-iv/</guid>
		<description><![CDATA[En estas entradas, el t&#233;rmino &#34;calist&#233;nico&#34; no hace referencia a ejercicios musculares (puedes encontrar informaci&#243;n sobre eso aqu&#237; por ejemplo, o seguir buscando en google). Ir a la introducci&#243;n de esta serie. Ir a post anterior. 4. Utiliza s&#243;lo una introducci&#243;n punto por l&#237;nea Usa s&#243;lo un punto por l&#237;nea. Este paso evita que tu [...]]]></description>
			<content:encoded><![CDATA[<p><em><font size="1">En estas entradas, el t&#233;rmino &quot;calist&#233;nico&quot; no hace referencia a ejercicios musculares (puedes encontrar informaci&#243;n sobre eso </font></em><a href="http://caminar-mas.blogspot.com/2006/07/consejos-para-una-rutina-adecuada-de.html"><em><font size="1">aqu&#237;</font></em></a><em><font size="1"> por ejemplo, o seguir buscando en <a href="http://www.google.es/search?q=%22ejercicios+calist%E9nicos%22+-%22matrix+redesigned%22">google</a>).</font></em></p>
<p>Ir a la <a href="http://wilsoke.blogspot.com/2008/05/ejercicios-calistnicos-para-objetos.html">introducci&#243;n</a> de esta serie.    <br />Ir a post <a href="http://wilsoke.blogspot.com/2008/06/ejercicios-calistnicos-para-objetos-iii.html">anterior</a>.</p>
<p><strong><u>4. Utiliza s&#243;lo una introducci&#243;n punto por l&#237;nea</u></strong></p>
<blockquote><p>Usa s&#243;lo un punto por l&#237;nea. Este paso evita que tu c&#243;digo alcance profundamente a otros objetos para llegar a sus m&#233;todos o propiedades, y por tanto romper conceptualmente la encapsulaci&#243;n.</p>
</blockquote>
<p>En definitiva, que te tienes que OlvidarDe.Llamar().AUnMetodo().TrasOtro() en la misma l&#237;nea y UtilizarSolo.UnaLlamada()</p>
<p>De cara al interface p&#250;blico (es m&#225;s, publicado) proporcionado al usuario de tus clases, no s&#233; d&#243;nde se rompe la encapsulaci&#243;n. Encapsular es asignar cierta responsabilidad a un m&#243;dulo (en el sentido de Parnas), y hacer que los secretos relacionados con dicha responsabilidad, por ejemplo algoritmos o estructuras de datos, queden efectivamente escondidos en ese m&#243;dulo. Si quiero saber cu&#225;ntos alumnos de Derecho reciben clase de un determinado profesor, &#191;qu&#233; problema habr&#237;a en escribir el siguiente c&#243;digo?</p>
<p>Universidad.EquipoDocente(idProfe).Docencia(Titulaciones.Derecho).Alumnos.Cuenta()</p>
<p>Por poner un ejemplo. &#191;D&#243;nde rompo la encapsulaci&#243;n? Es verdad que aumento la dependencia del usuario de un mont&#243;n de objetos, y a lo mejor ser&#237;a bueno crear una fachada, del estilo:</p>
<p>ServiciosDocentes.NumeroAlumnos(idProfe, Titulaciones.Derecho)</p>
<p>Pero al final, &#191;no llevar&#237;a esto a tener una serie de clases con multitud de m&#233;todos, uno por cada ruta seguida a trav&#233;s de los puntos? Empiezo a pensar que esto va un poco de co&#241;a&#8230;</p>
<p><u><strong>5. No abrevies los nombres</strong></u></p>
<blockquote><p>Esta restricci&#243;n evita la &quot;verbosidad&quot; procedimental que se crea por ciertas formas de redundancia&#8212;si tienes que escribir el nombre completo de un m&#233;todo o variable, casi seguro que te llevar&#225; m&#225;s tiempo pensar en su nombre. Y evitar&#225;s tener objetos llamados Pedido con m&#233;todos llamados enviarPedido(). En vez de eso, tu c&#243;digo tendr&#225; m&#225;s m&#233;todos del estilo Pedido.Enviar()</p>
</blockquote>
<p>La traducci&#243;n creo que no es muy buena (&#191;alguien sabe c&#243;mo se traduce &quot;verbosity&quot;?), as&#237; que lo pongo en el original.</p>
<blockquote><p>This constraint avoids the procedural verbosity that is created by certain forms of redundancy&#8212;if you have to type the full name of a method or variable, you&#8217;re likely to spend more time thinking about its name. And you&#8217;ll avoid having objects called Order with methods entitled shipOrder(). Instead, your code will have more calls such as Order.ship().</p>
</blockquote>
<p>Pues&#8230; totalmente de acuerdo. Es m&#225;s &#191;hay alguien que no lo haga as&#237;?</p>
<p>&#161;Espero vuestros comentarios!</p>
]]></content:encoded>
			<wfw:commentRss>http://matrixredesigned.net/blog/2008/06/21/ejercicios-calistenicos-para-objetos-iv/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>De la adaptación de una solución a un problema</title>
		<link>http://matrixredesigned.net/blog/2008/06/18/de-la-adaptacion-de-una-solucion-a-un-problema/</link>
		<comments>http://matrixredesigned.net/blog/2008/06/18/de-la-adaptacion-de-una-solucion-a-un-problema/#comments</comments>
		<pubDate>Wed, 18 Jun 2008 21:30:00 +0000</pubDate>
		<dc:creator>Introspectre</dc:creator>
				<category><![CDATA[diseño]]></category>
		<category><![CDATA[profesión]]></category>

		<guid isPermaLink="false">http://matrixredesigned.net/blog/2008/06/18/de-la-adaptacion-de-una-solucion-a-un-problema/</guid>
		<description><![CDATA[Hoy todo el mundo habla de procrastinaci&#243;n, ya sab&#233;is, el ir retrasando en el tiempo aquello que debe hacerse en favor de otras tareas menos &#250;tiles, pero m&#225;s apetecibles. Y a mi me sonaba que ya hab&#237;a escuchado esa palabra antes, mucho antes, all&#225; por mis principios en el mundo universitario&#8230; Procras, procas, porcras&#8230; A [...]]]></description>
			<content:encoded><![CDATA[<p>Hoy todo el mundo habla de procrastinaci&#243;n, ya sab&#233;is, el ir retrasando en el tiempo aquello que debe hacerse en favor de otras tareas menos &#250;tiles, pero m&#225;s apetecibles.</p>
<p>Y a mi me sonaba que ya hab&#237;a escuchado esa palabra antes, mucho antes, all&#225; por mis principios en el mundo universitario&#8230; Procras, procas, porcras&#8230; A la vista de la definici&#243;n, estaba claro que no coincid&#237;a con lo que yo recordaba de la palabra: su historia. La palabra proven&#237;a del nombre de un individuo que ten&#237;a la desafortunada costumbre de hacer dormir a los altos en camas peque&#241;as y cortarles las piernas, y a los bajos en camas grandes y estirarlos hasta desmembrarlos. Claramente nada que ver con la procrastinaci&#243;n. Estaba claro que la palabra era otra, pero no consegu&#237;a recordarla. </p>
<p>El caso es que gracias a Santa Internet y por intermediaci&#243;n de San Google, con la plegaria &quot;mitolog&#237;a griega cama altos bajos&quot; por fin encontr&#233; la palabra. <a href="http://www.pantheon.org/articles/p/procrustes.html">Procusto</a> (del griego &#928;&#961;&#959;&#954;&#961;&#959;ύ&#963;&#964;&#951;&#962;, estirador) era el bandido y posadero que pose&#237;a esa extra&#241;a costumbre.</p>
<p><a href="http://upload.wikimedia.org/wikipedia/commons/6/6d/Theseus_Prokroustes_Louvre_G104.jpg"><img style="margin: 0px 10px 0px 0px" height="138" alt="Imagen:Theseus Prokroustes Louvre G104.jpg" src="http://upload.wikimedia.org/wikipedia/commons/thumb/6/6d/Theseus_Prokroustes_Louvre_G104.jpg/562px-Theseus_Prokroustes_Louvre_G104.jpg" width="130" align="left" border="0" /></a>En la <a href="http://es.wikipedia.org/wiki/Cama_de_Procusto">Wikipedia</a> he encontrado que la palabra tambi&#233;n se aplica a la inform&#225;tica. Se dice que una cadena es procusteana si es de longitud fija y, al almacenar texto en ella, se rellena con espacios al final si el texto es de menor longitud, y se truncan los caracteres sobrantes si es de mayor longitud. Esto da explicaci&#243;n a muchos fen&#243;menos &quot;extra&#241;&quot; en ciertas &quot;aplicaci&quot;.</p>
<p>Y aprovechando la charla, se me ha ocurrido pensar que los inform&#225;ticos somos muy partidarios del procustismo porque, &#191;cu&#225;ntas veces no hemos intentado adaptar una soluci&#243;n a un problema, sin darnos cuenta de que lo estiramos y estiramos hasta desmemblarlo, haciendo que la soluci&#243;n deje de ser v&#225;lida para el problema? &#191;Y tantas otras veces que intentamos &quot;recortar&quot; aqu&#237; y all&#225; una soluci&#243;n a todas luces inapropiada al problema que tenemos entre manos? Claro est&#225; que es de buen ingeniero aprovechar una soluci&#243;n de forma razonable para <a href="http://www.hillside.net/patterns/">resolver un problema</a>, pero todo tiene un l&#237;mite: el de la Cama de Procusto (en t&#233;rminos de patrones: contexto, fuerzas, aplicabilidad, consecuencias&#8230;).</p>
]]></content:encoded>
			<wfw:commentRss>http://matrixredesigned.net/blog/2008/06/18/de-la-adaptacion-de-una-solucion-a-un-problema/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Posibles posibles</title>
		<link>http://matrixredesigned.net/blog/2008/06/17/posibles-posibles/</link>
		<comments>http://matrixredesigned.net/blog/2008/06/17/posibles-posibles/#comments</comments>
		<pubDate>Tue, 17 Jun 2008 09:34:00 +0000</pubDate>
		<dc:creator>Introspectre</dc:creator>
				<category><![CDATA[ciencia]]></category>
		<category><![CDATA[diseño]]></category>
		<category><![CDATA[filosofía]]></category>
		<category><![CDATA[mens sana]]></category>
		<category><![CDATA[profesión]]></category>

		<guid isPermaLink="false">http://matrixredesigned.net/blog/2008/06/17/posibles-posibles/</guid>
		<description><![CDATA[En aquel momento comprend&#237; c&#243;mo razonaba mi maestro, y me pareci&#243; que su m&#233;todo ten&#237;a poco que ver con el del fil&#243;sofo que razonaba partiendo de primeros principios, y los modos de cuyo intelecto coinciden casi con los del intelecto divino. Comprend&#237; que, cuando no ten&#237;a una respuesta, Guillermo imaginaba una multiplicidad de respuestas posibles, [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>En aquel momento comprend&#237; c&#243;mo razonaba mi maestro, y me pareci&#243; que su m&#233;todo ten&#237;a poco que ver con el del fil&#243;sofo que razonaba partiendo de primeros principios, y los modos de cuyo intelecto coinciden casi con los del intelecto divino. Comprend&#237; que, cuando no ten&#237;a una respuesta, Guillermo imaginaba una multiplicidad de respuestas posibles, muy distintas unas de otras. Me qued&#233; perplejo.</p>
<p>&#8212;Pero entonces &#8212;me atrev&#237; a comentar&#8212;, a&#250;n est&#225;is lejos de la soluci&#243;n&#8230;</p>
<p>&#8212;Estoy muy cerca, pero no s&#233; de cu&#225;l.</p>
<p>&#8212;&#191;O sea que no ten&#233;is una &#250;nica respuesta para vuestras preguntas?</p>
<p>&#8212;Si la tuviera, Adso, ense&#241;ar&#237;a teolog&#237;a en Par&#237;s.</p>
<p>&#8212;&#191;En Par&#237;s siempre tienen la respuesta verdadera?</p>
<p>&#8212;Nunca, pero est&#225;n muy seguros de sus errores.</p>
<p>&#8212;&#191;Y vos? &#8212;dije con infantil impertinencia&#8212;. &#191;Nunca comet&#233;is errores?</p>
<p>&#8212;A menudo &#8212;respondi&#243;&#8212;. Pero en lugar de concebir uno solo, imagino muchos, para no convertirme en el esclavo de ninguno.</p>
<p>Me pareci&#243; que Guillermo no ten&#237;a el menor inter&#233;s en la verdad, que no es otra cosa que la adecuaci&#243;n entre la cosa y el intelecto. &#201;l, en cambio, se divert&#237;a imaginando la mayor cantidad posible de posibles.</p>
</blockquote>
<p><a href="http://es.wikipedia.org/wiki/El_nombre_de_la_rosa">El Nombre de la Rosa</a>     <br />(Cuarto d&#237;a, <a href="http://es.wikipedia.org/wiki/Horas_can%C3%B3nicas">v&#237;speras</a>, hacia el final)     <br /><a href="http://www.umbertoeco.com/">Umberto</a> <a href="http://es.wikipedia.org/wiki/Umberto_Eco">Eco</a></p>
<p>Y ahora, amig@s inform&#225;tic@s (y los que no lo sean tambi&#233;n), &#191;seguiremos tir&#225;ndonos de cabeza a la primera soluci&#243;n que encontremos para un problema? &#191;Creeremos que tenemos LA soluci&#243;n, o mejor UNA soluci&#243;n? &#191;Ser&#225; mejor elaborar un conjunto admisibles de posibles soluciones, de posibles posibles?</p>
<p><em>&quot;Thinking please, thinking&#8230;&quot;</em></p>
]]></content:encoded>
			<wfw:commentRss>http://matrixredesigned.net/blog/2008/06/17/posibles-posibles/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Libro geek: El Nombre de la Rosa</title>
		<link>http://matrixredesigned.net/blog/2008/06/14/libro-geek-el-nombre-de-la-rosa/</link>
		<comments>http://matrixredesigned.net/blog/2008/06/14/libro-geek-el-nombre-de-la-rosa/#comments</comments>
		<pubDate>Sat, 14 Jun 2008 08:31:00 +0000</pubDate>
		<dc:creator>Introspectre</dc:creator>
				<category><![CDATA[diseño]]></category>
		<category><![CDATA[profesión]]></category>

		<guid isPermaLink="false">http://matrixredesigned.net/blog/2008/06/14/libro-geek-el-nombre-de-la-rosa/</guid>
		<description><![CDATA[Y ya que estamos con Umberto Eco y su &#34;El Nombre de la Rosa&#34;&#8230; Para &#233;l hubiera sido imposible, como semi&#243;logo que es, no haber hecho girar todo el misterio de su novela detectivesca (llevada al cine con bastante acierto), alrededor de la confusi&#243;n entre significante y significado, entre s&#237;mbolo y esencia, entre la realidad [...]]]></description>
			<content:encoded><![CDATA[<p>Y <a href="http://wilsoke.blogspot.com/2008/06/mirar-mejor.html">ya que estamos</a> con Umberto Eco y su &quot;El Nombre de la Rosa&quot;&#8230;</p>
<p>Para &#233;l hubiera sido imposible, como semi&#243;logo que es, no haber hecho girar todo el misterio de su novela detectivesca (llevada al cine con bastante acierto), alrededor de la confusi&#243;n entre significante y significado, entre s&#237;mbolo y esencia, entre la realidad de las cosas existentes &#191;reales? y de las cosas pensadas &#191;imaginadas?.</p>
<p><strong><font color="#00ff00">Atenci&#243;n, spoiler</font></strong>. Si no te has le&#237;do el libro o no has visto la pel&#237;cula, no contin&#250;es. El siguiente texto contiene pistas que te podr&#237;an destripar la pel&#237;cula (de mala manera).</p>
<p>Dicho lo cual, continuamos:</p>
<blockquote><p align="center">SECRETUM FINIS AFRICAE      <br />MANUS SUPRA IDOLUM       <br />AGE PRIMUM ET SEPTIMUM       <br />DE QUATUOR</p>
</blockquote>
<p>&quot;La mano sobre el &#237;dolo opera sobre el primero y el s&#233;ptimo de los cuatro&quot;.</p>
<p>&#161;El primero y el s&#233;ptimo de la <u>palabra</u> <em>QUATUOR</em>, no de su significado!. No entend&#237;an porque confundieron el significante con el significado. Y as&#237; <u>nuestra</u> &quot;realidad&quot; no es m&#225;s que un jard&#237;n de s&#237;mbolos en un cerebro que, con suerte, los manipula con habilidad.</p>
<p><a href="http://lh6.ggpht.com/miguel.antonio.gomez/SFLs_vixXcI/AAAAAAAAAW8/K5q7PFos-Ws/s1600-h/50pipe%5B5%5D.jpg"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; margin: 0px 10px 0px 0px; border-right-width: 0px" height="154" alt="50pipe" src="http://lh4.ggpht.com/miguel.antonio.gomez/SFLtA5-aNxI/AAAAAAAAAXA/3QhShgldP-U/50pipe_thumb%5B3%5D.jpg?imgmax=800" width="214" align="left" border="0" /></a> Y &quot;la verdad est&#225; ah&#237; fuera&quot; significa que lo existente es un jard&#237;n de ontolog&#237;as sobre los que hemos creado un conjunto de s&#237;mbolos, y sobre los que estamos de acuerdo. Sucede tambi&#233;n que, bien manejados, la combinaci&#243;n de esos s&#237;mbolos y una serie de reglas de la raz&#243;n nos permite &quot;predecir&quot; el futuro, si hablamos de ciertos s&#237;mbolos &quot;causa&quot; y ciertos s&#237;mbolos &quot;efecto&quot;. La base de nuestro conocimiento es el acuerdo t&#225;cito y dirigido por reglas &quot;razonables&quot; (&#191;derivadas de aquellos s&#237;mbolos quiz&#225;?) acerca de los conceptos representados por s&#237;mbolos, junto con una asociaci&#243;n causa-efecto (que Hume cuestion&#243;, por cierto).</p>
<p>Pero no todo es tan f&#225;cil. Se debe ser muy preciso en qu&#233; s&#237;mbolo se le quiere dar a qu&#233; significado, o arruinaremos el entendimiento. En una conversaci&#243;n informal, se puede permitir cierta ambig&#252;edad y en ciertos casos es incluso necesario (por ejemplo, al contar un chiste), porque la informaci&#243;n imprecisa se puede obtener m&#225;s o menos f&#225;cilmente del contexto del receptor. Pero en una conversaci&#243;n m&#225;s formal, la imprecisi&#243;n no tiene lugar.</p>
<blockquote><p>Vale, quillo, ya&#8230; lo he pillado &#191;y qu&#233;?</p>
</blockquote>
<p>Pues que si a esta reflexi&#243;n acerca de la representaci&#243;n por medio de s&#237;mbolos de conceptos pre-existentes &quot;ah&#237; fuera&quot;, junto con la precisi&#243;n de los s&#237;mbolos utilizados en la comunicaci&#243;n, le unes ciertos juegos l&#243;gicos dispersos por el libro, y lo yuxtapones a ciertas referencias a la criptograf&#237;a, lo que tienes es que &quot;El Nombre de la Rosa&quot; es un libro geek, friki total, inform&#225;tico 100%.</p>
<blockquote><p>Ya bueno, lo &#250;nico que adem&#225;s habla de herej&#237;as y religi&#243;n y&#8230; &#191;y eso?</p>
</blockquote>
<p>Exacto. Pues te sorprender&#237;a saber la fe que le tienen algunos a ciertos IDE, la devoci&#243;n rayana en el fanatismo a una tecnolog&#237;a, las experiencias m&#237;sticas de otros contemplando la luz de un patr&#243;n de dise&#241;o, las apostas&#237;as de los seguidores de Windows reconvertidos en Linux por obra y gracia del c&#243;digo abierto, y las veces que algunos heres&#237;acos del demonio mencionan equivocadamente el santo nombre de <a href="http://en.wikipedia.org/wiki/David_Parnas">Parnas</a> en vano, y ahogan sus <a href="http://en.wikipedia.org/wiki/Information_hiding">ense&#241;anzas</a> bajo toneladas de c&#243;digo innecesariamente complejo&#8230; &#161;A la hoguera!</p>
<blockquote><p>Creo que es mi deber sugerirte que te replantees lo que te propuse hace unas entradas de ir al psic&#243;logo&#8230; Conozco uno muy bueno que&#8230;</p>
</blockquote>
<p>Nop.</p>
]]></content:encoded>
			<wfw:commentRss>http://matrixredesigned.net/blog/2008/06/14/libro-geek-el-nombre-de-la-rosa/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Capítulo II</title>
		<link>http://matrixredesigned.net/blog/2008/06/12/capitulo-ii/</link>
		<comments>http://matrixredesigned.net/blog/2008/06/12/capitulo-ii/#comments</comments>
		<pubDate>Thu, 12 Jun 2008 07:50:00 +0000</pubDate>
		<dc:creator>Introspectre</dc:creator>
				<category><![CDATA[Zoon politikon]]></category>
		<category><![CDATA[ciencia]]></category>
		<category><![CDATA[comunicación]]></category>
		<category><![CDATA[corpore sano]]></category>
		<category><![CDATA[de la pitanza]]></category>
		<category><![CDATA[diseño]]></category>
		<category><![CDATA[don dinero]]></category>
		<category><![CDATA[en busca de mis valores]]></category>
		<category><![CDATA[en la batcueva]]></category>
		<category><![CDATA[es bueno echarse unas risas]]></category>
		<category><![CDATA[familia]]></category>
		<category><![CDATA[filosofía]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[mens sana]]></category>
		<category><![CDATA[momentos de furia]]></category>
		<category><![CDATA[ocio]]></category>
		<category><![CDATA[poesía]]></category>
		<category><![CDATA[profesión]]></category>
		<category><![CDATA[un amigo es un tesoro]]></category>
		<category><![CDATA[videoclips]]></category>
		<category><![CDATA[what is the matrix]]></category>

		<guid isPermaLink="false">http://matrixredesigned.net/blog/2008/06/12/capitulo-ii/</guid>
		<description><![CDATA[A pesar de la crisis, hoy necesito combustible para arrancar un nuevo motor. Imagen poco usual de una de las toberas del Shuttle. M&#225;s aqu&#237;. Ah&#237; van las primeras dosis: La primera, por alusi&#243;n directa al tema de este blog&#8230; La segunda por que me gusta y yast&#225; y sacab&#243; y unanom&#225;ssantotom&#225;s y lodijoblaspuntoredondo y [...]]]></description>
			<content:encoded><![CDATA[<p>A pesar de la crisis, hoy necesito combustible para arrancar un nuevo motor.</p>
<p><a href="http://lh5.ggpht.com/miguel.antonio.gomez/SFDP8QnXOFI/AAAAAAAAAW0/N1tHpzzGPJM/013_shuttle%5B14%5D.jpg"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; margin: 0px; border-right-width: 0px" height="294" alt="013_shuttle" src="http://lh4.ggpht.com/miguel.antonio.gomez/SFDP8zx4cSI/AAAAAAAAAW4/u3S6bVjiodQ/013_shuttle_thumb%5B7%5D.jpg" width="427" border="0" /></a> </p>
<p align="right"><font size="1">Imagen poco usual de una de las toberas del Shuttle.     <br />M&#225;s </font><a href="http://tploy.com/200804082104/space-shuttle-22-pics.html"><font size="1">aqu&#237;</font></a><font size="1">.</font></p>
<p>Ah&#237; van las primeras dosis:</p>
<p>La primera, por alusi&#243;n directa al tema de este blog&#8230;</p>
<p><embed src="http://www.youtube.com/v/BhtuJcXnbck&amp;hl=en" width="425" height="344" type="application/x-shockwave-flash" /></p>
<p>La segunda por que me gusta y yast&#225; y sacab&#243; y unanom&#225;ssantotom&#225;s y lodijoblaspuntoredondo y punto (enboca):-)</p>
<p><embed src="http://www.youtube.com/v/LfcFbjXVcQw&amp;hl=en" width="425" height="344" type="application/x-shockwave-flash" /></p>
<p>Ahora vuestro turno &#191;qu&#233; cosas por ah&#237; os funcionan de combustible?</p>
]]></content:encoded>
			<wfw:commentRss>http://matrixredesigned.net/blog/2008/06/12/capitulo-ii/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>El reto principal de la Ingeniería del Software</title>
		<link>http://matrixredesigned.net/blog/2008/06/07/el-reto-principal-de-la-ingenieria-del-software/</link>
		<comments>http://matrixredesigned.net/blog/2008/06/07/el-reto-principal-de-la-ingenieria-del-software/#comments</comments>
		<pubDate>Sat, 07 Jun 2008 19:30:00 +0000</pubDate>
		<dc:creator>Introspectre</dc:creator>
				<category><![CDATA[diseño]]></category>
		<category><![CDATA[mens sana]]></category>
		<category><![CDATA[profesión]]></category>

		<guid isPermaLink="false">http://matrixredesigned.net/blog/2008/06/07/el-reto-principal-de-la-ingenieria-del-software/</guid>
		<description><![CDATA[For some scientists, software development is a branch of mathematics; for some engineers, it is a branch of applied technology. In reality, it is both. The software developer must reconcile the abstract concepts with their concrete implementations, the mathematics of correct computation with the time and space constraints deriving from physical laws and from limitations [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>For some scientists, software development is a branch of mathematics; for some engineers, it is a branch of applied technology. In reality, it is both. The software developer must reconcile the abstract concepts with their concrete implementations, the mathematics of correct computation with the time and space constraints deriving from physical laws and from limitations of current hardware technology. This need to please the angels as well as the beasts may be the central challenge of software engineering.</p>
</blockquote>
<p>Meyer, B. Object-Oriented Software Construction, 2nd edition, pag. 8. Prencite Hall, NJ.</p>
<p>Traducci&#243;n libre del que suscribe: &quot;Para algunos cient&#237;ficos, el desarrollo de software es una rama de las matem&#225;ticas; para algunos ingenieros, es una rama de tecnolog&#237;a aplicada. En realidad, es ambas cosas. El desarrollador de software debe reconciliar los conceptos abstractos con sus implementaciones concretas, las matem&#225;ticas de la computaci&#243;n correcta con las restricciones de espacio y tiempo derivadas de las leyes f&#237;sicas y de las limitaciones de la tecnolog&#237;a actual del <em>hardware</em>. Esta necesidad de complacer a los &#225;ngeles, as&#237; como a las bestias bien puede ser el reto central de la ingenier&#237;a del <em>sofware</em>.</p>
]]></content:encoded>
			<wfw:commentRss>http://matrixredesigned.net/blog/2008/06/07/el-reto-principal-de-la-ingenieria-del-software/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.506 seconds -->

