Joel on Software

Joel on Software   La Opinión de Joel sobre qué es Software

 

Otros artículos de "Joel on Software" en Español

Otros artículos de "Joel on Software" en Inglés

Envíele un Email al autor (solo en Inglés)

 

Carta de Estrategia IV: Software recargado y el mito del 80/20


Por Joel Spolsky
Traducido por Jerry Elizondo
Editado por Luis A. Apiolaza
Marzo 23, 2001

La versión 5.0 de Excel, el programa estandarte de Microsoft para hojas de cálculo, salió al mercado en 1993. Ciertamente era enorme: requería un total de 15 megabytes de espacio en el disco duro. En esos días todavía podíamos recordar nuestra primera computadora personal con disco de 20MB (alrededor de 1985), así que 15MB parecía demasiado.

Para cuando salió Excel 2000, requería un gigantesco total de 146MB . . . ¡casi diez veces más! Malditos programadores descuidados de Microsoft, ¿cierto?

Equivocado.

Apuesto que piensas que voy a escribir uno de esos artículos aburridos que ves por todas partes en la red quejándose de el software recargado. Quejas, quejas, quejas, esta cosa es tan recargada, ¡oh! pobre de mí, edlin y vi son mucho mejores que Word y Emacs porque son estilizados, etc.

¡Ja, ja! ¡Te engañé! No voy a escribir ese artículo otra vez, porque no es verdad.

En 1993, dado el costo de los discos duros en esos días, Microsoft Excel 5.0 requería $36 dólares en espacio.

En el 2000, dado el costo de los discos duros en ese año, Microsoft Excel requiere de alrededor de $1,03 dólares en espacio.

(Estas cifras están ajustadas por inflación y basadas en datos de precios de discos duros obtenidos aquí.)

En términos reales, ¡es casi como si Excel estuviera empequeñeciéndose!

¿Exactamente, qué es el software recargado? El Archivo de Jerga lo define derogatoriamente como “programas que proveen funcionalidad mínima mientras que requieren de una cantidad desproporcionada de espacio en disco y memoria. Se usa especialmente para aplicaciones y actualizaciones al Sistema Operativo. Este término es muy común en el mundo de Windows/NT. Así también es su causa.”

Me parece que esos tipos simplemente odian Windows. No me he quedado sin memoria en más de una década, desde que apareció la memoria virtual en Windows 386 (1989). Y el precio del espacio en disco duro ha bajado a $0,0071 dólares por megabyte y sigue cayendo como una oveja que quisiera aprender a volar tirándose de un árbol.

Quizás Linus Åkerlund puede explicarlo. En su página de Internet, él escribe, “La gran desventaja de estos programas recargados es que tienes que cargar un programa muy grande, aún si sólo quieres completar una tarea pequeña. Consume toda tu memoria... no estás usando tu sistema de una manera eficiente. Haces que el sistema se vea más ineficiente de lo que en verdad es, y eso es totalmente innecesario.”

Ohhh. Consume toda tu memoria. Entiendo. De hecho, bueno, no, no lo hace. Desde Windows 1.0, en 1987, el sistema operativo sólo carga páginas según se usen. Si tienes un ejecutable de 15 MB y sólo usas código que abarca 2 MB de páginas, únicamente cargarás del disco 2 MB a la RAM. De hecho, si tienes una versión moderna de Windows, el Sistema Operativo automáticamente arreglará ésas páginas en el disco duro para que sean consecutivas, lo cual hace que el programa arranque más rápido la próxima vez.

Y pienso que nadie negará que en las actuales computadoras superpoderosas y de bajo precio, cargar un programa enorme es mucho más rápido que cargar un pequeño programa de incluso cinco años atrás. Así que, ¿cuál es el problema?

