Quiero aprender a programar. ¿Que hago?

Con esta publicación mas formal se inaugura el blog.

Si te gusta la tecnología, estudias una carrera de ingeniería a fin a ella o simplemente te nació un día el gusto por saber como crear programas para computadora o aplicaciones, entonces pasaste o pasaras por lo que todos los que ya nos defendemos y/o creamos aplicaciones pasamos, y es no saber por donde empezar.

Por eso aquí les van algunos consejos básicos o al menos los que me sirvieron a mi para aprender a “echar” código como decimos entre mis amigos.

programador1

Define muy bien lo que quieres aprender a hacer.

Esto es muy importante ya que de ello depende que te enfoques mas en aprender lo que realmente será importante para  ti. Por ejemplo si te gustaría crear aplicaciones para dispositivos móviles lo que en estos momentos es muy popular, empieza investigando que todo lo referente a esos dispositivos, que sistema operativo utilizan, el tipo de lenguaje para crear sus aplicaciones, etc. Definiendo muy bien esta parte sabrás a donde ir y que buscar, por que no es lo mismo programar para un móvil que para una pc aunque utilizaran el mismo lenguaje para ello, la filosofía y la forma de programar es distinta.

Empieza por lo básico y lo simple.

Una vez que tengas definido que es lo que quieres desarrollar, empieza con las cosas básicas, la mayoría de los que dan sus primeros pasos en programación comienzan con el lenguaje C, este es un muy buen lenguaje para empezar, al menos desde mi punto de vista, ya que es un lenguaje bastante “fácil” y muy potente si lo llegamos a dominar al menos en un 80%, además te abre la puerta para entrarle de lleno a los nuevos lenguajes, ya que a pesar d ser un lenguaje de alto nivel, la mayoría de las cosas que haces en C te sirven para comprender algunos métodos muy abstractos que por ejemplo java tiene.

Por poner un ejemplo el recolector automático de basura en java o garbage collector, es una implementación que en C se tiene que hacer a mano cuando pides memoria dinámica. ¿Entonces que aprendiste en C con eso tan simple?. Pues si sabes que en C al pedir memoria dinámica le estas diciendo al sistema que aparte x cantidad de memoria y que después de ya no utilizarla le tienes que volver a decir al sistema que la elimine, entonces aprendiste que la función del garbage collector es esa, difícilmente entrándole a java sin saber nada de programación te hubieras enterado de eso y mejor aun saber exactamente como funciona.

Documéntate bien antes de empezar a programar.

Esto es una de las cosas que hacen la diferencia entre un desarrollador y un programador, que al menos en principio parecerían iguales pero no lo son.

¿Que quiero decir con documentarse bien?. Pues una vez que sepas lo básico de la programación el tipo de cosas como saber que es un if, un for, un while, un switch etc. Entonces empieza por investigar y conocer la filosofía del lenguaje en el que vas a programar, ya que hay diferentes paradigmas de programación: Imperativo o por procedimientos, Funcional, Lógico, Declarativo, Orientado a objetos, entre otros.

Muchos creen que ya programan en C++ solo por que utilizan en su código, la librería iostream y ponen using namespace std y utilizar cout para imprimir y su programación va todo menos orientada a objetos y ni siquiera saben que es namespace.

Trata de entender programas ya hechos.

El mejor amigo del desarrollador es el Software Libre, por que al estar abiertas sus fuentes podemos trastear con el y saber como están echas las aplicaciones de verdad, ya que no es lo mismo estar aprendiendo a crear hola mundos que ver como esta programado un programa que analiza la ruta mas corta por ejemplo.

Aquí tienes que buscarle bien y también ser consiente que como todo, tienes que empezar de abajo para arriba, primero entiende programas simples para después entender los mas complejos, no te vayas a querer bajar el código de Open Office, por que te llevaras una decepción al no entender casi nada o absolutamente nada de lo que esta escrito ahí.

La inteligencia colectiva es tu mejor ayuda.

Si ya dije que el Software Libre era el mejor amigo del desarrollador, internet es el mejor consejero, con esto quiero decir que busques foros sobre programación y regístrate, aun que no lo creas los foros aun existen y tienen una comunidad bastante grande. Suscríbete a blogs con temáticas de programación y noticias relacionadas a este ámbito, también puedes juntarte con el amigo programador y pídele ayuda.

No trates de reinventar la rueda mejor entiéndela.

¿Que quiero decir? pues que hay algunas veces que existen librerías para hacer cierta función que necesitas, utilízala en lugar de perder tiempo haciéndola, pero ojo también tienes que saber la teoría que hay detrás de ella para que en un determinado momento si esa librería se te queda corta puedas hacer una mucho mejor.

Un ejemplo de ello es la función toLowerCase que convierte mayúsculas a minúsculas, tienes que saber que para que la librería haga su “magia” simplemente tomas los caracteres y le hace sumas al código ascii de ese carácter.

Programa tonterías

Esto es mas que nada un tip que sirve bastante y yo lo pongo en practica, no esperes a que te dejen tarea de programación para que programes algo, programa todo lo que se te ocurra o lo que necesites aun que realmente no sea necesario un programa que lo haga por ti.

Por ejemplo: en la televisión salen los concursos de telejuegos y dicen haber por 1000 pesos forma esta palabra con estas 5 letras sin utilizar estas otras dos y que las palabras no repitan esta letra de en medio, ahí ya tienes una explicación de lo que hará tu algoritmo y chance hasta te ganes 1000 pesos.

por ultimo algunos otros consejos.

Tener paciencia: esto de la programación es de tener paciencia, paciencia para aprender por que es un camino bastante largo, además de que no todo sale a la primera habrán algoritmos que se te resistirán horas, días incluso semanas y que cuando se te ocurra por fin la solución te reirás y dirás.

Aprende matemáticas: Esto es al menos en un nivel medio-alto, no digo que seas un genio en matemáticas, pero si quieres comprender ciertos algoritmos es preciso tener un nivel de matemáticas aceptable.

Bueno esos son algunos consejos que en lo personal puse y pongo en practica para aprender a desarrollar. Espero y tomen algunos o todos y si tienes otros ponlos en los comentarios.

También si te gusto compártelo.

Un comentario en “Quiero aprender a programar. ¿Que hago?

  1. Pingback: Programación en C. Parte 0 « 80 Bits

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s