¡Hola Mundo!

Esta parte de mi sitio esta dedicada a la programación (elaboración de algoritmos), que no debe ser confundida con codificación (codificar en algún lenguaje un algoritmo).

Algoritmo:En matemáticas, lógica, ciencias de la computación y disciplinas relacionadas, un algoritmo es un conjunto escrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba realizar dicha actividad. Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solución. Los algoritmos son el objeto de estudio de la algoritmia

Como podremos deducir de su definición, existen muchas formas de resolver el problema. Y muchas formas que NO resuelven el problema.

Cuando diseñamos un Algoritmo que cumple con su cometido, hablamos de que es Eficaz. Este es el atributo mínimo que deseamos conseguir, ya que si no es eficaz, es decir, que no cumple el objetivo para el cual fue diseñado, dicho algoritmo no nos será de ninguna utilidad.

Si aparte de que cumpla con su objetivo, logramos desarrollarlo de forma que lo haga en el menor tiempo posible y consumiendo la menor cantidad de recursos, estamos hablando de un algoritmo Eficiente (mas adelante hablaremos de como se mide la eficiencia).

Teniendo en claro los conceptos de Eficacia y Eficiencia, podemos hablar entonces que un buen programador habla de Eficiencia y da por sentada la Eficacia. Y el objetivo es que aprendan a programar en forma eficiente independientemente del lenguaje en el que codifiquen.

Aquí veremos conceptos de paradigmas de programación, herramientas, medidas de eficiencia, estructuras estáticas y dinámicas, algoritmos famosos, algoritmos aleatorios y algunas otras cosas mas.

En cuanto a los lenguajes de Programación, aquí no me caso con alguno. En particular prefiero C++ (gcc) o Pascal (en particular Free Pascal), pero en la medida de lo posible agregaré ejemplos de varios lenguajes, sobre todo haciendo hincapié en sus diferencias de implementación.

Yo como muchos, creemos que el mundo sería mejor si todo el mundo tuviera cierta familiaridad con la programación, aunque la programación en sí no debe ser la meta. Computadoras y programación son sólo herramientas. Son un medio para un fin.

El verdadero objetivo debería ser enseñar a la gente una nueva forma de pensar. En otras palabras, deberíamos estar tratando de enseñar ciencias de la computación, y no sólo de codificación.

El objetivo es aprende a Pensar y no a Codificar.