Tenemos responsabilidad en lo que enseñamos/ mostramos?? … o simplemente nos dejamos llevar por las modas…

El post que saco hace unos días Jorge  sobre el por que quitar las referencias a VB  hizo que vuelva a mi mente unas cosas que tenia ya hace tiempo en la cabeza… y bueno, Jersson hizo que me anime a publicarlo. 

Problema :

lo que pensaba era si nosotros como expositores, divulgadores de tecnología ( que no sean empleados MS), entusiastas, etc.. somos responsables de las cosas que mostramos o damos a conocer a los demás…  ya que como una vez me dijo  Fer:

“muchas veces las personas –los lectores- toman muy en serio las cosas que decimos -escribimos-, así que se tiene que tener cuidado con lo que se dice –escribe-  públicamente”

Lógicamente  cada persona es libre de poner lo que le plazca en su blog/web/twitter, etc. pero creo que es necesario que seamos un poco mas consientes de la imagen que damos, a que me refiero?…  supongamos que sale una nueva funcionalidad, característica, etc.… lógicamente es publicada en su mayoría al inicio por algún empleado ms,  o algún socio, donde habla de esa funcionalidad, lógicamente por lo mismo de que es “ un negocio”  solo dirán el lado bonito,  lo bueno, pero no dirán “lo que viene por detrás” , el costo de usar esa funcionalidad, y muchas veces caemos en el error de “copypastear”  la noticia y publicarla así tal cual, sin haber antes probado…, o bueno quizá hasta allí podría pasar como “noticia”, pero lo mas correcto seria “quizá”  que probemos a profundidad esa funcionalidad, para poder ser capaz  de dar una opinión.

Otro problema muy común, es que solo probamos lo bonito, y no nos fijamos en lo demás, llegamos hasta dar conferencias o a hablar del producto, pero sin antes haber investigado sobre el costo de usar eso, personalmente siento que no se conoce realmente algo, hasta que se sabe su lado bueno y malo, cuando encuentro algo nuevo, busco lo bueno y a su vez – no por negativo- busco el costo de usarlo, y luego hago un balance entre lo bueno y lo malo, y si gana lo bueno lo uso…; e platicado con  varias personas  sobre determinadas tecnologías que usan, y les preguntaba si conocían determinado “ problema” que tendrían por usar esa tecnología ( para saber si eran consientes de eso), pero resultaba en muchos casos que ni sabían de eso, pensaban que todo era maravilloso. Lógicamente si uno es consiente de lo bueno y lo malo  y aun así decide usarlo, eso es algo para respetar, ya que tomo su decisión  conociendo realmente lo que esta usando.

Creo que es malo usar “en producción”  o recomendar masivamente que lo usen “en producción”  algo que no conocemos a fondo, muchas veces por querer ser “early adopter’s”   ponemos en producción cosas que nosotros no hemos probado a profundidad,  el lio es que cuando salen los problemas… volvemos a lo mismo “es culpa de MS” . También creo que es malo dejarnos llevar ciegamente por lo que podamos leer en blogs/webs/ conocidas , si bien es cierto muchos de nosotros somos socios “partner’s”  de Microsoft, y usamos sus tecnologías, y podemos leer una noticia  de alguna nueva tecnología”  y sin refutar, nos ponemos a usarla “en producción”  a fondo como si fuera esa tecnología perfecta y lo recomendamos a otros,  y luego si sale una nueva que se sobrepone a esta que estamos usando, sin refutar ni investigar a fondo nos ponemos a migrar a esa nueva funcionalidad, gastando recursos por algo que quizá funcionaba bien… y esto por que???? … por las “Modas” 

