Como estoy aprendiendo a programar 
Tags: begginers, introductions
Published: 2018-01-11 18:59:41

---
title: Como estoy aprendiendo a programar 
published: true
description: Aprender a ser autodidacta no es llegar a la meta, es conocer el camino.
tags: begginers, introductions
cover_image: https://thepracticaldev.s3.amazonaws.com/i/cwxadtni64xl0mbjzke7.jpg
---

Ser un alumno en la era digital es siempre buscar hacia donde podemos apuntar y que hay de nuevo para aprender todos los días. Ser alguien auto-didacta muchas veces es un problema pues no tenemos un norte bastante definido y cuando lo tenemos, son pocos los que llegan y muchos los que intentan. Esto es a modo de auto-confesión de partes para animarles a que sigan intentandolo sin importar que pase.

# Historia de mi camino

Yo inicie mi camino hacia el desarrollo porque quería hacer un proyecto para ver como funcionaba las cadenas de bloques pero un poco más...ordenado según lo que yo quería saber. Allá por el 2014, en la actualización de la Bitcoin Qt insertan algo nuevo: `op_return` y quería probarlo pero no sabía como. De adelanto, sabía que en aquellos momentos una hoja de Excel no serviría pero sabía que herramientas de haber había. Como soy un curioso por naturaleza, empiezo a ingresar en los foros y muchos empezaban a hablar de un formato `file.R` y lo ví.

No tardó mucho para que me topara con un curso de [R Programming en Coursera](https://es.coursera.org/learn/r-programming) y lo tome. Si bien podía seguirle el ritmo a las explicaciones estadisticas (un poco de matemática de la escuela hacia el trabajo) el principal problema era que hablaba de condicionantes, strings, concatenaciones. Al segundo mes me rendí y no busqué nada hasta que en los foros me volví a encontrar con la programación y en este caso: desarrollo web.

Debatiendo sobre cosas de la vida (ya en el año 2015) me dicen que la base de todo es desarrollo web y Javascript. _Ok, saben de lo que hablan_, me dije para mis adentros y empecé nuevamente a tomar cursos pero esta vez desde CodeAcademy (cuando todavía era free en su totalidad) y tomé las clases de WebDev; si bien me encantó, no me sentía completo PERO aquí aprendí html, css e inicié mi introducción con Javascript, un lenguaje lindo pero que no lo termino de querer (Vengan de a uno). Fue entonces cuando (otra vez) me decepcioné porque recuerden que entonces CodeAcademy recién iniciaba sus cursos, no tenía mucha profundidad (como si lo tiene hoy) y me quedé en la nebulosa (una vez más). Pero es ahí donde otra vez haciendo un poco de trabajo y conociendo ya Stack Overflow empiezan a hablar de un tal FreeCodeCamp, un sitio donde aprendes de cero y lo volví a hacer; esta vez fui enserio pues en el mismo no solo te inculcan a que hagas el curso sino que participes en proyectos open source. Si bien no me siento hasta el día de hoy con una capacidad para aportar código, lo hacía desde el lenguaje ENG-ESP.

###### Aquí quiero enfatizar que estoy bastante preocupado con la poca documentación que hay en español de proyectos open source. 

Me fue muy bien de hecho. Hice una traducción de [un paper](https://github.com/DemocracyEarth/paper/commits?author=nelruk) de Democracy Earth y practiqué un poco de Markdown con el libro de Andreas Antonopolous sobre Bitcoin. Pero estas experiencias me mostraron algo otra vez: no me gusta hacer sitios, me gusta que vengan ya hechos, me gusta más el contenido y analizar el contenido, algo así como encontrar datos a partir de variables y objetos, lo que primero quería hacer allá por el 2014.

Si hay algo que tengo es buenos amigos y uno de ellos me empieza a hablar de Python y sus funcionalidades. Si bien ya estaba aprendiendo R Programming, cuando trabajas con datos, aprendes cosas de Python directa o indirectamente así que no empecé de cero pero estoy otra vez en el camino original. Datos. Análisis. Por lo visto ahí está lo que quiero.

# Que aprendí en todo este tiempo

## Cometan errores

Desde el 2014, cometo errores todos los días aprendiendo. Demasiados. Tanto que a veces cuando ingreso en los foros ya me da verguenza preguntar cosas pero ¡hey! estas comunidades ayudan..y mucho. 

Lo peor que pueden hacer es no intentarlo: probé si webdev es para mí, si bien lo voy a finalizar, no me veo haciendo carrera en ello.

## Aprender y adaptarse

Es importante aprender de los errores y fijar tus metas de acuerdo a lo que vas aprendiendo. No es la meta, es el camino.

## No se rindan bajo ninguna circunstancia

Mirenme. Desde el 2014 estoy deambulando y buscando un camino. Creo haberlo encontrado ahora pero ello no implica que este 100% de que esta vez lo haré. Lo único que sé es que rendirse no está en el presupuesto.

###### Oh, por cierto hoy día estoy aprendiendo nuevamente Data Science pero con Python usando Jupyter Notebook, que es una belleza para estos casos.