El blog de Shackra

Catolicismo Emacs Software libre

“No seas tan abierto de mente o tu cerebro se caerá” ~G.K. Chesterton

Consejos para programadores principiantes

No soy ningún profesional, llevo programando la mitad de vida, pero aun con esa "cantidad de experiencia" puedo decir sin temor a equivocarme que de programación no sé mucho. Al principio aprendí algo de C++ y realice uno que otro proyecto pequeño, con el pasar de los años, aprendí Python y ahora es mi lenguaje de programación principal para casi cualquier tipo de aplicaciones por su sencillez y flexibilidad a comparación con C++.

Durante todo éste tiempo he visto las malas costumbres de muchos programadores autodidactas (incluso, uno que otro que estudia la materia) que hace engorroso el desarrollo de sus proyectos o incluso, el compartir el código fuente a la hora de distribuir sus proyectos o pedir ayuda en foros y sitios de Preguntas y Respuestas que me gustaría enumerar aquí así como también dar un consejo para modificar esa mala costumbre.

  1. No sé programar y estoy comenzando con C++: Es muy pero muy mala idea comenzar aprendiendo C++ si no sabes mucho sobre compús. Muchos tutoriales que andan ahí fuera explican cosas sobre el lenguaje que hace el proceso de comprensión muy engorroso. Si aun no sabes programar pero tienes muchas ganas de aprender, te recomiendo que estudies *Python*primero. Sucede que al aprender Python no encontraras toda esa teoría rara de C++ (como los punteros y esas cosas) así que puedes manejar el lenguaje en menos de un mes y aprender a utilizar los módulos estándar de Python quizás te tome más más tiempo. Cuando tengas mejores nociones sobre programación podrás abordar más facilmente C++ en un futuro.
  2. Puedes descargar el código fuente y la aplicación en RapidShare/Mediafire/[INSERTE SITIO DE DESCARGAS DIRECTAS AQUÍ]/: Ésta es una de mis costumbres favoritas. Es habitual que algunos programadores suban sus obras maestras a sitios de descarga directa para distribuir su software e incluso, el código fuente del mismo por separado o junto con la aplicación. Posiblemente esos programadores no conozcan los gestores distribuidos de código fuente como Mercurial o Git que permiten administrar y distribuir el código fuente de tus proyectos de una forma más decente. En lo personal, me gusta más Mercurial porqué es mucho más sencillo. Git es muy popular, no tengo idea de porqué, Mercurial me parece más natural, como Python. Si deseas aprender a usar Mercurial, puedes consultar estas guiás en español. No necesitas un repositorio de código fuente en Internet para usar Mercurial (o Git), pero en cualquier caso desearas poner tu código fuente disponible para todos, te recomiendo hacer una cuenta en bitbucket.org y pushear el proyecto al repositorio en bitbucket. Hacer esto te permitirá recibir colaboración de otros programadores en tus proyectos más fácilmente. Hacer ésto se ve mucho más profesional que distribuir tus proyectos en sitios de descarga directa ;)
  3. Ayuda, mi programa no sirve, gracias: ¿Y donde esta el código fuente? Es común ver preguntas en foros sobre código fuente que no hace lo que el programador desea y más común es no ver el código fuente al que el usuario se refiere en su pregunta. Cuando tengas alguna duda o necesites alguna ayuda con el código fuente en tu proyecto, pega el código junto con ella o pegalo en algún pastebin como dpaste.com o pastie.org y añade el enlace a tu código fuente a tu pregunta, ¡veras como tus preguntas son respondidas más rápidamente!
  4. Usa EMACS! tener un único editor de texto es mejor que manejar 10 editores diferentes para 10 cosas distintas. EMACS sirve casi para todo, yo lo utilizo para programar en Python (con el paquete emacs-for-python), escribir en éste blog editar archivos del sistema, editar archivos en un sistema remoto (como el servidor que alberga mi blog), entre otras cosas más. Con el uso diario aprendes a apreciar ese sistema operativo escrito para desarrollar GNU xd.

¿Son poquitos consejos, verdad? Espero que les sea de mucha ayuda a todos aquellos programadores que apenas están empezando en éste mundillo :)

/