En estos círculos “.Net” llegue a reconocer a varios tipos de usuarios de tecnologías Microsoft, lógicamente  hay personas que si respeto mucho, ya que no se dejan llevar por la promoción investigan y sacan sus propias opiniones, esto en base a investigación propia, además de posibles referencias en el internet. También están las personas que no investigan y se creen todo lo que leen,  casi casi hasta lo que aparece en la web “el día de los inocentes”   y lo toman como “ ley”  y  muchas veces lo defienden a muerte, el problema en este caso es cuando estas personas son expositores, o divulgadores de tecnología, y sin haber tener una opinión propia bien fundamentada, replican eso y se genera el efecto del telefonito malogrado;  en muchos casos son conocidos como los que simplemente se memorizan la ppt y lo repiten  tal cual – e visto varios eventos, de ponentes diferentes,  donde se dice exactamente lo mismo, como si fuera el Avemaria –.Los que siguen Modas, estas personas no tienen una preferencia real, usan y siguen lo que este de “moda”, si la moda cambia, ellos cambian, algunas veces dura dias o meses. También están los Incondicionales, de los que defenderán a MS a muerte, saque la tecnología que saque, a mi parecer estos son los mas peligrosos, por que puede llegar a ser que hayan investigado a fondo ( casi no lo hacen, pero seamos optimistas ), pero por el simple echo de quedar bien, mostrarse “actualizados” ( o muchos otros motivos, el cual prefiero no mencionar… pero son conocidos), estas personas son de las que intentarían vender refrigeradoras a los esquimales –ósea no les importa si les sirve o no, lo que importa es darles lo ultimo-, recuerdo una vez que platicaba con una persona y defendía a muerte a Virtual PC 2004, decía que era mucho mejor que el vmware…, me atreví a preguntarle que si lo había usado… y me dijo que no, “ pero que en la web decía que era lo máximo”, lógicamente la platica allí termino… quizá haya otra categoría que se me haya pasado…  en este momento no la recuerdo.

 

Consecuencias :

Si, en este punto muchas personas estarán pensando “ yo soy libre de poner lo que quiera”  y no se equivocan, el detalle es … se habrán dado cuenta de las consecuencias de eso?, de que tanto pueden influir en los lectores? ….

Aquí unos ejemplos de cosas en las cuales AHORA ya no vemos bien ( o al menos de cierto modo) y en las cuales muchos hemos caído ( tengo que aceptar que en el primer caso yo caí … y fue la ultima vez que me deje llevar):

Dataset : cuando salió .Net el Dataset era el boom, si bien es cierto en muchos casos es útil, pero eso luego de un análisis de costo/beneficio, pero en el tiempo en que salió 2002/ 2003 era el boom, así que todos lo usaban , casi todos exponían de eso, de la facilidad, de lo corto del código, del dataadapter.fill y el dataadapter.update, ya hasta que se vieron los problemas en “producción” de performance se comenzó a cambiar la idea, aquí tengo que aceptar que yo tbm fui victima de esto, el detalle es que este “ problema” aun no termina, ya que en muchos de los ejemplos del MSDN – y otros website-  se usan como ejemplos los dataset,  si bien es cierto muchos ya estamos usando las listas genéricas y entidades en el acceso a datos, información  casi no se encuentra “públicamente” y las personas que recién están aprendiendo, verán que se usa dataset y lo usaran en producción, e visto grandes sistemas llenos de dataadapters y datasets en producción, y me llamaban ya que no entendían “por que era tan lento, si estaba echo en .net”.

Ajax : Este es reciente, en este caso es una buena tecnología, pero muchas veces no informamos bien el problema de no usarlo bien, y los usuarios se ponen a poner a diestra y siniestra updatepanels y demás sobresaturando sus paginas, lo bueno es que ahora ya en muchos lugares e visto donde recomiendan usarlo con moderación, pero eso no era así al inicio.

My: de esto se trata  el post de Jorge  sobre el por que es bueno quitarlo…, el detalle es que cuando salió vs 2005, esto fue uno de los caballitos de batalla.

Este ultimo es una opinión personal, aunque posiblemente muy controversial

