Programación ¿qué necesito?
Es un gusto volver a vernos las caras (más bien, que nos leas nuevamente) y casi estoy seguro que leíste el anterior post, pero por si las dudas te dejo aqui la liga https://goo.gl/XKO86O.
Ahora que ya sabemos que en primera instancia debemos volvernos lógicos al punto de que nos consideren locos, estamos más que preparados para iniciar a programar pero ¿que necesito? Primeramente una computadora que se ajuste al tipo de programador que quieres ser. — Tipo de programador ¿?. — Sí así es, en el mundo de la programación existen diferentes especímenes, los más comunes y conocidos son:
- Mobile (Teléfonos inteligentes)
- Web
- DB (Data Base o bases de datos)
- Desktop (Escritorio)
Y dentro de ellos tenemos al front-end y back-end (claro, el mundo de la programación es extenso y se eleva hasta donde la vista no alcanza) y precisamente existen lenguajes especiales para cada uno, aunque cabe aclarar que hay lenguajes que pueden usarse tanto en mobile, web, DB, Desktop, etc. Sé lo que piensas “Quiero aprender un lenguaje que abarque todo y sea el maestro programador de todos los tiempos” y bueno, no es imposible del todo pero sí te llevará un par de años dominar tantas áreas.
- Ok, entiendo. ¿Pero entonces por qué lenguaje empiezo? — Una vez que ya decidiste qué tipo de programador serás es hora de abordar el lenguaje con el que empezarás.
Si lo tuyo fue escoger tecnologías móviles o mobile, llámese Android, IOS, Windows Phone, etc. Debes elegir un sistema de todos ellos, ya que cada uno cuenta con un lenguaje diferente y propio (Sí lo sé, es triste pero así pasa), aunque siempre existe la posibilidad de utilizar Xamarin que es un cross-platform para desarrollar aplicaciones tanto para Android, IOS y Windows Phone, ¿qué significa esto? que podrás programar una sola aplicación que será usada en tres diferentes plataformas, esta plataforma usa como lenguaje de programación C#. Si deseas ser parte de un solo bando y tener un sin fin de posibilidades como lo es Android, Java tendrá que ser tu primer amor en lenguajes de programación o en caso de que prefieras la elegancia y ciertas limitantes Objetive-C o Swift serán tus predilectos.
¿Prefieres el mundo web? Para adentrarse a éste siempre es recomendado iniciar desde lo básico y por que te digo esto, he conocido a muchas personas que comienzan con frameworks (a veces ni sabían qué era eso) y en caso que no sepas de lo que hablo, un framework es una nueva infraestructura a partir de un lenguaje de programación, ya que con nuevos métodos y sintaxis (palabras) resumen el lenguaje base para ahorrar trabajo. — Pero si es mejor y ahorra trabajo ¿Porque no comienzo con el? — verás llegan momentos en donde quieres hacer algo específico y resulta que el framework no está preparado o no soporta esa función, entonces tienes que agarrar y crear desde la base la solución o tal vez quieras modificar algún método propio del framework para que funcione como quieres. — Ahora veo, entonces ¿cuál es la base? — JavaScript, obviamente debes hacer uso de HTML (por muchos no considerado como un lenguaje de programación) y acompañar a estos con CSS (Estilos en cascada) y no, no uses Dreamweaver por favor. Mejor utiliza editores de texto como SublimeText, Notepad++, Atom o Brackets.
¿Nada de eso te convenció? Bueno, aun quedan dos opciones, ser un programador desktop o de escritorio, aquí tenemos diferentes opciones para comenzar entre las más recomendadas siempre ha sido Java por excelencia siendo así por una de sus mayores ventajas que es el ser multiplataforma, pero si opinas que Java es muy mainstream puedes intentar irte por el principal competidor que seria C# que de cierta forma es muy similar a Java y que tiene de igual forma muchas ventajas. También tenemos Python aunque este casi no lo recomiendo, no porque sea malo ya que es un lenguaje sumamente práctico, el detalle está en que si llegas a brincar a otro tipo de lenguaje extrañaras todo lo que se podía hacer tan rápido y efectivo de Python.
Y para terminar tenemos al DB, que es quien es encargado de administrar la información importante y relevante. De ellos depende mayormente la eficiencia en respuesta de aplicaciones o programas por lo que no es un trabajo sencillo, deben mantener la estructura de la información al punto de la belleza (claro que no todos son asi, he visto estructuras tan feas que uno quiere llorar) si te quieres aventurar por este sendero, puedes comenzar con MariaDB (en serio, asi se llama xD) que es el reemplazo mejorado de MySql ya que este gestor es libre y práctico para aprender. Una de las ventajas de las bases de datos es que su estructura se mantiene sin importar el lenguaje aunque tienen que saber que existen lenguajes que implementan sus propias funciones y por ende sus propias ventajas. Y se me pasaba también existe Oracle DB que es un monstruo chequenlo igual y les gusta.
Esperamos que con estas recomendaciones decides adentrarte a este complicado mundo y aunque no somos expertos esperamos que estas recomendaciones te ayuden. En futuros post hablaremos de lenguajes en particular, también estaremos subiendo cursos de estos y en caso de que estés interesado en uno en especifico no dudes en preguntarnos en la caja de comentarios.
Y tú ¿con que lenguaje empezaste a programar?.