Absolutamente te hará más inteligente y más inteligente. Te ayudará a pensar de manera más recta, profunda y crítica.
Estas son solo algunas de las cosas que la programación puede enseñarte:
- El valor de la precisión: Un error tipográfico y el programa se detendrán. El programador debe ser preciso y preciso para lograr los resultados deseados.
- Cómo domesticar la complejidad: el código debe ser lo más simple y obvio posible. Las mismas ideas se pueden expresar de muchas maneras, pero cada una con su propio grado de complejidad que a menudo depende de su relación con todo lo demás.
- Cómo utilizar herramientas: la programación requiere herramientas.
- Cómo expresar ideas de manera lógica: cualquier idea debe formularse de manera lógica para que se procese de manera computacional.
- Comunicación: Cualquier idea expresada lógicamente también debe expresarse en un lenguaje regular cuando se le pide al programador que se explique a sí mismo oa su código. Hay comunicación entre los miembros del equipo, entre el programador y la persona que proporciona el proyecto, y el programador y el usuario, en forma de archivos de ayuda y documentación.
- Abstracción: Cada función y variable se produce con el acto de abstracción. Estas abstracciones son el funcionamiento interno de cualquier aplicación. Las especificaciones de otros deben ser entendidas, pero sus especificaciones también deben ser creadas.
- Intención: Toda abstracción es intencional. Un programa es un acto de diseño que refleja las intenciones del programador. De todas las actividades pasivas involucradas en el aprendizaje, la programación requiere los mismos músculos que el arte y los ejercicios de escritura. Afina los deseos. Si tu programa apesta, es tu culpa.
Esto es lo que hace que la programación sea una gran herramienta de enseñanza.
- Resultados inmediatos: solo ejecútelo y aumente.
- Consecuencias reales: los programas se pueden escribir para hacer matemáticas, dibujar, mover robots, escribir páginas web o incluso aplicaciones. No se pueden utilizar muchas herramientas educativas para producir consecuencias reales.
- Libertad de construcción: dado un proyecto, hay una gran libertad en cómo se pueden expresar los problemas y formularlos de una manera que se pueda implementar en el código.
- Colaboración restringida: la programación requiere resultados extremadamente específicos y precisos, pero también requiere un pensamiento creativo e innovador. Ya sea asignando roles o compartiendo ideas de manera efectiva, un proyecto de programación grupal es un ejercicio tanto de comunicación como de implementación.
- Independencia sin restricciones: la otra cara es la programación de proyectos realizados únicamente por usted mismo en los que solo se encuentra usted contra la computadora. Uno solo está limitado por su ambición y su capacidad de codificación.
- Barato: el código abierto es todo gratis. La programación web es totalmente gratuita. Las referencias y preguntas y respuestas son abundantes en línea, todo gratis también.
- Recompensa: como una pintura, un ensayo o una composición musical, un programa es una obra tangible de la que el autor puede estar orgulloso. Incluso puede darte los derechos de alardear.
Esto es lo que hace que la programación sea una herramienta indispensable para la ciencia, la investigación y los negocios:
- ¿Cuál es la diferencia entre culpar a la víctima y defender la responsabilidad personal?
- ¿Cómo puedo superar mi obsesión con las notificaciones?
- ¿Necesitamos injusticia social?
- ¿Cuál es la lista definitiva de las características humanas más repulsivas en las relaciones individuales?
- ¿Qué puestos de trabajo puede buscar una persona con una licenciatura y con antecedentes en antropología, sociología y psicología?
- Expresión lógica: Incluso una hipótesis empresarial puede beneficiarse de la expresión lógica. Al hacer algo lógico, se vuelve computacional. La física y las matemáticas tienen que ver con la expresión lógica.
- Simulación: se pueden analizar los números, los escenarios de prueba e incluso modelar entornos o mercados para analizarlos.
- Cálculos: ya sea trazar un gráfico o resolver ecuaciones complejas, saber cómo codificar llevará a un mayor manejo de programas como Excel y Mathematica. Las secuencias de comandos, ya sea dentro de un paquete de software más grande o directamente con un compilador, es una herramienta poderosa que no tiene sustitutos.
- Automatización: similar a los cálculos, pero para tareas repetitivas. El bucle “para” es un invento increíble. Incluso Photoshop se puede programar para manejar tareas automáticamente.
- Manipulación de datos: las computadoras y los servidores también se utilizan para almacenar y procesar grandes conjuntos de datos. Ya sean datos científicos o tráfico web, la programación es la herramienta para almacenar y convertir datos en resultados útiles.
Puedes argumentar que las herramientas no hacen que alguien sea más inteligente. Pero si involucra alguna de las actividades anteriores, entonces los programadores tendrán una ventaja. Un programador competente entiende los datos, entiende cómo hacer que una computadora haga sus cálculos y, dada la entrada, es capaz de generar una salida deseada. Si esto no lo califica como “más inteligente”, entonces no sé qué lo haría.
Los programadores también son los únicos que tienen la capacidad de ampliar su cerebro con la memoria y la CPU de las computadoras, y manipular Internet de una manera que nadie más puede. No hay sustitutos para la habilidad de la programación, y la mayoría de los beneficios están relacionados con el procesamiento de datos, la información y la inteligencia.