[Lazarus-es] TDD y Coding Dojo

francisco prieto fajprieto en gmail.com
Mie Oct 15 21:23:57 CEST 2014


Gaston,

Bueno a SmalTalk lo conozco de nombre ya que hace unos 15 años cuando
estaba trabajando para el Banco Hipotecario salio una conversación a cerca
de un lenguaje que era 100% objeto...

En fin los años pasaron y no he tenido oportunidad de manipularlo.

Por mi parte ya elegí FreePascal con Lazarus o CodeTyphon para hacer todos
mis desarrollos, ahora estoy resolviendo un problema de FastCgi que no
llego a puerto en Windows y estoy viendo si puedo llegar a puerto en
Ubuntu...

En fin,  te agradezco la info.

Saludos,

Pancho
Córdoba
Argentina

El 15 de octubre de 2014, 15:25, Gastón Dall' Oglio <
gaston.dalloglio en gmail.com> escribió:

> Hola gente.
>
> Recién voy leyendo estos mails de TDD en pascal que me los había dejados
> marcados. Francisco, como decías que andas investigando diferentes
> lenguajes, que estas interesado en TDD, y que queres compartir experiencias
> con otros programadores, aprovecho para comentarte que en noviembre en
> Córdoba va a realizarse un congreso de Smalltalk, por si te interesa. Como
> dijo Giuseppe, TDD se origino en Smalltalk.
> Aún no han publicado la lista de charlas, pero en breve seguro lo hagan.
> Lo que no te va a gustar seguramente es que son en ingles la mayoría (a mí
> eso me complica bastante), pero igual vale la pena asistir.
> http://www.fast.org.ar/smalltalks2014
>
> Saludos!
>
> El 20 de junio de 2014, 9:31, francisco prieto <fajprieto en gmail.com>
> escribió:
>
> Victor,
>>
>> Te puedo asegurar que no es ninguna perdida de tiempo. Lo mas maravilloso
>> de esta técnica y del Coding Dojo que nadie menciono hasta ahora es que
>> aprendes a ordenar tus pensamientos creativos, calmar tus ansiedades y a la
>> larga programar mas rápido y sin cometer errores, claro que para eso tu
>> cabeza debe hacer un clic, pero bueno somos programadores y nos gustan los
>> clic :)
>>
>> En el Coding Dojo ademas aprendes las técnicas y los trucos que utiliza
>> el otro programador a la hora de resolver un problema, es algo maravilloso
>> en términos de programación.
>>
>> Este video que envie de TDD, por ejemplo, Carlos Peix (el orador) lo
>> raliza con C#, pero yo lo estoy siguiendo con Lazarus y se puede hacer todo
>> tal cual... Por ejemplo en Visual Fox, que es el lenguaje en que están la
>> mayoría de mis sistemas, no existe el concepto de interface.... existen si
>> los forms y las clases...  pero si quisiera no podría programar una
>> interface. Pues bien por temas sintácticos hay cosas que me vienen a la
>> mente en VFP y no las puedo plasmar directamente en FreePascal porque no
>> funcionarían, quizás si funcione la teoría pero tengo que ponerle la
>> sintaxis adecuada. Así que con este video de TDD estoy tratando que mi
>> cabeza haga clic y pensar los ejemplos concretos para desarrollar lo que
>> propone el video y al mismo tiempo estudiar como se hace en FreePascal lo
>> que Carlos hace en el video...
>>
>> Como dije estoy en Córdoba... Me gustaría que proyecten un encuentro en
>> Córdoba, no tiene que ser en un hotel, puede ser en un cafe, para hacer un
>> Coding Dojo y/o explicar técnicas de programación que utilizan a menudo...
>>
>> En cuanto termine de hacer el TDD del video en Lazarus, subiré el fuente
>> de como quedó. Aunque el mayor aprendizaje no esta en el fuente terminado,
>> sino en el proceso de diseño.
>>
>> Los mantengo al corriente.
>>
>> Saludos,
>>
>> Pancho
>> Córdoba
>>
>>
>> El 20 de junio de 2014, 0:30, Victor Villalobos <revxfire en gmail.com>
>> escribió:
>>
>> Es una perdida de tiempo para programas pequeños, pero para sistemas
>>> grandes ayuda bastante, claro todo es cuestion de costumbre en nuestra vida
>>> de programador, pero debemos cambiar aveces, nunca he hecho esto aca en FPC
>>> ni se como se trabajara tampoco, ya que solo lo he trabajado en python que
>>> es un lenguaje dinamico y la mayoria de las pruebas te pasan el error en
>>> tiempo de ejecución del script.
>>>
>>>
>>> El 19 de junio de 2014, 21:55, Martin Gomez <mmgomez en gmail.com>
>>> escribió:
>>>
>>> Con tantas buenas opiniones al respecto me dan ganas de darle una
>>>> segunda oportunidad.
>>>> Como lo entendí yo es que básicamente antes de escribir el código de mi
>>>> programa debo escribir una rutina que lo pruebe, de esa manera al escrinbir
>>>> el código tengo una herramienta que me dice si lo que escribí funciona como
>>>> yo espero (y si lo cambio dentro de 2 años tengo una herramienta que me
>>>> indica si rompí algo como efecto colateral)
>>>>
>>>> Mi problema es que teniendo 30 años de programanor, escribo el código
>>>> en mi cabeza más rapido de lo que me dan los dedos, y la ansiedad me hacía
>>>> sentir que escribir los test era una pérdida de tiempo... Voy a darle una
>>>> segunda chance y comentar como me fue.
>>>>
>>>>
>>>>
>>>> 2014-06-19 21:48 GMT-03:00 Victor Villalobos <revxfire en gmail.com>:
>>>>
>>>> El TDD mas un entorno de automatización de pruebas, te ayuda a probar
>>>>> en tiempo real todo el dise;o y acoplamiento de tu software, al principio
>>>>> desarrollaras mas lento pero en software que tiende a tener un crecimiento
>>>>> te ayuda a verificar que cada parte de tu sistema se ejecute correctamente,
>>>>> he trabajado con selenium IDE + Python y a la larga te da mucha seguridad y
>>>>> facilidad en el desarrollo.
>>>>>
>>>>> Saludos.
>>>>>
>>>>>
>>>>> El 19 de junio de 2014, 16:03, Giuseppe Luigi <glpunzi en gmail.com>
>>>>> escribió:
>>>>>
>>>>> Me gustaría añadir. El TDD nació en Smalltalk hace unos cuantos años.
>>>>>> El test browser,  cuando lanzaba los tests ponía una lucecita verde
>>>>>> marcando que el test era correcto,  y la filosofía dice que hay que
>>>>>> conseguir los tests en verde cuanto antes .
>>>>>>
>>>>>> Aunque no tanto en otros lenguajes, pero donde mejor se puede aplicar
>>>>>> esta técnica es en Entornos Smalltalk, donde perfectamente puedes programar
>>>>>> a base de tests y depurador.
>>>>>>
>>>>>> Los tests definen el comportamiento de una mínima unidad de trabajo.
>>>>>> Ej, en smalltalk un objeto puede tener el mensaje "+" de tal manera que un
>>>>>> test comprueba si 1+1 es 2, y en caso contrario da un error.
>>>>>>
>>>>>> Es una buena práctica para sistemas propensos a crecer, ya que si
>>>>>> algo en el código rompe algo en alguna otra parte, rápidamente el test
>>>>>> saltaría avisándote del error.
>>>>>>
>>>>>> Disculpar la brevedad, estoy desde móvil.
>>>>>> El 19/06/2014 22:20, "francisco prieto" <fajprieto en gmail.com>
>>>>>> escribió:
>>>>>>
>>>>>> Te cuento...
>>>>>>>
>>>>>>> Esto del TDD es diseñar el codigo a partir de ejemplos. La tecnica
>>>>>>> bien aplicada te permite tener una aplicacion que te pruebe automaticamente
>>>>>>> todo el sistema cada vez que realizas un cambio y si un test falla te dice
>>>>>>> exactamente el test que fallo.
>>>>>>>
>>>>>>> La tecnica se usa mucho para grupos de programadores, pero si un
>>>>>>> programador independiente puede usar esta tecnica sabe con seguridad que el
>>>>>>> programa funciona paso a paso. Es como tener un robot que te compila el
>>>>>>> programa por cada modificacion que vos haces, pero no solo controla la
>>>>>>> sintaxis del lenguaje, sino la lógica del negocio.
>>>>>>>
>>>>>>> Pero para que lo entiendan mejor creo que vale la pena ver este
>>>>>>> video dictado por uno de los capos (Carlos Peix)
>>>>>>>
>>>>>>> https://www.youtube.com/watch?v=jhG2ox8FYRM
>>>>>>>
>>>>>>> Bueno a partir de la respuesta de Martin, investigue un poco mas y
>>>>>>> al crear un proyecto nuevo uno de los tipos de proyectos que se puede crear
>>>>>>> es un FPCUnit Test Application, el cual te genera la cascara, para que se
>>>>>>> pueda cargar cada uno de los test.
>>>>>>>
>>>>>>> Aun no encontre una documentacion practica de como utilizar la
>>>>>>> aplicacion generada, pero he utilizado TDD en otras oportunidades y no debe
>>>>>>> ser tan diferente.
>>>>>>>
>>>>>>> Los mantengo al corriente de mis descubrimientos, ya que tengo la
>>>>>>> teoría que para poder recibir, primero hay que brindar...
>>>>>>>
>>>>>>> Saludos,
>>>>>>> Pancho
>>>>>>> Córdoba
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> El 19 de junio de 2014, 16:58, Maxi <maximiliano.duarte en gmail.com>
>>>>>>> escribió:
>>>>>>>
>>>>>>>> No entiendo muy bien como es esto del tdd, pero por lo que leo y
>>>>>>>> solicitas Lazarus te da un entorno limpio, simple, y capaz de
>>>>>>>> realizar
>>>>>>>> cualquier tarea. Como desventaja (por ahora) lo que veo es que el
>>>>>>>> cross compiler a android es medio dificil de lograr, lo que no es
>>>>>>>> asi
>>>>>>>> en Delphi x5/6 que está bien probado. y en aplicaciones web tambien
>>>>>>>> es
>>>>>>>> poco lo que se puede hacer.
>>>>>>>> Yo con delphi/lazarus he podido hacer todo lo que me propongo.
>>>>>>>>
>>>>>>>> El día 19 de junio de 2014, 15:59, Martin Gomez <mmgomez en gmail.com>
>>>>>>>> escribió:
>>>>>>>> > Hola Pancho y Victor
>>>>>>>> >
>>>>>>>> > No soy muy fan del TDD ni sus framework, pero Lazarus incluye uno
>>>>>>>> > (http://wiki.lazarus.freepascal.org/fpcunit) y existe otro de
>>>>>>>> terceros que
>>>>>>>> > hace más o menos lo mismo (http://wiki.freepascal.org/FPTest)
>>>>>>>> >
>>>>>>>> > Con respecto a la documentación y a los standares o "practicas
>>>>>>>> > recomendables", si bien Lazarus incluye una ayuda excelente a
>>>>>>>> veces no
>>>>>>>> > alcanza, y lamentablemente la mayor cantidad de documentación que
>>>>>>>> se
>>>>>>>> > consigue está en inglés.
>>>>>>>> >
>>>>>>>> > Te recomiendo leer o hacer búsquedas en los foros de Lazarus y de
>>>>>>>> CodePython
>>>>>>>> > (una distribución de Lazarus con varios cientos de componentes de
>>>>>>>> terceros
>>>>>>>> > incluidos), y preguntar lo que vaya surgiendo en este grupo de
>>>>>>>> email, que
>>>>>>>> > está lleno de buenos profesionales y la mejor de las voluntades
>>>>>>>> para ayudar
>>>>>>>> > o al menos opinar sobre los temas.
>>>>>>>> >
>>>>>>>> > Saludos,
>>>>>>>> > Martín
>>>>>>>> >
>>>>>>>> >
>>>>>>>> >
>>>>>>>> > 2014-06-19 15:45 GMT-03:00 Victor Villalobos <revxfire en gmail.com
>>>>>>>> >:
>>>>>>>> >
>>>>>>>> >> Buenas, yo también estoy en un cambio muy parecido, la verdad me
>>>>>>>> gusta
>>>>>>>> >> bastante Lazarus y freepascal, pero encuentro siempre poco de
>>>>>>>> esos videos
>>>>>>>> >> online que te enseñan técnicas de codificación que no están en
>>>>>>>> los libros y
>>>>>>>> >> que se aprenden en el diario de un programador.
>>>>>>>> >>
>>>>>>>> >> Saludos.
>>>>>>>> >>
>>>>>>>> >>
>>>>>>>> >> El 19 de junio de 2014, 5:15, francisco prieto <
>>>>>>>> fajprieto en gmail.com>
>>>>>>>> >> escribió:
>>>>>>>> >>>
>>>>>>>> >>> Me presento mi nombre es Francisco Angel Javier Prieto, vivo en
>>>>>>>> Capilla
>>>>>>>> >>> del Monte, Córdoba, Argentina y pero en los foros (sobre todo
>>>>>>>> de VFP) me van
>>>>>>>> >>> a encontrar como Pancho de Córdoba.
>>>>>>>> >>>
>>>>>>>> >>> Bueno, hace unos 3 años estoy estudiando todos los lenguajes
>>>>>>>> que se
>>>>>>>> >>> cruzaron por mi camino, Free Pascal con su Ide Lazarus fue uno
>>>>>>>> de los
>>>>>>>> >>> primeros, pero en ese momento no encontré la suficiente
>>>>>>>> documentación como
>>>>>>>> >>> para que cumpla con todos mis objetivos, que al día de la fecha
>>>>>>>> cumple.
>>>>>>>> >>>
>>>>>>>> >>> Paso a relatarles un poco mi situación para que vean hacia
>>>>>>>> donde va mi
>>>>>>>> >>> pregunta.
>>>>>>>> >>>
>>>>>>>> >>> Mi trabajo principal es ser programador de programadores (ese
>>>>>>>> es mi
>>>>>>>> >>> fuerte en VFP), para lograrlo debo estudiar mucho todo el
>>>>>>>> tiempo, no solo
>>>>>>>> >>> VFP sino todas las tecnologías que van saliendo.
>>>>>>>> >>>
>>>>>>>> >>> Por otra parte hago drivers de balanzas, controladores y otros
>>>>>>>> >>> dispositivos. Los tengo realizados en Visual C++, Visual Basic
>>>>>>>> y Visual
>>>>>>>> >>> Foxpro.
>>>>>>>> >>>
>>>>>>>> >>> Además realizo software propietario para terceros y ademas
>>>>>>>> tengo mis
>>>>>>>> >>> propios clientes (de los normales que tiene todo programador).
>>>>>>>> >>>
>>>>>>>> >>> Tengo hechas apk para Android realizadas con Eclipse y
>>>>>>>> aplicaciones para
>>>>>>>> >>> Windows Phone con Visual Studio.
>>>>>>>> >>>
>>>>>>>> >>> Lo único que tercerizo en mi trabajo es el chat de Skype, esto
>>>>>>>> al ser
>>>>>>>> >>> independiente, me permite dedicar aun mas tiempo a la
>>>>>>>> programación y al
>>>>>>>> >>> estudio y logro mayor concentración.
>>>>>>>> >>>
>>>>>>>> >>> El objetivo que me platee hace mas de 3 años es migrar toda mi
>>>>>>>> >>> programación a 1 solo lenguaje que me permita.
>>>>>>>> >>>
>>>>>>>> >>> 1) Realizar toda la programación de PC que vengo haciendo con
>>>>>>>> VFP. Poder
>>>>>>>> >>> trabajar con motores (lease SqlServer, Oracle, MySql, Firebird,
>>>>>>>> etc)
>>>>>>>> >>>
>>>>>>>> >>> 2) Realizar todos los drivers y poder compilarlos. Ya que en
>>>>>>>> muchos casos
>>>>>>>> >>> el código es propietario.
>>>>>>>> >>>
>>>>>>>> >>> 3) Realizar aplicaciones mobiles y si es posible web (en este
>>>>>>>> sentido me
>>>>>>>> >>> gusta mucho MEAN)
>>>>>>>> >>>
>>>>>>>> >>> 4) Salir del mundo Microsoft y abrirme al mundo open source, a
>>>>>>>> pesar que
>>>>>>>> >>> mucho de lo que programo es propietario.
>>>>>>>> >>>
>>>>>>>> >>> 5) El lenguaje elegido debe poseer vasta documentación en
>>>>>>>> español (a ver,
>>>>>>>> >>> yo no soy ingles y muchas veces es todo un trabajo interpretar
>>>>>>>> la
>>>>>>>> >>> explicación del ejemplo en ingles, siendo el español uno de los
>>>>>>>> idiomas mas
>>>>>>>> >>> hablados no veo porque deba referirme a bibliografía inglesa).
>>>>>>>> >>>
>>>>>>>> >>> 6) Debe tener un foro de referencia en español, porque cuando
>>>>>>>> las papas
>>>>>>>> >>> queman, el idioma se transforma en un problema mas a resolver y
>>>>>>>> si no logro
>>>>>>>> >>> expresar la idea en la pregunta, es probable que no llegue a
>>>>>>>> buen puerto o
>>>>>>>> >>> que demore demasiado en hacerlo.
>>>>>>>> >>>
>>>>>>>> >>> Bueno en este ultimo año he estado estudiando ademas técnicas de
>>>>>>>> >>> programación y me tope con estas 2...
>>>>>>>> >>>
>>>>>>>> >>> Lo que deseo saber es si hay alguna librería que me permita
>>>>>>>> hacer TDD con
>>>>>>>> >>> Lazarus, ya que si bien quiero migrar todo deseo tomarme el
>>>>>>>> tiempo necesario
>>>>>>>> >>> para que todo trabaje con TDD.
>>>>>>>> >>>
>>>>>>>> >>> Como dije por otra parte soy independiente y no tengo un equipo
>>>>>>>> de
>>>>>>>> >>> trabajo con el cual hacer Coding Dojo, pero estando el foro, me
>>>>>>>> gustaría que
>>>>>>>> >>> 2 o tres codificadores realicen una aplicación mas o menos
>>>>>>>> sencilla on line
>>>>>>>> >>> para aprender mirando las técnicas que utilizan en Free Pascal
>>>>>>>> durante la
>>>>>>>> >>> codificación, esto siempre abre nuevas posibilidades, pero no
>>>>>>>> veo que se
>>>>>>>> >>> haga a menudo.
>>>>>>>> >>>
>>>>>>>> >>> Gracias,
>>>>>>>> >>>
>>>>>>>> >>> Pancho
>>>>>>>> >>> Córdoba
>>>>>>>> >>> Argentina
>>>>>>>> >>>
>>>>>>>> >>> _______________________________________________
>>>>>>>> >>> Lazarus-es mailing list
>>>>>>>> >>> Lazarus-es en lists.lazarus.freepascal.org
>>>>>>>> >>> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>>>>>>>> >>>
>>>>>>>> >>
>>>>>>>> >>
>>>>>>>> >>
>>>>>>>> >> --
>>>>>>>> >> Victor Villalobos
>>>>>>>> >> Bahia Pirata
>>>>>>>> >> Inversiones Villalobos Balzan.
>>>>>>>> >> 0412 6882141
>>>>>>>> >>
>>>>>>>> >> _______________________________________________
>>>>>>>> >> Lazarus-es mailing list
>>>>>>>> >> Lazarus-es en lists.lazarus.freepascal.org
>>>>>>>> >> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>>>>>>>> >>
>>>>>>>> >
>>>>>>>> >
>>>>>>>> >
>>>>>>>> > --
>>>>>>>> > Try not to become a man of success but rather to become a man of
>>>>>>>> value.
>>>>>>>> > Albert Einstein
>>>>>>>> >
>>>>>>>> > _______________________________________________
>>>>>>>> > Lazarus-es mailing list
>>>>>>>> > Lazarus-es en lists.lazarus.freepascal.org
>>>>>>>> > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>>>>>>>> >
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> El que pregunta aprende, y el que contesta aprende a responder.
>>>>>>>>
>>>>>>>> No a la obsolecencia programada:
>>>>>>>>
>>>>>>>> http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml
>>>>>>>>
>>>>>>>> Linux User #495070
>>>>>>>> http://domonetic.com/blog
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> Lazarus-es mailing list
>>>>>>>> Lazarus-es en lists.lazarus.freepascal.org
>>>>>>>> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Lazarus-es mailing list
>>>>>>> Lazarus-es en lists.lazarus.freepascal.org
>>>>>>> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>>>>>>>
>>>>>>>
>>>>>> _______________________________________________
>>>>>> Lazarus-es mailing list
>>>>>> Lazarus-es en lists.lazarus.freepascal.org
>>>>>> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Victor Villalobos
>>>>> Bahia Pirata
>>>>> Inversiones Villalobos Balzan.
>>>>> 0412 6882141
>>>>>
>>>>> _______________________________________________
>>>>> Lazarus-es mailing list
>>>>> Lazarus-es en lists.lazarus.freepascal.org
>>>>> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Try not to become a man of success but rather to become a man of value. *Albert
>>>> Einstein*
>>>>
>>>> _______________________________________________
>>>> Lazarus-es mailing list
>>>> Lazarus-es en lists.lazarus.freepascal.org
>>>> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>>>>
>>>>
>>>
>>>
>>> --
>>> Victor Villalobos
>>> Bahia Pirata
>>> Inversiones Villalobos Balzan.
>>> 0412 6882141
>>>
>>> _______________________________________________
>>> Lazarus-es mailing list
>>> Lazarus-es en lists.lazarus.freepascal.org
>>> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>>>
>>>
>>
>> _______________________________________________
>> Lazarus-es mailing list
>> Lazarus-es en lists.lazarus.freepascal.org
>> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>>
>>
>
> _______________________________________________
> Lazarus-es mailing list
> Lazarus-es en lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus-es/attachments/20141015/52f860f4/attachment-0002.html>


More information about the Lazarus-es mailing list