Linq2SQL : bueno en este caso.. y en esta batalla estoy “casi solo” ( al menos en geeks.ms ), ya que “por el momento” soy de las pocas personas que no esta muy a favor de esto en especifico ( aunque la idea de Linq en general me parece buena, como Linq2Entity), ya Jersson publico unas pruebas de performance, además de que en un articulo se habla de la posible desaparición de Linq2SQL:  http://tinyurl.com/56d5ze , y  es algo en lo que estaría muy de acuerdo, Jersson me dijo que “tengamos paciencia, ya llegara ese día”, algo que espero; lógico hay quienes realmente han visto su lado bueno y malo, lo evaluaron y aun así decidieron usarlo, allí no podría decirles nada, ya que según su evaluación costo/beneficio les convenía usarlo, si fuera este el caso, es el tipo de cosas que hacen que respete a las personas.

Conclusiones :

Esos fueron ( al menos de los 3 primeros) ejemplos de tecnologías que son comúnmente muy “ mal usadas” por los programadores sin experiencia, y esto por que? por que vieron en algún blog, una conferencia, un webcast, que se usaba de cierto modo, y no tuvieron el aviso de que “solo servía como demostración, y no para entornos reales”; lógicamente esto es algo bueno para los de consultoría, ya que cobrarían ( y muy bien)  para arreglar ese tipo de situaciones 🙂 .

Seria recomendable que cada uno haga una introspección y vea si lo que uno “predica” es algo que realmente conoce, si esta uno ya evaluó lo bueno, lo malo,  y aun así decide usarlo; si alguien hace la evaluación y  siente que determinada tecnología que usa es la mejor a su parecer, es algo de respetar, ya que en software, no hay “ respuesta correcta”, creo que lo correcto para todo seria la palabra “depende” , pero  todo usándolo luego de una evaluación, es malo si usamos las cosas sin antes evaluar bien la situación;  Seria Tan valido usar el GOTO en Vb si luego de una evaluación  vemos que es algo que nos conviene – ya esta probado que ms en el IL genera sentencias GOTO – esto en el blog de Rafael Ontivero – , supongo que MS evaluó y vio que era lo mejor-.

para terminar, solo me queda decir que seria bueno que pensemos no solamente en lo que ponemos, sino también como lo recibirán nuestros lectores y como podríamos afectarlos.

“No Siempre lo ultimo y lo mas voceado es lo mejor, primero analicemos, si realmente conviene usarlo, si luego de una evaluación profunda vemos que nos convence, entonces allí si  comencemos a recomendarlo a nuestros conocidos, ya que tendríamos un buen fundamento”. Dacito.

Pdta:  si se fijan, aclare de personas “No empleadas de MS”, ya que es razonable y lógico que los empleados MS defiendan sus tecnologías, ya que es una empresa privada y esas tecnologías son parte de su negocio, por eso mismo debemos de tomar con pinzas todas las noticias o lanzamientos que hacen.

Pdta2:  si llegaste a leer hasta aquí… ya tienes mis respetos, por el aguante, y espero no haber ofendido a nadie, si  es que llegue a hacerlo, de antemano le pido una disculpa.

 

Salu2

 

David Daniel Arroyo Zari – Ddaz –

