jueves, noviembre 03, 2005

¿Visual Studio pudre la mente?

Hacía tiempo que no disfrutaba tanto con un artículo. Un auténtico rant como los de antes. El escrito en cuestión es de Charles Petzold, muy conocido en en el mundillo de la programación windows por libro muy bueno y muy extenso: "Programing Windows".

El artículo es "Does Visual Studio Rot the Mind?" Comienza por plantearse como la tecnología tiene capacidad de enganchar y no siempre de solucionar problemas y luego tiene una serie de críticas bastante concretas al Visual Studio, pero que en general se pueden aplicar a cualquier IDE o RAD: Generación de código ininteligible, opciones por defecto que acaban siendo las únicas, dependencia de las herramientas, en lugar de lo que verdaderamente importa en el desarrollo (recordemos que todavía no existe la bala de plata)

Como buen artículo nacido para ser polémico, hay que tomarlo con precaución, pero me parece que siempre es interesante plantearse el viejo tema de IDE vs editor

Algunas frases extraídas del artículo:

What the Internet seems to do best is make commonly available enormously vast resources of mis-information that we never knew existed.

It is very common for us to say about a piece of consumer technology that “we didn’t know how much we needed it until we had it,” and much of this technology seems targeted not to satisfy a particular need, but to get us hooked on something else we never knew we needed; not to make our lives better, but to tempt us with another designer drug. “I can’t live without my ___________” and you can fill in the blank. This week, I think, it’s the video iPod.

Now I know that five or ten years from now we’ll be able to perform this entire operation entirely from the cable remote, which may actually be a computer remote, including pausing the episode of Friends to download the movie in which the actress playing Joey’s girlfriend appears, and watch it on demand, and then go back to the episode of Friends we were watching if we so desire. And I might be more thrilled at this prospect if I thought it would make us better, happier, nicer human beings. But that’s not immediately obvious to me.

IntelliSense is considered by some to be the most important programming innovation since caffeine.

And yet, IntelliSense is also dictating the way we program.[...]In order to get IntelliSense to work correctly, bottom-up programming is best. IntelliSense wants every class, every method, every property, every field, every method parameter, every local variable properly defined before you refer to it.[...]you must also write you code linearly from beginning to end [...]You must define all variables before you use them.

(Sobre la generación automática de código) The time when I can really use some help is not when I’m starting a program, but when I’m trying to finish it. Where is Visual Studio then?

This bothered me because Visual Basic was treating a program not as a complete coherent document, but as little snippets of code attached to visual objects. That’s not what a program is. That’s not what the compiler sees.

If Visual Studio really wanted you to write good code, every time you dragged a control onto your form, an annoying dialog would pop up saying “Type in a meaningful name for this control.” But Visual Studio is not interested in having you write good code. It wants you to write code fast.

I don’t know what rule you go by, but for me it’s always been simple: “Three or more: Use a for.” This is why we have loops. This is why we are programmers.

Por supuesto se pueden leer flames al respecto: en Slashdot:"Does Visual Studio Rot the Mind?" y Lambda the Ultimate: "Does Visual Studio Rot the Mind?"

La misma entrada en BP