R.A. Downes nos da una pista. Parece ser que él pasó horas diseccionando un pequeño programa de Microsoft, aparentemente furioso porque usaba todo un megabyte de espacio. (Eso era 3,15 centavos de dólar en espacio en disco cuando él escribió su artículo.) En su opinión el programa debería haber sido 95% más pequeño. El chiste es que el programa que él diseccionó se llama RegClean, del cual probablemente nunca has escuchado. Este programa revisa el registro de Windows buscando cosas que no están siendo usadas y borrándolas. Tienes que estar un poco en el lado obsesivo-compulsivo para que te importe la limpieza de las partes sin uso del registro de Windows. Así que comienzo a sospechar que el software recargado es más un problema de salud mental que un problema de software.

De hecho hay muchas razones importantes para el software recargado. La primera, si los programadores no tienen que preocuparse por el tamaño de su código, pueden entregarlo antes. Y eso significa que obtendrás más funcionalidad, y más funcionalidad hace mejor tu vida (cuando la usas) y generalmente no te afecta (cuando no lo usas.) Si tu vendedor de software se detiene antes de lanzar el producto, y pasa dos meses reduciendo el código para que sea 50% más pequeño, el beneficio neto para ti será imperceptible. Quizá, sólo quizá, si tiendes a mantener tu disco duro lleno te quedará espacio para bajar otro MP3 de Duran Duran. Pero tu pérdida por esperar dos meses la nueva versión es perceptible, y la pérdida para la compañía de software que tiene que renunciar a dos meses de ventas es todavía peor.

A muchos desarrolladores de software los seduce la vieja regla “80/20”. Parece tener mucho sentido: 80% de la gente usa el 20% de la funcionalidad. Así que te convences que sólo necesitas implementar el 20% de la funcionalidad, y todavía así venderás 80% del total.

Desafortunadamente, nunca es el mismo 20%. Cada cual usa un juego diferente de funciones. En los últimos 10 años he escuchado de probablemente docenas de compañías que, determinadas a no aprender de la competencia, trataron de lanzar procesadores de texto “lite” que implementan sólo el 20% de la funcionalidad. Esta historia es tan vieja como la PC. La mayor parte del tiempo, le dan el programa a un periodista para probar, y el periodista lo revisa escribiendo su columna usando el nuevo procesador de texto. Entonces, el periodista trata de encontrar la función “cuenta palabras”, que necesita porque la mayoría de los periodistas tienen requerimientos precisos en el número de palabras, y no hay tal función, porque está en el “80% que nadie usa”. El periodista termina escribiendo una historia que trata de alegar simultáneamente que los programas “lite” son buenos, que el recargo es malo, y no puedo usar esta maldita cosa porque no cuenta las palabras. Si tuviera un dólar por cada vez que esto sucede sería muy feliz.

Cuando comienzas a promover tu producto “lite”, y le dices a la gente, “oye, es lite, sólo 1 MB” tienden a estar muy contentos, entonces te preguntan si incluye su función crucial, y no la incluye, entonces no compran tu producto.

A final de cuentas: si tu estrategia es “80/20”, vas a tener problemas vendiendo software. Esa es la realidad. Esta estrategia es tan vieja como la industria del software y no paga; lo que sorprende es cuántos ejecutivos en compañías rápidas piensan que funcionará.

Jamie Zawinski lo dice mejor, al discutir la versión original de Nestcape que cambió al mundo. “Aunque fuera conveniente si fuera verdad, Mozilla [Netscape 1.0] es grande no porque esté lleno de basura inútil. Mozilla es grande porque tus necesidades son grandes. Tus necesidades son grandes porque la Internet es grande. Hay muchos visualizadores pequeños y esbeltos por ahí aunque, casualmente, no hacen casi nada útil. Pero ser una brillante joya de perfección no era nuestra meta cuando escribimos Mozilla.”



Esté articulo apareció originalmente en Inglés con el nombre Strategy Letter IV: Bloatware and the 80/20 Myth  

Joel Spolsky es el fundador de Fog Creek Software, una pequeña empresa de software en Nueva York. Es titulado por la Universidad de Yale y ha trabajado como programador y gerente en Microsoft, Viacom, y Juno.


El contenido de estas páginas representan la opinión de una persona.
Todo el contenido es Copyright ©1999-2005  por Joel Spolsky. Todos los derechos son reservados.

FogBUGZ | CityDesk | Fog Creek Software | Joel Spolsky