uccser/cs-field-guide

View on GitHub
csfieldguide/chapters/content/es/introduction/sections/beyond-speed.md

Summary

Maintainability
Test Coverage
# Más que simple velocidad

En informática no se trata solo de velocidad. Prueba a usar las siguientes dos calculadoras para realizar un cálculo simple. Ambas tienen la misma funcionalidad (pueden realizar los mismos cálculos), pero, al usarla, ¿cuál es más agradable? ¿Por qué?

(Este libro cuenta con mucho material interactivo como este. Si las calculadoras no funcionan correctamente, puede que tengas que utilizar un navegador más reciente. El material interactivo de este libro funciona en los navegadores más recientes; Google Chrome suele ser una apuesta segura).

{interactive slug="awful-calculator" type="in-page"}

De las calculadoras de arriba, la segunda es más lenta y eso puede resultar frustrante. Pero tiene una interfaz más elegante, los botones se expanden cuando los señalas, para resaltar lo que estás haciendo. ¿Esto hace que sea más fácil de usar? ¿Tuviste algún problema porque las teclas "C" y "=" están muy pegadas?

El funcionamiento de las interfaces es una parte fundamental de la informática. La estética (imágenes y diseño) es importante, pero lo que es mucho más crucial es la psicología de las interacciones entre las personas. Por ejemplo, supongamos que el orden de los botones "OK" y "Cancelar" en los cuadros de diálogo se invirtiera de vez en cuando. Tendríamos que prestar mucha atención siempre antes de hacer clic en uno de ellos, en vez de usar los movimientos instintivos que hemos realizado antes en incontables ocasiones. Hay algunos principios muy sencillos basados en el pensamiento y el comportamiento de las personas y que podrás aprovechar para diseñar sistemas que los usuarios adorarán.

La creación de software que sea ampliable a gran escala es otro aspecto importante. Imagina que has construido una interfaz web y has atraído a miles de clientes. Todo va bien, hasta que de la noche a la mañana tu sitio se vuelve viral y de repente tienes millones de clientes. Si el sistema se bloquea, la gente se frustrará esperando una respuesta y mañana no tendrás clientes, se habrán pasado todos al sistema de otra persona. Pero si tus programas están diseñados para ser ampliados y poder trabajar con cantidades de datos tan grandes, ¡tu principal problema será gestionar todas las ofertas que te llegarán para vender tu empresa!

Algunos de estos problemas se pueden resolver comprando más equipo, aunque puede ser una opción cara y derrochadora (no solo por el coste, sino por el impacto en el medio ambiente, teniendo en cuenta, por ejemplo, la energía malgastada en realizar el procesamiento de forma ineficiente). En el campo de la informática móvil, es todavía más importante que las cosas sean básicas y eficientes, los programas muy potentes acaban con la vida de la batería y el procesador y la memoria se deben usar con moderación, ya que afectan al tamaño, peso e incluso a la disipación del calor de los dispositivos.

Si tu sistema tiene éxito y se hace muy popular, en poco tiempo la gente intentará acceder a él ilegalmente para robar datos de los clientes o contraseñas. ¿Cómo podemos diseñar sistemas que estén a salvo de tales ataques y en los que los clientes puedan confiar con su información personal o sus transacciones comerciales?

Todas estas y otras preguntas las aborda el campo de la informática. El propósito de esta guía es presentarte estos conceptos para que tengas una mejor idea de si te interesa este campo o no. La guía es de nivel de instituto y está diseñada para proporcionarte una buena visión general del campo y prepararte para un estudio más profundo para convertirte en un experto.

Hemos desglosado la informática en diferentes temas que a menudo se encuentran en planes de estudio de todas partes del mundo, como algoritmos, interacción humano-ordenador, compresión, criptografía, gráficos informáticos e inteligencia artificial. La realidad es que todos estos temas están vinculados entre sí, así que busca las conexiones.

¡Esta guía no es una lista de datos para memorizar o para copiar y pegar en proyectos! Es principalmente una guía de las cosas que puedes hacer, de experiencias que te sumergirán en los temas. De hecho, no profundizaremos en todos los temas, pero te daremos referencias de sitios web y libros en los que se explican a fondo estos temas. El objetivo de esta guía es proporcionar suficiente información para comprender los temas y hacer algo útil con ellos.