uh! buenísimo, me encanta! hagamos así

2009/11/13 Guillermo Sapaya <[email protected]>

>
> Hola Hernán,
> > no entiendo por què no a partir de un test? el test está haciendo
> > funcionar
> > el sistema! y lo podes reproducir constantemente, automaticamente, etc.
> Me
> > parece que solo estàs pensando en test unitarios con tdd y no es así, o
> > como
> > decias Mariano, en test estructurales y no funcionales, no se, me da esa
> > sensación.
>
> Sabés que puede ser lo que decís :-) Quizás nunca entendí bien cómo hacer
> TDD. Mirá que leí al respecto, inclusive papers de su auténtico creador que
> para mí es un groso mal :-)
> Las veces que intenté me la dí contra la pared, y no soy el único eh! Por
> eso me parece que TDD tiene algo que ver con como está estructurada tu
> cabeza :-)
> Para mí no se puede hacer en una tarde algo que se le pueda sacar el jugo,
> eso lleva meses/años, pero bueno, ojalá que si se hace algo pueda ver cómo
> implementar un sistema desde cero con TDD. Pero me gustaría que sea otro
> dominio que el de los juegos, ya que decís que es bueno para explorar un
> dominio (el de los juegos vos ya lo tenés re claro con la cantidad de años
> que vienen haciéndolo en los TPs :-)). Yo (o cualquiera) te doy un enunciado
> de un problema que planteamos como capacitación a la gente que entra a
> trabajar acá y una vez que tenés todo andando te tiro nuevos requerimientos
> que implican grandes cambios en el modelo.
>
> > Un abrazo
> > Hernan
>
> Otro,
> Guiye
>
>
> > > > > ----- Original Message -----
> > > > > From: Hernan Wilkinson
> > > > > [mailto:[email protected]]
> > > > > To: [email protected]
> > > > > Sent:
> > > > > Fri, 13 Nov 2009 09:37:06 -0200
> > > > > Subject: [clubSmalltalk] Re: DIscusion
> > > > > polemica
> > > > >
> > > > >
> > > > > > 2009/11/12 GallegO <[email protected]>
> > > > > >
> > > > > > >
> > > > > > > Hola Diego:
> > > > > > >
> > > > > > > Esto derivó en algo muy copado. El tema de los tests, creo que
> lo
> > > > > > > describiste perfecto, yo también siento lo mismo. El tema es
> que
> > a
> > > > > > > medida que el desarrollo va madurando empieza a cambiar menos,
> > > hasta
> > > > > > > que se lo pone a prueba en distintas situaciones. En ese
> momento,
> > > > > > > puede ser que haya pasado bastante tiempo desde que se escribió
> > ese
> > > > > > > código, empieza a surgir la necesidad de cambio real, dada por
> > algo
> > > > > > > externo. Vamos a modificar y empezamos a dejar caconas por
> todos
> > > > > > > lados, sin darnos cuenta. No me quiero imaginar que pasa cuando
> > ese
> > > > > > > mismo código lo toca alguien que no tiene el conocimiento de
> > > haberlo
> > > > > > > desarrollado, por más que sea una pieza única y bien pulida.
> > > > > > > ¿Como se hace para tener tantos tests?
> > > > > > >
> > > > > >
> > > > > > no entiendo la pregunta... a ver, si queres tener software
> robusto
> > > > > tenemos
> > > > > > que testear, creo que eso no tiene sentido discutirlo.
> > > > > > La pregunta es, cuando queremos testear y como. Al principio o al
> > > final
> > > > > del
> > > > > > desarrollo? de manera automática o manual?
> > > > > > Para mi: cuanto antes mejor y de manera automática.
> > > > > >
> > > > > >
> > > > > > > ¿Cuando desarrollas el producto si es que tenes que escribir
> > tantos
> > > > > > tests?
> > > > > > >
> > > > > >
> > > > > > es un pregunta capciosa... lo escribis mienstras desarrollas...
> > > tambien
> > > > > > podríamos decir, si hay que diseñar tanto o jugar tanto en el
> > > > workspace,
> > > > > > cuando desarrollas? pero la verdad es que si haces tdd bien,
> > > desarrollar
> > > > > > mientras hacer funcionar los tests, directamente desde el
> debugger,
> > > es
> > > > > > maravilloso
> > > > > >
> > > > > >
> > > > > > > Es decir, las respuestas seguramente sean simples, pero las
> > > ecuaciones
> > > > > > > en tiempo y dinero no.
> > > > > > >
> > > > > >
> > > > > > Eso es contextual y depende del tiempo... a mediano plazo
> cualquier
> > > > > sistema
> > > > > > no testeado te va a traer más problemas que uno testeado.
> > > > > >
> > > > > >
> > > > > > >
> > > > > > > Para mi, y para mi trabajo actual, no es tan simple.
> > > > > > >
> > > > > > > Saludos
> > > > > > >  GallegO
> > > > > > >
> > > > > > >
> > > > > > > El día 12 de noviembre de 2009 18:58, [email protected]
> > > > > > > <[email protected]> escribió:
> > > > > > > >
> > > > > > > > Gabriel,
> > > > > > > > Antes que nada aclaro que tanto el tipado como el uso de
> tests
> > > son
> > > > > > > > técnicas que considero útiles en su debido contexto. Incluso
> > creo
> > > > que
> > > > > > > > los smalltalkers deberían tipar un poquito mas, o un poquito
> > > antes.
> > > > > > > > De los tests me preocupan dos aspectos:
> > > > > > > > 1) Un conjunto de tests es un sistema en si mismo y tiende a
> > > estar
> > > > > > > > fuertemente acoplado con el sistema que se quiere testear.
> Este
> > > > > > > > acoplamiento, como casi todo acoplamiento, resulta un lastre
> en
> > > la
> > > > > > > > evolución del sistema. Un sistema repleto de tests requiere
> mas
> > > > > tiempo
> > > > > > > > para ser modificado. Los amantes de TDD argumentan que dicha
> > > > > evolución
> > > > > > > > es "mas segura" porque está controlada por la validez de los
> > > tests,
> > > > y
> > > > > > > > a mi eso me genera serias dudas. Otro efecto similar que
> > producen
> > > > los
> > > > > > > > tests es que el desarrollador (o jefe) se contenta con ver
> todas
> > > las
> > > > > > > > luces verdes y puede que se relaje en actividades de
> > > factorización,
> > > > > en
> > > > > > > > cambiar cosas, porque generalmente antes de fallar un tests,
> > > falla
> > > > la
> > > > > > > > implementación del mismo.
> > > > > > > > 2) El segundo aspecto tiene que ver con el análisis y diseño.
> > > > Está
> > > > > > > > bueno ver que los programadores de Ruby, a partir de TDD,
> > > entienden
> > > > > > > > que es bueno declarar primero la intención inicial y luego
> > > teclear
> > > > la
> > > > > > > > solución. En Smalltalk esto se puede hacer con tests o con un
> > > > > > > > workspace. Esto implica haber entendido que era mejor
> escribir
> > el
> > > > > > > > problema y luego la solución, a que ir directamente con un
> > diseño
> > > > y
> > > > > > > > luego ver si anda. Pero pensar que uno conoce el problema de
> > > > antemano
> > > > > > > > suele ser ingenuo también, por lo tanto es mas conveniente ir
> > > > > > > > modificando también la intención inicial a partir de lo que
> se
> > > > > aprende
> > > > > > > > en la interacción con el sistema. Entonces ahi me molestan
> los
> > > > tests
> > > > > y
> > > > > > > > prefiero usar workspaces, de esos que uso toco y tiro todo el
> > > > tiempo.
> > > > > > > > Porque no solo no está claro una solución antes de resolver
> un
> > > > > > > > problema, sino que suele no estar claro el problema tampoco.
> > > > > Smalltalk
> > > > > > > > nos da muchas herramientas para entender un problema y en ese
> > ida
> > > y
> > > > > > > > vuelta los tests estorban mas que ayudar.
> > > > > > > >
> > > > > > > > Saludos,
> > > > > > > > Diego Coronel
> > > > > > > >
> > > > > > > >
> > > > > > > > On 12 nov, 12:52, Gabriel Brunstein <[email protected]>
> wrote:
> > > > > > > >> Diego, me interesa tu punto de vista, por qué afirmas que es
> > > > nociva
> > > > > la
> > > > > > > >> seguridad que te dan los tests?
> > > > > > > >>
> > > > > > > >> 2009/11/12 [email protected] <[email protected]>
> > > > > > > >>
> > > > > > > >>
> > > > > > > >>
> > > > > > > >>
> > > > > > > >>
> > > > > > > >> > Mariano,
> > > > > > > >> > Lo que decis me hizo relacionar el tipo de seguridad que
> da
> > el
> > > > > tipado
> > > > > > > >> > con el tipo de seguridad que dan los tests. En ambos
> casos,
> > > IMHO,
> > > > > > > >> > sobredimensionada y nociva a corto plazo.
> > > > > > > >>
> > > > > > > >> > Diego
> > > > > > > >>
> > > > > > > >> > On 12 nov, 11:53, Mariano Abel Coca <
> > > [email protected]>
> > > > > > > wrote:
> > > > > > > >> > > Simplemente para aportar un detalle más.
> > > > > > > >>
> > > > > > > >> > > Saludos,
> > > > > > > >>
> > > > > > > >> > > Mariano.
> > > > > > > >>
> > > > > > > >> > > 2009/11/12 Hernán Galante
> > <[email protected]>
> > > > > > > >>
> > > > > > > >> > > > Lindo intercambio :-)
> > > > > > > >> > > > A mi parecer, no tiene tanto que ver la escritura en
> sí,
> > > > > porque
> > > > > > > Ruby o
> > > > > > > >> > > > Objective C son una copia casi del "Smalltalk
> lenguaje".
> > > Lo
> > > > > que
> > > > > > en
> > > > > > > mi
> > > > > > > >> > > > opinión sucede es un mix de cosas. La primera, es el
> > > tipado.
> > > > > La
> > > > > > > >> > compilación
> > > > > > > >> > > > da cierta "seguridad", pues para el que escribe existe
> > > > alguien
> > > > > > que
> > > > > > > se
> > > > > > > >> > las
> > > > > > > >> > > > sabe todas que te corrige (compilación para hacer el
> > > > runtime).
> > > > > > >  Esta
> > > > > > > >> > > > "seguridad" no se brinda en Smalltalk, pero todos
> sabemos
> > > que
> > > > > los
> > > > > > > >> > > > errores también se compilan sin problemas, el punto
> > aquí
> > > es
> > > > > que
> > > > > > es
> > > > > > > un
> > > > > > > >> > engaño
> > > > > > > >> > > > emocional que hace sentir más seguro a sus
> > programadores.
> > > > > > > >>
> > > > > > > >> > > Esta seguridad en smalltalk la obtenés fácilmente con
> una
> > > > buena
> > > > > > > batería
> > > > > > > >> > de
> > > > > > > >> > > tests, e inclusive la seguridad que dan los tests es
> mayor
> > > que
> > > > > la
> > > > > > > que da
> > > > > > > >> > el
> > > > > > > >> > > compilador... Y no hablo sólo de tests funcionales sino
> de
> > > > tests
> > > > > > del
> > > > > > > >> > > metamodelo. Claro que esas cosas en los otros lenguajes
> no
> > > > > existen
> > > > > > > :)
> > > > > > > >>
> > > > > > > >> > > > La segunda que no entienden de Smalltalk es su
> concepto
> > > > > > holístico.
> > > > > > > Que
> > > > > > > >> > no
> > > > > > > >> > > > hay diferencia entre el sistema en desarrollo y el
> > > > productivo,
> > > > > > que
> > > > > > > no
> > > > > > > >> > hay
> > > > > > > >> > > > diferencia entre IDE y sistema en construcción, no hay
> > > > > > diferencia
> > > > > > > entre
> > > > > > > >> > mi
> > > > > > > >> > > > código y el código que ya existe, etc, etc. Cuantas
> > veces
> > > > han
> > > > > > > vistos o
> > > > > > > >> > nos
> > > > > > > >> > > > ha pasado cuando recién arrancábamos que nos poníamos
> > en
> > > > duda
> > > > > > al
> > > > > > > >> > modificar
> > > > > > > >> > > > un método de una clase de base, o no entender que
> > podemos
> > > > > > > modificar el
> > > > > > > >> > IDE
> > > > > > > >> > > > para que browser haga las cosas que yo quiero, que
> puedo
> > > > > agregar
> > > > > > > en
> > > > > > > >> > cuestión
> > > > > > > >> > > > de unos minutos nuevas opciones, etc.
> > > > > > > >> > > > El otro punto, que tiene que ver con esto de un todo
> > > dentro
> > > > de
> > > > > > > >> > Smalltalk,
> > > > > > > >> > > > es la no existencia de archivos. Esto genera cierta
> > > > > incomodidad
> > > > > > > para
> > > > > > > >> > > > programadores acostumbrados a que la unidad mínima sea
> > un
> > > > > > archivo,
> > > > > > > pues
> > > > > > > >> > es
> > > > > > > >> > > > un esquema brindado fuertemente por el sistema
> operativo.
> > > El
> > > > > > hecho
> > > > > > > >> > también
> > > > > > > >> > > > es educacional, pues el ambiente cuantas veces se
> > > "ensucia" o
> > > > > > > >> > "contamina" y
> > > > > > > >> > > > empezamos a no saber para que lado ir. Eso en un
> ambiente
> > > > > basado
> > > > > > > en
> > > > > > > >> > > > archivos, solo se disfraza la suciedad .. :-). Es más,
> > el
> > > > > hecho
> > > > > > de
> > > > > > > >> > cambiar
> > > > > > > >> > > > de una BBDD a un Gemstone por ejemplo, esto de luchar
> > > contra
> > > > > la
> > > > > > > >> > "basura", es
> > > > > > > >> > > > el principal problema a atender/atacar al
> administrarla,
> > > en
> > > > > una
> > > > > > > BBDD la
> > > > > > > >> > > > basura existe por siempre y no nos damos cuenta (hasta
> > que
> > > > > > > conectamos
> > > > > > > >> > un
> > > > > > > >> > > > producto BI y saltan todos los sapos).
> > > > > > > >> > > > De hecho, no tener esta educación en nuestra sociedad
> > > entera
> > > > > nos
> > > > > > > lleva
> > > > > > > >> > a
> > > > > > > >> > > > enfrentarnos que tenemos al planeta completo
> contaminado
> > y
> > > no
> > > > > > > sabemos
> > > > > > > >> > ni que
> > > > > > > >> > > > hacer.
> > > > > > > >> > > > Smalltalk es demasiado avanzado para que todos lo
> > > entiendan,
> > > > > eso
> > > > > > > es
> > > > > > > >> > algo
> > > > > > > >> > > > que hay que aceptar. Es una falta de educación en el
> > > fondo.
> > > > > > > >>
> > > > > > > >> > > > Saludos,
> > > > > > > >> > > > Hernán.-
> > > > > > > >>
> > > > > > > >> > > > On Wed, Nov 11, 2009 at 3:14 PM, Bruno Buzzi Brassesco
> <
> > > > > > > >> > > > [email protected]> wrote:
> > > > > > > >>
> > > > > > > >> > > >> Es una percepción general de la gente de los
> lenguajes
> > > > > > > tradicionales.
> > > > > > > >> > > >> En la software factory que trabajaba tambien pensaban
> > asi
> > > lo
> > > > > que
> > > > > > > >> > conocían
> > > > > > > >> > > >> (aunque se a de nombre) Smalltalk.
> > > > > > > >>
> > > > > > > >> > > >> Pero no pienses que en C# no podes meter la pata,
> > trabaje
> > > > con
> > > > > un
> > > > > > > >> > Framework
> > > > > > > >> > > >> en C# que era algo lamentable, no voy a poner
> nombres,
> > > pero
> > > > > la
> > > > > > > gente
> > > > > > > >> > que
> > > > > > > >> > > >> construyo esa cosa, era "gurus" de M$. Y mira que es
> > > > > imposible
> > > > > > > que te
> > > > > > > >> > > >> imagines el dolor de los programadores cuando querian
> > > > > construir
> > > > > > > un
> > > > > > > >> > sistema
> > > > > > > >> > > >> usando esa cosa.
> > > > > > > >>
> > > > > > > >> > > >> El problema de C# en este caso es que el Framework
> > estaba
> > > > > "bien
> > > > > > > >> > pensando"
> > > > > > > >> > > >> desde el punto de vista de la arquitectura, cuando
> > llevas
> > > > esa
> > > > > > > "buena
> > > > > > > >> > idea"
> > > > > > > >> > > >> de arquitectura a la practica y construis, el
> ambiente
> > de
> > > > > > > desarrollo
> > > > > > > >> > te
> > > > > > > >> > > >> queda algo que no se puede describir con palabras (un
> > > > > desastre).
> > > > > > > >> > > >> Y esto es porque C# no es homogeneo en Smalltalk no
> hay
> > > > > > > diferencia
> > > > > > > >> > entre
> > > > > > > >> > > >> arquitectura y ambiente de desarrollo, hay objetos
> de...
> > > > > > > >>
> > > > > > > >> > > >> En broma les decia los programadores de C#, eso que
> > tenes
> > > > ahí
> > > > > > es:
> > > > > > > "un
> > > > > > > >> > > >> compilador + un combo box".
> > > > > > > >> > > >> Eso es C#, un compilador (c#) y ComboBox que te hace
> un
> > > goto
> > > > > al
> > > > > > > codigo
> > > > > > > >> > > >> fuente. Y la librería de C# es usanda como un gran
> > > > > repositorio
> > > > > > de
> > > > > > > >> > > >> procedimientos, asi usan C# todos los programadores,
> > > incluso
> > > > > los
> > > > > > > Mega
> > > > > > > >> > Mega
> > > > > > > >> > > >> MS Mega Seniors Expert.
> > > > > > > >>
> > > > > > > >> > > >> En la tecnologia tradicional lo que llaman "orientado
> a
> > > > > objetos"
> > > > > > > NO se
> > > > > > > >> > > >> acerca ni por asomo a como se trabaja en Smalltalk,
> es
> > > muy
> > > > > > > diferente
> > > > > > > >> > la
> > > > > > > >> > > >> forma de resolver problemas y construir sistemas.
> > > > > > > >> > > >> La confusion radica en que se usa el mismo termino: "
> > > > > orientado
> > > > > > a
> > > > > > > >> > objetos"
> > > > > > > >>
> > > > > > > >> > > >> Saludos,
> > > > > > > >> > > >> Bruno
> > > > > > > >>
> > > > > > > >> > > >> -----Original Message-----
> > > > > > > >> > > >> From: [email protected] [mailto:
> > > > > > > >> > > >> [email protected]]
> > > > > > > >> > > >> On Behalf Of Rusty
> > > > > > > >> > > >> Sent: Wednesday, November 11, 2009 4:47 PM
> > > > > > > >> > > >> To: ClubSmalltalk
> > > > > > > >> > > >> Subject: [clubSmalltalk] Re: DIscusion polemica
> > > > > > > >>
> > > > > > > >> > > >> No sé si es lo que lo mató, o si siquiera está
> > muerto.
> > > > > > > >> > > >> Pero si sé que estoy de acuerdo con el comentario.
> > > > > > > >>
> > > > > > > >> > > >> Smalltalk es el paraíso de los buenos programadores.
> > > > > > > >> > > >> Pero también es el paraíso para el desprolijo y el
> que
> > > ata
> > > > > con
> > > > > > > >> > > >> alambre.
> > > > > > > >> > > >> Y eso último es jo-di-do.
> > > > > > > >>
> > > > > > > >> > > >> Salutes.
> > > > > > > >>
> > > > > > > >> > > >> Rusty.
> > > > > > > >>
> > > > > > > >> > > >> On 10 nov, 10:31, GallegO <[email protected]>
> wrote:
> > > > > > > >> > > >> > Se desato una discusion en el blog de cincom y
> rescato
> > > un
> > > > > > > comentario
> > > > > > > >> > > >> > que quiero compartir:
> > > > > > > >>
> > > > > > > >> > > >> > Completo enhttp://bit.ly/Uu517
> > > > > > > >>
> > > > > > > >> > > >> > ...but I think the context of the quote is being
> > > > > > misinterpreted
> > > > > > > >> > > >> > somewhat.  My impression from the video wasn't that
> > Bob
> > > > was
> > > > > > > >> > > >> > misrepresenting Cunningham's meaning, but just that
> he
> > > > > wasn't
> > > > > > > >> > > >> > explaining it very well.
> > > > > > > >> > > >> > 'What killed Smalltalk is that it was just too easy
> to
> > > > make
> > > > > a
> > > > > > > mess."
> > > > > > > >> > > >> > I think that's absolutely true, but it isn't
> > > necessarily a
> > > > > bad
> > > > > > > >> > thing.
> > > > > > > >> > > >> > The truth is that in Smalltalk it's often easier to
> do
> > > > > > > anything,
> > > > > > > >> > both
> > > > > > > >> > > >> > good and bad.  It's rather like saying that the
> > problem
> > > > > with a
> > > > > > > >> > > >> > motorcycle, compared to a bicycle, is that it's
> just
> > > too
> > > > > easy
> > > > > > > to go
> > > > > > > >> > > >> > too fast and wreck one.  With programming
> languages,
> > as
> > > > > with
> > > > > > > bikes,
> > > > > > > >> > if
> > > > > > > >> > > >> > you give a powerful tool to an undisciplined,
> > > > inexperienced
> > > > > > > user,
> > > > > > > >> > they
> > > > > > > >> > > >> > can cause a lot of damage.
> > > > > > > >> > > >> > If the only vehicle you give someone is a one-gear
> > > bicycle
> > > > > > with
> > > > > > > >> > street
> > > > > > > >> > > >> > tires and training wheels, it'll be really hard for
> > > them
> > > > to
> > > > > > > hurt
> > > > > > > >> > > >> > themselves, but they're never going to go very far
> or
> > > very
> > > > > > > fast,
> > > > > > > >> > > >> > either.
> > > > > > > >>
> > > > > > > >> > > >> > Saludos
> > > > > > > >> > > >> >   GallegO
> > > > > > > >>
> > > > > > > >> > > >> No virus found in this incoming message.
> > > > > > > >> > > >> Checked by AVG -www.avg.com
> > > > > > > >> > > >> Version: 8.5.424 / Virus Database: 270.14.53/2486 -
> > > Release
> > > > > > Date:
> > > > > > > >> > 11/07/09
> > > > > > > >> > > >> 07:38:00- Ocultar texto de la cita -
> > > > > > > >>
> > > > > > > >> > > - Mostrar texto de la cita -- Ocultar texto de la cita -
> > > > > > > >>
> > > > > > > >> - Mostrar texto de la cita -
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > > > >
> > > > >
> > > >
> > > > >
> > > >
> > >
> > > >
> > >
> >
> > >
> >
>
> >
>

--~--~---------~--~----~------------~-------~--~----~

To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]

http://www.clubSmalltalk.org
-~----------~----~----~----~------~----~------~--~---

Responder a