Compartir a través de


No me hagan hablar

La mayoría silente: por qué Visual Basic 6 todavía prospera

David Platt

 

David Platt

Microsoft extendió recientemente la compatibilidad “It Just Works” para las aplicaciones de Visual Basic 6 durante toda la vigencia de Windows 8 (vea la Nota del editor de este mes, “Los viejos soldados nunca mueren”). Visual Basic 6 se lanzó por primera vez al mercado en 1998 y, por ende, las aplicaciones contarán con 24 años de soporte, como mínimo. Compare esto con Microsoft .NET Framework 1.0 (2002), que es incompatible con Windows 7 (2009).

Uno de mis estudiantes, Eric, dijo alguna vez en broma que Visual Basic 6 era la “cucaracha que no se puede exterminar” en el ecosistema de Windows. Esta analogía tiene alcances más profundos de lo que podríamos pensar. Las cucarachas son exitosas porque son sencillas. Hacen lo que necesitan en su nicho ecológico y nada más. Visual Basic 6 hizo lo que sus creadores pretendían para el nicho de mercado: habilitar un desarrollo muy rápido de programas limitados por programadores menos experimentados. No se destinó a los codificadores de tareas pesadas que desarrollan aplicaciones complejas.

Visual Basic 6 logra su objetivo al abstraer la complejidad del sistema operativo Windows subyacente. Las cosas sencillas se podían lograr en forma muy sencilla. Por otro lado, las cosas complejas, como por ejemplo los subprocesos, simplemente no se podían realizar. Mi regla general para Visual Basic 6 era: si no lo podía hacer en 10 minutos, no lo podía hacer en absoluto.

Otra clave para el éxito de Visual Basic 6 era que su conjunto de características limitadas exigía una curva de aprendizaje mucho más corta. Aprender a conducir un autobús lleva mucho menos tiempo que aprender a conducir un avión de combate. Convertirse en un buen programador de Visual Basic 6 demandaba mucho menos tiempo que convertirse en un buen programador de C++, la principal alternativa en aquel entonces.

Cuando Microsoft convirtió Visual Basic .NET en “un lenguaje completo”, la empresa lo cargó con todo el poder de C# y la consiguiente complejidad: subprocesos, operaciones en segundo plano y herencia, por nombrar solo unos pocos. Requería, por lo tanto, las mismas habilidades que para la programación en C#, la misma curva de aprendizaje y la misma experiencia.

Las personas en Microsoft hicieron eso porque creyeron que era lo que exigía la comunidad de Visual Basic 6. Pero los programadores de Visual Basic 6 representan el paradigma de la “mayoría silente”, un término popularizado en 1969 por el presidente de los Estados Unidos Richard Nixon para describir a sus seguidores que no formaban parte de la contracultura y no protestaban en esos años turbulentos. Casi todos los programadores de Visual Basic 6 estaban satisfechos con lo que hacía Visual Basic 6. Estaban contentos de ser conductores de autobús: salir de la oficina a las 5 de la tarde (o a las 4:30 los días realmente hermosos) en lugar de trabajar hasta la medianoche; jugar con la familia los fines de semana en lugar de volver penosamente a la oficina; dormir con la pareja en vez de otra noche de codificación y desayuno con pizza fría. No lamentaban la ausencia de la sobrecarga de operadores o de polimorfismo en Visual Basic 6, así que no abrían la boca.

Las voces que Microsoft oía, sin embargo, provenían del 3 por ciento de conductores de autobús de Visual Basic 6 que deseaban activamente convertirse en pilotos de aviones de combate. Esta gente se dio el tiempo de asistir a congresos, publicar preguntas en los foros de CompuServe y responder a los artículos. No se conformaban simplemente con fantasear con lanzar un misil Sidewinder en el tubo de escape del vehículo que acababa de cortarles el paso; exigían que Microsoft instalara retroquemadores en su autobús, junto con misiles, contramedidas y una pantalla de visualización frontal. Y Microsoft lo hizo.

Pero cuando le entregó Visual Basic.NET a la comunidad de Visual Basic 6 fue como si hubiera criado un coyote como perro doméstico, y lo hubiera liberado en el bosque con las palabras: “¡Caza tu cena tal como lo quiso tu creador, magnífica criatura salvaje!” La mayoría dijo: “¡Qué diablos! Me quedaré en mi almohadón cómodo, calentito cerca del fuego, mientras me abres una lata de alimento”. Y Visual Basic 6 siguió ahí.

Visual Basic 6 no estaba libre de errores, por supuesto. ¿On Error Resume Next? ¿Escuchamos un graznido y simplemente seguimos, ya veremos qué sucede? Probablemente no sea la mejor idea. Pero el desarrollo rápido (y, por ende, más barato) de aplicaciones limitadas (y, por ende, más baratas) por personal menos especializado (y, por ende, más barato) es una solución importante para una gran variedad de problemas.

LightSwitch está intentando llenar este nicho, con una recepción mixta (vea bit.ly/n9crJj). Llega, en el mejor de los casos, con una década de atraso.

Las cosas que Visual Basic 6 hacía, las tiene que seguir haciendo. A menos que Microsoft presente una nueva herramienta que haga estas cosas, Visual Basic 6 seguirá dando vueltas. Apuesto una cerveza por que Microsoft deberá extender la compatibilidad de Visual Basic 6 a Windows 9 y 10.

David S. Platt enseña Programación .NET en Harvard University Extension School y en empresas de todo el mundo. Es el autor de 11 libros sobre programación, entre ellos “Why Software Sucks”, (Addison-Wesley Professional, 2006) e “Introducing Microsoft .NET”, (Microsoft Press, 2002). Microsoft lo nombró “Leyenda del software” en 2002. Él se pregunta si debería amarrar dos dedos de su hija con cinta para que aprenda a contar en octal. Póngase en contacto con él en rollthunder.com.