{"id":1743,"date":"2020-10-31T18:27:19","date_gmt":"2020-11-01T00:27:19","guid":{"rendered":"https:\/\/www.pensemosweb.com\/?p=1743"},"modified":"2024-03-07T16:00:50","modified_gmt":"2024-03-07T22:00:50","slug":"programacion-en-parejas-pair-programming","status":"publish","type":"post","link":"https:\/\/pensemosweb.com\/en\/programacion-en-parejas-pair-programming\/","title":{"rendered":"Todo sobre programaci\u00f3n en parejas. Pair programming"},"content":{"rendered":"<h2 class=\"wp-block-heading\">\u00bfQu\u00e9 es la programaci\u00f3n en parejas?<\/h2>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.pensemosweb.com\/wp-content\/uploads\/2020\/10\/programacion-pareja-1024x495.jpeg\" alt=\"Programaci\u00f3n en pareja\" class=\"wp-image-1777\"\/><figcaption>Programaci\u00f3n en pareja, <em>tomada de https:\/\/miro.medium.com\/max\/700\/1*sBJhFwmpfbftanqzxOeK_w.jpeg<\/em><\/figcaption><\/figure>\n\n\n\n<p>La programaci\u00f3n en parejas es una pr\u00e1ctica \u00e1gil donde dos personas trabajan en una sola computadora para resolver un problema. La programaci\u00f3n en pareja abre un canal de <strong>comunicaci\u00f3n y retroalimentaci\u00f3n inmediata entre dos personas<\/strong>, para analizar, dise\u00f1ar, probar y crear una soluci\u00f3n utilizando c\u00f3digo de programaci\u00f3n.<\/p>\n\n\n\n<p>\u00bfCu\u00e1ntas veces no hemos necesitado ayuda para resolver un problema? <\/p>\n\n\n\n<p>\u00bfPara lavar los trastes? &#8211; Oye, dejaste jab\u00f3n en esa parte, &#8211; El plato tiene una manchita ah\u00ed.<\/p>\n\n\n\n<p>Tambi\u00e9n cuando manejamos un autom\u00f3vil, nuestro copiloto nos dice:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Dobla a la derecha, este camino es m\u00e1s corto.<\/li><li>\u00a1Aguas de este lado viene carro! \u00a1Ah\u00ed hay un bache!<\/li><\/ul>\n\n\n\n<p>Aqu\u00ed es donde otra persona y dos ojos m\u00e1s entran en acci\u00f3n.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Las grandes cosas vienen en parejas<\/h2>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.pensemosweb.com\/wp-content\/uploads\/2020\/10\/parejas-exitosas.png\" alt=\"Parejas de inventores, m\u00fasicos, pintores y emprendedores\" class=\"wp-image-1746\"\/><figcaption>Parejas de inventores, m\u00fasicos, pintores y emprendedores<\/figcaption><\/figure>\n\n\n\n<p>De izquierda a derecha y de arriba hacia abajo:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Bill Hewllet and Dave Packcard. Fundaron HP<\/li><li>Robert Noyce y Gordon Moore. Fundaron  Intel<\/li><li>John Lennon y Paul McCartney, al escribir las canciones, uno empezaba una frase y el otro lo completaba y viceversa, seg\u00fan<a rel=\"noreferrer noopener nofollow\" href=\"https:\/\/www.amazon.com\/Collaborative-Circles-Friendship-Dynamics-Creative\/dp\/0226238679\/ref=sr_1_1?ots=1&amp;slotNum=0&amp;imprToken=88bac49a-9ce2-8c84-0c6&amp;tag=thneyo0f-20&amp;linkCode=w50&amp;ie=UTF8&amp;qid=1543935521&amp;sr=8-1&amp;keywords=collaborative+circles%3A+friendship+dynamics\" target=\"_blank\"> <\/a><a href=\"https:\/\/www.amazon.com.mx\/gp\/product\/0226238679\/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0226238679&amp;linkCode=as2&amp;tag=pensemosweb-20&amp;linkId=0c985c73a07b56194d814f31c0af56df\" target=\"_blank\" rel=\"noreferrer noopener sponsored nofollow\">Collaborative Circles: Friendship Dynamics and Creative Work<\/a><img loading=\"lazy\" decoding=\"async\" width=\"1\" height=\"1\" src=\"\/\/ir-mx.amazon-adsystem.com\/e\/ir?t=pensemosweb-20&amp;l=am2&amp;o=34&amp;a=0226238679\" alt=\"\"><\/li><li>Pablo Piccaso y George Braque, cada pintura solo estaba terminada si ambos estaban de acuerdo, durante su trabajo en pareja cuando crearon el cubismo seg\u00fan <a href=\"https:\/\/www.amazon.com.mx\/gp\/product\/1848545924\/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=1848545924&amp;linkCode=as2&amp;tag=pensemosweb-20&amp;linkId=e6964a6015a726e651b416e19f27d177\" target=\"_blank\" rel=\"noreferrer noopener sponsored nofollow\">Powers of Two: Finding the Essence of Innovation in Creative Pairs<\/a><img loading=\"lazy\" decoding=\"async\" width=\"1\" height=\"1\" src=\"\/\/ir-mx.amazon-adsystem.com\/e\/ir?t=pensemosweb-20&amp;l=am2&amp;o=34&amp;a=1848545924\" alt=\"\"><\/li><li>Steve Jobs y Steve Wozniak. Fundaron Apple<\/li><li>Larry Page, Sergu\u00e9i Brin. Fundaron Google<\/li><li>Paul Allen y Bill Gates. Fundaron Microsoft<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Origen de la programaci\u00f3n en parejas<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">A\u00f1o 0<\/h3>\n\n\n\n<p>Desde un inicio, desde que existe la interacci\u00f3n social, siempre se busca simplificar las tareas y hacerlas con la mejor calidad posible.&nbsp; Como vemos en la secci\u00f3n anterior, el trabajo en pareja siempre ha existido y da muy buenos resultados.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Un cazador ense\u00f1a a su hijo como cazar una cebra y le indica que el mejor lugar para clavarla es justo debajo de la oreja, donde puede atravesar su cr\u00e1neo, pero ese es un tiro muy dif\u00edcil. El tiro m\u00e1s f\u00e1cil es &#8211; &#8220;Apuntar a las rayas que la cebra tiene en el pecho&#8221; (mientras dibuja las rayas en el tronco de un \u00e1rbol).<\/p><p>&#8211; &#8220;Sigue practicando  el tiro a una distancia de 20 pasos hasta que claves la lanza correctamente&#8221;, luego -\u201cNo espera, sost\u00e9n la lanza as\u00ed\u201d, m\u00e1s tarde &#8211; \u201cSi, as\u00ed est\u00e1 mejor, continua as\u00ed\u201d \u2026 &#8211; \u201cAhora, p\u00eddele a tu t\u00edo que te ense\u00f1e c\u00f3mo hacer que la cebra se acerque a una distancia de 10 pasos\u201d<\/p><cite>Bob Allen de <a href=\"http:\/\/codecraftsmansaturdays.blogspot.com\/\">codecraftsmansaturdays<\/a><\/cite><\/blockquote>\n\n\n\n<h3 class=\"wp-block-heading\">Programadoras de ENIAC, 1946<\/h3>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2020\/11\/programadoras-usando-ENIAC.gif\" alt=\"Betty Jean Jennings Bartik y Frances Bilas Spence usando ENIAC\" class=\"wp-image-1774\"\/><figcaption>Betty Jean Jennings Bartik y Frances Bilas Spence usando ENIAC<\/figcaption><\/figure><\/div>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Betty Snyder y yo, desde el principio, \u00e9ramos una pareja. Y creo que el mejor dise\u00f1o y todas esas cosas son hechas en pareja porque mutuamente se puede criticar, identificar errores y usar las mejores ideas de ambos.<\/p><cite><strong>Betty Jean Jennings Bartik, ENIAC programmer 1946<\/strong><\/cite><\/blockquote>\n\n\n\n<p>Jean Bartik form\u00f3 parte de las ahora justamente reconocidas primeras programadoras de ENIAC, donde seg\u00fan fuentes tambi\u00e9n practicaban &#8220;Test First development&#8221;.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Frederick Phillips Brook, 1953<\/h3>\n\n\n\n<p>Fred Brook, autor del libro <strong><a target=\"_blank\" href=\"https:\/\/www.amazon.com.mx\/gp\/product\/0201835959\/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0201835959&amp;linkCode=as2&amp;tag=pensemosweb-20&amp;linkId=480ca56009c8e1aecaefd4bef3cae7e7\" rel=\"noreferrer noopener sponsored nofollow\">The Mythical Man-Month: Essays on Software Engineering<\/a><\/strong> del a\u00f1o 1975, un libro sobre ingenier\u00eda de software y administraci\u00f3n de proyectos. Tambi\u00e9n conocido por la ley de Brook, la cual empez\u00f3 a definirla cuando trabajaba para IBM en el desarrollo del sistema operativo <strong>OS\/360<\/strong>. En este libro \u00e9l menciona lo siguiente:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Agregar mano de obra a un proyecto de software retrasado, lo retrasa a\u00fan m\u00e1s.<\/p><cite>Frederick Phillips Brook<\/cite><\/blockquote>\n\n\n\n<p>Brook le escribi\u00f3 a Laurie Williams:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Compa\u00f1ero de posgrado Bill Wright y yo probamos por primera vez la programaci\u00f3n en parejas cuando era un estudiante graduado (1953 -1956). Produjimos 1.500 l\u00edneas de c\u00f3digo libre de defectos; se ejecut\u00f3 correctamente en el primer intento.<\/p><cite>Frederick Phillips Brook<\/cite><\/blockquote>\n\n\n\n<h3 class=\"wp-block-heading\">Richard P. Gabriel en 1972<\/h3>\n\n\n\n<p><strong>1972-1973, <\/strong>&nbsp;Dick Gabriel hace programaci\u00f3n en pareja con Jonl White, usando Lisp como lenguaje de programaci\u00f3n.&nbsp; Despu\u00e9s como encargado del desarrollo de Common Lisp,  programaci\u00f3n en parejas fue una de las pr\u00e1cticas principales.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Dynamic Duos, 1978-1988<\/h3>\n\n\n\n<p><a target=\"_blank\" href=\"https:\/\/amzn.to\/2UtaU44\" rel=\"noreferrer noopener sponsored nofollow\">Larry Constantine<\/a><img loading=\"lazy\" decoding=\"async\" width=\"1\" height=\"1\" src=\"\/\/ir-mx.amazon-adsystem.com\/e\/ir?t=pensemosweb-20&amp;l=ur2&amp;o=34\" alt=\"\">, pionero en la ingeniera de software, con m\u00e1s de <a href=\"https:\/\/amzn.to\/2UtaU44\" target=\"_blank\" rel=\"noreferrer noopener\">200 publicaciones y 22 libros<\/a>. Reporto  en su visita a <strong>Whitesmiths Inc. <\/strong>que en cada terminal&nbsp; hab\u00eda dos programadores trabajando. Le llam\u00f3 <strong>\u201cDynamic Duo\u201d,<\/strong> Whitesmiths cre\u00f3 el primer compilador comercial del lenguaje de programaci\u00f3n C.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Patron organizativo &#8220;<a rel=\"noreferrer noopener sponsored nofollow\" href=\"https:\/\/www.amazon.com.mx\/gp\/product\/0131467409\/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0131467409&amp;linkCode=as2&amp;tag=pensemosweb-20&amp;linkId=65a05d30ea8bf4a3ecdc5dfca564e1ec\" target=\"_blank\">Developing in pairs<\/a>&#8220;, 1995<\/h3>\n\n\n\n<p><strong><a rel=\"noreferrer noopener sponsored nofollow\" href=\"https:\/\/www.amazon.com.mx\/gp\/search?ie=UTF8&amp;tag=pensemosweb-20&amp;linkCode=ur2&amp;linkId=6b172c2c205d69641e4415f3f6f60d65&amp;camp=1789&amp;creative=9325&amp;index=aps&amp;keywords=James Coplien\" target=\"_blank\">James Coplien<\/a><img loading=\"lazy\" decoding=\"async\" width=\"1\" height=\"1\" src=\"\/\/ir-mx.amazon-adsystem.com\/e\/ir?t=pensemosweb-20&amp;l=ur2&amp;o=34\" alt=\"\"><\/strong> publico el patr\u00f3n organizativo &#8220;<a href=\"https:\/\/amzn.to\/36ycxTO\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">Developing in pairs<\/a>&#8221; basado en las investigaciones de Pasteur Project en Bells Labs en el libro <a target=\"_blank\" href=\"https:\/\/www.amazon.com.mx\/gp\/product\/0201895277\/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0201895277&amp;linkCode=as2&amp;tag=pensemosweb-20&amp;linkId=0b9c7f32ea3a4722b0da0a0ba1ef1863\" rel=\"noreferrer noopener\">Pattern Languages of Program Design<\/a>, y dijo:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>\u201cLas personas a veces sienten que pueden resolver un problema solo si tienen ayuda. Algunos problemas son m\u00e1s grandes que los de cualquier individuo&#8221;. La soluci\u00f3n propuesta del patr\u00f3n organizacional es \u201cemparejar dise\u00f1adores compatibles para trabajar juntos; \u2026<\/p><cite>James Coplien<\/cite><\/blockquote>\n\n\n\n<p>El proyecto Pasteur extrajo muestras emp\u00edricas de 50 organizaciones de desarrollo de software altamente efectivas, usando t\u00e9cnicas de an\u00e1lisis y recopilaci\u00f3n de datos similares a las usadas por soci\u00f3logos y antrop\u00f3logos.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a target=\"_blank\" href=\"https:\/\/www.amazon.com.mx\/gp\/product\/0321278658\/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0321278658&amp;linkCode=as2&amp;tag=pensemosweb-20&amp;linkId=060177fb7177058c7d76711b4d6a209b\" rel=\"noreferrer noopener\">Extreme Programming<\/a><img loading=\"lazy\" decoding=\"async\" width=\"1\" height=\"1\" src=\"\/\/ir-mx.amazon-adsystem.com\/e\/ir?t=pensemosweb-20&amp;l=am2&amp;o=34&amp;a=0321278658\" alt=\"\">, Kent Beck 1998<\/h3>\n\n\n\n<p>Finalmente <strong>Kent Beck<\/strong>, unos de los firmantes del manifiesto \u00e1gil, creador de programaci\u00f3n extrema y de sus propias palabras, el &#8220;redescubridor de <a href=\"https:\/\/pensemosweb.com\/en\/introduccion-desarrollo-guiado-especificacion-tdd\/\" target=\"_blank\" rel=\"noreferrer noopener\">TDD<\/a>&#8221; en 1998 agreg\u00f3 &#8220;pair programming&#8221; como una de las pr\u00e1cticas de <a target=\"_blank\" href=\"https:\/\/www.amazon.com.mx\/gp\/product\/0321278658\/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0321278658&amp;linkCode=as2&amp;tag=pensemosweb-20&amp;linkId=060177fb7177058c7d76711b4d6a209b\" rel=\"noreferrer noopener\">Extreme Programming<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Beneficios de programaci\u00f3n en parejas<\/h2>\n\n\n\n<p>Todos los beneficios de m\u00e1s abajo se resumen en los tres principales aqu\u00ed listados, que desde el punto de vista de negocio, son el objetivo de implementar cualquier pr\u00e1ctica \u00e1gil.<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Disminuir los tiempos<\/li><li>Reducir el Estr\u00e9s<\/li><li>Aumentar el Dinero o las ganancias<\/li><\/ol>\n\n\n\n<p>Adem\u00e1s estos beneficios son el resultado de aplicar los siguientes <strong><a rel=\"noreferrer noopener\" href=\"https:\/\/pensemosweb.com\/en\/el-corazon-agil-manifiesto\/\" target=\"_blank\">principios \u00e1giles<\/a>:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Individuos e interacciones sobre procesos y herramientas.<\/strong><\/li><li><strong>Respuesta ante el cambio sobre seguir un plan.<\/strong><\/li><li><strong>Software funcionando sobre documentaci\u00f3n extensiva<\/strong>.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Canal de comunicaci\u00f3n y colaboraci\u00f3n<\/h3>\n\n\n\n<p>Se abren muchos canales de comunicaci\u00f3n (m\u00e1s si se rotan las parejas) que estimulan la <strong>colaboraci\u00f3n<\/strong>. Si combinamos diferentes perspectivas, ideas, conocimiento t\u00e9cnico y conocimiento del negocio, entonces el resultado es una soluci\u00f3n superior,\u00a0 una soluci\u00f3n m\u00e1s simple y m\u00e1s s\u00f3lida. Sin mencionar que el tiempo en llegar a una soluci\u00f3n se reduce considerablemente.<\/p>\n\n\n\n<p>Much\u00edsimas veces ni siquiera tenemos que esperar a que nuestra prueba falle o esperar a debuguear para notar un error, nuestro compa\u00f1ero con su lindo cerebro y sus dos ojos nos lo puede indicar de inmediato.<\/p>\n\n\n\n<p>Incluso ni siquiera tenemos que recordar la especificaci\u00f3n del problema a resolver (por eso de la p\u00e9rdida de enfoque), porque tenemos otra mente que nos lo recuerda.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Code Review Continuo<\/h3>\n\n\n\n<p>Cuando se est\u00e1 programando en pares se obtiene retroalimentaci\u00f3n inmediata de nuestro compa\u00f1ero, vamos a llamarle<strong> \u201ccode review instant\u00e1neo<\/strong>\u201d. As\u00ed que actuamos ante ese cambio de idea, perspectiva, mejora, error cometido, cualquier cosa que nos ayude a resolver el problema o mejorar la soluci\u00f3n.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Te falta un punto y coma.<\/li><li>\u00bfNo te falto definir la variable que contiene los datos de tu par\u00e1metro?<\/li><li>Ah\u00ed debe ser un string no la referencia al m\u00e9todo<\/li><\/ul>\n\n\n\n<p>Son frases que he escuchado mucho antes de ejecutar la verificaci\u00f3n de la prueba, el feedback o review lo obtengo a\u00fan mucho m\u00e1s r\u00e1pido que la prueba automatizada. Esto en realidad es un ciclo de retroalimentaci\u00f3n m\u00e1s eficiente.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Esparcir el conocimiento t\u00e9cnico y de negocio<\/h3>\n\n\n\n<ol class=\"wp-block-list\"><li>Transferencia de conocimiento, siempre existe algo que aprender del compa\u00f1ero, tanto del entendimiento del problema y el negocio, como t\u00e9cnicamente.<\/li><li>Esparcimiento y homologaci\u00f3n del est\u00e1ndar y estilo de programaci\u00f3n definido por el proyecto.<\/li><li>Si un integrante del equipo se va, no importa, todos los dem\u00e1s tienen contexto y el conocimiento adecuado.<ol><li>Mucho menos tiempo descubriendo lo que hizo el excompa\u00f1ero<\/li><\/ol><\/li><li>Los nuevos integrantes del equipo obtienen el conocimiento y el contexto r\u00e1pidamente de los compa\u00f1eros con m\u00e1s tiempo en el proyecto, preguntando y haciendo programaci\u00f3n en parejas.<\/li><\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Aumento en la calidad del producto<\/h3>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Si solo armas lo primero que piensas, nunca tendr\u00e1s tiempo para pensar en una segunda cosa mejor.<\/p><cite><strong>Kent Beck<\/strong><\/cite><\/blockquote>\n\n\n\n<ol class=\"wp-block-list\"><li><strong>Diferentes perspectivas que ayudan a encontrar una soluci\u00f3n mucho m\u00e1s simple<\/strong>. Esto significa menos tiempo desarrollando, las soluciones simples son mucho m\u00e1s sustentables, es m\u00e1s f\u00e1cil comprenderlas, implementarlas en otros lugares\/casos, modificarlas y mejorarlas. Siguiendo el principio \u00e1gil de <em>&#8220;Simplicidad, el arte de maximizar el trabajo no realizado&#8221;<\/em>.<\/li><li><strong>Combinaci\u00f3n de ideas y creatividad para mejorar la soluci\u00f3n<\/strong>. Casi siempre el desarrollo de cualquier cosa que usa dos mentes, resulta en un dise\u00f1o superior. Y este punto se relaciona mucho con el siguiente principio \u00e1gil. <em>&#8220;La excelencia t\u00e9cnica y el buen dise\u00f1o, mejoran la agilidad&#8221;<\/em>.<\/li><li><strong>Utilizar cada pieza del sistema como una verdadera caja negra<\/strong>, debido a un dise\u00f1o superior creado por dos mentes, porque es simple y de mayor calidad, nos ahorra tiempo revisando los cables detr\u00e1s de una funcionalidad. Nos permite enfocarnos en el problema y no como funcionan las piezas necesarias.<\/li><li><strong>Disminuye la necesidad de documentaci\u00f3n en etapas tempranas de desarrollo<\/strong>.  Por que el conocimiento se esparce, la documentaci\u00f3n pierde sentido en etapas tempranas, una documentaci\u00f3n solo funciona cuando se tiene una versi\u00f3n muy estable de una pieza de software, no queremos perder el tiempo en modificar la documentaci\u00f3n cada vez que cambiamos algo en el c\u00f3digo.<ol><li> Lo recomendado es invertir ese tiempo en tener un conjunto de pruebas automatizadas y claramente dise\u00f1adas, enfoc\u00e1ndose en transmitir de manera transparente los requerimientos, que sean f\u00e1cilmente entendidos en la primera lectura. No necesitamos documentaci\u00f3n que nos d\u00e9 una especificaci\u00f3n desactualizada o err\u00f3nea. Al hacer pruebas y mejor a\u00fan, &#8220;test-first developement&#8221; en pareja, aumenta considerablemente la calidad.<\/li><\/ol><\/li><\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Ahorra tiempo, mayor velocidad<\/h3>\n\n\n\n<p>En lugar de pasar una hora atorado haciendo una tarea individual, en pareja muchas veces lo resuelven en cinco minutos. \u00bfNunca te ha pasado que est\u00e1s atorado durante dos horas, luego te vas a dar una vuelta, regresas y en menos de cinco minutos encuentras la soluci\u00f3n? Pues en pareja no necesitas esperar esas dos hora e irte a dar una vuelta, tu compa\u00f1ero podr\u00eda tener la soluci\u00f3n o convers\u00e1ndolo con \u00e9l en conjunto cristalizan una a\u00fan mejor.<\/p>\n\n\n\n<p>El tiempo que te sobra lo ocupas para todav\u00eda hacer m\u00e1s. <\/p>\n\n\n\n<p>Debido al beneficio de esparcir el conocimiento, aceleramos el nivel t\u00e9cnico y de negocio de los nuevos integrantes.<\/p>\n\n\n\n<p>Por el aumento de calidad ya explicada, las integraciones son m\u00e1s r\u00e1pidas, se resuelven, es m\u00e1s r\u00e1pido modificar funcionalidades e implementar nuevas por la simplicidad de las mismas.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Reduce el Estr\u00e9s<\/h3>\n\n\n\n<p>Entre menos tiempo pases trabajando tendr\u00e1s menos estr\u00e9s y una mente fresca y creativa (comprobado cient\u00edficamente). Por lo cual tus tareas las resolver\u00e1s m\u00e1s r\u00e1pido, con ganas y con orgullo. Tendr\u00e1s m\u00e1s tiempo despu\u00e9s de tus horas de trabajo para estar con la familia, con la novia o esposa, o simplemente hacer tus cosas personales<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Ahorra dinero<\/h3>\n\n\n\n<p>Es bueno para el negocio, entregas m\u00e1s r\u00e1pidas, iteraciones con mayor alcance y por supuesto mejor retorno de inversi\u00f3n por la calidad del software y la flexibilidad de adaptarse a las nuevas necesidades del usuario final (por el dise\u00f1o superior creado en pareja).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u00bfComo hacer programaci\u00f3n en parejas?<\/h2>\n\n\n\n<p>Existen varias formas de usar la programaci\u00f3n en parejas, los m\u00e1s usados y simples son:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Driver y navigator<\/li><li>Ping Pong<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Driver y navigator<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Se tiene dos perspectivas en cuanto al c\u00f3digo.<\/li><li>He <strong>driver <\/strong>es la persona que controla la computadora y escribe el c\u00f3digo, el <strong>navigator<\/strong> sentado a su lado observa el proceso desde otra perspectiva, revisando cada l\u00ednea de c\u00f3digo mientras el driver escribe, al mismo tiempo que apoya al driver d\u00e1ndole direcci\u00f3n y desbloque\u00e1ndolo.<\/li><li>Una persona se encarga de la <strong>t\u00e1ctica<\/strong> (driver) y la otra de la <strong>estrategia<\/strong> (navigator).<\/li><\/ul>\n\n\n\n<p>Es importante cambiar los roles continuamente, as\u00ed mitigamos el aburrimiento y cambiamos de perspectiva para tener ideas frescas.<\/p>\n\n\n\n<p>He <strong>navigator<\/strong> puede anotar sus ideas para no cortarle la inspiraci\u00f3n al <strong>driver<\/strong>, estas ideas se pueden mencionar cuando el driver termine de escribir el c\u00f3digo que ten\u00eda en su mente.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.amazon.com.mx\/gp\/product\/0143132547\/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0143132547&amp;linkCode=as2&amp;tag=pensemosweb-20&amp;linkId=f5f2b49a00ecb5e32382d027bbd7432b\" target=\"_blank\" rel=\"noreferrer noopener sponsored nofollow\">Neurociencia, dos modos de pensamiento<\/a><\/h3>\n\n\n\n<p>Seg\u00fan la  <a href=\"https:\/\/www.amazon.com.mx\/gp\/product\/0143132547\/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0143132547&amp;linkCode=as2&amp;tag=pensemosweb-20&amp;linkId=f5f2b49a00ecb5e32382d027bbd7432b\" target=\"_blank\" rel=\"noreferrer noopener sponsored nofollow\">neurociencia<\/a>, la programaci\u00f3n en parejas une dos tipos de pensamientos. El <strong>driver <\/strong>trabaja en un modo de pensamiento <em>enfocado<\/em><strong>, <\/strong>mientras que el <strong>navigator<\/strong> trabaja con un modo de pensamiento <em>difuso<\/em><strong>.<\/strong><\/p>\n\n\n\n<p>Porque ahora tenemos dos mentes, podemos separar estas dos perspectivas y utilizarlas al mismo tiempo.<\/p>\n\n\n\n<p>Ejemplo de esto es lo que ya comentamos,  cuando est\u00e1s atorado con un problema por  dos horas, te vas a dar una vuelta, tomar caf\u00e9 o algo y regresas, te sientas enfrente de tu computadora y en cinco minutos lo resuelves.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Ping pong<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>El primer developer escribe la pr\u00f3xima prueba<\/li><li>El segundo developer hace pasar la prueba y escribe la pr\u00f3xima prueba<\/li><li>El primer developer hace pasar la prueba<\/li><\/ul>\n\n\n\n<p>Despu\u00e9s de que alguno de los programadores hace pasar la prueba, ambos hacen el refactor utilizando <strong>driver y navigator.<\/strong><\/p>\n\n\n\n<p>Esta es una t\u00e9cnica bastante sencilla y \u00fatil para cambiar frecuentemente entre driver y navigator, as\u00ed ambos programadores practican ambos modos de pensamiento. Fomenta la creatividad y el uso de pr\u00e1cticas \u00e1giles como TDD y BDD.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u00bfCu\u00e1nto cuesta hacer programaci\u00f3n en parejas?<\/h2>\n\n\n\n<p>Uno puede pensar que el costo de hacer programaci\u00f3n en parejas es el doble debido a que dos personas trabajan para completar una sola tarea, pero no es as\u00ed, seg\u00fan <a rel=\"noreferrer noopener nofollow\" href=\"https:\/\/collaboration.csc.ncsu.edu\/laurie\/Papers\/XPSardinia.PDF\" target=\"_blank\">estudios realizados <\/a>by <strong>Laurie Williams <\/strong>en el a\u00f1o <strong>1999 <\/strong>en la universidad de Utah, haciendo programaci\u00f3n en parejas solo aument\u00f3 un 15% de tiempo para completar la tarea.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/lh6.googleusercontent.com\/rL3Q_fGau82WVMy6o52L5TdF1VWAhMteTmAvo9-GVF9lKOLplvkq9ETEhlVnbAP0MIGduiXy_6Kmu8RRwk8HTn_LNDm-jNPVtgHSWb8Lit0tcbiBOtZTTuMuUenN7eV8VyM6mec3\" width=\"602\" height=\"365\"><\/p>\n\n\n\n<p>Ese 15% de tiempo gastado fue recuperado en un c\u00f3digo con 15% menos defectos.&nbsp;<\/p>\n\n\n\n<p class=\"has-text-align-center\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/lh6.googleusercontent.com\/1OgQyb9cBwXY_xqzZSRlSHK7-Aat5F4mBVmlGO6tISEIsZlelUIEa7fXVv9ppSYcQXDN-jUx37njfhohAilTQZUx7zdmPqWQGVQoxHhEzUA7m0YVguFBvShBFcvgX9LsHZuQMDwX\" width=\"602\" height=\"365\"><\/p>\n\n\n\n<p>Seg\u00fan este estudio el c\u00f3digo generado individualmente es 15 veces m\u00e1s costoso debido al mayor esfuerzo de arreglar los defectos. Luego si ese defecto se filtra a producci\u00f3n, entonces el costo es 60 veces m\u00e1s.<\/p>\n\n\n\n<p>\u00bfPor qu\u00e9 es m\u00e1s costoso el desarrollo con programadores individuales? Porque el dise\u00f1o individual es inferior a un dise\u00f1o creado por dos personas. Dos cabezas son mejor que una.<\/p>\n\n\n\n<p>Este resultado se alinea con la filosof\u00eda de prevenci\u00f3n de incidencias y que entre m\u00e1s tiempo pasa en encontrar el defecto, es m\u00e1s costoso porque primero se tiene que volver a replicar, entender el problema, entender el c\u00f3digo relacionado y adem\u00e1s el tiempo gastado en la soluci\u00f3n. \u00bfQu\u00e9 pasa si es un defecto que se detecta despu\u00e9s de un a\u00f1o? \u00bfQu\u00e9 pasa si la persona con m\u00e1s conocimiento del contexto ya no est\u00e1 en el proyecto o no est\u00e1 disponible?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u00bfY si tenemos un equipo distribuido? \u00bfC\u00f3mo hacemos programaci\u00f3n en pareja?<\/h2>\n\n\n\n<p>En la actualidad existen muchas aplicaciones de videollamadas para compartir pantallas,  IDEs con extensiones o plugins y hasta aplicaciones para compartir el control de t\u00fa maquina que te permiten tener una colaboraci\u00f3n en tiempo real sobre el c\u00f3digo en cuesti\u00f3n.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Compartir pantalla:<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/zoom.us\/\">Zoom<\/a><\/li><li><a href=\"https:\/\/www.webex.com\/\">Webex<\/a><\/li><li><a href=\"https:\/\/meet.google.com\/\">Meet<\/a><\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Compartir c\u00f3digo estilo google docs:<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/visualstudio.microsoft.com\/services\/live-share\/\">Live Share<\/a>&nbsp;<\/li><li><a href=\"https:\/\/gitduck.com\/\">GitDuck<\/a><\/li><li><a href=\"https:\/\/www.saros-project.org\/\">saros-project<\/a><\/li><li><a href=\"https:\/\/floobits.com\/\">floobits<\/a><\/li><li><a href=\"https:\/\/git.live\">git.live<\/a><\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Compartir la m\u00e1quina completa<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/www.use-together.com\/\">USE together<\/a><\/li><li><a href=\"https:\/\/screen.so\/#\/home\">screen.so<\/a><\/li><li><a href=\"http:\/\/tuple.app\">tuple.app<\/a><\/li><li><a href=\"https:\/\/www.teamviewer.com\/en-us\/\">teamviewer<\/a><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">\u00bfQui\u00e9n hace programaci\u00f3n en pareja?<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Empresas que hacen programaci\u00f3n en parejas<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Google<\/li><li>Spotify<\/li><li>Shopify<\/li><li>Thoughtworks<\/li><li>IBM<\/li><li>Microsoft<\/li><li>Atlassian<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Programadores que hacen programaci\u00f3n en parejas<\/h3>\n\n\n\n<p><strong>Jeff Dean y Sanjay Ghemawat<\/strong>. Super reconocidos en google porque salvaron a la empresa de morir, arreglaron el enorme crawler de google que hab\u00eda parado de funcionar en el a\u00f1o 2000. Han creado juntos en google a mapReduce, BigTable y Spanner. Y muchas cosas m\u00e1s fuera de google.<\/p>\n\n\n\n<p><strong>Kent Beck (<\/strong>Co-creador principal de extreme programming) y<strong> Erich Gamma<\/strong> (co-autor del libro <em>Design Patterns: Elements of Reusable Object-Oriented<\/em> <em>Software<\/em>). Juntos crearon <strong>JUNIT<\/strong> el principal framework de automatizaci\u00f3n de pruebas para Java y tambi\u00e9n para Kotlin.<\/p>\n\n\n\n<p><strong>Alistair Cuckborn<\/strong>. Creador de la familia de m\u00e9todos Crystal clear y Heart of agile<\/p>\n\n\n\n<p><strong>Ron Jeffries<\/strong>. Firmante del manifiesto \u00e1gil y co-creador de extreme programming<\/p>\n\n\n\n<p><strong>Ward Cunningham.<\/strong> Firmante del manifiesto \u00e1gil y co-creador de extreme programming<\/p>\n\n\n\n<p><strong>Martin Fowler.<\/strong> Firmante del manifiesto \u00e1gil y autor del libro <em>Refactoring: Improving the Design of Existing Code<\/em><\/p>\n\n\n\n<p><strong>Robert C. Martin.<\/strong> Firmante del manifiesto \u00e1gil y conocido por acu\u00f1ar los principios de dise\u00f1o SOLID<\/p>\n\n\n\n<p><strong>Michael Feathers.<\/strong> Autor del libro <em>Working Effectively with Legacy Code<\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">No todo es color de rosa en la pr\u00e1ctica<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\u00bfCu\u00e1ndo no hacer programaci\u00f3n en parejas?<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Si la tarea es demasiada sencilla o algo repetitivo.<\/li><li>Cuando ninguno tiene mucho conocimiento del problema y\/o c\u00f3digo a modificar.<ul><li>Mejor ambos se asignan tareas de investigaci\u00f3n para retroalimentarse despu\u00e9s y compartir ese nuevo conocimiento.<\/li><\/ul><\/li><li>Cuando uno de los pares ya pas\u00f3 mucho tiempo haciendo programaci\u00f3n en parejas. Continuar haci\u00e9ndolo por mucho tiempo es demasiado desgaste mental.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u00bfCu\u00e1nto tiempo hacer programaci\u00f3n en parejas?<\/h3>\n\n\n\n<p>Definitivamente no 8 horas al d\u00eda, mucho tiempo haciendo programaci\u00f3n en parejas es muy cansado, seg\u00fan fuentes lo recomendado es de 1.5 a 4 horas diarias.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u00bfQu\u00e9 tan a menudo cambiar de pareja?<\/h3>\n\n\n\n<p>Cada vez que se sienta la necesidad seg\u00fan el problema a resolver. Se recomienda cambiar de pareja diariamente para esparcir el conocimiento t\u00e9cnico y de negocio, pero si alguien a\u00fan no entiende un concepto con su pareja actual, entonces no deber\u00eda cambiar de pareja hasta que tenga s\u00f3lido ese concepto.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Recomendaciones de interacci\u00f3n social<\/h2>\n\n\n\n<p>Super importante tener como base siempre estos tres principios humanos latentes en cada momento para las interacciones sociales.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Respeto<\/strong>, de hecho un valor de scrum y extreme programming.<\/li><li><strong>Honestidad<\/strong>, alineado con la transparencia del empirismo de scrum y el coraje en extreme programming.<\/li><li><strong>Justicia<\/strong>, es justo pensar en el bienestar de todas las personas involucradas. Da el coraje (otro valor de scrum y XP) de hacer programaci\u00f3n en pareja y buscar acuerdos mutuos. Al mismo tiempo te hace pensar en lo m\u00e1s justos para ambos, como pareja.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Las personas importan<\/h3>\n\n\n\n<p>Piensa en tu compa\u00f1ero, lo m\u00e1s importante son las personas, actua de la forma mas justa posible para entablar comunicacion y acuerdos.<\/p>\n\n\n\n<p>Tambi\u00e9n ponte en los zapatos de los usuarios finales, \u00bfQuerr\u00edas tener problemas si fueras t\u00fa el que usa la aplicaci\u00f3n? Esto ayuda a tener una mente positiva y darnos el <strong>coraje<\/strong> de hacer pair programming por el bien de todos. Genera <strong>Compromiso <\/strong>and <strong>justicia <\/strong>hacia los involucrados<strong>.<\/strong><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Tres h\u00e1bitos para la comunicaci\u00f3n y no estancarse.<\/h3>\n\n\n\n<ol class=\"wp-block-list\"><li><strong>Piensa en ganar\/ganar.<\/strong> A veces puede haber conflictos de ideas, piense en lo m\u00e1s importante, las personas, todos pueden salir ganando, en lugar de perder mucho tiempo debatiendo \u00bfPor qu\u00e9 no prueban ambas ideas? Paso a paso se dar\u00e1n cuenta de lo mejor para el problema o muchas veces son una combinaci\u00f3n de las dos posturas.<\/li><li><strong>Procura primero comprender y despu\u00e9s ser comprendido.<\/strong><ol><li>Cuando se debaten ideas debemos entender profundamente la otra idea, escuchar con la verdadera intenci\u00f3n de comprender. Un buen doctor primero hace un diagn\u00f3stico antes de dar una receta.<\/li><li>Ahora tu turno de exponer tu idea.<\/li><\/ol><\/li><li><strong>Sinergiza<\/strong>r. Encontrar la soluci\u00f3n juntos, tu idea en combinaci\u00f3n con la m\u00eda genera una mejor, 1 + 1 = 3, 4 o 5, de esas dos ideas sale una tercera, una superior.<\/li><\/ol>\n\n\n\n<p>Reitero, si el debate sobre las ideas se est\u00e1 alargando, es mejor elegir un t\u00e9rmino medio y empezar a tirar c\u00f3digo, conforme avancen ver\u00e1n por cu\u00e1l idea se inclinan m\u00e1s.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Planifica<\/h3>\n\n\n\n<p>Tengan un horario de sesiones, con el objetivo de no solaparse con reuniones importantes. Con tu familia establece acuerdos y horarios para que tampoco te interrumpan a menos que de verdad sea algo importante.<\/p>\n\n\n\n<p>Por ejemplo, si tu hijo quiere que juegues con \u00e9l en el momento de la sesi\u00f3n de pair programming, aunque de verdad yo creo que jugar con tu hijo es m\u00e1s importante que trabajar, tambi\u00e9n podr\u00edas  establecer con tu hijo los horarios de juego para que no se solapen con los horarios de trabajo.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Sin distracciones<\/h3>\n\n\n\n<p>Sin distracciones mientras se hace pair programming, respeta el tiempo de tu compa\u00f1ero y mantente enfocado en lo que est\u00e1n haciendo juntos, no leas emails, no veas mensajes de WhatsApp o de Facebook, trata de no hacer llamadas. As\u00ed eres justo con el tiempo de la otra persona.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Pomodoro<\/h3>\n\n\n\n<p>Es bueno tomar breaks cada veinticinco minutos o m\u00e1s dependiendo como se sientan y utilizar de cinco a diez minutos como recompensa para ahora si hacer lo que quieran, como revisar Facebook o el WhatsApp. Esto disminuye la fatiga y mantiene las ideas frescas porque constantemente te recompensas y le dices a tu cerebro que los pr\u00f3ximos veinticinco minutos valen la pena.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Apertura<\/h3>\n\n\n\n<p>Mucho, mucho respeto a las ideas de tu compa\u00f1ero, no importa si tienes m\u00e1s experiencia o menos, recuerda que diferentes ideas y perspectivas nos llevan a mejores soluciones. El genio John Von Neumman ped\u00eda constantemente a sus compa\u00f1eros que revisaran su trabajo.<\/p>\n\n\n\n<p>Piensa en la cr\u00edtica como algo que te ayude a mejorar.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Elimina el condicionamiento social<\/h3>\n\n\n\n<p>Normalmente se tiene la idea de que equivocarse es malo, de que no saber es herej\u00eda, al contrario, ser vulnerable en estos aspectos ayuda mucho a mejorar como individuo, como equipo y a mejorar el producto. Y todo el mundo debe estar consciente de esto, a no juzgar y abrazar las diferencias, las cuales son muy importantes a la hora de innovar porque diferentes perspectivas siempre nos permite construir una mejor forma de ver las cosas, lo que lleva a generar mejoras ideas y aumentar la creatividad.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">La importancia de Celebrar<\/h3>\n\n\n\n<p>Celebren juntos despu\u00e9s de terminar con una tarea, vayan a tomar un caf\u00e9, coman algo, jueguen un videojuego, que s\u00e9 yo, el chiste que celebren. Esto promueve un mini team building y entrenan a su cerebro para no cansarse y tener pensamientos positivos para continuar. Ayuda al estr\u00e9s.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">De programaci\u00f3n en parejas a Mob programming<\/h2>\n\n\n\n<p>Es una pr\u00e1ctica \u00e1gil moderna que extiende la idea de pair programming&nbsp; a todo el equipo,&nbsp; donde se puede incluir todo tipo de involucrado en el producto. Desde programadores, administradores de base de datos, gente de dise\u00f1o y experiencia de usuario, product owners, project managers, hasta clientes y usuarios.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><img decoding=\"async\" width=\"464px;\" height=\"237px;\" src=\"https:\/\/lh6.googleusercontent.com\/gB-9fYpk2eRKnu2bAYGmjwa6lSSdCq7liD0Ly5CH2D4a8wQcozMO3N9Fdak9lqkR66Gqrx3ac2-BtrXb9wko5mX2_dqr39n39-uG0TFwCvJLa-m20DOfxGxF4MAdD4v6eaWEmWqwNlk\"><\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><span style=\"font-size: inherit; font-family: -apple-system, BlinkMacSystemFont, &quot;Segoe UI&quot;, Roboto, Oxygen-Sans, Ubuntu, Cantarell, &quot;Helvetica Neue&quot;, sans-serif;\">Toda la gente brillante trabajando en lo mismo, al mismo tiempo, en el mismo espacio, en la misma computadora<\/span><\/p><cite>Woody Zuill&nbsp;<\/cite><\/blockquote>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Mob Programming es integraci\u00f3n continua para ideas.<\/p><cite>Joshua Kerievsky<\/cite><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">References<\/h2>\n\n\n\n<p>Foto principal por <a href=\"https:\/\/unsplash.com\/@alvarordesign?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText\">Alvaro Reyes<\/a> of <a href=\"https:\/\/unsplash.com\/s\/photos\/programming-team?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText\">Unsplash<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/spectrum.ieee.org\/tech-talk\/tech-history\/dawn-of-electronics\/untold-history-of-ai-invisible-woman-programmed-americas-first-electronic-computer\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">https:\/\/spectrum.ieee.org\/tech-talk\/tech-history\/dawn-of-electronics\/untold-history-of-ai-invisible-woman-programmed-americas-first-electronic-computer<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/www.computerhistory.org\/revolution\/birth-of-the-computer\/4\/78\/2258\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">https:\/\/www.computerhistory.org\/revolution\/birth-of-the-computer\/4\/78\/2258<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/www.oreilly.com\/library\/view\/making-software\/9780596808310\/ch17s01.html\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">https:\/\/www.oreilly.com\/library\/view\/making-software\/9780596808310\/ch17s01.html<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/collaboration.csc.ncsu.edu\/laurie\/Papers\/XPSardinia.PDF\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">https:\/\/collaboration.csc.ncsu.edu\/laurie\/Papers\/XPSardinia.PDF<\/a><\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-link is-provider-arialdo-martini\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"gsPLuRNfyZ\"><a href=\"https:\/\/arialdomartini.wordpress.com\/2012\/07\/20\/you-wont-believe-how-old-tdd-is\/\">You won&#8217;t believe how old TDD&nbsp;is<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;You won&#8217;t believe how old TDD&nbsp;is&#8221; &#8212; Arialdo Martini\" src=\"https:\/\/arialdomartini.wordpress.com\/2012\/07\/20\/you-wont-believe-how-old-tdd-is\/embed\/#?secret=p1WLTt9Qll#?secret=gsPLuRNfyZ\" data-secret=\"gsPLuRNfyZ\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p><a href=\"https:\/\/www.newyorker.com\/magazine\/2018\/12\/10\/the-friendship-that-made-google-huge\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">https:\/\/www.newyorker.com\/magazine\/2018\/12\/10\/the-friendship-that-made-google-huge<\/a><\/p>\n\n\n\n<p><a target=\"_blank\" href=\"https:\/\/www.amazon.com.mx\/gp\/product\/1848545924\/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=1848545924&amp;linkCode=as2&amp;tag=pensemosweb-20&amp;linkId=e6964a6015a726e651b416e19f27d177\" rel=\"noreferrer noopener\">Powers of Two: Finding the Essence of Innovation in Creative Pairs<\/a><img loading=\"lazy\" decoding=\"async\" width=\"1\" height=\"1\" src=\"\/\/ir-mx.amazon-adsystem.com\/e\/ir?t=pensemosweb-20&amp;l=am2&amp;o=34&amp;a=1848545924\" alt=\"\"><\/p>\n\n\n\n<p><a target=\"_blank\" href=\"https:\/\/www.amazon.com.mx\/gp\/product\/0226238679\/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0226238679&amp;linkCode=as2&amp;tag=pensemosweb-20&amp;linkId=0c985c73a07b56194d814f31c0af56df\" rel=\"noreferrer noopener\">Collaborative Circles: Friendship Dynamics and Creative Work<\/a><img loading=\"lazy\" decoding=\"async\" width=\"1\" height=\"1\" src=\"\/\/ir-mx.amazon-adsystem.com\/e\/ir?t=pensemosweb-20&amp;l=am2&amp;o=34&amp;a=0226238679\" alt=\"\"><\/p>\n\n\n\n<p><a target=\"_blank\" href=\"https:\/\/www.amazon.com.mx\/gp\/product\/0201745763\/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0201745763&amp;linkCode=as2&amp;tag=pensemosweb-20&amp;linkId=6a51839c4d32847eb2833e607ea6498c\" rel=\"noreferrer noopener\">Pair Programming Illuminated<\/a><img loading=\"lazy\" decoding=\"async\" width=\"1\" height=\"1\" src=\"\/\/ir-mx.amazon-adsystem.com\/e\/ir?t=pensemosweb-20&amp;l=am2&amp;o=34&amp;a=0201745763\" alt=\"\"><\/p>","protected":false},"excerpt":{"rendered":"<p>Programaci\u00f3n en parejas. El driver escribe el c\u00f3digo, el navigator desde otra perspectiva, apoya al driver d\u00e1ndole direcci\u00f3n y desbloque\u00e1ndolo<\/p>","protected":false},"author":2,"featured_media":3726,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_et_pb_use_builder":"","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"categories":[21,29],"tags":[45],"class_list":["post-1743","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-agilidad","category-lean-startup","tag-desarrollo-agil"],"_links":{"self":[{"href":"https:\/\/pensemosweb.com\/en\/wp-json\/wp\/v2\/posts\/1743","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pensemosweb.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/pensemosweb.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/pensemosweb.com\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/pensemosweb.com\/en\/wp-json\/wp\/v2\/comments?post=1743"}],"version-history":[{"count":1,"href":"https:\/\/pensemosweb.com\/en\/wp-json\/wp\/v2\/posts\/1743\/revisions"}],"predecessor-version":[{"id":3587,"href":"https:\/\/pensemosweb.com\/en\/wp-json\/wp\/v2\/posts\/1743\/revisions\/3587"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/pensemosweb.com\/en\/wp-json\/wp\/v2\/media\/3726"}],"wp:attachment":[{"href":"https:\/\/pensemosweb.com\/en\/wp-json\/wp\/v2\/media?parent=1743"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/pensemosweb.com\/en\/wp-json\/wp\/v2\/categories?post=1743"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/pensemosweb.com\/en\/wp-json\/wp\/v2\/tags?post=1743"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}