Programar NO es lo mismo que Escribir Código
Tiempo de lectura: 4.41 minutos
Lo que encontrarás en este artículo
¿Sabías que programar y escribir código no son lo mismo?
Y aunque suene curioso, entender esta diferencia puede ahorrarte algunos malos ratos.
- Hoy no vamos a ponernos técnicos con las definiciones.
- Pero sí vamos a ver la diferencia entre programar y ser un "coder".
Porque, créelo o no, a algunos les molesta que les llamen "coder".
¡Veamos por qué!
Y al final puedes decirme si estás de acuerdo o no con mi punto de vista.
Qué es programar
Comencemos con la programación:
Es un conjunto de instrucciones que definen un comportamiento.
Como ejemplo de la vida real podríamos decir que, como humanos estamos "programados":
- para sentir hambre y cansancio,
- revisar redes sociales,
- hablar sobre los perros de Pavlov y cosas así,
- pero no lo haremos.
En su lugar, diremos que la programación es la manifestación de la lógica.
Programar equivale a definir instrucciones siendo lógicos.
Programación
Por eso, muchos consideran que:
La programación es como la prima cercana de las matemáticas.
Y esto explica por qué:
Los graduados en matemáticas también son muy buscados para trabajos complejos en ingeniería de software.
En muchas universidades, incluso encontrarás cursos de matemáticas, que parecen diseñados específicamente para la programación.
No te asustes:
- No necesitas una formación formal en matemáticas para ser un gran programador,
- y mucho de esto lo puedes ir aprendiendo en el camino.
Pero estas son algunas razones por las que se dice que:
La programación es matemáticas aplicadas.
- En el mundo de la lógica, las matemáticas serían la rama teórica,
- y la programación, la rama práctica.
Por esta razón es que, aunque parezca código, escucharás decir que:
CSS y HTML no son lenguajes de programación reales.
Y no, no es porque sean elitistas del backend. Bueno, al menos no en la mayoría de los casos.
Es por eso que las entrevistas:
- A menudo se realizan en una pizarra usando algo llamado pseudocódigo,
- donde simplemente escribes los pasos en lugar de utilizar una sintaxis de codificación específica.
Un último ejemplo:
- Hay un curso gratuito de Harvard que se centra puramente en la programación y no en la codificación.
- Y mucha gente se sorprende cuando descubre que, las tareas de la primera semana ni siquiera utilizan un lenguaje de programación real.
Las grandes empresas tecnológicas evalúan tus habilidades de programación, no solo de escribir código.
Por eso te permiten hacer la entrevista en el lenguaje que prefieras.
En muchas de estas entrevistas, escribes pseudocódigo sobre una pizarra, sin preocuparte por la sintaxis exacta.
Por eso, es usual que muchos cursos pueden empezar enfocándose en la programación, más que en el código.
Esto significa que puedes comprender la lógica de programación, sin siquiera usar un lenguaje de programación real.
De hecho existe un lenguaje de programación para niños llamado Scratch:
- Es muy visual,
- y te permite programar usando bloques sobre una interfaz de usuario.
A final de cuentas, si comprendes cómo funciona la lógica de programación, luego puedes rápidamente pasar a otro lenguaje:
- Como C,
- JavaScript, o
- Python.
Recuerda:
Es más importante identificar los elementos lógicos y patrones, que memorizar los ejemplos de código, con una sintaxis específica.
Codear
Bien, ahora hablemos de codear, o escribir código, que en algunos aspectos es más amplio y en otros más específico.
Codear, consiste en implementar una solución lógica de programación.
Pero como sabemos, eso no es necesariamente cierto:
- Porque también podemos escribir HTML o CSS,
- que son códigos de lenguajes de estructura y estilos,
- pero no de programación como tal.
Por esta razón, es más difícil definir codear de manera exacta.
Pero algo es seguro:
Para ser un buen coder, necesitas aprender la sintaxis de distintos lenguajes de código.
Entonces decimos que:
- la resolución lógica de problemas en programación es más abstracta,
- mientras que codear se enfoca más en los detalles técnicos.
Codear incluye:
- la calidad del código,
- organizarlo en funciones o archivos,
- y usar bibliotecas de código.
Curiosamente, puedes implementar diferentes soluciones de código y obtener exactamente el mismo resultado, en términos de programación.
Por eso es que muchas veces, el primer código que escribimos, en cualquier lenguaje nuevo, es "Hola mundo".
En términos de programación se obtiene el mismo resultado, pero es diferente en términos de código.
- En JavaScript se usa
console.log, - en Python
print, y - en Java, un código súper largo (como es usual en Java).
Codear vs Programar
Una cosa importante a tener en cuenta es que si intentas explicar detalles de código a personas que no son developers, rápidamente se quedarán dormidas.
Aquí es donde surgen algunos de los conflictos más antiguos entre personas técnicas y no técnicas en un equipo:
- Mientras los desarrolladores están presionando para refactorizar el código fuente.
- El project manager pregunta: "¿Cuál es el beneficio para el usuario final?" y se encuentra con miradas en blanco.
Para dar un ejemplo práctico sobre “código”:
- si ves algún tutorial básico de JavaScript o Python,
- lo más probable es que se centre en conceptos de codificación pura.
- Es decir, en la sintaxis y patrones de un lenguaje específico.
Así que ya lo sabes:
Ten un poco de cuidado al llamar a alguien "coder".
Ya que puede considerarse un poco despectivo en el mundo del desarrollo.
Implica que:
- eres solo un engranaje o una máquina, y que
- todo lo que haces es simplemente escribir código, además que
- eres fácilmente reemplazable por otro coder.
Así que con ambas definiciones, es justo decir que:
Una vez que aprendes a programar, la parte de escribir código se vuelve realmente fácil.
Es por eso que los desarrolladores experimentados pueden aprender nuevos lenguajes tan rápidamente.
Aprender programación también te ayuda a construir modelos mentales.
Y creo que no es una coincidencia que el mundo esté ahora dirigido por ex-programadores:
- Bill Gates,
- Jeff Bezos,
- Elon Musk,
- Mark Zuckerberg.
Escucharás a muchas personas decir que
- Debes enfocarte en desarrollar tu lógica de programación cuando estás empezando.
- No te preocupes por el lenguaje y el código que escribes.
Y la gente piensa que esto les da permiso para aprender 5 lenguajes diferentes cuando apenas están empezando.
Pero la verdad es que:
- Cuanto más rápido puedas dominar un solo lenguaje, mejor,
- porque podrás ir más allá de sólo codear y enfocarte en la programación.
- Ya no estarás aprendiendo constantemente una nueva sintaxis.
Bonus
Bueno, bueno, como bonus final, comparemos ambos conceptos con el desarrollo.
- El desarrollo de software se enfoca más en el resultado, o la necesidad del negocio,
- y las soluciones de desarrollo pueden implicar mucho más que programar o codear.
Ten en cuenta que:
Aunque escribir código es un proceso cada vez más automatizado, por el uso de mejores herramientas, o generadores de código, los principios de la programación son fundamentales y van a acompañarnos mucho más tiempo.
Video
Te invito a ver el siguiente video, acerca de este tema, si aún no lo has hecho:
Despedida
Cuéntame en los comentarios qué opinas sobre este tema.
¿Estás entusiasmado por ir más allá de tu rol de programador y convertirte en el próximo Elon Musk?
¡Muchas gracias por leer hasta el final!