<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://msmvps.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Angel "Java" Lopez : Historia de la Computaci&amp;#243;n</title><link>http://msmvps.com/blogs/lopez/archive/tags/Historia+de+la+Computaci_26002300_243_3B00_n/default.aspx</link><description>Tags: Historia de la Computaci&amp;#243;n</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP2 (Build: 40407.4157)</generator><item><title>Entrevista y Podcast</title><link>http://msmvps.com/blogs/lopez/archive/2013/03/23/entrevista-y-podcast.aspx</link><pubDate>Sat, 23 Mar 2013 10:47:32 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1825715</guid><dc:creator>lopez</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/lopez/rsscomments.aspx?PostID=1825715</wfw:commentRss><comments>http://msmvps.com/blogs/lopez/archive/2013/03/23/entrevista-y-podcast.aspx#comments</comments><description>&lt;p&gt;Hoy paso a comentar dos entregables que se publicaron: una entrevista, y una charla como podcast.&lt;/p&gt;  &lt;p&gt;El año pasado, el bueno de &lt;a href="https://twitter.com/santiagobasulto"&gt;@santiagobasulto&lt;/a&gt; (desarrollador de software, emprendedor, programador Python, colaborador en proyectos de código abierto) tuvo la paciencia de hacerme una entrevista en persona, acá en Buenos Aires, tomándose el trabajo de viajar desde su La Plata en un día atareado. Estuvimos charlando como dos horas (en un bar histórico de la ciudad, donde se filmó la escena del billete y el mozo, de la película “Nueve Reinas”, les dejo como trabajo para el hogar averiguar cuál es). Justamente, ese bar tiene también algo que ver con la entrevista, porque he pasado por él varias veces en las décadas que llevo de programar.&lt;/p&gt;  &lt;p&gt;Santiago la pasó en limpio, la pueden leer en:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://charliedontcode.com/entrevistas/2012/08/12/entrevista-angel-java-lopez.html" href="http://charliedontcode.com/entrevistas/2012/08/12/entrevista-angel-java-lopez.html"&gt;http://charliedontcode.com/entrevistas/2012/08/12/entrevista-angel-java-lopez.html&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Algo más de contexto, lo escribí hace algo más de cuatro años:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://msmvps.com/blogs/lopez/archive/2008/12/31/treinta-a-241-os-en-desarrollo-de-software.aspx" href="http://msmvps.com/blogs/lopez/archive/2008/12/31/treinta-a-241-os-en-desarrollo-de-software.aspx"&gt;http://msmvps.com/blogs/lopez/archive/2008/12/31/treinta-a-241-os-en-desarrollo-de-software.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Visiten el blog de Santiago:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://charliedontcode.com/" href="http://charliedontcode.com/"&gt;http://charliedontcode.com/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Muy buena la escena de cine de donde toma el nombre (ya me imagino a &lt;a href="https://twitter.com/santiagobasulto"&gt;@santiagobasulto&lt;/a&gt; cruzándose con Robert Duvall, acá en Buenos Aires, supongo que en otro bar histórico, La Biela ;-).&lt;/p&gt;  &lt;p&gt;Y también tuve una charla, esta vez a distancia, con los buenos &lt;a href="http://twitter.com/roundcrisis"&gt;@roundcrisis&lt;/a&gt; &lt;a href="http://twitter.com/dvilchez"&gt;@dvilchez&lt;/a&gt;, publicada hoy como podcast:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.32minutos.net/?p=106" href="http://www.32minutos.net/?p=106"&gt;http://www.32minutos.net/?p=106&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Ah! Pusieron una foto mía, debe ser la “clásica” ;-) (no me saco muchas fotos). Tratamos temas de desarrollo de software, algo de desarrollo ágil, insistí bastante sobre el tema TDD, también sobre generación de código como sistema experto, y “ver la luz”. Y hasta apareció algo de Anglish ;-). &lt;/p&gt;  &lt;p&gt;Vean que han producido varios podcast en:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.32minutos.net/" href="http://www.32minutos.net/"&gt;http://www.32minutos.net/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;como el de &lt;a href="http://www.32minutos.net/?p=85"&gt;Programación Funcional&lt;/a&gt; con el bueno de &lt;a href="http://twitter.com/martinsalias"&gt;@martinsalias&lt;/a&gt;, o el de &lt;a href="http://www.32minutos.net/?p=32"&gt;Node.js&lt;/a&gt; con &lt;a href="http://twitter.com/woloski"&gt;@woloski&lt;/a&gt;, &lt;a href="http://twitter.com/jfroma"&gt;@jfroma&lt;/a&gt; y &lt;a href="http://twitter.com/theprogrammer"&gt;@theprogrammer&lt;/a&gt;. Hace unas semanas grabamos otro podcast, esta vez con Martin, para 32 minutos, y se conversó bastante sobre agilidad. Veremos si queda publicado en estos días. Estén atentos.&lt;/p&gt;  &lt;p&gt;Les agradezco a los tres haberme permitido conversar y expresar algunas ideas, que pueden servir o no. &lt;/p&gt;  &lt;p&gt;Pero lo bueno que están haciendo, es dejar entregables consumibles. Eso es importante. Internet (y la Web en particular) está permitiendo la generación de contenido y compartirlo con todos los interesados, de una forma accesible. Pienso que es una revolución tan grande como la de Gutenberg, y los primeros libros de Manuccio.&lt;/p&gt;  &lt;p&gt;Nos leemos!&lt;/p&gt;  &lt;p&gt;Angel “Java” Lopez   &lt;br /&gt;&lt;a href="http://www.ajlopez.com"&gt;http://www.ajlopez.com&lt;/a&gt;    &lt;br /&gt;&lt;a href="http://twitter.com/ajlopez"&gt;http://twitter.com/ajlopez&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1825715" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/lopez/archive/tags/Desarrollo+de+Software/default.aspx">Desarrollo de Software</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Historia+de+la+Computaci_26002300_243_3B00_n/default.aspx">Historia de la Computaci&amp;#243;n</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Desarrollo+Agil/default.aspx">Desarrollo Agil</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/TDD/default.aspx">TDD</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Programaci_F300_n/default.aspx">Programación</category></item><item><title>Computación en el Recuerdo (1) Requisitos de un Lenguaje de Programación</title><link>http://msmvps.com/blogs/lopez/archive/2012/12/21/computaci-243-n-en-el-recuerdo-1-requisitos-de-un-lenguaje-de-programaci-243-n.aspx</link><pubDate>Fri, 21 Dec 2012 16:26:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1821386</guid><dc:creator>lopez</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/lopez/rsscomments.aspx?PostID=1821386</wfw:commentRss><comments>http://msmvps.com/blogs/lopez/archive/2012/12/21/computaci-243-n-en-el-recuerdo-1-requisitos-de-un-lenguaje-de-programaci-243-n.aspx#comments</comments><description>&lt;p&gt;En un mundo con Internet, tablets, lenguajes funcionales y cloud computing, es bueno volver la vista atrás y ver todo en perspectiva. Hoy, en mis lecturas, me encuentro con este fragmento:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;…definimos ahora los requisitos de un lenguaje de programación para problemas originados en los campos de la economía y de la administración.&lt;/p&gt;    &lt;p&gt;1. Debe ser posible indicar cómodamente en qué unidades periféricas se encuentran los diferentes archivos, y cómo los registros se almacenan físicamente en el medio de almacenamiento, por ejemplo cuántos registros forman un bloque en cinta magnética.&lt;/p&gt;    &lt;p&gt;2. Debe ser fácil describir la transferencia de registros entre la memoria central y las unidades periféricas, por ejemplo la lectora de tarjetas perforadas, la impresora de líneas y la memoria auxiliar.&lt;/p&gt;    &lt;p&gt;3. Debe ser posible referirse a los datos individuales de un registro. Por lo tanto, debe ser posible describir las propiedades de los datos incluidos en el registro y cómo se agrupan para formar un registro.&lt;/p&gt;    &lt;p&gt;4. Debe ser posible presentar los datos de salida, de modo que sea fácil su lectura.&lt;/p&gt;    &lt;p&gt;5. Es necesario que se puedan describir operaciones aritm^ticas con números y operaciones lógicas, por ejemplo comparación de números. Además, también debe ser posible trabajar con datos no numéricos, por ejemplo nombres.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Concluye:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;El COBOL satisface todos estos requirimientos&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Fuente: Sección 2.3 del libro “COBOL” de Torgil Ekman y Kenneth Nilsson, publicado acá en Argentina por la editorial El Ateneo. Lo leía a fines de los setenta, principios de los ochenta. Y encontro guardadas, dentro de algunas páginas, algunos de mis primeros cursogramas ;-)&lt;/p&gt;  &lt;p&gt;Estoy por comenzar un code-kata (espero que este fin de semana): un intérprete/compilador a JavaScript (browser y Node.js), de COBOL. Cosas veredes, Sancho!&lt;/p&gt;  &lt;p&gt;Nos leemos!&lt;/p&gt;  &lt;p&gt;Angel “Java” Lopez   &lt;br /&gt;&lt;a href="http://www.ajlopez.com"&gt;http://www.ajlopez.com&lt;/a&gt;    &lt;br /&gt;&lt;a href="http://twitter.com/ajlopez"&gt;http://twitter.com/ajlopez&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1821386" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/lopez/archive/tags/Historia+de+la+Computaci_26002300_243_3B00_n/default.aspx">Historia de la Computaci&amp;#243;n</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Programaci_F300_n/default.aspx">Programación</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/COBOL/default.aspx">COBOL</category></item><item><title>Microsoft MVP (Most Valuable Professional) otro año más, y el futuro del software</title><link>http://msmvps.com/blogs/lopez/archive/2009/10/10/microsoft-mvp-most-valuable-professional-otro-a-241-o-m-225-s-y-el-futuro-del-software.aspx</link><pubDate>Sat, 10 Oct 2009 14:36:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1731375</guid><dc:creator>lopez</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/lopez/rsscomments.aspx?PostID=1731375</wfw:commentRss><comments>http://msmvps.com/blogs/lopez/archive/2009/10/10/microsoft-mvp-most-valuable-professional-otro-a-241-o-m-225-s-y-el-futuro-del-software.aspx#comments</comments><description>&lt;p&gt;&lt;img align="left" src="http://www.todocontenidos.com/images/articles/past-present-future.jpg" style="display:inline;margin:0px 20px 20px 0px;" alt="" /&gt; El pasado 1ro. de Octubre, me confirmaron que nuevamente, en este a&amp;ntilde;o que sigue, soy Microsoft MVP. Pueden ver detalles del programa en:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://mvp.support.microsoft.com/" title="http://mvp.support.microsoft.com/"&gt;http://mvp.support.microsoft.com/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Quiero agradecer a N&amp;eacute;stor Portillo (&lt;a target="_blank" href="http://twitter.com/nportillo"&gt;@nportillo&lt;/a&gt;) y &lt;a target="_blank" href="http://blogs.msdn.com/mvplead/"&gt;Fernando Garc&amp;iacute;a Loera&lt;/a&gt; (&lt;a target="_blank" href="http://twitter.com/ferglo"&gt;@ferglo&lt;/a&gt;) por su apoyo en todos estos a&amp;ntilde;os. Tambi&amp;eacute;n, a Carlos &amp;ldquo;Billy&amp;rdquo; Reynoso, quien&amp;nbsp;me propuso como MVP en 2002 (vio la luz!! :-), luego de haberme convocado tambi&amp;eacute;n en los 90 para participar de charlas y reuniones. Y a la gente del Microsoft User Group, del que participo desde hace casi 15 a&amp;ntilde;os, por el constante trabajo para armar una comunidad en la que podemos participar todos.&lt;/p&gt;
&lt;p&gt;Me gustar&amp;iacute;a que otras empresas tuvieran un programa similar a los Microsoft MVPs. No s&amp;eacute; si hay programas como &amp;eacute;ste en Oracle/Sun, IBM. En Argentina, la empresa que m&amp;aacute;s se ha preocupado (con altibajos, hay que reconocer) ha sido Microsoft. Recuerdo los tiempos de Sun lanzando Java por estos lares, en los noventa. Estaba m&amp;aacute;s preocupada por captar periodistas que a programadores. Si alguna vez me invitaron a una charla en los noventa, fue porque escrib&amp;iacute;a para una revista, sino, ni enterados la gente de Sun de que hay programadores de este lado del ecuador.&lt;/p&gt;
&lt;p&gt;Recuerdo mis primeros contactos con la tecnolog&amp;iacute;a Microsoft, al leer la Dr.Dobb&amp;rsquo;s Journal, donde se comentaban algunos productos.&amp;nbsp;&amp;iquest;Recuerdan Lattice C? Microsoft lo compr&amp;oacute; para ser su primer Microsoft C. &amp;iquest;Alguien recuerda el Lisp de Microsoft? Creo que se lo hab&amp;iacute;an comprado a una c&amp;iacute;a de Haway. Conoc&amp;iacute; m&amp;aacute;s de la historia de esos tiempos en varios libros; en especial,&amp;nbsp;recuerdo &amp;ldquo;&lt;a target="_blank" href="http://www.amazon.com/Fire-Valley-Making-Personal-Computer/dp/0071358927"&gt;Fire in the Valley&lt;/a&gt;&amp;rdquo;. Tambi&amp;eacute;n ah&amp;iacute; aprend&amp;iacute; de Apple, MITS y dem&amp;aacute;s pioneros en la microcomputaci&amp;oacute;n. En esos tiempos, hab&amp;iacute;a multitud de &amp;ldquo;computadoras personales&amp;rdquo;,&amp;nbsp;con distintos sistemas operativos y lenguajes. En muchas de ellas, Microsoft ten&amp;iacute;a software para ofrecer. Pero todos conocemos que el mercado despeg&amp;oacute; con la llegada de la IBM PC. Recuerdo que para editar con el edlin, booteaba con un diskette, lo retiraba, y pon&amp;iacute;a el segundo, porque ah&amp;iacute; estaba el editor de l&amp;iacute;nea. Como dir&amp;iacute;a Olmedo: &amp;ldquo;&lt;a target="_blank" href="http://www.youtube.com/watch?v=y3RgDknasAs"&gt;Eramos tan pobres&amp;hellip;.&lt;/a&gt; &amp;quot; :-). Si bien lleg&amp;oacute; Apple a mi pa&amp;iacute;s, Argentina, en aquellos a&amp;ntilde;os hab&amp;iacute;a que ser descendiente directo de los que desembarcaron en el Mayflower para poder acceder al programa de desarrollo de aplicaciones de la empresa de la manzanita. Algunos detalles m&amp;aacute;s de esos tiempos, en &lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="http://msmvps.com/blogs/lopez/archive/2008/12/31/treinta-a-241-os-en-desarrollo-de-software.aspx"&gt;Treinta a&amp;ntilde;os en desarrollo de software&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Creo que, como entonces, vivimos tiempos fascinantes en el tema de desarrollo de software. Me gustar&amp;iacute;a escribir ac&amp;aacute; algunos puntos a estudiar, a seguir de cerca, en estos a&amp;ntilde;os que se vienen (espero que para m&amp;iacute;, sean otros treinta a&amp;ntilde;os&amp;hellip; :-)&lt;/p&gt;
&lt;p&gt;Primero, quiero destacar la existencia de dos plataformas de desarrollo: &lt;strong&gt;Java y .NET&lt;/strong&gt;. Entiendo por plataforma de desarrollo a lenguaje(s), librer&amp;iacute;a de clases extensa, soporte de desarrollo de distinto tipos de aplicaciones (desde consola a web a distribuidas). En el 95, comenc&amp;eacute; a conocer Java, y desde entonces, me ha parecido una de las mejores cosas que ha pasado en la historia del desarrollo de software. Con todas las cr&amp;iacute;ticas que se le pueden hacer (EJB una terrible cosa que a&amp;uacute;n me d&amp;aacute; escalofr&amp;iacute;os (antes de acostarme, veo abajo de mi cama a ver si hay alg&amp;uacute;n Entity Bean escondido), Sun como karma, empresa que no supo mover a la comunidad de desarrollo, que en muchos casos se tuvo que arreglar sola (Hibernate como ejemplo?)), Java ha sido lo que hizo que las m&amp;aacute;quinas virtuales, clases y objetos, frameworks, threads, serializaci&amp;oacute;n, modelos de dominio, salieran de lo acad&amp;eacute;mico o del nicho, y pasaran a la corriente principal de desarrollo. Desde fines de los noventa, no he pasado casi una semana, sin dar alg&amp;uacute;n curso o charla sobre Java, y tecnolog&amp;iacute;as asociadas. Es un &amp;ldquo;must be know&amp;rdquo; para cualquier desarrollador de software de este milenio.&lt;/p&gt;
&lt;p&gt;Y Microsoft, vi&amp;oacute; la luz, y se reinvent&amp;oacute; a s&amp;iacute; misma: abandon&amp;oacute; VB, VBScript, ASP, C++ con la infame MFC (Microsoft Foundation Classes), ATL, COM (que nunca despeg&amp;oacute; para multiplataforma, como hubiera querido Don Box, y a&amp;uacute;n Miguel de Icaza con el proyecto Bonobo), y cambi&amp;oacute; como empresa, por lo menos en las herramientas de desarrollo. Parec&amp;iacute;a como si hubiera hecho todo por otra empresa: no m&amp;aacute;s COM como tecnolog&amp;iacute;a&amp;nbsp;necesaria; ten&amp;iacute;amos al fin una m&amp;aacute;quina virtual (un empleado de Microsoft morir&amp;aacute; en la tortura antes de llamar &amp;ldquo;m&amp;aacute;quina virtual&amp;rdquo; al CLR, pero, es lo que es.. :-); pl&amp;eacute;tora de&amp;nbsp;lenguajes nuevos, totalmente montados sobre esa m&amp;aacute;quina virtual. Realmente, es como si hubiera habido otra empresa que cre&amp;oacute; todo eso. Un gran movimiento por parte de Microsoft, que ha sabido adaptarse a los tiempos que le tocan: como ejemplo, recuerden el giro a Internet que di&amp;oacute; la empresa, a finales del 95.&lt;/p&gt;
&lt;p&gt;As&amp;iacute; que tenemos dos temas para seguir con atenci&amp;oacute;n: Java y .NET.&lt;/p&gt;
&lt;p&gt;Otros temas: el desarrollo de aplicaciones, &amp;iquest;d&amp;oacute;nde va? Veo que sigue habiendo aplicaciones de escritorio. Pero preveo que la lucha y la innovaci&amp;oacute;n vendr&amp;aacute;n en otras &amp;aacute;reas (enlaces al final):&lt;/p&gt;
&lt;p&gt;- &lt;strong&gt;Aplicaciones Web&lt;/strong&gt;: dentro de la empresa, los sistemas de gesti&amp;oacute;n ser&amp;aacute;n migrados a todo web. Si bien la interfaz web no es la mejor, la aparici&amp;oacute;n de Ajax, librer&amp;iacute;as maduras de Javascript, tecnolog&amp;iacute;as en el servidor (ASP.NET, ASP.NET MVC, veremos hacia donde va Java, luego de no haberse adoptado JSF por todo el mundo, Ruby y Python con desarrollo web), hoy no es descabellado ver cada vez m&amp;aacute;s aplicaciones internas, expuestas en el browser.&lt;/p&gt;
&lt;p&gt;- &lt;strong&gt;Rich Internet Applications&lt;/strong&gt;: usar JavaFX, Silverlight, Air, o lo que aparezca. Pero crear aplicaciones, que mediante alg&amp;uacute;n plugin liviano en el cliente, permitan tener la experiencia de usuario del tipo de aplicaciones locales que tenemos ahora.&lt;/p&gt;
&lt;p&gt;- &lt;strong&gt;Software as a Service&lt;/strong&gt;, tanto aplicaciones web (Google Apps) como RIA, el software de gesti&amp;oacute;n y otros tipos, que hoy consumimos localmente, veo que estar&amp;aacute; cada vez m&amp;aacute;s ofertado directamente en la web. Habr&amp;aacute; que ver quienes ser&amp;aacute;n el target: &amp;iquest;las peque&amp;ntilde;as empresas que no tienen un equipo de IT? &amp;iquest;las medianas y grandes, que est&amp;aacute;n cansadas de soportar un equipo de IT y desarrollo semi a a medida?&lt;/p&gt;
&lt;p&gt;- &lt;strong&gt;Desarrollos Web2.0&lt;/strong&gt;: la interconexi&amp;oacute;n de aplicaciones mediante protocolos livianos (desde REST hasta cualquier otra cosa, olvidando los pesados Web Services, especificaci&amp;oacute;n que veo que se encamina a la over-complexity), modelos pubsub montados sobre Twitter o similares, la aparici&amp;oacute;n de Service Bus online.&lt;/p&gt;
&lt;p&gt;- &lt;strong&gt;Cloud computing&lt;/strong&gt;: lo veo de dos formas: como una forma de virtualizaci&amp;oacute;n as a service, y como una forma de aplicaci&amp;oacute;n escalable hacia afuera. La primera ser&amp;aacute; m&amp;aacute;s f&amp;aacute;cil de programar (es como venimos hasta ahora, pero &amp;ldquo;hosteando&amp;rdquo; en otro lado). Nos ahorramos el setup de la m&amp;aacute;quina, licencias, mantenimiento del equipo. Lo de escalable hacia afuera, m&amp;aacute;s cercano a la idea de &amp;ldquo;cloud&amp;rdquo;, ejecutando en varias m&amp;aacute;quinas, habr&amp;aacute; que estudiar cu&amp;aacute;n de dif&amp;iacute;cil o f&amp;aacute;cil es el cambio de modelo de programaci&amp;oacute;n. Ejemplo: sharding de base de datos, &amp;iquest;ser&amp;aacute; lo suficientemente transparente para como venimos programando?&lt;/p&gt;
&lt;p&gt;- &lt;strong&gt;Mobile&lt;/strong&gt;: o deber&amp;iacute;a llamarlo, la aparici&amp;oacute;n del software en m&amp;uacute;ltiples dispositivos. Esto es una rama que tenemos que estar atentos. La industria de desarrollo est&amp;aacute; por dar un salto, o ya lo est&amp;aacute; dando: tal vez, el mayor desde la aparici&amp;oacute;n de la computadora personal. La cabeza de playa son los tel&amp;eacute;fonos m&amp;oacute;viles. Pero lo que veo es: sistemas operativos para peque&amp;ntilde;os dispositivos (Android, Windows Mobile) con soporte de desarrollo (Android SDK, .NET Compact Framework), que har&amp;aacute;n que podamos escribir software para casi cualquier cosa, cualquier &amp;ldquo;widget&amp;rdquo; que tengamos (tel&amp;eacute;fonos personales, otros dispositivos, aparatos inteligentes), comunicados por Internet. La convergencia de: dispositivos inteligentes, Internet, herramientas de desarrollo maduras, es &amp;ldquo;the next big frontier&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;- &lt;strong&gt;Lenguajes din&amp;aacute;micos&lt;/strong&gt;: podr&amp;aacute; haber lenguajes aislados (como los originales Ruby y Python) pero veo que cada vez m&amp;aacute;s se montar&amp;aacute;n sobre las dos plataformas, .NET y/o Java. Veremos que pasa con esto: lo que veo, es que tienen comunidades fuertes, que impulsan nuevas cosas, nuevas ideas (o reimplementaciones frescas de otras ideas), que en otros ecosistemas m&amp;aacute;s maduros es dif&amp;iacute;cil de que prendan. Recordemos Ruby On Rails como un ejemplo.&lt;/p&gt;
&lt;p&gt;- &lt;strong&gt;Web Sem&amp;aacute;ntica&lt;/strong&gt;: ah&amp;iacute; afuera hay un mundo de informaci&amp;oacute;n, que por primera vez est&amp;aacute; disponible, no s&amp;oacute;lo para seres humanos, sino para nuestras aplicaciones. La aparici&amp;oacute;n de formas de aprovechar inteligentemente esta monta&amp;ntilde;a(cordillera dir&amp;iacute;a) de informaci&amp;oacute;n, es un camino que veremos donde llega. Las iniciativas de web sem&amp;aacute;ntica son lo m&amp;aacute;s promisorio. Pero tambi&amp;eacute;n puede que &amp;ldquo;la liebre salte por otro lado&amp;rdquo;: desarrollos aislados, que encuentren una forma de comunicarse o de aprovechar lo existente.&lt;/p&gt;
&lt;p&gt;- &lt;strong&gt;Aplicaciones distribuidas&lt;/strong&gt;: los que leen mi blog (yo, y mi t&amp;iacute;a Carlota), saben de mi inter&amp;eacute;s en aplicaciones distribuidas. Habr&amp;aacute; que seguir de cerca el tema message passing, o el m&amp;aacute;s prometedor y flexible, agentes. Multithreading, multicore, son simplemente una antesala a Multimachine. Ese es el camino a al escalabilidad, y superar el bloque de la Ley de Moore: multicore est&amp;aacute; bien, pero multimachine is the solution (preg&amp;uacute;ntele a Google). Sharding de base de datos, escalabilidad, datos y objetos en memoria distribuida en m&amp;aacute;quinas (m&amp;aacute;s barata y r&amp;aacute;pida que los discos).&lt;/p&gt;
&lt;p&gt;- &lt;strong&gt;Memoria&lt;/strong&gt;: El &amp;uacute;ltimo p&amp;aacute;rrafo me trae a cuento esto que siempre nombro: el uso intensivo de memoria. La memoria cada vez es m&amp;aacute;s barata, y m&amp;aacute;s accesible. Pensemos en qu&amp;eacute; tipo de aplicaciones podemos lograr. Me imagino una base de objetos o de datos, totalmente en memoria, en m&amp;aacute;quinas distribuidas, donde el file system sea solamente otra forma de backup.&lt;/p&gt;
&lt;p&gt;- &lt;strong&gt;Concurrencia y Paralelismo&lt;/strong&gt;: un tema a estudiar. Vean lo que va surgiendo con Clojure, Software Transactional Memory, hasta NetLogo. Ver&amp;iacute;a de cerca paralelismo distribuido, como MapReduce, High Performance Computing, y alrededores.&lt;/p&gt;
&lt;p&gt;- &lt;strong&gt;Lenguajes funcionales&lt;/strong&gt;: recuerdo APL, pero no con cari&amp;ntilde;o. Pero vean el surgimiento de Erlang, la forma en que se us&amp;oacute; para el desarrollo de aplicaciones, el &amp;ldquo;revival&amp;rdquo; de Lisp con Clojure y c&amp;iacute;a, F# por parte de Microsoft, Haskell, algo mixto con Scala en Java. Sumar&amp;iacute;a a los declarativos, como Prolog. &amp;iquest;Ser&amp;aacute; el siglo del lambda? Para m&amp;iacute;, es hermoso que esos temas vuelvan a estar en el tapete. Todo desarrollador de software deber&amp;iacute;a sumergirse en estos temas, en lo que podr&amp;iacute;a llamar, los lenguajes de los dioses.&lt;/p&gt;
&lt;p&gt;- &lt;strong&gt;Modelos de aplicaciones&lt;/strong&gt;: las aplicaciones cada vez son m&amp;aacute;s complejas. Encarar el desarrollo basado pr&amp;aacute;cticamente en lenguajes de tercera generaci&amp;oacute;n, sin haber elevado el nivel de abstracci&amp;oacute;n, con tecnolog&amp;iacute;as de base que van cambiando a&amp;ntilde;o a a&amp;ntilde;o, mes a mes, es un camino lleno de piedras y espinas. Yo apuesto a la aparici&amp;oacute;n de modelos, Domain Specific Models, Domain Specific Languages, herramientas relacionadas (el camino m&amp;aacute;s cercano es la generaci&amp;oacute;n de c&amp;oacute;digo), para hacer m&amp;aacute;s f&amp;aacute;cil el domino de la complejidad y el cambio.&lt;/p&gt;
&lt;p&gt;- &lt;strong&gt;Desarrollo &amp;aacute;gil&lt;/strong&gt;: en los tiempos que corren, el trabajo en equipo es indispensable. La cantidad de tecnolog&amp;iacute;as, detalles, y requerimientos que precisa un software m&amp;aacute;s o menos normal, implican que va desapareciendo el desarrollador de garage, en solitario. Las limitaciones de desarrollo en cascadas, el cambio en los requerimientos, porque hasta el ambiente externo cambia, &amp;eacute;xitos cosechados por el programaci&amp;oacute;n extrema y disciplinas relacionadas, todo apunta a que tenemos que ir adoptando m&amp;aacute;s y m&amp;aacute;s el modo &amp;aacute;gil de construir software. &lt;/p&gt;
&lt;p&gt;- &lt;strong&gt;Inteligencia Artificial&lt;/strong&gt;: como dec&amp;iacute;a m&amp;aacute;s arriba, es tiempo de que agentes. Incorporar l&amp;oacute;gica, razonamiento, modelos del mundo, inferencias, objetivos, ontolog&amp;iacute;as, algoritmos gen&amp;eacute;ticos, redes neuronales, en todo lo que se viene.&lt;/p&gt;
&lt;p&gt;(ahora entender&amp;aacute;n un poco m&amp;aacute;s, a que van los c&amp;oacute;digos de c&amp;oacute;digo abierto que publico, como una especie de ejercicio personal para entrenarme en varios de los puntos de arriba).&lt;/p&gt;
&lt;p&gt;No he dejado enlaces en el texto, pero muchos de estos temas, como ver&amp;aacute;n, me interesan desde hace un tiempo, y estos son enlaces que he coleccionado:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://delicious.com/ajlopez/distributedcomputing"&gt;http://delicious.com/ajlopez/distributedcomputing&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/artificialintelligence"&gt;http://delicious.com/ajlopez/artificialintelligence&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/agile"&gt;http://delicious.com/ajlopez/agile&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/codegeneration"&gt;http://delicious.com/ajlopez/codegeneration&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/dsl"&gt;http://delicious.com/ajlopez/dsl&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/dsm"&gt;http://delicious.com/ajlopez/dsm&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/functionalprogramming"&gt;http://delicious.com/ajlopez/functionalprogramming&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/cloudcomputing"&gt;http://delicious.com/ajlopez/cloudcomputing&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/mobile"&gt;http://delicious.com/ajlopez/mobile&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/saas"&gt;http://delicious.com/ajlopez/saas&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/ria"&gt;http://delicious.com/ajlopez/ria&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/dynamiclanguages"&gt;http://delicious.com/ajlopez/dynamiclanguages&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/semanticweb"&gt;http://delicious.com/ajlopez/semanticweb&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/hadoop"&gt;http://delicious.com/ajlopez/hadoop&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/lisp"&gt;http://delicious.com/ajlopez/lisp&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/clojure"&gt;http://delicious.com/ajlopez/clojure&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/messaging"&gt;http://delicious.com/ajlopez/messaging&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/esb"&gt;http://delicious.com/ajlopez/esb&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/scala"&gt;http://delicious.com/ajlopez/scala&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/concurrency"&gt;http://delicious.com/ajlopez/concurrency&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/parallel"&gt;http://delicious.com/ajlopez/parallel&lt;/a&gt; &lt;br /&gt;&lt;a href="http://delicious.com/ajlopez/stm"&gt;http://delicious.com/ajlopez/stm&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Tendr&amp;iacute;a m&amp;aacute;s para comentar, pero es hora de tomar mi medicaci&amp;oacute;n&amp;hellip;:-)&amp;hellip; S&amp;iacute;, ya s&amp;eacute;, es la pastilla roja, no la verde.&lt;/p&gt;
&lt;p&gt;Me parece suficiente para este post, &amp;iquest;no les parece?&lt;/p&gt;
&lt;p&gt;Lo que quer&amp;iacute;a trasmitirles, es que aprovechen este tiempo. Hace treinta a&amp;ntilde;os, yo no ten&amp;iacute;a todo esto disponible: comunicaci&amp;oacute;n instant&amp;aacute;nea, acceso a recursos a un costo razonable, contacto con la comunidad, herramientas maduras, ideas bullendo. Y ahora est&amp;aacute; todo ac&amp;aacute;, servido para la pr&amp;oacute;xima revoluci&amp;oacute;n.&lt;/p&gt;
&lt;p&gt;Muchas de estas ideas, las comento en mis cursos, aunque no s&amp;eacute; cu&amp;aacute;n bien pude trasmitirlas, o si se entendi&amp;oacute; algo del mensaje. Siempre veo que la gente pide cursos de un tema en particular, me gustar&amp;iacute;a en este post (como en otros anteriores) haber dado una visi&amp;oacute;n m&amp;aacute;s amplia de lo que hay en el mundo del desarrollo de software, hoy, y que sirva de ensayo futurol&amp;oacute;gico, sin mayores pretensiones, de lo que puede venir como importante.&lt;/p&gt;
&lt;p&gt;De alguna forma, en estos a&amp;ntilde;os, se decidir&amp;aacute; el tipo de software que se ejecutar&amp;aacute; en las pr&amp;oacute;ximas dos d&amp;eacute;cadas. Y como en las anteriores, el software seguir&amp;aacute; cambiando la historia humana.&lt;/p&gt;
&lt;p&gt;Pero el software no se hace solo. Como dec&amp;iacute;a Alan Kay: &amp;ldquo;la mejor forma de predecir el futuro, es invent&amp;aacute;ndolo&amp;rdquo;. Sean parte de todo esto.&lt;/p&gt;
&lt;p&gt;Nos leemos!&lt;/p&gt;
&lt;p&gt;Angel &amp;ldquo;Java&amp;rdquo; Lopez &lt;br /&gt;&lt;a href="http://www.ajlopez.com"&gt;http://www.ajlopez.com&lt;/a&gt; &lt;br /&gt;&lt;a href="http://twitter.com/ajlopez"&gt;http://twitter.com/ajlopez&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1731375" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/lopez/archive/tags/.NET/default.aspx">.NET</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Java/default.aspx">Java</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Desarrollo+de+Software/default.aspx">Desarrollo de Software</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Historia+de+la+Computaci_26002300_243_3B00_n/default.aspx">Historia de la Computaci&amp;#243;n</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Desarrollo+Agil/default.aspx">Desarrollo Agil</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Desarrollo+Web/default.aspx">Desarrollo Web</category></item><item><title>La madre de todas las demos, de nuevo</title><link>http://msmvps.com/blogs/lopez/archive/2009/09/09/la-madre-de-todas-las-demos-de-nuevo.aspx</link><pubDate>Wed, 09 Sep 2009 09:21:21 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1721873</guid><dc:creator>lopez</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/lopez/rsscomments.aspx?PostID=1721873</wfw:commentRss><comments>http://msmvps.com/blogs/lopez/archive/2009/09/09/la-madre-de-todas-las-demos-de-nuevo.aspx#comments</comments><description>&lt;p&gt;El año pasado ya había escrito sobre el tema:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://msmvps.com/blogs/lopez/archive/2008/06/02/la-madre-de-todas-las-demos.aspx" target="_blank"&gt;La madre de todas las demos&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;La historia es relatada en más detalle en la entrada de Wikipedia:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://en.wikipedia.org/wiki/The_Mother_of_All_Demos"&gt;http://en.wikipedia.org/wiki/The_Mother_of_All_Demos&lt;/a&gt;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;b&gt;The Mother of All Demos&lt;/b&gt; is a name given retrospectively to &lt;a href="http://en.wikipedia.org/wiki/Douglas_Engelbart"&gt;Douglas Engelbart&amp;#39;s&lt;/a&gt; December 9, 1968 demonstration at the Fall Joint Computer Conference (FJCC) at the Convention Center in &lt;a href="http://en.wikipedia.org/wiki/San_Francisco"&gt;San Francisco&lt;/a&gt;, in which a number of experimental technologies that have since become commonplace were presented. The demo featured the first &lt;a href="http://en.wikipedia.org/wiki/Computer_mouse"&gt;computer mouse&lt;/a&gt; the public had ever seen, as well as introducing interactive text, &lt;a href="http://en.wikipedia.org/wiki/Video_conference"&gt;video conferencing&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Teleconference"&gt;teleconferencing&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Email"&gt;email&lt;/a&gt;, and &lt;a href="http://en.wikipedia.org/wiki/Hypertext"&gt;hypertext&lt;/a&gt;.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;La semana pasada, en una lista de correo privada, recibí esta lista de videos. Veánlos, más de 40 años atrás, ya se demostraba muchas de las tecnologías que hoy tenemos. Según la info del usuario de youtube &lt;a href="http://www.youtube.com/user/bigkif"&gt;bigkif&lt;/a&gt;:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;On December 9, 1968, Douglas C. Engelbart and the group of 17 researchers working with him in the Augmentation Research Center at Stanford Research Institute in Menlo Park, CA, presented a 90-minute live public demonstration of the online system, NLS, they had been working on since 1962. The public presentation was a session in the of the Fall Joint Computer Conference held at the Convention Center in San Francisco, and it was attended by about 1,000 computer professionals. This was the public debut of the computer mouse.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Pero no fue solamente el mouse:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;But the mouse was only one of many innovations demonstrated that day, including hypertext, object addressing and dynamic file linking, as well as shared-screen collaboration involving two persons at different sites communicating over a network with audio and video interface.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;  &lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;  &lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;  &lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;  &lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;  &lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;  &lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;  &lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;  &lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;  &lt;p&gt;Nos leemos!&lt;/p&gt;  &lt;p&gt;Angel “Java” Lopez    &lt;br /&gt;&lt;a href="http://www.ajlopez.com"&gt;http://www.ajlopez.com&lt;/a&gt;     &lt;br /&gt;&lt;a href="http://twitter.com/ajlopez"&gt;http://twitter.com/ajlopez&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1721873" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/lopez/archive/tags/interfaces/default.aspx">interfaces</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Hardware/default.aspx">Hardware</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Historia+de+la+Computaci_26002300_243_3B00_n/default.aspx">Historia de la Computaci&amp;#243;n</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Video/default.aspx">Video</category></item><item><title>El programador humilde</title><link>http://msmvps.com/blogs/lopez/archive/2009/05/26/el-programador-humilde.aspx</link><pubDate>Tue, 26 May 2009 11:03:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1693170</guid><dc:creator>lopez</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/lopez/rsscomments.aspx?PostID=1693170</wfw:commentRss><comments>http://msmvps.com/blogs/lopez/archive/2009/05/26/el-programador-humilde.aspx#comments</comments><description>&lt;p&gt;Leo hoy este fragmento en el post&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.codinghorror.com/blog/archives/000051.html"&gt;Why I&amp;#39;m The Best Programmer In The World*&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;At the 1972 Turing Award lecture, Edsger Dijkstra delivered &lt;a href="http://c2.com/cgi/wiki?TheHumbleProgrammer"&gt;a paper titled �The Humble Programmer.�&lt;/a&gt; He argued that most of programming is an attempt to compensate for the strictly limited size of our skulls. The people who are best at programming are the people who realize how small their brains are. They are humble. &lt;b&gt;The people who are the worst at programming are the people who refuse to accept the fact that their brains aren�t equal to the task. Their egos keep them from being great programmers. The more you learn to compensate for your small brain, the better a programmer you�ll be. The more humble you are, the faster you�ll improve.&lt;/b&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Les recomiendo ese &amp;quot;paper&amp;rdquo; de E.W.Dijkstra:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.cs.utexas.edu/users/EWD/ewd03xx/EWD340.PDF" title="EWD340.PDF"&gt;EWD340.PDF&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Algunos pasajes&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;hellip;. in 1957, I married and Dutch marriage rites require you to state your profession and I stated that I was a programmer. But the municipal authorities of the town of Amsterdam did not accept it on the grounds that there was no such profession. And, believe it or not, but under the heading &amp;quot;profession&amp;quot; my marriage act shows the ridiculous entry &amp;quot;theoretical physicist&amp;quot;!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Era lo que estubia Dijkstra antes de convertirse en el primer programador &lt;span style="text-decoration:line-through;"&gt;alem&amp;aacute;n&lt;/span&gt; holand&amp;eacute;s.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;there is yet another circumstance that had a profound influence on the programmer&amp;#39;s attitude to his work: on the one hand, besides being unreliable, his machine was usually too slow and its memory was usually too small, i.e. he was faced with a pinching shoe, while on the other hand its usually somewhat *** order code would cater for the most unexpected constructions. And in those days many a clever programmer derived an immense intellectual satisfaction from the cunning tricks by means of which he contrived to squeeze the impossible into the constraints of his equipment.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Algo que Dijkstra ataca en el resto del paper.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;In the beginning there was the EDSAC in Cambridge, England, and I think it quite impressive that right from the start the notion of a subroutine library played a central role in the design of that machine and of the way in which it should be used. It is now nearly 25 years later and the computing scene has changed dramatically, but the notion of basic software is still with us, and the notion of the closed subroutine is still one of the key concepts in programming. We should recognise the closed subroutines as one of the greatest software inventions; it has survived three generations of computers and it will survive a few more, because it caters for the implementation of one of our basic patterns of abstraction.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Nadie sab&amp;iacute;a bien que se requer&amp;iacute;a de un lenguaje de programaci&amp;oacute;n. Lo explica Dijsktra con un caso:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;The second major development on the software scene that I would like to mention is the birth of FORTRAN. At that time this was a project of great temerity and the people responsible for it deserve our great admiration. It would be absolutely unfair to blame them for shortcomings that only became apparent after a decade or so of extensive usage: groups with a successful look-ahead of ten years are quite rare! In retrospect we must rate FORTRAN as a successful coding technique, but with very few effective aids to conception, aids which are now so urgently needed that time has come to consider it out of date. The sooner we can forget that FORTRAN has ever existed, the better, for as a vehicle of thought it is no longer adequate: it wastes our brainpower, is too risky and therefore too expensive to use. FORTRAN&amp;#39;s tragic fate has been its wide acceptance, mentally chaining thousands and thousands of programmers to our past mistakes. I pray daily that more of my fellow-programmers may find the means of freeing themselves from the curse of compatibility.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Pero hab&amp;iacute;a joyitas apareciendo:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;The third project I would not like to leave unmentioned is LISP, a fascinating enterprise of a completely different nature. With a few very basic principles at its foundation, it has shown a remarkable stability. Besides that, LISP has been the carrier for a considerable number of in a sense our most sophisticated computer applications. LISP has jokingly been described as &amp;quot;the most intelligent way to misuse a computer&amp;quot;. I think that description a great compliment because it transmits the full flavour of liberation: it has assisted a number of our most gifted fellow humans in thinking previously impossible thoughts.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;La aparici&amp;oacute;n de un lenguaje documentado, con conducta definida, y hasta manual, la nota con Algol (recuerdo mi paso por Algol-W):&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;The fourth project to be mentioned is ALGOL 60. While up to the present day FORTRAN programmers still tend to understand their programming language in terms of the specific implementation they are working with &amp;mdash;hence the prevalence of octal and hexadecimal dumps&amp;mdash;, while the definition of LISP is still a curious mixture of what the language means and how the mechanism works, the famous Report on the Algorithmic Language ALGOL 60 is the fruit of a genuine effort to carry abstraction a vital step further and to define a programming language in an implementation-independent way.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Pero tambi&amp;eacute;n sufr&amp;iacute; al PL/I, que me pareci&amp;oacute; en su tiempo que se iba de rumbo, y as&amp;iacute; lo demostr&amp;oacute; la historia:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Using PL/1 must be like flying a plane with 7000 buttons, switches and handles to manipulate in the cockpit. I absolutely fail to see how we can keep our growing programs firmly within our intellectual grip when by its sheer baroqueness the programming language &amp;mdash;our basic tool, mind you!&amp;mdash; already escapes our intellectual control.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;M&amp;aacute;s fragmentos:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;the programmer only needs to consider intellectually manageable programs, the alternatives he is choosing between are much, much easier to cope with&lt;/p&gt;
&lt;p&gt;as soon as we have decided to restrict ourselves to the subset of the intellectually manageable programs, we have achieved, once and for all, a drastic reduction of the solution space to be considered&lt;/p&gt;
&lt;p&gt;Today a usual technique is to make a program and then to test it. But: program testing can be a very effective way to show the presence of bugs, but is hopelessly inadequate for showing their absence. The only effective way to raise the confidence level of a program significantly is to give a convincing proof of its correctness.&lt;/p&gt;
&lt;p&gt;&amp;hellip;&lt;/p&gt;
&lt;p&gt;We all know that the only mental tool by means of which a very finite piece of reasoning can cover a myriad cases is called &amp;quot;abstraction&amp;quot;; as a result the effective exploitation of his powers of abstraction must be regarded as one of the most vital activities of a competent programmer. In this connection it might be worth-while to point out that the purpose of abstracting is &lt;span style="text-decoration:underline;"&gt;not&lt;/span&gt; to be vague, but to create a new semantic level in which one can be absolutely precise.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;hellip;&lt;/p&gt;
&lt;p&gt;the tools we are trying to use and the language or notation we are using to express or record our thoughts, are the major factors determining what we can think or express at all! The analysis of the influence that programming languages have on the thinking habits of its users, and the recognition that, by now, brainpower is by far our scarcest resource, they together give us a new collection of yardsticks for comparing the relative merits of various programming languages.&lt;/p&gt;
&lt;p&gt;&amp;hellip;&lt;/p&gt;
&lt;p&gt;I could even go one step further and make an article of faith out of it, viz. that the only problems we can really solve in a satisfactory manner are those that finally admit a nicely factored solution. At first sight this view of human limitations may strike you as a rather depressing view of our predicament, but I don&amp;#39;t feel it that way, on the contrary! The best way to learn to live with our limitations is to know them.&lt;/p&gt;
&lt;p&gt;&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Ultima frase&lt;/p&gt;
&lt;p&gt;We shall do a much better programming job, provided that we approach the task with a full appreciation of its tremendous difficulty, provided that we stick to modest and elegant programming languages, provided that we respect the intrinsic limitations of the human mind and approach the task as Very Humble Programmers.&lt;/p&gt;
&lt;p&gt;Nos leemos!&lt;/p&gt;
&lt;p&gt;Angel &amp;ldquo;Java&amp;rdquo; Lopez &lt;br /&gt;&lt;a href="http://www.ajlopez.com"&gt;http://www.ajlopez.com&lt;/a&gt; &lt;br /&gt;&lt;a href="http://twitter.com/ajlopez"&gt;http://twitter.com/ajlopez&lt;/a&gt; &lt;br /&gt;Primer post desde nueva notebook, gracias a &lt;a target="_blank" href="http://www.salias.com.ar/"&gt;Martin Salias&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1693170" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/lopez/archive/tags/Desarrollo+de+Software/default.aspx">Desarrollo de Software</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Historia+de+la+Computaci_26002300_243_3B00_n/default.aspx">Historia de la Computaci&amp;#243;n</category></item><item><title>El origen de mi nickname</title><link>http://msmvps.com/blogs/lopez/archive/2008/07/04/el-origen-de-mi-nickname.aspx</link><pubDate>Fri, 04 Jul 2008 19:13:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1639393</guid><dc:creator>lopez</dc:creator><slash:comments>12</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/lopez/rsscomments.aspx?PostID=1639393</wfw:commentRss><comments>http://msmvps.com/blogs/lopez/archive/2008/07/04/el-origen-de-mi-nickname.aspx#comments</comments><description>&lt;p&gt;&lt;img src="http://www.ajlopez.net/images/ajlopez2.gif" align="left" alt="" /&gt; Este año cumplo treinta años con el desarrollo de software, así espero me permitan algunos posts nostálgicos, y algo personales. Hoy me da pie a escribir este post, una pregunta que me hicieron: ¿cómo surgió lo de Angel &amp;quot;Java&amp;quot; Lopez? ¿y por qué &amp;quot;ajlopez&amp;quot;?&lt;/p&gt; &lt;p&gt;Es simple. En los noventa, yo no tenía teléfono (en general no lo uso) en casa. Pero veía que cada vez más aparecían BBS. Mi primera visión de un modem fue en alguna Byte de los ochenta, y en el clásico film &amp;quot;Juegos de Guerra&amp;quot; (que habré visto varios veces en el mismo día). Así que comencé a comprar Boardwatch, contraté un teléfono para mi cubil, alguna placa o algo así para mi PC, y me sumergí en el mundo de los BBS. Recuerdo la FidoNet de aquel entonces. ¿Recuerdan los ASCII art de presentación? ¿Y el ruido del modem conectando? Eramos tan pobres... .;-)&lt;/p&gt; &lt;p&gt;El BBS más popular de aquel entonces para el tema de programación, por aquí en Argentina,&amp;nbsp;resultó ser el de MP Ediciones. ¿Cómo se llamaba? ¿Feedback? Ya no recuerdo. La cuestión que para inscribirme tuve que ir a la editorial misma, en la calle Moreno, acá en Buenos Aires. Me preguntaron el nombre completo, y en aquel entonces, habituaban a poner como nick las iniciales y el apellido del usuario. Así quedó mi código de usuario: ajlopez.&lt;/p&gt; &lt;p&gt;En ese BBS, en 95/96, participaba yo en foros de programación, en general. Yo estaba viendo y estudiando Java, que acababa de aparecer. Para mí, Java fue un avance: un lenguaje que llevaba garbage collector y una librería de clases para las masas. Le faltaba un golpe de horno (AWT era para mí Asqueroso Windows Toolkit...;-), pero pintaba interesante.&lt;/p&gt; &lt;p&gt;De tanto predicar sobre Java en el BBS de MP Ediciones, y al ser firmar como ajlopez, Angel J Lopez, el bueno de Sebastián Barraza, otro usuario activo del BBS, me bautizó Angel &amp;quot;Java&amp;quot; Lopez.&lt;/p&gt; &lt;p&gt;De ahí el origen de ese nick más completo.&lt;/p&gt; &lt;p&gt;A partir de la actividad de MP Ediciones, se formó el Club Byte, que en algun momento se escindió, y se formó el Microsoft User Group, que ya va para los 13 años de existencia, creo.&lt;/p&gt; &lt;p&gt;¿Tienen algún recuerdo de esos tiempos?&lt;/p&gt; &lt;p&gt;Nos leemos!&lt;/p&gt; &lt;p&gt;Angel &amp;quot;Java&amp;quot; Lopez&lt;br /&gt;&lt;a href="http://www.ajlopez.com/"&gt;http://www.ajlopez.com/&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1639393" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/lopez/archive/tags/Desarrollo+de+Software/default.aspx">Desarrollo de Software</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Historia+de+la+Computaci_26002300_243_3B00_n/default.aspx">Historia de la Computaci&amp;#243;n</category></item><item><title>Entrevista a Bill Gates</title><link>http://msmvps.com/blogs/lopez/archive/2008/06/28/entrevista-a-bill-gates.aspx</link><pubDate>Sat, 28 Jun 2008 21:38:44 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1638740</guid><dc:creator>lopez</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/lopez/rsscomments.aspx?PostID=1638740</wfw:commentRss><comments>http://msmvps.com/blogs/lopez/archive/2008/06/28/entrevista-a-bill-gates.aspx#comments</comments><description>&lt;p&gt;Ayer fue el último día de Gates como &amp;quot;full time&amp;quot; en Microsoft. Encontré una lista de videos de una entrevista que le hizo en estos días la BBC en:&lt;/p&gt; &lt;p&gt;&lt;a href="http://msmvps.com/blogs/luisabreu/archive/2008/06/23/how-a-geek-changed-the-world.aspx" target="_blank"&gt;How a geek changed the world&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Veran parte de la historia de MS, la vieja historia de la Altair, cómo Allen viaja a Alburquerque con un intérprete Basic, hecho en Harvard con Gates, sin tener idea de si iba a funcionar en la máquina real. Se mudan ahí (siempre se cuentan historias de Gates visitando el barrio rojo de la ciudad). Veo a Mitch Kapor, a Myriam Lubow, contando cómo confundió a Gates con un intruso en la oficina de Microsoft, no podía creer que fuera el presidente, a Scott Wood, (recién descubro que Marla es Marla Wood ahora), la vuelta a Seattle (Gates viajó en su auto coleccionando multas), el crecimiento del gigante... Encontramos a Steve Ballmer, viejo compañero de noches de poker en los dormitorios de Harvard.&lt;/p&gt; &lt;p&gt;Aparece gente de BurguerMaster, donde varios de Microsoft, incluido Gates, iban a comer hamburguesas&amp;nbsp;(una rutina de manejo de memoria de los primeros Windows se llama así internamente, en honor a este local). Escucharan a Sir Alan Sugar hablando de Gates. Está la aparición de Novell. Está John Batelle describiendo la aparición de la web. Y cómo Microsoft llega tarde a la red, pero luego del memo interno de Gates (1995?) todo comienza a cambiar. Más adelante, Janet Reno comienza el juicio contra el gigante de Microsoft.&lt;/p&gt; &lt;p&gt;Mucho de lo que se muestra, lo viví directamente. Recuerdo haber trabajado con el GWBasic, el Lattice C que compraron, el venerable edlin, el Xenix (antes de MS, trabajé con el CP/M de Kildall, y antes... bueno, eso dará pie a otro post). Recuerdo cuando aparecieron las ventanas, no habia Overlapped (aunque ya estaba la constante definida en los archivos .h). Pero antes, el Multiplan, y el editor de texto que tenían para desplazar a Wordstar.... ooops... ya ni recuerdo el nombre. Pero el Multiplan estaba hecho sobre las interrupciones de DOS, mientras que Lotus trabajaba directamente sobre el BIOS, y la dirección de video 0xb000:0 creo para monocromático, o 0xb800:0 para color (para evitar flicker había que testear una puerta, antes de mandar algo a esa memoria... ;-). No fue lo único que influyó, pero realmente Lotus corría más rápido que el Multiplan.&lt;/p&gt; &lt;p&gt;Excelente documental, acá estan las partes de la entrevista, gracias a Youtube:&lt;/p&gt; &lt;p&gt;&lt;object width="425" height="350"&gt;&lt;param name="movie" value="http://www.youtube.com/v/2gOrWBPt1bA"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/2gOrWBPt1bA" type="application/x-shockwave-flash" width="425" height="350"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt; &lt;p&gt;&lt;object width="425" height="350"&gt;&lt;param name="movie" value="http://www.youtube.com/v/d_LHBfHrWIo"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/d_LHBfHrWIo" type="application/x-shockwave-flash" width="425" height="350"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt; &lt;p&gt;&lt;object width="425" height="350"&gt;&lt;param name="movie" value="http://www.youtube.com/v/krFuJhGRwaw"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/krFuJhGRwaw" type="application/x-shockwave-flash" width="425" height="350"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt; &lt;p&gt;&lt;object width="425" height="350"&gt;&lt;param name="movie" value="http://www.youtube.com/v/rddm3aHdJp8"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/rddm3aHdJp8" type="application/x-shockwave-flash" width="425" height="350"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt; &lt;p&gt;&lt;object width="425" height="350"&gt;&lt;param name="movie" value="http://www.youtube.com/v/5OLgcdgOmsk"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/5OLgcdgOmsk" type="application/x-shockwave-flash" width="425" height="350"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt; &lt;p&gt;&lt;object width="425" height="350"&gt;&lt;param name="movie" value="http://www.youtube.com/v/2GVCCZY6bYA"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/2GVCCZY6bYA" type="application/x-shockwave-flash" width="425" height="350"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt; &lt;p&gt;&lt;object width="425" height="350"&gt;&lt;param name="movie" value="http://www.youtube.com/v/PClVHy03vnA"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/PClVHy03vnA" type="application/x-shockwave-flash" width="425" height="350"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt; &lt;p&gt;Veremos que le depara el futuro a Gates: es una persona inteligente, que sabe cómo tomar decisiones con la información disponible, y llevar adelante lo que decide. Esperemos que despliegue esas habilidades en su nuevo desafío.&lt;/p&gt; &lt;p&gt;Para los nostálgicos, pueden encontrar otras piezas de la historia en&lt;/p&gt; &lt;p&gt;&lt;a title="Los piratas de Silicon Valley" href="https://msmvps.com/blogs/lopez/archive/2007/08/15/los-piratas-de-silicon-valley.aspx"&gt;Los piratas de Silicon Valley&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Gracias al bueno de &lt;a href="http://blogs.southworks.net/ejadib" target="_blank"&gt;Ezequiel Jadib&lt;/a&gt; por el enlace original.&lt;/p&gt; &lt;p&gt;Nos leemos!&lt;/p&gt; &lt;p&gt;Angel &amp;quot;Java&amp;quot; Lopez&lt;br /&gt;&lt;a href="http://www.ajlopez.com/"&gt;http://www.ajlopez.com/&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1638740" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/lopez/archive/tags/Desarrollo+de+Software/default.aspx">Desarrollo de Software</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Historia+de+la+Computaci_26002300_243_3B00_n/default.aspx">Historia de la Computaci&amp;#243;n</category></item><item><title>La historia de Smalltalk</title><link>http://msmvps.com/blogs/lopez/archive/2008/06/26/la-historia-de-smalltalk.aspx</link><pubDate>Thu, 26 Jun 2008 20:12:57 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1638081</guid><dc:creator>lopez</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/lopez/rsscomments.aspx?PostID=1638081</wfw:commentRss><comments>http://msmvps.com/blogs/lopez/archive/2008/06/26/la-historia-de-smalltalk.aspx#comments</comments><description>&lt;p&gt;Ayer comenté un libro de conceptos de programación, de actualidad (ver &lt;a title="Libro Foundation of Programming, listo para bajar" href="http://msmvps.com/blogs/lopez/archive/2008/06/25/libro-foundation-of-programming-listo-para-bajar.aspx"&gt;Libro Foundation of Programming, listo para bajar&lt;/a&gt;). Quisiera hoy comentar un texto, que me parece un &amp;quot;debe ser leído&amp;quot; por todos los que nos dedicamos al desarrollo de software. Es un escrito del bueno de Alan&amp;nbsp;Kay, sobre la historia de Smalltalk:&lt;/p&gt; &lt;p&gt;&lt;a title="Smallhistory.pdf" href="http://www.metaobject.com/papers/Smallhistory.pdf"&gt;Smallhistory.pdf&lt;/a&gt;&lt;/p&gt; &lt;p align="center"&gt;&lt;img src="http://www.ajlopez.com/images/articles/smalltalkhistory.png" alt="" /&gt; &lt;/p&gt; &lt;p&gt;Es un excelente texto para leer, y que influye más allá de simplemente estar interesado en Smalltalk. Es una historia de cómo algunas ideas fueron surgiendo, dentro de la comunidad de desarrollo americana. Cómo la programación a objetos fue surgiendo, y cómo la forma de interactuar con las computadoras actuales fue tomando forma. Hace un tiempo vimos por acá la demo de Douglas Engelbart. De nuevo aparece en esta historia.&lt;/p&gt; &lt;p&gt;Lean, por ejemplo, cómo Kay detecta&amp;nbsp;algunas ideas germinales (datos junto con conducta) en desarrollos de la Fuerza Aerea, que hoy veríamos muy alejados de la OOP. Lean sobre su contacto con Lisp, y con Seymour Papert. Lean sobre los problemas internos de Xerox, la compentencia con DEC, cómo algunas ideas fueron casi fruto de la casualidad, de que un proyecto siguió adelante aunque otros se oponían. Lean sobre Simula, Euler,&amp;nbsp; el IPL predecesor de Lisp. Lean sobre el Sketchpad de Evans (que yo encontré por primera vez en alguna revisión histórica de la Scientific American). Es una lectura, por lo menos para mí, deliciosa.&lt;/p&gt; &lt;p&gt;Kay tiene un idea desde hace años, que comparto: la idea de que la máquina, y la computación en general, nos debe servir para expandir las capacidades humanas. Excelente idea. Es lo que de alguna forma también hoy estamos logrando con Internet. Hoy, ramas del conocimiento y del hacer humano, han sido potenciadas por el software, el hardware y todo lo que ha pasado en nuestra profesión en las últimas décadas. &lt;/p&gt; &lt;p&gt;En mi infancia, se pensaba que los viajes espaciales iban a revolucionar la historia humana. Bueno, eso no ha pasado todavía. Pero de alguna forma producto de la guerra fría, y de la carrera espacial, el desarrollo de la computación (recordemos sus inicios modernos en la segunda guerra, y la aparición de la cibernética impulsada por temas militares) y de Internet misma, es lo que ha provocado un cambio, que poco a poco va alcanzando a gran parte de la humanidad.&lt;/p&gt; &lt;p&gt;Leer la historia de Kay es indispensable para ir entendiendo que ha pasado. Alguien que ha dicho &amp;quot;la mejor forma de dominar el futuro, es inventándolo&amp;quot; (frase aproximada, lean el texto, para ver dónde surgió exactamente).&lt;/p&gt; &lt;p&gt;Nos leemos!&lt;/p&gt; &lt;p&gt;Angel &amp;quot;Java&amp;quot; Lopez&lt;br /&gt;&lt;a href="http://www.ajlopez.com/"&gt;http://www.ajlopez.com/&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1638081" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/lopez/archive/tags/Smalltalk/default.aspx">Smalltalk</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Desarrollo+de+Software/default.aspx">Desarrollo de Software</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Historia+de+la+Computaci_26002300_243_3B00_n/default.aspx">Historia de la Computaci&amp;#243;n</category></item><item><title>La madre de todas las demos</title><link>http://msmvps.com/blogs/lopez/archive/2008/06/02/la-madre-de-todas-las-demos.aspx</link><pubDate>Mon, 02 Jun 2008 09:39:36 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1630157</guid><dc:creator>lopez</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/lopez/rsscomments.aspx?PostID=1630157</wfw:commentRss><comments>http://msmvps.com/blogs/lopez/archive/2008/06/02/la-madre-de-todas-las-demos.aspx#comments</comments><description>&lt;p&gt;Ya que estoy en estos días tratando temas de historia de la computación e interfaces, no quiero olvidarme dela que se ha llamado la madre de todas las demos:&lt;/p&gt; &lt;p&gt;&lt;a title="http://en.wikipedia.org/wiki/The_Mother_of_All_Demos" href="http://en.wikipedia.org/wiki/The_Mother_of_All_Demos"&gt;http://en.wikipedia.org/wiki/The_Mother_of_All_Demos&lt;/a&gt;&lt;/p&gt; &lt;p align="center"&gt;&lt;img src="http://codinginparadise.org/weblog/uploaded_images/engelbart-749273.jpg" alt="" /&gt; &lt;/p&gt; &lt;p&gt;dada en 1968, por &lt;a href="http://en.wikipedia.org/wiki/Douglas_Engelbart" target="_blank"&gt;Douglas Engelbart&lt;/a&gt;, demostrando el primer mouse, pero también mostrando texto interactivo (una novedad para la época), video y tele conferencia, correo electrónico e hipertexto.&lt;/p&gt; &lt;p&gt;Pueden ver un video en:&lt;/p&gt; &lt;p&gt;&lt;a href="http://video.google.com/videoplay?docid=-8734787622017763097&amp;amp;q=engelbart" target="_blank"&gt;Doug Engelbart: The Demo&lt;/a&gt;&lt;/p&gt; &lt;p align="center"&gt;&lt;img src="http://www.ajlopez.com/images/articles/engelbart.png" alt="" /&gt; &amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Estamos en una industria relativamente joven en la historia humana. Mucho de lo demostrado ahí, tardó de 10 a 20 años en convertirse en parte del &amp;quot;mainstream&amp;quot;. Hoy creo que la velocidad de adopción de algo es más rápida, por lo menos en ideas de software, veremos en hardware: tenemos una forma de difusión de ideas más rápido, y aún la aparición de nuevo hardware se acelera ante el potencial mercado que puede alcanzar, prácticamente planetario.&lt;/p&gt; &lt;p&gt;Nos leemos!&lt;/p&gt; &lt;p&gt;Angel &amp;quot;Java&amp;quot; Lopez&lt;br /&gt;&lt;a href="http://www.ajlopez.com/"&gt;http://www.ajlopez.com/&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1630157" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/lopez/archive/tags/Historia+de+la+Computaci_26002300_243_3B00_n/default.aspx">Historia de la Computaci&amp;#243;n</category></item><item><title>Los piratas de Silicon Valley</title><link>http://msmvps.com/blogs/lopez/archive/2007/08/14/los-piratas-de-silicon-valley.aspx</link><pubDate>Tue, 14 Aug 2007 17:27:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1112772</guid><dc:creator>lopez</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/lopez/rsscomments.aspx?PostID=1112772</wfw:commentRss><comments>http://msmvps.com/blogs/lopez/archive/2007/08/14/los-piratas-de-silicon-valley.aspx#comments</comments><description>&lt;p&gt;Al fin est&amp;aacute; disponible la pel&amp;iacute;cula en Internet:&lt;/p&gt;
&lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;
&lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;
&lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;
&lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;
&lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;
&lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;
&lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;
&lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;
&lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;
&lt;p&gt;(Please visit the site to view this media)&lt;/p&gt;
&lt;p&gt;(en el comienzo de la pel&amp;iacute;cula,&amp;nbsp;se muestra la filmaci&amp;oacute;n de un famoso aviso de Apple, &lt;a target="_blank" href="http://www.uriahcarpenter.info/1984.html"&gt;&amp;quot;1984&amp;quot;&lt;/a&gt;) (Gracias a &lt;a target="_blank" href="http://staff.southworks.net/johnny"&gt;Johnny Halife&lt;/a&gt; por el dato)&lt;/p&gt;
&lt;p&gt;Yo, como siempre, prefiero el libro, &amp;quot;Fire in the valley&amp;quot;. Ese libro me aliment&amp;oacute; durante casi dos d&amp;eacute;cadas, y siempre vuelvo a &amp;eacute;l a investigar algun tema. Lo veo m&amp;aacute;s detallado que la pel&amp;iacute;cula, y tal vez, m&amp;aacute;s imparcial, a pesar de estar m&amp;aacute;s cerca de los hechos. Lo interesante de la pel&amp;iacute;cula es que nos sumerge mejor en algunos ambientes,&amp;nbsp;para nosotros que no lo vivimos (el ambiente de los 70, 80 en EEUU). Igualmente hay que verla con alguna actitud cr&amp;iacute;tica. Habr&amp;iacute;a tanto para comentar sobre los detalles de la historia de la microinform&amp;aacute;tica. Desde la influencia de Popular Mechanics, los clubes de entusiastas, y los aficionados que viajaban medio EEUU para llegar a la sede del MITS para comprar la primera Altair.&lt;/p&gt;
&lt;p&gt;Grande recordar a Ballmer jugando p&amp;oacute;ker con Gates, o al Capit&amp;aacute;n Crunch (luego contratado por IBM para escribir uno de los primeros procesadores de palabras de la IBM PC)... :-)&lt;/p&gt;
&lt;p&gt;Era un tiempo, donde el mundo humano&amp;nbsp;estaba cambiando... Sigue cambiando, &amp;iquest;somos parte de ese cambio?&lt;/p&gt;
&lt;p&gt;Que la disfruten, nos leemos!&lt;/p&gt;
&lt;p&gt;Angel &amp;quot;Java&amp;quot; Lopez&lt;br /&gt;&lt;a href="http://www.ajlopez.com/"&gt;http://www.ajlopez.com/&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1112772" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/lopez/archive/tags/Desarrollo+de+Software/default.aspx">Desarrollo de Software</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Historia+de+la+Computaci_26002300_243_3B00_n/default.aspx">Historia de la Computaci&amp;#243;n</category></item></channel></rss>