12 comentarios en “Tenemos responsabilidad en lo que enseñamos/ mostramos?? … o simplemente nos dejamos llevar por las modas…”

  1. David, muy buena entrada… Espero que no recibas el mismo tipo de comentario que yo recibo cuando critico lo que critico, que seguro vas a recibir…

    Bueno, ahora te toca exponer esas cosas que MS reinventa periódicamente, le cambia el nombre y lo vuelve a sacar, je je… o cómo hacer robótica con servicios web…

  2. Excelente entrada que invita a una necesaria reflexion . Por estar MS en la vidriera esto se nota mas, pero puedo asegurar que en otras comunidades (algunas muy cerradas) pasa lo mismo. El resultado puede poner los pelos de punta a cualquier consultor mas aun si el ambiente de producion es multiple plataforma. Coincido totalmente con la entrada de andrechi “El alubión de nuevas tecnologías hay que con cuidado, quizá seria conveniente escribir sobre las experiencias y no solo sobre lo bonito que son los nuevos productos

  3. Hola

    Rafael: ojala y no venga mucho golpe :), por cierto me habia olvidado referenciar sobre lo del goto ya puse la referencia debida ;).

    Andrechi: gracias ;), si evaluaste el costo/ beneficio de usar dataset, y viste que es lo que te conviene, no habria lio que uses los DS, aunque personalmente te podria decir que invertir en capacitacion, no es mala idea :), los beneficios se ven a mediano/largo plazo, pero salen.

    Santiago: justo ese es el punto, lo mejor seria que se pongan opiniones personales, basadas en experiencia o analisis, mas que el link a una noticia, pero vamos, a su vez lo bonito del internet es que cada uno es libre de poner lo que quiera, aunque seria bueno que cada uno medite de lo que hace y como lo hace :).

    Salu2

    Ddaz

  4. Excelente entrada, y muy necesaria por cierto. Creo que son pocos los que tienen una real dimensión de las reacciones que sus palabras pueden tomar en la vida real.
    Este tema, si bien es la primera vez que lo veo en un blog, es muy discutido por todos en la comunidad.

  5. Hola David, me disculpo por no haber leido el resto de comentarios.

    En primera instancia dejame agregar que es sabido que hay grupos internos que “a pesar de todo” EF quedará como base de nuevas aplicaciones, y esto será con Linq2E.
    Digo “a pesar de todo” pues ya es sabido del voto de no confianza que fue publicado hace unos meses.

    De parte de la gente de MS, estoy seguro que internamente hay tendencias, unas mas puristas que otras. Un ejemplo encontré cuando un grupo de diseño estaba muy preocupado por el modelo de datos del Sharepoint Services.

    En fin, creo lo que debemos evitar siempre es caer en la creencia de “la bala de plata”, pensando que solo la tecnología (sea ultima o no) nos salvará.
    Y claro, peor aun, debemos evitar recomendar cosas que no conocemos a profundidad.

    Por otro lado, gracias por agregarme como referencias, pero primero avisame!!

    Muy buen post.

  6. Excelente post … y creo que una de las cosas que hay que rescatar es cuando dices lo que en una palabra resumo como -> “formación”. Es cierto que las nuevas tecnologías son atractivas y uno se deja llevar por las mismas, pero no solo se pueden hacer cagadas con LINQ, te aseguro que todavía hay gente que está haciendo cosillas en .Net 1.1 y la están cagando. Como siempre, no porque quieran, sino porque el camino más fácil siempre es más atractivo.

    Ya lo dijo Albertito (era algo así) “trata de hacer las cosas lo más simples posible, pero no más simple” (A. Einstein)

    Saludos y te gracias por el agradecimiento de la 2da postdata

  7. David, cuanta razón.

    Todos en su medida, influimos en los demás de alguna manera, y a veces damos por hecho cosas que deberían ser estudiadas previamente.

    Por esa razón, siempre que me preguntan algo de tecnología digo la frase “en mi opinión” o la palabra “creo”.

    Hay que ser siempre cautos, y mucho más cuando hablamos de tecnología, que por otro lado es cambiante rápidamente.

    La prudencia y la cautela debe ser rigurosa, y aparcar casi siempre las ansias por “tocar” eso nuevo que aparece y proclamarlo a los cuatro vientos como lo “único”.

    Lo mejor, es pensar en tecnología como una gran cantidad de recursos y opciones válidas para llevar a cabo nuestras tareas, y ser siempre crítico con todo para no dar por hecho nada.

    Un saludo,

    Jorge

  8. Gracias por abrirnos mas la mente y comprender las cosas…
    Aunque actualmente estoy con VB6 (por que quieren, en un futuro migrar a .NET), soy un entusiasta que siempre esta informando a los compañeros de lo bueno que es .NET (no solo en programacion si no en el buen manejo del IDE), y debido, a mi tiempo, dinero y motivacion de trabajo, no hago masters ni nada para lo nuevo que sale .NET, si, sigo a estos “geeks” de la informacion de .NET con sus comentarios y explicaciones.. y claro.. me fio bastante de lo que dicen (que por algo son geeks,no??)…
    Venia de vb6 con “llamadas” a SQL desconectadas (se obtenia un cursor y se metia en un dataset o arrays) y claro, cuando salio lo del dataset (forma de colecciones), crei que era el summun y aboge por su uso, pero entre que no lo entendian bien el concepto y demas, pues el uso era casi similar al vb6.. ahora, si volvieramos al .NET (2005), no usare datasets, usare colecciones genericas para manipular datos, por que asi, es como os he entendido a vosotros (y lo he probado y me gusta mas que el dataset, que es tambien una coleccion)… sobre el Linq, lo uso mas contra colecciones-genericas (of T) ya que, usarlo contra SQL me parece un poco redundante ,ya que, la metodologia usada es contra oracle y es llamar a un PL y obtener un cursor, ademas, LINQ contra Oracle, no rula (al menos a mi no me ha funcionado), asi que obtengo los datos en colecciones-genericas y LINQ contra esa coleccion y todos felices….
    En fin.. a ver que nos recomendais e informais.
    Gracias por vuestras aportaciones

  9. El Bruno…
    si hablas de cagadas en 1.1 (y 2.0), no se si te referiras a las perlas realizadas por “expertos” programadores de VB6 sin reciclar (que conste, que llevo en .NET desde el famoso 2002 (1.0) y no se aun mas de lo que me gustaria saber).. en serio.. no sabes la cantidad de “expertos” que creen que .NET es una extension mejorada del vb6 y siguen sin cambiar el chip, haciendo y demostrando, que las empresas, no cambien o compren licencias de microsoft de .NET por que para ser lo mismo que vb6, pues mejor ahorrar… señor… cuantas veces he tenido que bregar con compañeros y jefes de proyectos, para hacerles entender que .NET no solo mejora la aplicacion si no lo que ahorramos los desarrolladores a la hora de crear una aplicacion… que no.. que no entienden lo que es la usabilidad, encapsulacion, depuracion etc… para ellos.. eso es “copy & paste” del codigo que hizo uno hace 5 años y que parece que funcione…

  10. Hola:

    bueno gracias por los comentarios a tod@s, la vdd pense que me lloverian palos :)..

    @Lucas no solo este tema, hay muchos que se discuten detras del telon, pero no se hacen publicos.

    @Jersson no sufras, pa la otra te aviso, pero tienes que estar despierto a las 3 am :).

    @Bruno el problema es que esto no se detendra, es casi como neo y su enemigo en matrix… :(, el problema es que casi siempre en su mayoria son personas que usan Vb, por eso mi tan amado VB esta mal visto por muchos.

    @Jorge no pude haberlo dicho mejor que tu.

    @Netero mas que seguir lo que los “geeks” hacen, lo mejor es que seas exceptico, hasta que tu mismo lo pruebes, por ejemplo usando la herramienta usada en estas pruebas http://blogs.msdn.com/mvplead/archive/2008/05/21/anti-practicas-net-lectura-de-datos-con-ado-net.aspx , bueno, veremos si salen los post que tengo alli de borrador y no me animo a sacarlos…

    @Javea65 en eso te entiendo perfectamente, hace un tiempo encontre a un maestro universitario, que usaba vb5, y ahora da “.net” pero programa como si fuera el vb5…

    @espinete recuerda, todos somos humanos, y por ende todos podemos cometer errores, lo mejor es validar todo lo que recibes, venda de quien venga, y sobre lo otro… 1ro… si puedes usarlo asi, y si evaluaste otras opciones y esa es la que mejor te conviene, usalo ( esto en lo quesea), mira hay proyectos realizados con el typed dataset, win, y podrian ser validos, por que quiza los quieren de 1 dia para otro – o el mismo dia- sera una app chica, quiza el dinero por el que pagan es poco, etc…. son muchos factores, recuerda, no hay tecnologia “correcta”, todo depende de la situacion, lo importante es que se hayas evaluado antes, no irse ” a lo wey”.

    @neteando el dataset te da muchas facilidades, pero a un costo alto, en algunos casos el costo es aceptable, en otros no, todo depende de la situacion.

    Salu2

    Ddaz

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *