miércoles, 1 de octubre de 2008

.NET Framework 4.0 y Visual Studio 10: que paren que yo me bajo

Leo en varios blogs como este, o este otro (en inglés) o la nota de prensa oficial (también en inglés) la noticia de que los chicos de Microsoft ya tienen bastante definidos lo que será el próximo .NET Framework (y ya vamos por el 4.0) y la nueva versión de Visual Studio (que como siempre van de la mano).

No me voy a parar en comentar las novedades que prometen porque ya hay un montón de gente que sabe más que yo de esto que lo están haciendo, pero el hecho de que salga la noticia me plantea un par de preguntas que lanzo al aire:

  • ¿Por qué pasa tan poco tiempo entre una versión y la siguiente?
  • ¿Son imprescindibles los cambios que aportan las nuevas versiones? ¿Los vamos a usar al 100%? ¿Alguien los va a llegar a usar todos o una gran parte de ellos?
  • ¿Acabamos los desarrollos que tenemos entre manos con la versión actual o nos conviene esperar a las novedades de la nueva? ¿Sacamos una nueva versión cuando salga el nuevo Framework?
  • ¿Alguien es capaz de seguir este ritmo? ¿Estamos locos los desarrolladores?


Cuando mucha gente aún no se ha pasado a la versión 3.5 del .NET Framework, se encuentran con que ya está prevista la 4.0, cosa bastante natural con la forma de trabajar de Microsoft. Pero es que hay que recordar que el .NET Framework sólo lleva entre nosotros desde 2002, con lo que tenemos que en 6 años han aparecido 5 versiones (1.0, 1.1, 2.0, 3.0 y 3.5), casi a versión por año (y eso sin contar con los Service Packs).


¿Qué aportaron estas nuevas versiones en su momento? Recordando así por encima, la 2.0 aportó bastantes mejoras en el Framework, sobre todo en ADO.NET y ASP.NET. La 3.0 nos introdujo WCF, WF, WPF y esa cosa que llamaron CardSpace pero que no he visto funcionando en ningún sitio. Y la 3.5 es una revisión de la 3.0 y además nos trae LINQ y en paralelo apareció Entity Framework.


Tanto la nueva versión del .NET Framework como la del Visual Studio prometen lo de siempre: mejorar la vida de los desarrolladores para que podamos crear aplicaciones de gran calidad en el menor tiempo posible. Vaya, pues si es así lo quiero YA!!!


Pero es esto que se llama la Vida Real™ los pobres curritos-pica-código nos encontramos con que la mayoría de “mejoras” no nos servirán absolutamente para nada cuando tenemos el plazo de finalización del proyecto echándonos el aliento en la nuca (que mal rollo que da esa frase :P) y los pocos que nos servirían implican cambiar tantas cosas que tendríamos que modificar la mitad del proyecto o empezarlo casi de 0, porque, reconozcámoslo, nunca se hacen las cosas tan bien que sean totalmente reutilizables.


Después están los que lo prueban todo, desde las versiones alfa, y ya empiezan los nuevos proyectos con las nuevas versiones cuando no han ni empezado a asomarse. Pero yo creo que esa gente no es de este planeta, porque entre el tiempo que dedican al trabajo, el de probar las nuevas versiones, escribir en diferentes blogs, leer lo que escriben los demás, preparar podcast, webcast y presentaciones,... a mí no me quedaría tiempo para casi nada, así que me imagino que o no comen, o no duerme o tienen un reloj que les permite viajar en el tiempo. O tal vez sus horas tienen 99 minutos porque encontraron un bug en el sistema horario.


Menos mal que estos son 4 elegidos por el ente supremo (llámalo Dios o el monstruo espagueti volador) porque si no todos los que nos dedicamos a esto y no tenemos sus superpoderes nos quedaríamos en el paro. Porque últimamente es muy pero que muy complicado ser desarrollador en .NET y no morir bajo la avalancha de novedades que nos llega casi sin avisar.

Así que creo que para los simples mortales nos quedan 3 opciones claras:



  • Dejar la programación y dedicarnos al cultivo del tomate (así por lo menos tendremos algo que comer)

  • Detenernos en una versión y meternos en una cueva aislada del mundo hasta finalizar nuestros proyectos.

  • Echarle ... narices e intentar mantenernos al día de todas las novedades, pero sin perder la perspectiva de que hay que acabar los proyectos porque hay jefes/clientes que esperan las cosas para ayer. O casi mejor al revés (más que nada para que no nos despidan), finalizar nuestros proyectos pero sin perder de vista las novedades y las futuras versiones.

Ahora es decisión vuestra como desarrolladores elegir la mejor opción, yo por mi parte ya tengo con quien abrir una plantación de tomates :P


PD: debo dar las gracias al compañero Ipas por los links y a Santi por inspiarar este post.

11 comentarios:

Santi Balboa dijo...

Creo que la frase de lanzamiento del VS 10 va a ser algo así como: "Desarrollador, me recoges la pastilla de jabón?".
joder, qué locura.

Por cierto, no conocía tu lado Pastafari :)

Saludos

Pablo Bouzada dijo...

jajaja, pues sí que lo llevamos claro :$

El monstruo espagueti volador es la cosa más grande que ha parido el frikismo :D

Jbot dijo...

Pues anda que yo...
Desarrollador de .NET desde que salio en el 2002 (con sus bugs y todo)... siempre procuro estar en la ultima.. pero, justo, donde trabajo.. empresa puntera (pero no en tecnologia), desarrollado o migrando una aplicacion echa en vb6 a VB6!!!.. cada vez que me piden hacer una mejora y digo.. pues nada.. lo hago en .NET... se echan las manos a la cabeza, se rasgan las vestiduras y exortizan gritandome una y otra vez: QUE NO SE OCURRA!!! tu, haz el codigo mas limpio... y claro... asi.. como voy a probar el .NET 10???
Menos mal que soy autodidacta y disfruto en casa de la mujer y de la programacion... por que si no...

Pablo Bouzada dijo...

jbot, pues la verdad no sé que es peor, si trabajar con una herramienta para la que su propietario ya no da soporte o romperte los cuernos cada 2 años con la nueva versión de la plataforma de turno :( Que el monstruo espagueti volador nos dé paciencia que la vamos a necesitar -_-

Anónimo dijo...

No hay que llegar a descubrir el bug en el sistema horario para poder estar un pcoo al dia. Es suficiente con que "estar al dia" sea parte del trabajo cotidiano.
EriC#

Pablo Bouzada dijo...

EriC#, estoy de acuerdo contigo, pero cada día nos ponen más difícil estar al corriente de las novedades. Hay que echarle muchas muchas horas :(

Marco Barragan dijo...

Y si acaso, traten de hacer los examenes para 70-536 y certificarse, resulta que tienes que pasarte la vida haciendo examenes por version.

Creo que la solucion mas idonea es, mientras existe desarrollo en una version, terminarlo en esta e ir estudiando la siguiente, quiero decir, cualquier proyecto que se empieza con una version, debe terminarse con esta version, asi se considere obsoleta.

gnanduuu dijo...

Yo creo que no es ni necesario ni saludable cambiar en medio de un proyecto a una version mas nueva... en todo caso es mejor esperar a terminar el proyecto para migrarlo o bien esperar a que surja un proyecto nuevo para comenzar a utilizar otra herramienta. En muchas empresas hay todavia una resistencia muy fuerte a cambiar de tecnología. En donde yo trabajo me costo muchisimo convencer a mis compañeros de que comiencen a utilizar Visual Studio 2008 como IDE. Ni hablar de la adopción de TFS. Y a este ritmo, para cuando logren aclimatarse a VS2008 ya va a estar en el mercado el VS2010!! Pienso que es bueno seguirle el ritmo a la tecnologia siempre y cuando las nuevas versiones realmente nos aporten un valor mayor a nuestro desarrollo. Si las cosas nuevas que trae no nos sirven entonces no tiene sentido. Si para nosotros el framework 2.0 es mas que suficiente entonces que sentido tiene adoptar el 4.0?

Jbot dijo...

Soy el que dia 28 de Octubre del 2008, programaba en VB6, ahora, desde hace 3 meses, que estoy con C# de 2008.. claro, que respondiendo al compañero de arriba, la cuestion no es que sea mas bonito o mas practico.. si no que te sea mas comodo para ti y mas reutilizable... ejemplo.. entre en el proyecto C# 2008, pero con compilaciones de 2.0.. les enseñe LINQ , Funciones anonimas, etc.. y ahora estan encantados del poco codigo que tienen que poner (son webservices manipulando pesados datasets)... claro, que pasar al 2010.. pues no.. pero si se puede hacer en un futuro.. pues mejor.. pues .NET va orientado a que hagas el mismo trabajo pero tirando "menos codigo"

Manu dijo...

a ver señores ... los chicos de Microsoft no piensan en mejorar la vida al programador, a ver si nos vamos enterando de una vez, que todo esto es un puñetero negocio y que tienen que justificar su trabajo y sus horas de i+d en sacar algo nuevo vendiendolo como que nos vas a facilitar mucho la vida y mejorar la calidad de código y ... sinceramente para estar al día en esta tecnología o tu novia es igual de freaky que tu e informática o follas menos que espinete.

Anónimo dijo...

Yo no se si tu conoces visual studio, pero lo uso desde la version 3 y para mi, si me ha mejorado MUCHO y facilitado la programacion (cosa que no puedo decir del C o C++).
Poco codigo habras echado para decir esto (o desconoces el C#), pero por ejemplo, el LINQ me ha facilitado mucho el manejo de datos sea de la fuente que sea. Y crear "controles" apropiados, ha sido mas facil desde la entrada del .NET, etc..
Así que creo que tu comentario Manu, no es propio de un desarrollador (eso sin contar con las opciones de hacer pruebas unitarias, usar Fxcop para comprobar tu codigo, los snippets, etc...).
Lo que no puedo negar, es la "inquietud" de Microsoft respecto a los visual studios.. que ni apenas ha salido una version, ya estan preparando la siguiente, haciendo que a veces, no puedas usar la ultima y mejor version para los proyectos que estas realizando.