Primeros pasos para empezar a programar y desarrollar software

Una de las primeras cosas que tienes que hacer es dejar las excusas a un lado, esto es primordial de otra manera te convencerás muy pronto de que no vale la pena seguir y solo perderás tu tiempo.

Una cosa que a mí me ha servido es escribir mis metas cuando empiezo con un proyecto, pero además de esto, también escribo las cosas que podrían empujarme a parar con el proyecto, las excusas.

Escribe una lista de excusas para evitarlas

Yo te recomiendo una lista simple de las cosas que normalmente piensas cuando te dan ganas de parar con un proyecto, por ejemplo:

  • No tengo tiempo
  • Es muy duro, no sé lo que estoy haciendo
  • Y que si no funciona?
  • No tengo motivación

Estas son algunas de las excusas que a lo largo de mi carrera me he inventado para reanimarme y parar mis proyectos. Tengo muchas más, pero estas son las que son comunes para varios de nosotros.

Escribir estas excusas y agregar una nota para responder a cada una de estas es una buena idea para que cuando se te presente cualquiera de estas en la mente, tengas una razón para convencerte de no parar y seguir adelante. Por ejemplo:

  • No tengo tiempo: Tiempo siempre hay, solo hay que darle la prioridad suficiente a nuestros proyectos, y reducir la cantidad de Netflix.
  • Es muy duro, no sé lo que estoy haciendo: Siempre que aprendes algo nuevo, te sentirás como un tonto/a en un principio, está bien, nadie es un experto para nada en un principio, y no hay nadie que lo sepa todo.
  • ¿Y que si no funciona? ¿La pregunta que te debes hacer es, y que pasa si no lo hago? ¿Si no trato? Como dice el dicho “Fallaras el 100% de los tiros que no intentaste”.
  • No tengo motivación: Esto es algo normal, ni te creas que estarás motivado todo el tiempo, nadie lo esta. Durante la vida de un proyecto, siempre hay latas y bajas, y la clave está en continuar, un paso a la vez.

Escribe metas a corto plazo que quieres obtener

Escribir metas a corto plazo que quieres obtener te ayuda a mantenerte enfocado. En un principio, cada vez que empezaba un proyecto solo tenía la meta final, o lo que yo pensaba que era la meta final en mente. Hacer esto no me ayudaba, ya que perdía el control de las cosas que tenían que suceder a corto plazo para poder lograr la gran meta.

Escribir y asignarte metas a corto plazo te ayuda a mantenerte enfocado, algo que es muy útil con proyectos largos y difíciles. Además, pensar y escribir metas cada semana (por ejemplo), te ayudará a evolucionar tu proyecto y te dará la flexibilidad de cambiar tus tareas conforme vas avanzando. Es normal que los proyectos acaben siendo muy distintos a lo que te imaginabas en un principio.

Ejemplo de metas a corto plazo cuando tu gran meta es aprender a programar:

Primera semana:

  • Instalar y configurar un editor de código o IDE, y aprender como utilizarlo.
  • Elegir un lenguaje de programación y aprender los comandos básicos.
  • Aprender como se organiza un proyecto de software utilizando el editor de texto o IDE que hayas instalado.
  • Bajar una aplicación de software open source y revisar el código fuente.

    Esta lista de arriba es un ejemplo de lo que podrías darte como tarea para aprender en tu primera semana, y es solo un ejemplo.

Elige un editor de código

El editor de código será tu herramienta principal como programador, y es por esto que te debes tomar tu tiempo y decidir cuál editor de texto te gusta más. En general, el editor de texto de Microsoft, VS Code, es muy popular, pero hay quienes prefieren o necesitan el editor más completo llamado Visual Studio.

También hay otros editores de código muy populares como:

En lo personal, te recomiendo empezar con VS Code, ya que es totalmente gratuito, es muy poderoso, y funciona muy bien con los lenguajes y librerías modernas.

