Existe cierto temor al desarrollo con determinados lenguajes por parte de quienes no se relacionan cotidianamente con ellos desde su parte técnica. Y claro, es natural mantener distancia a algo desconocido o que uno aún no entiende. Así como pasa ante la dificultad de enfrentarse a un nuevo idioma, existe una barrera similar al acercarse por primera vez a lenguajes de programación, pero no se aleja mucho más que eso.
La diferencia es que los lenguajes de programación están hechos exclusivamente para que una máquina, al interpretarlos, te devuelva resultados prácticos, enfatizando en esta comunicación estructuras más rígidas de diálogo.
Lenguajes para distintos usos
Así como se aprenden idiomas nuevos para desenvolverse en determinados lugares existen lenguajes de programación dedicados para distintas plataformas, procesos deseados y proyectos a desarrollar. Un lenguaje usualmente no funciona sólo para una plataforma o proyecto exclusivamente, sino que se acompaña de otros complementarios cuyas finalidades son distintas y tampoco son utilizados exclusivamente para un tipo de aplicación.
Herramientas complementarias en la programación
Además de estas bases, existen herramientas que facilitan el desarrollo de proyectos y ahorran muchos pasos en procesos para distintas aplicaciones conocidas como frameworks y bibliotecas (o librerías), que ofrecen estructuras procedimientos predefinidos usando ciertos lenguajes. Estos varían dependiendo qué tipo de proyecto se va a desarrollar
A continuación te detallaremos algunos lenguajes y herramientas complementarias para iniciarse en la programación categorizándolos por populares usos.
Para esta guía de iniciación hablaremos de dos áreas muy populares y empleadas que usan programación, el desarrollo de sitios web y análisis de datos.
Procesamiento de datos:
VBA (Visual Basic for Applications)
Es muy probable que no reconozcas este nombre, pero el VBA es un lenguaje de programación más cotidiano de lo que crees. He hecho, muy posiblemente lo has utilizado y de forma muy cotidiana. VBA es el lenguaje de programación con el que funciona Excel y otras aplicaciones similares (como Google Spreadsheets).
Este lenguaje te permite hacer cálculos matemáticos con muchos datos a la vez, además de establecer validaciones condicionales con estos, es decir. Esto sirve para poder programar una función que te regrese distintos resultados en base a determinados atributos que tengan los valores que se procesan. Con VBA, Excel es muy útil para un rápido y sencillo manejo de bases de datos.
Python
Publicado en 1997, es un lenguaje de excelencia para aprender programación debido a que fue diseñado con una sintaxis de fácil lectura. Al ser un lenguaje multiparadigma no exige mayores preparaciones para ser ejecutado, es decir es fácil de implementar por cualquier sistema operativo.
Es un lenguaje orientado a objetos, es decir, elementos del código a los que se le atribuyen atributos y valores específicos para acercarlos conceptualmente a una noción más concreta de lo que se quiere analizar. los objetos se pueden diferenciar entre sí y ser también agrupados por clases, lo que hace de este tipo de lenguajes amigable al momento de manipular los elementos que alojan los programas desarrollados.
Una de sus características es que es un lenguaje interpretado, es decir que se ejecuta línea a línea y no en su totalidad, por lo que es fácil editar en caso de ser necesario ya que sus elementos se pueden cambiar sin tener que modificar el resto.
NumPy
Librería (o biblioteca), que otorga capacidad de crear vectores y grandes matrices multidimensionales. En conjunto de su amplia colección de operaciones matemáticas complejas permitiendo así interpretar de manera más rápida de formaciones (o arrays) con su potente estructura de datos-
Numpy es muy utilizado por su agrupación de algoritmos para Machine Learning, lo que puede dar paso a modelos predictivos para diferentes aplicaciones y usos.
Desarrollo de Aplicaciones Web:
Para empezar a describir los lenguajes de desarrollo web primero hay que especificar 2 principales escenarios de esta área que funcionan en conjunto, el Front End y el Back End.
Imaginemos que un sitio web es una obra de teatro y que una página es un escenario, el Front End, es todo lo que está en la parte frontal del escenario y que se muestra a la audiencia mientras que en el Back End se encuentra el funcionamiento de éste, mecanismos de movimiento, luces, sonido, la tramoya en general:
- Front End: Es el lado de la aplicación que se muestra al usuario. La estructura de su contenido, estillos, estética y disposición de la información.
- Back End: Back end no se ve a simple vista desde los exploradores y tiene que ver con el funcionamiento que levanta un sitio web, configuración del dominio que dirige al sitio, la comunicación con el servidor y sus BB.DD.
En este artículo mencionaremos las aplicaciones de algunos lenguaje para Front End
HTML y CSS
Ok aquí haremos un poco de trampa porque HTML y CSS no son lenguajes de programación como tal (así se dice ya que no procesan funciones ni variables), es por eso que lo mencionamos en conjunto. Más bien son lenguajes de estructura pero es lo que se recomienda aprender primero que todo para el desarrollo de sitios web, ya que son estos los que te muestran los primeros resultados concretos que podrás apreciar visualmente en un proyecto.
Estructura
HTML (o Hyper Text Markup Language) es el lenguaje con el que defines la estructura y orden del contenido que quieras agregar en un página web.
Algunos elementos claves convencionales que se ordenan con este lenguaje son:
- Título del sitio
- Meta información (pueden ser enlaces a otros documentos con los que el sitio funcionará de forma complementaria; parámetros característicos para ser encontrado por motores de búsqueda)
- Texto visible (encabezados y párrafos)
- Imágenes de referencia
- Enlaces (internos que dirigen a otras páginas del mismo sitio o externos que dirigen a páginas de otros sitios web
- Barras de Navegación que sirve como índice rápido de un sitios que dirige rápidamente a otras páginas del sitio
Estilo visual
CSS (o Cascade Style Sheets) es el lenguaje con el que se definen los estilos de un sitio web. Colores, tipografías, forma y disposición de los elementos en una página. Define el lineamiento estético de una página web. Este lenguaje incluye hasta algunos movimientos/animaciones gatillados por ciertas interacciones, como por ejemplo señalar un elemento con un cursor.
JavaScript
Lenguaje de programación para la web, y para mucho más. Presente en la mayoría de dispositivos que usas cotidianamente (PCs, Teléfonos Móviles, Tablets, Smart Tvs, Etc), interpretado es utilizado para programar el funcionamiento tanto de aplicaciones como de sitios web. JavaScript está presente tanto en Front End como Back End.
Algunos ejemplos visibles de JavaScrip en Front son:
- Calculadoras
- Demostración de fechas
- Relojes, cronómetros y contadores de tiempo.
Bootstrap
Este también es un leve paréntesis, ya que Bootstrap no es un lenguaje, sino un framework. Este te entrega un orden predefinido de convenciones que se aplican tanto con HTML, CSS y JavaScript. Su gran aporte es que ahorra muchos pasos para que no tengas que desarrollar una página o sitio web desde cero, Bootstrap ya te ofrece un orden, estilo y funcionamiento básico para que sobre su base desarrolles un proyecto.
Muchas otras posibilidades
Existen muchos objetivos para programar y por cada uno de ellos una variedad muy amplia de lenguajes y herramientas. Pero las que te hemos indicado son las más amistosas y sobre todo las más empleadas para rubros muy fructíferos.
Si quieres profundizar en alguno de estos lenguajes u otros, te recomendamos revises más contenido de nuestro blog y canal de youtube. Podrás encontrar un artículo muy conciso e interesante acerca de la comparación entre JavaScript y Ruby on Rails.
Por su puesto que también te extendemos a revisar los distintos programas que se imparten en Academia Desafío Latam. En la gran mayoría se aplica programación, tanto para el desarrollo de sitios web como para análisis de datos en las carreras, Desarrollo Front End, Diseño UX/UI, Data Science y Desarrollo Full Stack en sus dos variantes (JavaScript y Ruby On Rails). ¡Atrévete y acepta el desafío!