<?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 : Java, TDD</title><link>http://msmvps.com/blogs/lopez/archive/tags/Java/TDD/default.aspx</link><description>Tags: Java, TDD</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP2 (Build: 40407.4157)</generator><item><title>TDD: Comparando Smalltalk y Java</title><link>http://msmvps.com/blogs/lopez/archive/2010/11/10/tdd-comparando-smalltalk-y-java.aspx</link><pubDate>Wed, 10 Nov 2010 16:06:44 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1782040</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=1782040</wfw:commentRss><comments>http://msmvps.com/blogs/lopez/archive/2010/11/10/tdd-comparando-smalltalk-y-java.aspx#comments</comments><description>&lt;p&gt;Gracias al bueno de Hernan Wilkinson (&lt;a href="http://twitter.com/hernanwilkinson" target="_blank"&gt;@hernanwilkinson&lt;/a&gt;) tenemos estos videos, que muestran su comparación de TDD (Test-Driven Development) entre dos lenguajes: Smalltalk, con un entorno dinámico, y Java, un lenguaje con tipos estáticos.&lt;/p&gt;  &lt;p&gt;(Please visit the site to view this media)   &lt;br /&gt;(Please visit the site to view this media)&lt;/p&gt;  &lt;p&gt;Pueden encontrar una discusión del tema en el thread de Foro Agiles:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://tech.groups.yahoo.com/group/foro-agiles/message/3571" href="http://tech.groups.yahoo.com/group/foro-agiles/message/3571"&gt;http://tech.groups.yahoo.com/group/foro-agiles/message/3571&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Como aclara ahí, Hernan puso comparación de tiempos, para medir y comparar. Yo no haría hincapié en ese punto. Lo más a destacar es cómo Smalltalk permite, en el medio de la prueba, completar y arreglar lo que estamos programando. Como apunta en ese thread el bueno de &lt;a href="http://twitter.com/jgabardini" target="_blank"&gt;@jgabardini&lt;/a&gt;, no se usa mucho el debugger enJava, usando TDD (lo mismo afirmaría para .NET y Visual Studio): lo que vamos programando, va naciendo de a poco, por tests, digamos, incrementales. Diría que uno va avanzando por “baby steps” que disminuyen casi a cero la necesidad de depuración en el proceso.&lt;/p&gt;  &lt;p&gt;Si bien Hernan plantea una comparación entre lenguajes dinámicos y estáticos, pienso que eligió uno muy particular como dinámico. Hacer TDD con Python, Ruby y otros lenguajes dinámicos, puede ser bastante diferente que en Smalltalk y su entorno.&lt;/p&gt;  &lt;p&gt;Nos leemos!&lt;/p&gt;  &lt;p&gt;Angel “Java” Lopez&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1782040" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/lopez/archive/tags/Java/default.aspx">Java</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Smalltalk/default.aspx">Smalltalk</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Video/default.aspx">Video</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Lenguajes+de+Programaci_26002300_243_3B00_n/default.aspx">Lenguajes de Programaci&amp;#243;n</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/TDD/default.aspx">TDD</category><category domain="http://msmvps.com/blogs/lopez/archive/tags/Testing/default.aspx">Testing</category></item><item><title>Otro Code Retreat en Buenos Aires</title><link>http://msmvps.com/blogs/lopez/archive/2010/09/09/otro-code-retreat-en-buenos-aires.aspx</link><pubDate>Thu, 09 Sep 2010 16:49:46 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1777728</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=1777728</wfw:commentRss><comments>http://msmvps.com/blogs/lopez/archive/2010/09/09/otro-code-retreat-en-buenos-aires.aspx#comments</comments><description>&lt;p&gt;Ya había escrito sobre una actividad anterior en:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://msmvps.com/blogs/lopez/archive/2010/04/15/code-retreat-en-buenos-aires.aspx"&gt;Code Retreat en Buenos Aires&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;(si no conocen el término, ahí recomendaba&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.coderetreat.com/how-it-works.html"&gt;http://www.coderetreat.com/how-it-works.html&lt;/a&gt;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;What Is Code Retreat &lt;/p&gt;    &lt;p&gt;The idea for code retreat was spawned at the January, 2009, Codemash Conference by Patrick Welsh, Nayan Hajratwala and me, Corey Haines. The idea was to develop a repeatable, day-long event that was focused on practicing the fundamentals of software development. The first event was held in Ann Arbor, MI, not long after the conference.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Más información en:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.coderetreat.com/"&gt;http://www.coderetreat.com/&lt;/a&gt;    &lt;br /&gt;&lt;a href="http://coderetreat.ning.com/"&gt;http://coderetreat.ning.com/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;)&lt;/p&gt;  &lt;p&gt;Ayer jueves me entero, por un tweet del bueno de &lt;a href="http://twitter.com/MartinSalias"&gt;@MartinSalias&lt;/a&gt;, que vuelve la actividad, mañana viernes 10 de septiembre. Se anuncia en&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.agiles.org/argentina/code-retreat-2"&gt;Segundo Code Retreat&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Ahí leo:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;La idea de un Code Retreat es que un grupo de programadores nos juntemos, programemos , discutamos y aprendamos unos de otros.&amp;#160; &lt;br /&gt;Esta es la segunda realización en Buenos Aires (y Argentina por lo que sabemos!)&lt;/p&gt;    &lt;p&gt;&lt;b&gt;Cuándo&lt;/b&gt;: 10 de Septiembre, 14:30 a 20:00 hs&lt;/p&gt;    &lt;p&gt;&lt;b&gt;Dónde&lt;/b&gt;: &lt;a href="http://www.mug.org.ar/"&gt;MUG&lt;/a&gt; - Rivadavia 1479 Piso 1 Of. A.&lt;/p&gt;    &lt;p&gt;Como recibimos algunas consultas, aclaramos que el evento no tiene costo para los participantes.&lt;/p&gt;    &lt;p&gt;&lt;a href="https://spreadsheets.google.com/viewform?formkey=dG5iVGdNdEhEVlBrXy1mTEFlZjhuM2c6MA"&gt;&lt;b&gt;¡Inscribirte!&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;La mecánica es la siguiente: vamos a trabajar haciendo Pair Programming y TDD. Todos los pares van a atacar el mismo problema en sesiones de 40 minutos. Una vez terminada la sesión haremos una retrospectiva de unos 10-15 minutos para reflexionar sobre los problemas que encontramos. Luego de la retrospectiva, se cambian los pares, se borra el código escrito en la sesión anterior y se arranca una sesión nueva con el mismo problema que la anterior.     &lt;br /&gt;La idea es hacer &lt;b&gt;4 o 5 sesiones &lt;/b&gt;por la tarde, una retrospectiva final y, para los que se prendan, podemos terminar con alguna cerveza o agua mineral en algun bar cercano.&lt;/p&gt;    &lt;p&gt;Los lenguajes que elegimos para este Retreat son&lt;b&gt; Java y C#&lt;/b&gt;. Generalmente se usa un solo lenguaje por retreat, pero son lenguajes muy parecidos y nos pareció que abría un poco más la convocatoria usar los dos.&amp;#160; &lt;br /&gt;Durante el retreat vamos a trabajar los siguientes conceptos:&lt;/p&gt;    &lt;p&gt;- es bueno ser capaces de tirar el codigo y empezar de nuevo&lt;/p&gt;    &lt;p&gt;- pequeños pasos en TDD, muy pequeños&lt;/p&gt;    &lt;p&gt;- foco en el tercer paso del ciclo de TDD: calidad del codigo y refactoring&lt;/p&gt;    &lt;p&gt;No es necesario tener experiencia en TDD ni en Pair programming.     &lt;br /&gt;Vamos a necesitar que todos los que puedan lleven laptops con Eclipse/Visual Studio instalados&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Muy bueno que vuelva a realizarse, y que sea en el MUG (Microsoft User Group de Argentina). Si alguien asiste, que deje post! ;-)&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=1777728" 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/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+Extrema/default.aspx">Programación Extrema</category></item><item><title>Code Retreat en Buenos Aires</title><link>http://msmvps.com/blogs/lopez/archive/2010/04/15/code-retreat-en-buenos-aires.aspx</link><pubDate>Thu, 15 Apr 2010 12:54:31 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1763548</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=1763548</wfw:commentRss><comments>http://msmvps.com/blogs/lopez/archive/2010/04/15/code-retreat-en-buenos-aires.aspx#comments</comments><description>&lt;p&gt;Siguen organizándose actividades para desarrolladores de software, por estos lares. Es interesante ver cómo algunas prácticas se van difundiendo (TDD, refactoring, SOLID y demás), y si bien una práctica tiene su fundamento y teoría, es necesario, justamente practicarla para ponerse “proficient” en la misma. Una forma de practicar es en grupo. Esa es la idea de los Code Retreat. Pueden leer en:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.coderetreat.com/how-it-works.html" href="http://www.coderetreat.com/how-it-works.html"&gt;http://www.coderetreat.com/how-it-works.html&lt;/a&gt;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;What Is Code Retreat &lt;/p&gt;    &lt;p&gt;The idea for code retreat was spawned at the January, 2009, Codemash Conference by Patrick Welsh, Nayan Hajratwala and me, Corey Haines. The idea was to develop a repeatable, day-long event that was focused on practicing the fundamentals of software development. The first event was held in Ann Arbor, MI, not long after the conference.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Más información en:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.coderetreat.com/" href="http://www.coderetreat.com/"&gt;http://www.coderetreat.com/&lt;/a&gt;    &lt;br /&gt;&lt;a title="http://coderetreat.ning.com/" href="http://coderetreat.ning.com/"&gt;http://coderetreat.ning.com/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Ahora, gracias a la organización de la gente de Prama, tendremos un Code Retreat en Buenos Aires:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://sites.google.com/site/comunidadagiles/argentina/code-retreat" href="http://sites.google.com/site/comunidadagiles/argentina/code-retreat"&gt;http://sites.google.com/site/comunidadagiles/argentina/code-retreat&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Leo ahí:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;La idea de un Code Retreat es que un grupo de programadores nos juntemos, programemos , discutamos y aprendamos unos de otros. &lt;/p&gt;    &lt;p&gt;&lt;b&gt;Cuándo&lt;/b&gt;: 24 de Abril, 8:30 a las 17:30&lt;/p&gt;    &lt;p&gt;&lt;b&gt;Dónde&lt;/b&gt;: El evento va tener lugar en las oficinas de Pragma (que es el sponsor) y va a durar desde la 8:30 a las 17:30. Después está la idea de compartir un par de cervezas con aquellos que puedan. La dirección es San Martín 575 Piso 1 (San Martín y Tucumán).&lt;/p&gt;    &lt;p&gt;Como recibimos algunas consultas, aclaramos que el evento no tiene costo para los participantes.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Tienen en esa página &lt;a href="http://bit.ly/a6Td2h" target="_blank"&gt;el enlace para inscribirse&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Es un evento de gran parte del día, es un día sábado, para que puedan concurrir sin estorbar tanto el día laboral. Y una excusa para pasar el sábado con otros desarrolladores de software. Leo en la página:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;La mecánica es la siguiente: vamos a trabajar haciendo Pair Programming y TDD. Todos los pares van a atacar el mismo problema en sesiones de 40 minutos. Una vez terminada la sesión haremos una retrospectiva de unos 10-15 minutos para reflexionar sobre los problemas que encontramos. Luego de la retrospectiva, se cambian los pares, se borra el código escrito en la sesión anterior y se arranca una sesión nueva con el mismo problema que la anterior.     &lt;br /&gt;La idea es hacer unas tres sesiones a la mañana, almorzar juntos y hacer un par más de sesiones a la tarde. Como evento final del Retreat vamos a hacer alguna actividad relacionada pero distinta a las sesiones.      &lt;br /&gt;Los lenguajes que elegimos para este Retreat son Java y C#. Generalmente se usa un solo lenguaje por retreat, pero son lenguajes muy parecidos y nos pareció que abría un poco más la convocatoria usar los dos.       &lt;br /&gt;Durante el retreat vamos a trabajar los siguientes conceptos:&lt;/p&gt;    &lt;p&gt;- es bueno ser capaces de tirar el codigo y empezar de nuevo&lt;/p&gt;    &lt;p&gt;- pequeños pasos en TDD, muy pequeños&lt;/p&gt;    &lt;p&gt;- foco en el tercer paso del ciclo de TDD: calidad del codigo y refactoring&lt;/p&gt;    &lt;p&gt;No es necesario tener experiencia en TDD ni en Pair programming.     &lt;br /&gt;Vamos a necesitar que todos los que puedan lleven laptops con Eclipse/Visual Studio instalados. &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Como se va a trabajar con Pair Programming, pueden concurrir sin laptop, pero cuantos más lleven, mejores parejas se podrán formar.&lt;/p&gt;  &lt;p&gt;Bienvenida la iniciativa!&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=1763548" 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/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+Extrema/default.aspx">Programación Extrema</category></item></channel></rss>