Una vez que hayas elegido tu editor de código, te recomiendo que lo configures correctamente y que también aprendas como utilizarlo. Mientras más conozcas tus herramientas de trabajo, tu trabajo será más eficiente y agradable. Por ejemplo, si decides usar VS Code, te recomiendo este paquete de lenguaje de Español para hacer tu experiencia con VS Code más grata y en tu idioma.

También, puedes mejorar tu productividad y experiencia con VS Code instalando extensiones.

La configuración de texto de código depende en el que hayas elegido, puedes buscar por guías para hacer esto, hay muchas disponibles en la internet.

Elige un lenguaje de programación

Existen mucho programas de programación, muchísimos. Por esta razón, recomiendo pensar primero en la razón por la cual quieres aprender programación, la elección del lenguaje dependerá mucho de esto.

Por ejemplo, si quieres aprender a crear sitios y aplicaciones Web, el lenguaje que quieres aprender primero es probablemente JavaScript, y también el HTML (lenguaje de marcas de hipertexto), y CSS; estos son la base de los sitios en Internet.

Si tu interés en aprender programación es primordialmente para obtener un trabajo como programador, entonces te sugiero que veas cuáles son los lenguajes de programación más necesitados por empresas buscando por programadores.

Algunos lenguajes que son populares en este momento, son buenos para principiantes, y tienen mucha demanda laboral son los siguientes (no están en orden de popularidad):

  • JavaScript
  • Java
  • Python
  • C#
  • Swift
  • Go
  • PHP

Pero en realidad, mientras aprendas un lenguaje de programación y entiendas las mecánicas y fundamentos de cómo diseñar y crear aplicaciones con este será suficiente. Una vez que obtienes experiencia como programador, aprender un lenguaje no es tan difícil, la sintaxis será diferente, pero existirán muchas similitudes.

Aprender como crear y organizar un proyecto de software

Este punto se refiere a cómo organizar los archivos para que sea fácil trabajar con el código de tu aplicación de software. Cabe mencionar que esto puede ser algo muy básico, pero también se puede convertir en un dolor de cabeza, ya que existen muchas opiniones sobre cómo organizar los archivos en un proyecto de software.

Mi recomendación es tratar de seguir las mejores prácticas existentes para esto, y hacer modificaciones como lo necesites.

Aquí está un ejemplo de como está organizado una aplicación para un Blog creada con Ruby on Rails y utilizando el editor de código VS Code.

En la imagen de abajo puedes ver cómo la aplicación está contenida en un directorio con el nombre “blog”, y dentro de este existen otros directorios que describen los tipos de archivos que contienen.

Por ejemplo, dentro del directorio “blog” tenemos un directorio llamado “app” para la aplicación y dentro de este están el resto de los archivos.

Este es un ejemplo simple y muy claro de cómo puedes organizar tu código fuente para que sea más fácil trabajar con este. Además, te ayudará a diferenciar rápidamente el tipo de archivo y para que son utilizados:

screenshot of example Rails application

Baja una aplicación de fuente abierta “Open Source” y utilízala como una guía.

Esto es algo que siempre les recomiendo a todas las personas que les estoy ayudando a aprender programación. El beneficio de esto es obvio, es básicamente como leer libros y revisar cómo están escritos cuando quieres ser un escritor.

Existen muchas aplicaciones de fuente abierta que puedes bajar a tu computadora y usarlas como guía para aprender. Un lugar ideal para encontrar estas aplicaciones es GitHub, ahí encontrarás aplicaciones escritas con varios lenguajes de programación y distintas librerías de JavaScript.

Si estás interesada/o en aprender programación de sitios de Internet o aplicaciones Web, otra opción es bajar una planilla de HTML, existen varios lugares en donde las puedes encontrar. Un lugar que te recomiendo en este momento es Start Bootstrap.

¡Esto es todo por hoy amigos, hasta la próxima, échenle ganas!